/* ===== v2 luxury layer (overrides style.v7.css) ===== */
:root{--bg:#FBF8F3;--bg2:#F3EDE4;--line:#E8E0D3;--tx:#2A2622;--mut:#77706A;--g:#2F3B33;--g2:#1E2621;--o:#B5673F;--o2:#9C5532;--gold:#C9A46A;--r:6px;--sh:0 18px 40px rgba(40,30,20,.08);--serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--sans:"Jost",system-ui,-apple-system,sans-serif}
body{font-family:var(--sans);font-weight:400;letter-spacing:.005em;color:var(--tx);background:var(--bg)}
h1,h2,h3,.h2,.shead h2,.thero h1,.ptitle+h1{font-family:var(--serif)!important;font-weight:500!important;letter-spacing:0!important}
h2,.shead h2,.h2{font-size:clamp(30px,3.6vw,46px)!important;color:var(--g)!important;line-height:1.1}
h3{font-weight:600!important;font-size:1.3em;line-height:1.2}
.eyebrow,.ptitle{font-family:var(--sans);letter-spacing:.28em;font-weight:500;color:var(--o)}
.wrap{max-width:1280px;padding:0 32px}
.block{padding-top:110px}
.shead{flex-direction:column;align-items:center;text-align:center;margin-bottom:44px;gap:14px}
.shead h2{justify-content:center}
.shead h2 .ic{display:none}
.shead::after{content:"";width:60px;height:1px;background:var(--gold)}
/* buttons: pill, uppercase, refined */
.btn{border-radius:999px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;font-size:13px;padding:14px 30px;box-shadow:none!important}
.btn.sm{font-size:11.5px;padding:10px 20px;border-radius:999px}
.btn-o,.btn-y{background:var(--o)}.btn-o:hover,.btn-y:hover{background:var(--o2)}
.btn-g{background:var(--g)}
.btn-line{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.85)}.btn-line:hover{background:#fff;color:var(--g)}
/* header */
.topbar{background:var(--g2)}
.top{background:rgba(251,248,243,.96);border-bottom:1px solid var(--line)}
.top nav>ul>li>a{font-family:var(--sans);font-weight:500;text-transform:uppercase;letter-spacing:.14em;font-size:12.5px;color:var(--g)}
.top nav>ul>li>a.active{color:var(--o)}
.top nav>ul>li>a.active::after{height:1px;background:var(--o)}
.brand b{font-family:var(--serif);font-weight:600;font-size:22px;letter-spacing:.02em}
/* home: transparent header over video, solid after scroll */
body.home .topbar{display:none}
body.home .top{position:fixed;left:0;right:0;top:0;background:linear-gradient(180deg,rgba(0,0,0,.45),rgba(0,0,0,0));border-bottom-color:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;transition:background .35s,border-color .35s}
body.home .top:not(.scrolled) .brand,body.home .top:not(.scrolled) nav>ul>li>a,body.home .top:not(.scrolled) .lang a,body.home .top:not(.scrolled) .lang span,body.home .top:not(.scrolled) .ddt{color:#fff}
body.home .top:not(.scrolled) .burger span{background:#fff}
body.home .top.scrolled,body.home.menu-open .top{background:rgba(251,248,243,.98);border-bottom-color:var(--line)}
body.home .top:not(.scrolled) .brand img{box-shadow:0 0 0 2px rgba(255,255,255,.6)}
/* video hero */
.vhero{position:relative;height:100vh;height:100svh;min-height:560px;overflow:hidden;color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;background:#1b1a18}
.vh-media{position:absolute;inset:0}
.vh-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;max-width:none}
.vh-yt{position:absolute;inset:0;opacity:0;transition:opacity 1.2s;pointer-events:none;overflow:hidden}
.vh-yt.on{opacity:1}
.vh-yt iframe{position:absolute;top:50%;left:50%;width:100vw;height:56.25vw;min-height:100%;min-width:177.78vh;transform:translate(-50%,-50%);border:0}
.vh-ov{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,12,10,.45) 0,rgba(15,12,10,.25) 40%,rgba(15,12,10,.6) 100%)}
.vh-in{position:relative;z-index:2;max-width:980px;padding-top:70px}
.vh-eye{text-transform:uppercase;letter-spacing:.38em;font-size:12.5px;font-weight:500;opacity:.9;margin-bottom:18px}
.vhero h1{font-family:var(--serif);font-weight:400!important;font-size:clamp(40px,6.4vw,84px);line-height:1.05;margin:0 0 22px;text-shadow:0 2px 30px rgba(0,0,0,.35)}
.vhero h1 em{font-style:italic;color:#fff}
.vhero .sub{font-size:clamp(16px,1.5vw,19px);font-weight:300;max-width:620px;margin:0 auto 30px;opacity:.95}
.vh-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:34px}
.vhero .search{margin:0 auto;max-width:760px;background:rgba(255,255,255,.96);color:var(--tx);border-radius:999px;padding:8px 8px 8px 22px;text-align:left;box-shadow:0 20px 50px rgba(0,0,0,.25)}
.vh-soc{position:absolute;z-index:3;left:32px;bottom:28px}
.vh-soc .socials{display:flex;gap:10px}
.vh-soc .soc{color:#fff;opacity:.85}
.vh-down{position:absolute;z-index:3;left:50%;bottom:26px;width:26px;height:42px;margin-left:-13px;border:1px solid rgba(255,255,255,.8);border-radius:20px}
.vh-down::after{content:"";position:absolute;left:50%;top:9px;width:3px;height:8px;margin-left:-1.5px;background:#fff;border-radius:2px;animation:vhd 1.8s infinite}
@keyframes vhd{0%{opacity:0;transform:translateY(0)}40%{opacity:1}100%{opacity:0;transform:translateY(12px)}}
/* cards: clean, editorial */
.hcard,.scard{border-radius:var(--r);padding:0;box-shadow:none;border:1px solid var(--line);overflow:hidden;transition:transform .35s,box-shadow .35s}
.hcard:hover,.scard:hover{transform:translateY(-4px);box-shadow:var(--sh)}
.hcard .dimg,.scard .dimg,.dcard .dimg{border-radius:0!important}
.dcard .dimg{border-radius:var(--r)!important;overflow:hidden}
.dimg img{transition:transform .8s}
.hcard:hover .dimg img,.scard:hover .dimg img,.dcard:hover .dimg img{transform:scale(1.05)}
.hbody{padding:18px 20px 22px}
.hcard h3,.scard h3,.dcard h3{font-family:var(--serif)!important;font-size:24px}
.hcard .price,.price{font-family:var(--sans);font-weight:500;border-radius:999px;background:var(--o)}
.badge{border-radius:999px;font-family:var(--sans);letter-spacing:.06em}
/* tour pages */
.thero{border-radius:0!important;min-height:560px}
.thero h1{font-size:clamp(34px,5vw,64px)!important;font-weight:400!important}
.thero::before{background:linear-gradient(180deg,rgba(0,0,0,.15) 20%,rgba(15,12,10,.75))}
.card.sticky{border-radius:var(--r);box-shadow:var(--sh)}
.tcar figure,.tcar img,.gcar img{border-radius:var(--r)}
/* footer */
.foot{background:var(--g2)!important}
.foot h3,.foot h4{font-family:var(--serif)}
@media(max-width:1100px){
 body.home .top nav{background:var(--bg)}
 body.home .top nav>ul>li>a{color:var(--g)!important}
 .top nav>ul>li>a{font-size:15px}
 .block{padding-top:80px}
}
@media(max-width:767px){
 .wrap{padding:0 18px}
 .block{padding-top:56px}
 .shead{margin-bottom:26px}
 h2,.shead h2,.h2{font-size:30px!important}
 .vhero{min-height:600px}
 .vhero h1{font-size:40px}
 .vh-in{padding-top:60px}
 .vh-eye{font-size:11px;letter-spacing:.28em}
 .vh-btns .btn{width:100%;justify-content:center}
 .vh-btns .btn-o{display:inline-flex!important}
 .vhero .search{border-radius:18px;padding:12px}
 .vh-soc{left:0;right:0;bottom:18px;display:flex;justify-content:center}
 .vh-down{display:none}
 .thero{min-height:0}
 .thero h1{font-size:32px!important}
}
body.home .top:not(.scrolled) .brand b,body.home .top:not(.scrolled) .brand span{color:#fff!important}
body.home .top:not(.scrolled) .brand img{box-shadow:none}
.vh-ov{background:linear-gradient(180deg,rgba(15,12,10,.5) 0,rgba(15,12,10,.35) 45%,rgba(15,12,10,.65) 100%)}
.vhero .sub{text-shadow:0 1px 12px rgba(0,0,0,.5)}
.vh-yt iframe{transform:translate(-50%,-50%) scale(1.15)}
/* ===== r2 ===== */
.vhero{height:100vh;height:100svh;min-height:0}
@supports(height:100dvh){.vhero{height:100dvh}}
.vh-media .cloud{z-index:1}
.vh-yt{z-index:2;transition:none}
.vh-down{display:none!important}
body.home .feats{margin-top:48px}
.vh-ov{z-index:1;background:linear-gradient(180deg,rgba(8,7,6,.62) 0,rgba(8,7,6,.42) 30%,rgba(8,7,6,.55) 60%,rgba(8,7,6,.75) 100%),radial-gradient(ellipse at center,rgba(0,0,0,.35),transparent 70%)}
.vh-in{z-index:3}
.vhero h1{text-shadow:0 2px 6px rgba(0,0,0,.45),0 4px 40px rgba(0,0,0,.5)}
.vhero .sub{color:#fff;opacity:1;font-weight:400;font-size:clamp(18px,1.9vw,23px);text-shadow:0 1px 3px rgba(0,0,0,.8),0 2px 18px rgba(0,0,0,.6)}
.vh-eye{opacity:1;color:#fff;font-weight:600;text-shadow:0 1px 3px rgba(0,0,0,.8)}
.vh-soc .soc{opacity:1;filter:drop-shadow(0 1px 3px rgba(0,0,0,.8))}
body.home .top:not(.scrolled){background:linear-gradient(180deg,rgba(0,0,0,.6),rgba(0,0,0,0))}
body.home .top:not(.scrolled) nav>ul>li>a,body.home .top:not(.scrolled) .brand b,body.home .top:not(.scrolled) .lang a{text-shadow:0 1px 3px rgba(0,0,0,.7)}
.brand{gap:14px;align-items:center}
.brand img{height:68px!important;width:68px!important}
.brand span{display:flex;align-items:center}
.brand b{white-space:nowrap;font-size:24px!important;line-height:1}
.nav{height:88px}
@media(max-width:1100px){.top nav{top:88px!important}}
@media(max-width:1250px) and (min-width:1101px){.brand b{font-size:20px!important}.top nav>ul>li>a{padding:10px 10px;letter-spacing:.1em}}
@media(max-width:767px){.nav{height:72px}.top nav{top:72px!important}.brand img{height:54px!important;width:54px!important}.brand b{font-size:20px!important}.vhero .sub{font-size:18px}}
@media(max-width:360px){.brand b{font-size:17px!important}}
.brand{flex:none}
.top nav{min-width:0}
body.home .top:not(.scrolled){border-bottom:0!important}
@media(min-width:1101px){.nav{gap:18px}.top nav ul{justify-content:flex-end}.top nav>ul>li>a{padding:10px 11px}}
@media(max-width:1320px) and (min-width:1101px){.top .btn.hide-m{display:none}}
.vh-ov{background:linear-gradient(180deg,rgba(8,7,6,.66) 0,rgba(8,7,6,.5) 30%,rgba(8,7,6,.58) 60%,rgba(8,7,6,.78) 100%),radial-gradient(ellipse at center,rgba(0,0,0,.4),transparent 70%)}
.vh-media{z-index:0}
@media(min-width:1101px){.nav{gap:36px}.brand b{font-size:22px!important}.top nav ul{justify-content:center}}
