:root{
  --coral:#FF4D6D;--hot:#FF7A33;--gold:#FFB627;--teal:#0FD9C7;--aqua:#27E1FF;
  --deep:#06141F;--deep2:#0A2233;--navy:#0E2E40;--ink:#F2FBFF;--mute:#7FA0B3;--line:rgba(39,225,255,.14);
  --grad-sun:linear-gradient(100deg,var(--coral),var(--hot) 45%,var(--gold));
  --grad-wave:linear-gradient(120deg,var(--teal),var(--aqua));
  --grad-brand:linear-gradient(115deg,var(--coral),var(--hot) 38%,var(--gold) 60%,var(--teal) 100%);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{font-family:'Hanken Grotesk',sans-serif;background:var(--deep);color:var(--ink);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(60% 50% at 80% 0,rgba(255,77,109,.16),transparent 60%),radial-gradient(70% 60% at 20% 110%,rgba(15,217,199,.16),transparent 65%)}
.wrap{position:relative;z-index:1;max-width:1080px;margin:0 auto;padding:0 24px}
a{color:inherit}
section{padding:62px 0;border-bottom:1px solid var(--line);position:relative;z-index:1}
h2{font-family:'Unbounded',sans-serif;font-weight:800;font-size:clamp(24px,3.4vw,38px);letter-spacing:-.02em;line-height:1.08}
h3{font-family:'Unbounded',sans-serif;font-weight:700;font-size:20px;margin-bottom:8px}
p{color:var(--mute);font-size:17px;margin-top:14px;max-width:68ch}
.eyebrow{font-family:'Archivo',sans-serif;font-weight:700;font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--teal);display:inline-block;margin-bottom:14px}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;z-index:60;display:flex;align-items:center;justify-content:space-between;padding:13px 24px;transition:.3s;border-bottom:1px solid transparent}
.nav.scrolled{background:rgba(6,20,31,.85);backdrop-filter:blur(14px);border-bottom-color:var(--line)}
.nav .brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.nav .brand svg{height:28px}
.nav .back{font-family:'Archivo';font-weight:700;font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink);text-decoration:none;border:1px solid var(--line);padding:9px 16px;border-radius:100px;opacity:.9}
.nav .back:hover{border-color:var(--teal);color:var(--teal)}
.langbar{display:flex;gap:3px;background:rgba(6,20,31,.5);border:1px solid var(--line);border-radius:100px;padding:4px}
.lang-btn{font-family:'Archivo';font-weight:700;font-size:11px;letter-spacing:.06em;color:var(--mute);background:none;border:none;cursor:pointer;padding:6px 11px;border-radius:100px;transition:.2s}
.lang-btn:hover{color:var(--ink)}.lang-btn.active{background:var(--grad-sun);color:var(--deep)}

/* BUTTONS */
.btn{font-family:'Archivo',sans-serif;font-weight:700;font-size:14px;letter-spacing:.05em;text-transform:uppercase;border:none;border-radius:100px;padding:15px 30px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:.25s;color:var(--deep)}
.btn-primary{background:var(--grad-sun);box-shadow:0 14px 40px -12px var(--coral)}
.btn-primary:hover{transform:translateY(-3px);box-shadow:0 22px 54px -14px var(--coral)}
.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}
.btn-ghost:hover{border-color:var(--teal);color:var(--teal);transform:translateY(-3px)}

/* HERO */
.shero{min-height:74vh;display:flex;flex-direction:column;justify-content:center;border:none;padding:120px 0 70px;position:relative;overflow:hidden}
.shero .bg{position:absolute;inset:0;z-index:0}
.shero .bg img{width:100%;height:100%;object-fit:cover}
.shero .bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,20,31,.55),rgba(6,20,31,.82) 75%,var(--deep)),linear-gradient(90deg,rgba(6,20,31,.7),transparent 70%)}
.shero .ph{position:absolute;inset:0;z-index:0;background:radial-gradient(120% 100% at 80% 0,rgba(255,182,39,.3),transparent 55%),radial-gradient(120% 120% at 0 110%,rgba(15,217,199,.3),transparent 55%),linear-gradient(160deg,var(--navy),var(--deep))}
.shero .inner{position:relative;z-index:2}
.shero h1{font-family:'Unbounded',sans-serif;font-weight:900;font-size:clamp(34px,6vw,68px);line-height:1.02;letter-spacing:-.03em;max-width:18ch}
.shero .price{font-family:'Unbounded';font-weight:800;font-size:clamp(26px,4vw,40px);margin-top:18px;background:var(--grad-sun);-webkit-background-clip:text;background-clip:text;color:transparent}
.shero .price small{font-size:15px;color:var(--mute);-webkit-text-fill-color:var(--mute);font-family:'Hanken Grotesk'}
.shero .sub{color:var(--ink);max-width:60ch;margin-top:16px;font-size:19px}
.shero .cta{display:flex;gap:13px;flex-wrap:wrap;margin-top:30px}
.tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.tag{font-family:'Archivo';font-weight:700;font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:8px 14px;border-radius:100px;border:1px solid var(--line);color:var(--ink);background:rgba(15,217,199,.06)}

/* CONTENT */
.lead-2{font-size:19px;color:var(--ink);max-width:70ch}
.cols{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:34px}
@media(max-width:760px){.cols{grid-template-columns:1fr}}
.feat{border:1px solid var(--line);border-radius:18px;padding:24px;background:linear-gradient(180deg,var(--deep2),var(--deep))}
.feat .i{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-size:22px;background:rgba(15,217,199,.1);border:1px solid var(--line);margin-bottom:14px}
.gal2{display:grid;grid-template-columns:2fr 1fr;gap:14px;margin-top:34px}
@media(max-width:760px){.gal2{grid-template-columns:1fr}}
.gal2 figure{margin:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;aspect-ratio:16/10;background:linear-gradient(160deg,#0e2a3c,#06141f)}
.gal2 figure.t{aspect-ratio:3/4}
.gal2 img{width:100%;height:100%;object-fit:cover;display:block}
.svid{position:relative;border:1px solid var(--line);border-radius:20px;overflow:hidden;cursor:pointer;background:#0a1a26;aspect-ratio:16/9;margin-top:30px;display:block;width:100%;padding:0}
.svid .poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.svid .play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:74px;height:74px;border-radius:50%;background:var(--grad-sun);display:grid;place-items:center;box-shadow:0 14px 40px -8px var(--coral);transition:.25s}
.svid .play::after{content:"";border-style:solid;border-width:13px 0 13px 22px;border-color:transparent transparent transparent #06141f;margin-left:5px}
.svid:hover .play{transform:translate(-50%,-50%) scale(1.08)}
.svid .vlabel{position:absolute;left:16px;bottom:14px;font-family:'Archivo';font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);text-shadow:0 1px 8px rgba(0,0,0,.6)}
.svid video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0}
.gal2 .svid.gv{margin-top:0;aspect-ratio:3/4;border-radius:18px}
.svid.gv .play{width:54px;height:54px}
.svid.gv .play::after{border-width:10px 0 10px 16px;margin-left:4px}
.faq{margin-top:30px}
.faq details{border:1px solid var(--line);border-radius:14px;padding:16px 20px;margin-bottom:10px;background:rgba(255,255,255,.02)}
.faq summary{font-family:'Archivo';font-weight:700;cursor:pointer;font-size:16px;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"+ ";color:var(--teal)}
.faq details[open] summary::before{content:"– "}
.faq p{margin-top:10px;font-size:15px}
.note{margin-top:22px;border:1px solid rgba(255,182,39,.35);background:rgba(255,182,39,.07);border-radius:14px;padding:18px;color:var(--ink);font-size:15px}
.note b{color:var(--gold)}

/* BOOKING (reuse) */
.bk-live{margin-top:30px}
.bk-empty{color:var(--mute);padding:28px;text-align:center;border:1px dashed var(--line);border-radius:16px}
.bk-dayblock{margin-bottom:18px}
.bk-dayh{font-family:'Archivo';font-weight:700;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);margin-bottom:10px}
.bk-chips{display:flex;flex-wrap:wrap;gap:10px}
.bk-chip{font-family:'Unbounded';font-weight:700;font-size:15px;padding:12px 18px;border-radius:13px;border:1px solid rgba(15,217,199,.4);background:rgba(15,217,199,.08);color:var(--ink);cursor:pointer;transition:.2s}
.bk-chip:hover{background:var(--grad-wave);color:var(--deep);transform:translateY(-2px)}
.bk-chip.sunset{border-color:rgba(255,182,39,.5)}
.bk-modal{position:fixed;inset:0;z-index:200;background:rgba(6,20,31,.82);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:20px}
.bk-modal.open{display:flex}
.bk-box{width:430px;max-width:100%;border:1px solid var(--line);border-radius:24px;padding:32px;background:linear-gradient(160deg,var(--navy),var(--deep));position:relative;max-height:92vh;overflow:auto}
.bk-x{position:absolute;top:16px;right:18px;background:none;border:none;color:var(--mute);font-size:20px;cursor:pointer}
.bk-when{font-family:'Archivo';font-weight:700;color:var(--teal);margin:6px 0 16px}
.bk-box label{font-family:'Archivo';font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);display:block;margin:14px 0 5px}
.bk-box input,.bk-box select{width:100%;padding:13px 15px;border-radius:12px;border:1px solid var(--line);background:#0A2233;color:var(--ink);font-family:'Hanken Grotesk';font-size:15px}
.bk-box .btn{width:100%;margin-top:20px}
.bk-dep{margin-top:18px;border:1px solid rgba(255,182,39,.35);background:rgba(255,182,39,.07);border-radius:14px;padding:16px;font-size:14px}
.bk-dep b{color:var(--gold)}
.bk-err{color:#FF7A8A;font-size:13px;margin-top:10px;min-height:16px}

footer{padding:48px 0;text-align:center;border:none}
footer svg{height:30px}
.foot-tag{color:var(--mute);margin-top:12px;font-family:'Archivo';letter-spacing:.18em;text-transform:uppercase;font-size:12px}
.foot-links{margin-top:14px;display:flex;gap:16px;justify-content:center;flex-wrap:wrap;font-size:13px}
.foot-links a{color:var(--mute);text-decoration:none}.foot-links a:hover{color:var(--teal)}
