/*
Theme Name: Red-Act
Theme URI: https://www.red-act.com
Author: Red-Act
Author URI: https://www.red-act.com
Description: Thème du site Red-Act, agence de communication et de stratégies d'influence à Strasbourg. Couleurs et typographies du logo, compositions prêtes à l'emploi pour chaque page du site.
Requires at least: 6.6
Tested up to: 6.8
Requires PHP: 7.4
Version: 1.0.1
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: red-act
*/

/* Pleine largeur : pas d'espace entre les bandeaux colorés */
.wp-block-post-content > .alignfull,
.wp-site-blocks > main > .alignfull,
.wp-site-blocks > footer,
.wp-site-blocks > main { margin-block-start: 0; margin-block-end: 0; }
.wp-block-post-content > .alignfull + .alignfull { margin-block-start: 0; }

/* Étiquettes (petites capitales espacées, comme le slogan du logo) */
p.is-style-etiquette {
	font-family: var(--wp--preset--font-family--jost);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	line-height: 1.4;
}
p.is-style-etiquette:not(.has-text-color) { color: var(--wp--preset--color--rouge); }

/* Titres : équilibrage des lignes */
h1, h2, h3 { text-wrap: balance; }

/* Liens sur fond rouge ou bordeaux */
.has-rouge-background-color a:where(:not(.wp-element-button)),
.has-bordeaux-background-color a:where(:not(.wp-element-button)),
.has-bordeaux-profond-background-color a:where(:not(.wp-element-button)) { color: var(--wp--preset--color--blanc); }

/* Bouton contour */
.wp-block-button.is-style-outline > .wp-block-button__link {
	border: 2px solid currentColor;
	padding: 14px 24px;
}
.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color) { color: var(--wp--preset--color--rouge); }
.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-background) { background: transparent; }
.wp-block-button.is-style-outline > .wp-block-button__link:hover { background: var(--wp--preset--color--rouge); color: var(--wp--preset--color--blanc); border-color: var(--wp--preset--color--rouge); }

/* Cartes cliquables : légère élévation au survol */
.is-style-carte { transition: transform .15s ease, box-shadow .15s ease; }
.is-style-carte:hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(126, 23, 18, .12); }

/* FAQ dépliable */
.wp-block-details {
	border-bottom: 1px solid var(--wp--preset--color--filet);
	padding: 20px 0;
	margin-block-start: 0 !important;
}
.wp-block-details summary {
	font-family: var(--wp--preset--font-family--archivo);
	font-weight: 700;
	font-size: 20px;
	line-height: 1.3;
	cursor: pointer;
}
.wp-block-details summary::marker { color: var(--wp--preset--color--rouge); }
.wp-block-details > :not(summary) { margin-block-start: 14px; color: var(--wp--preset--color--gris); }

/* En-tête : lien de la page en cours */
.wp-block-navigation .current-menu-item > a,
.wp-block-navigation a[aria-current="page"] {
	color: var(--wp--preset--color--rouge);
	box-shadow: inset 0 -2px 0 var(--wp--preset--color--rouge);
}
.wp-block-navigation a { padding-block: 8px; }
.wp-block-navigation__responsive-container.is-menu-open { background: var(--wp--preset--color--blanc); }

/* Focus clavier visible */
a:focus-visible, button:focus-visible, summary:focus-visible, .wp-element-button:focus-visible {
	outline: 2px solid var(--wp--preset--color--rouge);
	outline-offset: 3px;
}

/* Grilles de cartes de même hauteur */
.wp-block-group.is-layout-grid > .wp-block-group { height: 100%; }

/* Articles du blog */
.wp-block-post-template .wp-block-post-featured-image img { border-radius: 4px; }
.wp-block-post-terms a { text-decoration: none; }

@media (prefers-reduced-motion: reduce) {
	.is-style-carte { transition: none; }
	.is-style-carte:hover { transform: none; }
}

/* En-tête sur téléphone */
header .wp-block-button__link { white-space: nowrap; }
@media (max-width: 600px) {
	header .wp-block-image img { height: 32px !important; }
	header .wp-block-button__link { padding: 10px 14px !important; font-size: 14px; }
}

/* Formulaire de contact (Contact Form 7) */
.wpcf7 { width: 100%; }
.wpcf7 p { margin: 0 0 14px; }
.wpcf7 label { display: block; font-weight: 600; font-size: 15px; }
.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 input[type="tel"], .wpcf7 select, .wpcf7 textarea {
	width: 100%; box-sizing: border-box; margin-top: 6px; padding: 10px 12px;
	border: 1px solid #d9c9c9; border-radius: 4px; background: #fff; font: inherit; font-weight: 400;
}
.wpcf7 textarea { height: 140px; }
.wpcf7 .wpcf7-acceptance label { font-weight: 400; font-size: 13px; }
.wpcf7 input[type="submit"] {
	background: var(--wp--preset--color--rouge); color: #fff; border: 0; border-radius: 4px;
	padding: 14px 24px; font-weight: 700; cursor: pointer;
}
.wpcf7 input[type="submit"]:hover { opacity: .9; }
