
/* ===== luxury layer ===== */
body{background:var(--paper);color:var(--ink);font-size:16.5px;letter-spacing:.005em}
.d{font-family:var(--f-display);font-weight:500;font-variation-settings:"opsz" 72;letter-spacing:-.005em;line-height:1.02}
.d-xl{font-size:clamp(2.7rem,6.6vw,5.2rem);font-weight:400}
.d-l{font-size:clamp(2.1rem,4.4vw,3.4rem);font-weight:400}
.d-m{font-size:clamp(1.5rem,2.7vw,2.2rem);font-weight:400}
.d-s{font-size:clamp(1.15rem,1.9vw,1.42rem);font-weight:500;font-variation-settings:"opsz" 24}
.eyebrow{font-family:var(--f-ui);font-variation-settings:"wdth" 92;font-weight:600;font-size:.68rem;letter-spacing:.26em;color:var(--gold)}
.lead{color:var(--ink-2);font-weight:350;line-height:1.62}
section{padding-block:clamp(58px,8.5vw,116px)}

/* header */
header.site{background:rgba(11,10,9,.78);border-bottom:1px solid var(--line)}
.nav{height:78px}
.brand-name{font-family:var(--f-display);font-weight:500;font-size:1.12rem;letter-spacing:.02em}
.brand-name span{font-family:var(--f-ui);letter-spacing:.34em;font-size:.52rem;color:var(--gold);margin-top:3px}
.brand-mark{color:var(--gold)}
nav.main a{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:500;color:var(--ink-2);padding:9px 13px;border-radius:0;position:relative}
nav.main a:hover,nav.main a.on{background:transparent;color:var(--gold)}
nav.main a.on::after{content:"";position:absolute;left:13px;right:13px;bottom:2px;height:1px;background:var(--gold)}

.lang{border-color:var(--line-2);border-radius:0}
.lang button{color:var(--ink-3);letter-spacing:.12em}
.lang button.on{background:var(--gold);color:#12100C}
.burger{border-color:var(--line-2);border-radius:0}

/* buttons — gold, squared, letterspaced */
.btn{border-radius:0;font-family:var(--f-ui);font-size:.76rem;letter-spacing:.17em;text-transform:uppercase;font-weight:600;padding:15px 26px;transition:background .25s,color .25s,border-color .25s}
.btn-s{padding:10px 17px;font-size:.68rem;letter-spacing:.15em}
.btn-em{background:var(--gold);color:#12100C;box-shadow:none}
.btn-em:hover{background:var(--gold-2);color:#12100C}
.btn-ink{background:var(--ink);color:#12100C}
.btn-out{border:1px solid var(--line-2);color:var(--ink);background:transparent}
.btn-out:hover{border-color:var(--gold);color:var(--gold);background:transparent}
.btn-ghost{background:var(--surface-2);color:var(--ink-2)}
.btn-ghost:hover{background:var(--line);color:var(--ink)}
.btn-wa,.btn-tg{color:#0B0A09}

.tag{border-radius:0;background:transparent;border:1px solid var(--line-2);color:var(--ink-2);font-family:var(--f-ui);font-size:.63rem;letter-spacing:.2em;padding:6px 11px;font-weight:600}
.tag-em{background:transparent;border-color:var(--gold-deep);color:var(--gold)}
.pill{border-radius:0;border:1px solid var(--line-2);color:var(--ink-2);font-size:.8rem;padding:9px 17px;background:transparent}
.pill.on{background:var(--gold);color:#12100C;border-color:var(--gold)}

/* hero */
.hero{background:#080706}
.hero-media img{object-position:center 55%}
.hero-veil{background:
  radial-gradient(130% 92% at 6% 104%,rgba(201,162,39,.18),transparent 56%),
  linear-gradient(to top,rgba(8,7,6,.98) 2%,rgba(8,7,6,.86) 38%,rgba(8,7,6,.62) 100%),
  linear-gradient(100deg,rgba(8,7,6,.86) 0%,rgba(8,7,6,.38) 58%,transparent 88%)}
.hero h1,.hero .lead{text-shadow:0 2px 26px rgba(8,7,6,.85)}
.hero-inner{padding-block:clamp(72px,12vw,150px) clamp(30px,4vw,48px)}
.hero h1{color:#FBF7EF;max-width:15ch;font-weight:400}
.hero h1 em{font-style:italic;color:var(--gold-2);font-weight:400}
.hero .lead{color:#C9C0B2}
.hero-badges .tag{background:transparent;border-color:rgba(201,162,39,.4);color:#E3D9C6;backdrop-filter:none}

/* planner → gold-framed console */
.planner{background:rgba(22,20,18,.86);border:1px solid var(--line-2);border-radius:0;backdrop-filter:blur(16px);padding:24px;box-shadow:var(--shadow-lg)}
.planner::before{content:"";display:block;height:1px;background:linear-gradient(90deg,var(--gold),transparent 72%);margin:-24px -24px 20px}
.field label{font-family:var(--f-ui);letter-spacing:.2em;font-size:.65rem;color:var(--ink-3);font-weight:600}
.field input,.field select,.field textarea{background:transparent;border:1px solid var(--line-2);border-radius:0;padding:13px 14px;color:var(--ink)}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--gold);background:rgba(201,162,39,.05)}
.price-now b{font-family:var(--f-display);font-weight:400;color:var(--gold-2);font-size:2.5rem;font-variation-settings:"opsz" 48}
.planner-out{border-top:1px solid var(--line)}

/* stats */
.stats{border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2)}
.stat{padding:26px 22px;border-right:1px solid var(--line-2)}
.stat b{font-family:var(--f-display);font-weight:400;font-size:2.4rem;color:var(--gold-2)}
.stat span{font-family:var(--f-ui);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3)}
@media (max-width:760px){.stat:nth-child(1),.stat:nth-child(2){border-bottom:1px solid var(--line-2)}}

/* tour cards — editorial, no rounded boxes */
.tours-grid{grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:34px}
.tcard{background:transparent;border:0;border-top:1px solid var(--line-2);border-radius:0;padding-top:0}
.tcard:hover{transform:none;box-shadow:none}
.tcard-img{aspect-ratio:5/6;border-radius:0;background:var(--surface)}
.tcard-img img{filter:saturate(1.04) contrast(1.03)}
.tcard:hover .tcard-img img{transform:scale(1.06)}
.tcard-img::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(8,7,6,.58),transparent 44%);pointer-events:none}
.tcard-badges .tag{background:rgba(8,7,6,.5);border-color:rgba(255,255,255,.22);color:#EFE7D8}
.tcard-body{padding:18px 0 0;gap:14px}
.tcard h3{font-family:var(--f-display);font-weight:500;font-size:1.42rem;line-height:1.14;font-variation-settings:"opsz" 28}
.tcard h3 a:hover{color:var(--gold-2)}
.tcard .stops{color:var(--ink-3);font-size:.9rem;line-height:1.55}
.tcard-foot{border-top:1px solid var(--line);padding-top:16px}
.from em{font-family:var(--f-ui);letter-spacing:.2em;font-size:.62rem;color:var(--ink-3)}
.from b{font-family:var(--f-display);font-weight:400;font-size:1.78rem;color:var(--gold-2);font-variation-settings:"opsz" 32}
.from i{color:var(--ink-3);font-size:.7rem;letter-spacing:.06em}
.ladder i{background:#2B2620}
.ladder i.hi{background:var(--gold)}

/* band */
.band{position:relative;background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line);isolation:isolate}
.band::before{content:"";position:absolute;inset:0;z-index:-1;background:url("/img/ornament.webp") repeat;background-size:760px auto;opacity:.5;pointer-events:none}
.band .eyebrow{color:var(--gold)}
.why-grid{background:var(--line);border-radius:0}
.why{background:var(--surface);padding:32px 28px}
.why b{font-family:var(--f-display);font-weight:500;font-size:1.16rem;font-variation-settings:"opsz" 20;margin:14px 0 8px}
.why p{color:var(--ink-3);opacity:1}
.why svg{stroke:var(--gold)}

/* cards / panels */
.summary,.ccard,.rcard,.tablewrap{background:var(--surface);border:1px solid var(--line);border-radius:0}
.ccard-img{border-radius:0}
.specs li{background:transparent;border:1px solid var(--line);border-radius:0;color:var(--ink-3);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;padding:5px 10px}
.frame{border-radius:0;box-shadow:var(--shadow-lg)}
th{background:var(--surface-2);color:var(--ink-3);letter-spacing:.2em;font-family:var(--f-ui)}
td{color:var(--ink-2)}
tbody tr.on td{background:rgba(201,162,39,.12);color:var(--ink)}
.day-n{color:var(--gold);letter-spacing:.2em;font-family:var(--f-ui)}
.day h4{font-family:var(--f-display);font-weight:500;font-size:1.22rem;font-variation-settings:"opsz" 22}
.day p{color:var(--ink-2)}
details.faq summary{font-weight:500;font-size:1.06rem;padding:20px 34px 20px 0}
details.faq summary::after{color:var(--gold);top:17px}
details.faq p{color:var(--ink-3)}
.rcard{border-left:1px solid var(--gold-deep)}
.rcard .stars{color:var(--gold)}
.vcard{border-radius:0;border-color:var(--line-2)}
.vcard .play i{background:rgba(201,162,39,.94)}
.vcard .play i::after{border-left-color:#12100C}
.vcard b{font-family:var(--f-display);font-weight:500}
.opt{border-radius:0;background:var(--surface)}
.opt.on{border-color:var(--gold);background:rgba(201,162,39,.09)}
.drawer{background:var(--paper)}
.drawer-head,.drawer-foot{background:var(--surface);border-color:var(--line)}
.iclose{border-radius:0;border-color:var(--line-2)}
.srow.total b{font-family:var(--f-display);font-weight:400;color:var(--gold-2);font-size:1.85rem}
.steps i.on{background:var(--gold)}
.pax{border-radius:0;background:transparent;border-color:var(--line-2)}
.mbar{background:rgba(11,10,9,.94);border-color:var(--line-2)}
.toast{background:var(--gold);color:#12100C;border-radius:0}
.ok-box{background:rgba(201,162,39,.08);border:1px solid var(--gold-deep);border-radius:0}
.kv dt{color:var(--ink-3);font-family:var(--f-ui);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;padding-top:2px}
footer.site{background:#080706;border-top:1px solid var(--line);color:var(--ink-3)}
footer.site a{color:var(--ink-2)}
footer.site a:hover{color:var(--gold-2)}
.fgrid h5{color:var(--gold);letter-spacing:.24em;font-family:var(--f-ui)}
.socials a{border-radius:0;border-color:var(--line-2)}
.socials a:hover{background:transparent;border-color:var(--gold);color:var(--gold)}
.incl li{color:var(--ink-2)}
.incl li::before{background:var(--gold)}
.crumbs a:hover{color:var(--gold-2)}
.sec-head{margin-bottom:clamp(28px,4vw,46px)}

