/* Identité « Court central » — générée par moteur/identite.py depuis moteur/identites/court_central/. Ne pas modifier ici. */
@font-face{font-family:"Barlow";src:url("/static/polices/barlow-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Barlow";src:url("/static/polices/barlow-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Barlow Condensed";src:url("/static/polices/barlow-condensed-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Barlow Condensed";src:url("/static/polices/barlow-condensed-800.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap}
:root{--fond:#f2f5ef;--fond-2:#ffffff;--encre:#10201b;--encre-2:#4b5b55;--trait:#d3ddd6;--trait-fort:#10201b;--accent:#0f4a3a;--accent-texte:#0f4a3a;--accent-doux:#e1e8df;--sur-accent:#f5f7f2;--bandeau:#0f4a3a;--sur-bandeau:#f5f7f2;--sur-bandeau-2:#c9d6cf;--vif:#d7e84a;--sur-vif:#10201b;--pied:#0f4a3a;--sur-pied:#c9d6cf;color-scheme:light}
@media (prefers-color-scheme:dark){:root{--fond:#0c1613;--fond-2:#13221d;--encre:#e6ede8;--encre-2:#a7b8b0;--trait:#24372f;--trait-fort:#e6ede8;--accent:#c4dd6a;--accent-texte:#c4dd6a;--accent-doux:#1d3a30;--sur-accent:#0c1613;--bandeau:#0f3a2e;--sur-bandeau:#f5f7f2;--sur-bandeau-2:#b9c9c1;--vif:#d7e84a;--sur-vif:#10201b;--pied:#08110e;--sur-pied:#a7b8b0;color-scheme:dark}}
/* Court central (S3b) — le court vu de haut : vert de court, lignes de craie de 3 px,
   jaune balle, chiffres de tableau d'affichage en Barlow Condensed. Aucun arrondi. */
:root {
  --police-texte: "Barlow", system-ui, sans-serif;
  --police-titres: "Barlow Condensed", "Arial Narrow", sans-serif;
  --graisse-titres: 800;
  --t-h1: clamp(2.75rem, 1.4rem + 5.6vw, 6rem);
  --t-h2: clamp(1.9rem, 1.5rem + 1.4vw, 2.75rem);
  --t-chiffre: clamp(3.25rem, 2rem + 4.4vw, 5.5rem);
  --filet: 3px;
}
h1, h2, .marque-nom { text-transform: uppercase; }
h1 { line-height: .92; letter-spacing: -.005em; }

.entete { background: var(--bandeau); color: var(--sur-bandeau); border-bottom: 3px solid var(--sur-bandeau); }
.marque-signe { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Ccircle cx='13' cy='13' r='11' fill='%23d7e84a'/%3E%3Cpath d='M5 6c5 3 5 11 0 14M21 6c-5 3-5 11 0 14' fill='none' stroke='%230f4a3a' stroke-width='1.8'/%3E%3C/svg%3E"); }
.marque-nom { font-size: 1.65rem; letter-spacing: .02em; }
.entete-nav a { font-family: var(--police-titres); font-weight: 700; font-size: 1.2rem; text-transform: uppercase; letter-spacing: .04em;
  text-decoration: none; border-bottom: 3px solid transparent; }
.entete-nav a:hover, .entete-nav a[aria-current] { border-bottom-color: var(--vif); }

/* L'ouverture : sur le vert, avec le plan du court en filigrane, fermée par une bande jaune.
   Filigrane à 12 % et non 16 % : à 16 %, le texte secondaire tombait à 4,40:1 sur un trait
   (mode clair), sous le seuil AA. couleurs.problemes_contraste le vérifie désormais (S5c). */
.ouverture { background: var(--bandeau) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 620 420' fill='none' stroke='%23f5f7f2' stroke-opacity='.12' stroke-width='4'%3E%3Crect x='10' y='10' width='600' height='400'/%3E%3Cpath d='M310 10v400M110 10v400M510 10v400M110 210h400'/%3E%3C/svg%3E") no-repeat right -5rem top 2.5rem / min(40rem, 60%) auto;
  color: var(--sur-bandeau); border-bottom: .6rem solid var(--vif); padding-block: 1.25rem 2.75rem; }
.ouverture a { color: var(--sur-bandeau); }
.fil, .maj, .accroche, .resume { color: var(--sur-bandeau-2); }
.titre { margin-top: 2.5rem; }
.maj { font-weight: 600; }
.titre-sous { color: var(--vif); }
.resume { font-family: var(--police-titres); font-weight: 700; font-size: 1.35rem; text-transform: uppercase; letter-spacing: .05em; }
.chiffres { border-top: 3px solid var(--sur-bandeau); margin-bottom: -2.75rem; }
.chiffres li { padding: 1.25rem 0 2.25rem; }
.chiffres li + li { border-left: 3px solid var(--sur-bandeau); padding-left: 1.75rem; }
.chiffres strong { color: var(--vif); }
.chiffres span { font-family: var(--police-titres); font-weight: 700; font-size: 1.15rem; text-transform: uppercase; letter-spacing: .08em; color: var(--sur-bandeau); }

.bloc-titre { border-bottom: 3px solid var(--trait-fort); padding-bottom: .6rem; line-height: 1; }
.classement .barre { height: 1.4rem; }
.classement .nb { font-family: var(--police-titres); font-size: 1.5rem; color: var(--accent-texte); }
.tuiles a { background: var(--fond-2); border-bottom: 3px solid var(--accent); }
.tuiles a:hover { background: var(--bandeau); color: var(--sur-bandeau); }
.tuiles a:hover .tuile-nb { color: var(--sur-bandeau-2); }
.tuile-code { font-size: 2rem; }
.lieu, .carte-lieu a { background: var(--fond-2); border-bottom: 3px solid var(--accent); }
.etiquette { font-family: var(--police-titres); font-size: .95rem; text-transform: uppercase; letter-spacing: .06em; color: var(--encre); }
.carte-bouton { font-family: var(--police-titres); font-size: 1.25rem; text-transform: uppercase; letter-spacing: .06em; }
.motif { border-top: 3px solid var(--accent); }
.motif h2 { font-size: 1.6rem; }
.texte h2 { border-bottom: 3px solid var(--trait-fort); padding-bottom: .5rem; }
.appel-lien { font-family: var(--police-titres); font-size: 1.35rem; text-transform: uppercase; letter-spacing: .04em; }

.pied { border-top: .6rem solid var(--vif); }

@media (max-width: 40rem) {
  .ouverture { background-size: 90% auto; background-position: right -40% top 6rem; }
  .chiffres { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .chiffres li + li { padding-left: .9rem; }
  .chiffres span { font-size: .9rem; letter-spacing: .04em; }
}
