@font-face{font-family:"Bona";font-weight:400;src:url(/assets/fonts/bona-he.woff2) format("woff2");font-display:swap;unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:"Bona";font-weight:400;src:url(/assets/fonts/bona-la.woff2) format("woff2");font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-200B,U+2011-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Bona";font-weight:700;src:url(/assets/fonts/bona-he-b.woff2) format("woff2");font-display:swap;unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:"Bona";font-weight:700;src:url(/assets/fonts/bona-la-b.woff2) format("woff2");font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-200B,U+2011-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Bona";font-weight:400;font-style:italic;src:url(/assets/fonts/bona-he-i.woff2) format("woff2");font-display:swap;unicode-range:U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:"Bona";font-weight:400;font-style:italic;src:url(/assets/fonts/bona-la-i.woff2) format("woff2");font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-200B,U+2011-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --ink:#0A0D24;--night:#0E1230;--night2:#171C45;--night3:#232A63;
  --amber:#F2A94B;--candle:#FFC978;--mist:#F3EFE8;--mist2:#C9C6DD;--euca:#8FB59C;--euca2:#5E8C70;
  --r:22px;--f:"Bona",Georgia,"Times New Roman",serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;background:var(--night)}
body{margin:0;font-family:var(--f);font-size:18px;line-height:1.65;color:var(--mist);background:var(--night);overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3{font-weight:400;line-height:1.1;margin:0;letter-spacing:-.01em}
em{font-style:italic;color:var(--candle)}
.wrap{width:min(1180px,100% - 32px);margin-inline:auto}
.ltr{direction:ltr;unicode-bidi:isolate;display:inline-block}
.skip{position:absolute;top:-60px;right:16px;background:var(--candle);color:var(--ink);padding:8px 14px;border-radius:10px;z-index:99}
.skip:focus{top:10px}
:focus-visible{outline:2px solid var(--candle);outline-offset:3px;border-radius:6px}
.ey{font-size:.82rem;letter-spacing:.14em;color:var(--euca);margin:0 0 14px;display:flex;align-items:center;gap:10px}
.ey .dot{width:7px;height:7px;border-radius:50%;background:var(--candle);box-shadow:0 0 12px 3px rgba(255,201,120,.6)}
.sub,.lead{color:var(--mist2);max-width:34em}
.lead{font-size:1.12rem}
.lead b{color:var(--candle);font-weight:400;font-style:italic}
.note{font-size:.85rem;color:var(--mist2);opacity:.85}
.c{text-align:center;justify-content:center;margin-inline:auto}

/* header */
.top{position:sticky;top:0;z-index:30;background:rgba(14,18,48,.78);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,201,120,.12)}
.top .wrap{display:flex;align-items:center;gap:18px;height:64px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;min-width:0}
.brand .mark{width:36px;height:36px;flex:none}
.brand b{display:block;font-size:1.15rem;font-weight:700;line-height:1.1}
.brand small{display:block;font-size:.72rem;color:var(--mist2);letter-spacing:.04em;white-space:nowrap}
.top nav{display:none;gap:22px;margin-inline-start:auto}
.top nav a{text-decoration:none;color:var(--mist2);font-size:.95rem}
.top nav a:hover{color:var(--candle)}
.call{margin-inline-start:auto;display:flex;align-items:center;gap:8px;text-decoration:none;font-size:.95rem;color:var(--candle);border:1px solid rgba(255,201,120,.35);border-radius:999px;padding:7px 14px;white-space:nowrap}
@media (max-width:520px){.call span{display:none}.call{padding:9px}}
@media (min-width:900px){.top nav{display:flex}.call{margin-inline-start:0}}

/* buttons */
.btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:12px 24px;border-radius:999px;text-decoration:none;font-size:1.05rem;font-family:var(--f);transition:transform .25s,box-shadow .35s,background .3s}
.btn.wa{background:linear-gradient(180deg,#FFD08A,#F2A94B);color:var(--ink);font-weight:700;box-shadow:0 0 0 1px rgba(255,201,120,.4),0 10px 34px -8px rgba(242,169,75,.75)}
.btn.wa:hover{transform:translateY(-2px);box-shadow:0 0 0 1px rgba(255,201,120,.6),0 16px 44px -8px rgba(242,169,75,.95)}
.btn.ghost{color:var(--mist);border:1px solid rgba(243,239,232,.3)}
.btn.ghost:hover{border-color:var(--candle);color:var(--candle)}
.btn.full{width:100%}

/* hero */
.hero{position:relative;overflow:hidden;padding:42px 0 0;isolation:isolate;background:linear-gradient(180deg,#070A1F 0%,#10164A 45%,#2B2A6A 72%,#3B2F62 100%)}
.sky{position:absolute;inset:0;z-index:-1;pointer-events:none}
.sky .dusk{position:absolute;inset:0;background:linear-gradient(180deg,#3A3F8F 0%,#7A5A9A 50%,#E0937A 85%,#F2B47E 100%);opacity:0}
.js .hero .sky .dusk{animation:dusk 5s ease-out forwards}
@keyframes dusk{0%{opacity:.9}100%{opacity:0}}
.stars{position:absolute;inset:0}
.stars i{position:absolute;width:2px;height:2px;border-radius:50%;background:#fff;box-shadow:0 0 6px rgba(255,255,255,.8);opacity:.85}
.stars i.b{width:3px;height:3px}
.js .stars i{opacity:0;animation:star 1.2s ease-out forwards,tw 4s ease-in-out infinite alternate;animation-delay:var(--d),calc(var(--d) + 1.2s)}
@keyframes star{to{opacity:.9}}
@keyframes tw{0%{opacity:.9}100%{opacity:.35}}
.hgrid{display:grid;gap:34px;position:relative;z-index:2}
.htxt{padding-top:6px}
h1{font-size:clamp(3.4rem,15vw,7.6rem);line-height:.98;font-weight:400}
h1 em{display:block;color:var(--candle);text-shadow:0 0 38px rgba(255,201,120,.45)}
h1 .pd{color:var(--euca)}
.lead{margin:22px 0 0}
.who{margin:16px 0 0;font-size:.9rem;color:var(--euca)}
.win-frame{margin:0;position:relative}
.win-frame .ph{position:relative;border-radius:180px 180px var(--r) var(--r);overflow:hidden;aspect-ratio:4/4.6;box-shadow:0 0 0 1px rgba(255,201,120,.25),0 0 80px -10px rgba(242,169,75,.45),0 40px 80px -30px #000}
.win-frame img{width:100%;height:100%;object-fit:cover;object-position:62% 50%}
.win-frame figcaption{position:absolute;top:14px;left:50%;transform:translateX(-50%);font-size:.75rem;background:rgba(10,13,36,.6);padding:2px 10px;border-radius:999px;color:var(--mist);z-index:3}
.steam{position:absolute;inset:auto 0 0 0;height:70%;pointer-events:none;z-index:2}
.steam i{position:absolute;bottom:-20%;width:46%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(243,239,232,.32),rgba(243,239,232,0) 65%);filter:blur(8px);opacity:.5;left:calc(var(--x) * 1%)}
.steam i:nth-child(1){--x:2}.steam i:nth-child(2){--x:22}.steam i:nth-child(3){--x:44}.steam i:nth-child(4){--x:58}.steam i:nth-child(5){--x:12}.steam i:nth-child(6){--x:36}
.js .steam i{animation:steam 9s linear infinite;opacity:0}
.steam i:nth-child(2){animation-delay:-1.5s}.steam i:nth-child(3){animation-delay:-3s}.steam i:nth-child(4){animation-delay:-4.5s}.steam i:nth-child(5){animation-delay:-6s}.steam i:nth-child(6){animation-delay:-7.5s}
@keyframes steam{0%{transform:translateY(0) scale(.6);opacity:0}20%{opacity:.75}100%{transform:translateY(-120%) translateX(12%) scale(1.5);opacity:0}}
.land{position:relative;height:150px;margin-top:-96px;z-index:3;pointer-events:none}
.hills{position:absolute;inset:0;width:100%;height:100%}
.hills .h1{fill:#1B2058}.hills .h2{fill:#121641}.hills .h3{fill:var(--night)}
.house{position:absolute;width:96px;right:16%;bottom:52px;filter:drop-shadow(0 0 18px rgba(255,201,120,.55))}
.house .win{fill:#FFC978}
.js .house .win{animation:flick 3.4s ease-in-out infinite alternate}
.house .w2{animation-delay:-1.3s!important}
.js .house .glow{animation:glowp 4s ease-in-out infinite alternate}
@keyframes flick{0%,100%{fill:#FFC978}40%{fill:#F2A94B}55%{fill:#FFD99A}}
@keyframes glowp{0%{opacity:.7}100%{opacity:1}}
@media (min-width:900px){
  .hero{padding-top:70px}
  .hgrid{grid-template-columns:1fr 1.05fr;align-items:center;gap:60px}
  .win-frame .ph{aspect-ratio:4/4.2}
  .land{height:200px;margin-top:-110px}
  .house{width:84px;bottom:76px;right:44%}
}

/* breathe */
.breathe{padding:70px 0 80px;background:var(--night)}
.bgrid{display:grid;gap:34px;justify-items:center;text-align:center}
.breathe h2{font-size:clamp(2.4rem,9vw,4rem)}
.breathe .sub{margin:14px auto 0}
.breathe .ey{justify-content:center}
.orb{position:relative;width:230px;height:230px;display:grid;place-items:center}
.ring{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(143,181,156,.35)}
.r2{inset:-18px;border-color:rgba(143,181,156,.15)}
.orb .core{width:62%;height:62%;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 40% 35%,#B9D6C2,#5E8C70 70%,#3E6650);box-shadow:0 0 60px rgba(143,181,156,.45);transform:scale(.85)}
.orb .core b{grid-area:1/1;font-weight:400;font-style:italic;color:var(--ink);font-size:1.25rem}
.orb .out{opacity:0}
.js .orb .core{animation:breath 8s ease-in-out infinite}
.js .orb .in{animation:lbl-in 8s ease-in-out infinite}
.js .orb .out{animation:lbl-out 8s ease-in-out infinite}
.js .r1{animation:rp 8s ease-in-out infinite}
@keyframes breath{0%,100%{transform:scale(.72)}50%{transform:scale(1.12)}}
@keyframes rp{0%,100%{transform:scale(.9);opacity:.4}50%{transform:scale(1.08);opacity:1}}
@keyframes lbl-in{0%,44%{opacity:1}50%,94%{opacity:0}100%{opacity:1}}
@keyframes lbl-out{0%,44%{opacity:0}50%,94%{opacity:1}100%{opacity:0}}
@media (min-width:900px){.breathe .ey{justify-content:flex-start}.bgrid{grid-template-columns:auto 1fr;text-align:right;justify-items:start;gap:80px;align-items:center}.breathe .sub{margin-inline:0}}

/* experiences */
section h2{font-size:clamp(2.2rem,8.5vw,3.8rem)}
section h2 em{display:block}
.hd{margin-bottom:34px}
.hd .sub{margin:16px 0 0}
.exp{padding:80px 0;background:linear-gradient(180deg,var(--night),#0B0F2A)}
.cards{display:grid;gap:70px;padding-top:44px}
.card{position:relative;background:linear-gradient(180deg,#161B47,#10143A);border-radius:var(--r);padding:16px;border:1px solid rgba(255,201,120,.1);transition:box-shadow 1.2s ease,border-color 1.2s ease}
.card figure{margin:0;border-radius:14px;overflow:hidden;aspect-ratio:4/3}
.card img{width:100%;height:100%;object-fit:cover;filter:brightness(.62) saturate(.8);transition:filter 1.4s ease}
.card .ct{padding:18px 6px 6px}
.card h3{font-size:1.9rem;margin:2px 0 8px}
.card p{margin:0;color:var(--mist2)}
.card .no{font-size:.8rem;letter-spacing:.12em;color:var(--euca);margin:0}
.flame{position:absolute;top:-50px;left:50%;margin-left:-18px;width:36px;height:72px;z-index:3;overflow:visible;filter:drop-shadow(0 0 0 transparent);transition:filter 1s}
.card.lit .flame{filter:drop-shadow(0 0 14px rgba(255,201,120,.85))}
.flame .wax{fill:#EFE6D6}
.flame .halo{fill:rgba(255,201,120,.0);transition:fill 1s}
.flame .fl{fill:#F2A94B;opacity:.25;transform-box:fill-box;transform-origin:50% 100%;transform:scale(.4);transition:opacity .8s,transform .8s}
.flame .core{fill:#FFF3D6;opacity:0;transition:opacity .8s}
.card.lit{border-color:rgba(255,201,120,.35);box-shadow:0 0 0 1px rgba(255,201,120,.12),0 30px 70px -30px rgba(242,169,75,.55),inset 0 1px 40px -20px rgba(255,201,120,.35)}
.card.lit img{filter:brightness(1) saturate(1)}
.card.lit .fl{opacity:1;transform:scale(1);animation:fl 1.8s ease-in-out infinite alternate}
.card.lit .core{opacity:1}
.card.lit .halo{fill:rgba(255,201,120,.28)}
@keyframes fl{0%{transform:scale(1) skewX(0)}50%{transform:scale(1.04,.96) skewX(3deg)}100%{transform:scale(.97,1.05) skewX(-3deg)}}
html:not(.js) .card img{filter:none}
@media (min-width:700px){.cards{grid-template-columns:1fr 1fr}}
@media (min-width:1100px){.cards{grid-template-columns:repeat(4,1fr)}.card:nth-child(even){margin-top:48px}}

/* mood picker */
.moodsec{padding:80px 0;background:radial-gradient(120% 70% at 50% 0%,#232A63 0%,var(--night) 60%)}
.mgrid{display:grid;gap:10px}
.panel{background:rgba(10,13,36,.72);border:1px solid rgba(255,201,120,.22);border-radius:var(--r);padding:22px 18px;box-shadow:0 30px 80px -40px #000}
fieldset{border:0;padding:0;margin:0 0 18px;min-width:0}
legend,.fld label,.lb,.pl2{font-size:.85rem;letter-spacing:.06em;color:var(--euca);margin-bottom:10px;display:block;padding:0}
.moods{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mood{position:relative;cursor:pointer}
.mood input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.mood span{display:block;border:1px solid rgba(243,239,232,.2);border-radius:16px;padding:12px 14px;transition:all .3s;min-height:74px}
.mood b{display:block;font-size:1.3rem;font-weight:400}
.mood small{display:block;font-size:.82rem;color:var(--mist2)}
.mood input:checked+span{border-color:var(--candle);background:linear-gradient(180deg,rgba(255,201,120,.18),rgba(242,169,75,.06));box-shadow:0 0 26px -6px rgba(255,201,120,.55)}
.mood input:checked+span b{color:var(--candle)}
.mood input:focus-visible+span{outline:2px solid var(--candle);outline-offset:2px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fld{margin-bottom:16px;min-width:0}
input[type=date]{width:100%;min-width:0;max-width:100%;display:block;-webkit-appearance:none;appearance:none;font:inherit;font-size:1rem;color:var(--mist);background:rgba(243,239,232,.06);border:1px solid rgba(243,239,232,.22);border-radius:14px;padding:10px 12px;min-height:48px;color-scheme:dark}
.step{display:flex;align-items:center;gap:6px;border:1px solid rgba(243,239,232,.22);border-radius:999px;width:max-content;padding:4px}
.step button{width:42px;height:42px;border-radius:50%;border:0;background:rgba(255,201,120,.14);color:var(--candle);font-size:1.4rem;cursor:pointer;font-family:var(--f)}
.step output{min-width:44px;text-align:center;font-size:1.3rem}
.msg{white-space:pre-wrap;font-family:var(--f);font-size:.95rem;background:rgba(243,239,232,.06);border-radius:14px;padding:14px;margin:0 0 16px;border-inline-start:3px solid var(--euca);color:var(--mist);overflow-wrap:anywhere}
@media (min-width:900px){.mgrid{grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.panel{padding:30px}.moods{grid-template-columns:repeat(4,1fr)}}

/* where */
.where{padding:80px 0;background:#0B0F2A}
.wgrid{display:grid;gap:30px}
.map{margin:0;position:relative;border-radius:var(--r);overflow:hidden;border:1px solid rgba(255,201,120,.16)}
.map svg{display:block;width:100%;height:auto}
.map .shore{fill:none;stroke:#6F86C8;stroke-width:1.6;stroke-dasharray:4 5;opacity:.8}
.map .contours path{fill:none;stroke:rgba(143,181,156,.28);stroke-width:1}
.map .sea-glints path{stroke:rgba(201,198,221,.35);stroke-width:1.2;stroke-linecap:round}
.map .lt{fill:#FFE2A8}
.js .map .lt-glow{animation:glowp 2.6s ease-in-out infinite alternate;transform-origin:262px 118px}
.map .ml{fill:var(--mist);font-family:var(--f);font-size:15px}
.map .ml.sea{fill:#9DB0E6;font-style:italic;font-size:13px;letter-spacing:.1em}
.map .ml.sm{fill:var(--euca);font-size:12px;letter-spacing:.08em}
.map .cmp circle{stroke:rgba(201,198,221,.4)}
.map .cmp path{fill:var(--candle)}
.map .cmp text{fill:var(--mist2);font-size:10px;font-family:var(--f)}
.map figcaption{position:absolute;bottom:8px;right:12px;font-size:.72rem;color:var(--mist2)}
@media (min-width:900px){.wgrid{grid-template-columns:1fr 1.1fr;align-items:center;gap:70px}}

/* faq */
.faqsec{padding:80px 0;background:linear-gradient(180deg,#0B0F2A,var(--night))}
.fgrid{display:grid;gap:10px}
details{border-bottom:1px solid rgba(243,239,232,.14);padding:4px 0}
summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:1.3rem;padding:16px 0}
summary::-webkit-details-marker{display:none}
summary::after{content:"";flex:none;width:12px;height:12px;border-radius:50%;background:var(--night3);box-shadow:inset 0 0 0 1px rgba(255,201,120,.5);transition:all .4s}
details[open] summary::after{background:var(--candle);box-shadow:0 0 14px 3px rgba(255,201,120,.6)}
details p{margin:0 0 18px;color:var(--mist2)}
@media (min-width:900px){.fgrid{grid-template-columns:.8fr 1.2fr;gap:70px}}

/* end */
.end{position:relative;overflow:hidden;isolation:isolate;padding:110px 0 0;background:linear-gradient(180deg,var(--night),#070A1F 60%,#0B0E2B);text-align:center}
.end .ec{position:relative;z-index:2}
.end .ey{justify-content:center}
.end h2{font-size:clamp(2.8rem,12vw,6rem)}
.end .lead{margin:18px auto 0}
.moon{position:absolute;top:30px;left:10%;width:120px;z-index:1}
.js .moon{animation:moonr 6s ease-in-out infinite alternate}
@keyframes moonr{to{transform:translateY(-8px) rotate(-4deg)}}
.end .land{margin-top:30px;height:110px;z-index:1}
.end .hills .h1{fill:#141946}.end .hills .h2{fill:#0F1338}.end .hills .h3{fill:#0A0D24}

/* footer + bar */
footer{background:var(--ink);padding:30px 0 110px;font-size:.9rem;color:var(--mist2)}
footer p{margin:0 0 8px}
footer .lk{display:flex;gap:18px}
.bar{position:fixed;bottom:0;inset-inline:0;z-index:40;display:grid;grid-template-columns:1fr 1.5fr;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(10,13,36,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid rgba(255,201,120,.18)}
.bar a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border-radius:999px;text-decoration:none;font-size:1rem;border:1px solid rgba(243,239,232,.3)}
.bar a.wa{background:linear-gradient(180deg,#FFD08A,#F2A94B);color:var(--ink);font-weight:700;border:0}
@media (min-width:900px){.bar{display:none}footer{padding-bottom:30px}}

/* docs */
.doc{padding:60px 0 80px;max-width:760px}
.doc h1{font-size:2.6rem;margin-bottom:20px}
.doc h2{font-size:1.5rem;margin:26px 0 8px}
.doc a{color:var(--candle)}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  html{scroll-behavior:auto}
  .js .stars i{opacity:.8}
  .js .steam i{opacity:.35}
  .js .hero .sky .dusk{opacity:0}
}
