/* Feuille de la page Albedo (simulation.html) et de la page confidentialite.
   Purgee le 17/08/2026 : les regles du formulaire de saisie, du questionnaire,
   de l'aide et des anciens en-tete/pied specifiques ont ete retirees avec les
   composants qu'elles habillaient. Les jetons de :root sont des ALIAS vers
   kelveen.css — ne pas les modifier ici. */
@font-face{font-family:"DM Sans";src:url("../fonts/dm-sans-variable.ttf") format("truetype");font-style:normal;font-weight:100 1000;font-display:swap}
:root{--ink:#0c1d15;--paper:#f5f2e1;--white:#fffdf4;--yellow:#ffce3b;--sage:#97af9a;--red:#d64933;--line:rgba(12,29,21,.18);--page:min(1180px,calc(100vw - 48px))}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.55 "DM Sans",sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}
.shell{width:var(--page);margin:auto}
.skip-link{position:fixed;z-index:1000;left:12px;top:10px;transform:translateY(-160%);padding:10px 14px;border-radius:99px;background:var(--yellow);font-weight:800}
.skip-link:focus{transform:none}
.sim-links{display:flex;align-items:center;gap:25px}
.sim-links a{font-size:.82rem;font-weight:760;text-decoration:none}
.sim-links a:not(.active){color:rgba(245,242,225,.68)}
.sim-links .active{color:var(--yellow)}
.sim-hero{position:relative;overflow:hidden;min-height:54vh;display:flex;align-items:end;padding:142px 0 60px;background:var(--ink);color:var(--paper)}
.sim-hero::after{content:"";position:absolute;right:-10vw;top:-32vw;width:65vw;aspect-ratio:1;border:1px solid rgba(255,206,59,.3);border-radius:50%;box-shadow:0 0 0 8vw rgba(255,206,59,.04),0 0 0 17vw rgba(255,206,59,.02)}
.sim-hero-copy{position:relative;z-index:1;max-width:970px}
.eyebrow{margin:0 0 20px;color:var(--yellow);font-size:.74rem;font-weight:850;letter-spacing:.15em;text-transform:uppercase}
.sim-hero h1{max-width:930px;margin:0;font-size:clamp(3rem,6.5vw,6.5rem);font-weight:760;line-height:.89;letter-spacing:-.072em}
.sim-lead{max-width:670px;margin:24px 0 0;color:rgba(245,242,225,.7);font-size:clamp(1.05rem,1.6vw,1.3rem)}
.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}
.field{min-width:0;display:grid;align-content:start;gap:7px}
.field.full{grid-column:1/-1}
.field label{font-size:.76rem;font-weight:850}
.field small{min-height:1.1em;color:rgba(12,29,21,.58);font-size:.7rem}
.field input,.field select{width:100%;height:56px;padding:0 15px;border:1px solid rgba(12,29,21,.24);border-radius:6px;background:var(--white);color:var(--ink);font:650 .95rem/1 "DM Sans",sans-serif;outline:none;transition:border-color .18s ease,box-shadow .18s ease}
.field input:hover,.field select:hover{border-color:rgba(12,29,21,.48)}
.field input:focus,.field select:focus{border-color:var(--ink);box-shadow:0 0 0 3px rgba(255,206,59,.55)}
.form-message.error{color:#a52f20}
.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.check{display:grid;grid-template-columns:20px 1fr;gap:11px;align-items:start;padding:12px 14px;border:1px solid rgba(12,29,21,.11);border-radius:6px;color:rgba(12,29,21,.72);font-size:.8rem;cursor:pointer}
.check:has(input:checked){border-color:rgba(12,29,21,.42);background:rgba(255,206,59,.16)}
.check input{width:18px;height:18px;margin:2px 0;accent-color:var(--ink)}
.sim-submit{min-height:56px;padding:14px 24px;border:0;border-radius:6px;background:var(--yellow);color:var(--ink);font:850 .9rem/1 "DM Sans",sans-serif;cursor:pointer;transition:transform .18s ease,background .18s ease,color .18s ease}
.sim-submit:hover{transform:translateY(-2px);background:var(--ink);color:var(--paper)}
.sim-submit:disabled{cursor:wait;opacity:.65;transform:none}
.form-message{margin:0;font-size:.78rem}
.privacy-note{max-width:670px;margin:15px 0 0;color:rgba(12,29,21,.6);font-size:.7rem;line-height:1.5}
.privacy-note a{text-underline-offset:3px}
.assumptions{position:sticky;top:112px;padding:32px;border-radius:7px;background:var(--ink);color:var(--paper)}
.assumptions .eyebrow{margin-bottom:38px}
.assumptions h2{margin:0;font-size:clamp(2rem,3.3vw,3.4rem);line-height:.96;letter-spacing:-.052em}
.assumptions>p:not(.eyebrow){margin:23px 0 0;color:rgba(245,242,225,.65)}
@media(max-width:850px){
  .sim-hero{min-height:52vh;padding-top:125px}
  .assumptions{position:static}
}
@media(max-width:560px){
  .fields{grid-template-columns:1fr}
  .field.full{grid-column:auto}
  .sim-hero h1{font-size:clamp(2.65rem,13vw,3.4rem)}
  .sim-submit{width:100%}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:.01ms!important}
}
[lang="en"] .sim-hero h1,[lang="de"] .sim-hero h1{font-size:clamp(3rem,6.2vw,6.2rem)}
/* ── Vitrine Albedo ───────────────────────────────────────────────────────── */
/* La saisie du batiment a ete deplacee dans Albedo le 17/08/2026. Cette page
   montre ce que l'outil calcule, dit ce qu'il ne fait pas, et ouvre sur une
   demande d'acces. Aucune donnee de batiment n'est collectee ici. */
.does{padding:120px 0;background:var(--paper)}
.does>.shell>h2{max-width:900px;margin:0 0 16px;font-size:clamp(2.4rem,5vw,5rem);line-height:.98;letter-spacing:-.06em}
.does-lead{max-width:620px;margin:0 0 62px;color:rgba(12,29,21,.62);font-size:1.02rem}
.does-grid{display:grid;gap:0}
.does-item{display:grid;grid-template-columns:120px minmax(0,1fr);gap:34px;align-items:baseline;padding:34px 0;border-top:1px solid rgba(12,29,21,.2)}
.does-item:last-child{border-bottom:1px solid rgba(12,29,21,.2)}
.does-num{margin:0;font-size:clamp(2.4rem,4vw,3.4rem);font-weight:800;line-height:.8;letter-spacing:-.05em;color:transparent;-webkit-text-stroke:1.5px rgba(12,29,21,.4)}
.does-item h3{margin:0 0 10px;font-size:clamp(1.5rem,2.4vw,2.35rem);line-height:1;letter-spacing:-.045em}
.does-item p{max-width:660px;margin:0;color:rgba(12,29,21,.7);font-size:1.02rem;line-height:1.6}
.limits{padding:110px 0;background:var(--ink);color:var(--paper)}
.limits h2{margin:0 0 44px;font-size:clamp(2rem,4vw,3.6rem);line-height:1;letter-spacing:-.05em}
.limits-list{max-width:820px;margin:0;padding:0;list-style:none}
.limits-list li{padding:22px 0;border-top:1px solid rgba(245,242,225,.2)}
.limits-list strong{display:block;margin-bottom:6px;font-size:1.06rem}
.limits-list span{color:rgba(245,242,225,.68);font-size:.97rem;line-height:1.62}
.access{padding:120px 0;background:var(--paper)}
.access-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(40px,6vw,76px);align-items:start}
.access-copy h2{margin:0 0 20px;font-size:clamp(2rem,4vw,3.6rem);line-height:1;letter-spacing:-.05em}
.access-copy p{max-width:520px;color:rgba(12,29,21,.7);line-height:1.6}
.access-note{margin-top:20px;padding-top:18px;border-top:1px solid rgba(12,29,21,.2);font-size:.86rem;font-weight:750}
.access-form{padding:34px;border:1px solid rgba(12,29,21,.12);border-radius:9px;background:rgba(255,253,244,.78);box-shadow:0 18px 55px rgba(12,29,21,.055)}
.access-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}
.access-form textarea{width:100%;min-height:120px;padding:14px 15px;border:1px solid rgba(12,29,21,.24);border-radius:6px;background:var(--white);color:var(--ink);font:650 .95rem/1.5 "DM Sans",sans-serif;outline:none;resize:vertical}
.access-form textarea:focus{border-color:var(--ink);box-shadow:0 0 0 3px rgba(255,206,59,.55)}
.access-form .check{margin-top:22px}
.access-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:24px}
@media(max-width:850px){
  .access-grid{grid-template-columns:1fr;gap:38px}
  .does,.limits,.access{padding:80px 0}
  .does-item{grid-template-columns:1fr;gap:10px;padding:28px 0}
  .does-num{font-size:2rem}
  .access-fields{grid-template-columns:1fr}
  .access-form{padding:24px 20px}
}
/* Porte vers l'application, pour les acces deja ouverts. Masquee par
   app-link.js tant que kelveen-app-base n'est pas configuree. */
.access-have{margin-top:14px;padding-top:14px;border-top:1px solid rgba(12,29,21,.14);font-size:.85rem}
.access-have span{color:rgba(12,29,21,.6)}
.access-have a{margin-left:6px;color:var(--tangerine-ink);font-weight:800;text-underline-offset:4px}
.access-have[hidden]{display:none}


/* ── L'annee d'une facade : 365 x 24 cellules ─────────────────────────────── */
.annee{padding:110px 0;background:var(--evergreen);color:var(--eggshell)}
.annee .eyebrow{color:var(--pollen)}
.annee h2{margin:0 0 14px;font-size:clamp(2.4rem,5vw,5rem);line-height:.98;letter-spacing:-.06em}
.annee-lead{max-width:640px;margin:0 0 42px;color:rgba(245,242,225,.7);font-size:1.02rem}
.annee-stage{border-radius:8px;overflow:hidden;box-shadow:0 24px 70px rgba(0,0,0,.35)}
.annee-toile{display:block;width:100%;height:clamp(180px,26vw,320px);image-rendering:pixelated;cursor:crosshair}
.annee-mois{display:grid;grid-template-columns:repeat(12,1fr);margin-top:8px;color:rgba(245,242,225,.45);font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.annee-lecture{min-height:1.4em;margin:16px 0 0;color:var(--pollen);font-size:.92rem;font-weight:750;font-variant-numeric:tabular-nums}
.annee-legende{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:14px}
.annee-legende span{display:inline-flex;align-items:center;gap:8px;color:rgba(245,242,225,.72);font-size:.78rem;font-weight:750}
.annee-legende i{width:12px;height:12px;border-radius:3px}
.annee-note{margin:22px 0 0;color:rgba(245,242,225,.45);font-size:.72rem}
@media(max-width:760px){.annee{padding:76px 0}}

/* Bouton de creation de compte dans la section d'acces (17/08/2026 : Albedo
   est ouvert, la section invite a creer un compte plutot qu'a demander). */
.access-cta{margin:26px 0 30px}
