/* L'essentiel : Flow en une page. Mêmes couleurs, polices et accents que la pièce (nuit par défaut, papier si le système
   est en clair). Sans JavaScript, FR, EN, ES et JA s'affichent l'un sous l'autre. */
@font-face{font-family:'Archivo';font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/double-allure/fonts/archivo-latin-ext-wdth-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Archivo';font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/double-allure/fonts/archivo-latin-wdth-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:200 800;font-display:swap;src:url(/double-allure/fonts/newsreader-latin-ext-opsz-italic.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:200 800;font-display:swap;src:url(/double-allure/fonts/newsreader-latin-opsz-italic.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url(/double-allure/fonts/plex-mono-latin-400.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url(/double-allure/fonts/plex-mono-latin-500.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --bg:#090a09;--bg2:#111210;--fg:#f4efe6;--fg2:#ddd8cf;--mut:#aaa79f;
  --line:rgba(244,239,230,.14);--line2:rgba(244,239,230,.26);
  --hot:#ff4b1f;--hot2:#ff6738;--peach:#ffd09a;--gold:#f6b86f;--cold:#d6e4e6;
  --glow:rgba(255,90,34,.16);--grid:rgba(235,231,219,.025);
  --fd:'Archivo',system-ui,-apple-system,'Segoe UI',sans-serif;--fs:'Newsreader',Georgia,serif;--fm:'IBM Plex Mono',ui-monospace,Menlo,monospace;
  --ease:cubic-bezier(.22,.72,.15,1);color-scheme:dark;
}
@media (prefers-color-scheme:light){:root{
  --bg:#f4efe6;--bg2:#ebe5da;--fg:#111210;--fg2:#3a3a36;--mut:#64635d;
  --line:rgba(17,18,16,.13);--line2:rgba(17,18,16,.26);
  --hot:#e8431a;--hot2:#c23a14;--peach:#9a5418;--gold:#9a6b1f;--cold:#4f6f74;
  --glow:rgba(255,90,34,.12);--grid:rgba(17,18,16,.03);color-scheme:light}}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;min-height:100vh;color:var(--fg2);font:17px/1.6 var(--fd);
  background:radial-gradient(70vmax 50vmax at 85% -10%,var(--glow),transparent 60%),
    linear-gradient(var(--grid) 1px,transparent 1px) 0 0/100% 48px,var(--bg)}
a{color:var(--fg);text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{color:var(--hot2)}
:focus-visible{outline:2px solid var(--hot2);outline-offset:3px}
:lang(ja){font-family:system-ui,-apple-system,'Hiragino Sans','Yu Gothic UI','Noto Sans JP',sans-serif;line-break:strict}

.es-top{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:16px;
  padding:max(12px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) 12px max(16px,env(safe-area-inset-left,0px));
  background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.es-brand{color:var(--fg);text-decoration:none;font:300 13px/1 var(--fd);letter-spacing:.5em;font-stretch:125%}
.es-brand small{display:block;margin-top:4px;letter-spacing:.9em;font-size:9px;color:var(--mut)}
.es-langs{display:flex;gap:2px;padding:3px;border:1px solid var(--line);border-radius:999px}
.es-langs a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;min-width:44px;padding:0 10px;border-radius:999px;font:500 12px/1 var(--fm);letter-spacing:.08em;color:var(--mut);text-decoration:none}
.es-langs a:hover{color:var(--fg)}
.es-langs a[aria-current="true"]{background:var(--fg);color:var(--bg)}

main{padding:0 max(16px,env(safe-area-inset-right,0px)) 56px max(16px,env(safe-area-inset-left,0px))}
.es-doc{max-width:720px;margin:0 auto;padding-top:clamp(36px,8vw,72px);scroll-margin-top:64px}
.es-doc+.es-doc{margin-top:72px;border-top:1px solid var(--line)}
html.es-js .es-doc{display:none}
html.es-js[data-show="fr"] .es-doc[lang="fr"],html.es-js[data-show="en"] .es-doc[lang="en"],html.es-js[data-show="es"] .es-doc[lang="es"],html.es-js[data-show="ja"] .es-doc[lang="ja"]{display:block}
html.es-js .es-doc+.es-doc{margin-top:0;border-top:0}

.es-kick{margin:0 0 14px;font:500 11px/1 var(--fm);letter-spacing:.18em;text-transform:uppercase;color:var(--peach)}
.es-for{margin:-4px 0 18px;font:400 italic 19px/1.3 var(--fs);color:var(--fg)}
.es-for[hidden]{display:none}
h1{margin:0;font:800 clamp(34px,7.4vw,60px)/1.02 var(--fd);font-stretch:116%;letter-spacing:-.035em;color:var(--fg);text-wrap:balance}
h1 .it{font-family:var(--fs);font-style:italic;font-weight:400;font-stretch:100%;letter-spacing:-.01em;font-size:.95em;color:var(--peach)}
h1::after{content:"";display:block;width:88px;height:2px;margin-top:22px;border-radius:2px;
  background:linear-gradient(90deg,var(--hot),var(--peach),var(--cold),var(--gold))}
:lang(ja) h1{font-weight:700;font-stretch:100%;letter-spacing:0;line-height:1.25}
:lang(ja) h1 .it{font-family:inherit;font-style:normal;font-weight:700}
/* Japonais : pas d'espacement de capitales sur les étiquettes, ni de coupure au milieu d'un mot. */
:lang(ja) h1{word-break:auto-phrase}
:lang(ja) .es-kick,:lang(ja) .es-facts dt,:lang(ja) h2,:lang(ja) .es-more a,:lang(ja) .es-proof small,:lang(ja) .es-exit small{letter-spacing:.04em}
.es-lead{margin:22px 0 0;max-width:60ch;font-size:clamp(17px,2.2vw,19px);line-height:1.6;color:var(--fg2)}

.es-facts{margin:32px 0 0;padding:0}
.es-facts>div{display:grid;grid-template-columns:150px 1fr;gap:4px 20px;padding:16px 0;border-top:1px solid var(--line)}
.es-facts>div:last-child{border-bottom:1px solid var(--line)}
.es-facts dt{padding-top:4px;font:500 11px/1.5 var(--fm);letter-spacing:.14em;text-transform:uppercase;color:var(--mut)}
.es-facts dd{margin:0;color:var(--fg)}

/* La preuve : un lien vers l'Hololab, avec le reflet irisé des chargeurs. */
.es-proof{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:24px;padding:18px 20px;
  border:1px solid var(--line2);border-radius:18px;text-decoration:none;color:var(--fg);overflow:hidden;transition:border-color .3s var(--ease)}
.es-proof::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.5;
  background:linear-gradient(110deg,transparent 30%,color-mix(in srgb,var(--hot2) 16%,transparent) 44%,color-mix(in srgb,var(--cold) 18%,transparent) 52%,color-mix(in srgb,var(--gold) 14%,transparent) 60%,transparent 74%) 0 0/250% 100%;
  animation:es-sheen 1.6s var(--ease) .5s both}
.es-proof:hover{border-color:var(--fg);color:var(--fg)}
.es-proof:hover::before{opacity:.9}
.es-proof-t{display:grid;gap:3px;font-weight:600;font-size:17px}
.es-proof small,.es-exit small{font:400 12px/1.4 var(--fm);letter-spacing:.03em;color:var(--mut)}
.es-proof .arr{flex:none;font-size:20px;transition:transform .5s var(--ease)}
.es-proof:hover .arr{transform:translateX(4px)}
@keyframes es-sheen{from{background-position:100% 0}to{background-position:0 0}}

h2{margin:44px 0 14px;font:500 11px/1 var(--fm);letter-spacing:.18em;text-transform:uppercase;color:var(--peach)}
/* Trois sorties vers un humain, de même poids : même taille, même style, aucune mise en avant. */
.es-exits{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.es-exit{display:flex;flex-direction:column;justify-content:center;gap:4px;min-height:84px;padding:14px 18px;border:1px solid var(--line2);border-radius:16px;
  background:color-mix(in srgb,var(--bg2) 70%,transparent);color:var(--fg);text-decoration:none;font-weight:600;font-size:16px;line-height:1.3;
  transition:border-color .3s var(--ease),transform .5s var(--ease)}
.es-exit:hover{border-color:var(--hot2);color:var(--fg);transform:translateY(-2px)}
.es-exit small{overflow-wrap:anywhere}
.es-more{margin:22px 0 0}
.es-more a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font:500 12px/1 var(--fm);letter-spacing:.12em;text-transform:uppercase;color:var(--fg);text-decoration:none;border-bottom:1px solid var(--line2)}
.es-more a:hover{border-color:var(--hot2)}
.es-nav{margin-top:44px;padding-top:18px;border-top:1px solid var(--line);font:400 12px/2 var(--fm);color:var(--mut)}
.es-nav a{color:var(--mut)}

@media (max-width:719px){
  .es-exits{grid-template-columns:1fr}
  .es-exit{min-height:64px}
  .es-facts>div{grid-template-columns:1fr;gap:2px}
  .es-facts dt{padding-top:0}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}
@media print{
  .es-top,.es-nav,.es-more{display:none}
  body{background:#fff;color:#000}
  html.es-js .es-doc{display:block!important}
}
