@font-face{font-family:'Bebas Neue';src:url('assets/fonts/bebas-neue-latin-400-normal.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Bebas Neue';src:url('assets/fonts/bebas-neue-latin-ext-400-normal.woff2') format('woff2');font-weight:400;font-display:swap;unicode-range:U+0100-024F,U+1E00-1EFF}
@font-face{font-family:'DM Sans';src:url('assets/fonts/dm-sans-latin-400-normal.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'DM Sans';src:url('assets/fonts/dm-sans-latin-500-normal.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'DM Sans';src:url('assets/fonts/dm-sans-latin-600-normal.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'DM Sans';src:url('assets/fonts/dm-sans-latin-700-normal.woff2') format('woff2');font-weight:700;font-display:swap}
:root{color-scheme:dark;--ink:#101820;--panel:#172129;--gold:#d5b46a;--paper:#ede8da;--muted:#b7b8b2;--serif:'Bebas Neue',Impact,sans-serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font:400 1rem/1.65 var(--sans)}a{color:inherit}button{font:inherit}img{display:block;max-width:100%}.skip{position:absolute;left:-100vw;top:8px;z-index:30;background:white;color:black;padding:8px}.skip:focus{left:8px}.site-header{height:88px;padding:0 clamp(24px,5vw,88px);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff21;position:relative;z-index:3;background:#101820}.wordmark{text-decoration:none;font:400 1.45rem/1 var(--serif);letter-spacing:.18em;white-space:nowrap}.wordmark span{color:var(--gold)}nav{display:flex;gap:clamp(15px,2.6vw,42px)}nav a{text-decoration:none;color:#d8d7d1;font-size:.79rem;letter-spacing:.12em;text-transform:uppercase}nav a:hover,nav a:focus-visible,.text-link:hover{color:var(--gold)}.hero{min-height:min(820px,calc(100svh - 88px));display:grid;grid-template-columns:1.18fr .82fr;position:relative;overflow:hidden;background:radial-gradient(circle at 42% 52%,#30454a 0%,#142129 47%,#0d151e 85%)}.hero:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(130deg,transparent 30%,#d5b46a0b 31%,transparent 32%),repeating-linear-gradient(90deg,transparent 0 98px,#ffffff08 99px 100px);opacity:.7}.hero-copy{position:relative;z-index:1;align-self:center;padding:80px 6vw 105px max(6vw,40px)}.eyebrow,.section-kicker,.small-note,.poster-caption,.hero-index,.ordinal,.gallery-head>span{font-size:.75rem;letter-spacing:.23em;text-transform:uppercase;color:var(--gold);font-weight:700}.hero h1,h2{font:400 clamp(3.3rem,6.5vw,7rem)/1.1 var(--serif);letter-spacing:.065em;text-transform:uppercase;margin:35px 0}em{font-weight:400;font-style:normal;color:var(--gold)}.hero p{max-width:520px;font-size:1.1rem;line-height:1.8;color:#deded6}.hero-actions{display:flex;gap:28px;align-items:center;margin-top:38px;flex-wrap:wrap}.button{display:inline-flex;gap:28px;align-items:center;justify-content:space-between;border:1px solid var(--gold);background:var(--gold);color:#111820;text-decoration:none;padding:15px 22px;text-transform:uppercase;font-weight:700;letter-spacing:.1em;font-size:.75rem;transition:background .2s,color .2s}.button:hover{background:transparent;color:var(--gold)}.text-link{font-size:.78rem;text-decoration:underline;text-underline-offset:6px;text-transform:uppercase;letter-spacing:.12em}.hero-art{height:100%;min-height:650px;position:relative;overflow:hidden;background:#1d242a}.hero-art img{width:100%;height:100%;object-fit:cover;object-position:center 25%;filter:saturate(.8)}.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#10182066,transparent 28%),linear-gradient(0deg,#101820ba,transparent 27%);pointer-events:none}.poster-caption{position:absolute;z-index:1;right:30px;bottom:30px;color:var(--paper)}.hero-index{position:absolute;bottom:28px;left:6vw;color:#d5b46a99}.section{padding:110px clamp(24px,6vw,100px)}.section-kicker{display:flex;align-items:center;gap:25px;white-space:nowrap}.rule{height:1px;background:#d5b46a52;flex:1}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:9vw;margin-top:70px}.story-grid h2,.world h2,.characters h2,.gallery h2,.dossier h2{font-size:clamp(3rem,5.5vw,5.8rem);line-height:1.15;letter-spacing:.045em;text-transform:uppercase;margin:0}.story-text{max-width:630px;color:var(--muted)}.story-text .lead{color:var(--paper);font:400 clamp(1.5rem,2.1vw,2rem)/1.45 var(--serif)}.story-text p{margin:0 0 26px}.world{padding:0;display:grid;grid-template-columns:1fr 1fr;background:#21282e}.world-image{min-height:650px}.world-image img{height:100%;width:100%;object-fit:cover;filter:grayscale(1)}.world-copy{padding:100px clamp(28px,6vw,110px);align-self:center}.world-copy h2{margin:35px 0}.world-copy p{max-width:520px;color:#c9c9c2}.fine-line{height:1px;background:#d5b46a70;margin:40px 0 20px}.characters h2,.gallery h2{margin:40px 0 55px}.character-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid #ffffff31}.character-grid article{padding:35px 26px 35px 0;border-bottom:1px solid #ffffff31;border-right:1px solid #ffffff31;margin-right:20px}.character-grid article:last-child{border-right:0}.ordinal{font-family:var(--serif);font-size:1.4rem}.character-grid h3{font:400 2rem/1.15 var(--serif);text-transform:uppercase;letter-spacing:.06em;margin:35px 0 20px}.character-grid p{color:var(--muted);font-size:.9rem;line-height:1.7}.gallery{background:#18232a}.gallery-head{display:flex;justify-content:space-between;align-items:end;gap:20px}.gallery h2{margin-bottom:12px}.gallery-head p{color:var(--muted)}.photo-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:40px}.photo{appearance:none;position:relative;border:0;padding:0;background:#0b1014;color:white;cursor:pointer;overflow:hidden;aspect-ratio:4/5;text-align:left}.photo:nth-child(4n+2),.photo:nth-child(7){aspect-ratio:4/5}.photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(.85);transition:transform .35s,filter .35s}.photo:hover img,.photo:focus-visible img{transform:scale(1.06);filter:grayscale(0)}.photo:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#000b)}.photo span{position:absolute;z-index:1;bottom:14px;left:15px;right:12px;font-size:.72rem;line-height:1.3}.photo b{display:block;color:var(--gold);font-size:.9rem;margin-bottom:5px}.dossier{position:relative;overflow:hidden;background:#d5b46a;color:#111820;min-height:500px}.dossier-inner{position:relative;z-index:1;max-width:740px}.dossier .section-kicker,.dossier em{color:#29383b}.dossier p{max-width:580px;font-size:1.05rem;margin:30px 0}.button.light{background:#111820;color:#f7efe0;border-color:#111820}.button.light:hover{background:transparent;color:#111820}.dossier-mark{position:absolute;right:4%;bottom:-18%;font:400 min(34vw,500px)/1 var(--serif);letter-spacing:-.12em;color:#ffffff2f}footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:45px 6vw;color:#aeb2ae;flex-wrap:wrap}footer a{text-decoration:none}footer a:hover{color:var(--gold)}.viewer{border:1px solid #d5b46a72;background:#101820;color:white;padding:30px;max-width:min(95vw,1200px);max-height:95vh;overflow:visible}.viewer::backdrop{background:#05090de8}.viewer img{max-height:calc(95vh - 65px);max-width:calc(95vw - 70px);object-fit:contain;margin:auto}.viewer button{border:0;background:#111820d9;color:white;cursor:pointer;font-size:2.4rem}.viewer .close{position:absolute;right:0;top:-45px;width:44px;height:44px}.viewer .prev,.viewer .next{position:absolute;top:50%;width:45px;height:55px;transform:translateY(-50%)}.viewer .prev{left:0}.viewer .next{right:0}.viewer .counter{position:absolute;bottom:5px;right:30px;color:var(--gold);font-size:.8rem}@media(max-width:850px){.site-header{height:auto;min-height:74px;flex-wrap:wrap;gap:10px;padding:20px 24px}nav{width:100%;justify-content:space-between;gap:9px;overflow-x:auto}nav a{font-size:.65rem}.hero{grid-template-columns:1fr}.hero-copy{padding:80px 24px 65px}.hero-art{height:480px;min-height:0}.hero-index{display:none}.story-grid,.world{grid-template-columns:1fr}.section{padding:80px 24px}.story-grid{gap:30px;margin-top:45px}.world{padding:0}.world-image{min-height:420px;height:420px}.world-copy{padding:70px 24px}.character-grid{grid-template-columns:repeat(2,1fr)}.photo-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:550px){.hero h1{font-size:clamp(2.6rem,10vw,3.7rem);letter-spacing:.03em}.hero-art{height:440px}.character-grid{grid-template-columns:1fr}.character-grid article{margin:0;border-right:0}.photo-grid{grid-template-columns:repeat(2,1fr)}.gallery-head>span{display:none}.viewer{padding:20px}.viewer img{max-width:calc(95vw - 40px)}footer{display:block}footer>*{display:block;margin:0 0 14px}}

/* Décor géométrique Art déco, discret et sans gêner la lecture. */
h1,h2,h3,.wordmark{font-synthesis:none}.section-kicker:before{content:"◆";font-size:.65rem;color:var(--gold)}.hero-copy:before{content:"";position:absolute;top:38px;left:max(6vw,40px);width:80px;height:1px;background:var(--gold)}.characters h2,.gallery h2{max-width:940px}@media(max-width:850px){.hero-copy:before{left:24px}}

.admin-entry{display:inline-flex;align-items:center;gap:.7em;margin-left:20px;padding:10px 14px;border:1px solid var(--gold);color:var(--gold);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;white-space:nowrap}.admin-entry:hover,.admin-entry:focus-visible{background:var(--gold);color:var(--ink)}.footer-links{display:flex;gap:25px}.footer-links a:first-child{color:var(--gold)}.wordmark{font-size:1.8rem;letter-spacing:.12em}.hero h1{font-size:clamp(3.7rem,7.8vw,8rem);line-height:.98;letter-spacing:.055em}.story-grid h2,.world h2,.characters h2,.gallery h2,.dossier h2{font-size:clamp(3.9rem,6.4vw,7rem);line-height:1.02;letter-spacing:.055em}.character-grid h3{font-size:2.3rem}.hero p,.story-text p,.world-copy p{max-width:58ch}@media(max-width:1050px){.site-header{gap:16px}.admin-entry{margin-left:0}}@media(max-width:850px){.site-header{display:grid;grid-template-columns:1fr auto}.site-header nav{grid-column:1/-1;grid-row:2}.admin-entry{grid-column:2;grid-row:1}.hero h1{font-size:clamp(3.4rem,10vw,5rem)}}@media(max-width:550px){.wordmark{font-size:1.35rem}.admin-entry{font-size:.68rem;padding:8px}.hero h1{font-size:clamp(3.15rem,12vw,4.4rem)}.story-grid h2,.world h2,.characters h2,.gallery h2,.dossier h2{font-size:clamp(3.2rem,10vw,4.6rem)}.footer-links{display:grid;gap:10px}}
