/*
Theme Name: Angers Rapid Serrurier
Theme URI: https://www.angers-rapid-serrurier.fr/
Author: Angers Rapid Serrurier
Description: Thème sur mesure du site Angers Rapid Serrurier : dépannage, tarifs affichés, appel en un geste.
Version: 1.0.0
Requires at least: 6.6
Tested up to: 7.0
Requires PHP: 8.1
License: GNU General Public License v2 or later
Text Domain: angers-rapid-serrurier
*/

/* Angers Rapid Serrurier — styles complémentaires au theme.json
   Toutes les classes du thème commencent par « ars- ». */

:root {
	--ars-ink: var(--wp--preset--color--ink, #172131);
	--ars-ink-2: var(--wp--preset--color--ink-2, #4A5463);
	--ars-paper: var(--wp--preset--color--paper, #F6F3EE);
	--ars-line: var(--wp--preset--color--line, #E3DDD3);
	--ars-sand: var(--wp--preset--color--sand, #F3E6D2);
	--ars-brass: var(--wp--preset--color--brass, #8A500E);
	--ars-brass-light: var(--wp--preset--color--brass-light, #E2B271);
	--ars-call: var(--wp--preset--color--call, #146B45);
	--ars-call-light: var(--wp--preset--color--call-light, #E6F3EC);
	--ars-radius: 16px;
	--ars-icon-phone: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.96.36 1.9.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.91.34 1.85.57 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E");
	--ars-icon-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");
	--ars-icon-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m12 5 7 7-7 7'/%3E%3C/svg%3E");
	--ars-icon-star: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z'/%3E%3C/svg%3E");
}

body { -webkit-font-smoothing: antialiased; }
:where(.wp-site-blocks) > * { margin-block-start: 0; }
a:focus-visible, button:focus-visible, summary:focus-visible { outline: 3px solid var(--ars-brass-light); outline-offset: 2px; }

/* ---------- Boutons ---------- */
.wp-block-button .wp-block-button__link { display: inline-flex; align-items: center; justify-content: center; gap: .6rem; min-height: 52px; box-sizing: border-box; text-decoration: none; }
.wp-block-button.is-style-call .wp-block-button__link { background: var(--ars-call); color: #fff; }
.wp-block-button.is-style-call .wp-block-button__link::before {
	content: ""; width: 1.25em; height: 1.25em; flex-shrink: 0; background: currentColor;
	-webkit-mask: var(--ars-icon-phone) center / contain no-repeat; mask: var(--ars-icon-phone) center / contain no-repeat;
}
.wp-block-button.is-style-ghost .wp-block-button__link { background: transparent; color: var(--ars-ink); border: 2px solid var(--ars-ink); }
.wp-block-button.is-style-ghost .wp-block-button__link:hover { background: var(--ars-ink); color: #fff; }
.wp-block-button.is-style-brass .wp-block-button__link { background: var(--ars-brass-light); color: var(--ars-ink); }
.wp-block-button.is-style-brass .wp-block-button__link:hover { background: #d69f55; color: var(--ars-ink); }
@media (max-width: 600px) {
	.ars-hero .wp-block-buttons, .ars-cta .wp-block-buttons { flex-direction: column; align-items: stretch; }
	.ars-hero .wp-block-button, .ars-cta .wp-block-button { width: 100%; }
	.ars-hero .wp-block-button__link, .ars-cta .wp-block-button__link { width: 100%; min-height: 60px; }
}

/* ---------- Bandeau du haut + point « disponible » ---------- */
.ars-topbar { background: var(--ars-ink); color: #C9D0DA; font-size: .875rem; padding: .55rem 16px; }
.ars-topbar p { margin: 0; }
.ars-live { display: inline-flex !important; align-items: center; gap: .6rem; font-weight: 700; }
.ars-live::before {
	content: ""; width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0; background: #1E9A62;
	box-shadow: 0 0 0 0 rgba(30, 154, 98, .6); animation: ars-pulse 1.4s ease-out infinite;
}
.ars-topbar .ars-live::before { background: #3CC486; }
.ars-live--pill { padding: .45rem 1rem; border-radius: 999px; background: var(--ars-call-light); color: var(--ars-call); font-size: .9375rem; }
@keyframes ars-pulse {
	0% { opacity: 1; box-shadow: 0 0 0 0 rgba(30, 154, 98, .55); }
	50% { opacity: .45; }
	100% { opacity: 1; box-shadow: 0 0 0 10px rgba(30, 154, 98, 0); }
}
@media (prefers-reduced-motion: reduce) { .ars-live::before { animation: none; } }
@media (max-width: 781px) { .ars-topbar .ars-topbar__zone { display: none; } }

/* ---------- En-tête ---------- */
.ars-header { background: #fff; border-bottom: 1px solid var(--ars-line); position: sticky; top: 0; z-index: 50; }
.ars-header > .wp-block-group { padding-block: .75rem; gap: 1.5rem; }
.ars-brand { gap: .75rem; }
.ars-brand .wp-block-site-logo img { border-radius: 10px; }
.ars-header .wp-block-site-title { font-family: var(--wp--preset--font-family--display); font-weight: 800; font-size: 1.25rem; margin: 0; line-height: 1.1; }
.ars-header .wp-block-site-title a { color: var(--ars-ink); text-decoration: none; }
.ars-header .wp-block-site-tagline { margin: 0; font-size: .875rem; font-weight: 600; color: var(--ars-ink-2); }
.ars-header .wp-block-navigation { font-weight: 600; font-size: 1rem; }
.ars-header .wp-block-navigation a { color: var(--ars-ink); text-decoration: none; }
.ars-header .wp-block-navigation a:hover { color: var(--ars-brass); }
@media (max-width: 980px) {
	.ars-header .wp-block-navigation { display: none; }
	.ars-header .wp-block-site-tagline { display: none; }
	.ars-header .wp-block-button__link { font-size: 1rem; padding: .75rem 1rem; min-height: 48px; }
}

/* ---------- Sections ---------- */
.ars-section { padding-block: var(--wp--preset--spacing--60); }
.ars-section--white { background: #fff; }
.ars-eyebrow { text-transform: uppercase; letter-spacing: .06em; font-weight: 700; font-size: .9375rem; color: var(--ars-brass); margin: 0; }
.ars-lead { font-size: var(--wp--preset--font-size--large); color: var(--ars-ink-2); }
.ars-lead strong { color: var(--ars-ink); }
.ars-muted { color: var(--ars-ink-2); }
.ars-note { font-size: .9375rem; color: var(--ars-ink-2); }
.ars-breadcrumb { font-size: .875rem; color: var(--ars-ink-2); }
.ars-breadcrumb a { color: var(--ars-ink-2); }

/* Hero */
.ars-hero { background: #fff; }
.ars-hero h1 { margin-block: .25rem 0; }
.ars-hero .wp-block-columns { align-items: center !important; gap: clamp(1.5rem, 5vw, 4rem); }

/* Chiffres clés (délai, prix) */
.ars-kpis { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
.ars-kpi { background: var(--ars-sand); border-radius: var(--ars-radius); padding: 1rem 1.1rem; }
.ars-kpi p { margin: 0; }
.ars-kpi p:first-child { font-size: .875rem; color: var(--ars-ink-2); }
.ars-kpi p:last-child { font-family: var(--wp--preset--font-family--display); font-weight: 800; font-size: clamp(1.375rem, 2.5vw, 1.75rem); line-height: 1.2; }

/* Liste à coches */
.ars-checks { list-style: none; padding-left: 0; display: grid; gap: .6rem; }
.ars-checks li { position: relative; padding-left: 1.9rem; }
.ars-checks li::before {
	content: ""; position: absolute; left: 0; top: .2em; width: 1.2em; height: 1.2em; background: var(--ars-call);
	-webkit-mask: var(--ars-icon-check) center / contain no-repeat; mask: var(--ars-icon-check) center / contain no-repeat;
}
.ars-checks--2col { grid-template-columns: repeat(2, minmax(0, 1fr)); font-weight: 600; font-size: .9375rem; }
.ars-checks--boxed li { background: #fff; border: 1px solid var(--ars-line); border-radius: 12px; padding: .9rem 1rem .9rem 2.9rem; }
.ars-checks--boxed li::before { left: 1rem; top: 1.05rem; background: var(--ars-brass); }
@media (max-width: 380px) { .ars-checks--2col { grid-template-columns: 1fr; } }

/* Emplacements photo / carte à remplacer */
.ars-photo { border: 2px dashed #C9BFAF; background: #EDE7DD; border-radius: 24px; min-height: 240px; display: flex !important; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 1.5rem; color: var(--ars-ink-2); }
.ars-photo p { margin: 0; }
@media (min-width: 782px) { .ars-photo--tall { min-height: 480px; } }

/* Encadré de réassurance */
.ars-float { background: #fff; border-radius: var(--ars-radius); box-shadow: 0 12px 32px rgba(23, 33, 49, .14); padding: 1.25rem 1.4rem; }
.ars-float p { margin: 0 0 .5rem; }

/* Cartes */
.ars-cards { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: 1rem; }
.ars-cards--compact { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem; }
@media (min-width: 782px) { .ars-cards--compact { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; } }
.ars-card { background: #fff; border: 1px solid var(--ars-line); border-radius: 18px; padding: clamp(1rem, 2.5vw, 1.75rem); display: flex !important; flex-direction: column; gap: .45rem; }
.ars-card > * { margin: 0 !important; }
.ars-card h3 { font-size: clamp(1.0625rem, 2vw, 1.4rem); }
.ars-card p { color: var(--ars-ink-2); font-size: .9375rem; }
.ars-card .ars-price { color: var(--ars-brass); font-weight: 700; margin-top: auto !important; }
.ars-card a { color: inherit; text-decoration: none; }
.ars-card a::after { content: ""; position: absolute; inset: 0; }
.ars-card:has(a) { position: relative; transition: border-color .15s, transform .15s; }
.ars-card:has(a):hover { border-color: var(--ars-brass); transform: translateY(-2px); }
.ars-card--dark { background: var(--ars-ink); border-color: var(--ars-ink); color: #fff; }
.ars-card--dark p { color: #C9D0DA; }
.ars-card--dark .ars-price { color: var(--ars-brass-light); }

/* Bande sombre (étapes, délai…) */
.ars-band { background: var(--ars-ink); color: #fff; border-radius: 24px; padding: clamp(1.5rem, 4vw, 3.5rem); }
.ars-band h2, .ars-band h3 { color: #fff; }
.ars-band p { color: #C9D0DA; }
.ars-band strong { color: #fff; }
.ars-band .ars-accent { color: var(--ars-brass-light); }
.ars-steps { list-style: none; padding: 0; margin: 0; counter-reset: ars-step; display: grid; gap: 1.5rem; }
@media (min-width: 900px) { .ars-steps { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2rem; } }
.ars-steps li { counter-increment: ars-step; position: relative; padding-left: 3.25rem; color: #C9D0DA; }
@media (min-width: 900px) { .ars-steps li { padding-left: 0; padding-top: 3.25rem; } }
.ars-steps li::before {
	content: counter(ars-step); position: absolute; left: 0; top: 0; width: 2.4rem; height: 2.4rem; border-radius: 50%;
	background: var(--ars-brass-light); color: var(--ars-ink); font-weight: 800; display: flex; align-items: center; justify-content: center;
}
.ars-steps li strong { display: block; color: #fff; font-size: 1.125rem; margin-bottom: .25rem; }

/* Tableau des prix */
.ars-prices { background: #fff; border: 1px solid var(--ars-line); border-radius: 18px; overflow: hidden; margin: 0; }
.ars-prices table { border-collapse: collapse; width: 100%; font-size: clamp(.875rem, 1.6vw, 1.0625rem); }
.ars-prices th, .ars-prices td { border: 0; border-top: 1px solid var(--ars-line); padding: .9rem clamp(.4rem, 1.5vw, 1.5rem); text-align: right; }
.ars-prices thead th { background: var(--ars-sand); border-top: 0; font-weight: 700; }
.ars-prices th:first-child, .ars-prices td:first-child { text-align: left; font-weight: 600; }
.ars-prices td:nth-child(2) { font-weight: 700; }
.ars-prices thead { border-bottom: 0; }

/* Avis clients */
.ars-rating { display: flex !important; align-items: center; gap: .75rem; flex-wrap: wrap; }
.ars-rating p { margin: 0; }
.ars-stars { display: inline-flex !important; align-items: center; gap: .6rem; }
.ars-stars::before { content: ""; display: inline-block; width: 6.2rem; height: 1.2rem; flex-shrink: 0; background: #C8871F;
	-webkit-mask: var(--ars-icon-star) left center / 1.24rem 1.2rem repeat-x; mask: var(--ars-icon-star) left center / 1.24rem 1.2rem repeat-x; }
.ars-review { background: var(--ars-paper); border: 1px dashed #C9BFAF; border-radius: 18px; padding: 1.4rem; margin: 0; }
.ars-review p { margin: 0 0 .75rem; color: var(--ars-ink-2); }
.ars-review cite, .ars-review .wp-block-quote__citation { font-style: normal; font-weight: 600; font-size: .9375rem; color: var(--ars-ink); }
.ars-review.wp-block-quote { border-left: 1px dashed #C9BFAF; }

/* Liens « pastilles » (communes) */
.ars-chips { display: flex; flex-wrap: wrap; gap: .5rem; }
.ars-chips a { display: inline-block; padding: .55rem 1rem; border-radius: 999px; background: var(--ars-sand); color: var(--ars-ink); text-decoration: none; font-weight: 600; font-size: .9375rem; }
.ars-chips a:hover { background: var(--ars-brass-light); }

/* Liste de liens avec flèche (travaux) */
.ars-links { list-style: none; padding: 0; margin: 0; display: grid; gap: .75rem; }
@media (min-width: 782px) { .ars-links { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; } }
.ars-links li a { display: flex; align-items: center; justify-content: space-between; gap: .75rem; min-height: 64px; padding: .75rem 1.25rem; background: #fff; border: 1px solid var(--ars-line); border-radius: 16px; color: var(--ars-ink); font-weight: 700; text-decoration: none; }
.ars-links li a::after { content: ""; width: 1.2em; height: 1.2em; flex-shrink: 0; background: currentColor;
	-webkit-mask: var(--ars-icon-arrow) center / contain no-repeat; mask: var(--ars-icon-arrow) center / contain no-repeat; }
.ars-links li a:hover { border-color: var(--ars-brass); }

/* FAQ */
.ars-faq { background: #fff; border: 1px solid var(--ars-line); border-radius: 18px; overflow: hidden; }
.ars-faq .wp-block-details { margin: 0; padding: 1.1rem 1.4rem; border-top: 1px solid var(--ars-line); }
.ars-faq .wp-block-details:first-child { border-top: 0; }
.ars-faq summary { font-weight: 700; font-size: 1.0625rem; cursor: pointer; }
.ars-faq .wp-block-details p { color: var(--ars-ink-2); margin-top: .6rem; }

/* Appel final */
.ars-cta { background: var(--ars-ink); color: #fff; border-radius: 24px; padding: clamp(1.5rem, 4vw, 3.5rem); }
.ars-cta h2 { color: #fff; }
.ars-cta p { color: #C9D0DA; }
.ars-cta .wpcf7 input:not([type=submit]), .ars-cta .wpcf7 select { width: 100%; min-height: 48px; border-radius: 10px; border: 1px solid #4A5874; padding: 0 .75rem; font: inherit; box-sizing: border-box; }
.ars-cta .wpcf7 label { color: #fff; font-weight: 600; font-size: .9375rem; }
.ars-cta .wpcf7 input[type=submit] { width: 100%; min-height: 52px; border: 0; border-radius: 12px; background: var(--ars-brass-light); color: var(--ars-ink); font: inherit; font-weight: 700; cursor: pointer; }

/* ---------- Pied de page ---------- */
.ars-footer { background: #fff; border-top: 1px solid var(--ars-line); font-size: .9375rem; color: var(--ars-ink-2); }
.ars-footer p { margin: 0 0 .35rem; }
.ars-footer a { color: var(--ars-ink-2); }
.ars-footer .ars-footer__strong a, .ars-footer strong { color: var(--ars-ink); }
.ars-review-link a { font-weight: 700; color: var(--ars-brass) !important; display: inline-flex; align-items: center; gap: .4rem; }
.ars-review-link a::before { content: ""; width: 1em; height: 1em; background: #C8871F;
	-webkit-mask: var(--ars-icon-star) center / contain no-repeat; mask: var(--ars-icon-star) center / contain no-repeat; }

/* Barre d'appel fixe (mobile uniquement) */
.ars-mobile-bar { display: none !important; }
@media (max-width: 781px) {
	.ars-mobile-bar {
		display: flex !important; position: fixed; left: 0; right: 0; bottom: 0; z-index: 100; gap: .5rem;
		padding: .6rem .75rem calc(.6rem + env(safe-area-inset-bottom)); background: #fff;
		border-top: 1px solid var(--ars-line); box-shadow: 0 -6px 18px rgba(23, 33, 49, .10); margin: 0 !important;
	}
	.ars-mobile-bar .wp-block-button { flex: 1 1 auto; margin: 0; }
	.ars-mobile-bar .wp-block-button:last-child { flex: 0 0 auto; }
	.ars-mobile-bar .wp-block-button__link { width: 100%; min-height: 52px; padding: .5rem .9rem; font-size: 1rem; }
	body { padding-bottom: 80px; }
}
/* Pas de barre fixe dans l'éditeur */
.editor-styles-wrapper .ars-mobile-bar { position: static !important; }

/* ---------- Correctifs de mise en page ---------- */
/* Les grilles ne doivent pas hériter de l'espacement vertical automatique de WordPress */
.ars-cards > *, .ars-kpis > *, .ars-links > *, .ars-checks > *, .ars-steps > * { margin-block-start: 0 !important; }
.ars-header .wp-block-button__link, .ars-mobile-bar .wp-block-button__link { white-space: nowrap; }
.ars-header .wp-block-navigation { gap: 1.25rem; }
.ars-header .wp-block-navigation a { white-space: nowrap; }
@media (max-width: 1280px) { .ars-header .wp-block-site-tagline { display: none; } }
@media (max-width: 781px) { .ars-mobile-bar { flex-wrap: nowrap !important; } }
@media (max-width: 781px) {
	.ars-mobile-bar .wp-block-button:first-child { flex: 1 1 0; min-width: 0; }
	.ars-mobile-bar .wp-block-button:last-child { flex: 0 0 auto; }
	.ars-mobile-bar .wp-block-button__link { font-size: .9375rem; padding: .5rem .75rem; }
	.ars-header .wp-block-site-title { font-size: 1.05rem; }
}
/* Respiration avant les intertitres dans le texte courant */
.ars-section.is-layout-constrained > h2:not(:first-child),
.ars-section > .alignwide > h2:not(:first-child) { margin-block-start: 2.5rem; }
.ars-breadcrumb + .ars-live { margin-block-start: .75rem; }
/* Réseaux sociaux (pied de page) */
.ars-social { gap: .75rem !important; margin-block-start: .75rem !important; }
.ars-social .wp-social-link { color: var(--ars-ink) !important; background: none !important; }
.ars-social .wp-social-link a { padding: .35rem; }
.ars-social .wp-social-link svg { width: 26px; height: 26px; }
.ars-social .wp-social-link:hover { color: var(--ars-brass) !important; }
/* Carte de la zone d'intervention */
.ars-map { margin: 0; }
.ars-map img { width: 100%; height: auto; border-radius: 24px; box-shadow: 0 12px 32px rgba(23, 33, 49, .12); display: block; }
.ars-map a { display: block; }
.ars-map figcaption { text-align: center; font-size: .9375rem; color: var(--ars-ink-2); margin-top: .6rem; }
/* Interventions récentes */
.ars-interventions-wrap:not(:has(.ars-interventions)) { display: none; }
.ars-interventions > * + * { margin-block-start: 1.25rem; }
.ars-card__meta, .ars-card .ars-card__meta { font-size: .875rem !important; font-weight: 700; color: var(--ars-call) !important; text-transform: none; }
.ars-card__meta a { color: var(--ars-call); text-decoration: none; }
.ars-card__img img, .ars-card .wp-block-post-featured-image img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 12px; display: block; }
/* Photo d'illustration dans le texte (petite taille) */
.ars-photo-inline { margin: 0; max-width: 480px; }
.ars-photo-inline img { width: 100%; height: auto; border-radius: 16px; display: block; }
.ars-photo-inline figcaption { font-size: .875rem; color: var(--ars-ink-2); margin-top: .4rem; }


/* ---------- Fusion : en-tête sombre, calculateur, situations ---------- */
.ars-hero--dark { background: var(--ars-ink); color: #fff; }
.ars-hero--dark h1 { color: #fff; }
.ars-hero--dark .ars-lead { color: #D5DAE4; }
.ars-hero--dark .ars-lead strong, .ars-hero--dark .ars-stars strong { color: #fff; }
.ars-hero--dark .ars-checks li { color: #fff; }
.ars-hero--dark .ars-checks li::before { background: #3CC486; }
.ars-hero--dark .ars-stars, .ars-hero--dark .ars-stars a { color: #E9ECF1; }
.ars-hero--dark .ars-live--pill { background: rgba(60, 196, 134, .16); color: #7FE0B2; }
.ars-hero--dark .ars-live--pill::before { background: #3CC486; }
.wp-block-button.is-style-ghost-light .wp-block-button__link { background: transparent; color: #fff; border: 2px solid rgba(255,255,255,.7); }
.wp-block-button.is-style-ghost-light .wp-block-button__link:hover { background: #fff; color: var(--ars-ink); }
.ars-hero--dark .wp-block-column { display: flex; flex-direction: column; }
.ars-hero--dark .wp-block-column > * + * { margin-block-start: 1.25rem; }

.ars-calc { background: #fff; color: var(--ars-ink); border-radius: 18px; padding: clamp(1.25rem, 3vw, 1.75rem); box-shadow: 0 24px 60px rgba(0, 0, 0, .35); display: flex; flex-direction: column; gap: .75rem; }
.ars-calc > * { margin: 0 !important; }
.ars-calc__head { display: flex; justify-content: space-between; align-items: baseline; gap: .75rem; flex-wrap: wrap; }
.ars-calc__head h2 { font-size: clamp(1.375rem, 2.4vw, 1.75rem) !important; margin: 0; }
.ars-calc__head span { font-size: .875rem; color: var(--ars-ink-2); }
.ars-calc__step { font-weight: 700; font-size: .9375rem; }
.ars-calc__chips { display: flex; flex-wrap: wrap; gap: .5rem; }
.ars-calc__chips button { min-height: 44px; padding: .5rem .9rem; border-radius: 999px; border: 2px solid var(--ars-line); background: #fff; color: var(--ars-ink); font: 600 .9375rem/1.2 var(--wp--preset--font-family--body); cursor: pointer; }
.ars-calc__chips button:hover { border-color: var(--ars-ink); }
.ars-calc__chips button[aria-pressed="true"] { background: var(--ars-ink); border-color: var(--ars-ink); color: #fff; }
.ars-calc__chips button:focus-visible { outline: 3px solid var(--ars-brass-light); outline-offset: 2px; }
.ars-calc__result { background: var(--ars-sand); border-radius: 12px; padding: 1rem 1.1rem; display: flex; flex-direction: column; gap: .25rem; }
.ars-calc__result p { margin: 0; }
.ars-calc__label, .ars-calc__detail { font-size: .9375rem; color: var(--ars-ink-2); }
.ars-calc__price { font-family: var(--wp--preset--font-family--display); font-weight: 800; font-size: clamp(2.25rem, 5vw, 3rem); line-height: 1.05; font-variant-numeric: tabular-nums; }
.ars-calc__price small { font-size: 1.125rem; font-weight: 700; }
.ars-calc__price.is-text { font-size: 1.5rem; }
.ars-calc__cta { display: flex; align-items: center; justify-content: center; min-height: 56px; border-radius: 14px; background: var(--ars-call); color: #fff !important; font-weight: 700; font-size: 1.0625rem; text-decoration: none; text-align: center; padding: .5rem 1rem; }
.ars-calc__cta:hover { background: #0F5A3A; }
.ars-calc__note { font-size: .8125rem; color: var(--ars-ink-2); }

.ars-sits { display: none; }
.ars-sits a { display: flex; justify-content: space-between; align-items: center; gap: .75rem; min-height: 52px; padding: .75rem 1rem; border-radius: 12px; background: #fff; color: var(--ars-ink) !important; text-decoration: none; font-weight: 700; }
.ars-sits a span:last-child { color: var(--ars-brass); white-space: nowrap; font-size: .9375rem; }
.ars-sits__title { margin: 0; font-weight: 700; font-size: .875rem; letter-spacing: .08em; text-transform: uppercase; color: var(--ars-brass-light); }
.ars-sits__note { margin: 0; font-size: .8125rem; color: #AEB8CF; }
@media (max-width: 781px) {
	.ars-sits { display: grid; gap: .5rem; }
	.ars-hero--dark .wp-block-column:last-child { margin-top: .5rem; }
}
.ars-trust { align-items: center !important; }
.ars-hero--dark .wp-block-columns { align-items: flex-start !important; }
.ars-hero--dark .wp-block-column { align-items: flex-start; }
.ars-hero--dark .ars-sits, .ars-hero--dark .wp-block-buttons, .ars-hero--dark .ars-checks, .ars-hero--dark .ars-calc { align-self: stretch; }


/* ---------- Ajustements WordPress ---------- */
.ars-header .wp-block-site-title { margin: 0; }
.ars-header .wp-block-navigation__container { gap: 1.25rem; }
.ars-main > .wp-block-post-content > :first-child { margin-block-start: 0; }
.ars-post-card .wp-block-post-title { font-size: clamp(1.0625rem, 2vw, 1.3rem); margin: 0; }
.ars-post-card .wp-block-post-title a { color: var(--ars-ink); text-decoration: none; }
.ars-post-card .wp-block-post-excerpt { color: var(--ars-ink-2); font-size: .9375rem; margin: 0; }
.ars-post-card { background: #fff; border: 1px solid var(--ars-line); border-radius: 18px; padding: 1.25rem; height: 100%; box-sizing: border-box; }
.wp-block-post-template.is-layout-grid { gap: 1rem; }
