:root{
  --bg:#f6f2ec; --bg2:#efe9e1; --card:#ffffff; --ink:#141010; --ink2:#463d3a; --mu:#7f726c; --line:#e3dad0;
  --ox:#7a1f1c; --red:#b8322a; --sun:#8f2620;
  --f:"Commissioner",system-ui,-apple-system,"Segoe UI",sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
html,body{background:var(--bg);color:var(--ink);overflow-x:clip}
body{font-family:var(--f);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit}
img,video{display:block;max-width:100%}
.wrap{max-width:1180px;margin:0 auto;padding-inline:clamp(16px,4vw,40px)}
h1,h2,h3{font-family:var(--f);font-weight:800;letter-spacing:-.035em;line-height:1.04;margin:0;text-wrap:balance}
h2{font-size:clamp(32px,4.4vw,54px)}
em{font-style:normal;color:var(--ox)}
.kicker{display:inline-flex;align-items:center;gap:10px;font:700 12px var(--f);letter-spacing:.18em;text-transform:uppercase;color:var(--ox);margin-bottom:16px}
.kicker::before{content:"";width:22px;height:2px;background:var(--ox)}
.lead{color:var(--ink2);max-width:52ch;margin:16px 0 0;font-size:clamp(17px,1.4vw,19px)}
section{padding-block:clamp(76px,10vw,128px)}
.btn{display:inline-flex;align-items:center;gap:10px;font:700 16px var(--f);padding:15px 24px;border-radius:14px;text-decoration:none;border:1.5px solid transparent;transition:transform .2s,background .2s,border-color .2s;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}
.btn.pri{background:var(--ink);color:#fff}
.btn.pri:hover{background:var(--ox)}
.btn.wa{background:#fff;border-color:var(--line);color:var(--ink)}
.btn.wa:hover{border-color:var(--ink)}
.btn svg{width:19px;height:19px;flex:0 0 auto}
.btn.wa svg{color:#1f9d55}
.btns{display:flex;gap:10px;flex-wrap:wrap}
:focus-visible{outline:2.5px solid var(--ox);outline-offset:3px}
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:rgba(246,242,236,.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid transparent;transition:border-color .3s}
.top.on{border-color:var(--line)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:74px;gap:14px}
.top img{height:23px;width:auto}
.top nav{display:flex;align-items:center;gap:24px;font-size:15px;font-weight:600;color:var(--ink2)}
.top nav a{text-decoration:none}.top nav a:hover{color:var(--ink)}
.lang{display:flex;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}
.lang button{border:0;background:none;font:700 12px var(--f);padding:7px 10px;cursor:pointer;color:var(--mu)}
.lang button[aria-pressed="true"]{background:var(--ink);color:#fff}
.top .btn{padding:10px 16px;font-size:14px;border-radius:11px}
.hero{padding-block:clamp(36px,6vw,80px) clamp(60px,8vw,110px);overflow:hidden}
.hero .wrap:not(.tw){display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(28px,4vw,64px);align-items:center}
.hero h1{font-size:clamp(42px,5.6vw,80px);letter-spacing:-.045em;line-height:1}
.hero .btns{margin-top:32px}
.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,3vw,32px);margin-top:48px;padding-top:22px;border-top:1px solid var(--line);max-width:600px}
.facts strong{display:block;font:800 clamp(20px,2.2vw,26px)/1.1 var(--f);letter-spacing:-.03em}
.facts span{display:block;color:var(--mu);font-size:14px;margin-top:4px;line-height:1.4}
.fan{position:relative;aspect-ratio:1/1;max-width:540px;width:100%;justify-self:end}
@keyframes spin{to{transform:rotate(360deg)}}
.vc{position:absolute;top:50%;left:50%;width:34%;aspect-ratio:9/18.8;padding:1.9%;border-radius:17%/8.2%;border:3px solid transparent;
  background:linear-gradient(#0a0909,#0a0909) padding-box,linear-gradient(135deg,#f4f4f6 0%,#a7a7ad 22%,#e9e9ec 46%,#8f8f95 70%,#dcdce0 88%,#b4b4b9 100%) border-box;
  box-shadow:0 0 0 1px rgba(20,16,16,.18),0 36px 60px -26px rgba(20,16,16,.55),0 12px 20px -12px rgba(20,16,16,.3);
  translate:-50% -50%;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.vc::before{content:"";position:absolute;right:calc(-1.6% - 3px);top:25%;width:1.6%;min-width:2px;height:11%;border-radius:0 3px 3px 0;background:linear-gradient(90deg,#8f8f95,#d9d9dd)}
.vc::after{content:"";position:absolute;left:calc(-1.6% - 3px);top:19%;width:1.6%;min-width:2px;height:17%;border-radius:3px 0 0 3px;background:linear-gradient(180deg,#d9d9dd 0 40%,transparent 40% 54%,#c4c4c9 54% 100%)}
.vc .scr{position:relative;width:100%;height:100%;border-radius:14.5%/7%;overflow:hidden;background:#111;isolation:isolate;container-type:inline-size}
.vc .scr::before{content:"";position:absolute;z-index:5;top:2.3%;left:50%;translate:-50% 0;width:32%;height:3.5%;border-radius:999px;background:#050404}
.vc .scr::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.28) 0%,rgba(0,0,0,0) 14%,rgba(0,0,0,0) 58%,rgba(0,0,0,.62) 100%)}
.ui{position:absolute;inset:0;z-index:4;color:#fff;font-family:var(--f);pointer-events:none;text-shadow:0 1px 3px rgba(0,0,0,.35)}
.ui .sb{position:absolute;top:3.4cqw;left:9cqw;right:7cqw;display:flex;justify-content:space-between;align-items:center;font-size:5.6cqw;font-weight:700;line-height:1}
.ui .sb i{display:flex;gap:1.6cqw;align-items:center}
.ui .sb svg{height:4.4cqw;width:auto}
.ui .bat{width:8.4cqw;height:4.2cqw;border:.5cqw solid rgba(255,255,255,.75);border-radius:1.4cqw;padding:.5cqw;display:block}
.ui .bat::before{content:"";display:block;height:100%;width:78%;background:#fff;border-radius:.6cqw}
.ui .cam{position:absolute;top:16cqw;right:6cqw;width:8cqw;height:8cqw}
.ui .rail{position:absolute;right:4.5cqw;bottom:30cqw;display:flex;flex-direction:column;gap:6.5cqw;align-items:center}
.ui .rail svg{width:8.6cqw;height:8.6cqw;filter:drop-shadow(0 1px 2px rgba(0,0,0,.35))}
.ui .rail .lk{color:#ff3b5c}
.ui .acct{position:absolute;left:5cqw;right:18cqw;bottom:15cqw;display:flex;align-items:center;gap:2.6cqw;font-size:5.2cqw;font-weight:700;white-space:nowrap}
.ui .av{flex:0 0 auto;width:9.5cqw;height:9.5cqw;border-radius:50%;background:var(--ox);border:.5cqw solid #fff;display:grid;place-items:center;font-size:3.6cqw;font-weight:800;letter-spacing:.02em}
.ui .fl{border:.4cqw solid rgba(255,255,255,.85);border-radius:1.8cqw;padding:1cqw 2.4cqw;font-size:4.4cqw;font-weight:700}
.ui .cp{position:absolute;left:5cqw;right:18cqw;bottom:6.5cqw;margin:0;font-size:4.5cqw;line-height:1.35;font-weight:500;opacity:.92;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.vc video{width:100%;height:100%;object-fit:cover}
.vc.l{transform:translate(-80%,7%) rotate(-10deg)}
.vc.r{transform:translate(80%,9%) rotate(9deg)}
.vc.c{width:38%;transform:translateY(-3%);z-index:2}
.fan:hover .vc.l{transform:translate(-88%,5%) rotate(-13deg)}
.fan:hover .vc.r{transform:translate(88%,7%) rotate(12deg)}
.towns{margin-top:clamp(40px,6vw,70px);display:flex;align-items:center;gap:10px 22px;flex-wrap:wrap;padding:18px 22px;border:1px solid var(--line);border-radius:16px;background:var(--card)}
.towns strong{font-weight:700;font-size:15px;margin-right:6px}
.towns span{display:inline-flex;align-items:center;gap:8px;color:var(--ink2);font-size:15px}
.towns span::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ox)}
.alt{background:var(--bg2)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:52px}
.card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:28px;display:flex;flex-direction:column;gap:12px;min-width:0}
.card .ic{width:46px;height:46px;border-radius:14px;background:#f4e6e3;color:var(--ox);display:grid;place-items:center}
.card .ic svg{width:22px;height:22px}
.card h3{font-size:21px;line-height:1.2;letter-spacing:-.02em}
.card p{margin:0;color:var(--ink2);font-size:16px}
.band{margin-top:52px;display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;padding:26px 28px;border-radius:20px;background:var(--ink);color:#fff}
.band p{margin:0;font:800 24px var(--f);letter-spacing:-.02em}
.band .btn.pri{background:#fff;color:var(--ink)}.band .btn.pri:hover{background:#f1dcd8}
.band .btn.wa{background:transparent;color:#fff;border-color:rgba(255,255,255,.3)}
.head{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap}
.vids{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:48px}
.v{display:flex;flex-direction:column;gap:10px;min-width:0}
.v .frame{position:relative;aspect-ratio:9/16;border-radius:16px;overflow:hidden;background:#ddd;cursor:pointer;box-shadow:0 20px 40px -24px rgba(20,16,16,.45)}
.v video{width:100%;height:100%;object-fit:cover}
.v .pl{position:absolute;left:50%;top:50%;translate:-50% -50%;width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,.92);display:grid;place-items:center;transition:opacity .3s,transform .3s}
.v .pl::after{content:"";border-left:13px solid var(--ink);border-top:8px solid transparent;border-bottom:8px solid transparent;margin-left:3px}
.v.on .pl{opacity:0;transform:scale(.8)}
.v strong{font-weight:700;font-size:15px}.v span{display:block;color:var(--mu);font-size:13px}
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:48px}
.plan{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:30px;display:flex;flex-direction:column;gap:18px;min-width:0}
.plan.pop{background:var(--ink);color:#fff;border-color:var(--ink);box-shadow:0 40px 70px -40px rgba(20,16,16,.6)}
.plan .ph{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:28px}
.plan h3{font-size:22px}
.plan .tag{font:700 11px var(--f);letter-spacing:.1em;text-transform:uppercase;background:var(--ox);color:#fff;padding:6px 10px;border-radius:8px}
.price strong{font:800 52px/1 var(--f);letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.price span{color:var(--mu);margin-left:4px;font-weight:600}
.plan.pop .price span,.plan.pop .cad{color:#c8bcb6}
.cad{color:var(--ink2);font-size:15px;margin-top:-6px}
.plan ul{list-style:none;margin:0;padding:18px 0 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:10px;font-size:15px}
.plan.pop ul{border-color:rgba(255,255,255,.15)}
.plan li{display:flex;gap:10px;align-items:flex-start}
.plan li svg{flex:0 0 auto;width:19px;height:19px;color:var(--ox);margin-top:2px}.plan.pop li svg{color:#e7978d}
.plan .btn{margin-top:auto;justify-content:center}
.plan .btn.wa{border-color:var(--line)}
.plan.pop .btn.pri{background:#fff;color:var(--ink)}
.three{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,3vw,36px);margin-top:44px}
.three div{border-top:2px solid var(--ink);padding-top:18px;min-width:0}
.three h3{font-size:20px;line-height:1.25;letter-spacing:-.02em}
.three p{margin:10px 0 0;color:var(--ink2);font-size:15px}
.wide{margin-top:48px;border-radius:22px;overflow:hidden;aspect-ratio:3.2/1;background:var(--bg2)}
.wide img{width:100%;height:100%;object-fit:cover;filter:saturate(.85) sepia(.12)}
.final{background:var(--ox);color:#fff;text-align:center;position:relative;overflow:hidden;isolation:isolate}
.final::before{content:"";position:absolute;left:50%;top:115%;width:min(1100px,160vw);aspect-ratio:1;translate:-50% -50%;border-radius:50%;background:radial-gradient(circle,#a53229,transparent 65%);z-index:-1}
.final h2{font-size:clamp(38px,6vw,78px);max-width:16ch;margin:0 auto;letter-spacing:-.045em}
.final h2 em{color:#ffd6cf}
.final p{color:#f1d3ce;margin:18px auto 0;max-width:44ch}
.final .btns{justify-content:center;margin-top:34px}
.final .btn.pri{background:#fff;color:var(--ink)}.final .btn.pri:hover{background:#ffe9e5}
.final .btn.wa{background:transparent;color:#fff;border-color:rgba(255,255,255,.4)}
footer{padding-block:34px;color:var(--mu);font-size:14px}
footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}
footer img{height:20px;width:auto}
footer ul{list-style:none;margin:0;padding:0;display:flex;gap:8px 22px;flex-wrap:wrap}
footer a{text-decoration:none;color:var(--ink2)}footer a:hover{color:var(--ink)}
@media (max-width:980px){
  .hero .wrap:not(.tw){grid-template-columns:1fr}.fan{justify-self:center;max-width:460px}
  .cards,.three{grid-template-columns:1fr}
  .vids{grid-template-columns:repeat(5,minmax(150px,1fr));overflow-x:auto;padding-bottom:10px;scroll-snap-type:x mandatory}.v{scroll-snap-align:start}
  .plans{grid-template-columns:1fr;max-width:520px}
  .top nav a:not(.btn){display:none}
}
@media (max-width:560px){.wide{aspect-ratio:2/1}.top .btn{display:none}.facts span{font-size:13px}}
.three .ic3{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:#f4e6e3;color:var(--ox);margin-bottom:16px;transition:background .35s,color .35s,transform .45s cubic-bezier(.2,.8,.2,1)}
.three .ic3 svg{width:24px;height:24px}
.three div:hover .ic3{background:var(--ox);color:#fff;transform:rotate(-6deg) scale(1.06)}
.card .ic{transition:background .35s,color .35s,transform .45s cubic-bezier(.2,.8,.2,1)}
.card:hover .ic{background:var(--ox);color:#fff;transform:rotate(-6deg) scale(1.06)}
.card,.plan{position:relative;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s,border-color .3s}
.card:hover,.plan:hover{transform:translateY(-6px);box-shadow:0 30px 50px -32px rgba(20,16,16,.4)}
.card::after,.plan::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .4s;background:radial-gradient(320px circle at var(--mx,50%) var(--my,50%),rgba(122,31,28,.09),transparent 60%)}
.plan.pop::after{background:radial-gradient(320px circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.09),transparent 60%)}
.card:hover::after,.plan:hover::after{opacity:1}
.btn{position:relative;overflow:hidden;transition:transform .25s,background .25s,border-color .25s,translate .35s cubic-bezier(.2,.8,.2,1)}
.btn.pri::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:45%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.28),transparent);transform:skewX(-18deg);transition:left .7s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.btn.pri:hover::after{left:120%}
.btn svg{transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.btn:hover svg{transform:translateX(4px)}
.btn.wa:hover svg{transform:rotate(-12deg) scale(1.1)}
.v .frame video{transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.v:hover .frame video{transform:scale(1.05)}
.v .frame{transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s}
.v:hover .frame{transform:translateY(-6px);box-shadow:0 34px 50px -26px rgba(20,16,16,.5)}
.v .pl::before{content:"";position:absolute;inset:-8px;border-radius:50%;border:2px solid rgba(255,255,255,.7);animation:pulse 2.4s ease-out infinite}
@keyframes pulse{0%{transform:scale(.8);opacity:.9}100%{transform:scale(1.35);opacity:0}}
.towns span::before{animation:blip 3s ease-in-out infinite}
.towns span:nth-of-type(2)::before{animation-delay:.4s}.towns span:nth-of-type(3)::before{animation-delay:.8s}.towns span:nth-of-type(4)::before{animation-delay:1.2s}.towns span:nth-of-type(5)::before{animation-delay:1.6s}
@keyframes blip{0%,70%,100%{box-shadow:0 0 0 0 rgba(122,31,28,0)}35%{box-shadow:0 0 0 5px rgba(122,31,28,.16)}}
.prog{position:fixed;top:0;left:0;right:0;height:2.5px;background:var(--ox);transform-origin:0 50%;transform:scaleX(0);z-index:40;pointer-events:none}
.top{transition:border-color .3s,transform .45s cubic-bezier(.2,.8,.2,1)}
.top.hide{transform:translateY(-105%)}
.final::before{animation:glow 14s ease-in-out infinite alternate}
@keyframes glow{0%{translate:-60% -50%;scale:1}100%{translate:-40% -56%;scale:1.12}}
.fan{transition:transform .9s cubic-bezier(.2,.8,.2,1);transform-style:preserve-3d}
.mo .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.mo .w>span{display:inline-block;transform:translateY(105%);transition:transform 1s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i,0)*45ms + var(--d,0ms))}
.mo .in .w>span,.mo .w.in>span,.mo .in.w>span{transform:none}
.mo .rv{opacity:0;transform:translateY(28px);filter:blur(6px);transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1),filter .9s;transition-delay:var(--d,0ms)}
.mo .rv.in{opacity:1;transform:none;filter:none}
.mo .card.rv.in:hover,.mo .plan.rv.in:hover{transform:translateY(-6px)}
.mo .vc{animation:phin 1.3s cubic-bezier(.2,.8,.2,1) both}
.mo .vc.c{animation-delay:.35s}.mo .vc.l{animation-delay:.5s}.mo .vc.r{animation-delay:.62s}
@keyframes phin{from{opacity:0;top:72%;scale:.9}to{opacity:1;top:50%;scale:1}}
.mo .vc.float{animation:fl 6s ease-in-out infinite;animation-delay:var(--fd,0s)}
@keyframes fl{0%,100%{margin-top:0}50%{margin-top:-10px}}
.mo .draw svg :is(path,circle,rect){stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.4s cubic-bezier(.4,0,.2,1) .25s}
.mo .in .draw svg :is(path,circle,rect),.mo .draw.in svg :is(path,circle,rect){stroke-dashoffset:0}
@media (prefers-reduced-motion:reduce){.prog{display:none}}
.final{text-align:left}
.fgrid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,5vw,72px);align-items:center}
.final .fintro h2{margin:0;max-width:13ch;font-size:clamp(36px,4.8vw,64px)}
.final .fintro p{margin:18px 0 0}
.perks{list-style:none;margin:30px 0 0;padding:0;display:grid;gap:14px}
.perks li{display:flex;align-items:center;gap:12px;font-weight:600;color:#fff}
.perks svg{width:20px;height:20px;flex:0 0 auto;padding:7px;box-sizing:content-box;border-radius:11px;background:rgba(255,255,255,.12);color:#ffd6cf}
.f3d{perspective:1800px;min-width:0}
.fcard{position:relative;background:#fffdfb;color:var(--ink);border-radius:28px;padding:clamp(20px,3vw,32px);transform-style:preserve-3d;
  transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .9s cubic-bezier(.2,.8,.2,1);
  box-shadow:0 1px 0 rgba(255,255,255,.8) inset,0 50px 80px -30px rgba(30,6,5,.65),0 18px 30px -18px rgba(30,6,5,.5)}
.fcard::before,.fcard::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;transform-origin:50% 100%}
.fcard::before{background:rgba(255,253,251,.5);transform:translateZ(-40px) translateY(18px) scale(.95)}
.fcard::after{background:rgba(255,253,251,.25);transform:translateZ(-80px) translateY(34px) scale(.9)}
.fhead{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px;transform:translateZ(30px)}
.fsteps{display:flex;gap:6px;flex:1;max-width:220px}
.fsteps i{flex:1;height:5px;border-radius:9px;background:#efe6dd;position:relative;overflow:hidden}
.fsteps i::after{content:"";position:absolute;inset:0;background:var(--ox);transform:scaleX(0);transform-origin:0 50%;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.fsteps i.on::after{transform:scaleX(1)}
.fcount{font:700 13px var(--f);color:var(--mu);font-variant-numeric:tabular-nums}
.fcount b{color:var(--ink)}
.fstage{display:grid;transform-style:preserve-3d}
.fstep{grid-area:1/1;border:0;margin:0;padding:0;min-width:0;opacity:0;visibility:hidden;pointer-events:none;
  transform:translateX(18%) translateZ(-160px) rotateY(-38deg);transform-origin:50% 50%;
  transition:transform .75s cubic-bezier(.2,.8,.2,1),opacity .5s,visibility 0s .75s}
.fstep.prev{transform:translateX(-18%) translateZ(-160px) rotateY(38deg)}
.fstep.on{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition:transform .75s cubic-bezier(.2,.8,.2,1),opacity .5s .1s,visibility 0s}
.fstep legend{float:left;width:100%;padding:0;margin:0 0 18px;font:800 clamp(22px,2.2vw,28px)/1.15 var(--f);letter-spacing:-.03em}
.fstep legend+*{clear:both}
.chips{display:grid;gap:10px}
.chips.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
.chips.c2{grid-template-columns:repeat(2,minmax(0,1fr))}
.chips.cw{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative;cursor:pointer;display:block;min-width:0}
.chip input{position:absolute;opacity:0;width:1px;height:1px}
.chip>span{display:flex;flex-direction:column;align-items:flex-start;gap:8px;height:100%;padding:14px;border-radius:16px;border:1.5px solid var(--line);background:#fff;
  transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .25s,background .25s,color .25s,box-shadow .35s}
.chip svg{width:24px;height:24px;color:var(--ox);transition:color .25s,transform .45s cubic-bezier(.2,.8,.2,1)}
.chip b{font-weight:700;font-size:14.5px;line-height:1.25}
.chip:hover>span{transform:translateY(-3px);border-color:#cdbfb2;box-shadow:0 14px 22px -16px rgba(20,16,16,.35)}
.chip input:focus-visible+span{outline:2.5px solid var(--ox);outline-offset:2px}
.chip input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff;transform:translateY(-3px) translateZ(20px);box-shadow:0 18px 28px -16px rgba(20,16,16,.55);animation:pop .45s cubic-bezier(.2,.8,.2,1)}
.chip input:checked+span svg{color:#ffb4a8;transform:rotate(-8deg) scale(1.1)}
@keyframes pop{40%{transform:translateY(-3px) scale(1.04)}}
.plan-c>span{gap:2px}
.plan-c em{font:800 26px/1.1 var(--f);letter-spacing:-.03em;color:var(--ox);font-style:normal}
.plan-c input:checked+span em{color:#ffb4a8}
.plan-c small{font-size:13px;color:var(--mu)}
.plan-c input:checked+span small{color:#cfc4be}
.chip.sm>span{padding:9px 14px;border-radius:999px}
.chip.sm b{font-size:14px}
.sub{margin:20px 0 10px!important;font-size:14px;font-weight:600;color:var(--ink2)!important}
.fld{position:relative;margin-top:12px}
.fld input,.fld textarea{width:100%;font:500 16px var(--f);color:var(--ink);background:#fff;border:1.5px solid var(--line);border-radius:14px;padding:22px 16px 8px;outline:0;resize:vertical;transition:border-color .25s,box-shadow .25s}
.fld textarea{min-height:92px}
.fld label{position:absolute;left:17px;top:16px;font-size:16px;color:var(--mu);pointer-events:none;transform-origin:0 0;transition:transform .25s cubic-bezier(.2,.8,.2,1),color .25s}
.fld input:focus,.fld textarea:focus{border-color:var(--ox);box-shadow:0 0 0 4px rgba(122,31,28,.12)}
.fld input:focus+label,.fld input:not(:placeholder-shown)+label,.fld textarea:focus+label,.fld textarea:not(:placeholder-shown)+label{transform:translateY(-9px) scale(.75);color:var(--ox)}
.fld.bad input{border-color:#c0392b}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.ferr{min-height:22px;margin:12px 0 0!important;color:#b3261e!important;font-size:14px;font-weight:600}
.fnav{display:flex;justify-content:space-between;gap:10px;margin-top:6px;transform:translateZ(24px)}
.fnav .btn{padding:13px 20px}
.fnav .btn.pri{background:var(--ink);color:#fff}.fnav .btn.pri:hover{background:var(--ox)}
.btn.ghost{background:transparent;border-color:var(--line);color:var(--ink)}
.btn.ghost:hover{border-color:var(--ink)}
.btn.ghost[disabled]{opacity:.35;pointer-events:none}
.btn.ghost svg{width:18px;height:18px}
.shake{animation:shake .5s cubic-bezier(.36,.07,.19,.97)}
@keyframes shake{20%,60%{transform:translateX(-8px) rotateY(-4deg)}40%,80%{transform:translateX(8px) rotateY(4deg)}}
.fdone{text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}
.fdone h3{font-size:clamp(24px,2.4vw,30px);letter-spacing:-.03em;margin-top:6px}
.fdone p{margin:0!important;color:var(--ink2)!important;max-width:38ch;font-size:15.5px}
.tick{width:76px;height:76px}
.tick circle{fill:none;stroke:var(--ox);stroke-width:3;stroke-dasharray:150;stroke-dashoffset:150}
.tick path{fill:none;stroke:var(--ox);stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40}
.fdone.on .tick circle{animation:dr .8s .2s cubic-bezier(.65,0,.35,1) forwards}
.fdone.on .tick path{animation:dr .5s .85s cubic-bezier(.65,0,.35,1) forwards}
@keyframes dr{to{stroke-dashoffset:0}}
.sum{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;text-align:left;margin:14px 0 4px;padding:14px 18px;border-radius:16px;background:#f6f0ea;width:100%;font-size:14.5px}
.sum dt{color:var(--mu);font-weight:600}.sum dd{margin:0;font-weight:700;overflow-wrap:anywhere}
.send{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:8px}
.btn.wa-g{background:#1f9d55;color:#fff}.btn.wa-g:hover{background:#178246}
.btn.wa-g svg{color:#fff}
.link{background:none;border:0;font:600 14px var(--f);color:var(--mu);text-decoration:underline;cursor:pointer;margin-top:6px;padding:8px}
.fcard.done .fnav,.fcard.done .ferr{display:none}
@media (max-width:980px){.fgrid{grid-template-columns:1fr}.final .fintro h2{max-width:16ch}}
@media (max-width:560px){.chips.c3{grid-template-columns:repeat(2,minmax(0,1fr))}.row2{grid-template-columns:1fr}.fcard::after{display:none}.fcard{border-radius:22px}}
@media (prefers-reduced-motion:reduce){.fstep,.fstep.prev{transform:none}.fcard{transform:none!important}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
.rc{display:inline-flex;white-space:pre}
.rc>span{position:relative;display:inline-block;overflow:hidden;height:1.25em;line-height:1.25;vertical-align:top}
.rc>span i{display:block;font-style:normal;transition:transform .45s cubic-bezier(.76,0,.24,1);transition-delay:calc(var(--i)*16ms)}
.rc>span i+i{position:absolute;left:0;top:100%}
.top nav a:not(.btn) .rc>span i+i{color:var(--ox)}
a:hover>.rc>span i,a:hover .rc>span i,button:hover .rc>span i{transform:translateY(-100%)}
.kicker .x{color:#c9b8ae}
.lead.fw .wd{transition:color .3s}
.lead.fw .wd:not(.on){color:#cdbfb5}
.odo{display:inline-flex}
.odo .d{display:inline-block;height:1em;overflow:hidden;line-height:1;margin-right:-.06em;font-variant-numeric:proportional-nums}
.odo .d span{display:block;transition:transform 1.6s cubic-bezier(.76,0,.24,1);transition-delay:calc(var(--i)*110ms)}
.odo .d span i{display:block;font-style:normal;height:1em}
@media (prefers-reduced-motion:reduce){.rc>span i,.odo .d span{transition:none!important}}
.pb-hd{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:clamp(20px,4vw,60px);align-items:end}
.pb-hd h2{font-size:clamp(32px,4vw,54px)}
.pb-hd .lead{margin:0 0 6px}
.pb-red{color:var(--ox)}
.pb{display:grid;grid-template-columns:1.05fr 1fr;grid-template-rows:auto auto;gap:18px;margin-top:clamp(36px,5vw,56px)}
.pc{position:relative;border-radius:26px;overflow:hidden;isolation:isolate;padding:clamp(22px,2.6vw,32px);display:flex;flex-direction:column;min-width:0;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s}
.pc:hover{transform:translateY(-4px)}
.pc .pn{display:inline-grid;place-items:center;width:46px;height:30px;border-radius:9px;font:600 13px var(--f);border:1px solid currentColor;opacity:.75;position:relative;z-index:3}
.pc h3{font-size:clamp(22px,2.2vw,30px);line-height:1.08;letter-spacing:-.035em;margin:0}
.pc p{margin:12px 0 0;font-size:15.5px;line-height:1.6;max-width:42ch}
.pc .tx{position:relative;z-index:3}
.pc1{grid-row:span 2;min-height:620px;color:#fff;background:radial-gradient(70% 55% at 55% 38%,#8e2a2a 0,transparent 70%),linear-gradient(170deg,#6e1b1d,#4a0f12);box-shadow:0 40px 70px -40px rgba(74,15,18,.7)}
.pc1 .tx{margin-top:auto}.pc1 h3{font-size:clamp(28px,3vw,42px)}.pc1 p{color:rgba(255,255,255,.78)}
.pc1 .stage{position:relative;flex:1;min-height:340px;display:grid;place-items:center;margin:4px 0 18px}
.orbit{position:absolute;width:min(360px,80%);aspect-ratio:1;border-radius:50%;border:1px dotted rgba(255,180,170,.45);animation:pbspin 40s linear infinite}
.orbit::before{content:"";position:absolute;inset:9%;border-radius:50%;border:1px solid rgba(255,160,150,.18)}
.orbit .av{position:absolute;width:44px;height:44px;margin:-22px;border-radius:50%;display:grid;place-items:center;background:#f3ebe2;color:#6e1b1d;box-shadow:0 8px 18px -8px rgba(0,0,0,.5);animation:pbspin 40s linear infinite reverse}
.orbit .av svg{width:22px;height:22px}
.orbit .a1{left:72%;top:4%}.orbit .a2{left:2%;top:38%;background:#8e2a2a;color:#f3ebe2}.orbit .a3{left:98%;top:58%}.orbit .a4{left:14%;top:82%;background:#8e2a2a;color:#f3ebe2}
@keyframes pbspin{to{rotate:360deg}}
#pbfan{position:relative;width:min(470px,92%);height:min(380px,72vw);perspective:1100px;aspect-ratio:auto;max-width:none;justify-self:auto}
.phn{position:absolute;left:50%;top:50%;width:36%;aspect-ratio:9/19;padding:6px;border-radius:26px;background:linear-gradient(145deg,#2b2627,#0b0909 40%,#1a1617);box-shadow:inset 0 0 0 1.5px #3c3536,0 0 0 1px rgba(0,0,0,.6),0 34px 50px -20px rgba(0,0,0,.8);cursor:pointer;transition:transform .9s cubic-bezier(.76,0,.24,1),filter .9s,z-index 0s .45s}
.phn::before{content:"";position:absolute;z-index:4;top:12px;left:50%;translate:-50% 0;width:32%;height:13px;border-radius:999px;background:#050404}
.phn .sc{width:100%;height:100%;border-radius:21px;overflow:hidden;background:#1a1414;position:relative}
.phn .sc::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.25),transparent 18%,transparent 62%,rgba(0,0,0,.6));pointer-events:none}
.phn .tt{position:absolute;z-index:3;left:9%;top:9%;width:15%;height:auto}
.phn .rail{position:absolute;z-index:3;right:6%;bottom:20%;display:flex;flex-direction:column;gap:10px;color:#fff}
.phn .rail svg{width:15px;height:15px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}
.phn .rail svg:first-child{color:#fff}
.phn .pbar{position:absolute;z-index:3;left:7%;right:7%;bottom:6%;display:flex;align-items:center;gap:6px;color:#fff}
.phn .pbar svg{width:11px;height:11px;flex:0 0 auto}
.phn .pbar i{flex:1;height:3px;border-radius:3px;background:rgba(255,255,255,.35);overflow:hidden;font-style:normal}
.phn .pbar b{display:block;height:100%;width:var(--pp,0%);background:#fff;border-radius:3px}
.phn[data-p="0"]{transform:translate(-122%,-46%) rotate(-10deg) scale(.86);z-index:1;filter:brightness(.62) saturate(.8)}
.phn[data-p="1"]{transform:translate(-50%,-50%) translateZ(40px) scale(1.04);z-index:3;filter:none}
.phn[data-p="2"]{transform:translate(22%,-46%) rotate(10deg) scale(.86);z-index:1;filter:brightness(.62) saturate(.8)}
.pc2{background:linear-gradient(160deg,#f6efe7,#efe4d9);border:1px solid #e3d5c8;color:var(--ink);min-height:300px;padding-right:48%}
.pc2 .tx{margin-top:auto}.pc2 p{color:var(--ink2)}
.gauge{position:absolute;right:-56px;top:50%;width:min(300px,52%);aspect-ratio:1;translate:0 -50%;z-index:1}
.gauge svg{width:100%;height:100%;overflow:visible}
.gauge .face{fill:#f8f3ed;stroke:#e5d8cc;stroke-width:1.5;filter:drop-shadow(0 18px 24px rgba(74,15,18,.18))}
.gauge .wedge{fill:var(--ox);opacity:.95}
.gauge .rim{fill:none;stroke:var(--ox);stroke-width:3;stroke-dasharray:3 9;opacity:.35}
.gauge .tk{stroke:#b3a196;stroke-width:3;stroke-linecap:round}.gauge .tk.m{stroke:var(--ox);stroke-width:4}
.gauge .needle{transform-origin:0 0;animation:pbneedle 5s cubic-bezier(.65,0,.35,1) infinite}
.gauge .needle line{stroke:#2a1a1a;stroke-width:3;stroke-linecap:round}.gauge .needle circle{fill:var(--ox)}
@keyframes pbneedle{0%{rotate:-88deg}55%{rotate:62deg}70%{rotate:56deg}100%{rotate:-88deg}}
.gauge .rec{position:absolute;left:50%;top:62%;translate:-50% 0;width:76px;height:48px;border-radius:14px;background:#1d1617;display:grid;place-items:center;box-shadow:0 14px 24px -10px rgba(0,0,0,.6)}
.gauge .rec i{width:14px;height:14px;border-radius:50%;background:#d9343a;animation:pbrec 1.2s steps(2) infinite}
@keyframes pbrec{50%{opacity:.25}}
.pc3{background:linear-gradient(160deg,#211a1b,#141011);color:#f3ece6;min-height:300px;padding-right:50%;border:1px solid #2c2324}
.pc3 .tx{margin-top:auto}.pc3 p{color:rgba(243,236,230,.72)}
.cal3d{position:absolute;right:2%;top:52%;width:44%;aspect-ratio:1.05;translate:0 -50%;perspective:900px;z-index:1}
.cal3d .cal,.cal3d .sheet{position:absolute;inset:6% 4% 6% 8%;border-radius:16px;transform-style:preserve-3d;transform:rotateX(16deg) rotateY(-24deg) rotateZ(3deg)}
.cal3d .sheet{background:#2c2425;border:1px solid #3a3132}
.cal3d .s1{transform:rotateX(16deg) rotateY(-24deg) rotateZ(3deg) translate3d(-26px,-14px,-50px);opacity:.8}
.cal3d .s2{transform:rotateX(16deg) rotateY(-24deg) rotateZ(3deg) translate3d(-48px,-26px,-100px);opacity:.5}
.cal3d .cal{background:linear-gradient(160deg,#f6efe7,#e8ddd2);box-shadow:0 40px 60px -24px rgba(0,0,0,.85);padding:10% 8% 8%;animation:pbfloat 6s ease-in-out infinite}
@keyframes pbfloat{50%{transform:rotateX(12deg) rotateY(-18deg) rotateZ(2deg) translateY(-6px)}}
.cal-top{display:flex;gap:6%;margin-bottom:6%}.cal-top b{flex:1;height:6px;border-radius:3px;background:#d4c6ba}
.cal .grid{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}
.cal .grid i{aspect-ratio:1.2;border-radius:5px;background:#ece2d8}
.cal .blk{position:absolute;border-radius:6px;background:#9b3a3e;box-shadow:0 8px 12px -6px rgba(74,15,18,.6);transform:translateZ(14px)}
.cal .b1{left:10%;top:31%;width:30%;height:11%}.cal .b2{left:56%;top:52%;width:34%;height:17%;background:#8a2d31}.cal .b3{left:30%;top:72%;width:28%;height:11%}.cal .b4{left:30%;top:85%;width:28%;height:9%;opacity:.7}
@media (max-width:980px){.pb-hd{grid-template-columns:1fr}.pb{grid-template-columns:1fr}.pc1{grid-row:auto;min-height:0}.pc2,.pc3{padding-right:clamp(22px,2.6vw,32px);padding-top:clamp(22px,2.6vw,32px)}
 .gauge{position:relative;right:auto;top:auto;translate:none;width:260px;margin:-10px auto 4px}.pc2{flex-direction:column}.pc2 .tx{order:3}
 .cal3d{position:relative;right:auto;top:auto;translate:none;width:min(320px,86%);margin:6px auto 10px}.pc3 .tx{order:3}}
@media (prefers-reduced-motion:reduce){.orbit,.orbit .av,.gauge .needle,.gauge .rec i,.cal3d .cal{animation:none}}

.pnav{position:absolute;z-index:4;top:50%;translate:0 -50%;width:42px;height:42px;border-radius:50%;border:0;background:none;color:rgba(255,255,255,.85);cursor:pointer;display:grid;place-items:center;transition:background .2s,color .2s}
.pnav:hover{background:rgba(255,255,255,.12);color:#fff}
.pnav svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pnav.prev{left:-8px}.pnav.next{right:-8px}
.fdots{position:absolute;left:50%;bottom:-6px;translate:-50% 0;display:flex;gap:8px;align-items:center;z-index:4}
.fdots i{width:6px;height:6px;border-radius:999px;background:rgba(255,255,255,.45);transition:width .4s cubic-bezier(.2,.8,.2,1),background .3s}
.fdots i.on{width:24px;background:#fff}
.arr3d{position:absolute;left:-6%;top:-14%;width:118%;height:118%;overflow:visible;transform:translateZ(46px);pointer-events:none;filter:drop-shadow(0 14px 10px rgba(0,0,0,.45))}
.arr3d .body{fill:none;stroke:url(#arg);stroke-width:13;stroke-linecap:round}
.arr3d .sh{fill:none;stroke:rgba(40,8,10,.5);stroke-width:13;stroke-linecap:round}
.arr3d .gl{fill:none;stroke:rgba(255,190,190,.55);stroke-width:2.5;stroke-linecap:round}
.arr3d .body,.arr3d .sh,.arr3d .gl{stroke-dasharray:var(--L) var(--L);stroke-dashoffset:calc(var(--L) * (1 - var(--d,1)))}
@media (max-width:520px){.pnav{display:none}}
/* ===== booking section, v2 ===== */
.final{background:radial-gradient(70% 80% at 0% 0%,#8a2526 0,transparent 60%),radial-gradient(60% 70% at 100% 100%,#4d0f12 0,transparent 65%),linear-gradient(160deg,#741c1f,#5a1417)}
.final::before{opacity:.5}
.fgrid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center}
.final .fk2{color:#f3d3cf;font-weight:600;letter-spacing:.22em}
.final .fk2::before{background:#f3d3cf;width:46px}
.final .fintro h2{max-width:12ch;font-size:clamp(38px,5vw,72px);line-height:1.02}
.final .fintro h2 em{color:#ffcfcb}
.final .fintro>p{font-size:clamp(16px,1.4vw,19px);color:#f1d6d2;max-width:36ch}
.bub3d{position:relative;width:min(340px,80%);height:210px;margin:34px 0 10px}
.bb{position:absolute;border-radius:46% 50% 48% 44%/52% 50% 46% 48%;display:grid;place-items:center;animation:bbf 6s ease-in-out infinite}
.bb::after{content:"";position:absolute;width:30%;height:30%;bottom:-14%;border-radius:0 0 60% 0;clip-path:polygon(0 0,100% 0,100% 100%)}
.b-a{left:0;top:6px;width:58%;height:66%;z-index:2;background:radial-gradient(70% 70% at 30% 25%,#fffaf4,#efe3d7 55%,#d7c5b6);box-shadow:inset -8px -12px 20px rgba(120,80,60,.18),inset 6px 8px 14px rgba(255,255,255,.9),0 26px 34px -16px rgba(30,4,6,.7);rotate:-6deg}
.b-a::after{left:14%;background:#e6d7ca;transform:rotate(18deg)}
.b-a i{display:inline-block;width:15%;aspect-ratio:1;margin:0 3%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#b0373c,#6e1519);box-shadow:0 3px 5px rgba(60,8,10,.35)}
.b-a{grid-auto-flow:column;place-content:center}
.b-b{left:40%;top:40px;width:52%;height:62%;z-index:1;background:radial-gradient(70% 70% at 30% 25%,#b0373c,#7e1d21 55%,#541013);box-shadow:inset -8px -12px 20px rgba(30,4,6,.35),inset 6px 8px 14px rgba(255,160,160,.25),0 30px 36px -16px rgba(20,2,4,.8);rotate:8deg;animation-delay:-3s}
.b-b::after{right:12%;left:auto;background:#6a171b;transform:scaleX(-1) rotate(18deg)}
.b-b svg{width:26%;fill:#f6e8dc;filter:drop-shadow(0 3px 4px rgba(40,4,6,.5));margin-left:6%}
.bsh{position:absolute;left:8%;right:4%;bottom:-6px;height:22px;border-radius:50%;background:radial-gradient(closest-side,rgba(20,2,4,.45),transparent)}
@keyframes bbf{50%{translate:0 -8px}}
.final .perks{gap:0;margin-top:18px;max-width:390px}
.final .perks li{padding:15px 0;border-bottom:1px solid rgba(255,220,214,.18);font-weight:600;font-size:16px}
.final .perks li:last-child{border-bottom:0}
.final .perks svg{width:15px;height:15px;padding:6px;border-radius:50%;background:#f4e3df;color:#7a1f1c;stroke-width:2.6}
/* card */
.f3d{position:relative}
.f3d::before{content:"";position:absolute;inset:16px -14px -18px 18px;border-radius:30px;background:linear-gradient(160deg,#5e1518,#3f0c0e);box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}
.fcard{background:linear-gradient(170deg,#fbf7f2,#f3ece4);border-radius:28px;padding:clamp(22px,3vw,40px);box-shadow:0 50px 90px -40px rgba(30,4,6,.85)}
.fcard::before,.fcard::after{display:none}
.stp{list-style:none;margin:0 0 26px;padding:0 0 22px;border-bottom:1px solid #e4d8cc;display:flex;align-items:center;gap:10px}
.stp li{display:flex;align-items:center;gap:10px;flex:0 0 auto;color:#8c7d76;font-size:14.5px;font-weight:500}
.stp li+li::before{content:"";width:clamp(18px,4vw,60px);height:1.5px;background:#d9cbbf;margin-right:4px}
.stp li b{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#efe6dc;color:#4a3d38;font:600 14px var(--f);transition:background .4s,color .4s,box-shadow .4s}
.stp li.on{color:var(--ox);font-weight:700}
.stp li.on b{background:var(--ox);color:#fff;box-shadow:0 8px 16px -6px rgba(122,31,28,.6)}
.stp li.done b{background:#e8cfc9;color:var(--ox)}
.stp li.done b::before{content:"✓"}.stp li.done b{font-size:0}.stp li.done b::before{font-size:15px}
.fstep legend{font-size:clamp(26px,2.6vw,36px);letter-spacing:-.04em;margin-bottom:6px}
.lsub{margin:0 0 20px!important;color:#857670!important;font-size:15.5px}
.chips.c3 .chip>span{min-height:118px;padding:20px 18px;border-radius:18px;border:1px solid #e6dbcf;background:linear-gradient(160deg,#fffdfa,#f7f0e8);justify-content:space-between;gap:14px;position:relative;overflow:hidden}
.chips.c3 .chip>span::before{content:"";position:absolute;right:0;top:0;width:30px;height:30px;background:linear-gradient(225deg,#eadfd3 50%,transparent 50%);opacity:.8}
.chips.c3 .chip svg{width:34px;height:34px;color:var(--ox);stroke-width:1.9}
.chips.c3 .chip b{font-size:16px}
.chip input:checked+span{background:linear-gradient(160deg,#8a2427,#62151a)!important;border-color:#62151a!important;color:#fff;box-shadow:0 20px 30px -16px rgba(98,21,26,.75)!important}
.chip input:checked+span svg{color:#fff!important}
.chips.c3 .chip input:checked+span::before{display:none}
.chips.c3 .chip input:checked+span::after{content:"✓";position:absolute;right:12px;top:12px;width:26px;height:26px;border-radius:50%;background:#fff;color:#7a1f1c;display:grid;place-items:center;font:800 14px var(--f)}
.plan-c input:checked+span em,.plan-c input:checked+span small{color:#ffd6cf!important}
.fld{display:flex;flex-direction:column;margin-top:22px}
.fld label{order:-1;position:static;transform:none!important;color:#6f625c!important;font-size:15px;margin:0 0 8px}
.fld input,.fld textarea{padding:16px 18px;border-radius:14px;border:1px solid #e0d4c8;background:#fffdfa}
.fld input::placeholder,.fld textarea::placeholder{color:#a69790}
.row2{gap:0 14px}
.fnav{display:flex;align-items:center;justify-content:space-between;margin-top:26px;transform:none}
.fleft{display:flex;align-items:center;gap:12px}
.fstepn{color:#8c7d76;font-size:14.5px}.fstepn b{color:#8c7d76;font-weight:500}
.fnav #q-back{padding:10px 14px;border:0;background:none;color:#6f625c;font-size:14px}
.fnav #q-back[disabled]{display:none}
.fnav #q-next{background:#1a1414;color:#fff;border-radius:14px;padding:18px 30px;min-width:230px;justify-content:space-between;font-size:17px}
.fnav #q-next:hover{background:var(--ox)}
.fnav #q-next svg{width:22px;height:22px}
@media (max-width:980px){.fgrid{grid-template-columns:1fr}.bub3d{margin-left:auto;margin-right:auto}}
@media (max-width:560px){.stp li span{display:none}.stp li.on span{display:inline}.chips.c3{grid-template-columns:repeat(2,minmax(0,1fr))}.chips.c3 .chip>span{min-height:100px}.fnav #q-next{min-width:0;padding:16px 20px}.f3d::before{inset:12px -6px -12px 10px}}
@media (prefers-reduced-motion:reduce){.bb{animation:none}}
.final .fintro h2{max-width:15ch;font-size:clamp(36px,4.4vw,64px)}
.b-a{display:flex;align-items:center;justify-content:center;gap:9%}
.b-a i{width:14%;margin:0}
.fcard{transform:none!important}
#fcard .btn{translate:none!important}
.final .fintro h2{max-width:none;font-size:clamp(34px,3.9vw,58px)}
.fstepn{white-space:nowrap}
@media (max-width:560px){.fstepn{font-size:13px}.fleft{gap:4px}}
/* ===== v3: cleaner stopwatch ===== */
.pc2 .gauge{right:14px;width:min(270px,44%);top:52%}
.gauge .face,.gauge .rim{display:none}
.gauge .wedge{fill:#7a1f1c;opacity:.92}
.gauge .tk{stroke:#b8aca4;stroke-width:1.4;stroke-linecap:round}
.gauge .tk.m{stroke:#2b2020;stroke-width:3}
.gauge .num text{font:600 11px var(--f);fill:#5a4d48;text-anchor:middle}
.gauge .needle{transform-origin:0 0;animation:pbneedle2 6s linear infinite}
.gauge .needle line{stroke:#1d1515;stroke-width:3}
.gauge .needle circle:first-of-type{fill:#7a1f1c}
@keyframes pbneedle2{from{rotate:0deg}to{rotate:360deg}}
/* ===== v3: realistic calendar ===== */
.cal3d .cal{padding:0;overflow:visible;background:#fbf8f4;border:1px solid #e8dfd5}
.cal .rings{position:absolute;left:12%;right:12%;top:-9px;display:flex;justify-content:space-between;z-index:3}
.cal .rings b{width:7px;height:20px;border-radius:4px;background:linear-gradient(90deg,#8d8580,#e9e4df 45%,#9a928c);box-shadow:0 2px 3px rgba(0,0,0,.35)}
.cal .mhd{height:21%;border-radius:15px 15px 0 0;background:linear-gradient(170deg,#8e2a2d,#64161a);display:flex;align-items:center;justify-content:space-between;padding:0 9%;color:#f6e6e1;font:700 clamp(8px,.9vw,11px) var(--f);letter-spacing:.18em}
.cal .mhd em{width:22%;height:5px;border-radius:3px;background:rgba(255,255,255,.3)}
.cal .wk{display:grid;grid-template-columns:repeat(7,1fr);padding:5% 6% 2%;font:700 clamp(7px,.7vw,9px) var(--f);color:#a0918a;text-align:center}
.cal .days{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;padding:0 6% 7%}
.cal .days i{font-style:normal;font:500 clamp(7px,.72vw,10px)/1 var(--f);color:#6b5d57;text-align:center;padding:5px 0;border-radius:5px;background:#f2ebe3}
.cal .days i.x{background:#9b3a3e;color:#fff;box-shadow:0 4px 6px -3px rgba(74,15,18,.6);transform:translateZ(10px)}
.cal .blk,.cal .grid,.cal-top{display:none}
/* ===== v3: bubbles image ===== */
.bub3d{height:auto;width:min(330px,78%);margin:30px 0 4px}
.bub3d img{display:block;width:100%;height:auto;filter:drop-shadow(0 26px 26px rgba(20,2,4,.5));animation:bbf 6s ease-in-out infinite}
/* ===== v3: step transitions ===== */
.fstep{transform:translateX(48px) scale(.98);filter:blur(8px);transition:transform .6s cubic-bezier(.2,.8,.2,1),opacity .45s,filter .5s,visibility 0s .6s}
.fstep.prev{transform:translateX(-48px) scale(.98)}
.fstep.on{transform:none;filter:none;transition:transform .7s cubic-bezier(.2,.8,.2,1) .08s,opacity .5s .08s,filter .6s .08s,visibility 0s}
.fstep.on legend,.fstep.on .lsub,.fstep.on .chips>*,.fstep.on .fld,.fstep.on .sub,.fstep.on .row2{animation:fsin .6s cubic-bezier(.2,.8,.2,1) both}
.fstep.on .lsub{animation-delay:.12s}.fstep.on .chips>*:nth-child(1){animation-delay:.16s}.fstep.on .chips>*:nth-child(2){animation-delay:.2s}.fstep.on .chips>*:nth-child(3){animation-delay:.24s}.fstep.on .chips>*:nth-child(4){animation-delay:.28s}.fstep.on .chips>*:nth-child(5){animation-delay:.32s}.fstep.on .chips>*:nth-child(6){animation-delay:.36s}.fstep.on .fld,.fstep.on .row2,.fstep.on .sub{animation-delay:.34s}
@keyframes fsin{from{opacity:0;transform:translateY(16px)}}
.stp li+li::before{background:linear-gradient(90deg,var(--ox) 50%,#d9cbbf 50%) 100% 0/200% 100%;transition:background-position .7s cubic-bezier(.2,.8,.2,1)}
.stp li.on::before,.stp li.done::before{background-position:0 0}
.stp li b{transition:background .45s,color .45s,box-shadow .45s,transform .45s cubic-bezier(.2,.8,.2,1)}
.stp li.on b{transform:scale(1.08)}
/* ===== v3: chip hover ===== */
.chip>span{transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .3s,box-shadow .35s,background .35s}
.chip>span::after{pointer-events:none}
.chip:hover>span{transform:translateY(-5px);border-color:rgba(122,31,28,.45)!important;box-shadow:0 22px 30px -20px rgba(74,15,18,.5),0 0 0 3px rgba(122,31,28,.07)}
.chips .chip>span{background-image:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.75) 50%,transparent 65%),linear-gradient(160deg,#fffdfa,#f7f0e8);background-size:250% 100%,100% 100%;background-position:120% 0,0 0;background-repeat:no-repeat}
.chips .chip:hover>span{background-position:-30% 0,0 0;transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .3s,box-shadow .35s,background-position .9s ease}
.chip:hover svg{transform:translateY(-2px) scale(1.15) rotate(-6deg);color:#9b2a2f}
.plan-c:hover em{color:#9b2a2f}
.chip.sm:hover>span{transform:translateY(-3px)}
.chip:active>span{transform:translateY(-1px) scale(.98)}
.chip input:checked+span{animation:chpop .5s cubic-bezier(.2,.8,.2,1)}
@keyframes chpop{40%{transform:translateY(-5px) scale(1.04)}}
#q-next{position:relative;overflow:hidden}
#q-next::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.18) 50%,transparent 70%);transform:translateX(-100%);transition:transform .7s}
#q-next:hover::after{transform:translateX(100%)}
#q-next svg{transition:transform .3s cubic-bezier(.2,.8,.2,1)}#q-next:hover svg{transform:translateX(4px)}
@media (max-width:980px){.pc2 .gauge{position:relative;right:auto;top:auto;translate:none;width:240px;margin:0 auto 8px}}
@media (prefers-reduced-motion:reduce){.fstep,.fstep.on *{animation:none!important;filter:none!important}}

/* social icons in nav */
.top nav .soc{display:flex;align-items:center;gap:8px;margin-left:-6px}
.top nav .soc a{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;position:relative;transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s}
.top nav .soc svg{width:19px;height:19px}
.top nav .soc .ig{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285aeb 90%);box-shadow:0 4px 12px -4px rgba(214,36,159,.55)}
.top nav .soc .tt{background:#111;box-shadow:0 4px 12px -4px rgba(0,0,0,.5)}
.top nav .soc .tt svg path{fill:#fff;filter:drop-shadow(-1.3px -1px 0 #25f4ee) drop-shadow(1.3px 1px 0 #fe2c55)}
.top nav .soc a:hover{transform:translateY(-2px) scale(1.06)}
.top nav .soc .ig:hover{box-shadow:0 8px 18px -6px rgba(214,36,159,.7)}
.top nav .soc .tt:hover{box-shadow:0 8px 18px -6px rgba(254,44,85,.6)}
@media (max-width:980px){.top nav .soc a{display:grid!important}.top nav .soc{margin-left:0}}
@media (max-width:560px){.top nav{gap:12px}.top nav .soc a{width:34px;height:34px}}

/* ===== 15s reel ===== */
.reel{background:var(--bg);color:var(--ink);overflow:hidden;border-top:1px solid var(--line)}
.reel .wrap{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(30px,6vw,90px)}

.reel h2{margin:0}
.reel .lead{max-width:44ch;margin:18px 0 0}
.reel .btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}

.btn.snd{background:#fff;color:var(--ink);border-color:var(--line);cursor:pointer;font-family:inherit}
.btn.snd:hover{border-color:var(--ink)}
.btn.snd svg{width:20px;height:20px}.btn.snd .on{display:none}
.btn.snd[aria-pressed="true"] .on{display:block}.btn.snd[aria-pressed="true"] .off{display:none}
.rl-ph{position:relative;display:grid;place-items:center}
.rl-dev{position:relative;z-index:1;width:min(340px,78vw);border-radius:44px;background:#0a0808;padding:46px 12px 62px;box-shadow:0 0 0 1.5px #2b2424,0 0 0 4px #0a0808,0 50px 80px -34px rgba(60,30,25,.45),0 24px 40px -24px rgba(60,30,25,.35),inset 0 0 0 1px rgba(255,255,255,.06);cursor:pointer}
.rl-dev video{width:100%;aspect-ratio:9/16;height:auto;object-fit:cover;border-radius:22px;display:block;background:#120d0d}
.rl-isl{position:absolute;top:15px;left:50%;translate:-50% 0;width:28%;height:20px;border-radius:20px;background:#000}
.rl-mute{position:absolute;right:16px;bottom:12px;width:38px;height:38px;border-radius:50%;border:0;background:#1e1818;color:#fff;display:grid;place-items:center;cursor:pointer;transition:transform .2s,background .2s}
.rl-mute:hover{transform:scale(1.08);background:#2a2222}
.rl-mute svg{width:19px;height:19px}.rl-mute .w{display:none}.rl-dev.snd .rl-mute .w{display:block}.rl-dev.snd .rl-mute .x{display:none}
.rl-pg{position:absolute;left:24px;right:68px;bottom:29px;height:3px;border-radius:3px;background:rgba(255,255,255,.25);overflow:hidden}
.rl-pg i{position:absolute;inset:0;background:#fff;transform-origin:0 50%;transform:scaleX(0)}
.rl-glow{position:absolute;width:115%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#ece4d9 0%,rgba(236,228,217,0) 64%);z-index:0;pointer-events:none}
@media (max-width:860px){.reel .wrap{grid-template-columns:1fr;text-align:left}.rl-ph{margin-top:10px}.rl-dev{width:min(300px,76vw)}}
@media (prefers-reduced-motion:reduce){.rl-mute:hover{transform:none}}

/* reel text v2 */
.rl-tx{position:relative}
.reel h2{font-size:clamp(40px,4.6vw,64px);line-height:1;letter-spacing:-.045em}
.reel h2 em{display:block}
.reel h2 em::after{content:"";display:inline-block;width:.07em;height:.78em;background:var(--ox);margin-left:.08em;vertical-align:-.04em;animation:rlblink 1.05s steps(1) infinite}
@keyframes rlblink{50%{opacity:0}}
.rl-steps{list-style:none;margin:34px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;position:relative;max-width:620px}
.rl-steps::before{content:"";position:absolute;left:6px;right:6px;top:7px;height:2px;background:linear-gradient(90deg,var(--line),var(--line) 70%,rgba(122,31,28,.45))}
.rl-steps li{position:relative;padding:28px 14px 0 0;display:flex;flex-direction:column;gap:3px}
.rl-steps li::before{content:"";position:absolute;left:0;top:0;width:16px;height:16px;border-radius:50%;background:var(--bg);border:2px solid var(--ink);box-sizing:border-box;transition:transform .3s cubic-bezier(.2,.8,.2,1),background .3s}
.rl-steps li:hover::before{transform:scale(1.25);background:var(--ink)}
.rl-steps b{font:700 12px var(--f);letter-spacing:.14em;color:var(--mu)}
.rl-steps span{font:800 clamp(19px,1.7vw,23px)/1.1 var(--f);letter-spacing:-.03em;color:var(--ink)}
.rl-steps small{font:500 13.5px/1.35 var(--f);color:var(--mu)}
.rl-steps .d7::before{background:var(--ox);border-color:var(--ox);box-shadow:0 0 0 6px rgba(122,31,28,.12)}
.rl-steps .d7 b{font:900 30px/1 var(--f);letter-spacing:-.04em;color:var(--ox);margin-top:-10px}
.rl-steps .d7 span{color:var(--ox)}
.rl-steps .d7{flex-direction:row;flex-wrap:wrap;align-items:baseline;column-gap:6px}.rl-steps .d7 small{width:100%}
.btn.snd{gap:12px}
.btn.snd .eq{display:inline-flex;align-items:flex-end;gap:2.5px;height:16px;width:18px}
.btn.snd .eq u{display:block;width:3px;border-radius:2px;background:currentColor;height:30%;transition:height .2s}
.btn.snd .eq u:nth-child(2){height:70%}.btn.snd .eq u:nth-child(3){height:45%}.btn.snd .eq u:nth-child(4){height:85%}
.btn.snd[aria-pressed="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
.btn.snd[aria-pressed="true"] .eq u{animation:rleq .9s ease-in-out infinite}
.btn.snd[aria-pressed="true"] .eq u:nth-child(2){animation-delay:-.3s}.btn.snd[aria-pressed="true"] .eq u:nth-child(3){animation-delay:-.6s}.btn.snd[aria-pressed="true"] .eq u:nth-child(4){animation-delay:-.15s}
@keyframes rleq{0%,100%{height:25%}50%{height:100%}}
.btn.snd:not([aria-pressed="true"]):hover .eq u{animation:rleq 1.1s ease-in-out infinite}
.btn.snd:not([aria-pressed="true"]):hover .eq u:nth-child(2){animation-delay:-.4s}.btn.snd:not([aria-pressed="true"]):hover .eq u:nth-child(3){animation-delay:-.7s}
@media (max-width:560px){.rl-steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:22px}.rl-steps::before{display:none}.rl-steps li{padding-top:26px}}
.reel .kicker{display:flex;width:max-content}
@media (prefers-reduced-motion:reduce){.reel h2 em::after,.btn.snd .eq u{animation:none!important}}

/* ===== wider, roomier layout ===== */
.wrap{max-width:1360px}
.top .wrap{height:86px}
.top img{height:31px;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.top a:hover img{transform:scale(1.04)}
.top nav{gap:28px;font-size:15.5px}
@media (min-width:981px){.hero .wrap:not(.tw){grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(30px,5vw,90px)}}
.hero h1{font-size:clamp(44px,4.5vw,84px)}
.hero .lead{font-size:clamp(17px,1.3vw,21px);max-width:40ch}
.hero .fan{max-width:680px;justify-self:center}
.facts{max-width:660px}
section{padding-block:clamp(84px,10vw,150px)}
@media (min-width:1500px){.hero{padding-block:70px 120px}}
@media (max-width:980px){.hero .fan{max-width:520px}.top img{height:26px}.top .wrap{height:74px}}
@media (max-width:560px){.top img{height:22px}}
@media (max-width:980px){.hero .wrap:not(.tw){grid-template-columns:minmax(0,1fr)}.hero .wrap:not(.tw)>div{min-width:0}.hero .kicker{flex-wrap:wrap;max-width:100%}}

/* dropdown lists: readable on dark and light (Windows draws the list itself) */
select option,select optgroup{background-color:var(--card);color:var(--ink)}
