/* V11.2 — ergonomie grand public, typographie lisible, France en bref */
:root{--vt-warm:#f6f5f2;--vt-ink:#122238;--vt-blue:#1264ef;--vt-green:#14845b;--vt-orange:#c96d19}
body{font-size:16px;background:var(--vt-warm);color:var(--vt-ink)}
main{font-size:16px}
p{font-size:16px;line-height:1.65}
small{font-size:13px}
.section-kicker,.eyebrow{font-size:12px;letter-spacing:.1em}
.vt-nav a{font-size:15px!important}.vt-independent{font-size:13px!important}
.vt-sourcebar-inner{font-size:13px!important}.vt-sourcebar-inner small{font-size:12px!important}

/* Hero: quick cities should feel clickable immediately */
.vt-fullscreen-content>p{font-size:18px!important;line-height:1.55!important;max-width:760px}
.vt-fullscreen-search input{font-size:17px!important}.vt-fullscreen-search .search-submit{font-size:15px!important}
.vt-fullscreen-examples{margin-top:17px!important;font-size:13px!important;font-weight:800!important;letter-spacing:.04em;text-transform:uppercase;color:rgba(255,255,255,.72)!important}
.vt-quick-cities{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px;max-width:830px}
.vt-quick-cities a{display:inline-flex;align-items:center;justify-content:center;min-height:37px;padding:0 13px;border:1px solid rgba(255,255,255,.28);background:rgba(10,29,50,.40);backdrop-filter:blur(8px);color:#fff;border-radius:999px;text-decoration:none;font-size:14px;font-weight:750;transition:.15s ease}
.vt-quick-cities a:hover{background:#fff;color:#102544;transform:translateY(-1px)}
.vt-fullscreen-stats span{font-size:13px!important}.vt-fullscreen-stats strong{font-size:clamp(25px,2.5vw,38px)!important}

/* France immediately after the hero */
.france-now{width:min(1180px,calc(100% - 36px));margin:28px auto 8px;padding:28px;background:#fff;border:1px solid #e1e6eb;border-radius:24px;box-shadow:0 12px 34px rgba(16,37,68,.055)}
.france-now-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:20px}.france-now-head h2{font-size:clamp(32px,4vw,48px);line-height:1;letter-spacing:-.05em;margin:5px 0 8px}.france-now-head p{margin:0;color:#657389;max-width:760px}.france-now-head>a{font-size:14px;font-weight:850;color:#0f63ff;text-decoration:none;white-space:nowrap}
.france-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.france-kpi{position:relative;overflow:hidden;border:1px solid #e1e7ed;background:#fbfcfd;border-radius:18px;padding:18px;min-height:210px}.france-kpi:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#0f63ff}.france-kpi.down:before{background:#1aa66b}.france-kpi.up:before{background:#e47b2c}.france-kpi-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.france-kpi-top>span{font-size:15px;font-weight:850}.france-kpi-top em{font-style:normal;border-radius:999px;padding:6px 8px;font-size:12px;font-weight:850;background:#eef3f8;color:#5c6879}.france-kpi.down .france-kpi-top em{background:#eaf8f1;color:#13794f}.france-kpi.up .france-kpi-top em{background:#fff1e8;color:#a85a16}.france-kpi>strong{display:block;font-size:38px;letter-spacing:-.055em;margin-top:16px;line-height:1}.france-kpi>small{display:block;font-size:13px;color:#68778b;margin-top:6px}.fr-spark{width:100%;height:62px;margin-top:14px}.fr-spark polyline{fill:none;stroke:#1264ef;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.france-kpi.down .fr-spark polyline{stroke:#1aa66b}.france-kpi.up .fr-spark polyline{stroke:#e47b2c}.france-kpi-foot{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #e7ebef;margin-top:10px;padding-top:10px}.france-kpi-foot span{font-size:12px;color:#6f7c8d}.france-now-note{font-size:13px;line-height:1.5;color:#738093;background:#f5f7f9;border-radius:12px;padding:11px 13px;margin-top:14px}.france-now-empty{display:flex;flex-direction:column;gap:4px;background:#fff8e8;border:1px solid #f1dba3;border-radius:15px;padding:16px}.france-now-empty strong{font-size:16px}.france-now-empty span{font-size:14px;color:#755b22}

/* General front typography: kill the 8–10 px dashboard feel */
.v6-official-card p,.v6-cross-list p,.v9-national-card p,.v5-guide-grid p,.v6-reading-card p,.v5-source-card p,.v5-compare p{font-size:14px!important;line-height:1.58!important}
.v6-official-card li,.v6-checks li{font-size:14px!important;line-height:1.55!important}.v6-ministry-mark small,.v9-national-metrics small{font-size:12px!important}
.v5-section-head p,.section-lead{font-size:15px!important}.v5-section-head h2{font-size:clamp(29px,3vw,40px)!important}
.v5-guide-grid b,.v5-indicator-grid b,.v11-indicator-link b{font-size:16px!important}.v11-indicator-link p{font-size:14px!important;min-height:0!important}.v11-indicator-link strong{font-size:15px!important}.v11-indicator-link small{font-size:13px!important}
.v11-ranking-links a{font-size:13px!important;padding:10px 13px!important}.city-chip{font-size:14px!important;padding:11px 14px!important}.city-chip strong{font-size:14px!important}.city-chip span{font-size:12px!important}
.v5-city-body>strong{font-size:17px!important}.v5-city-body>span,.v5-city-metric small,.v5-city-unit{font-size:12px!important}.v5-city-metric b{font-size:25px!important}.trend{font-size:12px!important;padding:6px 8px!important}

/* City pages */
.city-meta span,.source-pill{font-size:13px!important}.kpi-name{font-size:14px!important}.kpi-unit,.kpi-bottom small{font-size:12px!important}.kpi-value{font-size:36px!important}.summary-card h2{font-size:25px!important}.trend-count span{font-size:13px!important}.data-card span{font-size:13px!important}.data-card small{font-size:12px!important}.insight strong{font-size:16px!important}.insight p{font-size:14px!important}.indicator-list a strong{font-size:15px!important}.indicator-list a small{font-size:12px!important}.method-note,.method-details p{font-size:14px!important;line-height:1.6!important}
.v7-context-grid p,.v7-benchmark-head p,.v7-signal-grid p{font-size:13px!important}.v7-context-grid small,.v7-profile-head small,.v7-profile-stats small,.v7-bench-row>span>small{font-size:11px!important}.v7-bench-row>span>strong{font-size:13px!important}.v7-bench-row b{font-size:14px!important}

@media(max-width:980px){.france-kpi-grid{grid-template-columns:1fr 1fr}.france-now{padding:22px}}
@media(max-width:700px){
  body,main{font-size:16px}.vt-fullscreen-content>p{font-size:16px!important}.vt-quick-cities{gap:6px}.vt-quick-cities a{font-size:13px;min-height:35px;padding:0 11px}.france-now{width:min(100% - 20px,1180px);margin-top:14px;padding:18px;border-radius:18px}.france-now-head{align-items:flex-start;flex-direction:column;gap:4px}.france-now-head h2{font-size:33px}.france-now-head p{font-size:15px}.france-now-head>a{display:none}.france-kpi-grid{grid-template-columns:1fr 1fr;gap:8px}.france-kpi{padding:14px;min-height:194px}.france-kpi-top{align-items:flex-start;flex-direction:column}.france-kpi>strong{font-size:30px}.france-kpi-foot{display:block}.france-kpi-foot span{display:block;margin-top:2px}.fr-spark{height:50px}.v6-context{grid-template-columns:1fr!important}.v5-city-grid{grid-template-columns:1fr 1fr!important}
}
@media(max-width:450px){.france-kpi-grid{grid-template-columns:1fr}.v5-city-grid{grid-template-columns:1fr!important}.vt-quick-cities a{font-size:12px}}
/* Remaining tiny UI text lifted to a comfortable floor */
.crumb{font-size:13px!important}.text-link{font-size:13px!important}.photo-caption{font-size:13px!important}.proof-strip span{font-size:12px!important}.data-topic p,.data-topic small{font-size:13px!important}.method-strip p,.method-points span{font-size:14px!important}.change-city>span{font-size:12px!important}.change-city .search-shell input{font-size:14px!important}.history-tab{font-size:13px!important}.history-panel-head span{font-size:13px!important}.chart-empty{font-size:14px!important}.indicator-group summary{font-size:15px!important}.indicator-group summary small{font-size:12px!important}.similar-grid span,.similar-grid small{font-size:12px!important}.method-details summary{font-size:15px!important}.metric-primary span,.metric-grid span{font-size:12px!important}.metric-primary small,.metric-grid small{font-size:12px!important}.history-details summary{font-size:14px!important}.history-head,.compare-head{font-size:12px!important}.history-row,.compare-row{font-size:13px!important}.info-card p,.method-note{font-size:14px!important}.compact-search input{font-size:14px!important}.compare-cities article span,.compare-cities article small{font-size:13px!important}.versus{font-size:11px!important}.v5-examples{font-size:13px!important}.v5-stats b{font-size:13px!important}.v5-stats small{font-size:12px!important}.v5-source-card h3{font-size:17px!important}.v5-source-card>a{font-size:13px!important}.v5-compare>div>span{font-size:12px!important}.v5-compare p{font-size:14px!important}.v5-compare .search-shell input{font-size:14px!important}.vt-footer-top nav a{font-size:13px!important}.vt-footer-bottom{font-size:12px!important}.v6-context p{font-size:14px!important}.v6-ministry-mark b{font-size:13px!important}.v6-ministry-mark small{font-size:11px!important}
.france-city-shortcuts{margin-top:16px;padding-top:15px;border-top:1px solid #e6ebef}.france-city-shortcuts>span{display:block;font-size:13px;font-weight:850;color:#5e6d80;margin-bottom:9px}.france-city-shortcuts>div{display:flex;flex-wrap:wrap;gap:8px}.france-city-shortcuts a{display:inline-flex;align-items:center;min-height:38px;padding:0 13px;border-radius:999px;background:#f3f7fc;border:1px solid #dce6f1;color:#15345c;text-decoration:none;font-size:14px;font-weight:800}.france-city-shortcuts a:hover{background:#0f63ff;color:#fff;border-color:#0f63ff}
/* Popular city block becomes data-first rather than photo-first */
.v5-city-photo{display:none!important}.v5-city-card{border-radius:16px!important}.v5-city-body{padding:16px!important}.v5-city-grid{grid-template-columns:repeat(5,1fr)!important}.v5-city-body>strong{font-size:18px!important}.v5-city-metric{margin-top:14px!important}
@media(max-width:900px){.v5-city-grid{grid-template-columns:repeat(3,1fr)!important}}@media(max-width:620px){.v5-city-grid{grid-template-columns:1fr 1fr!important}.france-city-shortcuts a{font-size:13px}}@media(max-width:430px){.v5-city-grid{grid-template-columns:1fr!important}}


/* V11.3 — résumé immédiat sur chaque fiche ville */
.city-now{margin-top:22px;margin-bottom:10px}
.city-now .france-now-head p{max-width:680px}
.city-now .france-kpi{min-height:220px}
.city-now .france-kpi-foot span:last-child{font-weight:750}
@media(max-width:560px){.city-now{margin-top:12px}.city-now .france-kpi{min-height:194px}}
