
/* Layout : deux volets, à gauche la promesse sur un prisme de couleurs, à droite le formulaire ; un seul volet sur téléphone */
:root{
  --bg:#ffffff; --ink:#1d1720; --muted:#6a6170; --line:#e9e4ec; --field:#faf8fb; --side:#17131c; --sideink:#f5f1f7; --sidemute:#b8afc0;
  --accent:#ff6b35; --ok:#12a66a; --err:#c8323b;
  --display:"DM Serif Display",Georgia,serif; --body:"Figtree","Segoe UI",system-ui,sans-serif; --brand:"Unbounded","Arial Black",sans-serif;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--bg:#121016;--ink:#f3eff6;--muted:#a9a1b2;--line:#2c2733;--field:#1b1820;--side:#0c0a0f;--err:#ff6b74;color-scheme:dark}}
:root[data-theme="dark"]{--bg:#121016;--ink:#f3eff6;--muted:#a9a1b2;--line:#2c2733;--field:#1b1820;--side:#0c0a0f;--err:#ff6b74;color-scheme:dark}
*{box-sizing:border-box}
html,body{min-height:100%}
body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:15.5px;line-height:1.5}
button,input{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.shell{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);min-height:100vh}

/* volet gauche */
.side{position:relative;overflow:hidden;background:var(--side);color:var(--sideink);padding-block:40px;padding-left:max(40px,env(safe-area-inset-left,0px));padding-right:40px;display:flex;flex-direction:column;justify-content:space-between;gap:40px}
.brand{display:flex;align-items:center;gap:12px;position:relative;z-index:1}
.brand .hex{width:44px;height:38px}
.word{display:inline-flex;flex-direction:column;font-family:var(--brand);line-height:1}
.word b{font-weight:800;font-size:22px;letter-spacing:-.04em}
.word i{font-style:normal;font-weight:500;font-size:6px;letter-spacing:.62em;margin-top:5px}
.big{position:absolute;right:-34%;top:46%;width:min(520px,90%);transform:translateY(-50%) rotate(8deg);opacity:.9}
.side::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--side) 45%,rgba(23,19,28,.6) 70%,rgba(23,19,28,.1));pointer-events:none}
.pitch{position:relative;z-index:1;max-width:30ch}
.pitch h2{font:400 clamp(32px,3.4vw,46px)/1.05 var(--display);margin:0 0 18px;text-wrap:balance}
.pitch h2 i{background:linear-gradient(100deg,#ff6b35,#e8337f 45%,#7c4dff);-webkit-background-clip:text;background-clip:text;color:transparent}
.perks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;color:var(--sidemute);font-size:15px}
.perks li{display:grid;grid-template-columns:16px 1fr;gap:12px;align-items:start}
.perks li::before{content:"";width:10px;height:10px;margin-top:6px;background:var(--c);clip-path:polygon(0 0,100% 50%,0 100%)}
.fine{position:relative;z-index:1;font-size:13px;color:var(--sidemute)}

/* volet droit */
.main{padding-block:32px 48px;padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px));display:flex;flex-direction:column}
.top{display:flex;justify-content:space-between;align-items:center;gap:12px;max-width:440px;width:100%;margin:0 auto}
.back{color:var(--muted);text-decoration:none;font-size:14px}
.back:hover{color:var(--ink)}
.lang{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:3px}
.lang button{border:0;background:none;border-radius:999px;padding:4px 11px;font-size:12.5px;font-weight:700;color:var(--muted);cursor:pointer}
.lang button[aria-pressed="true"]{background:var(--ink);color:var(--bg)}
.box{max-width:440px;width:100%;margin:auto;padding-top:36px;display:flex;flex-direction:column;gap:22px}
.mbrand{display:none}
.tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}
.tabs button{border:0;background:none;padding:12px 4px;font-weight:600;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}
.tabs button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--accent)}
h1{font:400 clamp(30px,3.2vw,38px)/1.08 var(--display);margin:0;text-wrap:balance}
.sub{margin:6px 0 0;color:var(--muted)}
form{display:flex;flex-direction:column;gap:16px}
.f{display:flex;flex-direction:column;gap:6px}
.f label{font-weight:600;font-size:14px}
.f .opt{font-weight:400;color:var(--muted)}
.in{position:relative}
.in input{width:100%;height:50px;padding:0 14px;border:1.5px solid var(--line);border-radius:12px;background:var(--field);transition:border-color .2s,background .2s}
.in input:focus{outline:none;border-color:var(--ink);background:var(--bg)}
.f.bad .in input{border-color:var(--err)}
.eye{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:none;color:var(--muted);font-size:13px;font-weight:600;padding:6px 8px;cursor:pointer}
.err{min-height:0;font-size:13px;color:var(--err)}
.err:empty{display:none}
.meter{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:2px}
.meter i{height:4px;border-radius:2px;background:var(--line);transition:background .25s}
.rules{list-style:none;margin:2px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12.5px;color:var(--muted)}
.rules li::before{content:"○ ";}
.rules li.ok{color:var(--ok)}
.rules li.ok::before{content:"● "}
.chk{display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:start;font-size:14px;color:var(--muted);cursor:pointer}
.chk input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--ink)}
.chk a{color:var(--ink)}
.chk.bad span{color:var(--err)}
.btn{height:52px;border:0;border-radius:999px;background:var(--ink);color:var(--bg);font-weight:700;font-size:15.5px;cursor:pointer;transition:transform .15s,opacity .2s}
.btn:hover{transform:translateY(-1px)}
.btn[disabled]{opacity:.6;cursor:default;transform:none}
.link{border:0;background:none;padding:0;color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-size:14px}
.row{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.note{font-size:13px;color:var(--muted);margin:0}
.demo{font-size:12.5px;color:var(--muted);border:1px dashed var(--line);border-radius:10px;padding:8px 12px;margin:0}
.done{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.mail{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#ff6b35,#e8337f 50%,#7c4dff);color:#fff;font:800 24px var(--brand)}
.done strong{font-weight:600;color:var(--ink)}

@media (max-width:860px){
  .shell{grid-template-columns:1fr}
  .side{display:none}
  .mbrand{display:flex;align-items:center;gap:10px}
  .mbrand .hex{width:36px;height:31px}
  .mbrand .word b{font-size:18px}
  .box{padding-top:20px;margin-top:0}
}
.ownerbar{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;padding-block:10px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));background:#ff6b35;color:#17131c;font-size:14px}
.ownerbar a{color:#17131c;font-weight:700}
.ownerbar button{margin-left:auto;border:1px solid #17131c;background:none;border-radius:999px;padding:4px 12px;font-size:13px;font-weight:600;cursor:pointer}
.btn.to-lib{color:var(--bg)}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* ===== Base du site (hors maquette) ===== */
html,body{margin:0}
body{font-size:15.5px}
[hidden]{display:none!important}
.flash{border-radius:12px;padding:12px 14px;background:color-mix(in srgb,var(--ok) 12%,var(--bg));color:var(--ink);font-size:14.5px}
.flash.bad{background:color-mix(in srgb,var(--err) 12%,var(--bg))}
.err a,.flash a{color:inherit;font-weight:700}
.tabs a{display:block;text-align:center;padding:12px 4px;font-weight:600;color:var(--muted);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-1px}
.tabs a[aria-current="page"]{color:var(--ink);border-bottom-color:var(--accent)}
a.btn{display:inline-flex;align-items:center;justify-content:center;padding:0 26px;text-decoration:none;color:var(--bg)}

/* ===== Pages simples : espace client, administration, messages ===== */
.page{max-width:1080px;margin:0 auto;padding-block:28px 64px;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;margin-bottom:36px}
.bar .brand{color:var(--ink);text-decoration:none}
.bar nav{display:flex;flex-wrap:wrap;gap:6px 20px;align-items:center;font-size:14.5px}
.bar nav a{color:var(--muted);text-decoration:none}.bar nav a:hover,.bar nav a.on{color:var(--ink)}
.page h1{margin-bottom:6px}
.sect{margin-top:40px}
.sect h2{font:400 26px/1.15 var(--display);margin:0 0 14px}
.mods{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.mods li{display:grid;grid-template-columns:12px minmax(0,1fr) auto auto;gap:16px;align-items:center;padding:14px 16px;border-radius:14px;background:var(--field)}
.mods .sw{width:12px;height:40px;background:var(--fc);clip-path:polygon(0 0,100% 30%,100% 100%,0 100%)}
.mods b{font-weight:600;font-size:16.5px;display:block}
.mods small{color:var(--muted);font-size:13px}
.tag{font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px;background:var(--bg);border:1px solid var(--line);color:var(--muted);white-space:nowrap}
.tag.ok{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 40%,var(--line))}
.btn.sm{height:40px;padding:0 18px;font-size:14px}
.btn.ghost{background:none;color:var(--ink);border:1.5px solid var(--line)}
.panel{border:1px solid var(--line);border-radius:18px;padding:20px 22px;display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center;justify-content:space-between}
.panel p{margin:4px 0 0;color:var(--muted)}
.inline{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.inline select,.page select,.page input[type=text],.page input[type=email],.page input[type=search]{height:42px;border:1.5px solid var(--line);border-radius:10px;background:var(--field);padding:0 12px;font:inherit;color:var(--ink)}
table{width:100%;border-collapse:collapse;font-size:14px}
th,td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:top}
th{font-weight:600;color:var(--muted);font-size:12.5px;text-transform:uppercase;letter-spacing:.08em}
.tbl{overflow-x:auto}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.stat{border:1px solid var(--line);border-radius:16px;padding:16px}
.stat b{display:block;font:400 32px/1 var(--display);font-variant-numeric:tabular-nums}
.stat span{color:var(--muted);font-size:13px}
.swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.swatch{display:flex;flex-direction:column;gap:8px;border:1px solid var(--line);border-radius:14px;padding:12px}
.swatch input[type=color]{width:100%;height:46px;border:0;border-radius:10px;padding:0;background:none;cursor:pointer}
.swatch span{font-size:13.5px;font-weight:600}
.preview{display:flex;gap:6px;margin-top:6px}
.preview i{flex:1;height:10px;border-radius:5px}
.msg{max-width:560px;margin:10vh auto 0;display:flex;flex-direction:column;gap:14px;align-items:flex-start}
@media (max-width:720px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.mods li{grid-template-columns:10px minmax(0,1fr);}.mods li .tag,.mods li form,.mods li a.btn{grid-column:2}}
.lang a{border-radius:999px;padding:4px 11px;font-size:12.5px;font-weight:700;color:var(--muted);text-decoration:none}
.lang a[aria-pressed="true"]{background:var(--ink);color:var(--bg)}
@media (max-width:720px){.mods li{grid-template-columns:10px minmax(0,1fr) auto;grid-template-rows:auto auto;row-gap:6px}.mods li .sw{grid-row:1/3}.mods li .tag{grid-column:2;grid-row:2;justify-self:start}.mods li a.btn{grid-column:3;grid-row:1/3}}
.legalbar{display:flex;flex-wrap:wrap;gap:6px 20px;margin-top:56px;padding-top:18px;border-top:1px solid var(--line);font-size:13px}
.legalbar a{color:var(--muted)}
.box .legalbar{margin-top:8px}
.prose{max-width:72ch;line-height:1.65}
.prose h1{font:400 clamp(30px,3.4vw,40px)/1.1 var(--display);margin:0 0 6px}
.prose h2{font:400 22px/1.2 var(--display);margin:34px 0 8px}
.prose p,.prose li{color:var(--ink)}
.prose .meta{color:var(--muted);font-size:14px}
.prose table{margin:12px 0}
.prose .box-legal{border:1px solid var(--line);border-radius:14px;padding:14px 18px;background:var(--field)}
.prose .draft{border-radius:12px;padding:10px 14px;background:color-mix(in srgb,var(--fam-lea) 16%,var(--bg));font-size:14px}
.todo{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.todo li{padding:12px 16px;border-radius:12px;background:#fff6e0;font-size:14px;line-height:1.5}
.idform .field{margin:0 0 18px}
.idform label{display:block;font-weight:600;font-size:14px;margin:0 0 6px}
.idform input,.idform textarea{width:100%;box-sizing:border-box;border:1.5px solid var(--line);border-radius:10px;background:var(--field);padding:10px 12px;font:inherit;color:var(--ink)}
.idform .note{margin-top:5px}
.prose mark.todo-mark{background:#fff0c2;color:inherit;padding:0 3px;border-radius:4px}
/* Statistiques */
.st-top{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 18px}
.seg{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:3px}
.seg a{padding:6px 14px;border-radius:999px;color:var(--muted);text-decoration:none;font-size:14px;font-weight:600}
.seg a[aria-current="page"]{background:var(--ink);color:var(--bg)}
.insights{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.insights li{padding:12px 16px;border-left:3px solid var(--accent);background:var(--field);border-radius:0 12px 12px 0;line-height:1.55}
.st-chart{width:100%;height:auto;display:block}
.st-chart .g{stroke:var(--line);stroke-width:1}
.st-chart .base{stroke:var(--muted);stroke-width:1}
.st-chart .ax{fill:var(--muted);font-size:11px;font-family:var(--body)}
.st-chart .bar path{fill:var(--accent)}
.st-chart .bar .hit{fill:transparent}
.st-chart .bar:hover path{opacity:.75}
.st-chart .bar:hover .hit{fill:var(--line);opacity:.35}
.st-chart .sale{fill:var(--ink);stroke:var(--bg);stroke-width:2}
.funnel{display:grid;gap:10px}
.fn-row{display:grid;grid-template-columns:minmax(150px,220px) 1fr minmax(120px,auto);gap:14px;align-items:center}
.fn-l{font-size:14px}
.fn-bar{height:14px;background:var(--field);border-radius:4px;overflow:hidden}
.fn-bar i{display:block;height:100%;background:var(--accent);border-radius:0 4px 4px 0}
.fn-n{font-variant-numeric:tabular-nums;font-weight:600}
.fn-n small,.tbl small{color:var(--muted);font-weight:400}
.dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:8px;vertical-align:1px}
.st-mod th a{color:inherit;text-decoration:none}
.st-mod th a.on{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.st-mod td:not(:first-child),.st-mod th:not(:first-child){text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.st-two{display:grid;grid-template-columns:1fr 1fr;gap:28px}
code{font-size:12.5px;background:var(--field);padding:1px 5px;border-radius:5px;word-break:break-all}
nav.tabs{overflow-x:auto}
@media (max-width:860px){nav.tabs[style]{display:flex!important}nav.tabs a{flex:0 0 auto;padding:12px 12px}.st-two{grid-template-columns:1fr}.fn-row{grid-template-columns:1fr auto}.fn-bar{grid-column:1/3;grid-row:2}}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .todo li{background:#3a2f12}}
:root[data-theme="dark"] .todo li{background:#3a2f12}
/* Administration, onglet Livrets */
.bk-links{display:inline-flex;align-items:center;gap:8px}
.bk-dl{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;color:var(--muted);border:1px solid var(--line)}
.bk-dl:hover,.bk-dl:focus-visible{color:var(--ink);border-color:var(--ink)}
.bk-fam h2 .dot{width:12px;height:12px}
.bk-fam table{table-layout:fixed;min-width:560px}
.bk-fam th:first-child{width:40%}
.bk-fam td{vertical-align:middle}
.bk-links a.link{white-space:nowrap}
#bk-q{min-width:min(320px,100%)}
/* Certificats : espace client, identité, page publique de vérification */
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.certs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.certs li{padding:16px 18px;border-radius:14px;background:var(--field);display:flex;flex-direction:column;gap:14px}
.certs .ch{display:grid;grid-template-columns:12px minmax(0,1fr);gap:16px;align-items:center}
.certs .sw{width:12px;height:40px;background:var(--fc);clip-path:polygon(0 0,100% 30%,100% 100%,0 100%)}
.certs b{font-weight:600;font-size:16.5px;display:block}
.certs small{color:var(--muted);font-size:13px}
.certs .ca{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.certs .cl{display:flex;gap:8px;flex:1 1 300px;min-width:0}
.certs .cl input{flex:1;min-width:0;font-size:13.5px;color:var(--muted)}
.idn{flex-direction:row;align-items:flex-end;max-width:760px}
.idn .f{flex:1 1 200px;min-width:0}
.idn .f span{font-weight:600;font-size:14px}
.idn input{width:100%}
.cv{gap:10px}
.cv h1{font:400 clamp(34px,5vw,48px)/1.05 var(--display);margin:6px 0 0;overflow-wrap:anywhere}
.cv-ok{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;padding:6px 12px;border-radius:999px;color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,var(--bg))}
.cv-ok::before{content:"";width:12px;height:7px;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg) translate(1px,-2px)}
.cv-dl{width:100%;margin:16px 0 0;padding:0;border-top:3px solid var(--fc);display:flex;flex-direction:column}
.cv-dl div{display:grid;grid-template-columns:minmax(110px,30%) minmax(0,1fr);gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}
.cv-dl dt{color:var(--muted);font-size:14px}
.cv-dl dd{margin:0;font-weight:600;overflow-wrap:anywhere}
@media (max-width:720px){.certs .cl{flex-basis:100%}.certs .ca>.btn{flex:1 1 auto}.cv-dl div{grid-template-columns:1fr;gap:2px}}
/* Avis : rubrique Mes avis de l'espace client */
.rvs li{gap:12px}
.rvs .rv-warn{color:var(--err)}
.rv-form{gap:12px}
.rv-stars{border:0;margin:0;padding:0}
.rv-stars legend{font-weight:600;font-size:14px;padding:0;margin-bottom:4px}
.rv-st{display:flex;gap:2px}
.rv-st input{position:absolute;opacity:0;width:1px;height:1px}
.rv-st label{font-size:30px;line-height:1;cursor:pointer;color:var(--line);padding:0 2px}
.rv-st input:focus-visible+label{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
.rv-st:has(input:nth-of-type(1):checked) label:nth-of-type(-n+1),.rv-st:has(input:nth-of-type(2):checked) label:nth-of-type(-n+2),.rv-st:has(input:nth-of-type(3):checked) label:nth-of-type(-n+3),.rv-st:has(input:nth-of-type(4):checked) label:nth-of-type(-n+4),.rv-st:has(input:nth-of-type(5):checked) label:nth-of-type(-n+5){color:#e09400}
.rv-form .f span{font-weight:600;font-size:14px}
.rv-form textarea{font:inherit;border:1.5px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);padding:10px 12px;resize:vertical;width:100%;box-sizing:border-box}
.rv-foot{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}
/* Page de vérification d'un certificat : alignée sur la colonne du site, comme le logo et le pied de page */
.msg.cv{margin-left:0;margin-right:auto;max-width:640px}
/* Administration des avis */
.av-tbl td{vertical-align:top}
.av-c{white-space:pre-line;overflow-wrap:anywhere;max-width:44ch}
.av-c.off{color:var(--muted)}
.av-mod{display:flex;flex-direction:column;gap:8px;min-width:200px}
.av-mod form{gap:8px}
.av-st{font-size:12px;font-weight:600;padding:3px 9px;border-radius:999px;border:1px solid var(--line);white-space:nowrap}
.av-st.hid{color:var(--err);border-color:color-mix(in srgb,var(--err) 40%,var(--line))}
.av-st.pen{color:#b36b00;border-color:#f2c46d}
.av-stars{color:#e09400;letter-spacing:1px;white-space:nowrap}

/* Inscription et connexion : panneau crème, marque en grand, sélecteur de langue en pilule, bouton bleu */
.shell.creme{--cream:#F6F1EA;--cream-h:#1D1B22;--cream-t:#3B3842;--cream-m:#736D78;--blue:#2F55B8;--fieldline:#CFC7BC;--tab-on:#1D1B22;--tab-off:#5B5763;--tab-line:#E4DED5}
.shell.creme{grid-template-columns:minmax(0,55fr) minmax(0,45fr)}
.shell.creme .side{background:var(--cream);color:var(--cream-t);justify-content:center;align-items:center;padding:clamp(40px,5vw,96px)}
.shell.creme .side::after{content:none}
/* Même place pour le panneau et les onglets, quel que soit l'onglet : panneau à hauteur d'écran, formulaire calé en haut */
.shell.creme .side{position:sticky;top:0;align-self:start;min-height:100vh}
.shell.creme .box{margin:0 auto}
/* Bloc de 680 px au plus, centré dans le panneau, texte aligné à gauche */
.shell.creme .sin{display:flex;flex-direction:column;width:100%;max-width:680px;text-align:left;container-type:inline-size;--logo:clamp(96px,9vw,140px);--lgap:clamp(18px,1.8vw,32px)}
.shell.creme .sbrand{display:flex;align-items:center;gap:var(--lgap)}
.shell.creme .sbrand .hex{width:var(--logo);height:auto;aspect-ratio:102/88;flex:none}
.shell.creme .sname{display:flex;flex-direction:column;font-family:var(--brand);font-weight:800;font-size:min(clamp(48px,5vw,84px),(100cqi - var(--logo) - var(--lgap)) / 8.6);line-height:.92;letter-spacing:-.035em;color:var(--cream-h);white-space:nowrap}
/* Le nom ne dépasse jamais du bloc : sa taille demandée est réduite seulement si le mot le plus long n'y tient pas à côté du logo */
:lang(en) .shell.creme .sname{font-size:min(clamp(48px,5vw,84px),(100cqi - var(--logo) - var(--lgap)) / 9.45)}
.shell.creme .sname b{font-weight:800}
.shell.creme .alt{margin:18px 0 0;font-size:17px;line-height:1.4;color:var(--cream-m)}
.shell.creme .altname{font-size:20px}
.shell.creme .pitch{max-width:none;margin-top:56px}
.shell.creme .pitch h2{color:var(--cream-h);font-size:min(clamp(56px,5.5vw,96px),100cqi / 8.5);line-height:1.02;margin:0 0 40px;letter-spacing:-.01em;text-wrap:initial}
:lang(en) .shell.creme .pitch h2{font-size:min(clamp(56px,5.5vw,96px),100cqi / 7.7)}
/* Le dégradé commence toujours la deuxième ligne */
.shell.creme .pitch h2 i{display:block}
/* Avantages et phrase finale sur une seule ligne chacun : la taille demandée est réduite seulement si la phrase la plus longue n'y tient pas */
.shell.creme .perks{color:var(--cream-t);font-size:min(20px,(100cqi - 32px) / 33.6);line-height:1.5;gap:20px;white-space:nowrap}
:lang(en) .shell.creme .perks{font-size:min(20px,(100cqi - 32px) / 32.3)}
:lang(en) .shell.creme .fine{font-size:min(18px,100cqi / 27)}
.shell.creme .perks li{grid-template-columns:16px 1fr;gap:16px}
.shell.creme .perks li::before{width:16px;height:16px;margin-top:calc((1.5em - 16px) / 2)}
.shell.creme .fine{margin:48px 0 0;white-space:nowrap;font-size:min(18px,100cqi / 33.3);font-weight:600;line-height:1.45;color:var(--cream-h)}
.shell.creme .main{justify-content:flex-start}
.shell.creme .lang.pill{border-color:var(--fieldline);padding:4px;gap:2px}
.shell.creme .lang.pill a{padding:7px 14px;font-size:13px;color:var(--ink)}
.shell.creme .lang.pill a[aria-pressed="true"]{background:var(--blue);color:#fff}
.shell.creme .in input{height:48px;border-color:var(--fieldline);border-radius:12px}
.shell.creme .f.bad .in input{border-color:var(--err)}
.shell.creme .chk input{accent-color:var(--blue)}
.shell.creme .btn{background:var(--blue);color:#fff;height:48px}
.shell.creme .mbrand{display:none}
/* Onglets Créer un compte / Se connecter : toute la largeur, toute la surface cliquable */
.shell.creme .tabs{border-bottom:0}
.shell.creme .tabs a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:10px 6px;margin:0;color:var(--tab-off);font-weight:600;border-bottom:3px solid var(--tab-line)}
.shell.creme .tabs a[aria-current="page"]{color:var(--tab-on);font-weight:700;border-bottom-color:var(--blue)}
.shell.creme .tabs a:hover{color:var(--tab-on)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .shell.creme{--tab-on:var(--ink);--tab-off:var(--muted);--tab-line:var(--line)}}
:root[data-theme="dark"] .shell.creme{--tab-on:var(--ink);--tab-off:var(--muted);--tab-line:var(--line)}
/* Écrans étroits (tablette) : une phrase sur une ligne y deviendrait trop petite, elle revient à la ligne */
@media (min-width:861px) and (max-width:1199px){
  .shell.creme .perks,:lang(en) .shell.creme .perks{white-space:normal;font-size:17px}
  .shell.creme .fine,:lang(en) .shell.creme .fine{white-space:normal;font-size:16px}
}
@media (max-width:860px){
  .shell.creme{grid-template-columns:1fr;grid-template-rows:auto 1fr}
  .shell.creme .side{display:flex;position:static;min-height:0;align-items:stretch;padding:22px max(20px,env(safe-area-inset-right,0px)) 24px max(20px,env(safe-area-inset-left,0px))}
  .shell.creme .alt,.shell.creme .perks,.shell.creme .fine{display:none}
  .shell.creme .sin{--logo:60px;--lgap:14px}
  .shell.creme .sname{font-size:min(clamp(28px,8.4vw,40px),(100cqi - var(--logo) - var(--lgap)) / 8.6)}
  :lang(en) .shell.creme .sname{font-size:min(clamp(28px,8.4vw,40px),(100cqi - var(--logo) - var(--lgap)) / 9.45)}
  .shell.creme .pitch{margin-top:18px}
  .shell.creme .pitch h2,:lang(en) .shell.creme .pitch h2{font-size:min(clamp(34px,10vw,46px),100cqi / 8.5);line-height:1.02;margin:0}
  .shell.creme .main{padding-top:12px}
  .shell.creme .lang.pill a{padding:6px 12px}
  .shell.creme .box{padding-top:4px;gap:18px}
}
/* Sorties de l'inscription et de la connexion : la marque mène à la bibliothèque, « ← Retour » à la page d'origine */
.shell.creme a.sbrand{color:inherit;text-decoration:none;align-self:flex-start;border-radius:12px}
.shell.creme a.sbrand:hover .sname{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.shell.creme .back{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 4px;font-size:15px;font-weight:600;color:var(--ink);text-decoration:none}
.shell.creme .back:hover{text-decoration:underline;text-underline-offset:3px}
.shell.creme .back-m{display:none}
@media (max-width:860px){
  .shell.creme .top .back{display:none}
  .shell.creme .back-m{display:inline-flex;align-self:flex-start;min-height:40px;margin:-6px 0 -2px;color:var(--cream-t)}
  .shell.creme .top{justify-content:flex-end}
}

