/* Base commune des pistes : mise en page seulement. Couleurs et polices : un bloc de jetons par piste (A.css, B.css, C.css, D.css). */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:80px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;background:var(--fond);color:var(--texte);font-family:var(--f-texte);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{display:block;max-width:100%;height:auto}
picture{display:block}
a{color:inherit}
h1,h2,h3{margin:0;font-family:var(--f-titre);font-weight:var(--w-titre,700);letter-spacing:var(--ls-titre,-.02em);line-height:var(--lh-titre,1.02)}
p{margin:0}
.cadre{width:100%;max-width:1240px;margin:0 auto;padding-inline:clamp(20px,5vw,56px)}
.saut{position:fixed;left:12px;top:8px;transform:translateY(-300%);z-index:99;background:var(--accent);color:var(--sur-accent);padding:10px 14px;border-radius:8px}
.saut:focus{transform:none}
:focus-visible{outline:2px solid var(--focus,var(--accent));outline-offset:3px}
.sur{font-family:var(--f-mono,var(--f-texte));font-size:13px;letter-spacing:var(--ls-sur,.08em);text-transform:uppercase;color:var(--sur-c,var(--doux));margin-bottom:18px;font-weight:500}
.t2{font-size:clamp(34px,4.6vw,var(--t2-max,60px));max-width:16ch}
.txt{color:var(--doux);font-size:18px;max-width:52ch;margin-top:20px}
/* boutons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 24px;border-radius:var(--r-btn,999px);font-weight:600;font-size:16px;text-decoration:none;border:1px solid transparent;transition:transform .25s ease-out,background-color .25s ease-out;cursor:pointer;font-family:var(--f-texte)}
.btn:hover{transform:translateY(-1px)}
.btn-p{background:var(--accent);color:var(--sur-accent)}
.btn-g{border-color:var(--btn-g-bord,rgba(255,255,255,.4));color:var(--btn-g-c,#fff)}
.btn-s{min-height:42px;padding:0 18px;font-size:15px}
/* en-tête */
.tete{position:fixed;inset:0 0 auto;z-index:20;transition:background-color .3s ease-out,box-shadow .3s ease-out;color:var(--tete-c,#fff)}
.tete.solide{background:var(--tete-fond,rgba(10,10,12,.96));box-shadow:0 1px 0 var(--ligne)}
.tete-in{display:flex;align-items:center;gap:28px;height:72px}
.mot{text-decoration:none;font-family:var(--f-mot,var(--f-titre));font-weight:var(--w-mot,800);font-size:var(--s-mot,22px);letter-spacing:var(--ls-mot,-.02em);white-space:nowrap;margin-right:auto}
.nav{display:flex;gap:26px;font-size:15px}
.nav a{text-decoration:none;opacity:.9}.nav a:hover{opacity:1;text-decoration:underline;text-underline-offset:5px}
.menu{display:none;position:relative}
.menu summary{list-style:none;cursor:pointer;min-height:42px;display:flex;align-items:center;padding:0 14px;border:1px solid currentColor;border-radius:var(--r-btn,999px);font-size:15px;font-weight:600}
.menu summary::-webkit-details-marker{display:none}
.menu nav{position:absolute;right:0;top:52px;display:grid;min-width:240px;background:var(--surface);color:var(--texte);border:1px solid var(--ligne);border-radius:14px;padding:8px;box-shadow:0 20px 40px -12px rgba(0,0,0,.5)}
.menu nav a{padding:12px 14px;text-decoration:none;border-radius:8px}
@media (max-width:1023px){.nav{display:none}.menu{display:block}.tete .btn-s{display:none}}
@media (min-width:1024px){.tete .btn-s{display:inline-flex}}
/* héros */
.heros{position:relative;overflow:hidden;color:var(--heros-c,#fff);isolation:isolate}
.heros-photo{position:absolute;inset:0;z-index:-2}
.heros-photo img{width:100%;height:100%;object-fit:cover;object-position:var(--heros-pos,center)}
.voile{position:absolute;inset:0;z-index:-1;background:var(--voile)}
.heros-in{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center;min-height:min(100svh,940px);padding-top:120px;padding-bottom:88px}
.heros h1{font-size:clamp(46px,7vw,var(--h1-max,96px));font-weight:var(--w-h1,var(--w-titre,700));letter-spacing:var(--ls-h1,-.035em);line-height:var(--lh-h1,.98)}
.heros h1 .l{display:block}
.heros .sur{color:var(--heros-sur,rgba(255,255,255,.85))}
.chapo{font-size:clamp(17px,1.5vw,20px);line-height:1.55;max-width:44ch;margin-top:26px;color:var(--heros-doux,rgba(255,255,255,.88))}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.garanties{display:flex;flex-wrap:wrap;gap:8px 22px;list-style:none;padding:0;margin:30px 0 0;font-size:14px;color:var(--heros-doux,rgba(255,255,255,.85))}
.garanties li::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--point,var(--accent));margin-right:9px;vertical-align:1px}
.appareil{margin:0}
.ecran-cadre{background:var(--bezel,#0b0b0d);padding:var(--bezel-p,12px);border-radius:var(--r-ecran,14px);box-shadow:var(--ombre-ecran,0 40px 80px -30px rgba(0,0,0,.8),0 0 0 1px rgba(255,255,255,.06))}
canvas.ecran{display:block;width:100%;aspect-ratio:160/64;border-radius:3px;background:#050506}
canvas.ecran.mini{aspect-ratio:96/40}
.leg{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:16px;font-family:var(--f-mono,var(--f-texte));font-size:13px;color:var(--heros-doux,rgba(255,255,255,.85))}
.pastille{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:999px;background:var(--accent);color:var(--sur-accent);font-weight:600;font-size:12px;letter-spacing:.04em;text-transform:uppercase}
.leg .pas{margin-left:auto;opacity:.9}
/* faits */
.faits{background:var(--faits-fond,var(--fond2));border-block:1px solid var(--ligne)}
.faits-in{display:grid;grid-template-columns:repeat(3,1fr)}
.fait{padding:44px 36px 48px 0}
.fait+.fait{padding-left:36px;border-left:1px solid var(--ligne)}
.fait .num{font-family:var(--f-mono,var(--f-texte));font-size:13px;color:var(--num-c,var(--accent-t,var(--accent)))}
.fait h2{font-size:clamp(24px,2.3vw,32px);margin:14px 0 10px;letter-spacing:-.015em}
.fait p{color:var(--doux);font-size:16px;max-width:34ch}
section{scroll-margin-top:72px}
.vitrine,.tel,.metiers,.jn,.technique,.contact{padding-block:clamp(72px,10vw,136px)}
/* vitrine */
.vitrine-in{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}
.liste{list-style:none;padding:0;margin:34px 0 0;border-top:1px solid var(--ligne);max-width:460px}
.liste li{display:flex;gap:16px;align-items:center;padding:12px 4px;border-bottom:1px solid var(--ligne);color:var(--doux);transition:color .3s ease-out}
.liste .k{font-family:var(--f-mono,var(--f-texte));font-size:12px;letter-spacing:.06em;text-transform:uppercase;width:72px}
.liste li[aria-current]{color:var(--texte)}
.liste li[aria-current] .k{color:var(--accent-t,var(--accent))}
.liste li[aria-current]::after{content:"";margin-left:auto;width:8px;height:8px;border-radius:50%;background:var(--accent)}
.vitrine-media{position:relative;padding-bottom:64px}
.v-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-photo,18px)}
.v-ecran{position:absolute;left:-40px;bottom:0;width:72%;background:var(--bezel,#0b0b0d);padding:10px;border-radius:12px;box-shadow:0 40px 70px -30px rgba(0,0,0,.85)}
/* téléphone */
.tel{background:var(--tel-fond,var(--fond2))}
.tel-in{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.etapes{list-style:none;padding:0;margin:32px 0 0;display:grid;gap:18px;counter-reset:e}
.etapes li{display:grid;grid-template-columns:44px 1fr;column-gap:14px;counter-increment:e}
.etapes li::before{content:counter(e);grid-row:span 2;width:44px;height:44px;border-radius:50%;border:1px solid var(--ligne-forte,var(--ligne));display:grid;place-items:center;font-family:var(--f-mono,var(--f-texte));font-size:14px;color:var(--accent-t,var(--accent))}
.etapes b{font-size:18px}.etapes span{color:var(--doux);font-size:16px}
.note{margin-top:26px;font-size:14px;color:var(--doux)}
.tel-media{position:relative;min-height:640px;display:grid;place-items:center}
.t-photo{position:absolute;inset:0}
.t-photo img{width:100%;height:100%;object-fit:cover;border-radius:var(--r-photo,18px);filter:brightness(.55)}
.tel-app{position:relative;width:300px;border-radius:46px;background:var(--app-fond,#0f0f12);color:var(--app-c,#f5f5f7);padding:22px 18px 22px;box-shadow:0 0 0 9px #050506,0 0 0 10px #2b2b30,0 50px 90px -30px rgba(0,0,0,.9);font-family:var(--f-texte)}
.app-barre{display:flex;justify-content:space-between;align-items:center;padding:6px 6px 0}
.app-mot{font-family:var(--f-mot,var(--f-titre));font-weight:var(--w-mot,800);font-size:15px}
.app-etat{font-size:12px;color:var(--app-doux,#c9c9d1)}
.app-etat::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#4FE3D2;margin-right:6px}
.app-t{font-weight:700;font-size:21px;margin:18px 6px 12px;letter-spacing:-.01em}
.app-types{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;background:var(--app-surface,#1c1c22);padding:4px;border-radius:12px}
.app-types button{font:inherit;font-size:13px;font-weight:600;border:0;border-radius:9px;min-height:36px;background:transparent;color:var(--app-doux,#c9c9d1);cursor:pointer}
.app-types button[aria-pressed=true]{background:var(--app-on,#fff);color:var(--app-on-c,#111)}
.app-apercu{margin:14px 0;background:#000;padding:6px;border-radius:10px}
.app-champ{display:block;margin-top:8px}
.app-champ span{display:block;font-size:12px;color:var(--app-doux,#c9c9d1);margin:0 0 4px 4px}
.app-champ input{width:100%;font:inherit;font-size:16px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:inherit;background:var(--app-surface,#1c1c22);border:1px solid transparent;border-radius:10px;min-height:44px;padding:0 12px}
.app-champ input:focus{border-color:var(--accent);outline:none}
.app-couleurs{display:flex;gap:10px;margin:14px 4px}
.app-couleurs button{width:34px;height:34px;border-radius:50%;background:var(--c);border:3px solid var(--app-fond,#0f0f12);cursor:pointer}
.app-couleurs button[aria-pressed=true]{border-color:var(--app-c,#fff)}
.app-go{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:999px;background:var(--accent);color:var(--sur-accent);font-weight:700;font-size:15px;margin-top:6px}
/* commerces */
.entete{margin-bottom:48px}
.cartes{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.carte{background:var(--surface);border-radius:var(--r-photo,18px);overflow:hidden;border:1px solid var(--ligne)}
.carte img{width:100%;aspect-ratio:4/3;object-fit:cover}
.carte-txt{padding:24px 26px 30px}
.carte h3{font-size:26px;margin-bottom:8px}
.carte p{color:var(--doux);font-size:16px}
/* jour et nuit */
.jn{background:var(--jn-fond,var(--fond))}
.jn-g{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.jn-f{margin:0;position:relative;border-radius:var(--r-photo,18px);overflow:hidden}
.jn-f img{width:100%;aspect-ratio:4/3;object-fit:cover}
.jn-f figcaption{position:absolute;left:18px;bottom:18px;display:inline-flex;align-items:center;gap:8px;background:rgba(8,8,10,.86);color:#fff;padding:9px 14px;border-radius:999px;font-size:14px;font-weight:600}
.jn-f svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}
.jn-f:last-child svg{fill:currentColor;stroke:none}
/* technique */
.technique{background:var(--tech-fond,var(--fond2))}
.tech-in{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.tech-media img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-photo,18px)}
.fiche{margin:34px 0 0;border-top:1px solid var(--ligne)}
.fiche div{display:grid;grid-template-columns:140px 1fr;gap:16px;padding:15px 0;border-bottom:1px solid var(--ligne)}
.fiche dt{font-family:var(--f-mono,var(--f-texte));font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--doux);padding-top:3px}
.fiche dd{margin:0;font-weight:600}
/* contact */
.contact-in{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:start}
.form{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px;background:var(--surface);border:1px solid var(--ligne);border-radius:var(--r-photo,18px);padding:clamp(22px,3vw,36px)}
.form label span{display:block;font-size:14px;font-weight:600;margin-bottom:6px}
.form input,.form select,.form textarea{width:100%;font:inherit;font-size:16px;color:var(--texte);background:var(--champ,transparent);border:1px solid var(--ligne-forte,var(--ligne));border-radius:10px;min-height:48px;padding:10px 12px}
.form textarea{min-height:96px;resize:vertical}
.form .large,.form .aide{grid-column:1/-1}
.form .aide{font-size:14px;color:var(--doux);margin-top:-6px}
.consent{display:flex!important;gap:12px;align-items:flex-start;font-size:15px}
.consent input{width:20px;min-height:20px;height:20px;margin-top:2px;flex:none;accent-color:var(--accent)}
.consent span{font-weight:400!important;margin:0!important}
.pot{position:absolute;left:-9999px}
.etat{font-size:15px;min-height:1.5em}
/* pied */
.pied{border-top:1px solid var(--ligne);padding-block:48px 40px;background:var(--pied-fond,var(--fond))}
.pied-in{display:grid;grid-template-columns:auto 1fr;gap:16px 40px;align-items:center}
.pied-in>p:first-of-type{color:var(--doux);font-size:15px}
.pied nav{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px 26px;font-size:15px}
.pied nav a{text-decoration:none;color:var(--doux)}
.pied .petit{grid-column:1/-1;font-size:13px;color:var(--doux)}
/* mobile et tablette : une colonne, aucune animation épinglée */
@media (max-width:1023px){
  .heros-in,.vitrine-in,.tel-in,.tech-in,.contact-in{grid-template-columns:1fr;gap:40px}
  .heros-in{min-height:auto;padding-top:104px;padding-bottom:56px}
  .appareil{max-width:620px}
  .faits-in{grid-template-columns:1fr}
  .fait,.fait+.fait{padding:28px 0;border-left:0}
  .fait+.fait{border-top:1px solid var(--ligne)}
  .cartes{grid-template-columns:1fr;gap:18px}
  .v-ecran{left:12px;width:84%}
  .tel-media{min-height:0;padding:40px 0}
  .jn-g{grid-template-columns:1fr;gap:16px}
  .tech-media{order:2}
}
@media (max-width:640px){
  body{font-size:16px}
  .tete-in{height:64px}
  .heros h1{font-size:clamp(40px,11.4vw,56px)}
  .chapo{font-size:17px;margin-top:18px}
  .actions{margin-top:26px}.actions .btn{flex:1 1 100%}
  .garanties{display:grid;gap:8px;margin-top:22px}
  .leg .pas{margin-left:0;width:100%}
  .txt{font-size:17px}
  .tel-app{width:min(300px,86vw)}
  .form{grid-template-columns:1fr}
  .fiche div{grid-template-columns:110px 1fr}
  .vitrine-media{padding-bottom:48px}
}
/* interface de création par IA */
.app-demande{display:block;margin-top:2px}
.app-demande span{display:block;font-size:12px;color:var(--app-doux,#c9c9d1);margin:0 0 4px 4px}
.app-demande textarea{width:100%;font:inherit;font-size:15px;line-height:1.35;color:inherit;background:var(--app-surface,#1c1c22);border:1px solid var(--app-ligne,#2c2c34);border-radius:14px;padding:10px 12px;resize:none;min-height:64px}
.app-demande textarea:focus{border-color:var(--accent);outline:none}
.app-ia{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--app-doux,#c9c9d1);margin:10px 4px 12px;min-height:18px}
.pts{display:inline-flex;gap:3px}.pts i{width:5px;height:5px;border-radius:50%;background:var(--app-doux,#c9c9d1);opacity:.5}
.app-ia.on .pts i{background:var(--accent);animation:pt 1s ease-out infinite}.app-ia.on .pts i:nth-child(2){animation-delay:.15s}.app-ia.on .pts i:nth-child(3){animation-delay:.3s}
@keyframes pt{0%,100%{opacity:.25}50%{opacity:1}}
.heros .appareil{position:relative}
.mini-tel{position:absolute;right:-18px;bottom:-34px;width:228px;display:grid;gap:8px;padding:14px;border-radius:22px;background:var(--app-fond,#0f0f12);color:var(--app-c,#f5f5f7);box-shadow:0 0 0 6px #050506,0 0 0 7px #2b2b30,0 30px 60px -20px rgba(0,0,0,.85);font-family:var(--f-texte);font-size:13px}
.mt-q{background:var(--app-surface,#1c1c22);border-radius:12px;padding:9px 11px;line-height:1.3}
.mt-ia{display:flex;align-items:center;gap:4px;color:var(--app-doux,#c9c9d1);font-size:12px}
.mt-ia i{width:5px;height:5px;border-radius:50%;background:var(--accent)}
.mt-ia i:last-of-type{margin-right:5px}
.mt-go{display:flex;justify-content:center;align-items:center;min-height:34px;border-radius:999px;background:var(--accent);color:var(--sur-accent);font-weight:700}
.heros .leg{padding-right:230px}
@media (max-width:1023px){.mini-tel{position:relative;right:auto;bottom:auto;margin:18px 0 0 auto;width:min(260px,80%)}.heros .leg{padding-right:0}}
.mt-t{font-weight:700;font-size:14px}
.appareil.seul{align-self:end;justify-self:end}
.appareil.seul .mini-tel{position:relative;right:auto;bottom:auto}
@media (max-width:1023px){.appareil.seul{justify-self:start;width:100%}.appareil.seul .mini-tel{margin:0}}
.vitrine-media{padding-bottom:0}
.v-ecran{position:relative;left:auto;bottom:auto;width:100%;padding:16px;border-radius:16px;background:var(--bezel,#0b0b0d);box-shadow:0 50px 90px -40px rgba(0,0,0,.8),0 0 0 1px rgba(255,255,255,.07)}
.v-leg{display:flex;justify-content:space-between;gap:12px;margin-top:14px;font-family:var(--f-mono,var(--f-texte));font-size:13px;color:var(--doux)}
@media (max-width:1023px){.v-ecran{left:auto;width:100%;padding:10px}}

/* PISTE D — Point par point (direction de travail de Marque Écrans DEL) : Nuit, ambre DEL, Doto + Archivo, trame de points, passage jour/nuit. Aucune lueur floue. */
@font-face{font-family:Doto;src:url(../commun/fonts/doto.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:Archivo;src:url(../commun/fonts/archivo.woff2) format("woff2");font-weight:400 700;font-display:swap}
:root{--f-titre:Doto,ui-monospace,monospace;--f-texte:Archivo,system-ui,sans-serif;--f-mono:Archivo,system-ui,sans-serif;--w-titre:900;--ls-titre:-.01em;--lh-titre:1;--ls-h1:-.02em;--lh-h1:.95;--h1-max:92px;--t2-max:66px;
--fond:#0B0B0E;--fond2:#0F0F13;--surface:#15151A;--ligne:#2A2931;--ligne-forte:#45434E;--texte:#FFF6E5;--doux:#B4B1BE;--accent:#FFB224;--sur-accent:#0B0B0E;--accent-t:#FFB224;
--voile:linear-gradient(270deg,rgba(11,11,14,.95) 0%,rgba(11,11,14,.82) 40%,rgba(11,11,14,.2) 72%,rgba(11,11,14,.35) 100%),linear-gradient(0deg,rgba(11,11,14,.85) 0%,rgba(11,11,14,0) 30%);--heros-pos:30% 50%;
--tete-fond:rgba(11,11,14,.97);--f-mot:Doto,monospace;--w-mot:900;--s-mot:24px;--ls-mot:0;--r-photo:12px;--app-fond:#0B0B0E;--app-surface:#1A1A20;--app-on:#FFB224;--app-on-c:#0B0B0E;--ls-sur:.1em}
body{background-image:radial-gradient(circle,rgba(255,246,229,.07) 1.2px,transparent 1.6px);background-size:10px 10px}
@media (min-width:1024px){.heros-in{grid-template-columns:1fr 1fr}}
.heros-txt{order:2}
.heros .appareil{order:1}
.heros h1{font-weight:900}
.heros h1 .l:last-child{color:var(--accent)}
.mot span:first-child{color:var(--accent)}
.t2{font-weight:900}
.faits,.technique{background:#F1EFEA;color:#0B0B0E;--texte:#0B0B0E;--doux:#4A4852;--ligne:#D9D5CC;--accent-t:#9A5B00;--num-c:#9A5B00;background-image:radial-gradient(circle,rgba(11,11,14,.10) 1.2px,transparent 1.6px);background-size:10px 10px}
.fait h2{font-family:Doto,monospace;font-weight:900}
.fait .num{font-family:Doto,monospace;font-weight:900;font-size:20px}
.technique .sur{color:#9A5B00}
.fiche dd{color:#0B0B0E}
.jn{background:linear-gradient(90deg,#F1EFEA 0 50%,#0B0B0E 50% 100%)}
.jn .entete{background:#0B0B0E;display:inline-block;padding:24px 28px;border-radius:12px;border:1px solid var(--ligne)}
.carte h3{font-family:Doto,monospace;font-weight:900;font-size:30px}
.etapes li::before{font-family:Doto,monospace;font-weight:900;font-size:20px}
.pastille{border-radius:3px}
.app-mot{font-family:Doto,monospace}
@media (max-width:1023px){.heros-txt{order:1}.heros .appareil{order:2}.jn{background:#0B0B0E}}

.heros .appareil.seul{align-self:end;justify-self:start;margin-bottom:6px}
@media (max-width:1023px){.heros{display:flex;flex-direction:column}.heros-photo{position:relative;inset:auto;z-index:0}.heros-photo img{height:auto;aspect-ratio:4/3;object-position:22% 50%}.voile{display:none}.heros-in{padding-top:28px;min-height:0}.heros .appareil.seul{order:3}}
.heros h1{font-size:clamp(40px,5.3vw,80px)}
.heros h1 .l{white-space:nowrap}
@media (max-width:640px){.heros h1{font-size:clamp(34px,10.4vw,46px)}}

.app-couleurs [data-col=ambre]{--c:#FFB224}
.app-couleurs [data-col=corail]{--c:#FF6B57}
.app-couleurs [data-col=cyan]{--c:#4FE3D2}
.app-couleurs [data-col=blanc]{--c:#FFF6E5}
