
/* ===== Cosmilab US theme: overrides the original landing styles ===== */
:root{
  --red:#D7132F; --red-hi:#D7132F; --red-d:#B5102A; --red-deep:#A8172C;
  --ink:#1F1F23; --ink-2:#141417; --black:#1F1F23;
  --paper:#F6F4F1; --sand:#EFEBE6; --blush:#FBE9EB;
  --gray:#F6F4F1; --soft:#F6F4F1; --white:#FFFFFF;
  --rose:#F4A9B5; --rose-soft:#FBE9EB;
  --txt:#1F1F23; --txt-2:#5E5A56; --mute:#9A958F;
  --f:"Plain","Inter Tight",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --f-display:var(--f); --f-body:var(--f);
  --f-mono:"Plain","Inter Tight",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --navh:98px;
  --card-line:rgba(31,31,35,.08);
}
html{background:var(--ink)}
body{font-family:var(--f);color:#fff}
.pbg{background:var(--ink)}
body[data-bg="gray"] .pbg{background:var(--paper)}
.pbg::after{background:radial-gradient(60% 70% at 62% 45%,rgba(255,255,255,.045),transparent 70%)}
::selection{background:var(--red);color:#fff}

/* ---------- header (same as Cosmilab home) ---------- */
.hdr{position:fixed;top:calc(env(safe-area-inset-top,0px) + 12px);left:max(12px,env(safe-area-inset-left,0px));right:max(12px,env(safe-area-inset-right,0px));z-index:70;color:var(--ink);font-family:var(--f)}
.hdr .wrap{position:relative;display:flex!important;align-items:center;justify-content:space-between;gap:24px;max-width:1080px;min-height:0;height:78px;margin:0 auto;padding:0 12px 0 28px;background:#fff;border-radius:26px;box-shadow:0 10px 40px rgba(60,20,25,.10),0 1px 0 rgba(31,31,35,.04);transition:box-shadow .3s}
.hdr.solid .wrap{box-shadow:0 12px 44px rgba(60,20,25,.16),0 1px 0 rgba(31,31,35,.06)}
.hdr a{color:inherit;text-decoration:none}
.hdr .logo{display:block;flex:none}
.hdr .logo img{height:36px;width:auto;display:block}
.hdr .nav{position:static;display:flex;gap:4px;align-items:center;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;border:0;height:auto;z-index:auto}
.hdr .nav a{font-weight:400;font-size:16px;line-height:1.55;padding:10px 16px;border-radius:999px;transition:background .2s;color:var(--ink);white-space:nowrap}
.hdr .nav a:hover{background:#F3EFEB}
.hdr .nav a.new{background:#F6F2EE}
.hdr .nav a.new::after{content:"Free";font-family:var(--f-mono);font-size:10px;letter-spacing:.08em;text-transform:none;color:var(--red);background:#FBE9EB;border-radius:999px;padding:3px 7px;margin-left:8px;vertical-align:2px}
.hdr .nav .chev{display:inline-block;margin-left:6px;opacity:.6;font-size:9px;transform:translateY(-2px)}
.hdr .hdr-cta{display:flex;gap:10px;align-items:center}
.hdr .acct{width:54px;height:54px;border-radius:50%;border:1px solid #E3DED8;background:#F7F4F1;display:inline-flex;align-items:center;justify-content:center;color:var(--ink);transition:background .2s}
.hdr .acct:hover{background:#EFEBE6}
.hdr .acct svg{width:20px;height:20px}
.hdr .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:auto;font-family:var(--f);font-weight:500;letter-spacing:0;border-radius:999px;border:0;cursor:pointer;white-space:nowrap;box-shadow:none;transition:transform .2s,background .2s,color .2s}
.hdr .btn:hover{transform:translateY(-1px)}
.hdr .btn-cta{background:var(--red);color:#fff;padding:17px 28px;font-size:16px;line-height:1.2}
.hdr .btn-cta:hover{background:#B5102A;color:#fff}
.hdr .burger{display:none;background:#F7F4F1;border:1px solid #E3DED8;color:var(--ink);width:46px;height:46px;border-radius:50%;font-size:18px;cursor:pointer;padding:0;line-height:1}
.hdr :focus-visible{outline:2px solid var(--red);outline-offset:3px;border-radius:999px}
@media (max-width:1080px){
  .hdr .nav{display:none}
  .hdr .burger{display:inline-flex;align-items:center;justify-content:center}
  .hdr.open .nav{display:flex;flex-direction:column;align-items:stretch;gap:2px;position:absolute;top:calc(100% + 8px);left:0;right:0;padding:10px;background:#fff;border-radius:22px;box-shadow:0 18px 50px rgba(60,20,25,.18)}
  .hdr.open .nav a{padding:14px 16px;font-size:17px}
}
@media (max-width:560px){
  :root{--navh:84px}
  .hdr .wrap{height:64px;padding-left:18px;padding-right:8px;border-radius:20px;gap:10px}
  .hdr .logo img{height:26px}
  .hdr .acct{display:none}
  .hdr .btn-cta{padding:12px 16px;font-size:14px}
}
@media (max-width:360px){.hdr .logo img{height:22px}.hdr .btn-cta{padding:11px 12px;font-size:13px}}

/* ---------- buttons ---------- */
.cbtn{font-family:var(--f);font-weight:500;letter-spacing:0}
.cbtn-red{background:var(--red);color:#fff}
.cbtn-red:hover{background:#B5102A}
.cbtn-xl{box-shadow:0 14px 34px -14px rgba(215,19,47,.55)}
.cbtn-ghost{background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}

/* eyebrows: mono, like the home page */
.eb{font:500 12px/1.3 var(--f-mono);letter-spacing:.12em;color:#F4A9B5}
.s1 .eb{color:#fff;opacity:.92}
.s1 .s1-t1 .eb{display:inline-flex;align-items:center;gap:10px}
.s1 .s1-t1 .eb::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--red);box-shadow:0 0 0 4px rgba(215,19,47,.25)}

/* ---------- 1 · hero ---------- */
.s1{background:var(--ink)}
.s1 h1,.s1 h2{font-weight:300;letter-spacing:-.04em}
.s1 h2 strong{font-weight:500}
.s1-t2 .price{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 16px;margin:-6px 0 34px;color:rgba(255,255,255,.7)}
.s1-t2 .price b{font-size:clamp(44px,4.4vw,68px);line-height:1;font-weight:500;letter-spacing:-.04em;color:#fff}
.s1-t2 .price .per{font:400 13px/1.3 var(--f-mono);letter-spacing:.06em;text-transform:none;color:rgba(255,255,255,.75);padding:7px 12px;border-radius:999px;background:rgba(215,19,47,.22);box-shadow:inset 0 0 0 1px rgba(215,19,47,.55)}

/* ---------- 2 · cart (paper) ---------- */
.sc2,.sc2-after{background:var(--paper);color:var(--txt)}
.sc2 h2{font-weight:300;letter-spacing:-.04em}
.sc2 h2 .k{font-weight:500}
.sc2-c{border-radius:24px;background:#fff;box-shadow:none;border:1px solid var(--card-line);padding:16px 20px 17px}
.sc2-after .sc2-c{background:#fff}
.sc2-c h3{font-weight:500;color:var(--txt)}
.sc2-c p{color:var(--txt-2)}
.sc2-c svg{stroke:var(--red)}
.sc2-lab{font-weight:500;color:var(--txt);box-shadow:0 8px 24px -12px rgba(31,31,35,.3),inset 0 0 0 1px rgba(31,31,35,.08)}
.sc2-lab i{background:var(--red);box-shadow:0 0 0 4px rgba(215,19,47,.16)}

/* ---------- 4 · ecosystem (ink) ---------- */
.sc4{background:var(--ink)}
.wf-title h2{font-weight:300;letter-spacing:-.04em}
.wf-title h2 span{background:linear-gradient(90deg,#fff 0%,#A9ACB2 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.wc b{font-weight:400;letter-spacing:-.03em}
.wc em{font-family:var(--f-mono);font-weight:500;font-size:13px;color:#F4A9B5;letter-spacing:.04em}
.wc em span{font-family:var(--f-mono);letter-spacing:.08em}
.wc p{color:rgba(255,255,255,.78)}
.tk{font-weight:500;color:var(--ink)}
.es-mcap .t{font-weight:500}
.es-mcap .n{font-family:var(--f-mono);font-weight:500;color:#F4A9B5}
.es-mdots button{font-weight:600}
.es-mdots button.on,.es-item.on .es-t b,.es-item.done .es-t b{color:var(--red)}
.es-stage{background:linear-gradient(155deg,#D7132F 0%,#A8172C 100%)}
.sc4 .p2 .a-logo-img{height:18px}

/* ---------- 5 · the scan: original French styling kept ---------- */
.s5-replay{font-family:var(--f)}

/* ---------- 6 · form (paper) ---------- */
.s6{color:var(--txt);background:var(--paper)!important}
.s6 h2{font-weight:300;letter-spacing:-.04em}
.s6 h2 span{font-weight:500;color:var(--red)}
.rule{background:var(--red)}
.s6-alt{margin:26px 0 0;max-width:34ch;font-size:16px;line-height:1.55;color:var(--txt-2)}
.s6-alt a{color:var(--txt);font-weight:500;text-decoration:underline;text-decoration-color:rgba(215,19,47,.5);text-underline-offset:3px}
.s6-alt a:hover{color:var(--red)}
.cfld input,.cfld textarea{border:1px solid rgba(31,31,35,.12);border-radius:16px;color:var(--txt);font-family:var(--f)}
.cfld input:focus,.cfld textarea:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(215,19,47,.12)}
.cfld span{color:var(--txt-2);font-family:var(--f)}
.thanks{border:1px solid var(--card-line);border-radius:24px}
.thanks i{background:var(--red)}

/* ---------- footer (same as Cosmilab home) ---------- */
.foot{position:relative;z-index:1;background:var(--ink);color:#BDB8B2;padding-block:64px 32px;font-size:15px;font-family:var(--f);line-height:1.55}
.foot .wrap{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:40px;max-width:1440px;margin:0 auto;padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px));position:static;min-height:0}
.foot a{color:inherit;text-decoration:none}
.f-top{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:32px}
.f-brand img{height:30px;width:auto;display:block}
.f-brand p{margin:14px 0 0;max-width:28ch}
.f-col{display:grid;gap:10px;align-content:start}
.f-col h4{margin:0 0 6px;color:#fff;font-weight:500;font-size:15px}
.f-col a:hover{color:#fff}
.foot .tel{font-family:var(--f-mono);color:#fff;white-space:nowrap}
.foot .nw{white-space:nowrap}
.f-legal{margin:0;max-width:110ch;font-size:12.5px;line-height:1.6;color:rgba(255,255,255,.45)}
.f-bot{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.12);padding-top:24px;font-size:13px}
.f-bot a:hover{color:#fff}
@media (max-width:1000px){.f-top{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.f-top{grid-template-columns:minmax(0,1fr)}.foot .wrap{padding-left:16px;padding-right:16px}}

