:root{--ink:#0F1B33;--indigo:#3B4BDB;--sun:#FFC93C;--paper:#F6F8FB;--white:#fff;--mute:#5A6680;--line:#E1E6EF;--r:16px}
@media(prefers-color-scheme:dark){:root{--paper:#0B1226;--white:#131C36;--ink:#EEF1F8;--mute:#9BA6C0;--line:#243052}}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth;scroll-padding-top:80px}
body{font:400 1.05rem/1.65 "DM Sans",system-ui,sans-serif;background:var(--paper);color:var(--ink)}
h1,h2,h3{font-family:"Bricolage Grotesque","DM Sans",sans-serif;line-height:1.1;letter-spacing:-.02em}
h1{font-size:clamp(2.4rem,6vw,4.2rem);font-weight:800}h2{font-size:clamp(1.9rem,4vw,2.9rem);font-weight:700}h3{font-size:1.25rem;font-weight:700}
a{color:inherit}.wrap{width:min(1120px,100% - 2.5rem);margin-inline:auto}
:focus-visible{outline:3px solid var(--sun);outline-offset:3px}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:var(--sun);color:#0F1B33;padding:.5rem 1rem;z-index:99}
.btn{display:inline-block;background:var(--indigo);color:#fff;padding:.85rem 1.5rem;border-radius:999px;text-decoration:none;border:2px solid var(--indigo);cursor:pointer;font:inherit;font-weight:700;transition:transform .15s,background .15s}
.btn:hover{transform:translateY(-2px);background:#2C3BC4}.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line)}.btn.ghost:hover{border-color:var(--indigo);background:transparent}.btn.sm{padding:.55rem 1.1rem}
.nav{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:70px}.logo img{display:block;height:40px;width:auto}
nav{display:flex;align-items:center;gap:1.75rem}nav a{text-decoration:none;font-weight:500}nav a:not(.btn):hover{color:var(--indigo)}
.burger{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer}.burger span{display:block;height:2px;background:var(--ink);margin:6px 10px}
.hero{padding:clamp(3rem,8vw,6.5rem) 0}.hero-in{display:grid;grid-template-columns:1.15fr .85fr;gap:3rem;align-items:center}
.lead{font-size:1.2rem;color:var(--mute);margin:1.5rem 0 2rem;max-width:34em}.cta{display:flex;flex-wrap:wrap;gap:.9rem}
.lab{background:var(--ink);color:#fff;border-radius:24px;padding:1.75rem;box-shadow:0 30px 60px -25px rgba(15,27,51,.5)}
@media(prefers-color-scheme:dark){.lab{background:#1B2648}}
.lab-h{display:flex;align-items:center;gap:.6rem;font-weight:700;margin-bottom:1.5rem}.dot{width:10px;height:10px;border-radius:50%;background:var(--sun);animation:pulse 2s infinite}
.row{display:grid;grid-template-columns:78px 1fr 48px;align-items:center;gap:.8rem;margin:1rem 0;font-size:.95rem}.row b{text-align:right}
.bar{height:14px;background:rgba(255,255,255,.14);border-radius:9px;overflow:hidden}.bar i{display:block;height:100%;width:0;background:#8B96F0;border-radius:9px;animation:grow 1.4s .3s cubic-bezier(.2,.8,.2,1) forwards}
.win .bar i{background:var(--sun)}.win b{color:var(--sun)}.lab-f{font-size:.85rem;opacity:.7;margin-top:1.5rem}
@keyframes grow{to{width:var(--w)}}@keyframes pulse{50%{opacity:.35}}
.band{border-block:1px solid var(--line);background:var(--white)}.band-in{display:flex;flex-wrap:wrap;gap:.75rem 2rem;align-items:center;padding:1.4rem 0;color:var(--mute)}.band-in p{font-weight:700;color:var(--ink)}
.sec{padding:clamp(3.5rem,8vw,6rem) 0}.sub{color:var(--mute);max-width:40em;margin:1rem 0 2.5rem}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:1.25rem}
.grid article{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:1.75rem}
.grid svg{width:44px;height:44px;padding:10px;border-radius:12px;background:color-mix(in srgb,var(--indigo) 12%,transparent);stroke:var(--indigo);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;margin-bottom:1rem}
.grid p{color:var(--mute);margin-top:.5rem}
.dark{background:var(--ink);color:#fff}@media(prefers-color-scheme:dark){.dark{background:#111A35}}.dark .sub{color:#B7C0D8}
.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2rem;counter-reset:s}
.steps li{counter-increment:s;border-top:3px solid var(--sun);padding-top:1.25rem}.steps li::before{content:"Step " counter(s);color:var(--sun);font-weight:700;font-size:.9rem}
.steps h3{margin:.3rem 0 .5rem}.steps p{color:#B7C0D8}
.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:1.25rem;align-items:stretch}
.plans article{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:2rem;display:flex;flex-direction:column}
.plans .pop{border:2px solid var(--indigo);box-shadow:0 24px 50px -28px var(--indigo)}
.price{font:800 2.6rem "Bricolage Grotesque",sans-serif;margin:.75rem 0}.price small{font:400 1rem "DM Sans";color:var(--mute)}
.plans ul{list-style:none;padding:0;margin-bottom:1.75rem;flex:1}.plans li{padding:.5rem 0 .5rem 1.6rem;border-bottom:1px solid var(--line);position:relative}
.plans li::before{content:"";position:absolute;left:0;top:.85rem;width:.8rem;height:.45rem;border-left:2px solid var(--indigo);border-bottom:2px solid var(--indigo);transform:rotate(-45deg)}
.plans .btn{text-align:center}
.cta-sec{background:color-mix(in srgb,var(--indigo) 8%,var(--paper))}.contact{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}
.mail a{font:700 1.3rem "Bricolage Grotesque",sans-serif;color:var(--indigo)}
form{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:2rem;display:grid;gap:1.1rem}
label{display:grid;gap:.4rem;font-weight:500;font-size:.95rem}
input,textarea{font:inherit;padding:.8rem 1rem;border:1.5px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink)}input:focus,textarea:focus{outline:none;border-color:var(--indigo)}
.note{font-size:.95rem;color:var(--mute)}
footer{background:var(--ink);color:#C9D1E6;padding:3rem 0}@media(prefers-color-scheme:dark){footer{background:#080D1D}}
.foot{display:grid;grid-template-columns:auto 1fr auto;gap:2rem;align-items:center}.flogo{filter:brightness(0) invert(1)}.copy{font-size:.9rem}
@media(max-width:860px){.hero-in,.contact{grid-template-columns:1fr}.foot{grid-template-columns:1fr;gap:1rem}
.burger{display:block}nav{position:absolute;top:70px;left:0;right:0;flex-direction:column;align-items:flex-start;background:var(--paper);padding:1.25rem;border-bottom:1px solid var(--line);display:none}nav.open{display:flex}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto}.bar i{width:var(--w)}}
