/*
Theme Name: GV55
Author: OpenAI
Description: WordPress theme rebuilt directly from the provided landing page source.
Version: 4.0.0
Text Domain: gv55
*/

/* =========================
   SHARED / GLOBAL + PRIMARY HERO
   ========================= */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
:root{
  --k:#080808;--k2:#0f0f0f;--k3:#161616;--k4:#1e1e1e;
  --w:#f0ece6;--w2:rgba(240,236,230,.62);--w3:rgba(240,236,230,.3);--w4:rgba(240,236,230,.08);--w5:rgba(240,236,230,.04);
  --b:rgba(240,236,230,.1);--b2:rgba(240,236,230,.06);
  --g:#b8966a;--g2:rgba(184,150,106,.15);
}
body{background:var(--k);color:var(--w);font-family:'Inter',sans-serif;font-weight:300;overflow-x:hidden}
::-webkit-scrollbar{width:3px}::-webkit-scrollbar-track{background:var(--k)}::-webkit-scrollbar-thumb{background:var(--g)}
.nav{position:fixed;top:0;left:0;right:0;z-index:800;height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 48px;transition:background .4s,border .4s}
.nav.sc{background:rgba(8,8,8,.96);border-bottom:1px solid var(--b);backdrop-filter:blur(20px)}
.nav-logo{font-family:'Cormorant',serif;font-size:20px;font-weight:300;letter-spacing:.28em;text-transform:uppercase;color:var(--w);text-decoration:none}
.nav-logo span{color:var(--g)}
.nav-links{display:flex;gap:36px;list-style:none}
.nav-links a{font-size:9.5px;font-weight:400;letter-spacing:.22em;text-transform:uppercase;color:var(--w3);text-decoration:none;transition:color .2s}
.nav-links a:hover{color:var(--w)}
@media(max-width:900px){.nav-links{display:none}}
.nav-r{display:flex;align-items:center;gap:14px}
.nav-ghost{font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--w3);text-decoration:none;transition:color .2s}
.nav-ghost:hover{color:var(--g)}
.nav-btn{background:var(--w);color:var(--k);border:none;font-size:9.5px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;padding:11px 24px;cursor:pointer;font-family:'Inter',sans-serif;text-decoration:none;transition:background .2s;white-space:nowrap}
.nav-btn:hover{background:var(--g)}
@media(max-width:640px){.nav{padding:0 20px}.nav-ghost{display:none}}
/* ── CINEMATIC SCROLL HERO ── */
@keyframes fadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
.hero-scroll{height:300vh;position:relative}
.hero-sticky{position:sticky;top:0;height:100vh;overflow:hidden}
.hero-scene{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
  filter:grayscale(80%) contrast(1.1) brightness(.75);
  opacity:0;transition:opacity .05s linear;
  will-change:opacity,transform;
}
.hero-scene.active{opacity:1}
.hero-grad{
  position:absolute;inset:0;pointer-events:none;
  background:
    linear-gradient(to right,rgba(8,8,8,.92) 0%,rgba(8,8,8,.7) 40%,rgba(8,8,8,.1) 100%),
    linear-gradient(to top,rgba(8,8,8,.85) 0%,transparent 55%);
}
.hero-content{
  position:absolute;bottom:0;left:0;z-index:4;
  padding:0 56px 88px;max-width:700px;
  animation:fadeUp 1.4s cubic-bezier(.16,1,.3,1) both .2s;
}
.hero-eye{display:flex;align-items:center;gap:14px;font-size:9px;letter-spacing:.42em;text-transform:uppercase;color:var(--g);margin-bottom:28px}
.hero-eye::before{content:'';width:32px;height:1px;background:var(--g)}
.hero-h1{font-family:'Cormorant',serif;font-size:clamp(64px,11vw,120px);font-weight:300;line-height:.88;letter-spacing:-.02em;margin-bottom:8px}
.hero-h1 em{font-style:italic;display:block;color:var(--g)}
.hero-sub{margin-top:18px;font-family:'Cormorant',serif;font-style:italic;font-size:16px;color:var(--w3);line-height:1.6;max-width:560px}
.hero-desc{margin-top:14px;font-size:13px;font-weight:300;color:var(--w2);line-height:1.95;max-width:600px}

.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px}
.hero-motto{position:absolute;bottom:52px;right:52px;z-index:4;text-align:right;animation:fadeUp 1.6s cubic-bezier(.16,1,.3,1) both .8s}
.hero-motto p{font-family:'Cormorant',serif;font-style:italic;font-size:13px;color:var(--w3);line-height:1.6}
.hero-motto span{font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:var(--g);margin-top:10px;display:block}
/* scene label — bottom center */
.hero-scene-label{
  position:absolute;bottom:52px;left:50%;transform:translateX(-50%);
  z-index:4;display:flex;flex-direction:column;align-items:center;gap:10px;
}
.hsl-dots{display:flex;gap:8px}
.hsl-dot{
  width:4px;height:4px;border-radius:50%;background:var(--w3);
  transition:background .4s,transform .4s;cursor:pointer;border:none;padding:0;
}
.hsl-dot.on{background:var(--g);transform:scale(1.6)}
/* scroll cue */
.hero-scroll-cue{
  position:absolute;bottom:52px;left:56px;z-index:4;
  display:flex;flex-direction:column;align-items:center;gap:8px;
  opacity:1;transition:opacity .5s;
}
.hero-scroll-cue span{font-size:8px;letter-spacing:.4em;text-transform:uppercase;color:var(--w3)}
.hero-scroll-cue-line{width:1px;height:36px;background:var(--g);animation:scrollPulse 1.6s ease-in-out infinite}
@keyframes scrollPulse{0%,100%{opacity:.3;transform:scaleY(.5)}50%{opacity:1;transform:scaleY(1)}}
@media(max-width:640px){
  .hero-content{padding:0 24px 120px}
  .hero-motto{display:none}
  .hero-scroll-cue{left:24px}
}
.btn-w{display:inline-flex;align-items:center;gap:10px;background:var(--w);color:var(--k);border:none;font-size:9.5px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;padding:15px 32px;cursor:pointer;color: #000 !important;text-decoration:none;font-family:'Inter',sans-serif;transition:background .2s,transform .15s}
.btn-w:hover{background:var(--g);transform:translateY(-1px)}
.btn-o{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--b);color:var(--w2);background:transparent;font-size:9.5px;font-weight:400;letter-spacing:.2em;text-transform:uppercase;padding:14px 26px;cursor:pointer;text-decoration:none;font-family:'Inter',sans-serif;transition:all .2s}
.btn-o:hover{border-color:var(--w);color:var(--w)}
.sec{padding:104px 56px}
.sec.s2{background:var(--k2)}
.sec.s3{background:var(--k3)}
@media(max-width:640px){.sec{padding:80px 24px}}
.in{max-width:1280px;margin:0 auto}
.ey{font-size:9px;letter-spacing:.42em;text-transform:uppercase;color:var(--g);margin-bottom:14px;display:block}
.st{font-family:'Cormorant',serif;font-size:clamp(32px,5vw,60px);font-weight:300;line-height:1.02;letter-spacing:-.01em}
.st em{font-style:italic;color:var(--g)}
.sb{font-size:13px;font-weight:300;color:var(--w2);line-height:1.95;max-width:560px;margin-top:16px}
.man-sec{padding:104px 56px;background:var(--k2);position:relative;overflow:hidden}
.man-sec::before{content:'"';font-family:'Cormorant',serif;font-size:600px;font-weight:300;color:var(--w5);position:absolute;top:-120px;left:-60px;line-height:1;pointer-events:none;user-select:none}
.man-in{max-width:900px;margin:0 auto;position:relative;z-index:1}
.man-q{font-family:'Cormorant',serif;font-style:italic;font-size:clamp(20px,3.5vw,36px);font-weight:300;line-height:1.45;color:var(--w);border-left:2px solid var(--g);padding-left:32px;margin-bottom:48px}
.man-body{display:grid;grid-template-columns:1fr 1fr;gap:48px}
@media(max-width:640px){.man-body{grid-template-columns:1fr}.man-sec{padding:80px 24px}}
.man-p{font-size:13px;font-weight:300;line-height:2;color:var(--w2)}
.mottos{margin-top:64px;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}
.motto{font-family:'Cormorant',serif;font-style:italic;font-size:clamp(14px,2vw,20px);font-weight:300;color:var(--w3);transition:color .3s;cursor:default}
.motto:hover{color:var(--w)}
.mdiv{font-size:10px;color:var(--g);opacity:.4;letter-spacing:8px}
.gloves{display:grid;grid-template-columns:1fr 1fr;gap:2px;margin-top:64px}
@media(max-width:768px){.gloves{grid-template-columns:1fr}}
.gl{padding:48px 40px;border:1px solid var(--b2)}
.gl.wg{background:var(--k3)}
.gl.bg{background:var(--k4)}
.gl-type{display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:.38em;text-transform:uppercase;color:var(--g);margin-bottom:20px}
.gl-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.wg .gl-dot{background:var(--w);opacity:.4}
.bg .gl-dot{background:var(--k);border:1px solid var(--g)}
.gl-title{font-family:'Cormorant',serif;font-size:clamp(24px,3vw,40px);font-weight:300;line-height:1.05;margin-bottom:12px}
.gl-tag{font-family:'Cormorant',serif;font-style:italic;font-size:16px;color:var(--w3);margin-bottom:24px;line-height:1.5}
.gl-desc{font-size:12.5px;font-weight:300;color:var(--w2);line-height:1.95;margin-bottom:28px}
.gl-list{list-style:none}
.gl-list li{font-size:11.5px;font-weight:300;color:var(--w2);padding:9px 0;border-bottom:1px solid var(--b2);display:flex;align-items:center;gap:12px;line-height:1.4}
.gl-list li::before{content:'—';color:var(--g);flex-shrink:0}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:2px}
@media(max-width:900px){.svc-grid{grid-template-columns:1fr 1fr}}
@media(max-width:500px){.svc-grid{grid-template-columns:1fr}}
.svc{background:var(--k3);border:1px solid var(--b2);padding:36px 28px;position:relative;overflow:hidden;transition:all .3s}
.svc::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--g);transform:scaleX(0);transform-origin:left;transition:transform .4s}
.svc:hover{background:var(--k4);transform:translateY(-2px)}
.svc:hover::after{transform:scaleX(1)}
.svc-n{font-family:'Cormorant',serif;font-size:52px;font-weight:300;color:var(--b);line-height:1;display:block;margin-bottom:16px}
.svc-title{font-family:'Cormorant',serif;font-size:21px;font-weight:400;margin-bottom:10px;line-height:1.2}
.svc-desc{font-size:11.5px;font-weight:300;color:var(--w2);line-height:1.9}
.svc-tag{display:inline-block;margin-top:18px;font-size:8.5px;letter-spacing:.28em;text-transform:uppercase;color:var(--g)}
.diana-wrap{display:grid;grid-template-columns:1fr 1fr;min-height:680px}
@media(max-width:768px){.diana-wrap{grid-template-columns:1fr}}
.diana-photo{position:relative;overflow:hidden;min-height:560px}
.diana-img{position:absolute;inset:0;background-size:cover;background-position:center 15%;filter:grayscale(100%) contrast(1.05);transition:filter .6s,transform .8s}
.diana-photo:hover .diana-img{filter:grayscale(60%);transform:scale(1.02)}
.diana-overlay{position:absolute;inset:0;background:linear-gradient(to right,transparent 60%,var(--k2) 100%),linear-gradient(to top,rgba(8,8,8,.6) 0%,transparent 60%)}
.diana-text{background:var(--k2);padding:80px 64px;display:flex;flex-direction:column;justify-content:center}
@media(max-width:640px){.diana-text{padding:56px 24px}}
.diana-text p{font-size:13px;font-weight:300;color:var(--w2);line-height:2;margin-bottom:14px;margin-top:20px}
.diana-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.diana-tag{font-size:9px;letter-spacing:.2em;text-transform:uppercase;border:1px solid var(--b);color:var(--w3);padding:6px 14px;transition:all .2s}
.diana-tag:hover{border-color:var(--g);color:var(--g)}
.diana-stats{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:36px;border:1px solid var(--b)}
.ds{padding:18px 20px;border:1px solid var(--b2)}
.ds-n{font-family:'Cormorant',serif;font-size:32px;color:var(--g);font-weight:300;display:block;line-height:1}
.ds-l{font-size:8.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--w3);margin-top:5px;display:block}
.strip{display:grid;grid-template-columns:1.4fr 1fr 1fr;height:520px;gap:2px}
@media(max-width:768px){.strip{grid-template-columns:1fr;height:auto}}
.sp{position:relative;overflow:hidden;cursor:pointer}
@media(max-width:768px){.sp{min-height:280px}}
.sp-img{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .7s,filter .5s;filter:grayscale(20%) brightness(.7)}
.sp:hover .sp-img{transform:scale(1.06);filter:grayscale(0%) brightness(.85)}
.sp-label{position:absolute;bottom:24px;left:24px;z-index:2}
.sp-tag{font-size:7.5px;letter-spacing:.32em;text-transform:uppercase;color:var(--g);display:block;margin-bottom:6px}
.sp-name{font-family:'Cormorant',serif;font-size:21px;font-weight:300;color:var(--w);line-height:1.1}
.dest-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin-top:56px}
@media(max-width:900px){.dest-grid{grid-template-columns:1fr 1fr}}
@media(max-width:500px){.dest-grid{grid-template-columns:1fr}}
.dest{background:var(--k3);border:1px solid var(--b2);padding:32px 24px;transition:all .25s;position:relative;overflow:hidden}
.dest::before{content:'';position:absolute;left:0;top:0;bottom:0;width:1px;background:var(--g);transform:scaleY(0);transform-origin:bottom;transition:transform .35s}
.dest:hover{background:var(--k4);transform:translateX(2px)}
.dest:hover::before{transform:scaleY(1)}
.dest-flag{font-size:24px;margin-bottom:14px;display:block}
.dest-country{font-family:'Cormorant',serif;font-size:20px;font-weight:300;margin-bottom:6px}
.dest-region{font-size:9.5px;letter-spacing:.14em;color:var(--g);text-transform:uppercase;margin-bottom:12px;display:block}
.dest-desc{font-size:11px;font-weight:300;color:var(--w2);line-height:1.85}
.plat-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;margin-top:56px}
@media(max-width:640px){.plat-grid{grid-template-columns:1fr}}
.plat{background:var(--k3);border:1px solid var(--b2);padding:40px 36px;display:flex;flex-direction:column;transition:border-color .25s}
.plat:hover{border-color:var(--b)}
.plat-logo{font-size:9.5px;letter-spacing:.32em;text-transform:uppercase;color:var(--g);margin-bottom:16px;display:block}
.plat-title{font-family:'Cormorant',serif;font-size:26px;font-weight:300;margin-bottom:10px}
.plat-desc{font-size:12px;font-weight:300;color:var(--w2);line-height:1.85;margin-bottom:28px}
.plat-stats{display:flex;gap:28px;margin-bottom:28px;padding-bottom:24px;border-bottom:1px solid var(--b2)}
.ps-n{font-family:'Cormorant',serif;font-size:30px;color:var(--g);display:block;line-height:1}
.ps-l{font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--w3);display:block;margin-top:4px}
.plat-link{display:inline-flex;align-items:center;gap:10px;font-size:9.5px;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--w2);text-decoration:none;border-bottom:1px solid var(--b);padding-bottom:8px;transition:color .25s,border-color .25s;align-self:flex-start}
.plat-link:hover{color:var(--g);border-color:var(--g)}
.rv-summary{display:flex;flex-direction:column;align-items:flex-end;gap:6px;text-align:right}
.rv-sum-stars{color:var(--g);font-size:18px;letter-spacing:4px}
.rv-sum-num{font-family:'Cormorant',serif;font-size:52px;color:var(--w);line-height:1;font-weight:300}
.rv-sum-label{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--w3);line-height:1.6}
.rv-sum-divider{width:40px;height:1px;background:var(--b);margin:8px 0 8px auto}
.rv-sum-plats{display:flex;flex-direction:column;gap:4px}
.rv-sum-plats span{font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--g)}
@media(max-width:640px){.rv-summary{align-items:flex-start;text-align:left}.rv-sum-divider{margin:8px 0}}
.rv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
@media(max-width:900px){.rv-grid{grid-template-columns:1fr 1fr}}
@media(max-width:500px){.rv-grid{grid-template-columns:1fr}}
.rv-card{background:var(--k3);border:1px solid var(--b2);padding:28px 24px;display:flex;flex-direction:column;gap:14px;transition:border-color .25s}
.rv-card:hover{border-color:var(--b)}
.rv-head{display:flex;align-items:flex-start;gap:14px}
.rv-aw{width:44px;height:44px;border-radius:50%;overflow:hidden;flex-shrink:0;border:1px solid var(--b);background:var(--k4)}
.rv-avatar{width:44px;height:44px;object-fit:cover;display:block;border-radius:50%}
.rv-meta{flex:1;min-width:0}
.rv-name{font-size:13px;font-weight:400;color:var(--w);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rv-loc{font-size:10px;color:var(--w3);letter-spacing:.08em;display:block;margin-top:2px}
.rv-date{font-size:9.5px;color:var(--g);letter-spacing:.1em;text-transform:uppercase;display:block;margin-top:3px}
.rv-stars{color:var(--g);font-size:11px;letter-spacing:2px;flex-shrink:0}
.rv-text{font-family:'Cormorant',serif;font-style:italic;font-size:15px;line-height:1.7;color:var(--w2);flex:1}
.rv-badge{font-size:8.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--w3)}
.ct-wrap{display:grid;grid-template-columns:1fr 1fr;width:min(1280px,calc(100% - 112px));margin:0 auto;}
@media(max-width:768px){.ct-wrap{grid-template-columns:1fr}}@media(max-width:640px){.ct-wrap{width:calc(100% - 48px)}}
.ct-l{padding:80px 56px;background:var(--k2);display:flex;flex-direction:column;justify-content:flex-start}
.ct-r{padding:80px 56px;background:var(--k3)}
@media(max-width:640px){.ct-l,.ct-r{padding:56px 24px}}
.ct-quote{font-family:'Cormorant',serif;font-style:italic;font-size:15px;color:var(--w3);margin-top:32px;line-height:1.7}
.ct-trust{margin-top:36px;padding-top:32px;border-top:1px solid var(--b2)}
.ct-trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px;margin-bottom:28px}
.ct-trust-item{background:var(--k4);padding:16px 18px;border:1px solid rgba(240,236,230,.08)}
.ct-trust-val{font-family:'Cormorant',serif;font-size:26px;font-weight:300;color:var(--g) !important;display:block !important;line-height:1;margin-bottom:5px}
.ct-trust-desc{font-size:10px;font-weight:300;color:var(--w3);letter-spacing:.04em;line-height:1.45;display:block}
.ct-pay-label{font-size:8px;letter-spacing:.28em;text-transform:uppercase;color:var(--w3);margin-bottom:14px;display:block}
.ct-pay-logos{display:flex;align-items:center;flex-wrap:wrap;gap:20px}
.ct-pay-logo{display:inline-flex;align-items:center;gap:8px;opacity:.7;transition:opacity .2s;text-decoration:none}
.ct-pay-sep{color:var(--w3);font-size:10px}
.ct-icons{display:flex;align-items:center;gap:20px;margin-top:36px}
.ct-icon{display:inline-flex;text-decoration:none;color:var(--w3);font-size:26px;transition:color .2s}
.ct-icon:hover{color:var(--w)}
.ct-icon .fa-whatsapp{color:#25d366}
.ct-icon--tg .fa-telegram{color:var(--w)}
.channels{display:flex;flex-direction:column;gap:10px;margin-top:36px}
.ch{display:flex;align-items:center;gap:16px;border:1px solid var(--b2);padding:16px 20px;text-decoration:none;color:var(--w2);transition:all .25s}
.ch:hover{border-color:var(--b);background:var(--w5);color:var(--w)}
.ch-icon{font-size:16px;flex-shrink:0}
.ch-lbl{font-size:8px;letter-spacing:.22em;text-transform:uppercase;color:var(--w3);display:block;margin-bottom:2px}
.ch-val{font-size:12.5px;font-weight:300}
.cf-title{font-family:'Cormorant',serif;font-size:26px;font-weight:300;margin-bottom:6px}
.cf-sub{font-size:11.5px;color:var(--w3);margin-bottom:28px;line-height:1.7}
.cf-lbl{font-size:8.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--w3);display:block;margin-bottom:8px}
.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:480px){.cf-row{grid-template-columns:1fr}}
.cf-f{margin-bottom:16px}
.cf-i,.cf-s,.cf-ta{width:100%;background:var(--k2);border:1px solid var(--b);color:var(--w);padding:12px 16px;font-family:'Inter',sans-serif;font-size:13px;font-weight:300;outline:none;transition:border-color .25s;-webkit-appearance:none;appearance:none;border-radius:0}
.cf-i:focus,.cf-s:focus,.cf-ta:focus{border-color:var(--g)}.cf-ta{resize:vertical;min-height:120px;line-height:1.65}
.cf-btn{width:100%;background:var(--w);color:var(--k);border:none;font-size:9.5px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;padding:16px;cursor:pointer;font-family:'Inter',sans-serif;transition:background .25s;margin-top:4px}
.cf-btn:hover{background:var(--g);color:var(--k)}
.cf-note{font-size:10px;color:var(--w3);margin-top:10px;text-align:center;line-height:1.6}
.cf-hint{font-size:8px;color:var(--w3);font-weight:300;letter-spacing:.1em;text-transform:none;margin-left:4px}
.cf-date-wrap{position:relative}
.cf-date-wrap .cf-i{cursor:pointer;padding-right:40px}
.cf-date-icon{position:absolute;right:14px;top:50%;transform:translateY(-50%);pointer-events:none;font-size:14px;opacity:.5}
.flatpickr-calendar{background:var(--k2)!important;border:1px solid var(--b)!important;box-shadow:0 8px 32px rgba(0,0,0,.6)!important;border-radius:0!important;font-family:'Inter',sans-serif!important}
.flatpickr-month,.flatpickr-weekdays,.flatpickr-current-month{background:var(--k2)!important;color:var(--w)!important}
.flatpickr-current-month input.cur-year,.flatpickr-current-month .numInputWrapper{color:var(--w)!important}
.flatpickr-current-month .flatpickr-monthDropdown-months{background:var(--k2)!important;color:var(--w)!important;border:none!important}
.flatpickr-weekday{color:var(--g)!important;font-size:9px!important;letter-spacing:.2em!important;font-weight:400!important}
.flatpickr-day{color:var(--w2)!important;border-radius:0!important;border:none!important}
.flatpickr-day:hover{background:var(--k4)!important;color:var(--w)!important}
.flatpickr-day.selected,.flatpickr-day.selected:hover{background:var(--g)!important;color:var(--k)!important;font-weight:500!important}
.flatpickr-day.today{border-bottom:1px solid var(--g)!important;color:var(--w)!important}
.flatpickr-day.today.selected{border-bottom:none!important}
.flatpickr-day.flatpickr-disabled,.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay{color:var(--w3)!important;opacity:.3!important}
.flatpickr-prev-month,.flatpickr-next-month{color:var(--g)!important;fill:var(--g)!important}
.flatpickr-prev-month:hover svg,.flatpickr-next-month:hover svg{fill:var(--w)!important}
.numInputWrapper:hover{background:var(--k3)!important}
.cf-checks{display:flex;flex-direction:column;gap:10px;margin-top:4px}
.cf-check{display:flex;align-items:center;gap:10px;cursor:pointer}
.cf-check input[type="checkbox"]{appearance:none;-webkit-appearance:none;width:14px;height:14px;border:1px solid var(--b);background:var(--k2);flex-shrink:0;cursor:pointer;transition:background .2s,border-color .2s;position:relative}
.cf-check input[type="checkbox"]:checked{background:var(--g);border-color:var(--g)}
.cf-check input[type="checkbox"]:checked::after{content:'';position:absolute;top:2px;left:4px;width:4px;height:7px;border:1px solid var(--k);border-top:none;border-left:none;transform:rotate(45deg)}
.cf-check span{font-size:12.5px;font-weight:300;color:var(--w2);line-height:1.4}
.close{min-height:300px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center;padding:80px 40px}
.close-bg{position:absolute;inset:0;background-size:cover;background-position:8% 72%;filter:grayscale(100%) brightness(.22)}
.close-in{position:relative;z-index:2;max-width:600px}
.close-t{font-family:'Cormorant',serif;font-style:italic;font-size:clamp(26px,5vw,52px);font-weight:300;line-height:1.1;margin-bottom:18px}
.close-s{font-size:12px;font-weight:300;color:var(--w2);line-height:1.85;margin-bottom:32px}
.close-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
footer{background:var(--k);border-top:1px solid var(--b);padding:64px 56px 40px}
.ft-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;padding-bottom:48px;border-bottom:1px solid var(--b)}
@media(max-width:900px){.ft-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.ft-grid{grid-template-columns:1fr};footer{padding:48px 24px 32px}}
.ft-brand{font-family:'Cormorant',serif;font-size:22px;font-weight:300;letter-spacing:.24em;text-transform:uppercase;color:var(--w);text-decoration:none;display:block;margin-bottom:16px}
.ft-brand span{color:var(--g)}
.ft-manifesto{font-family:'Cormorant',serif;font-style:italic;font-size:13px;color:var(--w3);line-height:1.75;max-width:280px}
.ft-col-lbl{font-size:8.5px;letter-spacing:.36em;text-transform:uppercase;color:var(--g);display:block;margin-bottom:18px}
.ft-links{list-style:none}
.ft-links li{margin-bottom:9px}
.ft-links a{font-size:12px;color:var(--w3);text-decoration:none;transition:color .2s;font-weight:300}
.ft-links a:hover{color:var(--w)}
.ft-bot{display:flex;justify-content:space-between;align-items:center;padding-top:28px;flex-wrap:wrap;gap:16px}
.ft-copy{font-size:10px;color:var(--w3)}
.ft-legal{display:flex;gap:20px}
.ft-legal a{font-size:10px;color:var(--w3);text-decoration:none;transition:color .2s}
.ft-legal a:hover{color:var(--w)}



@media(max-width:640px){footer{padding-bottom:32px}}

.rr{opacity:0;transform:translateY(16px);transition:opacity .85s ease,transform .85s ease}
.rr.on{opacity:1;transform:none}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}.d4{transition-delay:.4s}

.dv img:hover{filter:grayscale(85%) brightness(1.08)!important;transform:scale(1.04)}
.dl{display:none}
.dv:hover .dl{display:none}
.dl span{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--w);font-family:'Inter',sans-serif}
@media(max-width:700px){
.diana-grid>div:first-child{grid-column:1/3!important;grid-row:1!important}}



@media(max-width:800px){}
@media(max-width:480px){}
.gm-card{break-inside:avoid;position:relative;overflow:hidden;margin-bottom:10px;cursor:default}
.gm-card img{width:100%;display:block;filter:grayscale(15%);transition:filter .4s,transform .5s}
.gm-card:hover img{filter:grayscale(0%);transform:scale(1.03)}
.gm-cap{display:none}
.gm-card:hover .gm-cap{display:none}
.gm-cap span{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--w);font-family:'Inter',sans-serif}


.gv-scroll{height:300vh;position:relative}
.gv-sticky{position:sticky;top:0;height:100vh;overflow:hidden}
.gv-bg{position:absolute;inset:0;background-position: 32% center;  background-repeat:no-repeat; filter:grayscale(100%) contrast(1.08) brightness(.9)}
.gv-mask-l{position:absolute;top:0;left:0;width:50%;height:100%;background:rgba(8,8,8,0);transition:none;pointer-events:none}
.gv-mask-r{position:absolute;top:0;right:0;width:50%;height:100%;background:rgba(8,8,8,0);transition:none;pointer-events:none}
.gv-panel{position:absolute;top:0;bottom:0;width:44%;display:flex;align-items:center;padding:60px 56px;opacity:0;transition:opacity .15s}
.gv-panel-right{right:0;text-align:left}
.gv-panel:not(.gv-panel-right){left:0}
.gv-panel-inner{max-width:420px}
.gv-hint{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;opacity:1;transition:opacity .4s}
.gv-hint span{font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:var(--w3)}
.gv-hint-line{width:1px;height:40px;background:var(--g);animation:scrollPulse 1.6s ease-in-out infinite}
@keyframes scrollPulse{0%,100%{opacity:.3;transform:scaleY(.5)}50%{opacity:1;transform:scaleY(1)}}
@media(max-width:768px){.gv-scroll{height:400vh}.gv-panel{width:90%;padding:40px 24px}.gv-panel-right{right:0;left:0;width:90%}}


.gv-offers{position:absolute;top:0;right:0;width:44%;height:100%;display:flex;flex-direction:column;justify-content:center;padding:60px 48px;opacity:0;transition:opacity .15s;gap:28px}
.gv-offers-left{right:auto;left:0}
.gv-offer{border-left:1px solid rgba(184,150,106,.3);padding-left:20px}
.gv-offer-n{font-size:9px;letter-spacing:.3em;color:var(--g);text-transform:uppercase;display:block;margin-bottom:6px}
.gv-offer h4{font-family:'Cormorant',serif;font-size:clamp(15px,1.6vw,20px);font-weight:400;color:var(--w);margin:0 0 6px;line-height:1.2}
.gv-offer p{font-size:clamp(11px,1.1vw,13px);color:var(--w3);line-height:1.6;margin:0}

.nav-icon{color:var(--w3);text-decoration:none;transition:color .2s;display:flex;align-items:center}
.nav-icon:hover{color:var(--g)}

.pg-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}
.pg-cell{position:relative;overflow:hidden;border-radius:2px;aspect-ratio:3/4;cursor:default}
.pg-cell img{transition:filter .4s,transform .5s}
.pg-cell:hover img{filter:grayscale(0%)!important;transform:scale(1.05)}
@media(max-width:1200px){.pg-grid{grid-template-columns:repeat(6,1fr)}}
@media(max-width:800px){.pg-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:480px){.pg-grid{grid-template-columns:repeat(3,1fr)}}





.wrap{max-width:1280px;margin:0 auto;padding:0 56px}
@media(max-width:640px){.wrap{padding:0 24px}}

/* ===== Split Intro Header (like screenshot) ===== */

.split-intro{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:80px;
  align-items:start;
  margin-bottom:72px;
}

@media(max-width:900px){
  .split-intro{
    grid-template-columns:1fr;
    gap:40px;
  }
}

.split-left h2{
  font-family:'Cormorant',serif;
  font-size:clamp(36px,5vw,72px);
  font-weight:300;
  line-height:1.1;
  margin-bottom:16px;
}

.split-left em{
  color:var(--g);
  font-style:italic;
}

.split-right{
  border-left:1px solid var(--b);
  padding-left:40px;
}

@media(max-width:900px){
  .split-right{
    border-left:none;
    padding-left:0;
  }
}

.split-right p{
  font-size:14px;
  color:var(--w2);
  line-height:1.9;
  margin-bottom:18px;
}



/* ===== PARALLAX FEATURE PANELS ===== */
.pf-panel{
  position:relative;
  height:100vh;
  min-height:600px;
  overflow:hidden;
  display:flex;
  align-items:center;
}
.pf-bg{
  position:absolute;
  inset:-20%;
  background-size:cover;
  background-position:center;
  filter:grayscale(80%) contrast(1.1) brightness(.7);
  will-change:transform;
  transition:filter .6s;
}
.pf-panel:hover .pf-bg{
  filter:grayscale(30%) contrast(1.05) brightness(.75);
}
.pf-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(8,8,8,.72) 0%,rgba(8,8,8,.1) 100%);
  pointer-events:none;
}
.pf-content{
  position:relative;
  z-index:2;
  max-width:520px;
  padding:0 80px;
  opacity:0;
  transform:translateY(30px);
  transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);
}
.pf-content.vis{
  opacity:1;
  transform:none;
}
.pf-right{
  margin-left:auto;
  text-align:right;
}
.pf-eye{
  display:block;
  font-size:9px;
  letter-spacing:.44em;
  text-transform:uppercase;
  color:var(--g);
  margin-bottom:20px;
}
.pf-eye::before{
  content:'';
  display:inline-block;
  width:24px;
  height:1px;
  background:var(--g);
  vertical-align:middle;
  margin-right:12px;
}
.pf-right .pf-eye::before{display:none}
.pf-right .pf-eye::after{
  content:'';
  display:inline-block;
  width:24px;
  height:1px;
  background:var(--g);
  vertical-align:middle;
  margin-left:12px;
}
.pf-h{
  font-family:'Cormorant',serif;
  font-size:clamp(44px,7vw,88px);
  font-weight:300;
  line-height:.92;
  letter-spacing:-.02em;
  margin-bottom:24px;
}
.pf-h em{
  font-style:italic;
  color:var(--g);
  display:block;
}
.pf-p{
  font-size:clamp(13px,1.4vw,15px);
  font-weight:300;
  color:var(--w2);
  line-height:1.85;
  max-width:380px;
}
.pf-right .pf-p{margin-left:auto}
@media(max-width:640px){
  .pf-content{padding:0 28px;max-width:100%}
  .pf-right{margin-left:0;text-align:left}
  .pf-right .pf-eye::after{display:none}
  .pf-right .pf-eye::before{display:inline-block}
  .pf-right .pf-p{margin-left:0}
}


/* ── FULLSCREEN INTRO VIDEO (NEW FIRST SECTION) ── */
.intro-video{
  position:relative;
  height:100vh;
  width:100%;
  overflow:hidden;
  background:#000;
}

.intro-video-yt{
  position:absolute;
  top:50%;
  left:50%;
  /* wider than viewport to cover at any aspect ratio */
  width:100vw;
  height:56.25vw; /* 16:9 */
  min-height:100vh;
  min-width:177.78vh; /* 16:9 inverse */
  transform:translate(-50%,-50%);
  border:0;
  pointer-events:none;
}
/* Desktop: show landscape, hide portrait */
.intro-video-mobile{display:none}
/* Mobile: hide landscape, show portrait */
@media(max-width:767px){
  .intro-video-desktop{display:none}
  .intro-video-mobile{
    display:block;
    /* 9:16 vertical video — fill height, center horizontally */
    width:56.25vh;  /* 9/16 of viewport height */
    height:100vh;
    min-width:100vw;
    min-height:177.78vw; /* 16/9 of viewport width */
  }
}

.intro-video-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(to bottom, rgba(0,0,0,.35) 0%, rgba(0,0,0,.1) 40%, rgba(0,0,0,.65) 100%);
  pointer-events:none;
}


/* ── THREE VIDEO GRID ── */
.triple-video-sec{
  background:var(--k);
  padding:120px 0;
  border-top:1px solid var(--b2);
}

.triple-video-wrap{
  max-width:1280px;
  margin:0 auto;
  padding:0 56px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:32px;
}

.triple-video-item{
  background:var(--k3);
  border:1px solid var(--b2);
  overflow:hidden;
}

.triple-video-item video{
  width:100%;
  aspect-ratio:9/16;
  object-fit:cover;
  display:block;
}

@media(max-width:900px){
  .triple-video-wrap{
    grid-template-columns:1fr;
    padding:0 24px;
  }
}


/* ===== Extracted from inline <style> blocks in index.html ===== */

/* --- style block #1 --- */
/* ── VIDEO SECTION ── */
.vid-section {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  background: var(--k);
}
.vid-inner {
  position: absolute;
  inset: 0;
}
.vid-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: grayscale(25%) brightness(.82) contrast(1.05);
  display: block;
}

/* Classic deep vignette — edges dark, centre clear */
.vid-vignette {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(to top,    rgba(8,8,8,.85) 0%,  transparent 38%),
    linear-gradient(to bottom, rgba(8,8,8,.55) 0%,  transparent 32%),
    linear-gradient(to right,  rgba(8,8,8,.65) 0%,  transparent 45%),
    linear-gradient(to left,   rgba(8,8,8,.50) 0%,  transparent 40%);
}
/* Radial vignette for soft cinematic look */
.vid-vignette-radial {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(ellipse at 50% 50%, transparent 40%, rgba(8,8,8,.72) 100%);
}
/* Seamless fade into the reviews section below */
.vid-fade-bottom {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 180px;
  pointer-events: none;
  background: linear-gradient(to top, var(--k2) 0%, transparent 100%);
  z-index: 3;
}

.vid-overlay {
  position: absolute;
  inset: 0;
  z-index: 4;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 0 56px 88px;
  pointer-events: none;
}
.vid-text {
  max-width: 640px;
}
.vid-text .ey { margin-bottom: 14px; }

/* Mute button */
.vid-mute-btn {
  position: absolute;
  bottom: 80px;
  right: 56px;
  pointer-events: all;
  background: rgba(8,8,8,.45);
  border: 1px solid rgba(240,236,230,.15);
  color: var(--w3);
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  backdrop-filter: blur(10px);
  transition: border-color .25s, color .25s, background .25s;
}
.vid-mute-btn:hover {
  border-color: var(--g);
  color: var(--g);
  background: rgba(8,8,8,.65);
}
@media(max-width:640px) {
  .vid-overlay { padding: 0 24px 100px; }
  .vid-mute-btn { right: 24px; bottom: 100px; }
}

/* --- style block #2 --- */
/* ── SHARED VIDEO UTILS ── */
.vid-wrap { position:relative; overflow:hidden; cursor:pointer; }
.vid-wrap video { width:100%; height:100%; object-fit:cover; display:block; }
/* play btn base */
.vid-play { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; z-index:3; transition:opacity .35s; }
.vid-play.vp-hidden { opacity:0; pointer-events:none; }
/* when playing, hide poster gradient too */
.vid-wrap.playing .vid-poster { opacity:0; pointer-events:none; }
.vid-wrap.playing .vid-play { opacity:0; pointer-events:none; }
/* poster overlay */
.vid-poster { position:absolute; inset:0; background-size:cover; background-position:center top; z-index:2; transition:opacity .4s; }

/* --- style block #3 --- */
.vida { background:var(--k); padding:104px 0 0; }
.vida-head { padding:0 64px 56px; }
@media(max-width:640px){ .vida-head { padding:0 24px 40px; } }
.vida-sub { font-family:'Cormorant',serif; font-style:italic; font-size:clamp(14px,1.8vw,19px); color:var(--w3); margin-top:10px; line-height:1.6; max-width:540px; }

.vida-row { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; }
@media(max-width:640px){ .vida-row { grid-template-columns:1fr; gap:3px; } }

.vida-cell { position:relative; overflow:hidden; aspect-ratio:9/16; background:var(--k3); }
@media(max-width:640px){ .vida-cell { aspect-ratio:9/16; max-height:480px; } }

.vida-cell video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; }

/* gradient overlay always on bottom */
.vida-grad { position:absolute; inset:0; background:linear-gradient(to top, rgba(8,8,8,.85) 0%, rgba(8,8,8,.2) 40%, transparent 70%); z-index:2; pointer-events:none; transition:opacity .4s; }
.vida-cell.playing .vida-grad { opacity:0; }

/* poster */
.vida-poster { position:absolute; inset:0; background-size:cover; background-position:center top; z-index:3; transition:opacity .45s; }
.vida-cell.playing .vida-poster { opacity:0; pointer-events:none; }

/* play btn */
.vida-btn { position:absolute; inset:0; z-index:4; display:flex; align-items:center; justify-content:center; transition:opacity .35s; }
.vida-cell.playing .vida-btn { opacity:0; pointer-events:none; }
.vida-btn-inner { width:64px; height:64px; border-radius:50%; background:rgba(240,236,230,.1); border:1px solid rgba(240,236,230,.35); display:flex; align-items:center; justify-content:center; backdrop-filter:blur(8px); transition:background .3s, transform .3s; }
.vida-cell:hover .vida-btn-inner { background:rgba(184,150,106,.25); border-color:var(--g); transform:scale(1.08); }
.vida-btn-tri { width:0; height:0; border-top:10px solid transparent; border-bottom:10px solid transparent; border-left:18px solid var(--w); margin-left:4px; }

/* label */
.vida-label { position:absolute; bottom:0; left:0; right:0; padding:24px 22px; z-index:5; pointer-events:none; transition:opacity .4s; }
.vida-cell.playing .vida-label { opacity:0; }
.vida-lname { font-family:'Cormorant',serif; font-style:italic; font-size:15px; color:var(--w2); display:block; line-height:1.3; }
.vida-lloc { font-size:8px; letter-spacing:.26em; text-transform:uppercase; color:var(--g); margin-top:4px; display:block; }

/* bottom cta strip */
.vida-strip { padding:32px 64px 48px; display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; background:var(--k2); border-top:1px solid var(--b); }
@media(max-width:640px){ .vida-strip { padding:24px 24px 40px; } }
.vida-strip-q { font-family:'Cormorant',serif; font-style:italic; font-size:16px; color:var(--w3); }

/* --- style block #4 --- */
.vidb { background:var(--k2); padding:104px 0; }
.vidb-head { padding:0 64px 64px; display:flex; justify-content:space-between; align-items:flex-end; flex-wrap:wrap; gap:24px; }
@media(max-width:640px){ .vidb-head { padding:0 24px 48px; flex-direction:column; align-items:flex-start; } }
.vidb-score { text-align:right; }
.vidb-score-n { font-family:'Cormorant',serif; font-size:56px; font-weight:300; color:var(--g); line-height:1; display:block; }
.vidb-score-l { font-size:8.5px; letter-spacing:.24em; text-transform:uppercase; color:var(--w3); display:block; margin-top:4px; }

.vidb-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:0; border:1px solid var(--b2); margin:0 64px; }
@media(max-width:900px){ .vidb-grid { margin:0 24px; grid-template-columns:1fr; } }

.vidb-col { border-right:1px solid var(--b2); overflow:hidden; }
.vidb-col:last-child { border-right:none; }
@media(max-width:900px){ .vidb-col { border-right:none; border-bottom:1px solid var(--b2); } }

/* number header */
.vidb-num-row { padding:16px 22px; border-bottom:1px solid var(--b2); display:flex; align-items:center; gap:12px; }
.vidb-num { font-family:'Cormorant',serif; font-size:32px; font-weight:300; color:var(--b); line-height:1; }
.vidb-stars { color:var(--g); font-size:11px; letter-spacing:2px; }

/* video */
.vidb-vid { position:relative; aspect-ratio:9/16; background:var(--k3); overflow:hidden; }
@media(max-width:900px){ .vidb-vid { aspect-ratio:16/9; max-height:320px; } }
.vidb-vid video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.vidb-vid-poster { position:absolute; inset:0; background-size:cover; background-position:center; z-index:2; transition:opacity .4s; }
.vidb-vid.playing .vidb-vid-poster { opacity:0; pointer-events:none; }
.vidb-play { position:absolute; inset:0; z-index:3; display:flex; align-items:center; justify-content:center; transition:opacity .3s; }
.vidb-vid.playing .vidb-play { opacity:0; pointer-events:none; }
.vidb-play-ring { width:56px; height:56px; border:1px solid var(--g); display:flex; align-items:center; justify-content:center; transition:all .3s; }
.vidb-col:hover .vidb-play-ring { background:var(--g2); transform:scale(1.1); }
.vidb-play-tri { width:0; height:0; border-top:9px solid transparent; border-bottom:9px solid transparent; border-left:16px solid var(--g); margin-left:3px; }

/* quote footer */
.vidb-quote { padding:22px 22px 26px; }
.vidb-q-text { font-family:'Cormorant',serif; font-style:italic; font-size:14px; color:var(--w2); line-height:1.7; display:block; margin-bottom:10px; }
.vidb-q-from { font-size:9px; letter-spacing:.2em; text-transform:uppercase; color:var(--w3); }
.vidb-q-from span { color:var(--g); }

/* gold rule */
.vidb-rule { height:1px; background:linear-gradient(to right, transparent, var(--g), transparent); margin:0 64px 48px; }
@media(max-width:640px){ .vidb-rule { margin:0 24px 40px; } }

/* --- style block #5 --- */
.vidc { background:var(--k); padding:104px 0 0; }
.vidc-head { padding:0 64px 64px; }
@media(max-width:640px){ .vidc-head { padding:0 24px 48px; } }

.vidc-row { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; }
@media(max-width:640px){ .vidc-row { grid-template-columns:1fr; } }

.vidc-item { position:relative; aspect-ratio:9/16; overflow:hidden; background:var(--k2); }
@media(max-width:640px){ .vidc-item { max-height:460px; } }
.vidc-item video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }

/* layered poster */
.vidc-poster { position:absolute; inset:0; background-size:cover; background-position:center top; z-index:2; transition:opacity .5s; }
.vidc-item.playing .vidc-poster { opacity:0; pointer-events:none; }

/* permanent dark vignette */
.vidc-vig { position:absolute; inset:0; background:radial-gradient(ellipse at center, transparent 35%, rgba(8,8,8,.55) 100%); z-index:3; pointer-events:none; transition:opacity .4s; }
.vidc-item.playing .vidc-vig { opacity:0; }

/* big play icon */
.vidc-play { position:absolute; inset:0; z-index:4; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; cursor:pointer; transition:opacity .35s; }
.vidc-item.playing .vidc-play { opacity:0; pointer-events:none; }
.vidc-play-circle { width:72px; height:72px; border-radius:50%; border:1.5px solid rgba(240,236,230,.5); background:rgba(8,8,8,.4); display:flex; align-items:center; justify-content:center; backdrop-filter:blur(12px); transition:all .3s; }
.vidc-item:hover .vidc-play-circle { border-color:var(--g); background:rgba(184,150,106,.15); transform:scale(1.12); }
.vidc-play-tri { width:0; height:0; border-top:11px solid transparent; border-bottom:11px solid transparent; border-left:20px solid var(--w); margin-left:5px; }
.vidc-play-label { font-size:8px; letter-spacing:.38em; text-transform:uppercase; color:var(--w3); }

/* quote slides up on hover */
.vidc-quote-wrap { position:absolute; bottom:0; left:0; right:0; z-index:5; padding:32px 24px 28px; background:linear-gradient(to top, rgba(8,8,8,.92) 0%, rgba(8,8,8,.6) 60%, transparent 100%); transform:translateY(24px); opacity:0; transition:transform .45s cubic-bezier(.4,0,.2,1), opacity .45s; pointer-events:none; }
.vidc-item:hover .vidc-quote-wrap { transform:none; opacity:1; }
.vidc-item.playing .vidc-quote-wrap { opacity:0; pointer-events:none; }
.vidc-q { font-family:'Cormorant',serif; font-style:italic; font-size:15px; color:var(--w); line-height:1.6; display:block; margin-bottom:8px; }
.vidc-qfrom { font-size:8.5px; letter-spacing:.22em; text-transform:uppercase; color:var(--g); }

/* bottom */
.vidc-bot { padding:40px 64px 56px; display:flex; gap:32px; align-items:center; justify-content:center; flex-wrap:wrap; border-top:1px solid var(--b2); margin-top:2px; }
@media(max-width:640px){ .vidc-bot { padding:28px 24px 44px; } }
.vidc-plat { text-align:center; }
.vidc-plat-n { font-family:'Cormorant',serif; font-size:36px; font-weight:300; color:var(--g); display:block; line-height:1; }
.vidc-plat-l { font-size:8px; letter-spacing:.18em; text-transform:uppercase; color:var(--w3); display:block; margin-top:4px; }
.vidc-sep { width:1px; height:40px; background:var(--b); }

/* --- style block #6 --- */
.vidd { background:var(--k3); padding:104px 0; }
.vidd-head { padding:0 64px 64px; display:flex; justify-content:space-between; align-items:flex-end; gap:24px; flex-wrap:wrap; }
@media(max-width:640px){ .vidd-head { padding:0 24px 48px; flex-direction:column; align-items:flex-start; } }

.vidd-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; padding:0 64px; }
@media(max-width:900px){ .vidd-grid { padding:0 24px; gap:16px; grid-template-columns:1fr; } }
@media(max-width:640px){ .vidd-grid { grid-template-columns:1fr; } }

.vidd-card { background:var(--k2); border:1px solid var(--b2); overflow:hidden; transition:border-color .3s, transform .35s; }
.vidd-card:hover { border-color:var(--b); transform:translateY(-3px); }

/* video container */
.vidd-vid { position:relative; aspect-ratio:9/16; overflow:hidden; background:var(--k); }
@media(max-width:900px){ .vidd-vid { aspect-ratio:16/9; max-height:280px; } }
.vidd-vid video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.vidd-poster { position:absolute; inset:0; background-size:cover; background-position:center; z-index:2; transition:opacity .4s; }
.vidd-vid.playing .vidd-poster { opacity:0; pointer-events:none; }
.vidd-vplay { position:absolute; inset:0; z-index:3; display:flex; align-items:center; justify-content:center; cursor:pointer; transition:opacity .3s; }
.vidd-vid.playing .vidd-vplay { opacity:0; pointer-events:none; }
/* gold diamond play */
.vidd-diamond { width:54px; height:54px; background:var(--k); border:1px solid var(--g); transform:rotate(45deg); display:flex; align-items:center; justify-content:center; transition:all .3s; }
.vidd-card:hover .vidd-diamond { background:var(--g2); transform:rotate(45deg) scale(1.12); }
.vidd-play-tri { width:0; height:0; border-top:8px solid transparent; border-bottom:8px solid transparent; border-left:14px solid var(--g); transform:rotate(-45deg); margin-left:3px; }

/* card body */
.vidd-body { padding:22px 22px 26px; border-top:1px solid var(--b2); }
.vidd-reviewer { display:flex; align-items:center; gap:12px; margin-bottom:14px; }
.vidd-avatar { width:36px; height:36px; border-radius:50%; background:var(--k3); border:1px solid var(--b); flex-shrink:0; overflow:hidden; display:flex; align-items:center; justify-content:center; }
.vidd-avatar-initial { font-family:'Cormorant',serif; font-size:18px; color:var(--g); line-height:1; }
.vidd-rname { font-size:12.5px; font-weight:400; color:var(--w); display:block; }
.vidd-rloc { font-size:9px; color:var(--w3); letter-spacing:.08em; }
.vidd-rstars { color:var(--g); font-size:10px; letter-spacing:2px; margin-left:auto; flex-shrink:0; }
.vidd-quote { font-family:'Cormorant',serif; font-style:italic; font-size:14px; color:var(--w2); line-height:1.7; display:block; margin-bottom:12px; }
.vidd-platform { font-size:8px; letter-spacing:.2em; text-transform:uppercase; color:var(--w3); border-top:1px solid var(--b2); padding-top:10px; display:block; }
.vidd-platform span { color:var(--g); }

/* --- style block #7 --- */
.vide { background:var(--k2); padding:104px 0 0; }
.vide-head { padding:0 64px 64px; }
@media(max-width:640px){ .vide-head { padding:0 24px 48px; } }
.vide-head-inner { display:flex; justify-content:space-between; align-items:flex-end; gap:24px; flex-wrap:wrap; }
.vide-manifesto { font-family:'Cormorant',serif; font-style:italic; font-size:clamp(15px,2.2vw,24px); color:var(--w3); border-left:2px solid var(--g); padding-left:24px; line-height:1.55; max-width:480px; }

/* layout */
.vide-layout { display:grid; grid-template-columns:1fr 1fr; gap:2px; }
@media(max-width:900px){ .vide-layout { grid-template-columns:1fr; } }

/* left panel — big decorative */
.vide-left { background:var(--k); position:relative; display:flex; flex-direction:column; justify-content:flex-end; padding:56px 48px; min-height:600px; overflow:hidden; }
@media(max-width:640px){ .vide-left { padding:32px 24px; min-height:360px; } }
.vide-left-bg { position:absolute; inset:0; background:
  radial-gradient(ellipse at 30% 60%, rgba(184,150,106,.06) 0%, transparent 60%),
  linear-gradient(135deg, var(--k) 0%, var(--k3) 100%); }
.vide-big-num { position:absolute; top:-20px; left:-10px; font-family:'Cormorant',serif; font-size:320px; font-weight:300; color:rgba(240,236,230,.025); line-height:1; pointer-events:none; user-select:none; }
.vide-left-content { position:relative; z-index:2; }
.vide-left-star { color:var(--g); font-size:20px; letter-spacing:4px; display:block; margin-bottom:24px; }
.vide-left-q { font-family:'Cormorant',serif; font-size:clamp(22px,3.5vw,40px); font-weight:300; line-height:1.25; color:var(--w); margin-bottom:20px; }
.vide-left-q em { font-style:italic; color:var(--g); }
.vide-left-attr { font-size:10px; letter-spacing:.24em; text-transform:uppercase; color:var(--w3); }
.vide-left-attr span { color:var(--g); }

/* right panel — stacked 3 vids */
.vide-right { display:grid; grid-template-rows:repeat(3,1fr); gap:2px; }
.vide-vrow { position:relative; overflow:hidden; background:var(--k3); }

/* each vid in stack is landscape crop */
.vide-vrow video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center top; }
.vide-vposter { position:absolute; inset:0; background-size:cover; background-position:center top; z-index:2; transition:opacity .4s; }
.vide-vrow.playing .vide-vposter { opacity:0; pointer-events:none; }

.vide-vgrad { position:absolute; inset:0; background:linear-gradient(to right, rgba(8,8,8,.7) 0%, transparent 60%); z-index:3; pointer-events:none; transition:opacity .4s; }
.vide-vrow.playing .vide-vgrad { opacity:0; }

/* row info — left side always visible */
.vide-vinfo { position:absolute; left:0; top:0; bottom:0; width:45%; padding:16px 20px; z-index:4; display:flex; flex-direction:column; justify-content:center; transition:opacity .4s; }
.vide-vrow.playing .vide-vinfo { opacity:0; pointer-events:none; }
.vide-vn { font-family:'Cormorant',serif; font-size:38px; font-weight:300; color:var(--b); line-height:1; margin-bottom:6px; }
.vide-vq { font-family:'Cormorant',serif; font-style:italic; font-size:12px; color:var(--w2); line-height:1.5; margin-bottom:8px; }
.vide-vfrom { font-size:8px; letter-spacing:.2em; text-transform:uppercase; color:var(--g); }

/* play btn — right side */
.vide-vbtn { position:absolute; right:0; top:0; bottom:0; width:55%; z-index:4; display:flex; align-items:center; justify-content:center; cursor:pointer; transition:opacity .3s; }
.vide-vrow.playing .vide-vbtn { opacity:0; pointer-events:none; }
.vide-vbtn-ring { width:48px; height:48px; border-radius:50%; border:1px solid rgba(240,236,230,.3); background:rgba(8,8,8,.4); display:flex; align-items:center; justify-content:center; backdrop-filter:blur(8px); transition:all .3s; }
.vide-vrow:hover .vide-vbtn-ring { border-color:var(--g); background:var(--g2); transform:scale(1.1); }
.vide-vbtn-tri { width:0; height:0; border-top:8px solid transparent; border-bottom:8px solid transparent; border-left:14px solid var(--w); margin-left:3px; }

/* bottom cta */
.vide-bot { padding:36px 64px 52px; border-top:1px solid var(--b); display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:20px; }
@media(max-width:640px){ .vide-bot { padding:28px 24px 44px; } }
.vide-bot-txt { font-size:11px; color:var(--w3); letter-spacing:.12em; text-transform:uppercase; }

/* --- style block #8 --- */
/* Signature Experiences Section */
.sigexp-sec {
  background: var(--k);
  padding: 120px 0 0;
  overflow: hidden;
}
.sigexp-header {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 56px 72px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: 32px;
}
@media(max-width:640px){ .sigexp-header { padding: 0 24px 48px; } }
.sigexp-header-left { max-width: 600px; }
.sigexp-header-right {
  font-size: 12px;
  font-weight: 300;
  color: var(--w3);
  line-height: 1.9;
  max-width: 340px;
  text-align: right;
}
@media(max-width:768px){ .sigexp-header-right { text-align: left; max-width: 100%; } }

/* Category tabs */
.sigexp-tabs {
  display: flex;
  gap: 0;
  overflow-x: auto;
  scrollbar-width: none;
  border-bottom: 1px solid var(--b);
  padding: 0 56px;
  max-width: 1280px;
  margin: 0 auto;
}
.sigexp-tabs::-webkit-scrollbar { display: none; }
@media(max-width:640px){ .sigexp-tabs { padding: 0 24px; } }
.sigexp-tab {
  font-size: 9px;
  letter-spacing: .3em;
  text-transform: uppercase;
  color: var(--w3);
  padding: 16px 28px;
  cursor: pointer;
  border: none;
  background: transparent;
  font-family: 'Inter', sans-serif;
  white-space: nowrap;
  border-bottom: 1px solid transparent;
  margin-bottom: -1px;
  transition: color .25s, border-color .25s;
}
.sigexp-tab:hover { color: var(--w); }
.sigexp-tab.active { color: var(--g); border-bottom-color: var(--g); }
@media(max-width:640px){ .sigexp-tab { padding: 14px 18px; font-size: 8px; } }

/* Category panels */
.sigexp-category { display: none; }
.sigexp-category.active { display: block; }

/* Category intro bar */
.sigexp-cat-bar {
  max-width: 1280px;
  margin: 0 auto;
  padding: 52px 56px 48px;
  display: flex;
  align-items: flex-end;
  gap: 48px;
  border-bottom: 1px solid var(--b2);
}
@media(max-width:640px){ .sigexp-cat-bar { padding: 40px 24px 36px; flex-direction: column; gap: 16px; } }
.sigexp-cat-icon {
  font-family: 'Cormorant', serif;
  font-size: 80px;
  font-weight: 300;
  color: var(--b);
  line-height: 1;
  flex-shrink: 0;
  user-select: none;
}
.sigexp-cat-title {
  font-family: 'Cormorant', serif;
  font-size: clamp(28px, 4vw, 52px);
  font-weight: 300;
  line-height: 1.0;
  flex: 1;
}
.sigexp-cat-title em { font-style: italic; color: var(--g); }
.sigexp-cat-desc {
  font-size: 12px;
  font-weight: 300;
  color: var(--w3);
  line-height: 1.9;
  max-width: 320px;
}

/* Experience cards grid */
.sigexp-grid {
  max-width: 1280px;
  margin: 0 auto;
  padding: 2px 56px 80px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2px;
}
@media(max-width:900px){ .sigexp-grid { grid-template-columns: 1fr; } }
@media(max-width:640px){ .sigexp-grid { padding: 2px 24px 64px; } }

/* Single experience card */
.sigexp-card {
  background: var(--k2);
  border: 1px solid var(--b2);
  overflow: hidden;
  position: relative;
  transition: border-color .3s;
  display: flex;
  flex-direction: column;
}
.sigexp-card:hover { border-color: var(--b); }

/* Image strip */
.sigexp-imgs {
  display: grid;
  grid-template-columns: 1.6fr 1fr;
  height: 220px;
  gap: 2px;
  position: relative;
  overflow: hidden;
}
.sigexp-img {
  background-size: cover;
  background-position: center;
  filter: grayscale(40%) brightness(.8);
  transition: filter .6s, transform .6s;
}
.sigexp-card:hover .sigexp-img { filter: grayscale(10%) brightness(.9); transform: scale(1.03); }
.sigexp-img-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(8,8,8,.7) 0%, transparent 50%);
  pointer-events: none;
  z-index: 1;
}

/* Card body */
.sigexp-body {
  padding: 32px 36px 36px;
  flex: 1;
  display: flex;
  flex-direction: column;
}
@media(max-width:640px){ .sigexp-body { padding: 24px 24px 28px; } }
.sigexp-num {
  font-family: 'Cormorant', serif;
  font-size: 11px;
  font-weight: 300;
  color: var(--g);
  letter-spacing: .3em;
  text-transform: uppercase;
  margin-bottom: 10px;
  display: block;
}
.sigexp-title {
  font-family: 'Cormorant', serif;
  font-size: clamp(20px, 2.2vw, 28px);
  font-weight: 300;
  line-height: 1.1;
  margin-bottom: 20px;
}
.sigexp-list {
  list-style: none;
  flex: 1;
}
.sigexp-list li {
  font-size: 11.5px;
  font-weight: 300;
  color: var(--w2);
  padding: 8px 0;
  border-bottom: 1px solid var(--b2);
  display: flex;
  align-items: flex-start;
  gap: 12px;
  line-height: 1.45;
}
.sigexp-list li::before { content: '—'; color: var(--g); flex-shrink: 0; margin-top: 1px; }
.sigexp-cta {
  margin-top: 28px;
  padding-top: 20px;
  border-top: 1px solid var(--b2);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.sigexp-badge {
  font-size: 8.5px;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--w3);
}
.sigexp-arrow {
  font-size: 9px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--g);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  padding-bottom: 2px;
  transition: border-color .25s;
  cursor: pointer;
}
.sigexp-arrow:hover { border-bottom-color: var(--g); }

/* Bottom CTA strip */
.sigexp-bottom {
  background: var(--k3);
  border-top: 1px solid var(--b);
  padding: 64px 56px;
  text-align: center;
}
@media(max-width:640px){ .sigexp-bottom { padding: 48px 24px; } }
.sigexp-bottom-q {
  font-family: 'Cormorant', serif;
  font-style: italic;
  font-size: clamp(18px, 2.5vw, 28px);
  font-weight: 300;
  color: var(--w3);
  margin-bottom: 32px;
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.5;
}
.sigexp-bottom-q em { color: var(--w); font-style: inherit; }

/* ── EXP-A SCROLL SECTION ── */
.ea-scroll{height:700vh;position:relative}
.ea-sticky{position:sticky;top:0;height:100vh;overflow:hidden}
.ea-bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:grayscale(70%) contrast(1.1) brightness(.65);opacity:0;transition:opacity .6s ease}
.ea-bg.ea-on{opacity:1}
.ea-grad{position:absolute;inset:0;pointer-events:none;background:linear-gradient(to right,rgba(8,8,8,.92) 0%,rgba(8,8,8,.55) 45%,rgba(8,8,8,.1) 100%),linear-gradient(to top,rgba(8,8,8,.7) 0%,transparent 50%)}
.ea-panel{position:absolute;bottom:0;left:0;padding:0 64px 80px;max-width:680px;z-index:3;opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease;pointer-events:none}
.ea-panel.ea-on{opacity:1;transform:translateY(0);pointer-events:auto}
@media(max-width:640px){.ea-panel{padding:0 24px 100px}}
.ea-num{font-size:9px;letter-spacing:.5em;text-transform:uppercase;color:var(--g);display:block;margin-bottom:16px}
.ea-title{font-family:'Cormorant',serif;font-size:clamp(36px,6vw,72px);font-weight:300;line-height:.95;letter-spacing:-.02em;margin-bottom:12px}
.ea-tagline{font-family:'Cormorant',serif;font-style:italic;font-size:clamp(15px,2vw,20px);color:var(--w3);margin-bottom:18px;line-height:1.5}
.ea-desc{font-size:12.5px;font-weight:300;color:var(--w2);line-height:1.95;max-width:480px}
.ea-cta{margin-top:32px}
.ea-pips{position:absolute;right:56px;top:50%;transform:translateY(-50%);z-index:4;display:flex;flex-direction:column;gap:10px;align-items:flex-end}
@media(max-width:900px){.ea-pips{display:none}}
.ea-pip{display:flex;align-items:center;gap:10px;cursor:pointer;background:none;border:none;padding:4px 0}
.ea-pip-line{width:28px;height:1px;background:var(--w3);transition:width .3s,background .3s}
.ea-pip.ea-pip-on .ea-pip-line{width:48px;background:var(--g)}
.ea-pip-label{font-size:8px;letter-spacing:.28em;text-transform:uppercase;color:var(--w3);transition:color .3s;white-space:nowrap}
.ea-pip.ea-pip-on .ea-pip-label{color:var(--w)}
.ea-hint{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;opacity:1;transition:opacity .4s;z-index:4}
.ea-hint span{font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:var(--w3)}
.ea-hint-line{width:1px;height:40px;background:var(--g);animation:scrollPulse 1.6s ease-in-out infinite}
.ea-prog{position:absolute;bottom:0;left:0;height:2px;background:var(--g);transition:width .1s linear;z-index:4;width:0}

/* --- style block #9 --- */
/* ── VAR B: Horizontal Scroll Strip ── */
.vb{background:var(--k2);padding:96px 0}
.vb-header{padding:0 64px 52px;display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:24px}
@media(max-width:640px){.vb-header{padding:0 24px 40px}}
.vb-hint{font-size:9px;letter-spacing:.32em;text-transform:uppercase;color:var(--w3);display:flex;align-items:center;gap:10px}
.vb-hint::before{content:'';width:32px;height:1px;background:var(--w3)}
.vb-rail{display:flex;gap:2px;padding:0 64px;overflow-x:auto;scrollbar-width:none;cursor:grab;user-select:none;-webkit-overflow-scrolling:touch}
.vb-rail::-webkit-scrollbar{display:none}
.vb-rail.dragging{cursor:grabbing}
@media(max-width:640px){.vb-rail{padding:0 24px;gap:3px}}
.vb-card{flex:0 0 340px;background:var(--k3);border:1px solid var(--b2);position:relative;overflow:hidden;transition:border-color .3s}
.vb-card:hover{border-color:var(--b)}
@media(max-width:640px){.vb-card{flex:0 0 80vw}}
.vb-img{height:240px;background-size:cover;background-position:center;filter:grayscale(30%) brightness(.7);transition:filter .6s,transform .6s}
.vb-card:hover .vb-img{filter:grayscale(0%) brightness(.8);transform:scale(1.03)}
.vb-body{padding:28px 28px 32px}
.vb-n{font-family:'Cormorant',serif;font-size:64px;font-weight:300;color:var(--b);line-height:1;display:block;margin-bottom:-8px}
.vb-title{font-family:'Cormorant',serif;font-size:22px;font-weight:300;line-height:1.1;margin-bottom:8px}
.vb-tag{font-family:'Cormorant',serif;font-style:italic;font-size:13px;color:var(--g);line-height:1.5;display:block;margin-bottom:12px}
.vb-desc{font-size:11px;font-weight:300;color:var(--w2);line-height:1.85}
.vb-foot{padding:0 28px 24px;border-top:1px solid var(--b2);padding-top:18px;display:flex;justify-content:space-between;align-items:center}
.vb-label{font-size:8px;letter-spacing:.2em;text-transform:uppercase;color:var(--w3)}
.vb-arrow{font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--g);cursor:pointer;text-decoration:none}
/* scrollbar track visual */
.vb-track{height:1px;background:var(--b);margin:36px 64px 0;position:relative;overflow:hidden}
@media(max-width:640px){.vb-track{margin:28px 24px 0}}
.vb-thumb{height:1px;background:var(--g);position:absolute;top:0;left:0;transition:width .15s,transform .15s}

/* --- style block #10 --- */
/* ── VAR C: Accordion ── */
.vc{background:var(--k);padding:96px 0}
.vc-header{padding:0 64px 64px}
@media(max-width:640px){.vc-header{padding:0 24px 48px}}
.vc-list{border-top:1px solid var(--b)}
.vc-item{border-bottom:1px solid var(--b);overflow:hidden}
.vc-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:0 64px;height:72px;background:none;border:none;color:var(--w);cursor:pointer;text-align:left;transition:background .2s;gap:20px}
@media(max-width:640px){.vc-trigger{padding:0 24px;height:64px}}
.vc-trigger:hover{background:var(--w5)}
.vc-trigger-on{background:var(--k2)}
.vc-t-left{display:flex;align-items:center;gap:28px;flex:1;min-width:0}
.vc-t-num{font-family:'Cormorant',serif;font-size:14px;font-weight:300;color:var(--g);flex-shrink:0;letter-spacing:.1em}
.vc-t-name{font-family:'Cormorant',serif;font-size:clamp(16px,2.2vw,24px);font-weight:300;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vc-t-right{display:flex;align-items:center;gap:20px;flex-shrink:0}
.vc-t-tag{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--w3)}
@media(max-width:768px){.vc-t-tag{display:none}}
.vc-t-icon{width:28px;height:28px;border:1px solid var(--b);display:flex;align-items:center;justify-content:center;color:var(--g);font-size:14px;transition:transform .3s,background .2s;flex-shrink:0}
.vc-trigger-on .vc-t-icon{transform:rotate(45deg);background:var(--g2)}
.vc-panel{height:0;overflow:hidden;transition:height .5s cubic-bezier(.4,0,.2,1)}
.vc-inner{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--k2)}
@media(max-width:768px){.vc-inner{grid-template-columns:1fr}}
.vc-panel-img{height:320px;background-size:cover;background-position:center;filter:grayscale(20%) brightness(.75)}
@media(max-width:768px){.vc-panel-img{height:220px}}
.vc-panel-body{padding:40px 48px;display:flex;flex-direction:column;justify-content:center}
@media(max-width:640px){.vc-panel-body{padding:28px 24px}}
.vc-panel-tagline{font-family:'Cormorant',serif;font-style:italic;font-size:clamp(14px,1.8vw,19px);color:var(--g);margin-bottom:16px;line-height:1.4}
.vc-panel-desc{font-size:12px;font-weight:300;color:var(--w2);line-height:2;margin-bottom:28px}
.vc-panel-cta{display:inline-flex;align-items:center;gap:10px;font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:var(--g);text-decoration:none;border-bottom:1px solid var(--g2);padding-bottom:6px;align-self:flex-start;transition:border-color .2s}
.vc-panel-cta:hover{border-color:var(--g)}

/* --- style block #11 --- */
/* ── VAR D: Split-screen Hover Grid ── */
.vd{background:var(--k3);padding:96px 0 0}
.vd-header{padding:0 64px 56px}
@media(max-width:640px){.vd-header{padding:0 24px 40px}}
.vd-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
@media(max-width:900px){.vd-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.vd-grid{grid-template-columns:1fr}}
.vd-cell{position:relative;overflow:hidden;height:380px;cursor:pointer}
.vd-cell.vd-tall{height:500px}
@media(max-width:900px){.vd-cell,.vd-cell.vd-tall{height:300px}}
.vd-img{position:absolute;inset:0;background-size:cover;background-position:center;filter:grayscale(50%) brightness(.6);transition:filter .7s,transform .7s}
.vd-cell:hover .vd-img{filter:grayscale(0%) brightness(.5);transform:scale(1.07)}
/* number stamp always visible */
.vd-stamp{position:absolute;top:20px;left:20px;font-family:'Cormorant',serif;font-size:52px;font-weight:300;color:rgba(240,236,230,.12);line-height:1;z-index:2;pointer-events:none;transition:opacity .3s}
.vd-cell:hover .vd-stamp{opacity:0}
/* overlay on hover */
.vd-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(8,8,8,.95) 0%,rgba(8,8,8,.7) 50%,rgba(8,8,8,.1) 100%);opacity:0;transition:opacity .4s;z-index:3}
.vd-cell:hover .vd-overlay{opacity:1}
.vd-info{position:absolute;bottom:0;left:0;right:0;padding:28px 28px;z-index:4;transform:translateY(12px);opacity:0;transition:opacity .4s,transform .4s}
.vd-cell:hover .vd-info{opacity:1;transform:none}
.vd-cat{font-size:8px;letter-spacing:.38em;text-transform:uppercase;color:var(--g);display:block;margin-bottom:8px}
.vd-name{font-family:'Cormorant',serif;font-size:clamp(18px,2.2vw,24px);font-weight:300;line-height:1.1;margin-bottom:8px}
.vd-quote{font-family:'Cormorant',serif;font-style:italic;font-size:13px;color:var(--w3);line-height:1.4;display:block;margin-bottom:14px}
.vd-link{font-size:8.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--g);text-decoration:none;border-bottom:1px solid var(--g2);padding-bottom:3px}
/* permanent title (not hovered) */
.vd-base{position:absolute;bottom:20px;left:24px;z-index:2;pointer-events:none}
.vd-base-n{font-family:'Cormorant',serif;font-size:15px;font-weight:300;color:var(--w2)}
.vd-cell:hover .vd-base{opacity:0;transition:opacity .2s}

/* --- style block #12 --- */
/* ── VAR E: Tabbed Navigator ── */
.ve{background:var(--k2);padding:96px 0 0;overflow:hidden}
.ve-header{padding:0 64px 56px}
@media(max-width:640px){.ve-header{padding:0 24px 40px}}
.ve-layout{display:grid;grid-template-columns:260px 1fr;min-height:600px}
@media(max-width:900px){.ve-layout{grid-template-columns:1fr}}
/* LEFT: tab column */
.ve-tabs{border-right:1px solid var(--b);display:flex;flex-direction:column}
@media(max-width:900px){.ve-tabs{flex-direction:row;overflow-x:auto;border-right:none;border-bottom:1px solid var(--b);scrollbar-width:none}}
@media(max-width:900px){.ve-tabs::-webkit-scrollbar{display:none}}
.ve-tab{padding:22px 32px;font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:var(--w3);cursor:pointer;border:none;background:none;text-align:left;font-family:'Inter',sans-serif;border-left:2px solid transparent;transition:all .2s;white-space:nowrap;display:flex;align-items:center;gap:12px}
@media(max-width:900px){.ve-tab{border-left:none;border-bottom:2px solid transparent;padding:14px 20px}}
.ve-tab:hover{color:var(--w);background:var(--w5)}
.ve-tab.ve-tab-on{color:var(--g);border-left-color:var(--g);background:var(--k3)}
@media(max-width:900px){.ve-tab.ve-tab-on{border-left-color:transparent;border-bottom-color:var(--g);background:none}}
.ve-tab-dot{width:5px;height:5px;border-radius:50%;background:var(--g);opacity:0;flex-shrink:0;transition:opacity .2s}
.ve-tab-on .ve-tab-dot{opacity:1}
/* RIGHT: content pane */
.ve-pane{display:none;grid-template-columns:1fr 1fr;gap:0}
.ve-pane.ve-pane-on{display:grid}
@media(max-width:640px){.ve-pane.ve-pane-on{grid-template-columns:1fr}}
.ve-hero{position:relative;overflow:hidden;min-height:400px}
@media(max-width:640px){.ve-hero{min-height:250px}}
.ve-hero-img{position:absolute;inset:0;background-size:cover;background-position:center;filter:grayscale(20%) brightness(.7);transition:filter .6s}
.ve-hero-grad{position:absolute;inset:0;background:linear-gradient(to top,rgba(8,8,8,.8) 0%,transparent 55%)}
.ve-hero-label{position:absolute;bottom:28px;left:32px;z-index:2}
.ve-hero-tagline{font-family:'Cormorant',serif;font-style:italic;font-size:clamp(14px,1.8vw,18px);color:var(--w2);line-height:1.4;max-width:300px;display:block}
/* items list */
.ve-items{padding:0;overflow-y:auto;max-height:600px;scrollbar-width:thin;scrollbar-color:var(--g) var(--k)}
.ve-exp{padding:20px 32px;border-bottom:1px solid var(--b2);display:flex;align-items:flex-start;gap:16px;cursor:pointer;transition:background .2s;text-decoration:none;color:inherit}
.ve-exp:hover{background:var(--w5)}
.ve-exp-num{font-family:'Cormorant',serif;font-size:22px;font-weight:300;color:var(--g);flex-shrink:0;line-height:1;min-width:28px}
.ve-exp-body{flex:1}
.ve-exp-name{font-family:'Cormorant',serif;font-size:17px;font-weight:300;line-height:1.15;margin-bottom:4px}
.ve-exp-desc{font-size:10.5px;font-weight:300;color:var(--w3);line-height:1.7}
.ve-exp-tag{font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:var(--g);margin-top:6px;display:block}
/* bottom cta */
.ve-bottom{padding:32px 64px 48px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;border-top:1px solid var(--b2)}
@media(max-width:640px){.ve-bottom{padding:24px 24px 40px}}
.ve-count{font-family:'Cormorant',serif;font-style:italic;font-size:16px;color:var(--w3)}

/* --- style block #13 --- */
/* ── ITINERARY SECTION ── */
.itinerary-sec {
  background: var(--k);
  padding: 120px 56px 140px;
  position: relative;
  overflow: hidden;
}
.itin-bg-label {
  position: absolute;
  top: 50%;
  right: -60px;
  transform: translateY(-50%) rotate(90deg);
  font-family: 'Cormorant', serif;
  font-size: clamp(80px, 14vw, 180px);
  font-weight: 300;
  letter-spacing: .18em;
  color: rgba(240,236,230,.025);
  pointer-events: none;
  user-select: none;
  white-space: nowrap;
}
.itin-header {
  max-width: 520px;
  margin-bottom: 80px;
}
.itin-header .sb { margin-top: 12px; }

/* ── LAYOUT ── */
.itin-layout {
  display: grid;
  grid-template-columns: 360px 1fr;
  gap: 80px;
  max-width: 1200px;
  align-items: start;
}
@media(max-width:960px) {
  .itin-layout { grid-template-columns: 1fr; gap: 56px; }
  .itin-card-panel { position: static !important; }
}
@media(max-width:640px) {
  .itinerary-sec { padding: 80px 24px 100px; }
  .itin-bg-label { display: none; }
}

/* ── TIMELINE ── */
.itin-timeline {
  position: relative;
  padding-left: 40px;
}
.itin-line {
  position: absolute;
  left: 10px;
  top: 14px;
  bottom: 14px;
  width: 1px;
  background: linear-gradient(to bottom, transparent, var(--b) 8%, var(--b) 92%, transparent);
}
/* Animated fill line */
.itin-line::after {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 0%;
  background: linear-gradient(to bottom, var(--g), rgba(184,150,106,.3));
  transition: height .6s cubic-bezier(.4,0,.2,1);
}
.itin-timeline.filled-0 .itin-line::after  { height: 5%; }
.itin-timeline.filled-1 .itin-line::after  { height: 15%; }
.itin-timeline.filled-2 .itin-line::after  { height: 25%; }
.itin-timeline.filled-3 .itin-line::after  { height: 35%; }
.itin-timeline.filled-4 .itin-line::after  { height: 45%; }
.itin-timeline.filled-5 .itin-line::after  { height: 55%; }
.itin-timeline.filled-6 .itin-line::after  { height: 65%; }
.itin-timeline.filled-7 .itin-line::after  { height: 75%; }
.itin-timeline.filled-8 .itin-line::after  { height: 87%; }
.itin-timeline.filled-9 .itin-line::after  { height: 100%; }

/* ── STOP ── */
.itin-stop {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 18px 0;
  cursor: pointer;
  position: relative;
}
.itin-stop::after {
  content: '';
  position: absolute;
  left: -40px; right: -16px;
  top: 0; bottom: 0;
  background: transparent;
  transition: background .25s;
  border-radius: 2px;
  z-index: 0;
}
.itin-stop:hover::after,
.itin-stop.active::after {
  background: rgba(184,150,106,.05);
}
.itin-dot-wrap {
  position: absolute;
  left: -46px;
  top: 50%;
  transform: translateY(-50%);
  width: 22px;
  height: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
}
.itin-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--k3);
  border: 1px solid rgba(240,236,230,.2);
  transition: background .3s, border-color .3s, transform .3s;
}
.itin-pulse {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1px solid var(--g);
  opacity: 0;
  transform: scale(.4);
  transition: opacity .3s, transform .3s;
}
.itin-stop:hover .itin-dot,
.itin-stop.active .itin-dot {
  background: var(--g);
  border-color: var(--g);
  transform: scale(1.3);
}
.itin-stop:hover .itin-pulse,
.itin-stop.active .itin-pulse {
  opacity: .5;
  transform: scale(1.8);
}

.itin-stop-label {
  display: flex;
  align-items: baseline;
  gap: 12px;
  flex-wrap: wrap;
  position: relative;
  z-index: 1;
}
.itin-num {
  font-family: 'Cormorant', serif;
  font-size: 11px;
  color: var(--g);
  opacity: .6;
  letter-spacing: .2em;
  flex-shrink: 0;
  transition: opacity .25s;
}
.itin-stop:hover .itin-num,
.itin-stop.active .itin-num { opacity: 1; }

.itin-city {
  font-family: 'Cormorant', serif;
  font-size: clamp(18px, 2vw, 24px);
  font-weight: 300;
  color: var(--w3);
  letter-spacing: -.01em;
  transition: color .25s;
}
.itin-stop:hover .itin-city,
.itin-stop.active .itin-city { color: var(--w); }

.itin-region {
  font-size: 9px;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: rgba(240,236,230,.2);
  transition: color .25s;
}
.itin-stop:hover .itin-region,
.itin-stop.active .itin-region { color: var(--g); }

/* ── CARD PANEL ── */
.itin-card-panel {
  position: sticky;
  top: 100px;
}
.itin-card {
  background: var(--k2);
  border: 1px solid var(--b);
  overflow: hidden;
  position: relative;
  transition: border-color .4s;
}
.itin-card.has-content {
  border-color: rgba(184,150,106,.2);
}

/* Card image */
.itin-card-img-wrap {
  position: relative;
  height: 300px;
  overflow: hidden;
}
.itin-card-img {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  filter: grayscale(40%) brightness(.85) contrast(1.05);
  transform: scale(1.05);
  transition: background-image .05s, transform 1s cubic-bezier(.16,1,.3,1), filter .6s;
}
.itin-card.has-content .itin-card-img {
  transform: scale(1);
  filter: grayscale(20%) brightness(.9) contrast(1.05);
}
.itin-card-img-overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(to top, var(--k2) 0%, transparent 50%),
    radial-gradient(ellipse at 80% 20%, transparent 50%, rgba(8,8,8,.4) 100%);
}
.itin-card-badge {
  position: absolute;
  top: 20px;
  right: 20px;
  font-size: 8px;
  letter-spacing: .3em;
  text-transform: uppercase;
  color: var(--g);
  border: 1px solid rgba(184,150,106,.3);
  padding: 6px 12px;
  background: rgba(8,8,8,.6);
  backdrop-filter: blur(8px);
  opacity: 0;
  transform: translateY(-8px);
  transition: opacity .4s .1s, transform .4s .1s;
}
.itin-card.has-content .itin-card-badge {
  opacity: 1;
  transform: none;
}

/* Card body */
.itin-card-body {
  padding: 28px 32px 36px;
  opacity: 0;
  transform: translateY(12px);
  transition: opacity .5s .05s, transform .5s .05s;
}
.itin-card.has-content .itin-card-body {
  opacity: 1;
  transform: none;
}
.itin-card-eyebrow {
  font-size: 8.5px;
  letter-spacing: .3em;
  text-transform: uppercase;
  color: var(--g);
  margin-bottom: 10px;
}
.itin-card-title {
  font-family: 'Cormorant', serif;
  font-size: clamp(24px, 3vw, 36px);
  font-weight: 300;
  line-height: 1.05;
  margin-bottom: 14px;
  color: var(--w);
}
.itin-card-desc {
  font-size: 12.5px;
  font-weight: 300;
  color: var(--w2);
  line-height: 1.95;
  margin-bottom: 20px;
}
.itin-card-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 24px;
}
.itin-tag {
  font-size: 8px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--w3);
  border: 1px solid var(--b2);
  padding: 5px 10px;
}
.itin-card-meta {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  border-top: 1px solid var(--b2);
  padding-top: 20px;
}
.itin-meta-item {
  font-size: 10px;
  font-weight: 300;
  color: var(--w3);
  line-height: 1.7;
}
.itin-meta-item strong {
  display: block;
  font-size: 8px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--g);
  font-weight: 400;
  margin-bottom: 3px;
}

/* Prompt state */
.itin-card-prompt {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  opacity: 1;
  transition: opacity .3s;
  pointer-events: none;
  min-height: 340px;
}
.itin-card.has-content .itin-card-prompt {
  opacity: 0;
}
.itin-card-prompt span {
  font-family: 'Cormorant', serif;
  font-style: italic;
  font-size: 16px;
  color: var(--w3);
  letter-spacing: .04em;
}
.itin-prompt-dots {
  display: flex;
  gap: 8px;
}
.itin-prompt-dots span {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--g);
  opacity: .4;
  animation: promptPulse 1.6s ease-in-out infinite;
  font-size: 0;
}
.itin-prompt-dots span:nth-child(2) { animation-delay: .2s; }
.itin-prompt-dots span:nth-child(3) { animation-delay: .4s; }
@keyframes promptPulse {
  0%,100% { opacity: .2; transform: scale(.8); }
  50% { opacity: .8; transform: scale(1.2); }
}

/* --- style block #14 --- */
/* ── SHARED EVENT DATA ── */
:root {
  --ev-crimson: #8b1a1a;
  --ev-amber: #c4832a;
}

/* ══════════════════════════════════════
   EVT-A · COUNTDOWN GRID WITH LIVE TIMERS
   Full-bleed cards. Each has a live countdown.
   ══════════════════════════════════════ */
.eva { background: var(--k); padding: 120px 0 0; overflow: hidden; }
.eva-header { padding: 0 64px 72px; }
@media(max-width:640px){ .eva-header { padding: 0 24px 48px; } }
.eva-hype { font-family:'Cormorant',serif; font-style:italic; font-size:clamp(13px,1.6vw,17px); color:var(--w3); margin-top:10px; line-height:1.7; max-width:560px; }

.eva-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:2px; }
@media(max-width:1100px){ .eva-grid { grid-template-columns:repeat(2,1fr); } }
@media(max-width:560px){ .eva-grid { grid-template-columns:1fr; } }

.eva-card { position:relative; overflow:hidden; min-height:480px; cursor:pointer; }
.eva-card.eva-featured { min-height:560px; }
@media(max-width:560px){ .eva-card, .eva-card.eva-featured { min-height:320px; } }
.eva-img { position:absolute; inset:0; background-size:cover; background-position:center; filter:grayscale(40%) brightness(.55); transition:filter .7s, transform .8s; }
.eva-card:hover .eva-img { filter:grayscale(10%) brightness(.45); transform:scale(1.05); }
.eva-grad { position:absolute; inset:0; background:linear-gradient(to top, rgba(8,8,8,.97) 0%, rgba(8,8,8,.5) 55%, rgba(8,8,8,.1) 100%); }
.eva-body { position:absolute; bottom:0; left:0; right:0; padding:28px 28px 32px; z-index:3; }

.eva-category { font-size:8px; letter-spacing:.38em; text-transform:uppercase; color:var(--g); display:block; margin-bottom:10px; }
.eva-title { font-family:'Cormorant',serif; font-size:clamp(18px,2.2vw,26px); font-weight:300; line-height:1.1; margin-bottom:6px; }
.eva-location { font-size:10px; letter-spacing:.16em; text-transform:uppercase; color:var(--w3); display:block; margin-bottom:16px; }

/* countdown */
.eva-countdown { display:flex; gap:12px; margin-bottom:18px; }
.eva-unit { text-align:center; }
.eva-unit-n { font-family:'Cormorant',serif; font-size:28px; font-weight:300; color:var(--w); line-height:1; display:block; }
.eva-unit-l { font-size:7px; letter-spacing:.2em; text-transform:uppercase; color:var(--g); display:block; margin-top:2px; }
.eva-unit-sep { font-family:'Cormorant',serif; font-size:24px; color:var(--b); align-self:flex-start; padding-top:4px; }

.eva-date-badge { display:inline-block; font-size:9px; letter-spacing:.22em; text-transform:uppercase; color:var(--w3); border:1px solid var(--b2); padding:5px 12px; }
.eva-price { font-family:'Cormorant',serif; font-size:18px; color:var(--g); margin-top:14px; display:block; }

/* top badge */
.eva-badge { position:absolute; top:20px; right:20px; z-index:4; background:var(--g); color:var(--k); font-size:7.5px; font-weight:500; letter-spacing:.2em; text-transform:uppercase; padding:5px 10px; }

/* halloween card — crimson accent */
.eva-card.eva-dark .eva-category { color:#c0392b; }
.eva-card.eva-dark .eva-unit-l { color:#c0392b; }
.eva-card.eva-dark .eva-price { color:#c0392b; }
.eva-card.eva-dark .eva-badge { background:#c0392b; color:#fff; }

/* bottom strip */
.eva-strip { background:var(--k3); border-top:1px solid var(--b); padding:28px 64px; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:20px; }
@media(max-width:640px){ .eva-strip { padding:24px 24px; } }
.eva-strip-txt { font-family:'Cormorant',serif; font-style:italic; font-size:15px; color:var(--w3); }

/* --- style block #15 --- */
.evb { background:var(--k2); padding:120px 0; }
.evb-header { padding:0 64px 72px; }
@media(max-width:640px){ .evb-header{ padding:0 24px 48px; } }
.evb-sub { font-size:clamp(20px,3vw,36px); font-family:'Cormorant',serif; font-style:italic; color:var(--w3); margin-top:12px; line-height:1.4; }

.evb-timeline { max-width:900px; margin:0 auto; padding:0 64px; position:relative; }
@media(max-width:640px){ .evb-timeline { padding:0 24px; } }
.evb-spine { position:absolute; left:calc(64px + 28px); top:0; bottom:0; width:1px; background:var(--b); }
@media(max-width:640px){ .evb-spine { left:calc(24px + 20px); } }

.evb-event { display:grid; grid-template-columns:56px 1fr; gap:0 28px; padding:0 0 52px; position:relative; }
@media(max-width:640px){ .evb-event { grid-template-columns:40px 1fr; gap:0 18px; padding-bottom:40px; } }
.evb-month { text-align:center; }
.evb-dot-wrap { display:flex; flex-direction:column; align-items:center; gap:0; }
.evb-dot { width:10px; height:10px; border-radius:50%; background:var(--g); border:2px solid var(--k2); flex-shrink:0; margin-top:6px; transition:transform .3s; }
.evb-event:hover .evb-dot { transform:scale(1.6); }
.evb-dot.evb-dot-dark { background:#c0392b; }
.evb-month-label { font-size:7.5px; letter-spacing:.22em; text-transform:uppercase; color:var(--g); writing-mode:vertical-rl; transform:rotate(180deg); margin-top:10px; }

.evb-card { background:var(--k3); border:1px solid var(--b2); padding:24px 28px; transition:border-color .3s, background .3s; }
.evb-event:hover .evb-card { border-color:var(--b); background:var(--k4); }
.evb-card-top { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:12px; flex-wrap:wrap; }
.evb-name { font-family:'Cormorant',serif; font-size:clamp(18px,2.5vw,26px); font-weight:300; line-height:1.1; }
.evb-when { font-size:9px; letter-spacing:.2em; text-transform:uppercase; color:var(--g); flex-shrink:0; padding-top:4px; }
.evb-where { font-size:10px; color:var(--w3); letter-spacing:.08em; display:block; margin-bottom:10px; }
.evb-desc { font-size:12px; font-weight:300; color:var(--w2); line-height:1.85; }
.evb-tags { display:flex; flex-wrap:wrap; gap:6px; margin-top:14px; }
.evb-tag { font-size:8px; letter-spacing:.18em; text-transform:uppercase; border:1px solid var(--b2); color:var(--w3); padding:4px 10px; }
.evb-tag.evb-hot { border-color:var(--g); color:var(--g); }
.evb-tag.evb-scare { border-color:#c0392b; color:#c0392b; }
.evb-price-tag { font-family:'Cormorant',serif; font-size:16px; color:var(--g); margin-top:12px; display:block; }

/* --- style block #16 --- */
.evc { background:var(--k3); padding:120px 0 0; }
.evc-header { padding:0 64px 64px; }
@media(max-width:640px){ .evc-header { padding:0 24px 48px; } }

.evc-layout { display:grid; grid-template-columns:1fr 380px; gap:2px; }
@media(max-width:1024px){ .evc-layout { grid-template-columns:1fr; } }

/* Hero */
.evc-hero { position:relative; min-height:680px; overflow:hidden; }
@media(max-width:640px){ .evc-hero { min-height:420px; } }
.evc-hero-img { position:absolute; inset:0; background-size:cover; background-position:center; filter:grayscale(20%) brightness(.5); transition:filter .8s; }
.evc-hero:hover .evc-hero-img { filter:grayscale(0%) brightness(.45); }
.evc-hero-grad { position:absolute; inset:0; background:linear-gradient(to top, rgba(8,8,8,.98) 0%, rgba(8,8,8,.6) 45%, transparent 100%); }
.evc-hero-body { position:absolute; bottom:0; left:0; right:0; padding:48px 48px 52px; z-index:2; }
@media(max-width:640px){ .evc-hero-body { padding:28px 24px 36px; } }
.evc-hero-eyelet { font-size:8px; letter-spacing:.5em; text-transform:uppercase; color:var(--g); display:flex; align-items:center; gap:10px; margin-bottom:20px; }
.evc-hero-eyelet::before { content:''; width:28px; height:1px; background:var(--g); }
.evc-hero-title { font-family:'Cormorant',serif; font-size:clamp(36px,5.5vw,68px); font-weight:300; line-height:.95; letter-spacing:-.02em; margin-bottom:14px; }
.evc-hero-sub { font-family:'Cormorant',serif; font-style:italic; font-size:clamp(14px,1.8vw,18px); color:var(--w3); margin-bottom:20px; line-height:1.5; }
.evc-hero-desc { font-size:12.5px; color:var(--w2); line-height:1.9; max-width:560px; margin-bottom:28px; }
.evc-hero-meta { display:flex; align-items:center; gap:20px; flex-wrap:wrap; }
.evc-hero-date { font-size:9px; letter-spacing:.28em; text-transform:uppercase; color:var(--w3); }
.evc-hero-price { font-family:'Cormorant',serif; font-size:22px; color:var(--g); }

/* sidebar list */
.evc-sidebar { background:var(--k2); display:flex; flex-direction:column; }
.evc-side-head { padding:28px 28px 20px; border-bottom:1px solid var(--b); }
.evc-side-title { font-size:8px; letter-spacing:.38em; text-transform:uppercase; color:var(--g); }
.evc-side-item { padding:20px 28px; border-bottom:1px solid var(--b2); cursor:pointer; transition:background .2s; display:flex; gap:14px; align-items:flex-start; }
.evc-side-item:hover { background:var(--w5); }
.evc-side-item.evc-active { background:var(--k3); border-left:2px solid var(--g); }
.evc-side-num { font-family:'Cormorant',serif; font-size:20px; font-weight:300; color:var(--g); flex-shrink:0; line-height:1.1; min-width:24px; }
.evc-side-body { flex:1; }
.evc-side-name { font-family:'Cormorant',serif; font-size:16px; font-weight:300; line-height:1.15; margin-bottom:3px; }
.evc-side-when { font-size:9px; letter-spacing:.14em; text-transform:uppercase; color:var(--w3); }
.evc-side-cat { font-size:8px; letter-spacing:.18em; text-transform:uppercase; color:var(--g); display:block; margin-top:4px; }

/* bottom bar */
.evc-bar { padding:32px 64px 48px; display:flex; gap:24px; justify-content:space-between; align-items:center; flex-wrap:wrap; border-top:1px solid var(--b); }
@media(max-width:640px){ .evc-bar { padding:24px 24px 40px; } }
.evc-bar-txt { font-family:'Cormorant',serif; font-style:italic; font-size:17px; color:var(--w3); }

/* --- style block #17 --- */
.evd { background:var(--k); padding:120px 0; }
.evd-header { padding:0 64px 64px; }
@media(max-width:640px){ .evd-header { padding:0 24px 48px; } }
.evd-shout { font-family:'Cormorant',serif; font-size:clamp(13px,1.5vw,16px); color:var(--w3); margin-top:12px; font-style:italic; line-height:1.7; }

/* month strip */
.evd-months { display:flex; gap:2px; overflow-x:auto; scrollbar-width:none; padding:0 64px; }
.evd-months::-webkit-scrollbar { display:none; }
@media(max-width:640px){ .evd-months { padding:0 24px; } }

.evd-month { flex:0 0 auto; width:280px; background:var(--k2); border:1px solid var(--b2); }
@media(max-width:640px){ .evd-month { width:80vw; } }
.evd-mhead { padding:20px 24px 16px; border-bottom:1px solid var(--b2); display:flex; align-items:baseline; gap:10px; }
.evd-mname { font-family:'Cormorant',serif; font-size:26px; font-weight:300; color:var(--w); }
.evd-myear { font-size:9px; letter-spacing:.2em; text-transform:uppercase; color:var(--w3); }
.evd-mcount { margin-left:auto; font-size:8px; letter-spacing:.16em; text-transform:uppercase; color:var(--g); }

.evd-ev { padding:16px 24px; border-bottom:1px solid var(--b2); transition:background .2s; cursor:pointer; }
.evd-ev:last-child { border-bottom:none; }
.evd-ev:hover { background:var(--w5); }
.evd-ev-date { font-size:8px; letter-spacing:.2em; text-transform:uppercase; color:var(--g); display:block; margin-bottom:5px; }
.evd-ev-name { font-family:'Cormorant',serif; font-size:17px; font-weight:300; line-height:1.15; margin-bottom:3px; }
.evd-ev-where { font-size:10px; color:var(--w3); }
.evd-ev-img { width:100%; height:120px; background-size:cover; background-position:center; filter:grayscale(30%) brightness(.7); margin-bottom:0; display:block; }
.evd-ev.evd-featured { padding:0; overflow:hidden; }
.evd-ev.evd-featured .evd-ev-inner { padding:14px 24px 18px; }

/* empty month */
.evd-empty { padding:24px; text-align:center; }
.evd-empty span { font-family:'Cormorant',serif; font-style:italic; font-size:14px; color:var(--w3); }

/* --- style block #18 --- */
.eve { background:var(--k2); padding:120px 0 0; }
.eve-header { padding:0 64px 0; max-width:900px; }
@media(max-width:640px){ .eve-header { padding:0 24px; } }
.eve-shout { font-family:'Cormorant',serif; font-size:clamp(36px,7vw,96px); font-weight:300; line-height:.9; letter-spacing:-.025em; margin-bottom:0; }
.eve-shout em { color:var(--g); font-style:italic; }
.eve-shout .eve-ghost { color:var(--b); -webkit-text-stroke:1px rgba(240,236,230,.08); }
.eve-intro { padding:32px 64px 72px; display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start; }
@media(max-width:768px){ .eve-intro { grid-template-columns:1fr; padding:28px 24px 48px; } }
.eve-intro-p { font-size:13px; font-weight:300; color:var(--w2); line-height:2; }
.eve-intro-quote { font-family:'Cormorant',serif; font-style:italic; font-size:clamp(16px,2.5vw,22px); color:var(--w3); line-height:1.5; border-left:2px solid var(--g); padding-left:24px; }

/* Feature cards — alternating full-width strips */
.eve-feature { display:grid; grid-template-columns:1fr 1fr; min-height:500px; gap:0; border-top:1px solid var(--b2); }
.eve-feature.eve-flip { direction:rtl; }
.eve-feature.eve-flip > * { direction:ltr; }
@media(max-width:768px){ .eve-feature, .eve-feature.eve-flip { grid-template-columns:1fr; direction:ltr; } }
.eve-feat-img { position:relative; overflow:hidden; min-height:400px; }
@media(max-width:768px){ .eve-feat-img { min-height:260px; } }
.eve-feat-bg { position:absolute; inset:0; background-size:cover; background-position:center; filter:grayscale(25%) brightness(.65); transition:filter .7s, transform .8s; }
.eve-feature:hover .eve-feat-bg { filter:grayscale(0%) brightness(.6); transform:scale(1.03); }
.eve-feat-body { background:var(--k3); padding:56px 52px; display:flex; flex-direction:column; justify-content:center; }
@media(max-width:640px){ .eve-feat-body { padding:36px 24px; } }
.eve-feat-n { font-family:'Cormorant',serif; font-size:96px; font-weight:300; color:var(--b); line-height:1; display:block; margin-bottom:-8px; }
.eve-feat-cat { font-size:8px; letter-spacing:.42em; text-transform:uppercase; color:var(--g); display:block; margin-bottom:14px; }
.eve-feat-title { font-family:'Cormorant',serif; font-size:clamp(24px,3.5vw,42px); font-weight:300; line-height:1.05; margin-bottom:10px; }
.eve-feat-sub { font-family:'Cormorant',serif; font-style:italic; font-size:clamp(13px,1.6vw,17px); color:var(--w3); margin-bottom:20px; line-height:1.5; }
.eve-feat-desc { font-size:12px; font-weight:300; color:var(--w2); line-height:1.95; margin-bottom:28px; }
.eve-feat-meta { display:flex; align-items:center; gap:20px; flex-wrap:wrap; padding-top:20px; border-top:1px solid var(--b2); }
.eve-feat-date { font-size:9px; letter-spacing:.22em; text-transform:uppercase; color:var(--w3); }
.eve-feat-price { font-family:'Cormorant',serif; font-size:20px; color:var(--g); }

/* small grid at bottom */
.eve-smalls { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; border-top:1px solid var(--b2); }
@media(max-width:768px){ .eve-smalls { grid-template-columns:1fr; } }
.eve-small { background:var(--k2); padding:28px 28px 32px; border:1px solid var(--b2); transition:background .2s; }
.eve-small:hover { background:var(--k3); }
.eve-small-cat { font-size:8px; letter-spacing:.3em; text-transform:uppercase; color:var(--g); display:block; margin-bottom:10px; }
.eve-small-name { font-family:'Cormorant',serif; font-size:clamp(16px,2vw,22px); font-weight:300; line-height:1.15; margin-bottom:6px; }
.eve-small-where { font-size:10px; color:var(--w3); display:block; margin-bottom:10px; }
.eve-small-desc { font-size:11px; font-weight:300; color:var(--w2); line-height:1.8; }

/* final cta row */
.eve-cta { padding:64px 64px 72px; text-align:center; }
@media(max-width:640px){ .eve-cta { padding:48px 24px 56px; } }
.eve-cta-title { font-family:'Cormorant',serif; font-style:italic; font-size:clamp(20px,3.5vw,38px); font-weight:300; color:var(--w3); margin-bottom:32px; line-height:1.35; max-width:660px; margin-left:auto; margin-right:auto; }
.eve-cta-title em { color:var(--w); font-style:inherit; }
.eve-cta-btns { display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }

<style>
/* ── SIGNATURE EXPERIENCES ── */
.sigexp-sec {
  background: var(--k);
  padding: 120px 0 0;
  overflow: hidden;
}
.sigexp-header {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 56px 72px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: 32px;
}
@media(max-width:640px){ .sigexp-header { padding: 0 24px 48px; } }
.sigexp-header-left { max-width: 600px; }
.sigexp-header-right {
  font-size: 12px;
  font-weight: 300;
  color: var(--w3);
  line-height: 1.9;
  max-width: 340px;
  text-align: right;
}
@media(max-width:768px){ .sigexp-header-right { text-align: left; max-width: 100%; } }

/* Tabs */
.sigexp-tabs {
  display: flex;
  overflow-x: auto;
  scrollbar-width: none;
  border-bottom: 1px solid var(--b);
  padding: 0 56px;
}
.sigexp-tabs::-webkit-scrollbar { display: none; }
@media(max-width:640px){ .sigexp-tabs { padding: 0 24px; } }
.sigexp-tab {
  font-size: 9px;
  letter-spacing: .3em;
  text-transform: uppercase;
  color: var(--w3);
  padding: 16px 28px;
  cursor: pointer;
  border: none;
  background: transparent;
  font-family: 'Inter', sans-serif;
  white-space: nowrap;
  border-bottom: 1px solid transparent;
  margin-bottom: -1px;
  transition: color .25s, border-color .25s;
}
.sigexp-tab:hover { color: var(--w); }
.sigexp-tab.active { color: var(--g); border-bottom-color: var(--g); }

/* Category panels */
.sigexp-category { display: none; }
.sigexp-category.active { display: block; }

/* Category bar */
.sigexp-cat-bar {
  max-width: 1280px;
  margin: 0 auto;
  padding: 52px 56px 48px;
  display: flex;
  align-items: flex-end;
  gap: 48px;
  border-bottom: 1px solid var(--b2);
}
@media(max-width:640px){ .sigexp-cat-bar { padding: 40px 24px 36px; flex-direction: column; gap: 16px; } }
.sigexp-cat-icon {
  font-family: 'Cormorant', serif;
  font-size: 80px;
  font-weight: 300;
  color: var(--b);
  line-height: 1;
  flex-shrink: 0;
  user-select: none;
}
.sigexp-cat-title {
  font-family: 'Cormorant', serif;
  font-size: clamp(28px, 4vw, 52px);
  font-weight: 300;
  line-height: 1.0;
  flex: 1;
}
.sigexp-cat-title em { font-style: italic; color: var(--g); }
.sigexp-cat-desc {
  font-size: 12px;
  font-weight: 300;
  color: var(--w3);
  line-height: 1.9;
  max-width: 320px;
}

/* 3-col grid — full width */
.sigexp-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
  padding: 2px 0 0;
}
@media(max-width:900px){ .sigexp-grid { grid-template-columns: 1fr 1fr; } }
@media(max-width:560px){ .sigexp-grid { grid-template-columns: 1fr; } }

/* Card */
.sigexp-card {
  background: var(--k2);
  border: 1px solid var(--b2);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: border-color .3s;
}
.sigexp-card:hover { border-color: var(--b); }

/* Single full-width image */
.sigexp-img-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 4/3;
  overflow: hidden;
}
.sigexp-img-single {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  filter: grayscale(30%) brightness(.75);
  transition: filter .6s, transform .7s;
}
.sigexp-card:hover .sigexp-img-single {
  filter: grayscale(0%) brightness(.85);
  transform: scale(1.04);
}
.sigexp-img-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(8,8,8,.75) 0%, transparent 55%);
  pointer-events: none;
  z-index: 1;
}
.sigexp-img-num {
  position: absolute;
  top: 20px;
  left: 24px;
  font-size: 9px;
  letter-spacing: .38em;
  text-transform: uppercase;
  color: var(--g);
  z-index: 2;
  font-family: 'Inter', sans-serif;
}

/* Card body */
.sigexp-body {
  padding: 28px 32px 32px;
  flex: 1;
  display: flex;
  flex-direction: column;
}
@media(max-width:640px){ .sigexp-body { padding: 20px 20px 24px; } }
.sigexp-title {
  font-family: 'Cormorant', serif;
  font-size: clamp(20px, 2vw, 26px);
  font-weight: 300;
  line-height: 1.1;
  margin-bottom: 16px;
}
.sigexp-desc {
  font-size: 12px;
  font-weight: 300;
  color: var(--w2);
  line-height: 1.85;
  flex: 1;
}
.sigexp-cta {
  margin-top: 24px;
  padding-top: 18px;
  border-top: 1px solid var(--b2);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.sigexp-badge {
  font-size: 8.5px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--w3);
}
.sigexp-arrow {
  font-size: 9px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--g);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  padding-bottom: 2px;
  transition: border-color .25s;
  white-space: nowrap;
}
.sigexp-arrow:hover { border-bottom-color: var(--g); }

/* Bottom strip */
.sigexp-bottom {
  background: var(--k3);
  border-top: 1px solid var(--b);
  padding: 64px 56px;
  text-align: center;
}
@media(max-width:640px){ .sigexp-bottom { padding: 48px 24px; } }
.sigexp-bottom-q {
  font-family: 'Cormorant', serif;
  font-style: italic;
  font-size: clamp(18px, 2.5vw, 28px);
  font-weight: 300;
  color: var(--w3);
  margin-bottom: 32px;
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.5;
}
.sigexp-bottom-q em { color: var(--w); font-style: inherit; }

/* FROM */
.sigexp-body {
  padding: 28px 32px 32px;
  flex: 1;
  display: flex;
  flex-direction: column;
}

/* TO */
.sigexp-body {
  padding: 28px 32px 40px;
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 220px;
}

/* --- style block #19 --- */
/* ── VAR A: Cinematic Fullbleed ── */
.va{position:relative;background:var(--k);overflow:hidden}
.va-track{position:relative;height:92vh;min-height:520px}
.va-slide{position:absolute;inset:0;opacity:0;transition:opacity .9s cubic-bezier(.4,0,.2,1),transform 1.1s cubic-bezier(.4,0,.2,1);transform:scale(1.04);pointer-events:none}
.va-slide.va-on{opacity:1;transform:scale(1);pointer-events:auto}
.va-slide.va-out{opacity:0;transform:scale(.97)}
.va-img{position:absolute;inset:0;background-size:cover;background-position:center;filter:grayscale(35%) brightness(.6);transition:filter 1.2s}
.va-slide.va-on .va-img{filter:grayscale(10%) brightness(.55)}
.va-grad{position:absolute;inset:0;background:linear-gradient(to right,rgba(8,8,8,.92) 0%,rgba(8,8,8,.55) 45%,rgba(8,8,8,.1) 100%),linear-gradient(to top,rgba(8,8,8,.7) 0%,transparent 50%)}
.va-content{position:absolute;bottom:0;left:0;padding:0 64px 80px;max-width:680px;z-index:3}
@media(max-width:640px){.va-content{padding:0 24px 100px}}
.va-num{font-size:9px;letter-spacing:.5em;text-transform:uppercase;color:var(--g);display:block;margin-bottom:16px}
.va-title{font-family:'Cormorant',serif;font-size:clamp(36px,6vw,72px);font-weight:300;line-height:.95;letter-spacing:-.02em;margin-bottom:12px}
.va-tagline{font-family:'Cormorant',serif;font-style:italic;font-size:clamp(15px,2vw,20px);color:var(--w3);margin-bottom:18px;line-height:1.5}
.va-desc{font-size:12.5px;font-weight:300;color:var(--w2);line-height:1.95;max-width:480px}
.va-cta{margin-top:32px;display:flex;gap:12px;flex-wrap:wrap}
/* right panel */
.va-index{position:absolute;right:56px;top:50%;transform:translateY(-50%);z-index:4;display:flex;flex-direction:column;gap:10px;align-items:flex-end}
@media(max-width:900px){.va-index{display:none}}
.va-pip{display:flex;align-items:center;gap:10px;cursor:pointer;background:none;border:none;padding:4px 0}
.va-pip-line{width:28px;height:1px;background:var(--w3);transition:width .3s,background .3s}
.va-pip.va-pip-on .va-pip-line{width:48px;background:var(--g)}
.va-pip-label{font-size:8px;letter-spacing:.28em;text-transform:uppercase;color:var(--w3);transition:color .3s;white-space:nowrap}
.va-pip.va-pip-on .va-pip-label{color:var(--w)}
/* bottom nav */
.va-nav{position:absolute;bottom:80px;right:56px;z-index:4;display:flex;gap:8px}
@media(max-width:640px){.va-nav{right:24px;bottom:56px}}
.va-btn{width:42px;height:42px;border:1px solid var(--b);background:rgba(8,8,8,.5);color:var(--w2);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:all .25s;backdrop-filter:blur(8px)}
.va-btn:hover{border-color:var(--g);color:var(--g)}
/* progress bar */
.va-prog{position:absolute;bottom:0;left:0;height:1px;background:var(--g);transition:width .1s linear;z-index:4}
/* header */
.va-header{padding:80px 64px 0;position:relative;z-index:2}
@media(max-width:640px){.va-header{padding:64px 24px 0}}


/* ===== Extracted from inline style="..." attributes ===== */
.u-inline-1 { background: var(--k) !important; padding: clamp(60px,8vw,120px) 0 !important; overflow: hidden !important; position: relative !important; }
.u-inline-2 { margin-bottom: 56px !important; }
.u-inline-3 { font-size: clamp(28px,4vw,48px) !important; margin-bottom: 0 !important; }
.u-inline-4 { margin-bottom: 0 !important; }
.u-inline-5 { width: 100% !important; height: 100% !important; object-fit: cover !important; filter: grayscale(100%) !important; transition: filter .4s,transform .5s !important; display: block !important; }
.u-inline-6 { width: 100% !important; height: 100% !important; object-fit: cover !important; filter: grayscale(100%) !important; transition: filter .5s,transform .5s !important; display: block !important; }
.u-inline-7 { background-image: url('https://unlockedbydiana.com/images/h1.jpg') !important; }
.u-inline-8 { background-image: url('https://unlockedbydiana.com/images/h2.jpg') !important; }
.u-inline-9 { background-image: url('https://unlockedbydiana.com/images/h3.jpg') !important; }
.u-inline-10 { background-image: url('https://unlockedbydiana.com/images/corporate.png') !important; }
.u-inline-11 { font-family: 'Cormorant',serif !important; font-style: italic !important; font-size: clamp(11px,1.2vw,14px) !important; line-height: 2 !important; color: var(--w3) !important; }
.u-inline-12 { color: var(--g) !important; }
.u-inline-13 { font-size: 9px !important; letter-spacing: .3em !important; text-transform: uppercase !important; color: var(--w3) !important; margin-top: 12px !important; display: block !important; }
.u-inline-14 { background: var(--k) !important; display: none !important; }
.u-inline-15 { margin-bottom: 16px !important; }
.u-inline-16 { font-family: 'Cormorant',serif !important; font-size: clamp(28px,4vw,54px) !important; font-weight: 300 !important; line-height: 1.05 !important; margin: 0 0 12px !important; }
.u-inline-17 { margin-bottom: 20px !important; }
.u-inline-18 { margin-top: 24px !important; }
.u-inline-19 { margin-top: 96px !important; margin-bottom: 72px !important; }
.u-inline-20 { display: none !important; }
.u-inline-21 { display: none !important; }
.u-inline-22 { display: flex !important; justify-content: space-between !important; align-items: flex-end !important; flex-wrap: wrap !important; gap: 32px !important; margin-bottom: 64px !important; }
.u-inline-23 { margin-top: 56px !important; text-align: center !important; }
.u-inline-24 { font-family: 'Cormorant',serif !important; font-style: italic !important; font-size: 19px !important; color: var(--w3) !important; margin-bottom: 24px !important; }
.u-inline-25 { display: inline-flex !important; }
.u-inline-26 { margin-top: 80px !important; margin-bottom: 32px !important; display: flex !important; align-items: flex-end !important; justify-content: space-between !important; flex-wrap: wrap !important; gap: 24px !important; }
.u-inline-27 { font-family: 'Cormorant',serif !important; font-size: clamp(24px,3.5vw,40px) !important; font-weight: 300 !important; line-height: 1.1 !important; }
.u-inline-28 { color: var(--g) !important; font-style: italic !important; }
.u-inline-29 { display: flex !important; align-items: center !important; gap: 20px !important; flex-wrap: wrap !important; }
.u-inline-30 { text-align: right !important; }
.u-inline-31 { font-family: 'Cormorant',serif !important; font-size: 40px !important; color: var(--w) !important; font-weight: 300 !important; line-height: 1 !important; }
.u-inline-32 { font-size: 9px !important; letter-spacing: .18em !important; text-transform: uppercase !important; color: var(--w3) !important; margin-top: 4px !important; }
.u-inline-33 { width: 1px !important; height: 48px !important; background: var(--b) !important; }
.u-inline-34 { font-size: 9.5px !important; letter-spacing: .14em !important; text-transform: uppercase !important; color: var(--g) !important; }
.u-inline-35 { font-size: 9px !important; letter-spacing: .1em !important; text-transform: uppercase !important; color: var(--w3) !important; margin-top: 5px !important; }
.u-inline-36 { margin-top: 40px !important; text-align: center !important; }
.u-inline-37 { background-image: url('https://placehold.co/540x960/0f0f0f/b8966a?text=▶') !important; }
.u-inline-38 { background-image: url('https://placehold.co/540x960/0d0d0d/b8966a?text=Review+01') !important; }
.u-inline-39 { background-image: url('https://placehold.co/540x960/0d0d0d/b8966a?text=Review+02') !important; }
.u-inline-40 { background-image: url('https://placehold.co/540x960/0d0d0d/b8966a?text=Review+03') !important; }
.u-inline-41 { background-image: url('https://placehold.co/540x960/0d0d0d/b8966a?text=▶ Play') !important; }
.u-inline-42 { background-image: url('https://placehold.co/540x960/0a0a0a/b8966a?text=Review+1') !important; }
.u-inline-43 { background-image: url('https://placehold.co/540x960/0a0a0a/b8966a?text=Review+2') !important; }
.u-inline-44 { background-image: url('https://placehold.co/540x960/0a0a0a/b8966a?text=Review+3') !important; }
.u-inline-45 { min-height: 200px !important; }
.u-inline-46 { background-image: url('https://placehold.co/720x400/0d0d0d/b8966a?text=Review+01') !important; }
.u-inline-47 { background-image: url('https://placehold.co/720x400/0d0d0d/b8966a?text=Review+02') !important; }
.u-inline-48 { background-image: url('https://placehold.co/720x400/0d0d0d/b8966a?text=Review+03') !important; }
.u-inline-49 { background-image: url('https://images.unsplash.com/photo-1589308078059-be1415eab4c3?w=1400&q=80') !important; }
.u-inline-50 { background-image: url('https://images.unsplash.com/photo-1506905925346-21bda4d32df4?w=1400&q=80') !important; }
.u-inline-51 { background-image: url('https://images.unsplash.com/photo-1510812431401-41d2bd2722f3?w=1400&q=80') !important; }
.u-inline-52 { background-image: url('https://images.unsplash.com/photo-1448375240586-882707db888b?w=1400&q=80') !important; }
.u-inline-53 { background-image: url('https://images.unsplash.com/photo-1507525428034-b723cf961d3e?w=1400&q=80') !important; }
.u-inline-54 { background-image: url('https://images.unsplash.com/photo-1500534314209-a25ddb2bd429?w=1400&q=80') !important; }
.u-inline-55 { background-image: url('https://images.unsplash.com/photo-1504457047772-27faf1c00561?w=1400&q=80') !important; }
.u-inline-56 { margin-bottom: 8px !important; }
.u-inline-57 { background-image: url('https://unlockedbydiana.com/images/bucharest-8.jpg') !important; }
.u-inline-58 { background-image: url('https://unlockedbydiana.com/images/castle-1.jpg') !important; }
.u-inline-59 { background-image: url('https://images.unsplash.com/photo-1570939274717-7eda259b50ed?w=900&q=80') !important; }
.u-inline-60 { background-image: url('https://unlockedbydiana.com/images/mountains-2.jpg') !important; }
.u-inline-61 { background-image: url('https://images.unsplash.com/photo-1464822759023-fed622ff2c3b?w=900&q=80') !important; }
.u-inline-62 { background-image: url('https://unlockedbydiana.com/images/delta-4.jpg') !important; }
.u-inline-63 { background-image: url('https://unlockedbydiana.com/images/wine-5.jpg') !important; }
.u-inline-64 { background-image: url('https://unlockedbydiana.com/images/wine-road-9.jpg') !important; }
.u-inline-65 { background-image: url('https://images.unsplash.com/photo-1504674900247-0877df9cc836?w=900&q=80') !important; }
.u-inline-66 { background-image: url('https://unlockedbydiana.com/images/hoia-e1.jpg') !important; }
.u-inline-67 { background-image: url('https://images.unsplash.com/photo-1536768139911-e290a59011e4?w=900&q=80') !important; }
.u-inline-68 { background-image: url('https://images.unsplash.com/photo-1520637836993-a26c37d2a944?w=900&q=80') !important; }
.u-inline-69 { background-image: url('https://unlockedbydiana.com/images/blacksea-11.jpg') !important; }
.u-inline-70 { background-image: url('https://images.unsplash.com/photo-1507525428034-b723cf961d3e?w=900&q=80') !important; }
.u-inline-71 { background-image: url('https://images.unsplash.com/photo-1544551763-46a013bb70d5?w=900&q=80') !important; }
.u-inline-72 { background-image: url('https://unlockedbydiana.com/images/saxon-6.jpg') !important; }
.u-inline-73 { background-image: url('https://unlockedbydiana.com/images/maramures-7.jpg') !important; }
.u-inline-74 { background-image: url('https://unlockedbydiana.com/images/villages-12.jpg') !important; }
.u-inline-75 { background-image: url('https://unlockedbydiana.com/images/bear-10.jpg') !important; }
.u-inline-76 { background-image: url('https://images.unsplash.com/photo-1589308078059-be1415eab4c3?w=900&q=80') !important; }
.u-inline-77 { background-image: url('https://images.unsplash.com/photo-1504457047772-27faf1c00561?w=900&q=80') !important; }
.u-inline-78 { background-image: url('https://placehold.co/1200x800/0f0f0f/b8966a?text=Castles+%26+Royal+Heritage') !important; }
.u-inline-79 { background-image: url('https://placehold.co/1200x800/0f0f0f/b8966a?text=Transylvanian+Highlands') !important; }
.u-inline-80 { background-image: url('https://placehold.co/1200x800/0f0f0f/b8966a?text=Painted+Monasteries') !important; }
.u-inline-81 { background-image: url('https://placehold.co/1200x800/0f0f0f/b8966a?text=Danube+Delta+Escape') !important; }
.u-inline-82 { background-image: url('https://placehold.co/1200x800/0f0f0f/b8966a?text=Rural+Gastronomy') !important; }
.u-inline-83 { background-image: url('https://placehold.co/1200x800/0f0f0f/b8966a?text=Saxon+Villages') !important; }
.u-inline-84 { background-image: url('https://placehold.co/1200x800/0f0f0f/b8966a?text=Maramures+Traditions') !important; }
.u-inline-85 { background-image: url('https://placehold.co/1200x800/0f0f0f/b8966a?text=Bucharest+Belle+Epoque') !important; }
.u-inline-86 { background-image: url('https://placehold.co/1200x800/0f0f0f/b8966a?text=Wine+Roads+of+Romania') !important; }
.u-inline-87 { background-image: url('https://placehold.co/1200x800/0f0f0f/b8966a?text=Wild+Carpathian+Safari') !important; }
.u-inline-88 { background-image: url('https://placehold.co/1200x800/0f0f0f/b8966a?text=Black+Sea+Reverie') !important; }
.u-inline-89 { background-image: url('https://placehold.co/1200x800/0f0f0f/b8966a?text=Hidden+Villages') !important; }
.u-inline-90 { background-image: url('https://placehold.co/1200x800/0f0f0f/b8966a?text=Esoteric+%26+Mystical') !important; }
.u-inline-91 { background-image: url('https://placehold.co/800x1000/080808/b8966a?text=UNTOLD+ONE') !important; }
.u-inline-92 { background-image: url('https://placehold.co/600x900/0a0808/b8966a?text=Electric+Castle') !important; }
.u-inline-93 { background-image: url('https://placehold.co/600x900/100808/c0392b?text=Halloween+at+Dracula%27s+Castle') !important; }
.u-inline-94 { background-image: url('https://placehold.co/600x900/080808/b8966a?text=Taste+of+Transylvania') !important; }
.u-inline-95 { background: var(--g) !important; transform: scale(1.4) !important; }
.u-inline-96 { border-color: var(--b) !important; }
.u-inline-97 { color: #c0392b !important; }
.u-inline-98 { border-color: rgba(192,57,43,.3) !important; }
.u-inline-99 { background-image: url('https://placehold.co/1200x900/080808/b8966a?text=Untold+ONE+%E2%80%94+Cluj') !important; }
.u-inline-100 { padding: 11px 22px !important; font-size: 9px !important; }
.u-inline-101 { background-image: url('https://placehold.co/560x240/080808/b8966a?text=WNMD+Bucharest') !important; }
.u-inline-102 { background-image: url('https://placehold.co/560x240/080808/b8966a?text=Electric+Castle') !important; }
.u-inline-103 { border-color: rgba(184,150,106,.25) !important; }
.u-inline-104 { background: linear-gradient(to right,var(--g2),transparent) !important; }
.u-inline-105 { background-image: url('https://placehold.co/560x280/080808/b8966a?text=UNTOLD+ONE') !important; }
.u-inline-106 { background-image: url('https://placehold.co/560x240/080808/b8966a?text=Taste+of+Transylvania') !important; }
.u-inline-107 { border-color: rgba(192,57,43,.25) !important; }
.u-inline-108 { background: linear-gradient(to right,rgba(192,57,43,.12),transparent) !important; }
.u-inline-109 { background-image: url('https://placehold.co/560x260/100808/c0392b?text=Halloween+at+Dracula%27s+Castle') !important; }
.u-inline-110 { opacity: .5 !important; }
.u-inline-111 { color: var(--w) !important; font-weight: 400 !important; }
.u-inline-112 { background-image: url('https://placehold.co/1000x700/080808/b8966a?text=UNTOLD+ONE') !important; }
.u-inline-113 { background-image: url('https://placehold.co/1000x700/0d0808/c0392b?text=Halloween+at+Dracula%27s+Castle') !important; }
.u-inline-114 { background: var(--k2) !important; }
.u-inline-115 { color: rgba(192,57,43,.2) !important; }
.u-inline-116 { color: rgba(192,57,43,.7) !important; }
.u-inline-117 { color: rgba(192,57,43,.8) !important; }
.u-inline-118 { padding: 11px 22px !important; font-size: 9px !important; background: #c0392b !important; }
.u-inline-119 { background-image: url('https://placehold.co/1000x700/080a08/b8966a?text=Electric+Castle+%E2%80%94+B%C3%A1nffy') !important; }
.u-inline-120 { position: relative !important; }
.u-inline-121 { display: flex !important; justify-content: space-between !important; align-items: flex-end !important; flex-wrap: wrap !important; gap: 24px !important; }
.u-inline-122 { margin-top: 0 !important; max-width: 380px !important; }

/* === Fix Swiss Army section width === */

.split-intro {
  max-width: none;
  margin: 0;
  padding: 0 80px;
}

.u-inline-1 .pg-grid {
  max-width: none;
  margin: 0;
  padding: 0 80px;
}

/* Mobile consistency */
@media (max-width: 640px) {
  .split-intro,
  .u-inline-1 .pg-grid {
    padding: 0 24px;
  }
}

/* ===== SIGNATURE JOURNEYS SECTION ===== */

.journeys {
  background: var(--k);
  padding: 160px 0;
}

.journeys-inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 56px;
}

.journeys-main-title {
  font-family: 'Cormorant', serif;
  font-size: clamp(56px, 7vw, 110px);
  font-weight: 300;
  line-height: 1.05;
  margin-bottom: 140px;
}

.journeys-main-title em {
  font-style: italic;
}

.journey {
  margin-bottom: 160px;
}

.journey-title {
  font-size: clamp(32px, 4vw, 56px);
  margin-bottom: 56px;
}

.journey-images {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  margin-bottom: 64px;
}

.journey-img {
  height: 420px;
  border-radius: 28px;
  background-size: cover;
  background-position: center;
}

.journey-quote {
  font-family: 'Cormorant', serif;
  font-style: italic;
  font-size: clamp(28px, 3vw, 46px);
  margin-bottom: 40px;
}

.journey-desc {
  max-width: 820px;
  font-size: 18px;
  line-height: 1.9;
  color: var(--w2);
}

.journey-divider {
  margin-top: 80px;
  height: 1px;
  background: var(--b2);
}

/* Mobile */

@media (max-width: 900px) {
  .journey-images {
    grid-template-columns: 1fr;
  }

  .journey-img {
    height: 300px;
  }

  .journeys-inner {
    padding: 0 24px;
  }
}

.journey-images {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  margin-bottom: 64px;
}

.journey-images img {
  width: 100%;
  height: 420px;
  object-fit: cover;
  border-radius: 28px;
  display: block;
}

/* ===== SIGNATURE EXPERIENCES SECTION ===== */

.sigexp-sec {
  padding: 160px 0;
  background: var(--k);
}

.sigexp-sec .container {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 56px;
}

/* Experience block */

.sigexp-exp {
  margin-bottom: 160px;
}

.sigexp-exp h3 {
  font-size: clamp(32px, 4vw, 56px);
  font-weight: 400;
  margin-bottom: 56px;
}

/* Image grid */

.sigexp-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  margin-bottom: 64px;
}

.sigexp-grid img {
  width: 100%;
  height: 420px;
  object-fit: cover;
  border-radius: 28px;
  display: block;
}

/* Quote */

.sigexp-exp h4 {
  font-family: 'Cormorant', serif;
  font-style: italic;
  font-size: clamp(28px, 3vw, 46px);
  margin-bottom: 40px;
}

/* Description */

.sigexp-exp p {
  max-width: 820px;
  font-size: 18px;
  line-height: 1.9;
  color: var(--w2);
}

/* Divider */

.sigexp-divider {
  margin-top: 80px;
  height: 1px;
  background: var(--b2);
}

/* Mobile */

@media (max-width: 900px) {
  .sigexp-grid {
    grid-template-columns: 1fr;
  }

  .sigexp-grid img {
    height: 300px;
  }

  .sigexp-sec .container {
    padding: 0 24px;
  }
}

.nav-logo-img{
height:38px;
width:auto;
}

.nav-dropdown{
position:relative;
}

.nav-sub{
position:absolute;
top:100%;
left:0;
background:#0a0a0a;
padding:12px 16px;
display:none;
flex-direction:column;
gap:8px;
}

.nav-dropdown:hover .nav-sub{
display:flex;
}

.nav-sub a{
font-size:13px;
opacity:.8;
}

/* SERVICES EDITORIAL */
.svc-editorial{
  padding:140px 0 120px;
  background:
    radial-gradient(circle at top right, rgba(184,150,106,.08), transparent 30%),
    linear-gradient(to bottom, #090909 0%, #0c0c0c 100%);
}

.svc-editorial-head{
  display:grid;
  gap:18px;
  margin-bottom:28px;
}

.svc-switch{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:28px;
}

.svc-switch-btn{
  appearance:none;
  border:1px solid rgba(240,236,230,.12);
  background:transparent;
  color:var(--w2);
  padding:12px 18px;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.24em;
  cursor:pointer;
  transition:.25s ease;
}

.svc-switch-btn:hover,
.svc-switch-btn.is-active{
  color:var(--w);
  border-color:rgba(184,150,106,.45);
  background:rgba(184,150,106,.08);
}

.svc-sheet{
  display:none;
  background:#f1e9e8;
  color:#3f322f;
  border:1px solid rgba(255,255,255,.06);
}

.svc-sheet.is-active{
  display:block;
}

.svc-sheet-hero{
  position:relative;
  min-height:320px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  overflow:hidden;
}

.svc-sheet-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  transform:scale(1.02);
}

.svc-hero-white::before{
  background-image:url('https://unlockedbydiana.com/images/h1.jpg');
}

.svc-hero-black::before{
  background-image:url('https://unlockedbydiana.com/images/d3.jpg');
}

.svc-hero-corporate::before{
  background-image:url('https://unlockedbydiana.com/images/df1.jpg');
}

.svc-sheet-hero-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(to bottom, rgba(46,30,24,.22), rgba(46,30,24,.22)),
    radial-gradient(circle at center, rgba(255,255,255,.15), rgba(0,0,0,.08));
  backdrop-filter:blur(2px);
}

.svc-sheet-hero-copy{
  position:relative;
  z-index:2;
  max-width:760px;
  padding:30px;
}

.svc-sheet-hero-copy h3{
  margin:0;
  color:#473936;
  font-family:'Cormorant',serif;
  font-weight:400;
  font-size:clamp(34px,4.6vw,66px);
  line-height:1.02;
  letter-spacing:.02em;
}

.svc-sheet-hero-copy p{
  margin:18px 0 0;
  color:#594846;
  font-family:'Cormorant',serif;
  font-size:clamp(18px,2vw,30px);
  line-height:1.2;
}

.svc-sheet-body{
  padding:56px clamp(24px,4vw,70px) 56px;
}

.svc-sheet-intro{
  max-width:980px;
  margin:0 auto;
  text-align:center;
  color:#5b4c49;
  font-family:'Cormorant',serif;
  font-size:clamp(22px,2.15vw,40px);
  line-height:1.48;
}

.svc-divider{
  margin:34px auto 26px;
  max-width:920px;
  position:relative;
  height:18px;
}

.svc-divider::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:50%;
  height:1px;
  background:rgba(89,72,70,.14);
}

.svc-divider span{
  position:absolute;
  left:50%;
  top:50%;
  width:14px;
  height:14px;
  transform:translate(-50%,-50%) rotate(45deg);
  border:1px solid rgba(89,72,70,.22);
  background:#f1e9e8;
}

.svc-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  border-top:1px solid rgba(89,72,70,.12);
  border-left:1px solid rgba(89,72,70,.12);
}

.svc-box{
  appearance:none;
  border:0;
  border-right:1px solid rgba(89,72,70,.12);
  border-bottom:1px solid rgba(89,72,70,.12);
  background:transparent;
  text-align:center;
  padding:34px 28px 30px;
  cursor:pointer;
  transition:.25s ease;
  color:inherit;
}

.svc-box:hover{
  background:rgba(255,255,255,.24);
}

.svc-box h4{
  margin:0 0 10px;
  font-family:'Cormorant',serif;
  font-weight:400;
  font-size:clamp(24px,2.15vw,42px);
  line-height:1.08;
  color:#433632;
}

.svc-box p{
  margin:0 auto;
  max-width:520px;
  color:#5a4a47;
  font-family:'Cormorant',serif;
  font-size:clamp(17px,1.28vw,28px);
  line-height:1.45;
}

.svc-sheet-footer{
  max-width:1040px;
  margin:38px auto 0;
  text-align:center;
  color:#4b3b38;
  font-family:'Cormorant',serif;
  font-size:clamp(24px,2vw,38px);
  line-height:1.3;
}

/* MODAL */
.svc-modal{
  position:fixed;
  inset:0;
  z-index:2000;
  display:none;
}

.svc-modal.is-open{
  display:block;
}

.svc-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.68);
  backdrop-filter:blur(6px);
}

.svc-modal-dialog{
  position:relative;
  z-index:2;
  width:min(760px, calc(100% - 28px));
  margin:8vh auto 0;
  background:#111;
  border:1px solid rgba(240,236,230,.1);
  padding:34px 28px 30px;
  box-shadow:0 30px 80px rgba(0,0,0,.45);
}

.svc-modal-eyebrow{
  display:block;
  margin-bottom:10px;
  color:var(--g);
  font-size:10px;
  letter-spacing:.24em;
  text-transform:uppercase;
}

.svc-modal-dialog h3{
  margin:0 0 16px;
  color:var(--w);
  font-family:'Cormorant',serif;
  font-size:clamp(34px,3vw,52px);
  font-weight:300;
  line-height:1.02;
}

.svc-modal-copy p{
  margin:0 0 14px;
  color:var(--w2);
  font-size:14px;
  line-height:1.9;
}

.svc-modal-close{
  position:absolute;
  top:10px;
  right:12px;
  border:0;
  background:transparent;
  color:var(--w2);
  font-size:30px;
  cursor:pointer;
  line-height:1;
}

/* ─────────────────────────────
   SERVICES EDITORIAL DARK THEME
   ───────────────────────────── */

.svc-editorial{
  padding:140px 0 120px;
  background:
    radial-gradient(circle at top right, rgba(184,150,106,.08), transparent 35%),
    linear-gradient(to bottom,#080808,#0b0b0b);
}

/* tabs */

.svc-switch{
  display:flex;
  gap:10px;
  margin:30px 0 40px;
}

.svc-switch-btn{
  appearance:none;
  border:1px solid rgba(255,255,255,.08);
  background:transparent;
  color:var(--w2);
  padding:12px 18px;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.25em;
  cursor:pointer;
  transition:.25s ease;
}

.svc-switch-btn:hover,
.svc-switch-btn.is-active{
  color:var(--w);
  border-color:var(--g);
  background:rgba(184,150,106,.08);
}

/* panel */

.svc-sheet{
  display:none;
  border:1px solid rgba(255,255,255,.06);
  background:#0a0a0a;
}

.svc-sheet.is-active{
  display:block;
}

/* hero */

.svc-sheet-hero{
  position:relative;
  min-height:320px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  overflow:hidden;
}

.svc-sheet-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  transform:scale(1.02);
}

.svc-hero-white::before{background-image:url('https://unlockedbydiana.com/images/h1.jpg')}
.svc-hero-black::before{background-image:url('https://unlockedbydiana.com/images/d3.jpg')}
.svc-hero-corporate::before{background-image:url('https://unlockedbydiana.com/images/df1.jpg')}

.svc-sheet-hero-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(to bottom, rgba(8,8,8,.65), rgba(8,8,8,.65)),
    radial-gradient(circle at center, rgba(255,255,255,.05), transparent 40%);
}

.svc-sheet-hero-copy{
  position:relative;
  z-index:2;
  padding:40px;
  max-width:800px;
}

.svc-sheet-hero-copy h3{
  margin:0;
  font-family:'Cormorant',serif;
  font-weight:300;
  color:var(--w);
  font-size:clamp(40px,5vw,72px);
  line-height:1;
}

.svc-sheet-hero-copy p{
  margin-top:18px;
  font-family:'Cormorant',serif;
  color:var(--w2);
  font-size:clamp(20px,2vw,30px);
}

/* body */

.svc-sheet-body{
  padding:70px clamp(24px,4vw,70px);
}

/* intro */

.svc-sheet-intro{
  max-width:900px;
  margin:0 auto;
  text-align:center;
  font-family:'Cormorant',serif;
  color:var(--w2);
  font-size:clamp(22px,2vw,34px);
  line-height:1.5;
}

/* divider */

.svc-divider{
  margin:45px auto 35px;
  max-width:900px;
  position:relative;
  height:18px;
}

.svc-divider::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:50%;
  height:1px;
  background:rgba(255,255,255,.08);
}

.svc-divider span{
  position:absolute;
  left:50%;
  top:50%;
  width:12px;
  height:12px;
  transform:translate(-50%,-50%) rotate(45deg);
  border:1px solid var(--g);
  background:#0a0a0a;
}

/* grid */

.svc-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  border-top:1px solid rgba(255,255,255,.06);
  border-left:1px solid rgba(255,255,255,.06);
}

/* boxes */

.svc-box{
  appearance:none;
  border:0;
  border-right:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.06);
  background:rgba(255,255,255,.02);
  text-align:center;
  padding:40px 30px;
  cursor:pointer;
  transition:.25s ease;
  color:inherit;
}

.svc-box:hover{
  background:rgba(184,150,106,.06);
  transform:translateY(-2px);
}

/* box titles */

.svc-box h4{
  margin:0 0 10px;
  font-family:'Cormorant',serif;
  font-weight:300;
  font-size:clamp(26px,2.2vw,40px);
  color:var(--w);
}

/* box text */

.svc-box p{
  margin:0 auto;
  max-width:500px;
  font-family:'Inter',sans-serif;
  font-size:14px;
  line-height:1.7;
  color:var(--w2);
}

/* footer line */

.svc-sheet-footer{
  max-width:900px;
  margin:45px auto 0;
  text-align:center;
  font-family:'Cormorant',serif;
  color:var(--w);
  font-size:clamp(24px,2vw,36px);
}

/* modal */

.svc-modal-dialog{
  background:#111;
  border:1px solid rgba(255,255,255,.1);
}

.svc-modal-dialog h3{
  color:var(--w);
  font-family:'Cormorant',serif;
  font-weight:300;
}

.svc-modal-copy p{
  color:var(--w2);
  font-size:14px;
  line-height:1.9;
}

/* mobile */

@media (max-width:900px){

  .svc-grid{
    grid-template-columns:1fr;
  }

  .svc-sheet-body{
    padding:50px 20px;
  }

}

body.modal-open{
  overflow:hidden;
}

@media (max-width: 900px){
  .svc-grid{
    grid-template-columns:1fr;
  }

  .svc-sheet-hero{
    min-height:260px;
  }

  .svc-sheet-body{
    padding:34px 18px 40px;
  }
}

.about-editorial{
  position:relative;
  padding:120px 0;
  background:
    radial-gradient(circle at 50% 20%, rgba(140,96,45,.16), transparent 38%),
    linear-gradient(180deg, #080808 0%, #0c0908 40%, #080808 100%);
  color:#f4eee7;
  overflow:hidden;
}

.about-editorial::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(to bottom, rgba(201,158,92,.06), transparent 14%, transparent 86%, rgba(201,158,92,.05)),
    radial-gradient(circle at 20% 30%, rgba(201,158,92,.06), transparent 28%);
}

.about-frame{
  position:relative;
  border:1px solid rgba(201,158,92,.18);
  background:rgba(18,12,10,.72);
  box-shadow:0 20px 70px rgba(0,0,0,.35);
  backdrop-filter:blur(4px);
}

.about-top{
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  min-height:620px;
}

.about-visual{
  position:relative;
  min-height:620px;
  overflow:hidden;
  border-right:1px solid rgba(201,158,92,.14);
}

.about-visual img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter:saturate(.88) contrast(1.02) brightness(.82);
}

.about-visual-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(8,8,8,.12), rgba(8,8,8,.02)),
    linear-gradient(0deg, rgba(8,8,8,.35), rgba(8,8,8,.08)),
    radial-gradient(circle at 72% 30%, rgba(201,158,92,.16), transparent 24%);
}

.about-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:72px 64px;
}

.about-eyebrow,
.about-mini-eyebrow{
  display:inline-block;
  letter-spacing:.22em;
  text-transform:uppercase;
  font-size:12px;
  color:#c89d62;
  margin-bottom:18px;
}

.about-copy h2{
  margin:0 0 22px;
  font-family:"Cormorant", serif;
  font-weight:400;
  font-size:clamp(40px, 5vw, 64px);
  line-height:.98;
  color:#f6efe7;
}

.about-copy h2 em{
  display:block;
  font-style:italic;
  font-weight:300;
  color:#ddc3a0;
}

.about-copy p{
  margin:0 0 18px;
  font-family:"Inter", sans-serif;
  font-size:15px;
  line-height:1.85;
  color:rgba(244,238,231,.82);
  max-width:620px;
}

.about-lead{
  font-size:16px;
  color:rgba(244,238,231,.92);
}

.about-principle{
  margin-top:10px;
  padding-top:18px;
  border-top:1px solid rgba(201,158,92,.14);
  font-family:"Cormorant", serif !important;
  font-size:28px !important;
  line-height:1.35 !important;
  color:#e7d2b3 !important;
}

.about-principle strong{
  font-weight:400;
  color:#f3e6d5;
}

.about-divider{
  display:flex;
  justify-content:center;
  align-items:center;
  padding:22px 0;
}

.about-divider span{
  width:140px;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(201,158,92,.55), transparent);
  position:relative;
}

.about-divider span::before{
  content:"✦";
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-54%);
  font-size:10px;
  color:#c89d62;
  background:#120c0a;
  padding:0 8px;
}

.about-trust,
.about-travelers,
.about-closing{
  padding:0 56px 56px;
}

.about-trust-head,
.about-travelers-head{
  text-align:center;
  max-width:900px;
  margin:0 auto 34px;
}

.about-trust-head h3,
.about-travelers-head h3{
  margin:0 0 14px;
  font-family:"Cormorant", serif;
  font-weight:400;
  font-size:48px;
  line-height:1.04;
  color:#f4ebe0;
}

.about-trust-head p{
  margin:0 auto;
  max-width:820px;
  font-family:"Inter", sans-serif;
  font-size:15px;
  line-height:1.8;
  color:rgba(244,238,231,.78);
}

.about-pillars{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:0;
  border:1px solid rgba(201,158,92,.12);
}

.about-pillar{
  padding:30px 24px 26px;
  border-right:1px solid rgba(201,158,92,.1);
  text-align:center;
  background:linear-gradient(180deg, rgba(255,255,255,.01), rgba(255,255,255,0));
}

.about-pillar:last-child{
  border-right:none;
}

.about-pillar h4{
  margin:0 0 10px;
  font-family:"Cormorant", serif;
  font-weight:400;
  font-size:31px;
  color:#f0dfc6;
}

.about-pillar p{
  margin:0;
  font-family:"Inter", sans-serif;
  font-size:14px;
  line-height:1.7;
  color:rgba(244,238,231,.72);
}

.about-cards{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:18px;
}

.about-card{
  background:rgba(15,10,9,.76);
  border:1px solid rgba(201,158,92,.14);
  overflow:hidden;
  transition:transform .35s ease, border-color .35s ease, box-shadow .35s ease;
}

.about-card:hover{
  transform:translateY(-6px);
  border-color:rgba(201,158,92,.34);
  box-shadow:0 18px 40px rgba(0,0,0,.28);
}

.about-card img{
  width:100%;
  aspect-ratio: .9 / 1.05;
  object-fit:cover;
  display:block;
  filter:brightness(.86) saturate(.92);
}

.about-card-body{
  padding:22px 18px 24px;
  text-align:center;
}

.about-card h4{
  margin:0 0 10px;
  font-family:"Cormorant", serif;
  font-weight:400;
  font-size:34px;
  line-height:1.05;
  color:#f4e6d2;
}

.about-card p{
  margin:0;
  font-family:"Inter", sans-serif;
  font-size:14px;
  line-height:1.7;
  color:rgba(244,238,231,.74);
}

.about-closing{
  padding-top:10px;
  text-align:center;
}

.about-closing p{
  margin:0;
  font-family:"Cormorant", serif;
  font-size:46px;
  line-height:1.18;
  color:#f4ebe1;
}

.about-closing span{
  display:block;
  margin-top:12px;
  font-size:30px;
  font-style:italic;
  color:#d9b98e;
}

@media (max-width: 1100px){
  .about-top{
    grid-template-columns:1fr;
  }

  .about-visual{
    min-height:520px;
    border-right:none;
    border-bottom:1px solid rgba(201,158,92,.14);
  }

  .about-pillars,
  .about-cards{
    grid-template-columns:repeat(2, 1fr);
  }
}

@media (max-width: 700px){
  .about-editorial{
    padding:84px 0;
  }

  .about-copy,
  .about-trust,
  .about-travelers,
  .about-closing{
    padding-left:24px;
    padding-right:24px;
  }

  .about-copy{
    padding-top:42px;
    padding-bottom:42px;
  }

  .about-copy h2{
    font-size:42px;
  }

  .about-trust-head h3,
  .about-travelers-head h3{
    font-size:36px;
  }

  .about-pillars,
  .about-cards{
    grid-template-columns:1fr;
  }

  .about-card h4{
    font-size:30px;
  }

  .about-closing p{
    font-size:32px;
  }

  .about-closing span{
    font-size:22px;
  }
}

.nav-brand{
  display:flex;
  align-items:center;
  gap:12px;
}

.nav-logo-img{
  height:25px;
  width:auto;
}

/* stacked logo text */
.nav-brand-text{
  display:flex;
  flex-direction:column;
  line-height:1;
}

/* UNLOCKED */


/* ── Signature Experiences fixed width ── */
#experiences.xp {
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

/* Mobile hamburger nav */
.nav-toggle{display:none;width:44px;height:44px;border:1px solid rgba(212,175,122,.28);border-radius:999px;background:rgba(13,13,13,.9);align-items:center;justify-content:center;gap:4px;flex-direction:column;cursor:pointer;transition:border-color .2s ease,background .2s ease}
.nav-toggle:hover{border-color:rgba(212,175,122,.5);background:rgba(18,18,18,.96)}
.nav-toggle-line{display:block;width:16px;height:1.5px;background:var(--w);border-radius:999px;transition:transform .25s ease,opacity .25s ease}
body.menu-open{overflow:hidden}
.mobile-menu{display:none;position:fixed;top:72px;left:0;right:0;z-index:699;padding:0 18px 18px;background:linear-gradient(180deg,rgba(10,10,10,.98),rgba(10,10,10,.94))}
.mobile-menu-inner{border:1px solid var(--b);background:rgba(14,14,14,.98);box-shadow:0 22px 60px rgba(0,0,0,.35);padding:16px 18px 18px;border-radius:18px}
.mobile-menu-links{list-style:none;display:grid;gap:6px;margin:0;padding:0}
.mobile-menu-links a{display:block;padding:12px 2px;color:var(--w);text-decoration:none;font-size:12px;letter-spacing:.18em;text-transform:uppercase;border-bottom:1px solid rgba(255,255,255,.06)}
.mobile-menu-links li:last-child a{border-bottom:none}
.mobile-menu-social{display:flex;gap:10px;padding-top:14px}
@media(max-width:820px){
  #nav{padding-right:20px;padding-left:20px;gap:12px}
  #nav .nav-links,#nav .nav-r{display:none}
  #nav .logo{max-width:calc(100% - 64px);font-size:clamp(16px,5vw,22px);letter-spacing:.08em}
  #nav .logo img{width:28px;height:auto;padding-right:10px!important}
  .nav-toggle{display:flex;margin-left:auto;position:relative;z-index:701}
  .mobile-menu.show{display:block}
  body.menu-open .nav-toggle-line:nth-child(1){transform:translateY(5.5px) rotate(45deg)}
  body.menu-open .nav-toggle-line:nth-child(2){opacity:0}
  body.menu-open .nav-toggle-line:nth-child(3){transform:translateY(-5.5px) rotate(-45deg)}
}
@media(min-width:821px){.mobile-menu{display:none!important}}
@media(max-width:640px){footer{padding:48px 24px 32px}}


/* =========================
   MOBILE MENU + FOOTER FIXES
   ========================= */
/* Mobile menu + footer fixes */
.mobile-menu-backdrop{display:none}
@media(max-width:820px){
  .mobile-menu-backdrop{
    position:fixed;inset:64px 0 0;z-index:698;
    background:rgba(0,0,0,.52);backdrop-filter:blur(8px)
  }
  .mobile-menu{
    top:64px;
    max-height:calc(100vh - 64px);
    overflow:auto;
    padding:12px 16px 20px;
    background:transparent;
  }
  .mobile-menu-inner{
    border-radius:22px;
    padding:14px 16px 18px;
  }
  .mobile-menu-links{gap:0}
  .mobile-menu-links a{
    padding:14px 4px;
    font-size:11px;
    letter-spacing:.2em;
  }
  .mobile-menu-social{
    padding-top:16px;
    flex-wrap:wrap;
  }
  .mobile-menu-social .nav-icon{
    width:40px;height:40px;
    justify-content:center;
    border:1px solid rgba(240,236,230,.1);
    border-radius:999px;
    background:rgba(255,255,255,.02);
  }
  .mobile-menu.show{display:block}
  .mobile-menu-backdrop.show{display:block}

  footer{padding:44px 20px 28px}
  .ft-grid{
    grid-template-columns:1fr;
    gap:30px;
    padding-bottom:30px;
  }
  .ft-brand{font-size:18px;letter-spacing:.18em;margin-bottom:12px}
  .ft-manifesto{max-width:none;font-size:15px;line-height:1.8}
  .ft-col-lbl{margin-bottom:12px}
  .ft-links li{margin-bottom:12px}
  .ft-links a{font-size:15px;line-height:1.5}
  .ft-bot{
    flex-direction:column;
    align-items:flex-start;
    gap:14px;
    padding-top:20px;
  }
  .ft-copy{font-size:11px;line-height:1.7}
  .ft-legal{
    width:100%;
    flex-wrap:wrap;
    gap:14px 18px;
  }
  .ft-legal a{font-size:11px}
}


/* =========================
   ABOUT / ANCHORS / NAV SUPPORT
   ========================= */
html { scroll-behavior: smooth; }
#events { scroll-margin-top: 120px; }
#events-anchor { scroll-margin-top: 120px; }
nav{position:fixed;top:0;left:0;right:0;z-index:500;height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 72px;transition:background .4s,border .4s}
nav.sc{background:rgba(14,12,9,.96);border-bottom:1px solid rgba(201,169,110,.12);backdrop-filter:blur(20px)}
.logo{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:300;font-style:normal;letter-spacing:.08em;color:#e8d5a3;text-decoration:none;display:flex;align-items:center;gap:0;white-space:nowrap;line-height:1;}
.logo img{height:22px;width:auto;opacity:0.92;display:block;flex-shrink:0;}
.logo-divider{width:1px;height:22px;background:linear-gradient(to bottom,transparent,rgba(201,169,110,.5) 25%,rgba(201,169,110,.5) 75%,transparent);margin:0 16px;flex-shrink:0;}
.logo em{color:var(--cream);font-style:inherit;font-weight:inherit;}
.nav-links{display:flex;gap:36px;list-style:none}
.nav-links a{font-size:9.5px;font-weight:400;letter-spacing:.22em;text-transform:uppercase;color:var(--cream,#F5EFE4);text-decoration:none;transition:color .2s}
.nav-links a:hover,.nav-links a.active{color:#C9A96E}
@media(max-width:900px){.nav-links{display:none}}
.nav-r{display:flex;align-items:center;gap:14px}
.nav-icon{color:var(--cream,#F5EFE4);text-decoration:none;transition:color .2s;display:flex;align-items:center;font-size:15px}
.nav-icon:hover{color:#C9A96E}
@media(max-width:1100px){nav{padding:0 36px}}
@media(max-width:768px){nav{padding:0 22px}}

.experiences-blank,
.events-blank{padding:120px 72px;background:var(--ink,#0E0C09);border-top:1px solid rgba(255,255,255,.04);}
.experiences-blank .wrap,
.events-blank .wrap{min-height:180px;border:1px dashed rgba(201,169,110,.22);border-radius:18px;}
@media(max-width:768px){
  .experiences-blank,
  .events-blank{padding:80px 22px;}
  .experiences-blank .wrap,
  .events-blank .wrap{min-height:140px;}
}


/* =========================
   WHO WE ADDRESS
   ========================= */
.wws-simple{padding:100px 80px;background:var(--ink,#0E0C09);}
.wws-simple-intro{max-width:640px;margin-bottom:72px;}
.wws-simple-eyebrow{font-size:9px;letter-spacing:.45em;text-transform:uppercase;color:#C9A96E;margin-bottom:20px;font-weight:300;display:block;}
.wws-simple-title{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,3.5vw,3.2rem);font-weight:300;line-height:1.1;color:#F5EFE4;margin-bottom:24px;}
.wws-simple-title em{font-style:italic;color:#DEC080;}
.wws-simple-body{font-size:.85rem;line-height:2;color:rgba(245,239,228,.5);}
.wws-simple-body strong{color:rgba(245,239,228,.8);font-weight:400;}
.trav-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;}
.trav-card{padding:48px 36px;border:1px solid rgba(255,255,255,.05);position:relative;overflow:hidden;transition:border-color .4s,background .4s;}
.trav-card:hover{background:rgba(255,255,255,.02);}
.trav-marker{width:6px;height:6px;border-radius:50%;margin-bottom:32px;}
.trav-type{font-family:'Cormorant Garamond',serif;font-size:1.6rem;font-weight:300;color:#F5EFE4;margin-bottom:10px;line-height:1.2;}
.trav-motto{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:.9rem;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.07);line-height:1.5;}
.trav-body{font-size:.75rem;line-height:1.85;color:rgba(245,239,228,.4);}
.trav-card.solo .trav-marker{background:#F5EFE4;}
.trav-card.solo .trav-motto{color:rgba(245,239,228,.45);}
.trav-card.solo:hover{border-color:rgba(255,255,255,.15);}
.trav-card.couple .trav-marker{background:#C9A96E;}
.trav-card.couple .trav-motto{color:#DEC080;}
.trav-card.couple:hover{border-color:rgba(201,169,110,.3);}
.trav-card.group .trav-marker{background:#8A9E8C;}
.trav-card.group .trav-motto{color:#B5C8B7;}
.trav-card.group:hover{border-color:rgba(138,158,140,.3);}
.trav-card.girls .trav-marker{background:#C9896A;}
.trav-card.girls .trav-motto{color:#E8C4B0;}
.trav-card.girls:hover{border-color:rgba(201,137,106,.3);}
@media(max-width:960px){.trav-grid{grid-template-columns:1fr 1fr;}.wws-simple{padding:80px 36px;}}
@media(max-width:768px){.wws-simple{padding:64px 5vw;}.wws-simple-title{font-size:clamp(28px,7vw,42px);}}
@media(max-width:600px){.trav-grid{grid-template-columns:1fr;}.wws-simple{padding:52px 4vw;}.trav-card{padding:36px 24px;}}


/* =========================
   SERVICES
   ========================= */
:root {
  --d-bg:#F0EAE0; --d-ink:#1C1814; --d-accent:#8C7355; --d-mid:#C8BFB0;
  --e-bg:#08070F; --e-accent:var(--gold,#C9A96E); --e-soft:#9E8A6A;
  --c-bg:#110F09; --c-accent:#9A7A3A; --c-soft:#C8A96E;
}
.svc-intro{padding-top:80px;background:var(--ink,#0E0C09);}
.svc-service-cards{display:grid;grid-template-columns:repeat(3,1fr);width:100%;gap:2px;padding:0 72px 80px;box-sizing:border-box;}
.sc-entry{position:relative;overflow:hidden;display:flex;flex-direction:column;padding:0;text-decoration:none;border:1px solid rgba(255,255,255,.05);transition:border-color .4s;}
.sc-entry:hover{border-color:rgba(255,255,255,.14);}
.sc-entry-img{height:260px;overflow:hidden;position:relative;}
.sc-entry-img img{width:100%;height:100%;object-fit:cover;filter:brightness(.55) saturate(.8);display:block;transition:transform .9s ease,filter .9s ease;}
.sc-entry:hover .sc-entry-img img{transform:scale(1.07);filter:brightness(.7) saturate(1);}
.sc-entry-img::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(7,6,10,.8) 0%,transparent 60%);}
.sc-entry-body{padding:32px 28px 36px;position:relative;flex:1;display:flex;flex-direction:column;}
.sc-tag{font-size:9px;letter-spacing:.4em;text-transform:uppercase;margin-bottom:12px;font-weight:300;}
.sc-name{font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:300;color:var(--cream,#F5EFE4);margin-bottom:10px;line-height:1.1;}
.sc-strapline{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:.88rem;line-height:1.55;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.07);}
.sc-desc{font-size:.72rem;line-height:1.8;color:rgba(245,239,228,.42);flex:1;}
.sc-cta{margin-top:24px;font-size:9px;letter-spacing:.35em;text-transform:uppercase;display:inline-flex;align-items:center;gap:8px;transition:gap .3s;}
.sc-entry:hover .sc-cta{gap:14px;}
.sc-d .sc-entry-body{background:var(--d-bg);}
.sc-d .sc-tag{color:var(--d-accent);}
.sc-d .sc-name{color:var(--d-ink);}
.sc-d .sc-strapline{color:rgba(140,115,85,.6);border-bottom-color:rgba(26,23,20,.1);}
.sc-d .sc-desc{color:rgba(26,23,20,.48);}
.sc-d .sc-cta{color:var(--d-accent);}
.sc-d:hover{border-color:rgba(140,115,85,.3);}
.sc-e .sc-entry-body{background:var(--e-bg);}
.sc-e .sc-tag{color:var(--gold,#C9A96E);}
.sc-e .sc-strapline{color:var(--e-soft);border-bottom-color:rgba(201,169,110,.1);}
.sc-e .sc-desc{color:rgba(245,239,228,.42);}
.sc-e .sc-cta{color:#E8D5A3;}
.sc-e:hover{border-color:rgba(201,169,110,.28);}
.sc-c .sc-entry-body{background:var(--c-bg);}
.sc-c .sc-tag{color:var(--c-soft);}
.sc-c .sc-strapline{color:rgba(200,169,110,.55);border-bottom-color:rgba(154,122,58,.12);}
.sc-c .sc-desc{color:rgba(245,239,228,.42);}
.sc-c .sc-cta{color:var(--c-soft);}
.sc-c:hover{border-color:rgba(154,122,58,.3);}





.svc-banner{position:relative;height:70vh;overflow:hidden;display:flex;align-items:flex-end;}
.svc-banner-bg{position:absolute;inset:0;background-size:cover;background-position:center;animation:svcZoom 24s ease-in-out infinite alternate;}
@keyframes svcZoom{from{transform:scale(1);}to{transform:scale(1.06);}}
.banner-inner{position:relative;z-index:2;padding:0 72px 60px;width:100%;display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:end;}
.banner-kicker{font-size:9px;letter-spacing:.48em;text-transform:uppercase;font-weight:300;margin-bottom:14px;}
.banner-h{font-family:'Cormorant Garamond',serif;font-size:clamp(2.8rem,5.5vw,5rem);font-weight:300;line-height:.95;color:var(--cream,#F5EFE4);}
.banner-h em{font-style:italic;}
.banner-right-body{font-size:13px;line-height:1.95;color:rgba(245,239,228,.42);}
.banner-right-body strong{color:rgba(245,239,228,.72);font-weight:400;}

.svc-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:0 72px;box-sizing:border-box;}
.detail-card{padding:48px 42px;position:relative;overflow:hidden;transition:background .4s;border-right:1px solid rgba(128,128,128,.08);}
.detail-card:last-child{border-right:none;}
.detail-card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;transform:scaleX(0);transform-origin:left;transition:transform .5s;}
.detail-card:hover::before{transform:scaleX(1);}
.dc-n{font-family:'Cormorant Garamond',serif;font-size:2.8rem;font-weight:300;line-height:1;margin-bottom:14px;}
.dc-t{font-family:'Cormorant Garamond',serif;font-size:1.35rem;margin-bottom:8px;}
.dc-m{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:.84rem;margin-bottom:12px;padding-bottom:12px;line-height:1.5;}
.dc-b{font-size:.71rem;line-height:1.87;}

.svc-meta{padding:28px 72px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.04);}
.meta-label{font-size:9px;letter-spacing:.38em;text-transform:uppercase;margin-right:6px;opacity:.3;}
.meta-tag{font-size:9px;letter-spacing:.22em;text-transform:uppercase;padding:5px 14px;border:1px solid rgba(255,255,255,.07);color:rgba(255,255,255,.35);transition:all .3s;cursor:default;}
.meta-tag:hover{color:var(--cream,#F5EFE4);border-color:rgba(255,255,255,.2);}

#svc-daytime .svc-banner-bg{background-image:linear-gradient(to top,rgba(240,234,224,.98) 0%,rgba(240,234,224,.55) 38%,rgba(0,0,0,.08) 100%),url('https://unlockedbydiana.com/images/white.png');}
#svc-daytime .banner-kicker{color:var(--d-accent);}
#svc-daytime .banner-h{color:var(--d-ink);}
#svc-daytime .banner-h em{color:var(--d-accent);}
#svc-daytime .banner-right-body{color:rgba(28,24,20,.5);}
#svc-daytime .banner-right-body strong{color:rgba(28,24,20,.82);}
#svc-daytime .svc-detail-grid{background:var(--d-bg);}
#svc-daytime .detail-card{background:var(--d-bg);color:var(--d-ink);}
#svc-daytime .detail-card::before{background:var(--d-accent);}
#svc-daytime .detail-card:hover{background:#E8E2D8;}
#svc-daytime .dc-n{color:rgba(26,23,20,.06);}
#svc-daytime .dc-t{color:var(--d-ink);}
#svc-daytime .dc-m{color:rgba(140,115,85,.6);border-bottom:1px solid rgba(26,23,20,.1);}
#svc-daytime .dc-b{color:rgba(26,23,20,.46);}
#svc-daytime .svc-meta{background:var(--d-bg);border-top-color:rgba(26,23,20,.08);}
#svc-daytime .meta-label{color:rgba(26,23,20,.3);}
#svc-daytime .meta-tag{border-color:rgba(26,23,20,.1);color:rgba(26,23,20,.38);}
#svc-daytime .meta-tag:hover{color:var(--d-ink);border-color:rgba(26,23,20,.28);}

#svc-evening .svc-banner-bg{background-image:linear-gradient(to top,rgba(8,7,15,1) 0%,rgba(8,7,15,.55) 40%,transparent 100%),url('https://unlockedbydiana.com/images/black.jpg');}
#svc-evening .banner-kicker{color:var(--gold,#C9A96E);}
#svc-evening .banner-h em{color:#E8D5A3;}
#svc-evening .svc-detail-grid{background:var(--e-bg);}
#svc-evening .detail-card{background:var(--e-bg);}
#svc-evening .detail-card::before{background:var(--gold,#C9A96E);}
#svc-evening .detail-card:hover{background:#0C0B16;}
#svc-evening .dc-n{color:rgba(201,169,110,.06);}
#svc-evening .dc-t{color:var(--cream,#F5EFE4);}
#svc-evening .dc-m{color:var(--e-soft);border-bottom:1px solid rgba(201,169,110,.1);}
#svc-evening .dc-b{color:rgba(245,239,228,.42);}
#svc-evening .svc-meta{background:var(--e-bg);}

#svc-corporate .svc-banner-bg{background-image:linear-gradient(to top,rgba(17,15,9,1) 0%,rgba(17,15,9,.58) 40%,transparent 100%),url('https://unlockedbydiana.com/images/corporate2.jpg');}
#svc-corporate .banner-kicker{color:var(--c-soft);}
#svc-corporate .banner-h em{color:var(--c-soft);}
#svc-corporate .svc-detail-grid{background:var(--c-bg);}
#svc-corporate .detail-card{background:var(--c-bg);}
#svc-corporate .detail-card::before{background:var(--c-accent);}
#svc-corporate .detail-card:hover{background:#161208;}
#svc-corporate .dc-n{color:rgba(154,122,58,.07);}
#svc-corporate .dc-t{color:var(--cream,#F5EFE4);}
#svc-corporate .dc-m{color:rgba(200,169,110,.55);border-bottom:1px solid rgba(154,122,58,.12);}
#svc-corporate .dc-b{color:rgba(245,239,228,.42);}
#svc-corporate .svc-meta{background:var(--c-bg);border-top-color:rgba(154,122,58,.1);}
#svc-corporate .meta-label{color:rgba(200,169,110,.28);}
#svc-corporate .meta-tag{border-color:rgba(154,122,58,.14);color:rgba(200,169,110,.42);}
#svc-corporate .meta-tag:hover{color:var(--c-soft);border-color:rgba(154,122,58,.32);}

#svc-daytime{background:var(--d-bg);}
#svc-evening{background:var(--e-bg);}
#svc-corporate{background:var(--c-bg);}

@media(max-width:960px){
  .svc-intro{padding-top:64px;}
  .svc-service-cards{grid-template-columns:1fr 1fr;padding-left:36px;padding-right:36px;}
  .svc-detail-grid{grid-template-columns:1fr 1fr;padding-left:36px;padding-right:36px;}
  .banner-inner{grid-template-columns:1fr;gap:20px;padding:0 36px 48px;}
  .svc-meta,
  .banner-h{font-size:clamp(2.4rem,5vw,3.8rem);}
  .svc-banner{height:60vh;}
}
@media(max-width:768px){
  .svc-service-cards{grid-template-columns:1fr;padding-left:24px;padding-right:24px;gap:2px;}
  .svc-detail-grid{grid-template-columns:1fr;padding-left:24px;padding-right:24px;}
  .banner-inner{padding:0 24px 40px;gap:16px;}
  .banner-h{font-size:clamp(2rem,8vw,3rem);}
  .banner-right-body{font-size:12px;}
  .svc-meta{padding:24px;gap:8px;}
  
  .svc-banner{height:55vh;}
  .detail-card{padding:36px 28px;}
}
@media(max-width:480px){
  .svc-service-cards{padding-left:16px;padding-right:16px;}
  .svc-detail-grid{padding-left:16px;padding-right:16px;}
  .banner-inner{padding:0 16px 32px;}
  .banner-h{font-size:clamp(1.8rem,8vw,2.6rem);}
  .svc-banner{height:50vh;min-height:320px;}
  .detail-card{padding:28px 20px;}
  .svc-meta{padding:20px 16px;}
  
  .dc-n{font-size:2rem;}
  .meta-tag{font-size:8px;padding:4px 10px;}
}


/* =========================
   REVIEWS
   ========================= */
/* Reviews module overrides for WordPress section embed */
#reviews .rv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px}
@media (max-width: 900px){
  #reviews .rv-grid{grid-template-columns:1fr !important;}
  #reviews .rv-card{width:100%;max-width:100%;}
}


/* =========================
   EXPERIENCES / EXPERIMENTAL HERO
   ========================= */
.sm-hero {
  position: relative;
  height: 100vh;
  height: 100svh;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--ink,#0E0C09);
}
.sm-hero-bg {
  position: absolute; inset: 0;
  background:
    radial-gradient(ellipse 60% 70% at 30% 60%, #1C1005 0%, transparent 60%),
    radial-gradient(ellipse 50% 50% at 80% 30%, #120C04 0%, transparent 50%);
  pointer-events: none;
}
.sm-hero-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to bottom, rgba(14,12,9,.08) 0%, rgba(14,12,9,.05) 45%, rgba(14,12,9,1) 100%);
  pointer-events: none;
}
.sm-hero-scan {
  position: absolute; inset: 0;
  background: repeating-linear-gradient(0deg, transparent, transparent 3px, rgba(0,0,0,.03) 3px, rgba(0,0,0,.03) 4px);
  opacity: .5; pointer-events: none;
}
.sm-hero-content {
  position: relative; z-index: 2;
  text-align: center; padding: 0 6vw; max-width: 1100px;
}
.sm-kicker {
  font-size: 9px; font-weight: 500;
  letter-spacing: .55em; text-transform: uppercase;
  color: #C9A96E; margin-bottom: 28px; display: block;
  opacity: 0; animation: smUp .8s .3s forwards;
}
.sm-big {
  font-family: 'Bebas Neue', sans-serif;
  font-size: clamp(72px, 14vw, 190px);
  line-height: .88; letter-spacing: .03em;
  color: #F5EFE4; display: block;
  opacity: 0; animation: smUp .9s .5s forwards;
  position: relative;
}
.sm-big::before, .sm-big::after {
  content: attr(data-text);
  position: absolute; top: 0; left: 0; right: 0;
  font-family: 'Bebas Neue', sans-serif;
  font-size: inherit; line-height: inherit; letter-spacing: inherit;
}
.sm-big::before { color: #C9A96E; clip: rect(0,9999px,0,0); animation: smGlitch1 5s 2s infinite; opacity: .35; }
.sm-big::after  { color: rgba(201,169,110,.3); clip: rect(0,9999px,0,0); animation: smGlitch2 6s 3s infinite; opacity: .25; }
.sm-rule {
  width: 1px; height: 60px;
  background: linear-gradient(to bottom, #5C4420, transparent);
  margin: 28px auto;
  opacity: 0; animation: smUp .7s .9s forwards;
}
.sm-sub {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(17px, 2.2vw, 26px); font-style: italic; font-weight: 300;
  color: rgba(245,239,228,.72); line-height: 1.45;
  opacity: 0; animation: smUp .9s 1.1s forwards;
}
.sm-scroll {
  position: absolute; bottom: 36px; left: 50%; transform: translateX(-50%);
  z-index: 2; display: flex; flex-direction: column; align-items: center; gap: 10px;
  opacity: 0; animation: smUp .7s 1.5s forwards;
}
.sm-scroll span { font-size: 9px; letter-spacing: .38em; text-transform: uppercase; color: #5C4420; }
.sm-scroll-bar {
  width: 1px; height: 48px;
  background: linear-gradient(to bottom, #5C4420, transparent);
  animation: smPulse 2.2s ease-in-out infinite;
}
@keyframes smUp    { from{opacity:0;transform:translateY(20px)} to{opacity:1;transform:translateY(0)} }
@keyframes smPulse { 0%{opacity:0;transform:scaleY(0);transform-origin:top} 50%{opacity:1} 100%{opacity:0;transform:scaleY(1)} }
@keyframes smGlitch1 {
  0%,94%{clip:rect(0,9999px,0,0);opacity:0}
  95%{clip:rect(14px,9999px,22px,0);opacity:.35;transform:translate(-2px)}
  96%{clip:rect(55px,9999px,64px,0);opacity:.35;transform:translate(2px)}
  97%{clip:rect(4px,9999px,10px,0);opacity:.35}
  98%,100%{opacity:0;clip:rect(0,9999px,0,0)}
}
@keyframes smGlitch2 {
  0%,96%{clip:rect(0,9999px,0,0);opacity:0}
  97%{clip:rect(40px,9999px,52px,0);opacity:.28;transform:translate(3px)}
  98%{clip:rect(18px,9999px,26px,0);opacity:.28;transform:translate(-2px)}
  99%,100%{opacity:0}
}
@media(max-width:768px){
  .sm-hero{ height:100svh; }
  .sm-hero-content{ padding:0 8vw; }
  .sm-kicker{ font-size:8px; letter-spacing:.4em; margin-bottom:20px; }
  .sm-rule{ height:36px; margin:18px auto; }
  .sm-sub{ font-size:clamp(15px,4vw,20px); }
  .sm-scroll{ bottom:24px; }
}


/* =========================
   EVENTS
   ========================= */
.evd-shell{box-sizing:border-box;width:min(1380px,calc(100% - 144px));margin:0 auto;padding:0;}
.evd-topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;}
.evd-drag-hint{font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:rgba(245,239,228,.5);white-space:nowrap;padding-bottom:8px;flex:0 0 auto;}
.evd-scroll{overflow-x:auto;overflow-y:hidden;padding:0 0 8px 0;-webkit-overflow-scrolling:touch;width:100%;margin:0;}
.evd-months{min-width:max-content;width:max-content;display:inline-flex;margin:0 !important;padding:0 !important;}
.evd-months > .evd-month:first-child{margin-left:0 !important;}
@media(max-width:1330px){.evd-shell{width:calc(100% - 144px);}}
@media(max-width:1100px){.evd-shell{width:calc(100% - 96px);}}
#events{scroll-margin-top:120px;}
@media(max-width:768px){
  .evd-shell{width:calc(100% - 32px);}
  .evd-topbar{align-items:flex-start;flex-direction:column;gap:12px;}
  .evd-drag-hint{align-self:flex-end;padding-bottom:0;}
  .evd-header.rr{padding:40px 0 20px !important;}
  .evd-months{gap:0;}
  .evd-month{min-width:280px;}
}
@media(max-width:480px){
  .evd-shell{width:calc(100% - 24px);}
  .evd-drag-hint{font-size:9px;letter-spacing:.22em;}
  .evd-month{min-width:260px;}
}


/* =========================
   EXPERIENCES SECTION
   ========================= */
.xp-section, .xp-modal-overlay{
  --gold:#C9A96E;
  --gold2:#E8D5A3;
  --gold-dim:#5C4420;
  --cream:#F5EFE4;
  --ink:#0E0C09;
  --ink2:#1A1710;
  --ink3:#252118;
  --w70:rgba(245,239,228,.72);
  --w40:rgba(245,239,228,.42);
  --w15:rgba(245,239,228,.1);
}
/* ══════════════════════════════════════
   EXPERIENCES — LEFT SIDEBAR LAYOUT
══════════════════════════════════════ */
.xp-section { background: var(--ink); }
.xp-section-inner { width: 100%; }

.xp-header {
  padding: 64px 72px 48px;
  border-bottom: 1px solid rgba(201,169,110,.08);
  display: flex; justify-content: space-between; align-items: flex-end; gap: 40px;
}
.xp-header h2 {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(32px,4vw,54px); font-weight: 300; line-height: 1.05; color: var(--cream);
}
.xp-header h2 em { font-style: italic; color: var(--gold); }
.xp-eyelet {
  font-size: 8px; letter-spacing: .38em; text-transform: uppercase;
  color: rgba(201,169,110,.55); display: flex; align-items: center; gap: 14px; margin-bottom: 16px;
}
.xp-eyelet::before {
  content: ''; display: inline-block; width: 28px; height: 1px; background: rgba(201,169,110,.35);
}
.xp-stat {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(28px,3.5vw,42px); font-weight: 300; color: var(--gold); display: block; line-height: 1;
}
.xp-stat-label { font-size: 9px; letter-spacing: .22em; text-transform: uppercase; color: var(--w40); display: block; margin-top: 6px; }

/* Left Sidebar */
.l1-body { display: grid; grid-template-columns: 260px 1fr; padding-left: 72px; }
.l1-body > .l1-content { min-height: calc(100vh - 64px); }
.l1-sidebar {
  position: sticky; top: 64px;
  height: calc(100vh - 64px);
  border-right: 1px solid rgba(201,169,110,.08);
  display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; gap: 0; padding: 0;
  overflow-y: auto; scrollbar-width: none;
}
.l1-sidebar::-webkit-scrollbar { display: none; }
.l1-cat {
  width: 100%; background: none; border: none;
  border-left: 3px solid transparent;
  padding: 18px 32px; text-align: left; cursor: pointer;
  transition: all .22s; position: relative; font-family: inherit;
  display: flex; align-items: center; gap: 8px;
}
.l1-cat:hover { background: rgba(201,169,110,.03); }
.l1-cat.on {
  border-left-color: var(--gold);
  background: linear-gradient(90deg, rgba(201,169,110,.08) 0%, transparent 100%);
}
.l1-cat-num {
  font-family: 'Cormorant Garamond', serif;
  font-size: 10px; letter-spacing: .15em; color: var(--gold); display: block; margin-bottom: 2px; opacity: .55;
}
.l1-cat-name {
  font-family: 'Cormorant Garamond', serif;
  font-size: 15px; font-weight: 300; color: var(--w40); display: block; line-height: 1.2; transition: color .2s;
}
.l1-cat-name em { font-style: italic; color: var(--gold); }
.l1-cat.on .l1-cat-name { color: var(--cream); font-weight: 400; }
.l1-cat-count {
  font-size: 8px; letter-spacing: .18em; text-transform: uppercase;
  color: var(--w40); white-space: nowrap; flex-shrink: 0; margin-left: auto;
  transition: color .2s;
}
.l1-cat.on .l1-cat-count { color: var(--gold); }
.l1-content { padding: 48px 72px 80px 56px; }
.l1-pane { display: block; }

/* Pane header */
.xp-pane-header { padding-bottom: 40px; margin-bottom: 40px; border-bottom: 1px solid rgba(201,169,110,.08); }
.xp-pane-eyelet { font-size: 9px; letter-spacing: .24em; text-transform: uppercase; color: var(--gold); display: block; margin-bottom: 12px; }
.xp-pane-title {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(28px,4vw,50px); font-weight: 300; line-height: 1.05; color: var(--cream); margin: 0 0 12px;
}
.xp-pane-title em { font-style: italic; color: var(--gold); }
.xp-pane-desc { font-size: 12px; font-weight: 300; color: var(--w40); line-height: 2; max-width: 480px; }
.xa-list { display: flex; flex-direction: column; gap: 2px; }

/* Experience cards */
.xa-item {
  display: grid; grid-template-columns: 1.6fr 1fr;
  background: var(--ink2); border: 1px solid rgba(201,169,110,.06);
  min-height: 300px; overflow: hidden; transition: border-color .3s;
}
.xa-item:hover { border-color: rgba(201,169,110,.28); }
.xa-img {
  background-size: cover; background-position: center;
  filter: brightness(.65); transition: filter .5s, transform .6s;
  min-height: 260px;
}
.xa-item:hover .xa-img { filter: brightness(.82); transform: scale(1.02); }
.xa-body { padding: 40px 48px; display: flex; flex-direction: column; justify-content: center; gap: 14px; }
.xa-num { font-family: 'Cormorant Garamond', serif; font-size: 11px; letter-spacing: .15em; color: var(--gold); opacity: .55; }
.xa-title { font-family: 'Cormorant Garamond', serif; font-size: clamp(20px,2.5vw,30px); font-weight: 300; color: var(--cream); line-height: 1.1; }
.xa-tagline { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: clamp(13px,1.4vw,17px); color: var(--gold); line-height: 1.4; }
.xa-desc { font-size: 11px; font-weight: 300; color: var(--w40); line-height: 1.9; }
.xa-duration { font-size: 8px; letter-spacing: .2em; text-transform: uppercase; color: var(--w40); padding: 5px 10px; border: 1px solid rgba(201,169,110,.1); align-self: flex-start; }
.xa-details-link {
  display: inline-flex; align-items: center; gap: 7px;
  font-size: 10px; letter-spacing: .18em; text-transform: uppercase;
  color: var(--gold); background: none; border: none;
  border-bottom: 1px solid rgba(201,169,110,.4); padding: 4px 0; cursor: pointer;
  transition: color .2s, border-color .2s; margin-top: 6px; align-self: flex-start;
  font-family: 'Jost', sans-serif;
}
.xa-details-link:hover { color: var(--cream); border-bottom-color: var(--cream); }

/* Modal */
.xp-modal-overlay {
  position: fixed; inset: 0; background: rgba(14,12,9,.9);
  backdrop-filter: blur(8px); z-index: 9998;
  display: flex; align-items: center; justify-content: center; padding: 24px;
  opacity: 0; pointer-events: none; transition: opacity .35s;
}
.xp-modal-overlay.open { opacity: 1; pointer-events: all; }
.xp-modal {
  background: var(--ink2); border: 1px solid rgba(201,169,110,.18);
  max-width: 660px; width: 100%; max-height: 88vh; overflow-y: auto;
  scrollbar-width: thin; scrollbar-color: rgba(201,169,110,.3) transparent;
  position: relative; transform: translateY(28px); transition: transform .35s;
}
.xp-modal-overlay.open .xp-modal { transform: none; }
.xp-modal-head {
  padding: 40px 48px 24px; border-bottom: 1px solid rgba(201,169,110,.08);
  position: sticky; top: 0; background: var(--ink2); z-index: 1;
}
.xp-modal-eyelet { font-size: 9px; letter-spacing: .28em; text-transform: uppercase; color: var(--gold); display: block; margin-bottom: 10px; }
.xp-modal-title { font-family: 'Cormorant Garamond', serif; font-size: clamp(22px,3vw,36px); font-weight: 300; color: var(--cream); line-height: 1.1; margin: 0 48px 0 0; }
.xp-modal-close {
  position: absolute; top: 36px; right: 40px; background: none;
  border: 1px solid rgba(201,169,110,.3); color: var(--cream);
  width: 40px; height: 40px; display: flex; align-items: center; justify-content: center;
  cursor: pointer; font-size: 16px; transition: border-color .2s, background .2s;
}
.xp-modal-close:hover { border-color: var(--gold); background: rgba(201,169,110,.08); }
.xp-modal-img { width: 100%; height: 240px; background-size: cover; background-position: center; display: none; filter: brightness(.8); }
.xp-modal-body { padding: 36px 48px 48px; }
.xp-modal-text { font-size: 12px; font-weight: 300; color: var(--w70); line-height: 2; white-space: pre-line; }
.xp-modal-enquire {
  display: inline-flex; align-items: center; gap: 10px; padding: 12px 24px;
  border: 1px solid rgba(201,169,110,.25); color: var(--w40);
  font-size: 9px; letter-spacing: .22em; text-transform: uppercase;
  transition: all .25s; margin-top: 32px; background: none; cursor: pointer;
  font-family: 'Jost', sans-serif;
}
.xp-modal-enquire:hover { border-color: var(--gold); color: var(--cream); }

/* Bottom CTA */
.xp-bottom {
  padding: 80px 72px; border-top: 1px solid rgba(201,169,110,.08);
  display: flex; align-items: center; justify-content: space-between; gap: 40px;
  background: var(--ink2);
}
.xp-bottom-q {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(18px,2vw,26px); font-style: italic; font-weight: 300;
  color: var(--w40); line-height: 1.5; max-width: 560px;
}
.xp-bottom-q em { color: var(--gold); font-style: normal; }
.btn-xp-enquire {
  flex-shrink: 0; padding: 16px 40px;
  border: 1px solid rgba(201,169,110,.35); color: var(--gold);
  font-family: 'Jost', sans-serif; font-size: 9px; font-weight: 400;
  letter-spacing: .3em; text-transform: uppercase;
  background: none; cursor: pointer; transition: all .3s; white-space: nowrap;
  position: relative; overflow: hidden;
}
.btn-xp-enquire::before {
  content: ''; position: absolute; inset: 0; background: var(--gold);
  transform: translateX(-101%); transition: transform .4s cubic-bezier(.76,0,.24,1);
}
.btn-xp-enquire:hover { color: var(--ink); }
.btn-xp-enquire:hover::before { transform: translateX(0); }
.btn-xp-enquire span { position: relative; z-index: 1; }

@media(max-width:1100px) {
  .l1-body { grid-template-columns: 200px 1fr; padding-left: 36px; }
  .xp-header { padding-left: 36px; padding-right: 36px; }
  .l1-content { padding: 36px 36px 60px 32px; }
  .xa-item { grid-template-columns: 1fr 1fr; }
}

@media(max-width:768px) {
  /* Header */
  .xp-header { flex-direction: column; align-items: flex-start; gap: 16px; padding: 40px 24px 32px; }
  .xp-header h2 { font-size: clamp(26px, 6vw, 38px); }

  /* Full-width stacked layout */
  .l1-body { grid-template-columns: 1fr; padding-left: 0; }

  /* Sidebar becomes a horizontal strip at top */
  .l1-sidebar {
    position: relative; height: auto;
    border-right: none; border-bottom: 1px solid rgba(201,169,110,.1);
    flex-direction: column; overflow-x: hidden; overflow-y: visible;
    padding: 0;
  }

  /* Destination section — horizontal scrolling pills */
  .l1-dest-eyelet { padding: 16px 24px 10px; font-size: 7px; }

  .dest-sw-btn {
    padding: 10px 24px;
    border-left: none;
    border-bottom: 2px solid transparent;
  }
  .dest-sw-btn.on {
    border-left: none;
    border-bottom-color: var(--gold);
    background: none;
  }

  .l1-dest-divider { display: none; }

  /* Content */
  .l1-content { padding: 32px 24px 60px; }
  .xa-item { grid-template-columns: 1fr; }
  .xa-img { min-height: 200px; }
  .xa-body { padding: 24px 20px; }
  .xp-bottom { flex-direction: column; align-items: flex-start; }
  .xp-pane-title { font-size: clamp(22px, 5vw, 36px); }
}

@media(max-width:480px) {
  .xp-header { padding: 32px 20px 24px; }
  .l1-content { padding: 24px 20px 48px; }
  .l1-dest-eyelet { padding: 14px 20px 8px; }
  .l1-sidebar-label { padding: 10px 20px 6px; }
  .dest-sw-btn { padding: 10px 20px; }
  .l1-cat { padding: 10px 16px; }
  .xa-body { padding: 20px 16px; }
  .xp-bottom { padding: 40px 20px; }
}


/* ── DEST SWITCHER — fully vertical, merged into sidebar ── */
.dest-switcher { display: none; } /* hidden — logic kept for JS, rendered inline */

/* Mobile select dropdowns — JS sets display:block on mobile */
.l1-dest-select,.l1-cats-select{
  display:none;
  width:calc(100% - 40px);margin:4px 20px;
  background:var(--k2);border:1px solid rgba(201,169,110,.2);
  color:var(--w);padding:11px 36px 11px 14px;
  font-family:'Inter',sans-serif;font-size:13px;font-weight:300;
  -webkit-appearance:none;appearance:none;outline:none;border-radius:0;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23b8966a'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;
}

/* Destination buttons — identical structure to .l1-cat */
.l1-dest-header { display: contents; }
.l1-dest-list { display: contents; }
.l1-dest-eyelet {
  font-size: 8px; letter-spacing: .28em; text-transform: uppercase;
  color: var(--gold); padding: 20px 32px 10px;
  border-bottom: 1px solid rgba(201,169,110,.06); margin-bottom: 4px;
  display: block; text-align: left; width: 100%;
}
.dest-sw-btn {
  width: 100%; background: none; border: none;
  border-left: 3px solid transparent;
  padding: 18px 32px; text-align: left; cursor: pointer;
  transition: all .22s; position: relative; font-family: inherit;
  display: flex; align-items: center; justify-content: space-between; gap: 8px;
}
.dest-sw-btn:hover { background: rgba(201,169,110,.03); }
.dest-sw-btn.on {
  border-left-color: var(--gold);
  background: linear-gradient(90deg, rgba(201,169,110,.08) 0%, transparent 100%);
}
.dest-sw-name {
  font-family: 'Cormorant Garamond', serif;
  font-size: 15px; font-weight: 300; font-style: italic;
  color: var(--w40); transition: color .25s; line-height: 1.2; display: block;
}
.dest-sw-btn.on .dest-sw-name { color: var(--cream); font-weight: 400; }
.dest-sw-btn:not(.on):hover .dest-sw-name { color: rgba(245,239,228,.6); }
.dest-sw-count-label {
  font-size: 8px; letter-spacing: .18em; text-transform: uppercase;
  color: var(--w40); white-space: nowrap; flex-shrink: 0;
}
.dest-sw-btn.on .dest-sw-count-label { color: var(--gold); }
.l1-dest-divider {
  height: 1px; background: rgba(201,169,110,.08); margin: 4px 0;
}
.l1-sidebar-label {
  font-size: 8px; letter-spacing: .28em; text-transform: uppercase;
  color: var(--gold); padding: 16px 32px 10px;
  border-bottom: 1px solid rgba(201,169,110,.06); margin-bottom: 4px;
  display: block; text-align: left; width: 100%;
}




/* Experiences mobile fix */
@media (max-width: 768px) {
  #experiences,
  #experiences .xp-section-inner {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
  }

  #experiences .xp-header {
    padding: 36px 20px 28px !important;
    gap: 14px !important;
    align-items: flex-start !important;
  }

  #experiences .xp-header > div:last-child,
  #experiences .xp-header > [style] {
    text-align: left !important;
    width: 100%;
  }

  #experiences .xp-header h2 {
    margin: 0;
    font-size: clamp(24px, 9vw, 38px) !important;
    line-height: 1.08 !important;
    max-width: 11ch;
    text-wrap: balance;
  }

  #experiences .xp-eyelet {
    margin-bottom: 12px;
    gap: 10px;
    letter-spacing: .28em;
  }

  #experiences .xp-eyelet::before {
    width: 20px;
  }

  #experiences .xp-stat {
    font-size: 26px !important;
    display: inline !important;
    margin-right: 8px;
  }

  #experiences .xp-stat-label {
    font-size: 8px;
    letter-spacing: .18em;
    display: inline !important;
    margin-top: 0;
    vertical-align: middle;
  }

  #experiences .l1-body {
    display: block !important;
    padding-left: 0 !important;
  }

  #experiences .l1-sidebar {
    position: relative !important;
    top: auto !important;
    height: auto !important;
    min-height: 0 !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(201,169,110,.10) !important;
    overflow: visible !important;
  }

  #experiences .l1-dest-eyelet,
  #experiences .l1-sidebar-label {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }


  #experiences .l1-dest-list-wrap::-webkit-scrollbar,
  #experiences .l1-cats-wrap::-webkit-scrollbar {
    display: none;
  }

  #experiences .dest-sw-btn,
  #experiences .l1-cat {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    border-left: 0 !important;
    border-bottom: 2px solid transparent !important;
    background: transparent !important;
    padding: 12px 18px !important;
    align-items: flex-start !important;
  }

  #experiences .dest-sw-btn.on,
  #experiences .l1-cat.on {
    border-bottom-color: var(--gold) !important;
    background: transparent !important;
  }

  #experiences .dest-sw-name,
  #experiences .l1-cat-name {
    font-size: 14px !important;
    line-height: 1.18 !important;
    white-space: nowrap;
  }

  #experiences .dest-sw-count-label,
  #experiences .l1-cat-count {
    display: inline-block !important;
    margin-left: 8px !important;
    font-size: 8px !important;
    letter-spacing: .14em !important;
    white-space: nowrap;
  }

  #experiences .l1-content {
    padding: 28px 20px 48px !important;
    min-height: 0 !important;
  }

  #experiences .xp-pane-header {
    padding-bottom: 28px !important;
    margin-bottom: 28px !important;
  }

  #experiences .xp-pane-title {
    font-size: clamp(20px, 10vw, 34px) !important;
    line-height: 1.06 !important;
    margin-bottom: 10px !important;
    max-width: 100%;
    text-wrap: balance;
  }

  #experiences .xp-pane-desc {
    font-size: 11px !important;
    line-height: 1.8 !important;
    max-width: 100% !important;
  }

  #experiences .xa-item {
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
  }

  #experiences .xa-img {
    min-height: 210px !important;
  }

  #experiences .xa-body {
    padding: 22px 18px !important;
    gap: 10px !important;
  }

  #experiences .xa-title {
    font-size: clamp(20px, 7vw, 28px) !important;
  }

  #experiences .xa-tagline {
    font-size: 15px !important;
  }

  #experiences .xa-desc {
    font-size: 11px !important;
    line-height: 1.75 !important;
  }

  #experiences .xp-modal-overlay {
    padding: 12px;
  }

  #experiences + .xp-modal-overlay .xp-modal-head,
  .xp-modal-head {
    padding: 28px 20px 18px;
  }

  #experiences + .xp-modal-overlay .xp-modal-title,
  .xp-modal-title {
    margin-right: 44px;
  }

  #experiences + .xp-modal-overlay .xp-modal-close,
  .xp-modal-close {
    top: 22px;
    right: 20px;
  }

  #experiences + .xp-modal-overlay .xp-modal-img,
  .xp-modal-img {
    height: 190px;
  }

  #experiences + .xp-modal-overlay .xp-modal-body,
  .xp-modal-body {
    padding: 24px 20px 28px;
  }
}

/* ══════════════════════════════════
   GOLD ACCENT — restored to site default
   ══════════════════════════════════ */
:root {
  --cr: var(--g);
  --cr2: var(--g2);
  --cr3: rgba(184,150,106,.08);
  --cr-light: var(--g);
}

/* ── Va slider right panel indicator line ── */
.va-pip-line { background: var(--w3) !important; }

/* ══════════════════════════════════
   FOLLOW DIANA — drag to scroll UX
   ══════════════════════════════════ */
.evd-drag-hint {
  position: relative;
  display: flex !important;
  align-items: center;
  gap: 10px;
  font-size: 9px !important;
  letter-spacing: .36em !important;
  text-transform: uppercase;
  color: var(--cr) !important;
  font-weight: 400;
  padding: 8px 14px !important;
  border: 1px solid rgba(184,150,106,.3);
  background: rgba(184,150,106,.05);
  cursor: grab;
  transition: all .25s;
}
.evd-drag-hint::before {
  content: '↔';
  font-size: 14px;
  letter-spacing: 0;
  color: var(--cr-light);
  animation: dragPulse 2s ease-in-out infinite;
}
.evd-drag-hint::after {
  content: '';
  position: absolute;
  bottom: -4px;
  left: 14px;
  right: 14px;
  height: 1px;
  background: linear-gradient(to right, transparent, var(--cr), transparent);
  opacity: .5;
}
@keyframes dragPulse {
  0%, 100% { transform: translateX(0); opacity: .7; }
  40% { transform: translateX(-4px); opacity: 1; }
  60% { transform: translateX(4px); opacity: 1; }
}

/* evd scroll rail — add scrollbar visible track */
.evd-scroll {
  cursor: grab !important;
}
.evd-scroll:active {
  cursor: grabbing !important;
}

/* ══════════════════════════════════
   PERFORMANCE — will-change hints
   ══════════════════════════════════ */
.hero-scene, .ea-bg, .va-img, .vb-img, .sp-img, .gv-bg, .pf-bg {
  will-change: opacity, transform;
}
.rr {
  will-change: opacity, transform;
}
/* Reduce repaints on hover images */
.gm-card img, .pg-cell img, .vida-cell video, .vd-img, .sp-img {
  transform: translateZ(0);
}

/* ── Match Who We Address padding on Events and Contact ── */
.evd-shell { padding-left:80px !important; padding-right:80px !important; box-sizing:border-box; width:100% !important; max-width:none !important; }
.ct-wrap   { padding-left:80px !important; padding-right:80px !important; box-sizing:border-box; width:100% !important; max-width:none !important; }
#reviews.sec { padding-left:80px !important; padding-right:80px !important; }
#reviews .in  { box-sizing:border-box; width:100% !important; max-width:none !important; }
#about-us .wrap { padding-left:80px !important; padding-right:80px !important; box-sizing:border-box; width:100% !important; max-width:none !important; margin:0 !important; }
@media(max-width:960px){ .evd-shell, .ct-wrap, #reviews.sec, #about-us .wrap { padding-left:36px !important; padding-right:36px !important; } }
@media(max-width:768px){ .evd-shell, .ct-wrap, #reviews.sec, #about-us .wrap { padding-left:5vw  !important; padding-right:5vw  !important; } }
@media(max-width:600px){ .evd-shell, .ct-wrap, #reviews.sec, #about-us .wrap { padding-left:4vw  !important; padding-right:4vw  !important; } }

/* ══ GLOBAL SMOOTHNESS ══ */
* { -webkit-tap-highlight-color: transparent; }
html { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

/* Smooth image rendering */
img, video { image-rendering: -webkit-optimize-contrast; }

/* Reduce layout thrash on scroll-heavy sections */
.hero-scroll, .ea-scroll, .gv-scroll { contain: layout style; }

/* ══ CRIMSON — nav active link ══ */
.nav-links a.active { color: var(--cr-light) !important; }

/* ══ FOLLOW DIANA — stronger drag affordance ══ */
.evd-topbar {
  position: relative;
}
.evd-topbar::after {
  content: '← drag →';
  position: absolute;
  bottom: -32px;
  right: 0;
  font-size: 8px;
  letter-spacing: .38em;
  text-transform: uppercase;
  color: rgba(184,150,106,.45);
  pointer-events: none;
}

/* ══ EVENTS → CONTACT spacer visual ══ */
#contact {
  position: relative;
}
#contact::before {
  content: '';
  position: absolute;
  top: -60px;
  left: 50%;
  transform: translateX(-50%);
  width: 1px;
  height: 48px;
  background: linear-gradient(to bottom, transparent, rgba(184,150,106,.35));
  pointer-events: none;
}

/* ══ FOOTER top border crimson glow ══ */
footer {
  border-top: 1px solid rgba(184,150,106,.15) !important;
}

/* ── CONTACT TRUST + PAYMENTS ── */
.ct-trust{margin-top:36px;padding-top:32px;border-top:1px solid var(--b2)}
.ct-trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px;margin-bottom:28px}
.ct-trust-item{background:var(--k4);padding:16px 18px;border:1px solid rgba(240,236,230,.08)}
.ct-trust-val{font-family:'Cormorant',serif;font-size:26px;font-weight:300;color:var(--g) !important;display:block !important;line-height:1;margin-bottom:5px}
.ct-trust-desc{font-size:10px;font-weight:300;color:var(--w3);letter-spacing:.04em;line-height:1.45;display:block}
.ct-pay-label{font-size:8px;letter-spacing:.28em;text-transform:uppercase;color:var(--w3);margin-bottom:14px;display:block}
.ct-pay-logos{display:flex;align-items:center;flex-wrap:wrap;gap:20px}
.ct-pay-logo{display:inline-flex;align-items:center;gap:8px;opacity:.7;transition:opacity .2s;text-decoration:none}
.ct-pay-logo:hover{opacity:1}
.ct-pay-logo svg{height:24px;width:auto}
.ct-pay-name{font-size:13px;font-weight:400;color:var(--w)}
.ct-pay-logo--paypal .ct-pay-name{background:linear-gradient(180deg,#009cde,#003087);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

/* ── GOOGLE REVIEW SECTION ── */
.gr-wrap{width:min(1280px,calc(100% - 112px));margin:0 auto}
.gr-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
@media(max-width:768px){.gr-inner{grid-template-columns:1fr;gap:40px}}
@media(max-width:640px){.gr-wrap{width:calc(100% - 48px)}}
.gr-stars{display:flex;align-items:center;gap:5px;margin-bottom:24px}
.gr-star{color:var(--g);font-size:20px}
.gr-count{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--w3);margin-left:6px}
.gr-btn{display:inline-flex;align-items:center;gap:12px;background:var(--w);color:var(--k);font-size:9.5px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;padding:15px 32px;text-decoration:none;transition:background .25s}
.gr-btn:hover{background:var(--g)}
.gr-btn svg{width:18px;height:18px;flex-shrink:0}
.gr-note{margin-top:14px;font-size:11px;color:var(--w3);line-height:1.6}
.gr-card{background:var(--k3);border:1px solid var(--b2);padding:36px 32px;position:relative}
.gr-card::before{content:'\201C';font-family:'Cormorant',serif;font-size:90px;font-weight:300;color:rgba(184,150,106,.12);line-height:.5;position:absolute;top:20px;left:24px;pointer-events:none}
.gr-card-text{font-family:'Cormorant',serif;font-style:italic;font-size:17px;font-weight:300;color:var(--w2);line-height:1.65;margin-bottom:28px;padding-top:16px}
.gr-card-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.gr-card-avatar{width:38px;height:38px;border-radius:50%;background:var(--g2);border:1px solid rgba(184,150,106,.25);display:flex;align-items:center;justify-content:center;font-family:'Cormorant',serif;font-size:15px;color:var(--g);flex-shrink:0}
.gr-card-meta{display:flex;flex-direction:column;flex:1;gap:2px}
.gr-card-name{font-size:12.5px;font-weight:400;color:var(--w2)}
.gr-card-platform{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--w3)}
.gr-card-glogo{width:20px;height:20px;flex-shrink:0;margin-left:auto;display:block;overflow:hidden}
.gr-avatar{width:38px;height:38px;border-radius:50%;background:var(--g2);border:1px solid rgba(184,150,106,.25);display:flex;align-items:center;justify-content:center;font-family:'Cormorant',serif;font-size:15px;color:var(--g);flex-shrink:0}
.gr-name{font-size:12.5px;font-weight:400;color:var(--w2)}
.gr-name a{color:inherit;text-decoration:none;transition:color .2s}
.gr-name a:hover{color:var(--g)}
.gr-source{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--w3);margin-top:2px}
.gr-card-stars{color:var(--g);font-size:14px;margin-bottom:16px;letter-spacing:2px}
.gr-card-star{color:var(--g);font-size:11px}
