/* Soléa V20.37.6 — Couche LUXE (Hermès / Audemars Piguet / Ferrari / Yacht Club Monaco)
 *
 * V20.37.6 luxury scoped calculateur : ce fichier est désormais ENTIÈREMENT
 * scopé au BODY DU CALCULATEUR uniquement (page /estimer-mon-projet/).
 *
 * Historique :
 *   - V20.36a (commit 5219609) : création du fichier, appliqué globalement
 *     sur tout le site. Pushback user : "design vieux manifest".
 *   - V20.37.5 : tentative de scope body.home (couche luxe limitée à la
 *     homepage). Pushback user "TU LES AVAIT PAS SUPPRIMER L'ANCIEN STYLE
 *     TU AVAIS JUSTE AJOUTER UNE COUCHE AU DESSUS LUXURY".
 *   - V20.37.6 (cette session) : restauration de l'ancien style sur TOUT le
 *     site (homepage incluse) + luxury scopé au seul body du calculateur.
 *     Sur le calculateur, ce CSS reste DORMANT (les CSS studio LM-light
 *     prennent toujours le dessus dans la zone .solea-studio). Il reste prêt
 *     à servir pour un futur mode "preview luxe" / récap PDF imprimable.
 *
 * Enqueue : functions.php → `is_page('estimer-mon-projet')` uniquement.
 *
 * Principes d'origine (inspirés des marques de luxe) :
 *   1. Typo serif élégante (Cormorant Garamond) pour les titres + Inter sans-serif pour le corps
 *   2. Palette monochrome NOIR PROFOND + CHAMPAGNE discret + CRÈME (au lieu de l'or jaune vif)
 *   3. Espacements généreux (60-120 px verticaux)
 *   4. Animations subtiles fade-in + parallax léger
 *   5. Hairlines (1 px) au lieu de bordures épaisses
 *   6. Boutons rectangulaires fins avec lettrage espacé (letter-spacing 0.15em)
 *   7. Hover transformations minuscules (translate Y 1-2px max)
 *   8. Photos plein cadre, sans cadres ni framing décoratifs
 *   9. Pas de gradients flashy — flat colors + très subtiles ombres portées
 *  10. Microcopy à la 3e personne, registre soutenu
 *
 * Cible : body.page-estimer (alias body.solea-studio-active) uniquement.
 *   - La règle :root reste globale, mais comme le fichier n'est plus enqueue
 *     ailleurs, les variables --lux-* ne polluent aucune autre page.
 *   - Aucun sélecteur non scopé ne peut atteindre une autre page.
 */

/* ═══════════════════════════════════════════════════════════════
 * PALETTE LUXE — variables CSS utilisées par les règles scopées ci-dessous.
 * V20.37.6 luxury scoped calculateur : ces variables ne fuient pas car
 * luxury-theme.css n'est plus chargé que sur /estimer-mon-projet/.
 * ═══════════════════════════════════════════════════════════════ */
:root {
  /* Couleurs primaires */
  --lux-ink:         #0a0a0c;   /* Noir d'encre profond — pas pur noir */
  --lux-ink-soft:    #1a1a1f;   /* Noir doux pour panneaux */
  --lux-paper:       #faf8f3;   /* Crème ivoire (au lieu de blanc vif) */
  --lux-paper-warm:  #f0ebe0;   /* Crème ambrée pour fonds chauds */

  /* Champagne — accent luxe (remplace l'or jaune vif #f6b72c) */
  --lux-champagne:        #c9a96a;   /* Champagne classique Audemars Piguet-like */
  --lux-champagne-deep:   #a88848;   /* Hover/active */
  --lux-champagne-pale:   #e8d9b8;   /* Background subtle */

  /* Bronze pour Ferrari-touch (rouge profond très discret en accent rare) */
  --lux-bronze:    #6b3e2a;
  --lux-burgundy:  #4a1e1e;     /* Pour exceptionnel uniquement, jamais sur fond */

  /* Hairlines & dividers */
  --lux-line:         rgba(10, 10, 12, 0.08);
  --lux-line-strong:  rgba(10, 10, 12, 0.16);
  --lux-line-light:   rgba(250, 248, 243, 0.10);  /* sur fond sombre */

  /* Typo */
  --lux-serif:   'Cormorant Garamond', 'EB Garamond', Georgia, 'Times New Roman', serif;
  --lux-sans:    'Inter', 'SF Pro Display', system-ui, -apple-system, sans-serif;
  --lux-mono:    'IBM Plex Mono', 'JetBrains Mono', monospace;

  /* Spacings (généreux comme dans le luxe) */
  --lux-space-xs: 6px;
  --lux-space-sm: 12px;
  --lux-space-md: 24px;
  --lux-space-lg: 48px;
  --lux-space-xl: 96px;
  --lux-space-2xl: 144px;

  /* Ombres très subtiles */
  --lux-shadow-sm: 0 1px 2px rgba(10, 10, 12, 0.04);
  --lux-shadow-md: 0 4px 16px rgba(10, 10, 12, 0.06);
  --lux-shadow-lg: 0 12px 40px rgba(10, 10, 12, 0.08);

  /* Transitions */
  --lux-ease:        cubic-bezier(0.22, 0.61, 0.36, 1);
  --lux-duration:    420ms;
  --lux-duration-fast: 220ms;
}

/* ═══════════════════════════════════════════════════════════════
 * GOOGLE FONTS — Cormorant Garamond (luxe) + Inter (corps)
 * V20.37.6 luxury scoped calculateur : @import en tête du fichier reste
 * benin car le fichier n'est chargé que sur la page calculateur.
 * Les Cormorant Garamond italic 400/500 sont déjà self-hosted via fonts.css
 * (V20.35 RGPD-conforme) — l'@import sert ici aux poids supplémentaires
 * (400/500/600/700 normal + 1,400/1,500 italic) et au IBM Plex Mono.
 * ═══════════════════════════════════════════════════════════════ */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&family=Inter:wght@300;400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap');

/* ═══════════════════════════════════════════════════════════════
 * HERO LUXE — refonte radicale du hero pour faire "luxe immédiat"
 * V20.37.6 luxury scoped calculateur : scopé body.page-estimer (alias
 * body.solea-studio-active). Le calculateur n'a pas de .hero classique
 * — ces règles sont conservées comme base pour un futur mode preview luxe.
 * ═══════════════════════════════════════════════════════════════ */
body.page-estimer .hero,
body.solea-studio-active .hero,
body.page-estimer .hero-luxury,
body.solea-studio-active .hero-luxury {
  position: relative;
  min-height: 92vh;
  background: var(--lux-ink);
  overflow: hidden;
}
body.page-estimer .hero-image img,
body.solea-studio-active .hero-image img,
body.page-estimer .hero-luxury img,
body.solea-studio-active .hero-luxury img {
  filter: brightness(0.85) contrast(1.05);
  transition: filter var(--lux-duration) var(--lux-ease);
}
body.page-estimer .quote-bar,
body.solea-studio-active .quote-bar {
  background: transparent !important;
  padding: 0;
  min-height: 0;
  position: absolute;
  bottom: 35%;
  left: 50%;
  transform: translateX(-50%);
  width: auto;
  max-width: 800px;
  z-index: 4;
  font-family: var(--lux-serif) !important;
  font-style: italic;
  font-weight: 400;
  font-size: clamp(22px, 3vw, 36px) !important;
  line-height: 1.45 !important;
  color: var(--lux-paper) !important;
  letter-spacing: 0.005em !important;
  text-shadow: 0 2px 24px rgba(0, 0, 0, 0.4);
}
body.page-estimer .quote-bar::before,
body.solea-studio-active .quote-bar::before,
body.page-estimer .quote-bar::after,
body.solea-studio-active .quote-bar::after {
  display: none;
}

/* ═══════════════════════════════════════════════════════════════
 * CTA HERO — boutons luxe (remplace les CTAs jaune vif)
 * V20.37.6 luxury scoped calculateur : scopé body.page-estimer uniquement.
 * ═══════════════════════════════════════════════════════════════ */
body.page-estimer .hero-cta-bar,
body.solea-studio-active .hero-cta-bar {
  bottom: 20%;
  gap: 24px;
}
body.page-estimer .hero-cta,
body.solea-studio-active .hero-cta {
  padding: 18px 42px !important;
  font-family: var(--lux-sans) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.20em !important;
  text-transform: uppercase;
  border-radius: 0 !important;            /* rectangulaire, pas arrondi (style RM/AP) */
  border: 1px solid transparent;
  transition: all var(--lux-duration) var(--lux-ease);
  box-shadow: none !important;
}
body.page-estimer .hero-cta--primary,
body.solea-studio-active .hero-cta--primary {
  background: var(--lux-champagne) !important;
  color: var(--lux-ink) !important;
  border-color: var(--lux-champagne) !important;
}
body.page-estimer .hero-cta--primary:hover,
body.solea-studio-active .hero-cta--primary:hover {
  background: transparent !important;
  color: var(--lux-paper) !important;
  border-color: var(--lux-paper) !important;
  transform: translateY(-1px) !important;
}
body.page-estimer .hero-cta--ghost,
body.solea-studio-active .hero-cta--ghost {
  background: transparent !important;
  color: var(--lux-paper) !important;
  border: 1px solid rgba(250, 248, 243, 0.4) !important;
  backdrop-filter: none !important;
}
body.page-estimer .hero-cta--ghost:hover,
body.solea-studio-active .hero-cta--ghost:hover {
  border-color: var(--lux-champagne) !important;
  color: var(--lux-champagne) !important;
}

/* ═══════════════════════════════════════════════════════════════
 * HEADER NAVIGATION — minimaliste, hairlines, typo Inter weight 500
 * V20.37.6 luxury scoped calculateur : scopé body.page-estimer. Sur la
 * page calculateur, le header WP est masqué par .solea-studio-mode mais
 * ces règles restent neutres en attendant.
 * ═══════════════════════════════════════════════════════════════ */
body.page-estimer header,
body.solea-studio-active header,
body.page-estimer header.lux-header,
body.solea-studio-active header.lux-header {
  background: rgba(10, 10, 12, 0.0) !important;
  backdrop-filter: blur(12px) !important;
  border-bottom: 1px solid var(--lux-line-light) !important;
  transition: background var(--lux-duration) var(--lux-ease);
}
body.page-estimer header nav a,
body.solea-studio-active header nav a,
body.page-estimer header.lux-header nav a,
body.solea-studio-active header.lux-header nav a {
  font-family: var(--lux-sans) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase;
  color: var(--lux-paper) !important;
  opacity: 0.85;
  transition: opacity var(--lux-duration-fast) var(--lux-ease), color var(--lux-duration-fast) var(--lux-ease);
}
body.page-estimer header nav a:hover,
body.solea-studio-active header nav a:hover,
body.page-estimer header.lux-header nav a:hover,
body.solea-studio-active header.lux-header nav a:hover {
  opacity: 1;
  color: var(--lux-champagne) !important;
}

/* ═══════════════════════════════════════════════════════════════
 * TITRES — Cormorant Garamond, italic discret, kerning serré
 * V20.37.6 luxury scoped calculateur : scopé body.page-estimer uniquement.
 * Les titres .lux opt-in et h*.lux restent disponibles pour usage explicite
 * dans le contenu de la page calculateur (récap PDF, preview luxe).
 * ═══════════════════════════════════════════════════════════════ */
body.page-estimer h1.lux,
body.solea-studio-active h1.lux,
body.page-estimer .lux h1,
body.solea-studio-active .lux h1,
body.page-estimer h2.lux,
body.solea-studio-active h2.lux,
body.page-estimer .lux h2,
body.solea-studio-active .lux h2,
body.page-estimer h3.lux,
body.solea-studio-active h3.lux,
body.page-estimer .lux h3,
body.solea-studio-active .lux h3,
body.page-estimer section h2,
body.solea-studio-active section h2,
body.page-estimer section h3,
body.solea-studio-active section h3 {
  font-family: var(--lux-serif) !important;
  font-weight: 500 !important;
  letter-spacing: -0.005em !important;
  line-height: 1.15 !important;
  color: var(--lux-ink);
}
body.page-estimer section h2,
body.solea-studio-active section h2 {
  font-size: clamp(32px, 4vw, 56px);
  margin-bottom: var(--lux-space-md);
}
body.page-estimer section h3,
body.solea-studio-active section h3 {
  font-size: clamp(22px, 2.4vw, 32px);
}
body.page-estimer .section-eyebrow,
body.solea-studio-active .section-eyebrow {
  font-family: var(--lux-sans);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--lux-champagne);
  margin-bottom: var(--lux-space-sm);
  display: block;
}

/* ═══════════════════════════════════════════════════════════════
 * INTRO BAND — espacement généreux + typo Inter 300 (light)
 * V20.37.6 luxury scoped calculateur : scopé body.page-estimer.
 * ═══════════════════════════════════════════════════════════════ */
body.page-estimer .intro,
body.solea-studio-active .intro {
  padding: var(--lux-space-xl) 0 !important;
  background: var(--lux-paper) !important;
}
body.page-estimer .intro p,
body.solea-studio-active .intro p {
  font-family: var(--lux-sans);
  font-size: clamp(16px, 1.6vw, 20px);
  font-weight: 300;
  line-height: 1.75;
  color: var(--lux-ink-soft);
  letter-spacing: 0.005em;
}
body.page-estimer .intro strong,
body.solea-studio-active .intro strong {
  font-weight: 500;
  color: var(--lux-ink);
}

/* ═══════════════════════════════════════════════════════════════
 * CARDS PRESTATIONS — flat, hairlines, hover subtil scale (zero on framing)
 * V20.37.6 luxury scoped calculateur : scopé body.page-estimer.
 * ═══════════════════════════════════════════════════════════════ */
body.page-estimer .mini-card,
body.solea-studio-active .mini-card {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  overflow: hidden;
  transition: transform var(--lux-duration) var(--lux-ease);
}
body.page-estimer .mini-card:hover,
body.solea-studio-active .mini-card:hover {
  transform: translateY(-4px);
}
body.page-estimer .mini-card-media,
body.solea-studio-active .mini-card-media,
body.page-estimer .mini-card-image,
body.solea-studio-active .mini-card-image {
  border-radius: 0 !important;
  overflow: hidden;
  position: relative;
}
body.page-estimer .mini-card-media img,
body.solea-studio-active .mini-card-media img,
body.page-estimer .mini-card-image img,
body.solea-studio-active .mini-card-image img {
  transition: transform 1.2s var(--lux-ease);
  filter: brightness(0.92);
}
body.page-estimer .mini-card:hover .mini-card-media img,
body.solea-studio-active .mini-card:hover .mini-card-media img,
body.page-estimer .mini-card:hover .mini-card-image img,
body.solea-studio-active .mini-card:hover .mini-card-image img {
  transform: scale(1.04);
  filter: brightness(1);
}
body.page-estimer .mini-card-title,
body.solea-studio-active .mini-card-title,
body.page-estimer .mini-card h3,
body.solea-studio-active .mini-card h3 {
  font-family: var(--lux-serif) !important;
  font-weight: 500;
  font-size: 22px;
  margin-top: var(--lux-space-sm);
  color: var(--lux-ink);
}
/* Désactive les frames décoratifs (les "L" coins jaunes) */
body.page-estimer .framed-card,
body.solea-studio-active .framed-card,
body.page-estimer .frame-top-left,
body.solea-studio-active .frame-top-left,
body.page-estimer .frame-top-right,
body.solea-studio-active .frame-top-right,
body.page-estimer .frame-bottom-left,
body.solea-studio-active .frame-bottom-left,
body.page-estimer .frame-bottom-right,
body.solea-studio-active .frame-bottom-right,
body.page-estimer .frame-image4-corner,
body.solea-studio-active .frame-image4-corner {
  position: static !important;
}
body.page-estimer .framed-card::before,
body.solea-studio-active .framed-card::before,
body.page-estimer .framed-card::after,
body.solea-studio-active .framed-card::after,
body.page-estimer .frame-top-left::before,
body.solea-studio-active .frame-top-left::before,
body.page-estimer .frame-top-right::before,
body.solea-studio-active .frame-top-right::before,
body.page-estimer .frame-bottom-left::after,
body.solea-studio-active .frame-bottom-left::after,
body.page-estimer .frame-bottom-right::after,
body.solea-studio-active .frame-bottom-right::after {
  display: none !important;
}

/* ═══════════════════════════════════════════════════════════════
 * SPLIT ROWS (Particuliers / Professionnels) — typo + espacements luxe
 * V20.37.6 luxury scoped calculateur : scopé body.page-estimer.
 * ═══════════════════════════════════════════════════════════════ */
body.page-estimer .split-row,
body.solea-studio-active .split-row {
  padding: var(--lux-space-xl) 0;
  gap: var(--lux-space-lg);
}
body.page-estimer .split-row h3,
body.solea-studio-active .split-row h3,
body.page-estimer .split-row h2,
body.solea-studio-active .split-row h2 {
  font-family: var(--lux-serif) !important;
  font-weight: 500 !important;
  letter-spacing: -0.005em;
}
body.page-estimer .split-row p,
body.solea-studio-active .split-row p {
  font-family: var(--lux-sans);
  font-weight: 300;
  font-size: 17px;
  line-height: 1.75;
  color: var(--lux-ink-soft);
}
body.page-estimer .split-row .cta-link,
body.solea-studio-active .split-row .cta-link,
body.page-estimer .split-row a.btn,
body.solea-studio-active .split-row a.btn,
body.page-estimer .split-row .audience-cta,
body.solea-studio-active .split-row .audience-cta {
  font-family: var(--lux-sans) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase;
  padding: 16px 32px !important;
  border-radius: 0 !important;
  border: 1px solid var(--lux-ink) !important;
  background: transparent !important;
  color: var(--lux-ink) !important;
  transition: all var(--lux-duration) var(--lux-ease);
}
body.page-estimer .split-row .cta-link:hover,
body.solea-studio-active .split-row .cta-link:hover,
body.page-estimer .split-row a.btn:hover,
body.solea-studio-active .split-row a.btn:hover,
body.page-estimer .split-row .audience-cta:hover,
body.solea-studio-active .split-row .audience-cta:hover {
  background: var(--lux-ink) !important;
  color: var(--lux-paper) !important;
}

/* ═══════════════════════════════════════════════════════════════
 * BOTTOM LINKS (Notre engagement / A propos) — hairlines + uppercase typo
 * V20.37.6 luxury scoped calculateur : scopé body.page-estimer.
 * ═══════════════════════════════════════════════════════════════ */
body.page-estimer .separator,
body.solea-studio-active .separator { display: none; }
body.page-estimer .bottom-links h3,
body.solea-studio-active .bottom-links h3,
body.page-estimer .bottom-links h4,
body.solea-studio-active .bottom-links h4 {
  font-family: var(--lux-serif) !important;
  font-weight: 500 !important;
  font-style: italic;
}
body.page-estimer .bottom-links a,
body.solea-studio-active .bottom-links a {
  font-family: var(--lux-sans) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase;
}

/* ═══════════════════════════════════════════════════════════════
 * FOOTER — palette noir + champagne, alignement justifié
 * V20.37.6 luxury scoped calculateur : footer noir/champagne SCOPÉ
 * body.page-estimer uniquement. L'ancien comportement (footer global
 * noir/champagne via footer.footer) est SUPPRIMÉ — restauration de
 * l'identité Soléa pré-luxury V20.35 (footer or/Soléa standard).
 * ═══════════════════════════════════════════════════════════════ */
body.page-estimer footer.footer,
body.solea-studio-active footer.footer,
body.page-estimer footer,
body.solea-studio-active footer {
  background: var(--lux-ink) !important;
  color: var(--lux-paper) !important;
  padding: var(--lux-space-xl) 0 var(--lux-space-md) !important;
}
body.page-estimer footer.footer a,
body.solea-studio-active footer.footer a,
body.page-estimer footer a,
body.solea-studio-active footer a {
  color: var(--lux-paper) !important;
  opacity: 0.7;
  font-family: var(--lux-sans);
  font-size: 12px;
  letter-spacing: 0.05em;
  transition: opacity var(--lux-duration-fast) var(--lux-ease);
}
body.page-estimer footer.footer a:hover,
body.solea-studio-active footer.footer a:hover,
body.page-estimer footer a:hover,
body.solea-studio-active footer a:hover {
  opacity: 1;
  color: var(--lux-champagne) !important;
}

/* ═══════════════════════════════════════════════════════════════
 * COOKIE BANNER — moins flashy, plus discret
 * V20.37.6 luxury scoped calculateur : scopé body.page-estimer pour ne
 * plus altérer le cookie banner sur le reste du site (qui retrouve son
 * style pré-luxury).
 * ═══════════════════════════════════════════════════════════════ */
body.page-estimer .cookie-banner,
body.solea-studio-active .cookie-banner,
body.page-estimer [id*="cookie"],
body.solea-studio-active [id*="cookie"] {
  background: var(--lux-ink-soft) !important;
  border-top: 1px solid var(--lux-champagne) !important;
}

/* ═══════════════════════════════════════════════════════════════
 * ANIMATIONS SUBTILES — fade-in on scroll (avec IntersectionObserver côté JS)
 * V20.37.6 luxury scoped calculateur : .lux-fade-in scopé body.page-estimer.
 * Aucune utilisation dans le reste du site (audit Grep : 0 occurrence du
 * className "lux-fade-in" hors luxury-theme.css lui-même).
 * ═══════════════════════════════════════════════════════════════ */
body.page-estimer .lux-fade-in,
body.solea-studio-active .lux-fade-in {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.8s var(--lux-ease), transform 0.8s var(--lux-ease);
}
body.page-estimer .lux-fade-in.is-visible,
body.solea-studio-active .lux-fade-in.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Cursor élégant sur les éléments cliquables principaux */
/* V20.37.6 luxury scoped calculateur : scopé body.page-estimer. */
body.page-estimer .hero-cta,
body.solea-studio-active .hero-cta,
body.page-estimer .cta-link,
body.solea-studio-active .cta-link,
body.page-estimer .audience-cta,
body.solea-studio-active .audience-cta,
body.page-estimer header nav a,
body.solea-studio-active header nav a {
  cursor: pointer;
}

/* ═══════════════════════════════════════════════════════════════
 * SUPPRESSION des éléments qui font "vieux"
 * V20.37.6 luxury scoped calculateur : scopé body.page-estimer pour ne
 * plus masquer les traits dorés signature des pages internes
 * (composition-decor, separator-half, left-tab, right-tab) qui font partie
 * de l'identité Soléa restaurée pré-luxury.
 * ═══════════════════════════════════════════════════════════════ */
body.page-estimer .composition-decor,
body.solea-studio-active .composition-decor,
body.page-estimer [class*="separator-half"],
body.solea-studio-active [class*="separator-half"],
body.page-estimer [class*="left-tab"],
body.solea-studio-active [class*="left-tab"],
body.page-estimer [class*="right-tab"],
body.solea-studio-active [class*="right-tab"] {
  display: none !important;
}

/* Loader fantôme dans le footer (audit O-004)
 * V20.37.6 luxury scoped calculateur : scopé body.page-estimer.
 * Le sélecteur d'ID/class spécifiques restait benin sur les autres pages
 * mais on respecte le principe "luxury = calculateur uniquement". */
body.page-estimer #solea-construction-mark.is-loading,
body.solea-studio-active #solea-construction-mark.is-loading,
body.page-estimer .solea-loader-stub,
body.solea-studio-active .solea-loader-stub {
  display: none !important;
}

/* ═══════════════════════════════════════════════════════════════
 * RESPONSIVE
 * V20.37.6 luxury scoped calculateur : règles scopées body.page-estimer.
 * La redéfinition des --lux-* dans :root reste sans impact car le fichier
 * n'est plus enqueue ailleurs.
 * ═══════════════════════════════════════════════════════════════ */
@media (max-width: 720px) {
  :root {
    --lux-space-xl: 56px;
    --lux-space-2xl: 88px;
  }
  body.page-estimer .quote-bar,
  body.solea-studio-active .quote-bar {
    bottom: 42%;
    padding: 0 24px;
  }
  body.page-estimer .hero-cta-bar,
  body.solea-studio-active .hero-cta-bar {
    bottom: 12%;
    gap: 12px;
  }
  body.page-estimer .hero-cta,
  body.solea-studio-active .hero-cta {
    padding: 14px 24px !important;
    font-size: 11px !important;
  }
  body.page-estimer section h2,
  body.solea-studio-active section h2 { font-size: clamp(28px, 7vw, 40px); }
}
