.country-introduction{max-width:1120px;margin:18px 0 24px;color:#edf2ef}.country-timeline .country-introduction p{font:18px/1.65 system-ui;margin:12px 0;color:#edf2ef}.germany-country .country-introduction{margin-top:8px}.germany-transition{font:16px/1.35 system-ui}.germany-country .germany-reading,.germany-country .germany-legend{font-size:17px!important;line-height:1.55!important}.germany-label a{font-size:18px!important}.germany-label small{font-size:16px!important;line-height:1.4!important}.germany-label .germany-qualifier-fallback{font:16px/1.35 system-ui!important}.germany-country .germany-headline,.germany-life .germany-headline strong{font-size:18px!important}.germany-country .germany-qualifier{font:18px/1.35 system-ui!important}.germany-life .germany-dates{font-size:17px!important}.germany-tick{font-size:16px!important}.germany-life{height:86px;gap:4px;padding:6px 10px}.germany-relay{padding:5px 9px}.germany-relay .germany-headline strong{font-size:17px!important}.germany-label{padding:8px 10px}.germany-short-caption{white-space:normal;width:260px;font:17px/1.35 system-ui;color:#edf2ef;text-align:center}.germany-short-caption strong{display:block;color:#f2cf6e}.germany-short-caption span{display:block}.germany-date-notes li{font-size:17px!important;line-height:1.6}.germany-label small{margin-top:5px}.germany-transition{display:block}.germany-life .germany-transition{font-size:15px;line-height:1.3}.germany-node-name{font-weight:700}.germany-country .germany-controls button{font-size:17px}.germany-no-arrows{padding-right:10px!important}
.germany-open,.germany-uncertain{padding-right:10px}
.germany-country:fullscreen .country-introduction{display:none}

/* Country navigation and short chronological segments */
body .tableau-panel > .heading{width:100%;max-width:none!important;margin:0 auto 25px!important;text-align:center!important}
body main > a.back{display:inline-flex;max-width:none;margin:12px 0;padding:10px 16px;border:1px solid #f2cf6e;border-radius:5px;background:#edf1ee;color:#18292f;font:700 18px/1.3 system-ui;text-decoration:none}
body main > a.back:hover,body main > a.back:focus-visible{background:#fff1bd;outline:2px solid #f2cf6e}
.germany-short .germany-short-name{display:block;font:700 13px/1.25 system-ui;overflow-wrap:anywhere;text-align:center}
.germany-short{padding:5px 3px!important}
.germany-short-caption:before{content:'';position:absolute;left:var(--stem-left);bottom:100%;height:7px;border-left:2px solid #dbe4df}
.germany-uncertain.germany-short{border:2px dashed #e1e8e6}
.germany-date-notes a{text-underline-offset:3px}

.germany-hover-label{position:fixed;z-index:100000;width:300px;max-width:calc(100vw - 16px);padding:12px 15px;border:1px solid #f2cf6e;border-radius:6px;background:#edf1ee;color:#17262c;box-shadow:0 5px 18px #0009;font:17px/1.4 system-ui;pointer-events:none;text-align:center}
.germany-hover-label[hidden]{display:none}
.germany-hover-label strong,.germany-hover-label span{display:block}
.germany-hover-label strong{margin-bottom:5px}
.germany-short:focus-visible{outline:3px solid #f2cf6e;outline-offset:2px}

/* Pays : gabarit Allemagne plus compact, caractères conservés. */
.germany-country .germany-life{gap:2px;padding-top:4px;padding-bottom:4px}
.germany-country .germany-label{padding-top:6px;padding-bottom:6px}
.germany-country .germany-label small{margin-top:3px}

/* Noms conservés ; précisions compactes sur une même seconde ligne. */
.germany-country .germany-life .germany-headline{font-size:15px!important;line-height:1.3}
.germany-country .germany-life .germany-headline strong{font-size:18px!important;font-weight:700}
.germany-country .germany-life .germany-qualifier{font-size:15px!important;line-height:1.3}
.germany-country .germany-life .germany-phase-meta{font:14px/1.3 system-ui;max-width:100%}
.germany-country .germany-life .germany-dates{display:inline;font-size:14px!important;line-height:1.3}
.germany-country .germany-life .germany-transition{display:inline;font-size:13px!important;line-height:1.3}

.countries button,.countries button *{cursor:pointer!important}

.germany-label .germany-brand-name{color:#f2cf6e;font:700 18px/1.3 system-ui;text-decoration:none}
.germany-life:not(a){cursor:default}

.germany-phase-caption{position:absolute;color:#edf2ef;font:14px/1.4 system-ui;white-space:nowrap;z-index:1;padding-top:3px}.germany-phase-caption:before{content:"";position:absolute;left:var(--caption-stem,20px);top:-5px;height:7px;border-left:1px solid #a9c9de}

/* Un titre principal pour le pays sélectionné. */
body .country-timeline>.timeline-name{color:#f2cf6e!important;text-align:center!important;font:700 clamp(26px,3vw,36px)/1.3 Georgia,serif!important;margin:18px auto 24px!important;width:100%}.germany-country:fullscreen .germany-screen-title{color:#f2cf6e;text-align:center;margin:0 auto 24px}

.country-click-instruction{color:#f2cf6e;font:600 18px/1.5 system-ui;margin:16px 0}.country-timeline-section{position:absolute;left:0;width:100%;padding:6px 12px;background:#26383b;color:#f2cf6e;font:700 17px/1.3 system-ui;height:32px}.country-apport-point{position:absolute;width:9px;height:9px;transform:translateX(-50%);border-radius:50%;background:#ead078}.country-apport-node{position:absolute;padding:9px 12px;min-height:68px;border:1px solid #e6cc79;border-left:4px solid #e6cc79;border-radius:4px;background:#e5d8a9;color:#18343f;text-align:left;cursor:pointer;font:14px/1.35 system-ui}.country-apport-node strong{display:block;font-size:18px}.country-apport-node span{display:block;margin-top:4px}.country-apport-node:hover,.country-apport-node[aria-expanded=true]{background:#f4e5ae;outline:2px solid #e6cc79}.country-apport-node:focus-visible{outline:3px solid #f2cf6e;outline-offset:3px}.country-apport-detail{margin:18px 0;padding:20px;border:1px solid #e6cc79;border-radius:5px;background:#11191b}.country-apport-detail[hidden]{display:none}.country-apport-detail h3{color:#f2cf6e;font:700 23px/1.35 Georgia,serif;margin:0 90px 18px 0}.country-apport-body{display:grid;grid-template-columns:160px minmax(0,1fr);gap:24px;align-items:start}.country-apport-body figure{margin:0}.country-apport-body img{display:block;max-width:100%;max-height:220px;object-fit:contain;margin:auto}.country-apport-body figcaption{font:14px/1.45 system-ui;margin-top:10px}.country-apport-body p{font:18px/1.6 system-ui;margin:0 0 14px}.country-apport-detail a{color:#f2cf6e}.country-apport-more{display:inline-block;font:700 17px/1.5 system-ui;margin-bottom:12px}.country-apport-body .country-apport-sources{font-size:15px}.country-apport-close{float:right;padding:6px 12px;cursor:pointer}@media(max-width:650px){.country-apport-body{grid-template-columns:1fr}.country-apport-body figure{max-width:160px}.country-apport-detail h3{font-size:21px}}

.country-apport-node{text-decoration:none;display:block}

.germany-country .country-click-instruction{margin:18px 0 12px;padding:12px 18px;border:1px solid #bba35e;border-left:5px solid #f2cf6e;border-radius:4px;background:#26383b;color:#ffe296;font:700 20px/1.5 system-ui;text-align:center}

.country-timeline .country-introduction p,.germany-country .country-introduction p{font:400 21px/1.6 system-ui;color:#f2f4ef;margin:14px 0}@media(max-width:650px){.country-timeline .country-introduction p,.germany-country .country-introduction p{font-size:19px}}

.germany-country .country-apport-node{min-height:54px;padding:7px 10px;font:12px/1.3 system-ui}.germany-country .country-apport-node strong{font-size:16px;line-height:1.25}.germany-country .country-apport-node span{margin-top:4px}

.germany-country .country-apport-row .germany-brand-name{font-size:16px!important;line-height:1.3}.germany-country .country-apport-row .germany-label small{font-size:13px!important;line-height:1.35!important;margin-top:4px}

.country-opening{max-width:1120px;margin:6px auto 22px;text-align:center}.country-opening[hidden]{display:none}.country-opening h1{margin:8px 0 20px;color:#f2cf6e!important;font:700 clamp(28px,3vw,40px)/1.2 Georgia,serif}.country-opening .country-opening-copy{color:#edf2ef;text-align:left}.country-opening .country-opening-copy p{font:600 20px/1.6 system-ui;margin:12px 0}.country-opening .country-opening-prompt{margin:20px 0 0;color:#f2cf6e;font:700 18px/1.5 system-ui}@media(max-width:650px){.country-opening .country-opening-copy p{font-size:18px}}
