:root{
  --ink:#132b4d;
  --ink-2:#17324d;
  --blue:#1876ef;
  --blue-2:#58a9ff;
  --blue-100:#eaf5ff;
  --blue-150:#deefff;
  --blue-200:#cfe8ff;
  --mint:#dff8ea;
  --mint-strong:#16bf72;
  --lav:#eee8ff;
  --lav-strong:#7358f2;
  --amber:#fff0d3;
  --amber-strong:#f0a428;
  --paper:#fbfdff;
  --white:#fff;
  --line:#d9e7f5;
  --muted:#65798c;
  --shadow:0 24px 70px rgba(43,99,151,.15);
  --shadow-soft:0 14px 35px rgba(43,99,151,.12);
  --radius-xl:34px;
  --radius-lg:24px;
  --radius-md:18px;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:linear-gradient(#fff,#fbfdff 35%,#fff);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
img,svg{display:block;max-width:100%}
.container{width:min(var(--max),calc(100% - 40px));margin:0 auto}
.site-shell{padding:0}
/* The header used to sit inside a ".hero-window" wrapper that was a leftover of the
   old fake "browser window" chrome copied from the design mockups. That wrapper was
   flattened down to just the header's own height, which broke position:sticky: a
   sticky element can only stay pinned while scrolling stays inside its containing
   block, and a wrapper exactly as tall as the header gives it nowhere to stick.
   The header is now a direct child of .site-shell (tall for the whole page) and
   carries its own container-width sizing so its content still aligns with the rest
   of the page. */
.browser-dots{display:none}
.header{width:100%;height:88px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 max(20px,calc(50% - var(--max)/2 + 36px));border-bottom:1px solid #eaf2fa;background:rgba(255,255,255,.95);position:sticky;top:0;z-index:20;box-sizing:border-box}
.brand{font-weight:760;font-size:26px;letter-spacing:-.04em;display:inline-flex;align-items:center;gap:0}.brand .ia{background:linear-gradient(115deg,#5aacff,#3478f2 52%,#705df5);-webkit-background-clip:text;background-clip:text;color:transparent}.brand .regul{color:var(--ink);font-weight:520}
.header-left{display:flex;align-items:center;gap:20px}
.nav{display:flex;align-items:center;gap:34px;font-size:14px;font-weight:650;color:#42576c}.nav a{padding:33px 0 29px;position:relative}.nav a.active{color:#3b8ef4}.nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:20px;height:2px;border-radius:2px;background:#86bffc}
.header-cta{justify-self:end;background:var(--ink);color:#fff;border-radius:999px;padding:14px 24px;font-size:13px;font-weight:650;box-shadow:0 8px 20px rgba(9,35,63,.12);transition:transform .22s ease}.header-cta:hover{transform:scale(1.04)}
.mobile-menu{display:none;background:transparent;border:0;width:42px;height:42px;border-radius:50%;align-items:center;justify-content:center}
.mobile-menu span,.mobile-menu:before,.mobile-menu:after{content:"";width:20px;height:2px;background:var(--ink);display:block;position:absolute}.mobile-menu:before{transform:translateY(-6px)}.mobile-menu:after{transform:translateY(6px)}
.hero-main{position:relative;min-height:520px;background:linear-gradient(115deg,#e7f4ff 0%,#eaf5ff 45%,#dceeff 100%);overflow:hidden}
.hero-main-inner{display:grid;grid-template-columns:1.5fr 0.5fr;align-items:start;gap:40px;padding:64px 56px 76px}
.hero-main:before,.hero-main:after{content:"";position:absolute;border-radius:50%;filter:saturate(.9);z-index:0}.hero-main:before{width:250px;height:250px;background:rgba(108,181,247,.35);left:-85px;top:-120px}.hero-main:after{width:260px;height:260px;background:rgba(61,125,210,.18);right:-80px;bottom:-120px}
.hero-copy,.hero-visual{position:relative;z-index:2;min-width:0}
.eyebrow{display:inline-flex;align-items:center;gap:9px;background:rgba(200,229,255,.8);border:1px solid rgba(120,185,244,.22);color:#367bc4;border-radius:999px;padding:9px 14px;font-weight:750;font-size:13px;margin-bottom:22px}.spark-mini{width:15px;height:15px;position:relative}.spark-mini:before,.spark-mini:after{content:"";position:absolute;inset:6px 0;background:currentColor;border-radius:10px}.spark-mini:after{transform:rotate(90deg)}
h1{font-size:clamp(48px,5vw,72px);line-height:.98;letter-spacing:-.055em;margin:0 0 22px;max-width:700px}.accent{background:linear-gradient(115deg,#5aacff,#3478f2 52%,#705df5);-webkit-background-clip:text;background-clip:text;color:transparent}.lead{font-size:18px;line-height:1.65;color:#40586e;max-width:650px;margin:0 0 30px}.cta-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;border-radius:999px;padding:17px 26px;background:var(--ink);color:white;font-size:14px;font-weight:720;box-shadow:0 10px 20px rgba(9,35,63,.12);transition:transform .22s ease}.button:hover{transform:scale(1.04)}.button.secondary{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:none}.arrow{font-size:22px;line-height:1;transform:translateY(-1px)}
/* In normal document flow, after the CTA button, instead of absolutely positioned:
   at any width/copy-length the floating version either overlapped the H1 or the CTA
   row (both were tried live and both collided with real content). A static card
   below the button can't collide with anything above it. */
.metric-card{display:flex;align-items:center;gap:14px;width:fit-content;max-width:100%;margin-top:22px;background:#fff;border:1px solid #e5eff8;border-radius:18px;padding:14px 18px;box-shadow:var(--shadow-soft)}.metric-icon{flex:0 0 auto;width:40px;height:40px;border-radius:12px;background:var(--blue-100);color:#1471e7;display:grid;place-items:center}.metric-card .kicker{display:block;font-size:12px;color:#62778b}.metric-card strong{font-size:16px;letter-spacing:-.02em;margin-right:4px}.metric-card span{font-size:12px;color:#667b90}
.hero-visual{min-height:360px;display:grid;place-items:start}.visual-stack{position:relative;width:min(100%,500px);height:345px;transform:translateX(-123px)}.doc-card{position:absolute;left:34px;top:48px;width:320px;height:270px;background:rgba(255,255,255,.9);border-radius:28px;border:1px solid #dceafa;box-shadow:0 20px 45px rgba(71,128,180,.16);padding:24px}.doc-line{height:12px;border-radius:8px;background:#d8e4ee;margin-bottom:13px}.doc-line.short{width:42%}.doc-line.med{width:66%}.doc-line.long{width:82%}.status-list{margin-top:8px;background:#fff;border:1px solid #e4edf5;border-radius:18px;padding:18px;box-shadow:0 15px 35px rgba(73,123,169,.08)}.status-row{display:grid;grid-template-columns:12px 1fr;gap:13px;align-items:center;padding:10px 0}.status-row+.status-row{border-top:1px solid #eef3f7}.status-dot{width:10px;height:10px;border-radius:50%}.status-dot.green{background:#2dc77c}.status-dot.orange{background:#f2b339}.status-dot.blue{background:#4898f3}.status-copy .doc-line{height:8px;margin:0 0 6px}.status-copy .doc-line:last-child{margin-bottom:0;width:56%;opacity:.65}
.notice{position:absolute;right:-120px;top:195px;width:210px;background:rgba(255,255,255,.97);border:1px solid #dceafa;border-radius:14px;padding:10px 11px;box-shadow:0 14px 32px rgba(51,111,167,.16);display:flex;gap:9px;align-items:center;z-index:7}.notice-icon{flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:linear-gradient(145deg,#58b8ff,#407df2);display:grid;place-items:center;color:white;font-size:12px;text-shadow:0 1px 6px rgba(255,255,255,.4)}.notice strong{display:block;font-size:9px;font-weight:780;margin-bottom:3px;letter-spacing:-.01em}.notice .doc-line{height:6px;margin:0 0 4px;background:#e1eaf3}.notice .doc-line:last-child{margin-bottom:0}
.spark-orb{position:absolute;left:250px;top:5px;width:76px;height:76px;border-radius:50%;background:linear-gradient(135deg,#6ec6ff 0%,#3574f0 55%,#7058f5 100%);box-shadow:0 14px 36px rgba(60,100,220,.28);z-index:5;display:grid;place-items:center}
.spark-burst{position:absolute;left:250px;top:5px;width:76px;height:76px;z-index:6;pointer-events:none}
.spark-burst span{position:absolute;background:linear-gradient(90deg,#f5c030,#f09428);border-radius:3px;height:3px;width:14px;transform-origin:center center}
.spark-burst span:nth-child(1){top:-1px;left:3px;transform:rotate(-135deg)}
.spark-burst span:nth-child(2){top:-11px;left:31px;transform:rotate(-90deg)}
.spark-burst span:nth-child(3){top:-1px;left:58px;transform:rotate(-45deg)}
.dash-arc{position:absolute;left:0;top:0;width:430px;height:270px;max-width:none;z-index:3;pointer-events:none;overflow:visible}
.doc-brand{font-weight:760;font-size:17px;letter-spacing:-.04em;display:inline-flex;align-items:center;gap:0;margin-bottom:10px}.doc-brand .ia{background:linear-gradient(115deg,#5aacff,#3478f2 52%,#705df5);-webkit-background-clip:text;background-clip:text;color:transparent}.doc-brand .regul{color:var(--ink);font-weight:520}
.hero-copy .lead{font-size:15px}
.hero-copy h1{max-width:940px}
@media(min-width:1380px){.hero-copy h1{font-size:64px}}
.feature-overlap{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;position:relative;z-index:10;margin:-90px 62px 0}.feature-card{position:relative;min-height:225px;background:#fff;border:1px solid #e3edf7;border-radius:24px;padding:25px 26px 22px;box-shadow:0 18px 36px rgba(50,105,156,.12);display:flex;flex-direction:column}.feature-icon{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;margin-bottom:20px}.feature-icon.blue{background:#dff0ff;color:#1876ef}.feature-icon.mint{background:var(--mint);color:var(--mint-strong)}.feature-icon.lav{background:var(--lav);color:var(--lav-strong)}.feature-card h3{font-size:21px;letter-spacing:-.025em;margin:0 0 5px}.feature-card h4{font-size:13px;font-weight:700;color:var(--blue);letter-spacing:-.01em;margin:0 0 10px;line-height:1.3}.feature-card p{color:#60758a;font-size:14px;line-height:1.55;margin:0 0 18px}.feature-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:auto}.feature-bar{height:9px;border-radius:999px;width:132px}.feature-bar.blue{background:#9bd0ff}.feature-bar.mint{background:#a9edca}.feature-bar.lav{background:#d0c3ff}.circle-arrow{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#eef6ff;font-size:18px}.circle-arrow.blue{background:#dff0ff;color:#1876ef}.circle-arrow.mint{background:var(--mint);color:var(--mint-strong)}.circle-arrow.lav{background:var(--lav);color:var(--lav-strong)}
.section{padding:110px 0}.section.tight{padding:80px 0}.section-tint{background:linear-gradient(180deg,#f9fcff,#eef7ff)}.section.tight.section-tint{padding-top:0}.section-title{font-size:clamp(36px,4vw,58px);letter-spacing:-.05em;line-height:1.03;margin:0 0 18px}.section-subtitle{max-width:720px;color:var(--muted);font-size:18px;line-height:1.65;margin:0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:50px}.kicker-label{color:#4d86bb;font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:12px;margin-bottom:14px}
.process-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:42px;align-items:stretch}.steps{display:grid;align-content:space-between}.step{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px 25px;display:grid;grid-template-columns:46px 1fr;gap:18px;align-items:start;box-shadow:0 10px 24px rgba(72,118,161,.07);transition:transform .22s ease,box-shadow .22s ease}.step:hover{transform:scale(1.025);box-shadow:0 16px 36px rgba(72,118,161,.14)}.step-num{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:#e4f2ff;color:#2e7cd1;font-weight:850}.step h3{font-size:18px;margin:1px 0 8px;letter-spacing:-.02em}.step p{font-size:14px;color:#687c90;line-height:1.6;margin:0}
.dashboard{background:#fff;border:1px solid #dce9f5;border-radius:28px;box-shadow:var(--shadow);overflow:hidden}.dash-header{background:linear-gradient(to right,#0d1e35 30%,rgba(13,30,53,.8) 55%,rgba(13,30,53,.05) 100%),url('/assets/images/hammer.jpg') right 45%/cover no-repeat #0d1e35;color:white;padding:22px 28px;min-height:110px;display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.dash-header-copy{display:flex;flex-direction:column;gap:10px}.dash-subtitle{margin:0;font-size:13px;font-weight:500;color:rgba(255,255,255,.85);line-height:1.55;letter-spacing:-.01em}.dash-brand{font-size:20px;font-weight:800}.dash-header h3{font-size:30px;margin:8px 0 0;letter-spacing:-.04em}.dash-logo{font-size:32px;text-decoration:none}.dash-logo .regul{color:white}.active-pill{background:#e6fff1;color:#0a7e48;border-radius:999px;padding:10px 14px;font-size:12px;font-weight:800;white-space:nowrap}.lav-pill{background:var(--lav);color:var(--lav-strong)}.dash-pills{display:flex;flex-direction:column;gap:8px;align-items:flex-end}.dash-pills .active-pill{text-align:center;align-self:stretch}.dash-body{display:grid;grid-template-columns:1.25fr .75fr;gap:16px;padding:18px;background:#f6faff}.dash-panel{background:white;border:1px solid #e1edf7;border-radius:19px;padding:18px}.dash-panel h4{margin:0 0 14px;font-size:15px}.reg-list{display:grid;gap:9px}.reg-row{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;padding:10px;border:1px solid #edf3f8;border-radius:12px}.flag-chip{width:34px;height:34px;border-radius:10px;background:#e4f2ff;display:grid;place-items:center;font-size:11px;font-weight:850;color:#226cb3}.reg-copy strong{font-size:12px;display:block}.reg-copy span{font-size:10px;color:#7d8d9c}.tag{border-radius:999px;padding:6px 9px;font-size:9px;font-weight:800}.tag.green{background:#ddf8e9;color:#17804d}.tag.blue{background:#e1f0ff;color:#2477c8}.tag.orange{background:#fff1d6;color:#b97713}.quick-actions{display:grid;gap:10px}.quick{border:1px solid #e4edf6;border-radius:12px;padding:12px;font-size:11px;font-weight:700}.compliance{margin-top:12px;border:1px solid #e4edf6;border-radius:14px;padding:15px}.compliance strong{font-size:28px;display:block;margin-top:7px}.bars{height:54px;display:flex;align-items:end;gap:7px;margin-top:8px}.bars span{flex:1;border-radius:5px 5px 0 0;background:#b7dcff}.bars span:nth-child(1){height:25%}.bars span:nth-child(2){height:40%}.bars span:nth-child(3){height:55%}.bars span:nth-child(4){height:72%}.bars span:nth-child(5){height:90%}
.cta-band{background:linear-gradient(120deg,#e6f4ff,#f3f9ff);border:1px solid #d9ebfb;border-radius:30px;padding:46px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:30px}.cta-band h2{margin:0 0 10px;font-size:38px;letter-spacing:-.04em}.cta-band p{margin:0;color:#62788d;line-height:1.6}.cta-band-logo{font-size:32px;margin-bottom:14px;display:inline-flex}
.dpanel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.dpanel-title{display:flex;align-items:center;gap:9px}.dpanel-title h4{margin:0;font-size:14px;font-weight:750}.dpanel-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;flex:0 0 auto}.dpanel-icon.blue{background:#e4f2ff;color:#2477c8}.dpanel-icon.green{background:#ddf8e9;color:#17804d}.dpanel-icon.lav{background:var(--lav);color:var(--lav-strong)}.voir-tout{font-size:11px;font-weight:700;color:#2477c8;border:1px solid #cde3f5;border-radius:999px;padding:5px 11px;text-decoration:none;white-space:nowrap}.update-list{display:grid;gap:7px}.update-row{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;padding:9px 11px;border:1px solid #edf3f9;border-radius:12px}.update-meta{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.flag-circle{width:34px;height:34px;border-radius:50%;background:#f0f5fa;display:grid;place-items:center;font-size:19px;line-height:1;flex:0 0 auto}.update-copy{min-width:0}.update-copy strong{font-size:12px;font-weight:750;display:block;margin-bottom:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.update-copy span{font-size:10px;color:#8b9aaa;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.update-date{font-size:10px;color:#9ba8b4;white-space:nowrap}.dash-right-col{display:flex;flex-direction:column;gap:16px}.action-list{display:grid;gap:8px;margin-top:2px}.action-row{display:flex;align-items:center;gap:12px;padding:11px 13px;border:1px solid #edf3f9;border-radius:12px;background:#f8fbff;cursor:pointer;text-decoration:none;color:inherit}.action-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;flex:0 0 auto}.action-icon.blue{background:#e4f2ff;color:#2477c8}.action-icon.green{background:#ddf8e9;color:#17804d}.action-icon.lav{background:var(--lav);color:var(--lav-strong)}.action-row>span:first-of-type{flex:1;font-size:12px;font-weight:650;color:var(--ink);white-space:nowrap}.action-row>span:last-child{color:#aab5c0;font-size:13px}.conformity-new{margin-top:4px}.conformity-row-new{display:flex;align-items:center;gap:10px;margin-bottom:4px}.conformity-pct{font-size:30px;font-weight:850;letter-spacing:-.04em;color:var(--ink);display:inline}.conformity-desc{font-size:10px;color:#8b9aaa;margin:0 0 10px}
.footer{padding:48px 0 55px;border-top:1px solid #e6eef5}.footer-grid{display:grid;grid-template-columns:1.3fr .7fr .7fr;gap:30px;align-items:start}.footer .brand{font-size:24px;margin-bottom:14px}.footer p,.footer a{font-size:13px;color:#6d8092;line-height:1.8}.footer-links{display:grid;gap:8px}.footer-title{font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.11em;margin-bottom:8px;color:#435c73}.copyright{margin-top:28px;color:#8b9aaa;font-size:12px}
.page-hero{padding:92px 0 60px}.page-hero-card{background:linear-gradient(115deg,#e7f4ff,#dfefff);border:1px solid #d8eaf8;border-radius:32px;padding:70px;position:relative;overflow:hidden}.page-hero-card:after{content:"";position:absolute;width:300px;height:300px;border-radius:50%;right:-90px;bottom:-160px;background:rgba(88,169,255,.18)}.page-hero h1{max-width:940px}.page-hero .lead{max-width:760px}.mini-note{margin-top:24px;color:var(--blue);font-size:16px;font-weight:750}
.offers-grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:34px}
.offer-card{display:flex;flex-direction:column;background:#fff;border:1px solid #d8eaf8;border-radius:var(--radius-lg);padding:34px}
.offer-card.pro{border:2px solid var(--mint-strong);box-shadow:var(--shadow-soft);position:relative;overflow:visible}
.recommended-badge{position:absolute;top:-16px;left:28px;background:#e6fff1;color:#0a7e48;border-radius:999px;padding:7px 13px;font-size:12px;font-weight:800}
.offer-card h3{font-size:26px;letter-spacing:-.03em;margin:0 0 10px}
.offer-desc{color:#60758a;font-size:14px;line-height:1.6;margin:0 0 20px}
.offer-badges{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}
.offer-badge{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:8px 13px 8px 8px;font-size:12px;font-weight:700;background:#f4f8fb;border:1px solid var(--line)}
.offer-badge .ico{width:17px;height:17px;border-radius:50%;display:grid;place-items:center;font-size:9px;flex:0 0 auto}
.offer-badge.yes .ico{background:var(--mint);color:var(--mint-strong)}
.offer-badge.no .ico{background:#fdeaec;color:#d94a5c}
.offer-callout{background:var(--blue-100);border-radius:14px;padding:16px 18px;margin-bottom:22px}
.offer-callout strong{display:block;font-size:14px;margin-bottom:6px}
.offer-callout span{font-size:13px;color:#4a6376;line-height:1.55;display:block}
.offer-divider{height:1px;background:var(--line);margin:4px 0 18px}
.offer-list{list-style:none;margin:0 0 26px;padding:0;display:grid;gap:12px}
.offer-list li{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.5;color:var(--ink)}
.offer-list li:before{content:"";flex:0 0 auto;width:18px;height:18px;border-radius:50%;margin-top:1px;display:grid;place-items:center;font-size:9px;font-weight:900}
.offer-list li.yes:before{content:"✓";background:var(--mint);color:var(--mint-strong)}
.offer-list li.no{color:#9fb0c2}
.offer-list li.no:before{content:"✕";background:#fdeaec;color:#d94a5c}
.offer-list li.plus:before{content:"+";background:var(--blue-100);color:#1471e7;font-size:12px}
.offer-cta{margin-top:auto;width:100%}
.offer-note{position:relative;z-index:2;margin-top:20px;background:rgba(255,255,255,.6);border:1px solid #d8eaf8;border-radius:18px;padding:18px 22px;text-align:center;font-size:14px;color:#3f5b73}
.offer-note strong{color:var(--ink)}
.faq{display:grid;gap:12px}.faq details{background:#fff;border:1px solid var(--line);border-radius:18px;padding:0 22px;box-shadow:0 9px 20px rgba(63,110,152,.05)}.faq summary{cursor:pointer;list-style:none;font-weight:780;padding:20px 42px 20px 0;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:0;top:16px;font-size:24px;color:#5a83aa}.faq details[open] summary:after{content:"–"}.faq p{margin:0;padding:0 0 22px;color:#667c91;line-height:1.7}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:stretch}.contact-copy{padding:30px 8px}.contact-copy h1{font-size:clamp(46px,5vw,68px)}.contact-copy .lead{max-width:600px}.form-card{background:linear-gradient(180deg,#eef7ff,#e5f1ff);border:1px solid #d7e8f8;border-radius:28px;padding:32px;box-shadow:var(--shadow-soft)}.field{display:grid;gap:8px;margin-bottom:17px}.field label{font-size:13px;font-weight:780}.field input,.field textarea{width:100%;border:1px solid #cfe0ef;background:#fff;border-radius:13px;padding:15px 16px;color:var(--ink);outline:none;transition:.2s}.field textarea{min-height:120px;resize:vertical}.field input:focus,.field textarea:focus{border-color:#61a8ef;box-shadow:0 0 0 4px rgba(78,157,236,.12)}.offer-select{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0 20px}.radio-card{display:flex;align-items:center;gap:10px;border:1px solid #ccdfef;background:#fff;border-radius:13px;padding:14px 15px;font-weight:720;font-size:13px}.submit{width:100%;border:0;cursor:pointer}.response-pill{display:inline-flex;align-items:center;gap:8px;background:#f4fff9;color:#22744d;border:1px solid #d6f6e4;border-radius:999px;padding:10px 14px;font-size:12px;font-weight:800}.green-dot{width:10px;height:10px;border-radius:50%;background:#24c979}.legal{padding:90px 0}.legal-card{background:#fff;border:1px solid var(--line);border-radius:26px;padding:45px;box-shadow:0 12px 30px rgba(67,112,152,.07)}.legal h1{font-size:46px}.legal h2{font-size:18px;margin:28px 0 8px}.legal p,.legal li{color:#5f7488;line-height:1.75}.legal ul{padding-left:22px}
.mobile-drawer{display:none}
@media(max-width:1050px){
  .header{grid-template-columns:1fr auto}.nav{display:none}.header-cta{display:none}.mobile-menu{display:flex;justify-self:end;position:relative}.header-left .desktop-dots{display:none}
  .hero-main-inner{grid-template-columns:1fr;padding:55px 42px 120px}.hero-copy{max-width:760px}.hero-visual{min-height:340px}.visual-stack{margin:0 auto;transform:none}
  .feature-overlap{margin:-54px 34px 0;grid-template-columns:repeat(3,1fr)}
  .process-grid{grid-template-columns:1fr}.dashboard{max-width:800px}.contact-grid{grid-template-columns:1fr}.contact-copy{padding-top:0}.footer-grid{grid-template-columns:1fr 1fr}
  .mobile-drawer.open{display:grid;position:absolute;top:76px;left:20px;right:20px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px;box-shadow:var(--shadow-soft);z-index:99}.mobile-drawer a{padding:13px 12px;border-radius:10px;font-weight:700}.mobile-drawer a:hover{background:#eef7ff}
}
@media(max-width:780px){
  .container{width:min(100% - 24px,var(--max))}.header{width:min(100% - 24px,var(--max));height:72px;padding:0 20px}.brand{font-size:22px}
  .hero-main-inner{padding:42px 22px 124px}.hero-main{min-height:auto}.hero-main:before{width:180px;height:180px}.hero-main:after{width:180px;height:180px}.eyebrow{margin-bottom:18px}h1{font-size:44px}.lead{font-size:16px;line-height:1.55}.button{width:max-content;padding:16px 20px;margin-left:auto;margin-right:auto}.cta-row{display:grid;grid-template-columns:1fr;width:100%}
  .hero-visual{min-height:330px;margin-top:20px}.visual-stack{transform:scale(.9);transform-origin:center top}.metric-card strong{font-size:15px}
  .feature-overlap{grid-template-columns:1fr;margin:-40px 14px 0;gap:12px}.feature-card{min-height:0}.feature-bottom{margin-top:8px}
  .section{padding:64px 0}.section-head{display:block;margin-bottom:32px}.section-title{font-size:38px}.section-subtitle{font-size:16px}.steps{gap:12px}.step{padding:20px;grid-template-columns:40px 1fr}.step-num{width:40px;height:40px}
  .dash-body{grid-template-columns:1fr}.dash-header{padding:22px}.dash-header h3{font-size:24px}.active-pill{display:none}.cta-band{grid-template-columns:1fr;padding:30px}.cta-band .button{width:max-content}.footer-grid{grid-template-columns:1fr}.page-hero{padding:60px 0 40px}.page-hero-card{padding:42px 24px}.offers-grid{grid-template-columns:1fr;gap:16px;margin-top:26px}.offer-card{padding:26px 22px}.contact-grid{gap:12px}.form-card{padding:22px}.offer-select{grid-template-columns:1fr}.legal{padding:60px 0}.legal-card{padding:28px 22px}.legal h1{font-size:38px}
}
@media(max-width:500px){
  h1{font-size:34px}.hero-main-inner{padding-top:34px;padding-bottom:60px;gap:20px}.hero-visual{min-height:220px;margin-top:0}.visual-stack{width:420px;max-width:none;transform:scale(.72);transform-origin:top center;margin-top:0;margin-right:0;margin-bottom:-90px;margin-left:-56px}.doc-card{left:40px}.notice{right:2px}.spark-orb{right:24px}.metric-card{margin-top:12px}.page-hero-card{border-radius:22px}.page-hero h1{font-size:41px}.hero-copy h1{font-size:34px}.contact-copy h1{font-size:42px}.section-title{font-size:30px}.cta-band h2{font-size:28px}.section{padding:48px 0}.contact-hero-wrap{padding:40px 0 48px}
}
/* ── Contact page redesign ── */
.contact-hero-wrap{padding:72px 0 80px;position:relative;background:linear-gradient(135deg,#e2eefa 0%,#ecf5ff 50%,#dce9f8 100%);overflow:visible}.contact-hero-wrap::before{content:"";position:absolute;left:-160px;top:-120px;width:500px;height:500px;border-radius:50%;background:rgba(150,200,255,.28);pointer-events:none;z-index:0}.contact-hero-wrap::after{content:"";position:absolute;right:-100px;bottom:-60px;width:380px;height:380px;border-radius:50%;background:rgba(140,190,255,.2);pointer-events:none;z-index:0}.contact-hero-wrap>.container{position:relative;z-index:1}
.cpanel{position:relative;background:#fff;border:1.5px solid #cfe0f0;border-radius:32px;box-shadow:0 28px 80px rgba(43,99,151,.14);display:grid;grid-template-columns:50fr 50fr;overflow:visible;max-width:1060px;margin:0 auto}
.contact-hero-wrap .cpanel{margin:0 auto}
.clogo-badge{position:absolute;top:-20px;left:80px;background:#fff;border:1.5px solid #cfe0f0;border-radius:999px;padding:8px 22px;box-shadow:0 4px 16px rgba(43,99,151,.1);z-index:10}
.cresponse-badge{position:absolute;top:-20px;right:90px;background:#fff;border:1.5px solid #cfe0f0;border-radius:999px;padding:8px 18px;display:flex;align-items:center;gap:9px;font-size:13px;font-weight:720;box-shadow:0 4px 16px rgba(43,99,151,.1);z-index:10}
.cresponse-dot{width:10px;height:10px;border-radius:50%;background:#22c55e;flex:0 0 auto}
.cburst{position:absolute;top:-38px;right:4px;width:54px;height:54px}
.cburst span{position:absolute;display:block;width:3px;border-radius:3px;background:#f0a428}
.cburst span:nth-child(1){height:26px;left:36px;top:14px;transform:rotate(35deg)}
.cburst span:nth-child(2){height:20px;left:22px;top:8px;transform:rotate(35deg)}
.cburst span:nth-child(3){height:14px;left:10px;top:3px;transform:rotate(35deg)}
.cpanel-left{position:relative;padding:32px 32px 32px 80px;display:flex;flex-direction:column;gap:20px;overflow:visible;justify-content:center}
.cphoto-circle{position:absolute;left:-120px;top:20px;width:290px;height:290px;border-radius:50%;overflow:hidden;border:8px solid #d0e5f8;background:#bfd8f0;z-index:1}
.cphoto-circle img{width:100%;height:100%;object-fit:cover;object-position:center 15%}
.cpanel-left h1{font-size:clamp(32px,3.5vw,46px);line-height:1.06;letter-spacing:-.04em;margin:0;max-width:none;white-space:nowrap}
.clead{font-size:14px;color:#485e72;line-height:1.65;margin:0;max-width:400px}
.cfeatures{display:flex;align-items:center}
.cfeat{display:flex;flex-direction:column;align-items:center;gap:10px;padding:4px 22px;text-align:center}
.cfeat:first-child{padding-left:0}
.cfeat-icon{width:54px;height:54px;border-radius:50%;background:#dff0ff;color:#2477c8;display:grid;place-items:center;flex:0 0 auto}.cfeat-icon.mint{background:var(--mint);color:var(--mint-strong)}.cfeat-icon.lav{background:var(--lav);color:var(--lav-strong)}
.cfeat strong{display:block;font-size:13px;font-weight:760;color:var(--ink);line-height:1.2}
.cfeat span{font-size:12px;color:#687c90;line-height:1.3}
.cfeat-div{width:1px;height:64px;background:#d9e8f5;flex:0 0 auto}
.ccta-btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;border-radius:999px;padding:17px 26px;background:#0d1e35;color:#fff;font-size:14px;font-weight:720;border:0;cursor:pointer;box-shadow:0 10px 24px rgba(9,35,63,.2);transition:transform .22s ease;width:auto;align-self:flex-start}
.ccta-btn:hover{transform:scale(1.02)}
.ccta-btn .arrow{font-size:20px;line-height:1}
.cbottom-badge{display:flex;align-items:center;gap:9px;background:#fff;border:1.5px solid #dde9f5;border-radius:14px;padding:7px 12px;box-shadow:0 6px 20px rgba(43,99,151,.12);width:fit-content;position:absolute;bottom:-10px;left:-48px;z-index:2}
.cbottom-icon{width:30px;height:30px;border-radius:8px;background:#dff0ff;display:grid;place-items:center;flex:0 0 auto}
.cbottom-text{display:flex;flex-direction:column;gap:0}
.cbottom-l1{display:block;font-size:11px;color:var(--ink);white-space:nowrap}
.cbottom-l1 strong{font-weight:750}
.cbottom-l2{display:block;font-size:10px;color:#687c90;white-space:nowrap}
.cpanel-right{background:#f5f9ff;border-left:1.5px solid #cfe0f0;border-radius:0 32px 32px 0;padding:40px 32px 36px}
.cform-new{display:grid;gap:16px}
.cfield-new label{display:block;font-size:13px;font-weight:730;color:var(--ink);margin-bottom:6px}
.cinput-wrap{position:relative}
.cinput-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#8ba5be;pointer-events:none}
.ctextarea-icon{top:13px!important;transform:none!important}
.cinput-wrap input,.cinput-wrap textarea{width:100%;border:1.5px solid #d9e8f5;border-radius:12px;font:inherit;font-size:13px;background:#fff;color:var(--ink);outline:none;transition:border-color .2s}
.cinput-wrap input{padding:13px 14px 13px 40px}
.cinput-wrap textarea{padding:12px 14px 12px 40px;resize:vertical;min-height:88px;display:block}
.cinput-wrap input:focus,.cinput-wrap textarea:focus{border-color:#6aaaf7;box-shadow:0 0 0 3px rgba(78,157,236,.1)}
.coffer-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cradio-card{display:flex;align-items:center;gap:10px;border:1.5px solid #d9e8f5;border-radius:999px;padding:12px 20px;font-size:14px;font-weight:680;cursor:pointer;background:#fff;transition:border-color .2s,background .2s;color:var(--ink)}
.cradio-card:has(input:checked){border-color:#3478f2;background:#f0f7ff}
.cradio-card input{accent-color:#3478f2;width:16px;height:16px;flex:0 0 auto}
.cdots{position:absolute;bottom:28px;right:18px;width:112px;height:88px;background-image:radial-gradient(circle,#6aaee0 1.5px,transparent 1.5px);background-size:13px 13px;opacity:.55;pointer-events:none;z-index:0}
@media(max-width:780px){
  .cpanel{grid-template-columns:1fr;border-radius:22px}.clogo-badge{left:50%;transform:translateX(-50%);white-space:nowrap}.cresponse-badge{display:none}
  .cpanel-left{padding:32px 24px 28px;gap:16px;border-radius:22px 22px 0 0;overflow:hidden}.cpanel-left h1{white-space:normal;font-size:clamp(28px,8vw,40px)}
  .clead{max-width:none}.cfeatures{gap:0;flex-wrap:wrap;justify-content:center}.cfeat{padding:4px 10px}.cfeat-div{display:none}.ccta-btn{width:max-content;padding:16px 20px;margin-left:auto;margin-right:auto}
  .cbottom-badge{position:static;margin-top:4px;align-self:center}.cradio-card{line-height:1}
  .cpanel-right{border-left:none;border-top:1.5px solid #cfe0f0;border-radius:0 0 22px 22px;padding:28px 24px}
  .contact-hero-wrap{padding:40px 0 64px}
}
@media(max-width:500px){
  .cpanel-left h1{font-size:28px}
}
/* ── Solution page hero ── */
.solution-hero{background:linear-gradient(115deg,#e7f4ff 0%,#eaf5ff 45%,#dceeff 100%);padding-top:60px;overflow:hidden;position:relative}
.solution-hero::before{content:"";position:absolute;left:-85px;top:-120px;width:250px;height:250px;border-radius:50%;background:rgba(108,181,247,.35);pointer-events:none;z-index:0}
.solution-hero::after{content:"";position:absolute;right:-80px;bottom:-120px;width:260px;height:260px;border-radius:50%;background:rgba(61,125,210,.18);pointer-events:none;z-index:0}
.solution-hero .container{position:relative;z-index:1}
.solution-hero .page-hero-card{background:transparent;border:none;box-shadow:none;overflow:visible;padding-top:0;padding-left:56px;padding-right:56px}
.solution-hero h1{padding-bottom:4px}
.solution-hero .page-hero-card:after{display:none}.faq-brand{font-size:32px;margin-bottom:14px;display:inline-flex}.solution-hero+.section.tight{padding-top:32px}
@media(max-width:780px){
  .solution-hero{padding-top:42px}
  .solution-hero .page-hero-card{padding-left:22px;padding-right:22px}
  .faq-brand{font-size:22px}
}
@media(max-width:500px){
  .solution-hero{padding-top:34px;padding-bottom:48px}
  .mini-note{font-size:13px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
