/* legacy-bridge.css — reskins the legacy PHP pages of cartes-2-france.com (V2 design system .c2f-*, 2019 .site-container
   pages, 2014 pages) to the Territoires chrome. Loaded after the legacy stylesheets, from the header shell. */
body.c2f-root,body.ct-php,body.ct-legacy-body{
  --c2f-contrast:var(--ct-ink-2); --c2f-accent:var(--ct-teal); --c2f-accent-700:var(--ct-teal-2); --c2f-base:var(--ct-bg); --c2f-base-2:var(--ct-paper); --c2f-base-3:var(--ct-card);
  --c2f-header-bg:var(--ct-teal); --c2f-header-line:var(--ct-teal); --c2f-menu-active:#fff; --c2f-header-border:var(--ct-teal-2);
  --c2f-h2:var(--ct-ink); --c2f-h3:var(--ct-ink-2); --c2f-muted:var(--ct-muted); --c2f-border:var(--ct-line);
  --c2f-font:var(--ct-serif); --c2f-fs-base:17px; --c2f-lh:1.6; --c2f-container:1317px; --c2f-container-wide:1317px; --c2f-radius:6px; --c2f-radius-sm:6px;
  --c2f-shadow:0 1px 2px rgba(11,16,20,.04),0 10px 30px -18px rgba(11,16,20,.18); --c2f-shadow-lg:0 10px 30px -18px rgba(11,16,20,.22);
}
body.c2f-root,body.ct-legacy-body,html.ct-legacy{background:var(--ct-bg)!important;background-image:none!important;font-family:var(--ct-serif);color:var(--ct-ink-2);-webkit-font-smoothing:antialiased;margin:0}
body.c2f-root .c2f-site{max-width:none;background:transparent;box-shadow:none}
body.c2f-root .c2f-main,body.c2f-root main.c2f-main{max-width:var(--ct-w);margin:0 auto;padding:12px var(--ct-gut) 48px;background:transparent;box-shadow:none}
body.c2f-root .c2f-header-wrap,body.c2f-root .c2f-header{display:none}
/* headings: Playfair for h1/h2, Lora for the rest */
body.c2f-root h1,body.c2f-root .c2f-hero h1,.ct-legacy h1{font-family:var(--ct-display)!important;font-weight:600!important;letter-spacing:-.02em!important;line-height:1.06!important;color:var(--ct-ink)!important;font-size:2.5rem!important}
body.c2f-root h2,.ct-legacy h2{font-family:var(--ct-display)!important;font-weight:500!important;letter-spacing:-.015em!important;color:var(--ct-ink)!important}
body.c2f-root h3,body.c2f-root h4,.ct-legacy h3,.ct-legacy h4{font-family:var(--ct-serif);font-weight:600;color:var(--ct-ink-2)}
body.c2f-root a,.ct-legacy a{color:var(--ct-teal)}
body.c2f-root a:hover,.ct-legacy a:hover{color:var(--ct-teal-2);text-decoration:underline}
body.c2f-root .c2f-eyebrow,.ct-legacy .c2f-eyebrow{color:var(--ct-teal);font-family:var(--ct-sans);font-size:10.5px;letter-spacing:.2em;font-weight:600;text-transform:uppercase}
/* breadcrumb → quiet micro line */
body.c2f-root .c2f-breadcrumb,body.c2f-root .c2f-breadcrumb a,body.c2f-root .c2f-breadcrumb li,body.c2f-root .c2f-breadcrumb span{font-family:var(--ct-sans)!important;font-size:11px!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:var(--ct-muted)!important;font-weight:500;background:transparent!important;border:0!important}
body.c2f-root .c2f-breadcrumb{padding:20px 0 4px!important;margin:0!important}
body.c2f-root .c2f-breadcrumb a:hover{color:var(--ct-teal)!important;text-decoration:none}
/* share row → small outlined pills */
body.c2f-root .c2f-social-share{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 18px;padding:0;background:transparent;border:0}
body.c2f-root .c2f-social-share a{background:transparent!important;color:var(--ct-ink-2)!important;border:1px solid var(--ct-line-2)!important;border-radius:999px;padding:5px 11px;font-family:var(--ct-sans);font-size:11px;font-weight:500;letter-spacing:.04em;text-decoration:none}
body.c2f-root .c2f-social-share a:hover{border-color:var(--ct-teal)!important;color:var(--ct-teal)!important}
body.c2f-root .c2f-lang-switcher{display:flex;gap:8px;margin:0 0 14px}
/* cards, tabs, stats, tables */
body.c2f-root [class*="c2f-card"],body.c2f-root [class*="c2f-stat"],body.c2f-root [class*="c2f-panel"],body.c2f-root [class*="c2f-box"]{border-radius:6px;border-color:var(--ct-line);box-shadow:none}
body.c2f-root [class*="c2f-stat"] strong,body.c2f-root [class*="c2f-card"] strong{font-family:var(--ct-display);letter-spacing:-.01em;color:var(--ct-ink)}
body.c2f-root [class*="-hero"]:not(.ct-hero){background:transparent!important;border:0!important;box-shadow:none!important;padding-left:0!important;padding-right:0!important;border-radius:0!important}
body.c2f-root [class*="-hero"]::before,body.c2f-root [class*="-hero"]::after{display:none!important}
body.c2f-root table th{font-family:var(--ct-sans);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ct-muted);font-weight:500;background:transparent}
body.c2f-root table td{border-color:var(--ct-line)}
/* buttons / inputs */
body.c2f-root .c2f-btn,body.c2f-root a.c2f-btn,body.c2f-root button.c2f-btn,body.c2f-root .c2f-cta,body.c2f-root input[type="submit"],body.c2f-root .c2f-btn--primary{font-family:var(--ct-serif);font-weight:500;border-radius:999px;background:var(--ct-teal);color:#fff;border:0}
body.c2f-root .c2f-btn:hover,body.c2f-root a.c2f-btn:hover,body.c2f-root .c2f-cta:hover{background:var(--ct-teal-2);color:#fff;text-decoration:none}
body.c2f-root .c2f-pill,body.c2f-root a.c2f-pill{border-radius:999px;border-color:var(--ct-line-2);background:transparent;color:var(--ct-ink-2);font-family:var(--ct-sans);font-size:12px}
body.c2f-root .c2f-pill:hover,body.c2f-root a.c2f-pill:hover,body.c2f-root .c2f-pill--active{background:var(--ct-teal);color:#fff;border-color:var(--ct-teal)}
body.c2f-root input[type="text"],body.c2f-root input[type="search"],body.c2f-root select{font-family:var(--ct-serif);border:1px solid var(--ct-line-2);border-radius:999px;background:var(--ct-card);color:var(--ct-ink)}
/* the c2f-tabs / section-nav */
body.c2f-root .c2f-section-nav,body.c2f-root .c2f-tabs{background:var(--ct-bg);border-color:var(--ct-line);border-bottom-color:var(--ct-line-2);overflow-y:hidden}
body.c2f-root .c2f-section-nav a,body.c2f-root .c2f-tab{font-family:var(--ct-sans);font-size:12.5px;letter-spacing:.04em;border-radius:999px}
body.c2f-root .c2f-section-nav a.is-active,body.c2f-root .c2f-tab.is-active,body.c2f-root .c2f-tab[aria-selected="true"]{background:var(--ct-teal-2);color:#fff}
/* 2019 pages (.site-container) and 2014 pages: drop the fixed 1064px column, the old header slot and the coloured boxes */
.ct-legacy,.site-container.ct-legacy,.ct-legacy .site-pusher,.ct-legacy .site-content{width:auto!important;max-width:none!important;margin:0!important;padding:0!important;background:transparent!important;box-shadow:none!important;position:static!important;transform:none!important;overflow:visible!important}
.ct-legacy .container,.ct-legacy .site-content>.container{width:auto!important;max-width:var(--ct-w)!important;margin:0 auto!important;padding:16px var(--ct-gut) 48px!important;background:transparent!important;box-shadow:none!important}
.ct-legacy-2014{max-width:var(--ct-w);margin:0 auto;padding:16px var(--ct-gut) 48px;font-family:var(--ct-serif)}
.ct-legacy ._header,.ct-legacy #logo_f,.ct-legacy #header__icon,.ct-legacy .site-cache,.ct-legacy #menu,.ct-legacy #x_menu,.ct-legacy .boxshadow,.ct-legacy #menu_resp,.ct-legacy .gridheaderleft,.ct-legacy .fb-like,body #fb-root{display:none!important}
.ct-legacy .cadre_box{background:var(--ct-card)!important;border:1px solid var(--ct-line)!important;box-shadow:none!important;border-radius:6px}
.ct-legacy,.ct-legacy p,.ct-legacy li,.ct-legacy td{font-family:var(--ct-serif);font-size:16.5px;line-height:1.6;color:var(--ct-ink-2)}
.ct-legacy h1{font-size:2.4rem!important;margin:.3em 0 .5em}
.ct-legacy h2{font-size:1.7rem!important;margin:1.2em 0 .5em}
.ct-legacy h3{font-size:1.2rem;margin:1em 0 .4em}
.ct-legacy table{border-collapse:collapse;width:100%}
.ct-legacy table th,.ct-legacy table td{border-bottom:1px solid var(--ct-line);padding:8px 10px;text-align:left}
.ct-legacy table th{font-family:var(--ct-sans);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ct-muted);font-weight:500;background:transparent}
.ct-legacy img{max-width:100%;height:auto}
.ct-legacy .c2f-reuse-card{background:var(--ct-paper);border:1px solid var(--ct-line);border-radius:6px;padding:18px 20px;margin:28px 0}
.ct-legacy .c2f-reuse-card h3{margin-top:0}
.ct-legacy .c2f-copy-btn{background:var(--ct-teal);color:#fff;border:0;border-radius:999px;padding:6px 14px;font-family:var(--ct-serif)}
/* old two-column layout (content + right column of ads/selection) */
.ct-legacy #x_droite,.ct-legacy .x_droite,.ct-legacy #droite{float:none!important;width:auto!important;max-width:100%!important}
.ct-legacy .x_size_droite,.ct-legacy .x_size_pub_300_ss_cadre{width:auto!important;height:auto!important;max-width:300px}
@media (max-width:640px){.ct-legacy .container,.ct-legacy-2014{padding:12px var(--ct-gut) 40px!important}}
/* old copyright strip (x_footer.php / footer.php 2014) — the Territoires footer replaces it */
body.c2f-root #footer,body.ct-php #footer,.ct-legacy #footer,body #footer.gridheaderleft{display:none!important}
body.c2f-root .ct-navband .ct-menu>li>a,body .ct-navband .ct-menu>li>a{text-transform:none!important;letter-spacing:0!important}
/* legacy dark heroes (sport, collèges…) lose their gradient above → text back to ink, CTAs to teal pills, stat tiles to cards,
   and the hero's own breadcrumb goes (the header shell already prints one) */
body.c2f-root [class*="-hero"]:not(.ct-hero){color:var(--ct-ink-2)!important}
body.c2f-root [class*="-hero"]:not(.ct-hero) :is(h1,h2,h3,p,span,small,strong,em,li,div,nav):not([class*="__cta"]){color:inherit!important}
body.c2f-root [class*="-hero"]:not(.ct-hero) h1{color:var(--ct-ink)!important}
body.c2f-root [class*="-hero"]:not(.ct-hero) a:not([class*="__cta"]):not([class*="btn"]):not([class*="pill"]){color:var(--ct-teal)!important}
body.c2f-root [class*="-hero"]:not(.ct-hero) [class*="__cta"],body.c2f-root [class*="-hero"]:not(.ct-hero) [class*="__cta"]:hover{background:var(--ct-teal)!important;color:#fff!important;border-color:var(--ct-teal)!important;border-radius:999px}
body.c2f-root [class*="-hero"]:not(.ct-hero) [class*="-stat"]:not([class*="__"]),body.c2f-root [class*="-hero"]:not(.ct-hero) [class*="__insight"]{background:var(--ct-card)!important;border:1px solid var(--ct-line)!important;color:var(--ct-ink-2)!important;box-shadow:none!important;backdrop-filter:none!important}
body.c2f-root [class*="-hero"]:not(.ct-hero) :is([class*="-stat__num"],[class*="-stat-value"],[class*="-stat__value"]){color:var(--ct-ink)!important;font-family:var(--ct-display)}
body.c2f-root [class*="-hero"]:not(.ct-hero) :is([class*="-stat__lbl"],[class*="-stat-label"],[class*="-stat__label"],[class*="__cp"]){color:var(--ct-muted)!important}
body.c2f-root [class*="-hero"]:not(.ct-hero) nav[class*="-breadcrumb"]{display:none!important}
/* pills inside those heroes were dark/translucent for a blue background → light pills with ink text; the active one stays teal */
body.c2f-root [class*="-hero"]:not(.ct-hero) [class*="-pill"]:not([class*="pills"]):not([class*="--active"]):not([aria-selected="true"]){background:var(--ct-card)!important;color:var(--ct-ink-2)!important;border:1px solid var(--ct-line-2)!important;box-shadow:none!important;backdrop-filter:none!important;text-decoration:none}
body.c2f-root [class*="-hero"]:not(.ct-hero) [class*="-pill"]:not([class*="pills"]):hover{border-color:var(--ct-teal)!important;color:var(--ct-teal)!important}
body.c2f-root [class*="-hero"]:not(.ct-hero) :is([class*="-pill--active"],[class*="-pill"][aria-selected="true"]),body.c2f-root [class*="-hero"]:not(.ct-hero) :is([class*="-pill--active"],[class*="-pill"][aria-selected="true"]):hover{background:var(--ct-teal)!important;color:#fff!important;border:1px solid var(--ct-teal)!important}
body.c2f-root [class*="-hero"]:not(.ct-hero) [class*="pills"]{background:transparent!important;border:0!important}
/* old footer-nav component (plan-du-site.php, xx-iris.php include it directly) — the Territoires footer replaces it */
body.c2f-root .c2f-fnav,body.ct-php .c2f-fnav{display:none!important}
/* map placeholders carried a dark blue inline background (→ deep teal once remapped): neutral mist under the tiles */
body.c2f-root .leaflet-container,body.c2f-root .c2f-map-intro,body.ct-php .leaflet-container{background:var(--ct-mist)!important}
/* 2014 templates: no body class, a global content-box reset and their own copyright strip (#footer) after the Territoires footer */
.ct-header,.ct-header *,.ct-navband,.ct-navband *,.ct-footer,.ct-footer *,.ct-nav,.ct-nav *{box-sizing:border-box}
body:has(footer.ct-footer) #footer,body:has(footer.ct-footer) #footer.gridheaderleft{display:none!important}
footer.ct-footer,.ct-footer .ct-footer-links,.ct-footer .ct-colophon{clear:both;float:none}
