/* V2-F05 – Oasis premium editorial system, zero remote fonts/scripts/media. */
:root{--oasis-ink:#11263b;--oasis-cream:#fbf8f3;--oasis-gold:#c99c62;--oasis-coral:#db672c;--oasis-shadow:0 24px 70px rgba(15,36,53,.11)}
body{color:var(--oasis-ink);background:#fdfbf8}
.topline{background:#092333;letter-spacing:.015em}
.site-header{background:rgba(255,254,252,.98);box-shadow:0 1px 0 rgba(25,48,62,.09)}
.brand{font-weight:900;letter-spacing:1.1px}
.brand-icon{border-radius:50%;background:linear-gradient(135deg,#e5a56d,#bf522c);box-shadow:0 0 0 3px #f6e9d9,0 8px 22px #a74b2633;font-family:Georgia,serif}
.desktop-nav a{letter-spacing:.012em}
.header-cta{border-radius:40px;padding:13px 23px;background:#113e4f}
.btn{border-radius:32px;letter-spacing:.005em;box-shadow:none}
.btn-primary{background:linear-gradient(110deg,#e47738,#c85225)}
.btn-primary:hover{background:linear-gradient(110deg,#ca622b,#ae451b)}
.home-hero{background:radial-gradient(ellipse at 85% 5%,#255568 0%,transparent 55%),linear-gradient(135deg,#102f40 0%,#091f31 80%)}
.home-hero::before{background-image:linear-gradient(125deg,transparent 30%,#d1b69313 55%,transparent 76%);opacity:1}
.home-hero-grid{min-height:660px;gap:75px;padding-block:90px 130px}
.hero-copy .kicker{letter-spacing:2px;font-size:11px;color:#d9b582}
.hero-copy h1{font-size:clamp(46px,5.8vw,88px);font-weight:850;line-height:1.23;letter-spacing:-2px;margin:24px 0}
.hero-copy h1 span{color:#e7b58a}
.hero-copy p{font-size:17px;max-width:525px;line-height:2;color:#d5e0dc}
.hero-micro{border-top:1px solid #ffffff2c;padding-top:22px;color:#d6dcca}
.hero-scene{height:485px;border-radius:250px 250px 16px 16px;box-shadow:0 38px 90px #061c2daa,0 0 0 11px #ffffff13;transform:rotate(-1.2deg)}
.luxury-scene-number{position:absolute;top:22px;right:26px;color:#fff;text-shadow:0 1px 10px #17384a;z-index:2;letter-spacing:3px;font:600 10px/1.5 Georgia,serif}
.scene-label{border-radius:4px;max-width:80%;backdrop-filter:blur(7px)}
.search-panel{border-radius:18px;box-shadow:var(--oasis-shadow);border:1px solid #e9e1d6;padding:30px}
.search-input{border-radius:8px;background:#fffdfa}
.section{padding-block:80px}.section-tint{background:var(--oasis-cream)}
.section-label{font-size:11px;letter-spacing:1.3px;text-transform:uppercase;color:#b85a2b}
.section-heading h2,.editorial-copy h2{font-size:clamp(29px,3.2vw,46px);line-height:1.4}
.destination-card,.catalog-card{border-radius:13px;background:#fffefc;box-shadow:0 12px 35px #11253d0e;transition:transform .26s ease,box-shadow .26s ease}
.destination-card:hover,.catalog-card:hover{box-shadow:var(--oasis-shadow);transform:translateY(-5px)}
.destination-info strong{font-size:24px;letter-spacing:-.3px}
.destination-info .eyebrow{background:#f8eee4;color:#a65f31}
.catalog-card-art{min-height:205px;overflow:hidden}
.catalog-card-art .approved-cover{display:block;width:100%;height:100%;min-height:205px;object-fit:cover;transition:transform .4s ease}
.catalog-card:hover .approved-cover{transform:scale(1.045)}
.product-photo{width:100%;margin:0 0 30px;overflow:hidden;border-radius:16px;background:#ece9e3;aspect-ratio:3/2}
.product-photo img{display:block;width:100%;height:100%;object-fit:cover}
.catalog-card-body{gap:12px}.catalog-card-body strong{line-height:1.45}
.mood-card{border-radius:12px}.mood-card:hover{box-shadow:var(--oasis-shadow)}
.service-card{border-radius:13px;border-color:#e9e4dd}
.service-icon{border-radius:50%;background:#faebda}
.editorial-art{border-radius:12px}
.inner-hero{background:linear-gradient(117deg,#f8eee3,#eff4f2 65%,#f8f9f4)}
.inner-hero h1{color:#123248}.inner-hero .section-label{letter-spacing:1.6px}
.aside-card{border-radius:12px;border-color:#e7e1d8}
.footer{background:linear-gradient(120deg,#091f30,#113c48)}
.studio-body{background:#f7f5f1}.studio-header{background:#102b3a}
.studio-form,.studio-list-row,.studio-review{border-radius:12px;border-color:#e5e1da;box-shadow:0 8px 30px #102a3e0a}
.studio-review{background:white;border:1px solid #e4e5e6;padding:25px;white-space:pre-wrap;max-width:850px;line-height:1.9}
.studio-log{margin-top:25px}.studio-log .studio-list-row{overflow-wrap:anywhere;flex-wrap:wrap;gap:13px;font-size:12px}
#studio-media-status{color:#566980;font-size:13px}
@media(max-width:1050px){.home-hero-grid{gap:40px;min-height:auto}.hero-scene{height:395px}.hero-copy h1{font-size:clamp(40px,5.3vw,60px)}}
@media(max-width:700px){.home-hero-grid{grid-template-columns:1fr;gap:32px;padding-block:54px 91px}.hero-copy h1{font-size:clamp(39px,9vw,57px);letter-spacing:-1.2px}.hero-copy p{font-size:15px}.hero-scene{height:350px;width:min(100%,440px);transform:none;border-radius:190px 190px 15px 15px}.search-panel{padding:20px}.section{padding-block:55px}.catalog-card-art,.catalog-card-art .approved-cover{min-height:190px}}
@media(max-width:420px){.hero-copy h1{font-size:40px}.hero-scene{height:270px}.hero-micro{font-size:10px}.search-wrap{margin-top:-35px}}
@media(prefers-reduced-motion:reduce){.hero-scene,.destination-card:hover,.catalog-card:hover,.catalog-card:hover .approved-cover{transform:none}}

.studio-media-preview{display:block;max-width:190px;width:100%;height:115px;object-fit:cover;border-radius:8px;margin-bottom:10px;background:#f0eee8}.product-photo figcaption{position:absolute;bottom:12px;right:14px;background:#102c3bc7;color:#fff;padding:4px 11px;border-radius:6px;font-size:12px}.product-photo{position:relative}

/* F07: public price-estimate page — informative, never checkout */
.estimate-layout{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(300px,1.1fr);gap:clamp(18px,3vw,40px);align-items:start;margin-bottom:28px}
.estimate-layout>.studio-form,.estimate-results{margin:0;border:1px solid rgba(19,46,66,.13);box-shadow:0 16px 45px rgba(20,45,72,.055);background:#fff;border-radius:18px;padding:clamp(22px,2.5vw,35px)}
.estimate-layout>.studio-form input,.estimate-layout>.studio-form select{width:100%;min-height:48px}
.estimate-layout>.studio-form fieldset{border:1px solid rgba(19,46,66,.14);border-radius:12px;padding:16px;min-width:0}
.estimate-layout>.studio-form legend{padding:0 8px;font-weight:700}
.estimate-layout .quote-addon{display:flex;align-items:start;gap:9px;margin:9px 0;line-height:1.8}
.estimate-layout .quote-addon input{width:18px;height:18px;min-height:0;flex:none;margin-top:7px}
.estimate-results h2{margin:0 0 18px;color:var(--navy,#102647)}
.estimate-results .facts-list{margin:12px 0 24px}
.estimate-results .facts-list>div:nth-last-child(4){background:rgba(225,110,29,.055);border-radius:8px}
@media(max-width:800px){.estimate-layout{grid-template-columns:minmax(0,1fr)}.estimate-layout>.studio-form,.estimate-results{padding:20px}}

/* F12 — explainable discovery. The page works without client JavaScript. */
.discovery-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1rem;align-items:end;background:#fff;border:1px solid #e6e0d4;border-radius:20px;padding:1.4rem;box-shadow:0 12px 30px rgba(16,38,71,.06)}
.discovery-form label{display:grid;gap:.45rem;font-weight:700;color:#102647}
.discovery-form input,.discovery-form select{width:100%;min-width:0;border:1px solid #c6ccd5;border-radius:10px;padding:.85rem;background:#fff;color:#102647;font:inherit}
.discovery-form :is(input,select,button,a):focus-visible{outline:3px solid #ed8a31;outline-offset:2px}
.discovery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1rem;margin:1.25rem 0 2.25rem}
.discovery-result{display:flex;flex-direction:column;gap:.6rem;padding:1.35rem;background:#fff;border:1px solid #e6e0d4;border-radius:16px;color:#102647;text-decoration:none;transition:transform .15s ease,border-color .15s ease}
.discovery-result:hover{transform:translateY(-2px);border-color:#c67c34}
.discovery-result h3{margin:0;font-size:1.15rem}
.discovery-result p{margin:0;line-height:1.75}
.discovery-result small{display:block;line-height:1.55;color:#526174}
.discovery-result .text-link{margin-top:auto}
.discovery-tag{font-size:.78rem;color:#985b27;font-weight:750}
.discovery-transparency{border-inline-start:3px solid #b97637;padding:.7rem 1rem;background:#f9f6f0;margin:1rem 0 2rem;line-height:1.8}
@media (prefers-reduced-motion:reduce){.discovery-result{transition:none}.discovery-result:hover{transform:none}}
