/*
Theme Name: CMS-WP Jardineries Cavac
Theme URI: https://www.jardineriescavac.fr
Author: Cavac
Author URI: https://www.coop-cavac.fr
Description: Thème enfant CMS-WP pour Jardineries Cavac — réseau des animaleries, jardineries et spécialistes de la motoculture (Gamm Vert, Agrivillage, Agriconseil). Identité visuelle, simplicité et accessibilité ; pages construites avec les sections du Template Builder du thème parent.
Version: 1.2.0
Template: cms-wp
Requires at least: 6.0
Requires PHP: 8.0
Text Domain: cms-wp-jc
*/

/* ── Jetons ─────────────────────────────────────────────────────── */
/* Couleurs du logo (vert Cavac, vert tendre) ; contrastes mesurés avec le blanc :
   vert 6,7 : 1 · rouge promo 5,6 : 1 · texte 12,3 : 1 · texte secondaire 8,4 : 1 */

:root {
	--jc-vert:        #01694e;
	--jc-vert-fonce:  #014b38;
	--jc-vert-clair:  #93c01f;	/* décoratif uniquement (contraste insuffisant pour du texte) */
	--jc-vert-pale:   #e9f2d2;
	--jc-vert-fond:   #f4f8ec;
	--jc-rouge:       #c62828;	/* promotions, alertes (#f44336 de l'ancien site : 3,7 : 1, trop clair) */
	--jc-rouge-pale:  #fdecea;
	--jc-encre:       #2f3542;
	--jc-gris:        #474d5d;

	--cmswp-primary:       var(--jc-vert);
	--cmswp-primary-dark:  var(--jc-vert-fonce);
	--cmswp-primary-light: var(--jc-vert-pale);
	--cmswp-secondary:     var(--jc-vert-clair);
	--cmswp-accent:        var(--jc-rouge);
	--cmswp-danger:        var(--jc-rouge);
	--cmswp-text:          var(--jc-encre);
	--cmswp-text-light:    var(--jc-gris);
	--cmswp-bg:            #ffffff;
	--cmswp-bg-alt:        var(--jc-vert-fond);
	--cmswp-border:        #d9dfd0;
	--cmswp-radius:        10px;
	--cmswp-radius-lg:     16px;
	--cmswp-font-heading:  'Quicksand', 'Trebuchet MS', system-ui, sans-serif;
	--cmswp-font-body:     'Open Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;

	/* Couleurs de section (contraste ≥ 4,5 : 1 avec le blanc) */
	--cmswp-c-primary:    var(--jc-vert);
	--cmswp-c-secondary:  var(--jc-vert-fonce);
	--cmswp-c-vert:       var(--jc-vert);
	--cmswp-c-rouge:      var(--jc-rouge);
	--cmswp-c-brun:       #8a5a2b;
	--cmswp-c-olive:      #4f6f06;

	--cmswp-s-ink:        var(--cmswp-text);
	--cmswp-s-muted:      var(--cmswp-text-light);
	--cmswp-s-bg-clair:   var(--jc-vert-fond);
	--cmswp-s-font-title: var(--cmswp-font-heading);
	--cmswp-s-font-caps:  var(--cmswp-font-heading);

	--jc-focus:           #1a5fb4;
}

/* Le site reste en clair (la charte n'a pas de version sombre) */
@media (prefers-color-scheme: dark) {
	:root {
		--cmswp-text: var(--jc-encre);
		--cmswp-text-light: var(--jc-gris);
		--cmswp-bg: #ffffff;
		--cmswp-bg-alt: var(--jc-vert-fond);
		--cmswp-border: #d9dfd0;
		--cmswp-shadow: 0 1px 3px rgba(0, 0, 0, .1);
		--cmswp-shadow-lg: 0 10px 25px rgba(0, 0, 0, .1);
	}
	body { color-scheme: light; }
	.theme-jardineries .cmswp-navbar,
	.theme-jardineries .cmswp-navbar .dropdown-menu,
	.theme-jardineries .cmswp-card { background: #fff; }
	.theme-jardineries .cmswp-navbar .dropdown-item { color: var(--jc-encre); }
}

/* Polices hébergées sur le site (pas d'appel à Google Fonts) — SIL Open Font License 1.1 */
@font-face {
	font-family: 'Quicksand';
	src: url('./assets/fonts/quicksand-latin-wght-normal.woff2') format('woff2-variations'), url('./assets/fonts/quicksand-latin-wght-normal.woff2') format('woff2');
	font-weight: 300 700;
	font-style: normal;
	font-display: swap;
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: 'Open Sans';
	src: url('./assets/fonts/open-sans-latin-wght-normal.woff2') format('woff2-variations'), url('./assets/fonts/open-sans-latin-wght-normal.woff2') format('woff2');
	font-weight: 300 800;
	font-style: normal;
	font-display: swap;
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: 'Open Sans';
	src: url('./assets/fonts/open-sans-latin-wght-italic.woff2') format('woff2-variations'), url('./assets/fonts/open-sans-latin-wght-italic.woff2') format('woff2');
	font-weight: 300 800;
	font-style: italic;
	font-display: swap;
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ── Typographie : lisible avant tout ───────────────────────────── */

body.theme-jardineries {
	font-family: var(--cmswp-font-body);
	font-size: 1.0625rem;	/* 17 px : confort de lecture */
	line-height: 1.65;
	color: var(--cmswp-text);
	background: var(--cmswp-bg);
}

.theme-jardineries h1,
.theme-jardineries h2,
.theme-jardineries h3,
.theme-jardineries h4,
.theme-jardineries .cmswp-s-title,
.theme-jardineries .cmswp-page-title {
	font-family: var(--cmswp-font-heading);
	font-weight: 700;
	line-height: 1.2;
	color: var(--jc-vert-fonce);
}

.theme-jardineries .cmswp-s-title,
.theme-jardineries .cmswp-page-title { font-size: clamp(1.9rem, 4vw, 2.75rem); }

.theme-jardineries .cmswp-s-mark { color: var(--jc-vert); }

/* Liens du contenu soulignés (repérables sans la couleur) */
.theme-jardineries main a:not([class]),
.theme-jardineries .entry-content a:not([class]) {
	color: var(--jc-vert);
	text-decoration: underline;
	text-underline-offset: .18em;
	text-decoration-thickness: 1px;
}
.theme-jardineries main a:not([class]):hover,
.theme-jardineries .entry-content a:not([class]):hover { text-decoration-thickness: 2px; }

/* Sections sur fond coloré : textes en blanc */
.theme-jardineries .cmswp-s--fond-couleur .cmswp-s-title,
.theme-jardineries .cmswp-s--fond-couleur .cmswp-s-link,
.theme-jardineries .cmswp-s--fond-couleur .cmswp-s-text h3 { color: #fff; }

/* ── Boutons : grandes cibles, état clair ───────────────────────── */

.theme-jardineries .cmswp-s-btn,
.theme-jardineries .btn-cmswp,
.theme-jardineries .wp-block-button__link {
	min-height: 44px;
	padding: .65rem 1.4rem;
	border-radius: 999px;
	font-family: var(--cmswp-font-heading);
	font-weight: 700;
	background: var(--jc-vert);
	color: #fff;
}
.theme-jardineries .cmswp-s-btn:hover,
.theme-jardineries .btn-cmswp:hover,
.theme-jardineries .wp-block-button__link:hover { background: var(--jc-vert-fonce); color: #fff; }

/* ── Focus visible partout (navigation au clavier) ──────────────── */

.theme-jardineries :focus-visible {
	outline: 3px solid var(--jc-focus);
	outline-offset: 3px;
	border-radius: 4px;
}

/* ── En-tête : fond blanc, filet vert ───────────────────────────── */

.theme-jardineries .cmswp-navbar {
	position: sticky;
	background: #fff;
	box-shadow: none;
	border-bottom: 4px solid var(--jc-vert-clair);
}
.theme-jardineries .cmswp-navbar .nav-link {
	color: var(--jc-encre);
	font-family: var(--cmswp-font-heading);
	font-weight: 700;
}
.theme-jardineries .cmswp-navbar .nav-link:hover,
.theme-jardineries .cmswp-navbar .nav-link.active { color: var(--jc-vert); }

/* ── Pastilles réutilisées par les fiches magasins (étapes suivantes) ── */

.jc-badge {
	display: inline-flex;
	align-items: center;
	gap: .35em;
	padding: .2em .7em;
	border-radius: 999px;
	font-size: .875rem;
	font-weight: 600;
	line-height: 1.5;
}
.jc-badge--ouvert { background: var(--jc-vert-pale); color: var(--jc-vert-fonce); }
.jc-badge--ferme  { background: var(--jc-rouge-pale); color: var(--jc-rouge); }
.jc-badge--promo  { background: var(--jc-rouge); color: #fff; }

/* ── Fil d'Ariane du toolkit sur une ligne (toutes les pages) ───── */

.theme-jardineries .cmswp-breadcrumbs__list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .35rem;
	margin: 0 0 1rem;
	padding: 0;
	list-style: none;
	font-size: .9rem;
}
.theme-jardineries .cmswp-breadcrumbs__item { margin: 0; }

/* ── Bandeaux sur photo du thème parent (pages, articles) : texte blanc sur voile sombre ── */

.theme-jardineries .cmswp-hero::before {
	background: linear-gradient(180deg, rgba(1, 38, 28, .7) 0%, rgba(1, 38, 28, .85) 100%);
}
.theme-jardineries .cmswp-hero,
.theme-jardineries .cmswp-hero h1,
.theme-jardineries .cmswp-hero p,
.theme-jardineries .cmswp-hero .cmswp-post-date,
.theme-jardineries .cmswp-hero a:not([class*="btn"]) {
	color: #fff;
	text-shadow: 0 1px 3px rgba(0, 0, 0, .45);
}

/* ── Préférences de l'utilisateur ───────────────────────────────── */

@media (prefers-reduced-motion: reduce) {
	.theme-jardineries *,
	.theme-jardineries *::before,
	.theme-jardineries *::after {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
		scroll-behavior: auto !important;
	}
}

/* Date masquée hors actualités (functions.php : jc_sans_date) */
.jc-sans-date .cmswp-post-date {
	display: none;
}
