/* Le musée à jouer : lecture confortable, contenus visibles sans script. */
.explore { font-size:1.125rem; --ex-gold:#e2d39f; }
.explore p { line-height:1.85; }
.explore h1 { font-size:clamp(3.3rem,7vw,7rem); line-height:1.02; }
.explore h2 { font-size:clamp(2.3rem,4.3vw,4.6rem); line-height:1.08; }
.explore h3 { font-size:clamp(1.8rem,2.4vw,2.5rem); line-height:1.15; }
.explore a:not(.ex-card,.button,.text-link,.ex-map-marker) { text-decoration:underline; text-underline-offset:5px; }
.explore button { font-size:1rem; }
.explore button:focus-visible,.explore summary:focus-visible { outline:3px solid var(--accent); outline-offset:5px; }
.explore .ex-heading { padding-top:clamp(38px,5vw,76px); padding-bottom:48px; position:relative; }
.ex-heading .eyebrow { color:var(--accent); margin:30px 0 20px; }
.ex-heading .ex-lead { max-width:790px; margin-top:28px; font-size:1.1875rem; color:#4b5f50; }
.ex-heading::after { content:''; display:block; width:min(460px,70%); height:16px; margin-top:38px; background:repeating-linear-gradient(130deg,transparent 0 9px,#bc9e69 10px 11px,transparent 12px 21px); opacity:.45; mask-image:linear-gradient(90deg,#000,transparent); }
.ex-section-title { max-width:840px; margin-bottom:36px; }
.ex-section-title .eyebrow { color:var(--accent); margin-bottom:16px; }
.ex-section-title p:not(.eyebrow) { margin-top:22px; color:var(--muted); }
.ex-split { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:clamp(28px,5vw,80px); }
.ex-split>div>p { margin:22px 0; }
.ex-split .ex-photo { min-width:0; }
.ex-split .ex-photo img { max-height:560px; width:100%; object-fit:contain; }
.ex-photo { margin:0; min-width:0; }
.ex-photo>button { display:block; padding:0; width:100%; position:relative; border:1px solid #d9d5c6; background:#e8e4d9; overflow:hidden; }
.ex-photo>button img { width:100%; height:auto; max-height:680px; object-fit:contain; transition:transform .6s ease; }
.ex-photo>button:hover img { transform:scale(1.025); }
.ex-zoom { position:absolute; bottom:14px; right:14px; width:40px; height:40px; display:grid; place-items:center; border-radius:50%; background:var(--paper-light); color:var(--green); font-size:24px; box-shadow:0 2px 12px #0002; }
.ex-photo figcaption,.ex-credit { font-size:.875rem; line-height:1.8; margin-top:12px; color:#536252; overflow-wrap:anywhere; }
.ex-photo figcaption a { white-space:normal; }
.ex-note { font-size:.9375rem; color:var(--muted); line-height:1.8; }
.ex-choice { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:30px; }
.ex-choice button,.ex-choice>a { min-height:48px; padding:10px 17px; border:1px solid #aab5a4; display:inline-flex; align-items:center; justify-content:center; text-align:left; line-height:1.5; font-size:1rem; }
.ex-choice button[aria-pressed=true],.ex-choice button:hover { background:var(--green); color:var(--paper-light); border-color:var(--green); }
.ex-choice button[aria-pressed=true]::before { content:'•'; margin-right:9px; }
.ex-dark { background:var(--green); color:var(--paper-light); padding:74px 0; --muted:#d8e2d0; }
.ex-dark .eyebrow { color:var(--ex-gold); }
.ex-dark p { color:#e0e7d8; }
.ex-dark .ex-photo figcaption,.ex-dark .ex-credit { color:#d8e2d0; }
.ex-dark a { color:var(--ex-gold); }
.ex-dark .ex-photo>button { border-color:#647b6b; }
.ex-fact { padding:28px; background:#e9e4d7; border-left:3px solid var(--accent); margin:45px 0; }
.ex-fact p { margin:18px 0; }
.ex-sources { margin:38px 0 60px; border-block:1px solid var(--rule); padding:22px 0; }
.ex-sources summary { font-weight:700; cursor:pointer; font-size:1rem; }
.ex-sources li { margin:14px 0; font-size:1rem; }
.ex-sources>p { font-size:.9375rem; color:var(--muted); margin:20px 0; }
.ex-next { background:#e8e5d9; padding:45px max(24px,calc((100vw - 1224px)/2)); display:flex; flex-direction:column; align-items:flex-start; gap:22px; }
.ex-next>a:first-of-type { font-family:var(--serif); font-size:clamp(2rem,3.5vw,3rem); line-height:1.15; max-width:900px; text-decoration:none; }
.ex-next>a:first-of-type:hover { color:var(--accent); }
.ex-home { display:grid; grid-template-columns:.8fr 1fr 1fr; gap:32px; padding-top:70px; padding-bottom:70px; }
.ex-home>div>p:not(.eyebrow) { font-size:1rem; margin:24px 0; max-width:330px; color:var(--muted); }
.ex-home h2 { font-size:clamp(44px,5vw,70px); margin-top:18px; }
.ex-home>a { position:relative; display:block; padding:32px; background:#e8e2d3; transition:transform .25s ease; }
.ex-home>a:hover { transform:translateY(-5px); }
.ex-home h3 { font-size:38px; line-height:1.08; margin:18px 0; }
.ex-home a>p { font-size:1rem; margin-bottom:30px; color:#4b5f50; }
.ex-home .ex-home-game { background:var(--green); color:var(--paper-light); }
.ex-home .ex-home-game>p { color:#e0e7d8; }
.ex-home-game>img { width:80px; height:80px; object-fit:contain; border-radius:50%; margin-bottom:26px; }
.ex-home-game .eyebrow { color:var(--ex-gold); }
.ex-home-game .button { background:var(--ex-gold); color:var(--green-deep); border-color:var(--ex-gold); }
.ex-thread-icon { width:82px; height:80px; position:relative; margin-bottom:26px; transform:rotate(-17deg); }
.ex-thread-icon i { position:absolute; left:14px; width:52px; height:78px; border:3px solid var(--accent); border-radius:50%; }
.ex-thread-icon i:nth-child(2) { transform:rotate(65deg); border-color:#385d50; }
.ex-thread-icon i:nth-child(3) { transform:rotate(-65deg); border-color:#b28b44; }
.ex-duration-filter { display:flex; align-items:center; gap:18px; flex-wrap:wrap; border-block:1px solid var(--rule); padding:22px 0; margin-bottom:35px; font-size:1rem; }
.ex-duration-filter>div { display:flex; flex-wrap:wrap; gap:8px; }
.ex-duration-filter button { padding:10px 16px; border:1px solid #a8b09d; min-height:46px; }
.ex-duration-filter button[aria-pressed=true] { background:var(--green); color:var(--paper-light); }
.ex-duration-filter>p { width:100%; font-size:.875rem; }
.ex-duration-filter>p:empty { display:none; }
.ex-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:42px 28px; }
.ex-card { border-bottom:1px solid var(--rule); padding-bottom:24px; }
.ex-card-image { position:relative; background:#e6e1d3; overflow:hidden; }
.ex-card-image img { height:255px; width:100%; object-fit:contain; padding:18px; transition:transform .5s ease; }
.ex-card:hover img { transform:scale(1.035); }
.ex-card-image>span { position:absolute; top:14px; left:14px; background:var(--paper-light); color:var(--green); padding:3px 10px; font-size:.75rem; letter-spacing:.1em; }
.ex-card-copy { padding-top:20px; }
.ex-card-copy h2 { font-size:34px; margin:12px 0 17px; }
.ex-card-copy p { font-size:1rem; color:var(--muted); margin-bottom:20px; }
.ex-duration { font-size:.875rem; color:var(--accent); }
.ex-free { padding:58px 0 68px; display:flex; flex-wrap:wrap; align-items:center; gap:25px; }
.ex-free h2,.ex-free>p { width:100%; }
.ex-free h2 { font-size:40px; }
.ex-free p { margin-bottom:5px; }
.ex-workbench { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; padding-top:25px; padding-bottom:65px; }
.ex-bench-copy .eyebrow { color:var(--accent); margin-bottom:18px; }
.ex-bench-copy p:not(.eyebrow) { margin:24px 0; }
.ex-twist { padding:32px; background:#e8e2d4; border:1px solid #c7c3b0; box-shadow:10px 10px 0 #d9d2be55; }
.ex-twist svg { display:block; width:100%; overflow:visible; }
.ex-twist label { font-size:1rem; display:flex; flex-wrap:wrap; justify-content:space-between; gap:14px; font-weight:600; }
.ex-twist output { color:#763e2c; }
.ex-twist input[type=range] { width:100%; height:48px; accent-color:var(--green); margin:12px 0; cursor:ew-resize; }
.ex-twist #twist-note { font-size:1rem; margin:0 0 22px; }
.ex-twist .ex-choice { margin:0; }
.ex-process { padding-block:60px; border-top:1px solid var(--rule); }
.ex-process-layout { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:70px; align-items:start; }
.ex-step { border-top:1px solid #bfc6b6; }
.ex-step:last-child { border-bottom:1px solid #bfc6b6; }
.ex-step summary { padding:22px 40px 22px 0; cursor:pointer; font:600 1.1875rem/1.5 var(--sans); position:relative; list-style:none; display:flex; gap:20px; align-items:center; }
.ex-step summary::-webkit-details-marker { display:none; }
.ex-step summary::after { content:'+'; position:absolute; right:9px; font-size:1.8rem; font-weight:400; }
.ex-step[open] summary::after { content:'−'; }
.ex-step summary>span { font:400 2.2rem/1 var(--serif); color:var(--accent); flex:0 0 40px; }
.ex-step>div { padding:0 0 32px; }
.ex-step>div>p { margin:0 0 24px; }
.ex-step .ex-photo img { max-height:400px; }
.ex-step>div>.text-link { margin-top:20px; }
.ex-process-aside { position:sticky; top:140px; padding-top:20px; }
.ex-big-number { font:400 3.2rem/1.3 var(--serif); color:var(--accent); }
.ex-process-aside p { margin:24px 0; font-size:1rem; }
.ex-puzzle { padding-block:65px; background:#eae5d8; }
.ex-puzzle>p { max-width:750px; margin:22px 0; }
.ex-puzzle>p.eyebrow { color:var(--accent); }
.ex-order-choices { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:30px 0; }
.ex-order-card { border:1px solid #abb6a3; background:var(--paper-light); padding:22px 14px; line-height:1.6; min-height:145px; }
.ex-order-card>span { display:block; font-size:40px; line-height:1.3; color:var(--accent); margin-bottom:15px; }
.ex-order-card:hover:not(:disabled) { border-color:var(--green); box-shadow:inset 0 0 0 1px var(--green); }
.ex-order-card:disabled { opacity:.6; }
#order-result { display:flex; flex-wrap:wrap; list-style:none; gap:12px; padding:0; }
#order-result>li { background:var(--green); color:var(--paper-light); padding:10px 16px; font-size:1rem; }
.ex-game-feedback { min-height:65px; margin:24px 0; font-weight:600; }
.ex-brand-room { padding-block:20px 65px; }
.ex-detective { padding:65px 0; background:var(--green-deep); color:var(--paper-light); --muted:#d8e2d0; }
.ex-detective .ex-section-title .eyebrow { color:var(--ex-gold); }
.ex-detective .ex-section-title p,.ex-detective .ex-credit { color:#dce5d5; }
.ex-detective-layout { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:40px; align-items:center; }
.ex-inspect-image { position:relative; }
.ex-inspect-image img { display:block; width:100%; }
.ex-pins button { position:absolute; left:var(--x); top:var(--y); transform:translate(-50%,-50%); width:46px; height:46px; background:#efe4bd; color:#183f35; border:3px solid #fff; border-radius:50%; box-shadow:0 0 0 7px #fff3; font-weight:800; }
.ex-pins button[aria-expanded=true] { background:#c06642; color:#fff; }
.ex-clues details { padding:15px 0; border-bottom:1px solid #769382; }
.ex-clues summary { font-size:1.0625rem; line-height:1.65; cursor:pointer; font-weight:650; }
.ex-clues details p { font-size:1rem; color:#dce5d5; margin:20px 0; }
.ex-clues>.text-link { color:#efe4bd; margin-top:25px; }
.ex-adverts { padding-block:65px 0; }
.ex-advert-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:48px 30px; }
.ex-advert-grid img { height:290px; object-fit:contain; }
.ex-advert-grid h3 { margin:24px 0 16px; }
.ex-advert-grid p { font-size:1rem; color:var(--muted); }
.ex-era-room { padding-block:20px 70px; }
.ex-era { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.ex-era-year { font:400 clamp(3.4rem,7vw,6rem)/1.12 var(--serif); color:var(--accent); display:block; margin-bottom:20px; letter-spacing:-.04em; }
.ex-era h2 { font-size:clamp(2.2rem,3.6vw,3.6rem); }
.ex-era p { margin:24px 0; }
.ex-jobs,.ex-perspectives,.ex-audiovisual { padding-top:70px; padding-bottom:60px; }
.ex-note-grid,.ex-perspective-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:35px; margin:35px 0; }
.ex-note-grid>article,.ex-perspective-grid>article { border-top:1px solid #a8b3a0; padding-top:23px; }
.ex-note-grid span { font:400 3rem/1 var(--serif); color:var(--accent); }
.ex-note-grid h3,.ex-perspective-grid h3 { margin:20px 0; }
.ex-note-grid p,.ex-perspective-grid p { font-size:1rem; color:var(--muted); margin-bottom:20px; }
.ex-audiovisual { background:#e9e4d7; }
.ex-audiovisual>p { max-width:900px; margin-block:24px; }
.ex-audiovisual .ex-note { margin:20px 0 0; }
.ex-atlas { display:grid; grid-template-columns:.85fr 1.15fr; gap:50px; align-items:start; padding-block:25px 65px; }
.ex-atlas-geography { position:sticky; top:140px; background:#e8e4d8; padding:20px; }
.ex-atlas-map { width:100%; height:auto; }
.ex-map-land { fill:#ded7c1; stroke:#b2b99d; stroke-width:1.3; }
.ex-map-marker circle { fill:var(--accent); stroke:#f4f1e9; stroke-width:4; }
.ex-map-marker text { font:600 18px/1.5 var(--sans); fill:var(--green); }
.ex-map-marker[aria-current=true] circle { fill:var(--green); stroke:#c9ae69; }
.ex-map-marker:focus { outline:none; }
.ex-map-marker:focus circle { stroke:#193f36; stroke-width:7; }
.ex-map-outside { font-size:1rem; margin-top:20px; }
.ex-atlas h2 { font-size:clamp(2rem,3.3vw,3.4rem); margin:18px 0; }
.ex-atlas article>p:not(.eyebrow) { margin:22px 0; }
.ex-atlas .ex-photo img { max-height:390px; }
.ex-atlas-source { margin-top:20px; }
.ex-rouval { padding-block:55px; background:#eae6da; }
.ex-rouval>p { max-width:940px; margin:22px 0; }
.ex-duo { display:grid; grid-template-columns:1fr 1fr; gap:35px; margin-top:35px; }
.ex-duo .ex-photo img { height:450px; width:100%; object-fit:contain; }
.ex-world { padding-block:20px 60px; }
.ex-world .ex-era-year { font-size:clamp(3rem,6vw,5.5rem); }
.ex-families { padding-block:70px 25px; }
.ex-families>p { max-width:930px; margin:24px 0; }
.ex-war-story { padding-bottom:60px; }
.ex-war-story>article { max-width:880px; margin:40px auto; }
.ex-war-story>article>p { margin:25px 0; }
.ex-war-frieze { margin:55px calc(-1 * clamp(24px,5vw,88px)); }
.ex-war-frieze .ex-photo>button { height:clamp(300px,60vh,650px); }
.ex-war-frieze img { height:100%; width:100%; object-fit:cover; }
.ex-war-frieze figcaption { padding:0 24px; }
.ex-war-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; margin:35px 0 65px; }
.ex-war-gallery img { height:270px; object-fit:cover; }
.ex-quiz { padding-bottom:70px; scroll-margin-top:135px; }
.ex-quiz-themes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.ex-quiz-themes button { display:flex; flex-direction:column; align-items:flex-start; text-align:left; background:var(--green); color:var(--paper-light); padding:30px; border:2px solid var(--green); transition:transform .25s; }
.ex-quiz-themes button:nth-child(2) { background:#ece3cd; color:var(--green-deep); border-color:#cbb78b; }
.ex-quiz-themes button:nth-child(3) { background:#9d5038; color:#fff; border-color:#823f2b; }
.ex-quiz-themes button:hover { transform:translateY(-6px); }
.ex-quiz-themes button>span { font:400 64px/1.2 var(--serif); color:#f1e1af; margin-bottom:30px; }
.ex-quiz-themes button:nth-child(2)>span { color:var(--accent); }
.ex-quiz-themes strong { font:500 2.1rem/1.1 var(--serif); }
.ex-quiz-themes small { font-size:1rem; line-height:1.8; display:block; margin:18px 0 30px; }
.ex-quiz-themes b { font-size:1rem; margin-top:auto; border-top:1px solid currentColor; padding-top:20px; width:100%; }
.ex-quiz-rules { font-size:1rem; max-width:850px; color:var(--muted); margin:28px 0; }
#quiz-play { background:#fbf9f3; padding:clamp(20px,4vw,48px); border:1px solid #c6ceba; scroll-margin-top:130px; }
.ex-quiz-top { display:flex; align-items:center; flex-wrap:wrap; gap:12px 25px; font-size:1rem; }
.ex-quiz-top>button { margin-left:auto; text-decoration:underline; text-underline-offset:4px; min-height:44px; }
#quiz-progress { display:block; width:100%; height:8px; border:0; margin:20px 0 35px; accent-color:var(--green); }
#quiz-progress::-webkit-progress-bar { background:#e4e5d6; }
#quiz-progress::-webkit-progress-value { background:var(--green); }
.ex-question-layout { display:grid; grid-template-columns:1fr; gap:35px; }
.ex-question-with-image { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); align-items:start; }
#quiz-visual img { width:100%; height:360px; object-fit:contain; background:#e8e3d6; }
#quiz-visual figcaption { font-size:.875rem; line-height:1.8; color:var(--muted); margin-top:12px; }
#quiz-question { font-size:clamp(2rem,3.3vw,3rem); margin:12px 0 25px; outline-offset:10px; }
#quiz-answers { display:grid; gap:12px; }
#quiz-answers>button { display:flex; flex-wrap:wrap; align-items:center; gap:10px 18px; background:#f2efe5; border:1px solid #aab6a2; padding:14px 18px; text-align:left; min-height:65px; line-height:1.65; color:#233c33; }
#quiz-answers>button>span { display:grid; place-items:center; width:30px; height:30px; border:1px solid #a9b39d; border-radius:50%; flex-shrink:0; }
#quiz-answers>button:hover:not(:disabled) { background:#e4e6d4; border-color:var(--green); }
#quiz-answers>button:disabled { opacity:1; cursor:default; }
#quiz-answers>button>b { display:block; flex-basis:100%; font-size:.875rem; padding-left:48px; }
#quiz-answers>.ex-correct { background:#dce7d4; border:2px solid #315d43; }
#quiz-answers>.ex-incorrect { background:#f1dfd6; border:2px solid #a24d35; }
#quiz-feedback { margin:28px 0; border-left:3px solid var(--accent); padding:12px 0 12px 23px; }
#quiz-feedback h3 { font-size:1.9rem; margin-bottom:15px; }
#quiz-feedback p { font-size:1rem; margin-bottom:18px; }
#quiz-next { margin-top:24px; }
#quiz-end { text-align:center; background:var(--green); color:var(--paper-light); padding:clamp(26px,4vw,60px); --muted:#d8e2d0; }
.ex-score-seal { width:150px; height:150px; margin:0 auto 30px; border:1px solid #dace9b; border-radius:50%; display:flex; flex-direction:column; justify-content:center; color:var(--ex-gold); box-shadow:0 0 0 8px #dace9b22; animation:ex-score-arrive .6s ease-out; }
.ex-score-seal>span { font:500 80px/.9 var(--serif); }
.ex-score-seal small { font-size:1rem; margin-top:10px; }
#quiz-end h2 { margin:22px 0; }
#quiz-end>p:not(.eyebrow) { max-width:750px; margin:20px auto 35px; color:#e0e7d8; }
#quiz-end .ex-choice { justify-content:center; }
#quiz-end .button { border-color:#dace9b; color:#f4f1e9; }
#quiz-end .button.primary { background:#e7d5a7; color:#173c32; }
#quiz-end .text-link { color:#e7d5a7; }
.ex-review { text-align:left; border-block:1px solid #678b76; padding:20px 0; margin:30px 0; }
.ex-review summary { font-size:1rem; cursor:pointer; }
.ex-review ol { padding-left:26px; }
.ex-review li { padding:20px 0; border-bottom:1px solid #678b76; }
.ex-review li h3 { font-size:1.6rem; margin-bottom:16px; }
.ex-review li p,.ex-review li a { font-size:1rem; line-height:1.8; color:#e0e7d8; margin:12px 0; }
.ex-review li a { color:#e7d5a7; }
.ex-review .ex-review-correct { color:#e9dca9; }
.ex-nojs-question { border-top:1px solid var(--rule); padding:20px 0; }
.ex-nojs-question p { margin:18px 0; }
.ex-source-guide { max-width:1080px; padding-bottom:60px; }
.ex-source-guide section { margin:35px 0 60px; }
.ex-source-guide h2 { font-size:clamp(2.2rem,3.5vw,3rem); }
.ex-source-guide ul { padding:0; list-style:none; }
.ex-source-guide li { padding:22px 0; border-bottom:1px solid var(--rule); }
.ex-source-guide li>a { font-weight:650; }
.ex-source-guide li>p { font-size:1rem; color:var(--muted); margin-top:14px; }
.ex-source-guide section>p { margin:24px 0; }
@keyframes ex-score-arrive { from {transform:scale(.85) rotate(-6deg);opacity:.3;} to {transform:scale(1) rotate(0);opacity:1;} }
@media (min-width:1450px) { .ex-home { gap:40px; } }
@media (max-width:1050px) {
 .ex-card-grid,.ex-advert-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .ex-home { grid-template-columns:1fr 1fr; }
 .ex-home>div { grid-column:1/-1; }
 .ex-home>div>p:not(.eyebrow) { max-width:650px; }
 .ex-workbench { gap:30px; }
 .ex-atlas { gap:25px; }
 .ex-question-with-image { grid-template-columns:1fr; }
 #quiz-visual img { height:280px; }
}
@media (max-width:760px) {
 .ex-split,.ex-era,.ex-workbench,.ex-detective-layout,.ex-atlas { grid-template-columns:1fr; gap:32px; }
 .ex-heading .ex-lead { font-size:1.125rem; }
 .ex-process-layout { grid-template-columns:1fr; gap:30px; }
 .ex-process-aside { position:static; background:#e8e4d8; padding:24px; }
 .ex-order-choices { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .ex-atlas-geography { position:static; max-width:520px; width:100%; margin:auto; }
 .ex-atlas article>p { margin:20px 0; }
 .ex-note-grid,.ex-perspective-grid { grid-template-columns:1fr; gap:25px; }
 .ex-note-grid h3 { margin-top:12px; }
 .ex-quiz-themes { grid-template-columns:1fr; }
 .ex-quiz-themes button { padding:25px; }
 .ex-quiz-themes button>span { font-size:46px; margin-bottom:10px; }
 .ex-quiz-themes small { margin:14px 0 20px; }
 .ex-quiz-top>button { margin-left:0; width:100%; text-align:left; padding:0; }
 .ex-duo { gap:24px; }
 .ex-duo .ex-photo img { height:300px; }
 .ex-war-gallery { grid-template-columns:1fr; }
 .ex-war-gallery img { height:auto; max-height:450px; object-fit:contain; }
 .ex-dark { padding-block:55px; }
 .ex-detective { padding-block:55px; }
 .ex-pins button { width:44px; height:44px; }
 .ex-step summary { font-size:1.0625rem; }
 #quiz-feedback { padding-left:18px; }
}
@media (max-width:520px) {
 .ex-home { grid-template-columns:1fr; gap:24px; padding-block:50px; }
 .ex-home>div { grid-column:auto; }
 .ex-home>a { padding:26px; }
 .ex-card-grid,.ex-advert-grid,.ex-duo { grid-template-columns:1fr; }
 .ex-card-image img { height:260px; }
 .ex-card-copy h2 { font-size:35px; }
 .ex-twist { padding:24px 18px; }
 .ex-choice { gap:8px; }
 .ex-choice button,.ex-choice>a { padding:10px 12px; }
 .ex-duration-filter>span { width:100%; }
 .ex-game-feedback { min-height:105px; }
 .ex-atlas-map { margin-block:4px; }
 .ex-map-marker text { font-size:20px; }
 .ex-fact { padding:24px 20px; }
 .ex-next { padding-block:35px; }
 .ex-inspect-image { margin:0 -6px; }
 .ex-question-layout { gap:25px; }
 #quiz-answers>button { padding:12px 13px; gap:8px 12px; }
 #quiz-answers>button>b { padding-left:42px; }
 #quiz-visual img { height:240px; }
 .ex-quiz { padding-left:14px; padding-right:14px; }
 .ex-review ol { padding-left:20px; }
}
@media (prefers-reduced-motion:reduce) { .explore *,.ex-home * { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
@media print { .ex-needs-js,.ex-next,.ex-home,.ex-choice,.ex-pins { display:none!important; } .explore [data-panel][hidden] { display:block!important; } .explore { color:#000; } .ex-dark,#quiz-end { background:#fff; color:#000; } .ex-dark p,#quiz-end p { color:#000; } .ex-atlas-geography,.ex-process-aside { position:static; } .ex-split,.ex-era,.ex-atlas { display:block; } }
/* Les premières actions apparaissent plus tôt, tout en gardant les images au premier plan. */
.explore .ex-heading { padding-top:42px; padding-bottom:32px; }
.ex-heading .breadcrumb { margin:0 0 24px; }
.ex-heading .eyebrow { margin:0 0 18px; }
.ex-heading .ex-lead { margin-top:22px; }
.ex-heading::after { margin-top:27px; }
.ex-heading:has(.ex-heading-art) { display:grid; grid-template-columns:1.2fr 1fr; column-gap:55px; align-items:center; }
.ex-heading:has(.ex-heading-art)>:not(.ex-heading-art) { grid-column:1; }
.ex-heading .ex-heading-art { grid-column:2; grid-row:2 / span 3; transform:rotate(2deg); }
.ex-heading .ex-heading-art button { border:10px solid #e5dfce; box-shadow:0 15px 35px #193f361a; }
.ex-heading .ex-heading-art figcaption { font-size:.8125rem; }
.ex-heading:has(.ex-heading-art) h1 { font-size:clamp(3.3rem,6vw,6rem); }
.ex-panorama-room { background:var(--green-deep); color:var(--paper-light); padding-top:60px; padding-bottom:50px; --muted:#d8e2d0; }
.ex-panorama-room>.section-wrap>p:not(.eyebrow) { max-width:900px; color:#e0e7d8; margin:25px 0 35px; }
.ex-panorama-room .eyebrow { color:var(--ex-gold); margin-bottom:20px; }
.ex-panorama-window { height:clamp(300px,54vw,620px); overflow:hidden; position:relative; border-block:1px solid #6f8b77; }
.ex-panorama-window>img { height:100%; width:100%; object-fit:cover; object-position:50% 44%; transform:scale(1.32); transform-origin:50% 44%; filter:sepia(.12); }
.ex-panorama-date { position:absolute; bottom:25px; left:clamp(24px,5vw,88px); color:#f4f1e9; background:#153c32e6; padding:8px 16px; letter-spacing:.15em; font-size:.875rem; }
.ex-panorama-control { display:grid; grid-template-columns:230px 1fr; align-items:center; gap:30px; padding-block:25px; }
.ex-panorama-control label { display:flex; justify-content:space-between; font-size:1rem; }
.ex-panorama-control input { width:100%; height:44px; accent-color:#ddcb94; cursor:ew-resize; }
.ex-panorama figcaption .ex-credit { color:#d8e2d0; margin:8px 0 22px; }
#quiz-play,.ex-quiz { scroll-margin-top:16px; }
@media(max-width:760px) {
 .ex-heading:has(.ex-heading-art) { grid-template-columns:1fr; }
 .ex-heading .ex-heading-art { grid-column:1; grid-row:auto; max-width:540px; margin-top:35px; transform:none; }
 .ex-panorama-control { grid-template-columns:1fr; gap:6px; }
 .ex-panorama-control label { max-width:350px; }
 .ex-panorama-window>img { transform:scale(1.45); }
}
@media print { .ex-panorama-window { height:auto; } .ex-panorama-window>img { transform:none; } .ex-panorama-room { background:#fff; color:#000; } }
.ex-family-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.ex-family-grid .ex-photo img { height:330px; object-fit:contain; }
.ex-family-grid h2 { font-size:36px; margin:25px 0 18px; }
.ex-family-grid article>p { font-size:1rem; color:var(--muted); }
.ex-family-links { display:flex; flex-direction:column; gap:15px; margin-top:22px; font-size:1rem; }
.ex-families-hub { padding-bottom:65px; }
.ex-families-hub>p { margin-bottom:20px; }
.ex-native-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:38px 28px; }
.gallery-grid:has(.ex-native-gallery) { columns:auto; }
.ex-native-picture { min-width:0; margin:0; padding-bottom:25px; border-bottom:1px solid #bdc6b6; }
.ex-native-picture>a { display:block; position:relative; background:#e8e4d8; padding:12px; }
.ex-native-picture img { width:100%; height:300px; object-fit:contain; }
.ex-native-picture h2 { font-family:var(--serif); font-size:27px; line-height:1.2; margin:18px 0; overflow-wrap:anywhere; }
.ex-native-picture figcaption>p { font-size:.875rem; color:#51604f; line-height:1.8; margin-bottom:15px; }
.ex-native-versions { font-size:.875rem; margin:14px 0; }
.ex-native-versions summary { cursor:pointer; line-height:1.7; }
.ex-native-versions ul { padding-left:18px; }
.ex-native-versions li { margin:10px 0; overflow-wrap:anywhere; }
.ex-native-versions a { text-decoration:underline; text-underline-offset:4px; }
.ex-native-pagination { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:20px; padding:25px 0; margin:20px 0 38px; border-block:1px solid var(--rule); font-size:1rem; }
.ex-native-pagination a { padding:10px 0; text-decoration:underline; text-underline-offset:5px; }
.ex-native-collection { padding-bottom:65px; }
.ex-alphabetical { padding-bottom:60px; }
.ex-letter-nav { display:flex; flex-wrap:wrap; gap:8px; padding:15px 0; margin-bottom:25px; }
.ex-letter-nav a { display:grid; place-items:center; width:44px; height:44px; border:1px solid #a8b49f; text-decoration:none!important; }
.ex-letter-nav a:hover { background:var(--green); color:var(--paper); }
.ex-alphabetical section { margin:30px 0; padding-top:25px; border-top:1px solid var(--rule); scroll-margin-top:24px; }
.ex-alphabetical section>h2 { color:var(--accent); }
.ex-alphabetical ul { list-style:none; padding:0; columns:2; column-gap:50px; }
.ex-alphabetical li { break-inside:avoid; padding:10px 0 18px; }
.ex-alphabetical li>a { font-size:1.0625rem; }
.ex-alphabetical li>span { display:block; font-size:.875rem; color:var(--muted); line-height:1.8; margin-top:7px; }
.ex-complete-index { margin:20px 0; font-size:1rem; }
.ex-complete-index a { text-decoration:underline; text-underline-offset:5px; }
@media(max-width:1000px) { .ex-family-grid { grid-template-columns:1fr; } .ex-family-grid .ex-photo { max-width:480px; } .ex-native-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .ex-native-gallery { grid-template-columns:1fr; gap:30px; } .ex-native-picture img { height:300px; } .ex-alphabetical ul { columns:1; } .ex-native-pagination { align-items:flex-start; } }
@media(max-width:800px) { .ex-war-frieze { margin-inline:0; } }
.explore [data-panel] { scroll-margin-top:12px; }
