/* SimplyLabs — style commun des pages de la marque (accueil, espaces des applis, mentions).
   Même famille visuelle que Simply Skin et Simply IA : fond vert-gris clair, contours foncés,
   ombres décalées, pastels, police arrondie déjà installée sur l'appareil (rien n'est chargé ailleurs). */
:root{
  --bg:#EEF3F0; --card:#FFFFFF; --tx:#17221E; --mut:#56645F; --bd:#D3DDD8; --ln:#17221E; --hs:#17221E; --soft:#E2EBE6;
  --rose:#FF8FAB; --citron:#FFD43B; --menthe:#3DDC97; --lavande:#B79CFF; --peche:#FFB38A; --dk:#17221E;
  --app:var(--citron);
  --font:ui-rounded,"SF Pro Rounded","Nunito","Segoe UI Variable Display","Segoe UI",system-ui,-apple-system,Roboto,sans-serif;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#0F1513; --card:#19211E; --tx:#EEF4F0; --mut:#A3B3AD; --bd:#2C3833; --ln:#DFE8E3; --hs:#DFE8E3; --soft:#25302C; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#0F1513; --card:#19211E; --tx:#EEF4F0; --mut:#A3B3AD; --bd:#2C3833; --ln:#DFE8E3; --hs:#DFE8E3; --soft:#25302C; color-scheme:dark}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--tx);font-family:var(--font);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-wrap:break-word}
img,svg{max-width:100%}
a{color:inherit}
.w{max-width:1040px;margin:0 auto;padding-inline:16px}
h1,h2,h3{margin:0;line-height:1.1;text-wrap:balance;letter-spacing:-.02em}
p{margin:0}
:focus-visible{outline:3px solid var(--ln);outline-offset:3px;border-radius:8px}
.mut{color:var(--mut)}

/* En-tête */
.hd{position:sticky;top:0;z-index:20;padding-top:env(safe-area-inset-top,0px);background:color-mix(in srgb,var(--bg) 90%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-block:12px}
.lg{display:flex;align-items:center;gap:9px;text-decoration:none;font-weight:900;font-size:1.2rem;letter-spacing:-.02em}
.lg svg{flex:none;width:34px;height:34px}
.bar nav{display:flex;align-items:center;gap:6px}
.bar nav a,.th{font:inherit;font-size:.92rem;font-weight:800;text-decoration:none;color:var(--tx);background:var(--card);border:2px solid var(--ln);border-radius:99px;padding:6px 14px;box-shadow:0 3px 0 var(--hs);cursor:pointer}
.th{width:40px;height:40px;padding:0;display:grid;place-items:center;font-size:1rem}
.bar nav a:active,.th:active,.btn:active{transform:translateY(3px);box-shadow:none}
@media (max-width:620px){.bar nav .hide-sm{display:none}}

/* Fil d'Ariane */
.crumb{display:flex;flex-wrap:wrap;gap:6px;font-size:.88rem;font-weight:700;color:var(--mut);padding-block:6px 0}
.crumb a{text-decoration:none;color:var(--mut)}
.crumb a:hover{color:var(--tx);text-decoration:underline}

/* Boutons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-weight:900;font-size:1rem;text-decoration:none;color:var(--dk);background:var(--app);border:2px solid var(--ln);border-radius:16px;padding:12px 20px;box-shadow:0 4px 0 var(--hs);cursor:pointer}
.btn.alt{background:var(--card);color:var(--tx)}
.btn.big{font-size:1.08rem;padding:14px 24px}
.btns{display:flex;flex-wrap:wrap;gap:12px}

/* Hero */
.hero{display:grid;gap:22px;padding-block:clamp(32px,7vw,72px) clamp(24px,5vw,48px)}
.hero h1{font-size:clamp(2.3rem,7.5vw,4.4rem);font-weight:900;letter-spacing:-.04em;max-width:15ch}
.hero h1 mark{background:var(--app);color:var(--dk);padding:0 .14em;border-radius:.2em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.hero .lead{font-size:clamp(1.05rem,2.4vw,1.25rem);color:var(--mut);max-width:52ch}
.pill{display:inline-flex;align-items:center;gap:8px;justify-self:start;font-size:.85rem;font-weight:800;background:var(--card);border:2px solid var(--ln);border-radius:99px;padding:5px 14px 5px 6px;box-shadow:0 3px 0 var(--hs)}
.pill i{width:22px;height:22px;border-radius:50%;background:var(--app);border:2px solid var(--ln)}

/* Sections */
.sec{padding-block:clamp(32px,6vw,64px)}
.sec-h{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:10px 24px;margin-bottom:22px}
.sec-h h2{font-size:clamp(1.7rem,4.2vw,2.5rem);font-weight:900}
.sec-h p{color:var(--mut);max-width:46ch}
.card{background:var(--card);border:2px solid var(--ln);border-radius:24px;box-shadow:0 5px 0 var(--hs)}

/* Grille des applis */
.apps{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:22px}
.app{display:grid;grid-template-rows:auto 1fr;overflow:hidden;min-width:0}
.app-top{display:flex;align-items:center;gap:14px;padding:18px 18px 16px;background:var(--app);border-bottom:2px solid var(--ln);color:var(--dk)}
.app-top svg{flex:none;width:52px;height:52px}
.app-top h3{font-size:1.5rem;font-weight:900}
.app-top small{display:block;font-size:.8rem;font-weight:800;opacity:.75}
.app-body{display:grid;gap:16px;padding:18px;align-content:space-between}
.app-body p{color:var(--mut)}
.st{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.st i{width:9px;height:9px;border-radius:50%;background:#1F9D63}
.st.soon i{background:#C98A00}
.app.soon .app-top{background:repeating-linear-gradient(-45deg,var(--soft) 0 12px,var(--card) 12px 24px)}
.app.soon .app-top,.app.soon .app-top h3{color:var(--tx)}
.app .btns .btn{flex:1 1 auto}

/* Principes */
.trio{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:18px}
.trio .card{padding:20px;display:grid;gap:8px;align-content:start}
.trio .ico{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-size:1.4rem;border:2px solid var(--ln);background:var(--c,var(--app))}
.trio h3{font-size:1.2rem;font-weight:900}
.trio p{color:var(--mut)}

/* Espace d'une appli */
.space-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(20px,4vw,48px);align-items:center;padding-block:clamp(24px,5vw,56px)}
@media (max-width:820px){.space-hero{grid-template-columns:1fr}}
.space-hero .hero{padding:0}
.space-logo{display:flex;align-items:center;gap:12px;font-weight:900;font-size:1.1rem}
.space-logo svg{width:48px;height:48px}
.preview{padding:18px;display:grid;gap:12px;background:var(--app);color:var(--dk)}
.preview .row{background:#fff;color:#17221E;border:2px solid #17221E;border-radius:16px;padding:12px 14px;display:grid;gap:4px}
.preview .row b{font-size:1.02rem}
.preview .row small{color:#56645F;font-size:.85rem}
.preview .q{font-weight:900;font-size:1.25rem}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{font-size:.8rem;font-weight:800;background:#fff;color:#17221E;border:2px solid #17221E;border-radius:99px;padding:2px 10px}
.chip.on{background:#17221E;color:#fff}
.meter{display:grid;grid-template-columns:7.5em 1fr auto;align-items:center;gap:10px;font-size:.88rem;font-weight:800;font-variant-numeric:tabular-nums}
.meter .t{height:10px;border-radius:99px;background:#fff;border:2px solid #17221E;overflow:hidden}
.meter .t span{display:block;height:100%;background:#17221E}
.feats{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:18px}
.feat{padding:20px;display:grid;gap:8px;align-content:start}
.feat .ico{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-size:1.35rem;border:2px solid var(--ln);background:var(--c,var(--app))}
.feat h3{font-size:1.15rem;font-weight:900}
.feat p{color:var(--mut);font-size:.98rem}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:18px;counter-reset:s}
.steps li{counter-increment:s;padding:20px;display:grid;gap:6px}
.steps li::before{content:counter(s);width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-weight:900;background:var(--app);color:var(--dk);border:2px solid var(--ln);margin-bottom:4px}
.steps b{font-size:1.08rem}
.steps span{color:var(--mut);font-size:.96rem}
.note{padding:20px;display:grid;gap:8px}
.note h3{font-size:1.15rem;font-weight:900}
.note p{color:var(--mut)}
.duo{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:18px}
.cta{padding:clamp(22px,4vw,36px);display:grid;gap:14px;justify-items:start;background:var(--app);color:var(--dk)}
.cta h2{font-size:clamp(1.5rem,3.6vw,2.2rem);font-weight:900}
.cta .btn{background:var(--card);color:var(--tx)}

/* Contact */
.mail{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.mail code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:1rem;background:var(--card);color:var(--tx);border:2px solid var(--ln);border-radius:12px;padding:8px 12px;user-select:all}

/* Texte long (mentions) */
.prose{max-width:68ch;display:grid;gap:14px}
.prose h2{font-size:1.3rem;font-weight:900;margin-top:10px}
.prose p,.prose li{color:var(--mut)}
.prose b{color:var(--tx)}
.todo{background:var(--citron);color:var(--dk);border-radius:6px;padding:0 4px;font-weight:800}

/* Pied de page */
.ft{border-top:2px solid var(--bd);margin-top:clamp(24px,5vw,48px);padding-block:26px calc(36px + env(safe-area-inset-bottom,0px));display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;font-size:.92rem;color:var(--mut)}
.ft nav{display:flex;flex-wrap:wrap;gap:8px 18px}
.ft a{color:var(--tx);font-weight:800;text-decoration:none}
.ft a:hover{text-decoration:underline}

@media (prefers-reduced-motion:no-preference){
  .btn,.bar nav a,.th{transition:transform .12s,box-shadow .12s}
  .app{transition:transform .15s}
  .app:hover{transform:translateY(-3px)}
}
