/*
Theme Name: Terrhéis
Theme URI: https://www.terrheis.fr
Description: Thème enfant de Twenty Twenty-Five aux couleurs de la charte graphique TERRHÉIS — Territoires & Conseil (urbanisme, habitat, ingénierie territoriale). Palette, typographie Montserrat, en-tête et pied de page, compositions de pages prêtes à remplir.
Author: TERRHÉIS
Template: twentytwentyfive
Version: 1.0.0
Requires at least: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: terrheis
*/

/* ---------- Repères de la charte ---------- */

/* Filet orange au-dessus des titres (comme dans la charte) */
.is-style-filet::before {
	content: "";
	display: block;
	width: 3rem;
	height: 0.3rem;
	margin-bottom: 0.9rem;
	background: var(--wp--preset--color--accent-5);
}
.has-text-align-center.is-style-filet::before { margin-inline: auto; }

/* Surtitre : « Titre 3 » de la charte, capitales espacées */
.is-style-surtitre {
	font-size: 0.8125rem;
	font-weight: 500;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--wp--preset--color--accent-3);
	margin-bottom: 0.5rem;
}

/* Chapô */
.terrheis-chapo { font-weight: 500; max-width: 46rem; }

/* ---------- Sections ---------- */
.terrheis-section {
	padding-top: clamp(3rem, 7vw, 6rem);
	padding-bottom: clamp(3rem, 7vw, 6rem);
}
.terrheis-hero {
	padding-top: clamp(4rem, 10vw, 8rem);
	padding-bottom: clamp(4rem, 10vw, 8rem);
}

/* Fonds clairs + monogramme T en filigrane (déclinés des fonds A4) */
[class*="is-style-fond-"] {
	background-repeat: no-repeat;
	background-position: right -4rem center;
	background-size: auto 120%;
}
.is-style-fond-greige     { background-color: #F1EEEB; background-image: url(assets/motifs/motif-greige.svg); }
.is-style-fond-olive      { background-color: #E7EBD1; background-image: url(assets/motifs/motif-olive.svg); }
.is-style-fond-ardoise    { background-color: #DFE2E5; background-image: url(assets/motifs/motif-ardoise.svg); }
.is-style-fond-terracotta { background-color: #EFDAD6; background-image: url(assets/motifs/motif-terracotta.svg); }
.is-style-fond-ocre       { background-color: #FAEDDB; background-image: url(assets/motifs/motif-ocre.svg); }
.is-style-fond-bleu-brume { background-color: #E7F1F5; background-image: url(assets/motifs/motif-bleu-brume.svg); }
.is-style-fond-brun-terre { background-color: #DED8D4; background-image: url(assets/motifs/motif-brun-terre.svg); }
.is-style-fond-orange     { background-color: #F9E7DE; background-image: url(assets/motifs/motif-orange.svg); }

@media (max-width: 781px) {
	[class*="is-style-fond-"] { background-position: right -8rem top 1rem; background-size: auto 70%; }
}

/* Bandeau bleu nuit */
.is-style-bandeau {
	background-color: var(--wp--preset--color--contrast);
	color: var(--wp--preset--color--base);
}
.is-style-bandeau :where(h1, h2, h3, h4, p, li) { color: var(--wp--preset--color--base); }
.is-style-bandeau a:where(:not(.wp-element-button)) { color: var(--wp--preset--color--base); }
.is-style-bandeau .is-style-surtitre { color: var(--wp--preset--color--bleu-brume); }
.is-style-bandeau .wp-element-button,
.is-style-bandeau .wp-block-button__link {
	background-color: var(--wp--preset--color--accent-5);
	color: var(--wp--preset--color--contrast);
}
.is-style-bandeau .wp-element-button:hover,
.is-style-bandeau .wp-block-button__link:hover {
	background-color: var(--wp--preset--color--base);
	color: var(--wp--preset--color--contrast);
}

/* Cartes (activités, valeurs, équipe) */
.is-style-carte {
	background: var(--wp--preset--color--base);
	border: 1px solid var(--wp--preset--color--accent-6);
	border-top: 3px solid var(--wp--preset--color--accent-4);
	padding: clamp(1.25rem, 2.5vw, 2rem);
	height: 100%;
	box-sizing: border-box;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.is-style-carte:hover {
	box-shadow: 0 10px 30px rgba(17, 37, 44, 0.08);
	transform: translateY(-2px);
}
.is-style-carte > * { margin-block-start: 0; }
.is-style-carte > * + * { margin-block-start: 0.75rem; }
.is-style-carte h3 { font-size: 1.1875rem; }

/* Pictogrammes : monogramme T décliné par activité */
.terrheis-icone img { width: 3.25rem; height: auto; }

/* Lien fléché */
.terrheis-lien-fleche a { font-weight: 500; text-decoration: none; }
.terrheis-lien-fleche a::after { content: " →"; transition: margin 0.2s; }
.terrheis-lien-fleche a:hover::after { margin-left: 0.25rem; }

/* Listes de missions : puces orange (accent ponctuel de la charte) */
.terrheis-missions { list-style: none; padding-left: 0; }
.terrheis-missions li {
	position: relative;
	padding-left: 1.5rem;
	margin-bottom: 0.6rem;
}
.terrheis-missions li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.65em;
	width: 0.5rem;
	height: 0.5rem;
	background: var(--wp--preset--color--accent-5);
}

/* Étapes de méthode */
.terrheis-etape-num {
	font-size: 2.5rem;
	font-weight: 600;
	line-height: 1;
	color: var(--wp--preset--color--accent-4);
}

/* Portraits équipe */
.is-style-portrait img {
	width: 8.5rem;
	height: 8.5rem;
	object-fit: cover;
	border-radius: 50%;
	background: var(--wp--preset--color--accent-2);
}

/* Emplacements logos partenaires */
.terrheis-partenaire {
	min-height: 6.5rem;
	border: 1px dashed var(--wp--preset--color--greige);
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: var(--wp--preset--color--accent-3);
	font-size: var(--wp--preset--font-size--small);
	padding: 1rem;
}
.terrheis-partenaire img { max-height: 4rem; width: auto; filter: grayscale(1); opacity: 0.8; transition: all 0.2s; }
.terrheis-partenaire:hover img { filter: none; opacity: 1; }

/* ---------- En-tête ---------- */
.terrheis-entete {
	position: sticky;
	top: var(--wp-admin--admin-bar--height, 0);
	z-index: 50;
	background: var(--wp--preset--color--base);
	border-bottom: 1px solid var(--wp--preset--color--accent-6);
	padding-top: 1rem;
	padding-bottom: 1rem;
}
.terrheis-logo { margin: 0; }
.terrheis-logo img { width: clamp(170px, 20vw, 230px); height: auto; display: block; }
.terrheis-entete .wp-block-navigation a { text-decoration: none; }
.terrheis-entete .wp-block-navigation a:hover { color: var(--wp--preset--color--accent-1); }
.terrheis-entete .wp-block-navigation .current-menu-item > a {
	box-shadow: inset 0 -2px 0 var(--wp--preset--color--accent-5);
}
@media (max-width: 781px) {
	.terrheis-entete .wp-block-buttons { display: none; }
}

/* ---------- Pied de page ---------- */
.terrheis-pied {
	background: var(--wp--preset--color--contrast);
	color: #DCE2E6;
	font-size: 0.9375rem;
	padding-top: clamp(3rem, 6vw, 5rem);
	padding-bottom: 2rem;
}
.terrheis-pied :where(h2, h3, h4) {
	color: var(--wp--preset--color--base);
	font-size: 0.8125rem;
	font-weight: 500;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}
.terrheis-pied a { color: var(--wp--preset--color--base); text-decoration: none; }
.terrheis-pied a:hover { color: var(--wp--preset--color--accent-5); }
.terrheis-pied ul { list-style: none; padding-left: 0; }
.terrheis-pied li { margin-bottom: 0.4rem; }
.terrheis-pied .terrheis-logo-pied img { width: 260px; max-width: 100%; height: auto; }
.terrheis-pied .terrheis-mentions {
	border-top: 1px solid rgba(255, 255, 255, 0.15);
	padding-top: 1.5rem;
	margin-top: 2.5rem;
	font-size: 0.8125rem;
	color: #AEB8BE;
}

/* Titres de cartes cliquables, sans soulignement */
.is-style-carte :where(h2, h3) a { color: inherit; text-decoration: none; }
.is-style-carte :where(h2, h3) a:hover { color: var(--wp--preset--color--accent-1); }

/* Séparation bandeau / pied de page quand ils se suivent */
.terrheis-pied { border-top: 1px solid rgba(255, 255, 255, 0.12); }
