:root{
  --teal:#0A7D92; --teal-d:#075E6E; --teal-l:#E3F3F6; --coral:#E5484D; --coral-d:#C9363B;
  --ink:#14232B; --ink-2:#44545C; --line:#E4E0D8; --sand:#F7F4EE; --white:#fff;
  --r:14px; --shadow:0 1px 2px rgba(20,35,43,.06),0 8px 24px rgba(20,35,43,.07);
  --head:"Bricolage Grotesque",system-ui,sans-serif; --body:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font:16px/1.6 var(--body);color:var(--ink);background:var(--sand)}
img{max-width:100%;display:block}
a{color:var(--teal)}
h1,h2,h3{font-family:var(--head);line-height:1.15;margin:0 0 .5em;letter-spacing:-.01em}
h1{font-size:clamp(2rem,5vw,3.4rem);font-weight:800}
h2{font-size:clamp(1.45rem,3vw,2rem);font-weight:800}
h3{font-size:1.1rem;font-weight:600}
p{margin:0 0 1em}
.wrap{width:min(1180px,100% - 32px);margin-inline:auto}
.muted{color:var(--ink-2)} .tiny{font-size:.8rem}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4em;border:0;cursor:pointer;
  background:var(--teal);color:#fff;font:600 .95rem/1 var(--body);padding:.85em 1.25em;border-radius:999px;text-decoration:none;
  transition:background .15s,transform .15s;white-space:nowrap}
.btn:hover{background:var(--teal-d)} .btn:active{transform:translateY(1px)}
.btn:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #F5B54A;outline-offset:2px}
.btn-sm{padding:.6em 1em;font-size:.85rem}
.btn-lg{padding:1em 1.6em;font-size:1rem}
.btn-wide{width:100%}
.btn-coral{background:var(--coral)} .btn-coral:hover{background:var(--coral-d)}
.btn-ghost{background:rgba(255,255,255,.14);border:1.5px solid rgba(255,255,255,.8);backdrop-filter:blur(4px)}
.btn-ghost:hover{background:rgba(255,255,255,.26)}
.btn-ghost-dark{background:transparent;color:var(--teal);border:1.5px solid var(--teal);margin-top:.6rem}
.btn-ghost-dark:hover{background:var(--teal-l)}

/* header */
.top{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.top-in{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px}
.logo img{height:56px;width:auto}
.nav{display:flex;align-items:center;gap:4px}
.nav a{color:var(--ink);text-decoration:none;font-weight:500;font-size:.93rem;padding:.5em .75em;border-radius:8px}
.nav a:hover,.nav a[aria-current]{color:var(--teal);background:var(--teal-l)}
.nav a.btn{color:#fff;background:var(--coral);margin-left:8px} .nav a.btn:hover{background:var(--coral-d)}
.menu-btn{display:none;background:none;border:0;width:44px;height:44px;padding:10px;cursor:pointer}
.menu-btn span{display:block;height:2px;background:var(--ink);margin:6px 0;transition:.2s}
@media (max-width:900px){
  .menu-btn{display:block}
  .nav{position:fixed;inset:72px 0 auto 0;background:#fff;flex-direction:column;align-items:stretch;padding:12px 16px 20px;
    border-bottom:1px solid var(--line);box-shadow:var(--shadow);transform:translateY(-120%);transition:transform .25s;z-index:-1}
  .nav-open .nav{transform:none}
  .nav a{padding:.8em .6em;font-size:1rem}
  .nav a.btn{margin:8px 0 0}
  .nav-open .menu-btn span:first-child{transform:translateY(4px) rotate(45deg)}
  .nav-open .menu-btn span:last-child{transform:translateY(-4px) rotate(-45deg)}
}

/* hero */
.hero{position:relative;color:#fff;background:#0b3a44 var(--hero) center/cover no-repeat;isolation:isolate}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,rgba(6,40,48,.88) 0%,rgba(6,40,48,.6) 45%,rgba(6,40,48,.15) 100%)}
.hero-in{padding:clamp(72px,12vw,140px) 0 clamp(64px,10vw,120px);max-width:760px;margin-left:max(16px,calc((100% - 1180px)/2))}
.hero-sm .hero-in{padding:clamp(56px,8vw,96px) 0}
.hero h1{color:#fff}
.eyebrow{display:inline-block;font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;
  background:var(--coral);padding:.35em .8em;border-radius:4px;margin-bottom:1.1em}
.lead{font-size:clamp(1.02rem,1.6vw,1.2rem);color:inherit;opacity:.95;max-width:62ch}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:1.6em}

/* stats */
.stats{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-radius:var(--r);box-shadow:var(--shadow);
  margin-top:-38px;position:relative;z-index:2;overflow:hidden}
.stats div{padding:20px 18px;border-right:1px solid var(--line);text-align:center}
.stats div:last-child{border:0}
.stats strong{display:block;font:800 1.8rem/1.1 var(--head);color:var(--teal)}
.stats span{font-size:.85rem;color:var(--ink-2)}
@media (max-width:640px){.stats{grid-template-columns:1fr 1fr}.stats div:nth-child(2){border-right:0}.stats div:nth-child(-n+2){border-bottom:1px solid var(--line)}}

/* sections */
.sec{padding:clamp(48px,7vw,80px) 0 0}
.sec-tight{padding:24px 0 0}
.sec-head{margin-bottom:24px}
.sec-head p{color:var(--ink-2);margin:0}
.sec-head.row{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap}
.link-more{font-weight:600;text-decoration:none}
.band{background:#fff;margin-top:clamp(48px,7vw,80px);padding-bottom:clamp(48px,7vw,80px);border-block:1px solid var(--line)}
.page-head{padding-top:12px}
.split{display:grid;grid-template-columns:1.4fr 1fr;gap:32px;align-items:start}
@media (max-width:820px){.split{grid-template-columns:1fr}}

/* state tiles */
.states{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media (max-width:900px){.states{grid-template-columns:1fr 1fr}}
.state{position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:4/5;color:#fff;text-decoration:none;box-shadow:var(--shadow)}
.state img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.state:hover img{transform:scale(1.05)}
.state::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,rgba(5,30,36,.85))}
.state-txt{position:absolute;left:16px;right:16px;bottom:14px;z-index:1}
.state-txt strong{display:block;font:800 1.35rem/1.15 var(--head)}
.state-txt em{font-style:normal;font-size:.88rem;opacity:.9}

/* cards */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media (max-width:980px){.cards{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.cards{grid-template-columns:1fr}}
.cell{display:contents}.cell[hidden]{display:none}
.card{background:#fff;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column}
.card-img{position:relative;display:block;aspect-ratio:16/10;overflow:hidden}
.card-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.card:hover .card-img img{transform:scale(1.04)}
.chip{position:absolute;left:12px;top:12px;background:rgba(255,255,255,.95);color:var(--ink);font-size:.76rem;font-weight:600;padding:.3em .7em;border-radius:999px}
.chip-theme{left:auto;right:12px;background:var(--coral);color:#fff}
.card-body{padding:16px 18px 18px;display:flex;flex-direction:column;flex:1}
.kicker{font-size:.76rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--teal);margin-bottom:.4em}
.card h3{font-size:1.08rem;margin-bottom:.3em}
.card h3 a{color:var(--ink);text-decoration:none}
.card h3 a:hover{color:var(--teal)}
.card-dest{font-size:.88rem;color:var(--ink-2);margin-bottom:14px}
.card-foot{margin-top:auto;display:flex;align-items:end;justify-content:space-between;gap:10px;border-top:1px dashed var(--line);padding-top:12px}
.price .from{display:block;font-size:.72rem;color:var(--ink-2);text-transform:uppercase;letter-spacing:.06em}
.price strong{font:800 1.3rem/1 var(--head);color:var(--ink)}
.price .pp{font-size:.8rem;color:var(--ink-2);margin-left:3px}
.price-big strong{font-size:2.1rem}

/* why */
.why{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 32px}
@media (max-width:860px){.why{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.why{grid-template-columns:1fr}}
.why-item .num{font:800 .9rem var(--head);color:var(--coral);display:block;margin-bottom:6px}
.why-item p{color:var(--ink-2);margin:0;font-size:.95rem}
.how{background:#fff;border-radius:var(--r);padding:24px;box-shadow:var(--shadow);border-top:4px solid var(--coral)}
.how ol{padding-left:1.2em;margin:0 0 1.2em}
.how li{margin-bottom:.5em}

/* faq */
.faq details{background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:10px}
.faq summary{cursor:pointer;padding:16px 44px 16px 18px;font-weight:600;list-style:none;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:18px;top:12px;font-size:1.4rem;color:var(--teal)}
.faq details[open] summary::after{content:"–"}
.faq p{padding:0 18px 16px;margin:0;color:var(--ink-2)}

.cta-band{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:var(--teal);color:#fff;
  border-radius:var(--r);padding:32px;margin-top:clamp(48px,7vw,80px)}
.cta-band h2{color:#fff}.cta-band p{margin:0;opacity:.92}
.pill-row,.filters{display:flex;flex-wrap:wrap;gap:8px}
.filters{margin:8px 0 8px}
.pill{background:#fff;border:1.5px solid var(--line);color:var(--ink);font:500 .9rem var(--body);padding:.55em 1em;border-radius:999px;text-decoration:none;cursor:pointer}
.pill:hover{border-color:var(--teal);color:var(--teal)}
.pill.on{background:var(--teal);border-color:var(--teal);color:#fff}

/* crumbs */
.crumbs{font-size:.85rem;color:var(--ink-2);padding:16px 0 8px;display:flex;gap:8px;flex-wrap:wrap}
.crumbs a{color:var(--ink-2)}

/* package page */
.pkg{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:36px;align-items:start;padding-bottom:8px}
@media (max-width:960px){.pkg{grid-template-columns:1fr}}
.pkg-hero{margin:0 0 20px;border-radius:var(--r);overflow:hidden;aspect-ratio:16/8.5}
.pkg-hero img{width:100%;height:100%;object-fit:cover}
.pkg h1{font-size:clamp(1.8rem,4vw,2.6rem)}
.pkg h1 .dur{display:inline-block;vertical-align:middle;font:600 .9rem var(--body);background:var(--teal-l);color:var(--teal-d);padding:.3em .7em;border-radius:6px;margin-left:6px}
.pkg h2{margin-top:1.6em}
.pkg .lead{color:var(--ink-2)}
.facts{list-style:none;padding:0;margin:20px 0 0;display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-radius:var(--r);border:1px solid var(--line)}
.facts li{padding:12px 14px;border-right:1px solid var(--line);font-size:.92rem;font-weight:500}
.facts li:last-child{border:0}
.facts span{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);font-weight:600}
@media (max-width:640px){.facts{grid-template-columns:1fr 1fr}.facts li:nth-child(2){border-right:0}.facts li:nth-child(-n+2){border-bottom:1px solid var(--line)}}
.ticks,.crosses{list-style:none;padding:0;margin:0}
.ticks li,.crosses li{position:relative;padding-left:28px;margin-bottom:.55em}
.ticks li::before{content:"";position:absolute;left:0;top:.35em;width:16px;height:16px;border-radius:50%;background:var(--teal-l) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' stroke='%230A7D92' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") center/12px no-repeat}
.crosses li::before{content:"×";position:absolute;left:3px;top:-.05em;color:var(--coral);font-weight:700;font-size:1.2rem}
.days{list-style:none;padding:0;margin:0;border-left:2px solid var(--teal-l);margin-left:30px}
.days li{position:relative;padding:0 0 22px 34px}
.days .day{position:absolute;left:-31px;top:0;width:60px;text-align:center;background:var(--teal);color:#fff;font:600 .72rem/1 var(--body);padding:.5em 0;border-radius:6px;text-transform:uppercase;letter-spacing:.04em}
.days h3{margin:0 0 .3em;padding-top:2px}
.days p{color:var(--ink-2);margin:0}
.incexc{display:grid;grid-template-columns:1fr 1fr;gap:24px}
@media (max-width:640px){.incexc{grid-template-columns:1fr}}
.note{background:var(--teal-l);border-radius:10px;padding:14px 16px;font-size:.92rem;margin-top:24px}
.pkg-side{position:sticky;top:92px}
.side-card{background:#fff;border-radius:var(--r);padding:24px;box-shadow:var(--shadow);border-top:4px solid var(--coral)}
.side-card .btn-wide{margin-top:6px}
.side-list{list-style:none;padding:0;margin:16px 0 0;display:flex;flex-wrap:wrap;gap:6px}
.side-list li{font-size:.8rem;background:var(--sand);padding:.3em .7em;border-radius:6px}
.sticky-cta{display:none}
@media (max-width:960px){
  .pkg-side{position:static}
  .sticky-cta{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:30;background:#fff;border-top:1px solid var(--line);
    padding:10px 16px calc(10px + env(safe-area-inset-bottom));align-items:center;justify-content:space-between;box-shadow:0 -6px 20px rgba(0,0,0,.06)}
  body:has(.sticky-cta) .wa-float{bottom:84px}
  body:has(.sticky-cta) .foot{padding-bottom:80px}
}

/* forms */
label{display:block;font-size:.85rem;font-weight:600;margin-bottom:12px;color:var(--ink)}
input,select,textarea{display:block;width:100%;margin-top:6px;font:400 1rem var(--body);color:var(--ink);background:#fff;
  border:1.5px solid var(--line);border-radius:10px;padding:.7em .85em}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-l)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
@media (max-width:560px){.grid2{grid-template-columns:1fr}}
.form-card,.done{background:#fff;border-radius:var(--r);padding:24px;box-shadow:var(--shadow)}

/* modal */
.modal{border:0;padding:0;background:transparent;max-width:min(560px,calc(100% - 24px));width:100%}
.modal::backdrop{background:rgba(10,30,36,.6)}
.modal-card{background:#fff;border-radius:var(--r);padding:24px;position:relative}
.modal-card h2{font-size:1.5rem;margin-bottom:.2em}
.modal-x{position:absolute;right:10px;top:8px;background:none;border:0;font-size:1.8rem;line-height:1;cursor:pointer;color:var(--ink-2);width:40px;height:40px}

/* footer */
.foot{background:#0F2A31;color:#C8D6DA;margin-top:clamp(56px,8vw,96px);font-size:.92rem}
.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1.2fr 1fr;gap:32px;padding:48px 0 32px}
@media (max-width:860px){.foot-grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.foot-grid{grid-template-columns:1fr}}
.foot h3{color:#fff;font-size:1rem}
.foot a{color:#C8D6DA;display:block;text-decoration:none;margin-bottom:.35em}
.foot a:hover{color:#fff}
.foot .social a{display:inline-block;margin-right:14px;color:#fff;text-decoration:underline}
.foot-logo{background:#fff;border-radius:8px;padding:6px;height:72px;width:auto;margin-bottom:14px}
.foot .muted{color:#93A9AF}
.foot-base{border-top:1px solid rgba(255,255,255,.1);padding:18px 0 24px;font-size:.8rem;color:#93A9AF}
.wa-float{position:fixed;right:18px;bottom:18px;z-index:35;width:56px;height:56px;border-radius:50%;background:#25D366;color:#fff;
  display:grid;place-items:center;box-shadow:0 8px 20px rgba(0,0,0,.2)}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media (max-width:560px){
  .days{margin-left:0;border-left:0}
  .days li{padding:0 0 20px}
  .days .day{position:static;display:inline-block;width:auto;padding:.45em .7em;margin-bottom:6px}
}

/* =========== v2: top bar, logo, hero slideshow, popups, blog =========== */
.tbar{background:var(--teal-d);color:#d9eef2;font-size:.82rem}
.tbar-in{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px}
.tb-left,.tb-right{display:flex;align-items:center;gap:14px}
.tbar a{color:#d9eef2;text-decoration:none;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.tbar a:hover{color:#fff}
.tb-main b{color:#fff}
.tb-main{background:rgba(255,255,255,.1);padding:4px 10px;border-radius:999px}
.tb-main:hover{background:rgba(255,255,255,.2)}
.tb-wa svg{color:#4BE07A}
.tb-btn{font:600 .78rem var(--body);color:#fff;background:transparent;border:1px solid rgba(255,255,255,.5);border-radius:999px;padding:5px 12px;cursor:pointer;white-space:nowrap}
.tb-btn:hover{background:#fff;color:var(--teal-d)}
.tb-btn-hi{background:var(--coral);border-color:var(--coral)} .tb-btn-hi:hover{background:#fff;color:var(--coral)}
.tb-soc{display:flex;gap:6px}
.so{width:28px;height:28px;border-radius:50%;display:inline-grid!important;place-items:center;background:rgba(255,255,255,.12);color:#fff!important}
.so:hover{background:#fff;color:var(--teal-d)!important}
@media (max-width:1100px){.tbar .tb-ph,.tbar .tb-btn{display:none}}
@media (max-width:640px){.tb-wa span,.tb-soc .so-twitter,.tb-soc .so-youtube{display:none}.tb-main span{font-size:.76rem}.tbar-in{gap:8px}.tb-right{gap:8px}}

/* logo highlight */
.logo{display:block;padding:5px 8px;border:2px solid var(--teal);border-radius:12px;background:#fff;box-shadow:0 3px 0 var(--coral),0 6px 18px rgba(10,125,146,.18);transition:transform .2s}
.logo:hover{transform:translateY(-1px)}
.logo img{height:52px}
.top{background:linear-gradient(180deg,#fff,#F3FAFB)}
.top-in{min-height:78px}
.nav-cta{margin-left:10px}
.nav-m{display:none}
@media (max-width:900px){
  .nav{position:absolute;inset:100% 0 auto 0;visibility:hidden;transition:transform .25s,visibility 0s .25s}
  .nav-open .nav{transform:none;visibility:visible;transition:transform .25s}
  .nav-cta{display:none}
  .nav-m{display:flex;flex-direction:column;gap:8px;margin-top:10px;border-top:1px solid var(--line);padding-top:12px}
  .nav-m a{text-align:center}
  .logo img{height:44px}
}

/* hero slideshow */
.hero-s{position:relative;height:clamp(560px,86vh,820px);color:#fff;overflow:hidden;background:#06262d;isolation:isolate}
.hero-h1-wrap{position:absolute;left:0;right:0;top:22px;z-index:5}
.hero-h1{display:inline-flex;align-items:center;gap:8px;font:600 .8rem/1 var(--body);letter-spacing:.14em;text-transform:uppercase;margin:0;
  background:rgba(255,255,255,.14);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.3);padding:.6em 1em;border-radius:999px;color:#fff}
.hero-h1::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 4px rgba(229,72,77,.3)}
.slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1s ease,visibility 0s 1s}
.slide.on{opacity:1;visibility:visible;transition:opacity 1s ease,visibility 0s}
.s-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.12);transition:transform 7.5s ease-out}
.slide.on .s-img{transform:scale(1)}
.paused .slide.on .s-img{transition-duration:.6s}
.s-shade{position:absolute;inset:0;background:linear-gradient(95deg,rgba(4,22,28,.92) 0%,rgba(4,22,28,.7) 42%,rgba(4,22,28,.15) 75%),linear-gradient(0deg,rgba(4,22,28,.75),transparent 40%)}
.s-body{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:center;padding:70px 0 120px}
.s-kick{font:600 .82rem var(--body);letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px;opacity:0;transform:translateY(14px);transition:.6s .2s}
.s-num{color:var(--g1);margin-right:8px}
.s-title{font:800 clamp(3rem,10vw,7.2rem)/.92 var(--head);letter-spacing:-.02em;margin:0 0 .12em;opacity:0;transform:translateY(24px);transition:.8s .3s}
.slide-why .s-title{font-size:clamp(2.2rem,6vw,4.6rem);line-height:1}
.grad{background:linear-gradient(100deg,var(--g1),var(--g2) 55%,var(--g3));-webkit-background-clip:text;background-clip:text;color:transparent;
  background-size:200% 100%;animation:shine 6s linear infinite}
@keyframes shine{to{background-position:-200% 0}}
.s-tag{font:600 clamp(1.15rem,2.4vw,1.7rem)/1.25 var(--head);color:#fff;margin:0 0 .5em;opacity:0;transform:translateY(16px);transition:.7s .45s}
.s-sub{max-width:56ch;font-size:clamp(.98rem,1.4vw,1.1rem);color:#E6F1F3;opacity:0;transform:translateY(16px);transition:.7s .55s}
.s-why{list-style:none;padding:0;margin:0 0 1.2em;display:flex;flex-wrap:wrap;gap:8px;opacity:0;transition:.7s .6s}
.s-why li{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:.4em .9em;font-size:.88rem;font-weight:500}
.s-why li::before{content:"✓ ";color:var(--g1);font-weight:700}
.s-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:.6em;opacity:0;transform:translateY(16px);transition:.7s .65s}
.slide.on .s-kick,.slide.on .s-title,.slide.on .s-tag,.slide.on .s-sub,.slide.on .s-why,.slide.on .s-cta{opacity:1;transform:none}
.btn-light{background:#fff;color:var(--ink)} .btn-light:hover{background:var(--g1);color:#111}
.tone-ta{--g1:#FFC24B;--g2:#FF6A3D;--g3:#FF2E63}
.tone-kl{--g1:#9BF59B;--g2:#2FE0C6;--g3:#38B6FF}
.tone-ka{--g1:#FFE07A;--g2:#FF9F43;--g3:#FF5F6D}
.tone-ap{--g1:#FFB199;--g2:#FF5E9C;--g3:#C86DD7}
.tone-tg{--g1:#C3A6FF;--g2:#7AA7FF;--g3:#4FE3FF}
.tone-why{--g1:#FFD166;--g2:#FF5E62;--g3:#2FE0C6}
.s-nav{position:absolute;left:0;right:0;bottom:22px;z-index:4;display:flex;align-items:end;gap:16px}
.s-tabs{flex:1;display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.s-tab{background:none;border:0;color:#cfe3e7;text-align:left;cursor:pointer;padding:6px 0;font:500 .8rem var(--body)}
.s-tab.on{color:#fff}
.s-bar{display:block;height:3px;background:rgba(255,255,255,.25);border-radius:3px;overflow:hidden;margin-bottom:8px}
.s-bar i{display:block;height:100%;width:0;background:#fff}
.s-tab.on .s-bar i{animation:fill 6.5s linear forwards}
.paused .s-tab.on .s-bar i{animation-play-state:paused}
@keyframes fill{to{width:100%}}
.s-arrows{display:flex;gap:8px}
.s-arrows button{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.45);background:rgba(0,0,0,.25);color:#fff;font-size:1.6rem;line-height:1;cursor:pointer}
.s-arrows button:hover{background:#fff;color:var(--ink)}
@media (max-width:760px){
  .hero-s{height:auto;min-height:640px}
  .s-body{padding:84px 0 110px;min-height:640px}
  .s-tabs{grid-template-columns:repeat(6,1fr);gap:6px}
  .s-lbl{display:none}
  .s-arrows{display:none}
  .s-shade{background:linear-gradient(0deg,rgba(4,22,28,.95) 15%,rgba(4,22,28,.55) 60%,rgba(4,22,28,.35))}
  .s-body{justify-content:flex-end}
}
@media (prefers-reduced-motion:reduce){.grad{animation:none}.s-img{transform:none!important}}
.hero-s + .stats{margin-top:24px}

/* popups */
.modal-sm{max-width:min(440px,calc(100% - 24px))}
.modal-kick{font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--coral);margin:0 0 4px}
.modal-card textarea{resize:vertical}
.ok-msg{background:#E7F7EC;border:1px solid #B9E5C6;border-radius:10px;padding:10px 12px;margin:12px 0 0;font-weight:500}
.modal[open]{animation:pop .25s ease-out}
@keyframes pop{from{opacity:0;transform:translateY(12px) scale(.98)}}

/* footer socials */
.f-soc{display:flex;gap:8px}
.f-main{color:#fff!important;font-weight:600;text-decoration:underline!important}

/* blog */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media (max-width:980px){.posts{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.posts{grid-template-columns:1fr}}
.post-card{background:#fff;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column}
.post-card img{aspect-ratio:16/9;width:100%;object-fit:cover}
.post-card div{padding:16px 18px 20px}
.post-card h2{font-size:1.15rem;margin:.2em 0 .4em}
.post-card h2 a{color:var(--ink);text-decoration:none} .post-card h2 a:hover{color:var(--teal)}
.post-card p{color:var(--ink-2);font-size:.93rem;margin:0}
.article{display:grid;grid-template-columns:minmax(0,720px) 300px;gap:40px;justify-content:space-between;align-items:start}
@media (max-width:960px){.article{grid-template-columns:1fr}}
.article h1{font-size:clamp(1.9rem,4.4vw,2.9rem)}
.art-meta{color:var(--ink-2);font-size:.9rem;margin-bottom:18px}
.art-hero{border-radius:var(--r);overflow:hidden;aspect-ratio:16/8;margin:0 0 24px}
.art-hero img{width:100%;height:100%;object-fit:cover}
.prose{font-size:1.05rem;line-height:1.75}
.prose h2{margin-top:1.6em;font-size:1.55rem}
.prose h3{margin-top:1.3em}
.prose ul,.prose ol{padding-left:1.3em}
.prose li{margin-bottom:.4em}
.prose a{color:var(--teal);font-weight:500}
.art-side{position:sticky;top:96px;display:grid;gap:16px}
@media (max-width:960px){.art-side{position:static}}
@media (max-width:380px){.tb-main span{font-size:.7rem}.tb-soc{gap:4px}.so{width:26px;height:26px}}
