/* Site identity. Layout, navigation, exchange and responsive components are shared. */
:root[data-family="francsuisse"] { --paper:#f6f6f3; --ink:#1d252a; --muted:#646a6b; --line:#d7dcdb; --deep:#1b252b; --accent:#de302d; --red:#bb2424; }
[data-family="francsuisse"] .hero { background:linear-gradient(115deg,#173342,var(--deep)); color:#fff; }
[data-family="francsuisse"] .hero.hero-home { min-height:0; padding-block:56px; grid-template-columns:minmax(0,1.3fr) minmax(230px,.7fr); gap:48px; }
[data-family="francsuisse"] .hero p { color:#e1e8ec; max-width:54ch; }
[data-family="francsuisse"] .hero .eyebrow { color:#ffb8b5; }
[data-family="francsuisse"] .hero h1 { font-size:clamp(2.4rem,4.1vw,4.2rem); font-weight:600; line-height:1.1; max-width:18ch; letter-spacing:-1px; color:#fff; }
[data-family="francsuisse"] .hero-link { color:#fff; border-color:#ff8c86; }
[data-family="francsuisse"] .hero-link:hover { color:#ffd0cd; }
[data-family="francsuisse"] .hero-small { color:#d1dce2; }
[data-family="francsuisse"] .hero-banknotes { display:flex; flex-direction:column; align-items:center; padding:0; gap:14px; background:transparent; border-radius:0; }
[data-family="francsuisse"] .hero-banknotes img { transform:none; object-fit:contain; width:auto; max-width:100%; height:auto; border-radius:50%; filter:none; }
[data-family="francsuisse"] :is(.exchange-page,.exchange-promo-dialog) { --ex-navy:var(--deep); --ex-navy-soft:var(--deep); --ex-gold:var(--accent); --ex-gold-dark:var(--red); --ex-gold-soft:var(--paper); }
[data-family="francsuisse"] :is(h1,h2,h3) {font-family:"Helvetica Neue",Arial,sans-serif;font-weight:600;}
[data-family="francsuisse"] .hero-banknotes img {max-height:280px;}
[data-family="francsuisse"] .hero-image-credit { color:#d1dce2; margin:0; max-width:34ch; line-height:1.6; }
[data-family="francsuisse"] .story .banknote img {width:auto;max-width:100%;margin:auto;padding:0;}
[data-family="francsuisse"] .documentary-flip img {aspect-ratio:auto;max-height:430px;width:auto;max-width:100%;padding:0;}

[data-family="francsuisse"] .story .document.modern img {width:auto;max-width:100%;padding:0;margin:20px auto;}
@media print {[data-family="francsuisse"] .story :is(.document.modern,.module-gallery){display:none;}}

/* Les repères résument le récit avant les sources, sans interrompre l’accueil. */
[data-family="francsuisse"] .story>.intro { font:400 20px/1.8 "DM Sans",Arial,sans-serif; }
[data-family="francsuisse"] .chf-chronology .documentary-facts { display:grid; grid-template-columns:minmax(0,1fr); gap:0; padding:0; border:0; }
[data-family="francsuisse"] .chf-chronology .documentary-facts>div { display:grid; grid-template-columns:72px minmax(0,1fr); gap:18px; align-items:baseline; padding:14px 0; border-bottom:1px solid var(--line); }
[data-family="francsuisse"] .chf-chronology dt { font:600 22px/1.4 "Helvetica Neue",Arial,sans-serif; color:var(--red); letter-spacing:0; }
[data-family="francsuisse"] .chf-chronology dd { margin:0; font-size:16px; font-weight:500; line-height:1.6; }
@media(max-width:740px) {
 [data-family="francsuisse"] .hero.hero-home { grid-template-columns:minmax(0,1fr); padding:34px 24px 38px; gap:24px; }
 [data-family="francsuisse"] .hero h1 { font-size:clamp(2rem,8vw,2.7rem); }
 [data-family="francsuisse"] .hero p { font-size:15px; line-height:1.75; }
 [data-family="francsuisse"] .hero-banknotes { width:100%; margin:0; }
 [data-family="francsuisse"] .hero-banknotes img { max-height:190px; }
 [data-family="francsuisse"] .hero-image-credit { font-size:10px; }
 [data-family="francsuisse"] .story>.intro { font-size:18px; }
 [data-family="francsuisse"] .chf-chronology .documentary-facts>div { grid-template-columns:60px minmax(0,1fr); gap:14px; }
}
