body{margin:0}img{max-width:100%}[hidden]{display:none!important}

:root{--bg1:#071417;--bg2:#0B2128;--bg3:#12303A;--bg4:#1A4650;--fg:#EAF3F2;--muted:#A9C3C8;--cyan:#2BB8C7;--cyan-l:#7FD9E2;--cyan-xl:#B5EBF0;--teal:#0A5F68;--line:#25454E;--ink:#071417;--card1:#1A4650;--card2:#12303A;--ember:#F2994A;color-scheme:dark}
*{box-sizing:border-box}
html{background:var(--bg1);scroll-behavior:smooth;scroll-padding-top:84px}
body{margin:0;color:var(--fg);font-family:'Figtree',Arial,sans-serif;font-size:17px;line-height:1.55;background:var(--bg1);overflow-x:hidden}
img{max-width:100%}
a{color:inherit}
.wrap{width:100%;max-width:1160px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
h1,h2,h3{font-family:'Bricolage Grotesque','Trebuchet MS',sans-serif;margin:0;text-wrap:balance;line-height:1.08}
h1{font-size:clamp(38px,6.4vw,76px);font-weight:700;letter-spacing:-.5px}
h2{font-size:clamp(30px,4.4vw,52px);font-weight:600;letter-spacing:-.3px}
h3{font-size:24px;font-weight:600;line-height:1.2}
p{margin:0}
.grad-t{background:linear-gradient(180deg,#fff 0%,#B4CCD1 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.eyebrow{font-size:14px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:var(--cyan-l)}
.metal{background:linear-gradient(135deg,#071417 0%,#12303A 40%,#0B2128 62%,#1A4650 100%);position:relative}
.metal::before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0 1px,rgba(0,0,0,.07) 1px 3px),linear-gradient(115deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.07) 32%,rgba(255,255,255,0) 50%)}
.metal>*{position:relative}
section{padding-block:96px}
.card{background:linear-gradient(145deg,var(--card1) 0%,var(--card2) 100%);border:1px solid var(--line);border-radius:20px;box-shadow:0 20px 44px rgba(0,0,0,.45),inset 0 2px 0 rgba(255,255,255,.08)}
/* nav */
nav.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:rgba(7,20,23,.78);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(37,69,78,.7)}
nav.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;height:68px}
nav.top img{height:30px;width:auto;display:block}
nav.top ul{display:flex;gap:28px;list-style:none;margin:0;padding:0;font-size:15px;font-weight:500;color:var(--muted)}
nav.top ul a{text-decoration:none;transition:color .2s}nav.top ul a:hover{color:var(--cyan-l)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:14px 26px;border-radius:14px;border:0;font:600 17px/1 'Figtree',Arial,sans-serif;text-decoration:none;cursor:pointer;color:var(--ink);background:linear-gradient(135deg,#B5EBF0 0%,#2BB8C7 55%,#6FD3DD 100%);box-shadow:0 14px 34px rgba(43,184,199,.28),inset 0 2px 0 rgba(255,255,255,.55);position:relative;overflow:hidden;transition:transform .15s ease,box-shadow .2s}
.btn::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);animation:sheen 4.5s ease-in-out infinite}
.btn:hover{transform:translateY(-2px);box-shadow:0 20px 44px rgba(43,184,199,.4),inset 0 2px 0 rgba(255,255,255,.55)}
.btn:focus-visible,.chip input:focus-visible+span,.field input:focus-visible,summary:focus-visible{outline:3px solid var(--cyan-xl);outline-offset:3px}
.btn.ghost{color:var(--fg);background:transparent;border:1px solid var(--line);box-shadow:none}
.btn.ghost::after{display:none}.btn.ghost:hover{border-color:var(--cyan);box-shadow:none}
.btn.sm{min-height:44px;padding:10px 18px;font-size:15px}
@keyframes sheen{0%,55%{left:-60%}100%{left:130%}}
/* hero */
.hero{padding-block:72px 96px;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.hero .eyebrow{display:inline-flex;align-items:center;gap:10px}
.hero .eyebrow::before{content:"";width:36px;height:3px;border-radius:2px;background:linear-gradient(90deg,var(--cyan),var(--cyan-xl))}
.hero h1{margin-top:18px}
.hero .lead{margin-top:22px;font-size:20px;color:var(--muted);max-width:560px}
.hero .cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.hero .note{margin-top:22px;font-size:15px;color:var(--muted);display:flex;align-items:center;gap:10px}
.dot{width:10px;height:10px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 0 rgba(43,184,199,.6);animation:pulse 2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(43,184,199,.55)}100%{box-shadow:0 0 0 16px rgba(43,184,199,0)}}
.visual{position:relative;aspect-ratio:1/1;max-width:480px;width:100%;justify-self:center}
.visual .ring{position:absolute;left:50%;top:50%;border:1.5px solid rgba(127,217,226,.28);border-radius:50%;transform:translate(-50%,-50%);animation:ring 6s ease-in-out infinite}
.visual .ring:nth-child(1){width:34%;height:34%;border-color:rgba(127,217,226,.5)}
.visual .ring:nth-child(2){width:58%;height:58%;animation-delay:-1.5s}
.visual .ring:nth-child(3){width:82%;height:82%;animation-delay:-3s;border-color:rgba(127,217,226,.2)}
.visual .ring:nth-child(4){width:106%;height:106%;animation-delay:-4.5s;border-color:rgba(127,217,226,.12)}
@keyframes ring{0%,100%{transform:translate(-50%,-50%) scale(1);opacity:1}50%{transform:translate(-50%,-50%) scale(1.04);opacity:.6}}
.visual .core{position:absolute;left:50%;top:50%;width:26%;aspect-ratio:1/1;transform:translate(-50%,-50%);border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#1A4650,#0B2128);border:1px solid var(--line);box-shadow:0 0 60px rgba(43,184,199,.35),inset 0 2px 0 rgba(255,255,255,.1)}
.visual .core img{width:46%;height:auto;animation:flame 3s ease-in-out infinite}
@keyframes flame{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-4px) scale(1.06)}}
.tag{position:absolute;padding:12px 18px;border-radius:14px;font-weight:600;font-size:15px;white-space:nowrap;display:flex;align-items:center;gap:10px;background:linear-gradient(145deg,#1A4650,#12303A);border:1px solid var(--line);box-shadow:0 14px 30px rgba(0,0,0,.45),inset 0 2px 0 rgba(255,255,255,.08);animation:float 5s ease-in-out infinite}
.tag i{width:8px;height:8px;border-radius:50%;background:var(--cyan-l)}
.tag.t1{left:-2%;top:12%}.tag.t2{right:-4%;top:30%;animation-delay:-1.4s}.tag.t3{left:2%;bottom:14%;animation-delay:-2.8s}.tag.t4{right:2%;bottom:2%;animation-delay:-4s}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
/* reveal */
.js .rv{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0s)}
.js .rv.in{opacity:1;transform:none}
/* headings */
.head{max-width:720px;display:flex;flex-direction:column;gap:14px;margin-bottom:52px}
.head p{color:var(--muted);font-size:19px}
/* problem */
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.pain{padding:32px;display:flex;flex-direction:column;gap:14px}
.pain .n{font-family:'Bricolage Grotesque',sans-serif;font-size:56px;font-weight:700;line-height:1;background:linear-gradient(180deg,#B5EBF0,#2BB8C7);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.pain p{color:var(--muted)}
/* method */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;position:relative}
.steps::before{content:"";position:absolute;left:0;right:0;top:28px;height:2px;background:linear-gradient(90deg,var(--cyan),rgba(43,184,199,.1));transform:scaleX(0);transform-origin:left;transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.steps.in::before{transform:scaleX(1)}
.step{position:relative;padding-top:68px}
.step .b{position:absolute;left:0;top:0;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;font:700 22px 'Bricolage Grotesque',sans-serif;color:var(--ink);background:linear-gradient(135deg,#B5EBF0,#2BB8C7);box-shadow:0 0 0 8px var(--bg2)}
.step h3{margin-bottom:10px}.step p{color:var(--muted)}
/* modules */
.grid-m{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.mod{padding:30px;display:flex;flex-direction:column;gap:12px;transition:transform .25s ease,border-color .25s ease}
.mod:hover{transform:translateY(-6px);border-color:var(--cyan)}
.mod .ic{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:rgba(43,184,199,.14);color:var(--cyan-l)}
.mod p{color:var(--muted);font-size:16px}
/* models */
.model{padding:34px;display:flex;flex-direction:column;gap:14px}
.model.hi{border:2px solid var(--cyan);box-shadow:0 24px 54px rgba(43,184,199,.2),inset 0 2px 0 rgba(255,255,255,.08)}
.model .lab{font-size:13px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--cyan-l)}
.model ul{margin:6px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px;color:var(--muted);font-size:16px}
.model li{display:flex;gap:10px}.model li::before{content:"";flex:none;width:18px;height:18px;margin-top:3px;border-radius:50%;background:rgba(43,184,199,.18) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237FD9E2' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12l4 4 8-8'/%3E%3C/svg%3E") center/12px no-repeat}
/* about */
.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:center}
.photo{position:relative;border-radius:24px;overflow:hidden;max-width:420px;justify-self:center;box-shadow:0 30px 70px rgba(0,0,0,.55)}
.photo img{display:block;width:100%;height:auto}
.photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,33,40,0) 60%,rgba(11,33,40,.85) 100%)}
.photo .cap{position:absolute;left:20px;bottom:18px;z-index:1;font-weight:600}
.photo .cap small{display:block;font-weight:500;font-size:14px;color:var(--cyan-l)}
.about .txt{display:flex;flex-direction:column;gap:18px}
.about .txt p{color:var(--muted);font-size:18px}
.pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.pills span{padding:8px 16px;border-radius:999px;font-size:15px;font-weight:500;border:1px solid var(--line);background:rgba(26,70,80,.45)}
/* form */
.formbox{max-width:760px;margin:0 auto;padding:40px;position:relative}
.prog{height:8px;border-radius:4px;background:rgba(255,255,255,.08);overflow:hidden}
.prog i{display:block;height:100%;width:25%;border-radius:4px;background:linear-gradient(90deg,var(--cyan),var(--cyan-xl));transition:width .5s cubic-bezier(.2,.7,.2,1)}
.pmeta{display:flex;justify-content:space-between;margin:12px 0 28px;font-size:14px;color:var(--muted);font-weight:500}
.fs{display:none}.fs.on{display:block;animation:fin .45s ease}
@keyframes fin{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}
.fs h3{font-size:28px;margin-bottom:6px}.fs .sub{color:var(--muted);margin-bottom:22px}
.chips{display:flex;flex-wrap:wrap;gap:12px}
.chip{position:relative}
.chip input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.chip span{display:flex;align-items:center;gap:8px;min-height:50px;padding:12px 20px;border-radius:14px;border:1px solid var(--line);background:rgba(18,48,58,.8);font-weight:500;transition:all .2s ease;cursor:pointer}
.chip:hover span{border-color:var(--cyan)}
.chip input:checked+span{background:linear-gradient(135deg,#B5EBF0,#2BB8C7);color:var(--ink);border-color:transparent;font-weight:600;transform:scale(1.03);box-shadow:0 10px 24px rgba(43,184,199,.3)}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}
.field label{font-size:15px;font-weight:600}
.field input{min-height:52px;padding:12px 16px;border-radius:12px;border:1px solid var(--line);background:rgba(7,20,23,.6);color:var(--fg);font:500 17px 'Figtree',Arial,sans-serif}
.field input::placeholder{color:#6F8D93}
.field.bad input{border-color:#F2994A}
.err{min-height:22px;margin-top:14px;font-size:15px;color:#FFC38A;font-weight:500}
.fnav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:22px}
.sum{display:flex;flex-direction:column;gap:0;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.sum div{display:flex;gap:16px;padding:14px 18px;font-size:16px}
.sum div:nth-child(odd){background:rgba(18,48,58,.7)}.sum dt,.sum b{flex:none;width:150px;color:var(--cyan-l);font-weight:600}
.sum span{min-width:0;overflow-wrap:anywhere}
.acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.hint{margin-top:16px;font-size:14px;color:var(--muted)}
/* faq */
.faq{max-width:820px;display:flex;flex-direction:column;gap:12px}
details{padding:0;border-radius:16px}
summary{list-style:none;cursor:pointer;padding:22px 26px;font:600 20px 'Bricolage Grotesque',sans-serif;display:flex;justify-content:space-between;align-items:center;gap:16px;border-radius:16px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-size:28px;color:var(--cyan-l);transition:transform .25s}
details[open] summary::after{transform:rotate(45deg)}
details p{padding:0 26px 24px;color:var(--muted)}
footer{padding-block:48px;border-top:1px solid var(--line)}
footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;color:var(--muted);font-size:15px}
footer img{height:30px;width:auto}
.fix{position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:max(16px,env(safe-area-inset-bottom,0px));z-index:30;display:none}
@media(max-width:900px){
 section{padding-block:72px}
 nav.top ul{display:none}
 .hero .wrap,.about{grid-template-columns:1fr;gap:40px}
 .visual{max-width:360px}
 .grid3,.grid-m{grid-template-columns:1fr}
 .steps{grid-template-columns:1fr 1fr;row-gap:36px}.steps::before{display:none}
 .formbox{padding:26px 20px}
 .fgrid{grid-template-columns:1fr}
 .sum div{flex-direction:column;gap:2px}.sum dt,.sum b{width:auto}
 .tag{font-size:14px;padding:9px 14px}
}
@media(max-width:520px){.steps{grid-template-columns:1fr}.hero .cta .btn{width:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.js .rv{opacity:1;transform:none}}