:root{--navy:#08082e;--yellow:#ffda42;--pink:#ff4d9a;--cyan:#8deaff;--paper:#d4d6de;--ink:#14132b;--blue:#2527a8;--pixel:'Press Start 2P',monospace;--body:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--navy);color:#fff;font-family:var(--body);font-size:17px;line-height:1.6;background-image:radial-gradient(ellipse at 35% 0%,#24235a 0,transparent 48%)}a{color:inherit}button,summary,a{-webkit-tap-highlight-color:transparent}button{font:inherit}img,video{max-width:100%;display:block}p{margin:0 0 1em}h1,h2,h3{line-height:1.2}h2{font-size:clamp(25px,3.3vw,38px);letter-spacing:-1px;margin:0 0 20px}h3{margin:0 0 12px}a:focus-visible,button:focus-visible,summary:focus-visible,video:focus-visible{outline:4px solid var(--pink);outline-offset:5px}a:hover{text-decoration-thickness:2px}.skip{position:fixed;left:12px;top:-100px;padding:12px;background:var(--yellow);color:var(--ink);z-index:10}.skip:focus{top:12px}.topbar{max-width:1200px;margin:auto;min-height:54px;display:flex;align-items:center;justify-content:space-between;padding:8px 24px;gap:16px;border-bottom:1px solid #ffffff2e;font-family:var(--pixel);font-size:9px;line-height:1.8;color:var(--yellow)}.top-separator{color:var(--pink);margin:0 10px}#musicbtn{flex-shrink:0;cursor:pointer;min-height:40px;padding:8px 12px;background:transparent;color:var(--yellow);border:1px solid #ffda4270;font-family:var(--pixel);font-size:9px}#musicbtn[aria-pressed=true]{background:var(--yellow);color:var(--ink)}.page{max-width:1140px;margin:auto;padding:0 24px}.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:48px;align-items:center;padding:32px 0 24px}.logo{width:330px;height:auto;max-width:90%;margin:0 0 12px}.hero h1{font-family:var(--pixel);font-size:12px;line-height:1.9;color:var(--cyan);font-weight:400;margin:0 0 18px}.hero-line{font-size:clamp(30px,3.3vw,44px);font-weight:700;letter-spacing:-1.5px;line-height:1.12;margin-bottom:15px}.hero-line strong{color:var(--yellow)}.hero-description{color:#d2d0e6;font-size:16px;line-height:1.5;margin:0 0 22px}.actions{display:flex;flex-wrap:wrap;gap:10px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 14px;background:var(--paper);color:var(--ink);border:3px solid;border-color:#fff #63626f #63626f #fff;box-shadow:3px 3px 0 #000;text-decoration:none;font-weight:700;font-size:15px}.button.primary{background:var(--yellow);border-color:#fff2a5 #a87b00 #a87b00 #fff2a5}.button:hover{transform:translateY(-2px);box-shadow:3px 5px 0 #000}.hero-side{padding-top:35px}.video-window,.window{border:3px solid;border-color:#eeeeff #626176 #626176 #eeeeff;box-shadow:5px 5px 0 #0007;background:var(--paper);color:var(--ink)}.window-title{display:flex;justify-content:space-between;align-items:center;gap:12px;background:linear-gradient(90deg,#191978,#3536b0);color:#fff;font-family:var(--pixel);font-size:10px;line-height:1.6;padding:10px 12px;overflow-wrap:anywhere}.window-title>span:last-child{white-space:nowrap;font-family:monospace;font-size:16px;font-weight:700}.video-window video{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;background:#060611}.video-caption{padding:10px;text-align:center;font:12px/1.6 monospace}.retro-stamp{margin:22px auto 0;padding:12px 10px;border:1px dashed var(--yellow);color:var(--yellow);font-family:var(--pixel);font-size:11px;text-align:center;line-height:1.8;max-width:400px;transform:rotate(-2deg)}.menu{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 30px;padding:16px 0;border-bottom:1px solid #ffffff2e}.menu a{font-size:15px;text-decoration:none;padding:8px 16px;min-height:44px;border:1px solid #797792;color:#eeeef8}.menu a:first-child{color:var(--yellow);border-color:var(--yellow)}.menu a:hover{color:var(--navy);background:var(--yellow);border-color:var(--yellow)}.window{margin:0 0 30px;scroll-margin-top:20px}.window-body{padding:30px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:24px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:16px;max-width:330px;margin:0;color:#454458}.eyebrow{font:10px/1.9 var(--pixel);color:#32339a;margin:0 0 14px}.film-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px}.film{grid-column:span 2;background:#10102e;color:#eeeefa;border:1px solid #454569;display:flex;flex-direction:column;text-decoration:none;overflow:hidden;transition:transform .15s,border-color .15s}.film:nth-child(-n+2){grid-column:span 3}.film:hover{transform:translateY(-4px);border-color:var(--pink)}.film-image{position:relative;overflow:hidden;background:#000;aspect-ratio:16/9}.film-image img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.film:hover img{transform:scale(1.035)}.play{position:absolute;right:12px;bottom:12px;background:var(--yellow);color:#08082e;display:grid;place-items:center;width:42px;height:36px;border:2px solid #fff;font-size:17px;box-shadow:2px 2px 0 #000}.film-text{padding:18px;display:flex;flex-direction:column;flex:1}.film-meta{font:12px/1.5 monospace;color:var(--cyan);margin-bottom:10px}.film h3{font-size:20px;letter-spacing:-.3px;color:var(--yellow)}.film p:not(.film-meta){font-size:15px;line-height:1.5;color:#d0d0e0;flex:1}.watch{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff30;padding-top:12px;margin-top:8px;font-weight:700;font-size:15px;color:#fff}.watch span{color:var(--yellow);font-size:22px}.award{background:var(--yellow);padding:15px 20px;margin:24px 0 0;border:2px solid #fff4ab;font-size:15px;font-weight:700;line-height:1.6}.award>span:first-child{margin-right:8px}.award-detail{display:block;font-size:13px;font-weight:400;margin-left:27px}.intro{max-width:780px;color:#363548;font-size:17px}.process{counter-reset:step;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding:0;gap:12px;list-style:none;margin:25px 0 20px}.process li{counter-increment:step;padding:16px;background:#ededf3;border-top:4px solid var(--blue)}.process li:before{content:counter(step,decimal-leading-zero);font:14px/1.5 var(--pixel);color:#31339c;display:block;margin-bottom:24px}.process h3{font-size:17px}.process p{font-size:15px;line-height:1.5;margin:0;color:#454455}.method-note{margin:0;padding-top:15px;border-top:1px solid #9999b2;font-size:15px;font-weight:700}.team{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:25px}.person{background:#ededf3;padding:24px;border-left:4px solid var(--blue)}.person h3{font-size:24px;margin:0 0 8px}.role{font:11px/1.7 var(--pixel);color:#8e1748;margin-bottom:20px}.person>p:last-child{font-size:16px;line-height:1.7;margin:0}.talent{margin:22px 0 0;font-size:16px}.honey-window{background:#f5da76}.honey-window .eyebrow{color:#58371b}details summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:52px;padding:14px 18px;font-weight:700;border:1px solid #16162d50;list-style:none}details summary::-webkit-details-marker{display:none}details summary>span{font-size:25px;line-height:1;transition:transform .15s}details[open] summary>span{transform:rotate(45deg)}details summary:hover{background:#ffffff30}.honey-story{padding-top:16px}.story-note{font-size:14px}.honey-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.honey-grid figure{margin:0}.honey-grid img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border:2px solid #fff}.honey-grid figcaption{font-size:14px;margin-top:8px;line-height:1.4}.honey-end{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:center;margin-top:25px}.honey-end video{width:100%;aspect-ratio:16/9;background:#000}.honey-end p{line-height:1.9;margin:0}.honey-end a{font-size:15px}.contact-window{background:#141431;color:#fff}.contact-window .eyebrow{color:var(--cyan)}.contact-window h2{font-size:clamp(30px,4vw,46px);color:var(--yellow)}.contact-window p{color:#d6d5e4}.contact-window .window-body{padding:36px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:26px}.contact-grid a{position:relative;display:flex;flex-direction:column;padding:18px;background:#232344;border:1px solid #606078;text-decoration:none}.contact-grid a:hover{border-color:var(--yellow);background:#2e2e4c}.contact-grid a span:first-child{font-size:14px;color:#d0d0e4}.contact-grid strong{font-size:18px;font-weight:400;color:var(--yellow);overflow-wrap:anywhere}.contact-grid a span:last-child{position:absolute;right:14px;top:12px;font-size:22px}.guestbook{color:#ddddea;border:1px solid #666581;margin-top:8px}.guestbook summary{border:0;font-size:14px}.guestbook-body{padding:0 20px 20px;font-size:15px}.guestbook-body p{margin-bottom:10px}.guest-note{color:#b7b5cf;font-size:14px}.guestbook-body a{color:var(--yellow)}footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:30px;padding:0 0 30px;color:#bdbbd1;font-size:13px}footer a{color:var(--yellow)}footer time{font-family:monospace;margin-left:8px}footer small{flex-basis:100%;font-size:12px;color:#a4a2bc}
@media(min-width:1500px){.hero{padding-top:42px;padding-bottom:32px}}
@media(max-width:950px){.hero{gap:24px}.actions{gap:10px}.button{font-size:14px;padding:10px}.process{grid-template-columns:repeat(3,minmax(0,1fr))}.process li:before{margin-bottom:16px}.window-body{padding:24px}.contact-grid strong{font-size:16px}}
@media(max-width:700px){.page{padding:0 16px}.topbar{padding:6px 16px;font-size:8px;gap:8px}.top-separator{margin:0 3px}#musicbtn{font-size:8px;padding:6px}.hero{gap:20px;grid-template-columns:1fr;padding:24px 0 12px}.logo{width:245px;margin-bottom:10px}.hero h1{font-size:10px;line-height:1.8;margin-bottom:14px}.hero-line{font-size:34px;line-height:1.1;letter-spacing:-1px;margin-bottom:12px}.hero-description{font-size:15px;margin-bottom:18px}.hero-side{padding:0;display:none}.actions .button{flex:1;font-size:14px;min-height:48px;padding:10px 8px}.menu{margin:4px 0 24px;padding:12px 0;gap:6px}.menu a{font-size:14px;padding:8px 11px;min-height:42px}.window{margin-bottom:24px}.window-title{font-size:9px;padding:9px 10px}.window-body,.contact-window .window-body{padding:20px 16px}.eyebrow{font-size:9px;line-height:1.9;margin-bottom:12px}h2{font-size:29px;letter-spacing:-.8px}.section-heading{display:block;margin-bottom:20px}.section-heading>p{margin-top:15px;font-size:15px}.film-grid{grid-template-columns:1fr;gap:18px}.film,.film:nth-child(-n+2){grid-column:auto}.film-text{padding:17px}.film h3{font-size:21px}.film p:not(.film-meta){font-size:16px}.film-meta{font-size:13px}.award{padding:14px;font-size:14px}.award-detail{margin-left:0}.process{grid-template-columns:1fr;gap:10px;margin-top:20px}.process li{position:relative;padding:16px 16px 16px 60px}.process li:before{position:absolute;top:16px;left:13px;font-size:12px;margin:0}.process h3{font-size:18px;margin-bottom:6px}.process p{font-size:16px}.team{grid-template-columns:1fr;gap:16px}.person{padding:20px 16px}.person h3{font-size:22px}.role{font-size:10px}.honey-grid{grid-template-columns:1fr 1fr;gap:16px 12px}.honey-end{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr;gap:12px}.contact-grid strong{font-size:17px}.contact-window h2{font-size:32px}footer{font-size:12px}.intro{font-size:16px}}
@media(max-width:360px){.page{padding:0 10px}.topbar{padding:6px 10px}.topbar>span{max-width:170px}.actions{flex-direction:column}.menu a{font-size:13px;padding:8px 9px}.window-title{font-size:8px}.window-body{padding:18px 12px}.contact-grid a{padding:18px 12px}.contact-grid strong{font-size:16px}.eyebrow{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.film:hover,.button:hover{transform:none}}

/* Portraits animés : déclenchement au survol, au clavier et au toucher. */
.person{padding:0 0 22px;border:3px solid;border-color:#fff #737383 #737383 #fff;background:#ebebf2;overflow:visible}
.person>h3,.person>.role,.person>p:last-child{margin-left:22px;margin-right:22px}
.person>h3{font-family:var(--pixel);font-size:16px;line-height:1.7;margin-top:22px;margin-bottom:10px;color:#24257c}
.avatar{position:relative;display:block;width:100%;padding:0;border:0;background:#afd7fa;cursor:pointer;text-align:left;isolation:isolate}
.avatar img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;image-rendering:pixelated}
.player-tag{position:absolute;left:14px;top:14px;padding:8px 10px;background:#0c0c2c;color:var(--yellow);font:10px/1.5 var(--pixel);border:2px solid var(--yellow);z-index:2}
.avatar-hint{display:block;background:#121230;color:var(--cyan);text-align:center;font:10px/1.8 var(--pixel);padding:14px 8px;border-top:3px solid #fff}
.hiha-bubble{position:absolute;right:15px;bottom:78px;background:var(--yellow);color:#11112c;border:3px solid #17172c;box-shadow:5px 5px 0 #ff4d9a;padding:14px 12px;font:20px/1.3 var(--pixel);opacity:0;transform:translateY(6px);transition:opacity .08s steps(2),transform .08s steps(2);z-index:3}
.hiha-bubble:after{content:'';position:absolute;left:18px;bottom:-13px;width:12px;height:12px;background:var(--yellow);border-right:3px solid #17172c;border-bottom:3px solid #17172c}
.avatar.is-playing .hiha-bubble{opacity:1;transform:translateY(0)}
.avatar.is-playing .avatar-hint{background:var(--yellow);color:#10102d}
@media(max-width:700px){.person>h3{font-size:15px}.person>h3,.person>.role,.person>p:last-child{margin-left:18px;margin-right:18px}.avatar-hint{font-size:9px}.hiha-bubble{font-size:17px;padding:12px;bottom:78px}}
@media(prefers-reduced-motion:reduce){.hiha-bubble{transform:none;transition:none}}

/* D.A. ARCADE 1985 — même architecture, nouveau jeu. */
:root{--navy:#07051c;--yellow:#ffe600;--pink:#ff2f92;--cyan:#27f5ff;--paper:#d9d7c9;--ink:#11102a;--blue:#4245ff;--pixel:'Press Start 2P',monospace}
html{background:#07051c}
body{background-color:#07051c;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px),radial-gradient(ellipse at 50% -15%,#3530a8 0,transparent 55%);background-size:32px 32px,32px 32px,100% 100%;font-family:monospace;color:#fff}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:20;background:repeating-linear-gradient(0deg,#0000 0 3px,#00000016 4px);mix-blend-mode:multiply}
.topbar{max-width:none;padding:10px 4vw;border-bottom:3px solid var(--cyan);background:#09072a;box-shadow:0 4px 0 #000;color:var(--yellow);text-transform:uppercase}
#musicbtn{border:3px solid var(--yellow);box-shadow:3px 3px 0 #000;background:#161052;color:var(--yellow);text-transform:uppercase}
#musicbtn[aria-pressed=true]{background:var(--yellow);color:#07051c}
.page{max-width:1240px;padding:0 28px}
.hero{min-height:560px;grid-template-columns:1fr 1fr;gap:36px;padding:70px 0 44px;position:relative}
.hero:after{content:"1UP   HIHA-85";position:absolute;right:0;top:28px;color:var(--pink);font:11px var(--pixel);letter-spacing:1px}
.logo{width:350px;filter:drop-shadow(6px 6px 0 #000)}
.hero h1,.eyebrow,.film-meta{font-family:var(--pixel);text-transform:uppercase;letter-spacing:.4px}
.hero h1{color:var(--cyan);font-size:12px;text-shadow:3px 3px 0 #14106b}
.hero-line{font-family:var(--pixel);font-size:clamp(28px,3.2vw,46px);line-height:1.35;text-transform:uppercase;text-shadow:4px 4px 0 #211b75}
.hero-line strong{color:var(--yellow)}
.hero-description{font-family:monospace;color:#fff;font-size:17px;max-width:520px}
.button{font-family:var(--pixel);font-size:11px;text-transform:uppercase;background:var(--yellow);border:3px solid #fff;color:#0a0824;box-shadow:5px 5px 0 #000;image-rendering:pixelated}
.button.primary{background:var(--pink);color:#fff;border-color:#fff #8a0d50 #8a0d50 #fff}
.button:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 #000}
.video-window,.window{border:4px solid;border-color:var(--cyan) #292379 #292379 var(--cyan);box-shadow:8px 8px 0 #000;background:var(--paper);border-radius:0}
.window-title{background:var(--blue);border-bottom:4px solid #100d51;color:#fff;font-family:var(--pixel);font-size:10px;text-transform:uppercase;padding:12px 14px;text-shadow:2px 2px #17145e}
.video-window video{border:4px solid #000}
.video-caption{font-family:var(--pixel);font-size:10px;background:#100d3f;color:var(--cyan);text-transform:uppercase}
.retro-stamp{border:3px solid var(--pink);background:#120d46;color:var(--yellow);font-family:var(--pixel);font-size:10px;box-shadow:5px 5px 0 #000}
.menu{padding:18px 0 28px;border-bottom:3px solid var(--pink)}
.menu a{font-family:var(--pixel);font-size:10px;text-transform:uppercase;border:3px solid #5c57bd;background:#100d3e;box-shadow:3px 3px 0 #000}
.menu a:first-child{border-color:var(--yellow);color:var(--yellow)}
.menu a:hover{background:var(--yellow);color:#07051c}
.window{margin-bottom:38px}
.window-body{padding:34px}
.eyebrow{color:#3035bd;font-size:10px}
h2{font-family:var(--pixel);text-transform:uppercase;color:#161358;text-shadow:2px 2px 0 #fff;font-size:clamp(22px,3vw,36px);line-height:1.5}
.section-heading>p,.intro{font-family:monospace;color:#29264e}
.film-grid{gap:16px}
.film{background:#100d3e;border:3px solid #4c48af;box-shadow:4px 4px 0 #000}
.film:hover{border-color:var(--yellow);transform:translate(-3px,-3px);box-shadow:7px 7px 0 #000}
.film-image{border-bottom:3px solid var(--cyan)}
.film-image img{image-rendering:auto;filter:saturate(1.15) contrast(1.1)}
.play{border:3px solid #fff;background:var(--pink);color:#fff;box-shadow:3px 3px 0 #000;font-family:var(--pixel)}
.film-text{padding:18px}.film-meta{color:var(--cyan);font-size:10px}.film h3{font-family:var(--pixel);font-size:15px;line-height:1.7;color:var(--yellow);text-transform:uppercase}.film p:not(.film-meta){font-family:monospace;color:#e7e6f2}
.watch{font-family:var(--pixel);font-size:10px;border-top:2px solid #5f5bc2}.watch span{color:var(--pink)}
.award{font-family:var(--pixel);font-size:11px;background:var(--yellow);color:#0a0824;border:3px solid #fff;box-shadow:5px 5px 0 #000;text-transform:uppercase}
.process{gap:10px}.process li{background:#121044;border:3px solid #4e4ac3;border-top:6px solid var(--pink);box-shadow:3px 3px 0 #000;color:#fff}.process li:before{color:var(--yellow);font-family:var(--pixel)}.process h3{font-family:var(--pixel);font-size:13px;line-height:1.6;color:var(--cyan);text-transform:uppercase}.process p{color:#e6e4f2}
.method-note{border-top:3px solid var(--cyan);font-family:var(--pixel);font-size:10px;color:#1b1760}
.person{background:#121044;border:4px solid;border-color:var(--cyan) #292379 #292379 var(--cyan);box-shadow:5px 5px 0 #000;color:#fff}.person>h3{font-family:var(--pixel);color:var(--yellow);text-transform:uppercase}.person .role{color:var(--cyan);font-family:monospace}.person>p:last-child{color:#e7e6f2}
.avatar{background:#1d185f}.avatar-hint{font-family:var(--pixel);font-size:9px;background:#100d3e;color:var(--cyan)}
.honey-window{background:#f3d342}.honey-window .window-title{background:#b82b72}.honey-window h2{color:#22145d}.honey-window .intro,.honey-window .workflow-promise,.honey-window .story-note{color:#241b52}.honey-offer{border:4px solid #fff;background:#100d3e;box-shadow:6px 6px 0 #000}.honey-offer h3{font-family:var(--pixel);font-size:clamp(19px,2.6vw,31px);text-transform:uppercase}.honey-offer .offer-copy>p:not(.eyebrow){font-family:monospace}.honey-grid img{border:3px solid #17104f}.honey-grid figcaption{font-family:monospace;font-weight:bold;color:#241b52}
details summary{border:3px solid #24165f;background:#f9e77b;font-family:var(--pixel);font-size:10px;text-transform:uppercase;color:#17104f}details summary:hover{background:#fff09d}
.contact-window{background:#100d3e;border-color:var(--pink) #4b145b #4b145b var(--pink)}.contact-window h2{color:var(--yellow);text-shadow:3px 3px #271975}.contact-window p{font-family:monospace}.contact-grid a{border:3px solid #5550c6;background:#191550;box-shadow:3px 3px 0 #000}.contact-grid a:hover{background:#28218a;border-color:var(--yellow)}.contact-grid strong{font-family:var(--pixel);font-size:13px;color:var(--cyan)}
.closing-video{border-color:var(--pink) #4b145b #4b145b var(--pink)}footer{font-family:monospace;color:#aaa7d3;border-top:3px solid #3f3b9c;padding-top:22px}footer a{font-family:var(--pixel);font-size:10px;color:var(--yellow)}
@media(max-width:700px){.hero{min-height:0;padding-top:48px}.hero:after{top:15px;font-size:8px}.hero-line{font-size:25px}.window-body{padding:22px 16px}.window-title{font-size:8px}.film h3{font-size:13px}.process h3{font-size:12px}.honey-offer h3{font-size:22px}.contact-grid strong{font-size:11px}}

/* Mode FULL PIXEL : réduction chromatique, trames et caractères de borne. */
main{position:relative}
main:before{content:"◆ SCORE 008500     • INSERT COIN     ◆";display:block;height:28px;overflow:hidden;color:var(--cyan);font:9px/28px var(--pixel);white-space:nowrap;letter-spacing:2px;border-bottom:3px solid var(--pink);text-align:center}
.hero{border-left:4px solid var(--pink);border-right:4px solid var(--cyan);padding-left:28px;padding-right:28px;background:linear-gradient(90deg,#0b0835,#16105a 50%,#0b0835);box-shadow:inset 0 0 0 4px #0a0730, inset 0 0 35px #000}
.hero-line,.hero h1,h2,h3,.button,.menu a,.window-title,.eyebrow,.film-meta,.watch,.award,footer a,details summary{font-family:var(--pixel)}
.hero-line{font-size:clamp(22px,2.8vw,40px);letter-spacing:1px}
.hero-description,.section-heading>p,.intro,.process p,.person>p:last-child,.contact-window p,.honey-grid figcaption,.honey-offer .offer-copy>p:not(.eyebrow){font-family:monospace}
.window-body{background-image:linear-gradient(90deg,#ffffff08 1px,transparent 1px),linear-gradient(#ffffff08 1px,transparent 1px);background-size:16px 16px}
.window:not(.contact-window):not(.honey-window) .window-body{background-color:#d9d7c9}
.film,.process li,.person,.contact-grid a{image-rendering:pixelated}
.film-image img,.honey-grid img,.avatar img,.logo{image-rendering:pixelated;filter:contrast(1.3) saturate(1.55)}
.film-image:after,.avatar:after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,#0000 0 3px,#0003 4px);mix-blend-mode:multiply}
.film-image .play{z-index:2}
.film{position:relative}.film:before{content:"LEVEL";position:absolute;z-index:3;top:8px;left:8px;padding:5px 6px;background:var(--pink);color:#fff;font:8px var(--pixel);border:2px solid #fff}
.process li{position:relative}.process li:after{content:"▶";position:absolute;right:10px;top:10px;color:var(--yellow);font:12px var(--pixel)}
.window-title>span:first-child:before{content:"■ ";color:var(--yellow)}
.honey-window .window-title>span:first-child:before{color:#fff}
.contact-window .window-body{background-color:#100d3e}
.contact-grid a,.person{font-family:monospace}
.closing-video video,.data-film{image-rendering:pixelated;filter:contrast(1.25) saturate(1.35)}
@keyframes arcade-blink{50%{opacity:.35}}
.hero:after{animation:arcade-blink 1s steps(2) infinite}
@media(prefers-reduced-motion:reduce){.hero:after{animation:none}}

/* Connexion modem : le site démarre comme une vieille page chargée en 56K. */
#boot-screen{position:fixed;inset:0;z-index:100;display:grid;place-items:center;background:#02050a;color:#42ff78;font:clamp(15px,2vw,24px)/1.8 'VT323',monospace;letter-spacing:1px;animation:boot-flicker .12s steps(2) infinite;cursor:pointer}
#boot-screen:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,#0000 0 3px,#42ff7815 4px);pointer-events:none}
.boot-terminal{width:min(760px,90vw);padding:32px;border:3px solid #42ff78;box-shadow:0 0 0 6px #031b0b,0 0 30px #20d75a88;text-shadow:0 0 8px #42ff78;background:#010b05}
.boot-progress{color:var(--yellow);margin-top:12px}.boot-prompt{color:var(--cyan);margin-top:18px}.boot-prompt span{animation:arcade-blink .7s steps(2) infinite}.boot-done{opacity:0;transition:opacity .4s steps(4);pointer-events:none}
@keyframes boot-flicker{50%{filter:brightness(.82)}}
@media(prefers-reduced-motion:reduce){#boot-screen{animation:none}.boot-prompt span{animation:none}}
.guestbook-window{background:#bfc0c8}.guestbook-window h2{font-size:clamp(20px,2.5vw,30px)}.guestbook-form{display:grid;gap:8px;max-width:640px;padding:18px;background:#11102f;border:3px ridge #777;color:var(--cyan)}.guestbook-form label{font:10px var(--pixel);text-transform:uppercase}.guestbook-form input,.guestbook-form textarea{width:100%;padding:10px;background:#020510;color:#42ff78;border:3px inset #777;font:20px 'VT323',monospace}.guestbook-form .button{justify-self:start;font-size:9px}.guestbook-body{margin-top:16px;padding:0}.guest-entry{margin:8px 0;padding:8px 10px;background:#fff;color:#06051e;border:2px solid #777;font:19px 'VT323',monospace}.guest-entry strong{color:#24257c}
.arcade-ticker{margin:0 auto;max-width:1240px;overflow:hidden;white-space:nowrap;background:#ff2f92;color:#fff;border:3px solid #fff;box-shadow:4px 4px 0 #000;font:10px/30px var(--pixel);text-transform:uppercase}.arcade-ticker span{display:inline-block;padding-left:100%;animation:ticker-run 22s linear infinite}@keyframes ticker-run{to{transform:translateX(-100%)}}
.retro-badges{display:flex;flex-wrap:wrap;gap:7px;margin:15px 0 18px}.retro-badges span{padding:7px 8px;background:#11102f;border:2px solid var(--cyan);color:var(--cyan);font:8px/1.4 var(--pixel);box-shadow:3px 3px 0 #000}.retro-badges span:nth-child(2){border-color:var(--yellow);color:var(--yellow)}.retro-badges span:nth-child(3){border-color:var(--pink);color:var(--pink)}
.gimmicks{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 22px}.counter{background:#01050c;border:4px ridge #888;padding:12px;text-align:center;box-shadow:4px 4px 0 #000}.counter .label{font:8px/1.6 var(--pixel);color:var(--cyan)}.counter .digits{margin-top:8px;padding:8px;background:#001b12;border:2px solid #42ff78;color:#42ff78;font:16px var(--pixel);letter-spacing:2px}.webring{margin:0 0 30px;padding:14px;text-align:center;background:#d9d7c9;border:4px ridge #888;color:#11102f;font:9px/2 var(--pixel)}.webring a{color:#24257c}.webring span{font-family:monospace;font-size:15px}
@media(max-width:700px){.gimmicks{grid-template-columns:1fr}.counter .digits{font-size:13px}.arcade-ticker{font-size:8px}.retro-badges span{font-size:7px}}

/* Couche MINITEL : texture CRT et bricolage informatique visible partout. */
body{font-family:'VT323','Courier New',monospace;font-size:22px;letter-spacing:.2px;background-color:#00140d;background-image:repeating-linear-gradient(0deg,#00140d 0 2px,#002218 3px),radial-gradient(ellipse at center,#073d25 0,#00140d 78%);color:#b9ffbf}
body:after{content:"";position:fixed;inset:0;z-index:19;pointer-events:none;background:linear-gradient(90deg,#00ff6620 0 1px,transparent 1px 4px),repeating-linear-gradient(0deg,transparent 0 2px,#0005 3px);opacity:.45}
main:before{font-family:'VT323',monospace;font-size:18px;letter-spacing:3px;color:#42ff78;background:#001b12;border:3px inset #47765a;line-height:30px}
.topbar{font-family:'VT323',monospace;font-size:21px;letter-spacing:1px;background:#001b12;color:#42ff78;border-bottom:3px double #42ff78}
#musicbtn{font-family:'VT323',monospace;font-size:20px;background:#00291b;color:#ffe46b;border:3px inset #6b9d78;box-shadow:none}
.arcade-ticker{font-family:'VT323',monospace;font-size:20px;line-height:30px;background:#00351e;border:3px inset #6b9d78;box-shadow:none;color:#ffe46b}
.page{max-width:1180px}
.hero{background:#001b12;border:4px ridge #5b9872;box-shadow:0 0 0 3px #000, inset 0 0 35px #000;}
.hero-line{font-family:'VT323',monospace;font-size:clamp(36px,4vw,58px);line-height:1.05;letter-spacing:1px;color:#b9ffbf;text-shadow:3px 3px 0 #003d22}
.hero-line strong{color:#ffe46b}.hero h1{font-family:'Press Start 2P',monospace;font-size:11px;color:#ffe46b}
.hero-description{font-size:23px;color:#b9ffbf}.retro-badges span{font-family:'VT323',monospace;font-size:18px;padding:3px 8px;background:#00140d;border:3px inset #5b9872;box-shadow:none}
.button{font-family:'VT323',monospace;font-size:22px;letter-spacing:.5px;background:#c6c6b8;color:#00140d;border:3px outset #f0f0df;box-shadow:none;text-transform:uppercase}.button:hover{transform:none;box-shadow:none;background:#ffe46b}.button.primary{background:#ffe46b;color:#00140d;border-color:#fff8b0 #6c5c00 #6c5c00 #fff8b0}
.window,.video-window{border:4px ridge #70977a;box-shadow:0 0 0 3px #000;background:#bfc3b7;color:#07170e}
.window-title{font-family:'VT323',monospace;font-size:22px;letter-spacing:1px;background:#004b2a;color:#b9ffbf;border-bottom:3px inset #6b9d78;padding:7px 12px;text-shadow:2px 2px #00140d}
.window-title>span:first-child:before{color:#ffe46b}.window-body{background-image:repeating-linear-gradient(0deg,#ffffff18 0 2px,transparent 3px);background-size:auto}
h2{font-family:'Press Start 2P',monospace;font-size:clamp(18px,2.5vw,29px);color:#003d22;text-shadow:2px 2px #e8f0d1}.eyebrow,.film-meta{font-family:'Press Start 2P',monospace;font-size:9px;color:#006f3b}.intro,.section-heading>p{font-size:22px;color:#173723}
.film{background:#001b12;color:#b9ffbf;border:3px ridge #5b9872;box-shadow:none}.film:hover{transform:none;border-color:#ffe46b;box-shadow:none}.film h3{font-family:'Press Start 2P',monospace;font-size:13px;color:#ffe46b}.film p:not(.film-meta){font-size:21px;color:#b9ffbf}.film-image{border-bottom:3px ridge #5b9872}.film-image img,.honey-grid img,.avatar img,.logo{filter:contrast(1.15) saturate(.7)}
.play{background:#ffe46b;color:#00140d;border:3px outset #fff8b0;box-shadow:none}.process li{background:#d8d9ce;border:3px ridge #778477;border-top:3px ridge #778477;box-shadow:none}.process li:before{font-family:'Press Start 2P';color:#006f3b}.process h3{font-family:'Press Start 2P';font-size:11px;color:#003d22}.process p{font-size:21px;color:#173723}.process li:after{color:#006f3b}
.person{background:#d8d9ce;border:3px ridge #778477;box-shadow:none}.person>h3{font-family:'Press Start 2P';font-size:13px;color:#003d22}.person .role{font-family:'VT323';font-size:21px;color:#8a5b00}.person>p:last-child{font-size:21px;color:#173723}.avatar-hint{font-family:'VT323';font-size:20px;background:#001b12;color:#42ff78}
.honey-window{background:#d5b84d}.honey-window .window-title{background:#5c3c00;color:#ffe46b}.honey-window .intro,.honey-window .workflow-promise,.honey-window .story-note{color:#2d2100}.honey-offer{background:#001b12;border:4px ridge #70977a;box-shadow:none}.honey-offer h3{font-family:'Press Start 2P';font-size:clamp(16px,2.2vw,25px)}.honey-offer .offer-copy>p:not(.eyebrow){font-size:21px}.honey-grid figcaption{font-size:20px}
details summary{font-family:'Press Start 2P';font-size:10px;background:#e2d36b;border:3px ridge #897a27;color:#241b00}details summary:hover{background:#ffe46b}
.contact-window{background:#001b12;border-color:#42ff78}.contact-window h2{color:#ffe46b;text-shadow:2px 2px #003d22}.contact-window p{font-size:22px;color:#b9ffbf}.contact-grid a{background:#00291b;border:3px ridge #5b9872;box-shadow:none}.contact-grid strong{font-family:'VT323';font-size:25px;color:#ffe46b}.closing-video{border-color:#42ff78}.guestbook-window{background:#bfc3b7}.guestbook-form{background:#001b12;border:3px ridge #70977a}.guestbook-form label{font-family:'Press Start 2P';font-size:9px}.guestbook-form input,.guestbook-form textarea{font-family:'VT323';font-size:22px}.guest-entry{font-family:'VT323';font-size:22px;border:3px ridge #888}.counter{border:3px ridge #778477;box-shadow:none}.counter .label{font-family:'Press Start 2P';font-size:8px}.counter .digits{font-family:'Press Start 2P';font-size:13px}.webring{font-family:'Press Start 2P';font-size:8px;border:3px ridge #888;box-shadow:none}.webring span{font-family:'VT323';font-size:20px}footer{font-family:'VT323';font-size:19px;border-top:3px double #42ff78;color:#82c98c}

.person .role{font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.5;overflow-wrap:anywhere;letter-spacing:0}.person .role a{text-underline-offset:4px}.person .role a:hover{color:#24257c}

/* Promotion de rentrée HIHA. */
.workflow-promise{font-size:clamp(21px,2.6vw,29px);line-height:1.35;max-width:780px;margin:20px 0 26px;letter-spacing:-.4px}.workflow-promise strong{color:#25257c}
.honey-offer{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;background:#08082e;color:#fff;border:3px solid;border-color:#fff2a5 #947200 #947200 #fff2a5;box-shadow:4px 4px 0 #9b782a;margin:0 0 28px;overflow:hidden}
.honey-offer .offer-copy{padding:28px}.honey-offer .eyebrow{color:var(--yellow);font-size:10px}.honey-offer h3{font-size:clamp(24px,3vw,36px);line-height:1.18;letter-spacing:-.8px;margin:18px 0}.honey-offer h3 em{font-style:normal;color:var(--yellow)}.honey-offer .offer-copy>p:not(.eyebrow){font-size:16px;line-height:1.6;color:#dfdeee}.honey-offer img{width:100%;height:auto;aspect-ratio:1;object-fit:cover}.honey-offer .button{margin-top:8px;box-shadow:none}
@media(max-width:700px){.honey-offer{grid-template-columns:1fr}.honey-offer .offer-copy{padding:24px 20px}.honey-offer h3{font-size:29px}.honey-offer .eyebrow{font-size:9px}.workflow-promise{font-size:23px}.honey-offer img{max-height:420px;object-fit:contain;background:#08082e}}

.closing-video{max-width:760px;margin:30px auto 0}.closing-video video{width:100%;aspect-ratio:16/9;background:#000}

button.film{font:inherit;text-align:left;color:inherit;cursor:pointer;width:100%;padding:0;display:block}
#film-dialog{width:min(1100px,96vw);max-width:none;padding:0;border:3px solid #cecedc;background:#08082e;color:white;box-shadow:8px 8px 0 #0008;max-height:95dvh;overflow:auto}
#film-dialog::backdrop{background:#030313e8}#film-dialog .window-title{gap:12px}#film-title{font:inherit;line-height:1.6;letter-spacing:0;margin:0}#film-dialog .window-title>div{display:flex;gap:10px;flex-shrink:0}#film-dialog button{cursor:pointer;min-height:40px;background:#d6d5df;color:#11132f;border:2px outset #fff;padding:6px 12px;font:14px Arial}#film-player{aspect-ratio:16/9;background:#000}#film-player iframe{display:block;width:100%;height:100%;border:0}#film-error{padding:20px;margin:0}body.film-open{overflow:hidden}

.data-film{display:block;width:100%;max-height:75vh;background:#000;margin:0 auto 28px}

/* One terminal typeface throughout, matching the guestbook. */
:root{--pixel:'VT323',monospace;--body:'VT323',monospace}
body,body *,body *::before,body *::after{font-family:'VT323',monospace!important}
.hero-description,.section-heading>p,.intro,.process p,.film p:not(.film-meta),
.person>p:last-child,.contact-window p,.honey-grid figcaption,
.honey-offer .offer-copy>p:not(.eyebrow),.story-note,.talent{
 font-size:24px;line-height:1.4;letter-spacing:0;font-weight:400;overflow-wrap:break-word;
}
.hero-description,.section-heading>p,.intro{font-size:26px}
.workflow-promise{font-size:32px;line-height:1.3;letter-spacing:0}
h2{font-size:clamp(32px,4vw,46px);line-height:1.1;letter-spacing:0}
.hero h1{font-size:22px;line-height:1.2}
.eyebrow,.film-meta,.watch,.method-note,.award,.award-detail{font-size:20px;line-height:1.4}
.film h3,.person>h3,.process h3{font-size:26px;line-height:1.15;letter-spacing:0}
.person .role{font-size:26px;line-height:1.3}
.menu a,.button,details summary{font-size:24px;line-height:1.15}
.guestbook-window h2{font-size:40px}
.guestbook-form label,.guestbook-form .button,.counter .label,.webring,footer a{font-size:20px;line-height:1.3}
.counter .digits{font-size:28px}
.player-tag,.video-caption,.avatar-hint{font-size:20px;line-height:1.3}
#film-dialog button{font-size:22px}
@media(max-width:700px){
 .hero-description,.section-heading>p,.intro{font-size:24px}
 .hero{padding-left:16px;padding-right:16px}
 .hero-line{font-size:40px}
 .actions .button{font-size:22px;flex:1 1 100%;min-width:0}
 .menu a{font-size:22px}.eyebrow,.film-meta{font-size:18px}
 .process h3,.person>h3,.film h3{font-size:26px}
 .guestbook-window h2{font-size:34px}
}

.retro-stamp{font-size:22px}.hero:after{font-size:18px}.guestbook-form .button{font-size:22px}

.process li:before{font-size:24px}
