/* Correzioni grafiche del 20/10/2026 (G1-G17 del resoconto di Claudio-ADS). Caricato dopo tutti gli altri fogli. */

/* G1 - titolo principale sempre bianco sul fondo blu (servizi e zone) */
main .hero-title, main .hero-title .hero-title-accent, main .hero-section_title, main .hero-subtitle { color: #fff !important; }
main .hero-title .hero-title-accent { color: #ff4b55 !important; }

/* G2 - riquadro finale «Problemi con la caldaia?» / «Assistenza Caldaie [comune]» leggibile */
.cta-box .cta-title, .cta-box .cta-desc, .cta-box .cta-feature, .cta-box .cta-feature span,
.zone-cta .zone-cta-title, .zone-cta-box h2, .zone-cta-box h3, .zone-cta-box p, .zone-cta h2, .zone-cta p { color: #fff !important; }

/* G3 - schede dei servizi nelle pagine marca: la scritta in fondo si legge sempre */
.service-card .service-more { display: inline-flex; align-items: center; gap: 6px; margin-top: 12px; color: #e30713; font-weight: 600; font-size: 15px; }
.service-card .service-more svg { width: 16px; height: 16px; }

/* G4 - pulsanti: scritta bianca su rosso, mai rosso su rosso */
.wp-block-button__link, .wp-block-button__link:visited, a.btn-primary, a.btn--primary, .btn-call-now, .btn-call-now span {
  color: #fff !important;
}
.wp-block-button__link { background: #e30713 !important; border-color: #e30713 !important; }

/* G7 - le foto di Felice si vedono INTERE, nelle loro proporzioni: niente ritaglio, niente riquadro
   chiaro sotto, niente angoli arrotondati che mangiano l'immagine. In testata la foto sta direttamente
   sul blu della pagina. */
.entry-header.hero-section--internal .hero-figure, .hero-figure, figure.hero-figure,
.error-card__figure, .error-carousel__media, .error-carousel__figure {
  background: transparent !important; box-shadow: none !important; border-radius: 0 !important; overflow: visible !important;
}
.entry-header.hero-section--internal .hero-figure img, .hero-figure img, figure.hero-figure img,
.error-carousel__image, .error-carousel img, .error-carousel__track img, .error-card__image, .error-card img,
.codes-grid img, .error-codes-grid img, .code-card img {
  width: 100% !important; height: auto !important; aspect-ratio: auto !important;
  object-fit: initial !important; background: transparent !important; border-radius: 0 !important;
}

/* G9 - loghi delle marche a colori pieni */
.brand-logo, .brand-logo img, .brand-card img, .brands-grid img, .zone-brands img, .general-brands img, .footer-brands img {
  filter: none !important; opacity: 1 !important;
}

/* G14 - al telefono il testo non si giustifica */
@media (max-width: 900px) {
  html body .site-main p, html body .site-main li, html body .site-main .section-desc,
  html body .site-main .entry-content p, html body .site-main .service-main .entry-content p,
  html body .site-main .wp-block-paragraph, html body .site-main article p { text-align: left !important; hyphens: manual; }
}

/* G15 - barra Chiama/WhatsApp: da computer due bottoni piccoli che non coprono il testo */
body { padding-bottom: 84px; }
@media (min-width: 1024px) {
  .acv-contact-bar { right: 16px; bottom: 16px; padding: 6px; gap: 6px; border-radius: 12px; }
  .acv-contact-bar a { min-height: 40px; padding: 8px 14px; font-size: 13px; }
  body { padding-bottom: 70px; }
}

/* T3 - WhatsApp accanto a ogni «Chiama» */
a.acv-wa, a.acv-wa:visited { background: #146c48 !important; border-color: #146c48 !important; color: #fff !important; display: inline-flex; align-items: center; justify-content: center; gap: 8px; }
a.acv-wa:hover { background: #0f5a3b !important; }
a.acv-wa svg { flex: none; }
.hero-cta, .cta-buttons, .zone-cta-buttons, .cta-urgente-action, .error-codes-footer, .mobile-menu-cta, .c-azione, .acv-coppia-riga {
  display: flex; flex-wrap: wrap; gap: 10px; align-items: center;
}
.cta-urgente-action { flex-direction: column; align-items: flex-start; }
.cta-urgente-action .btn-call-now.acv-wa { margin-top: 4px; }
.wp-block-button + .acv-wa, .wp-block-button__link.acv-wa { margin-left: 8px; }
@media (min-width: 1024px) { .header-cta { gap: 8px; } }
.header-cta a.header-wa { width: 44px; min-width: 44px; height: 44px; padding: 0 !important; border-radius: 10px; }
.mobile-menu-cta a.acv-wa { width: 100%; }
.footer-contact-info { display: flex; flex-direction: column; gap: 10px; }
.footer-contact-info a.footer-wa { color: #9fe3c2 !important; }

/* Coppia Chiama + WhatsApp, una per sezione */
.acv-coppia { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin: 28px 0 8px; }
.acv-coppia--centro { justify-content: center; }
.acv-coppia a.btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 50px; padding: 12px 24px; border-radius: 10px; font-weight: 600; text-decoration: none; }
.acv-coppia a.acv-chiama, .acv-coppia a.acv-chiama:visited { background: #e30713; color: #fff; }
@media (max-width: 600px) { .acv-coppia a.btn { flex: 1 1 100%; } }

/* Promesse degli annunci sulle pagine */
.acv-garanzie { padding: 56px 0; background: #0f2440; color: #fff; }
.acv-garanzie .container { max-width: 1100px; margin: 0 auto; padding: 0 20px; }
.acv-garanzie__titolo { color: #fff !important; font-size: clamp(24px, 4vw, 34px); line-height: 1.2; margin: 0 0 14px; text-align: left; }
.acv-garanzie__urgenza { color: #dbe5f1; font-size: 17px; line-height: 1.6; margin: 0 0 26px; max-width: 760px; text-align: left; }
.acv-garanzie__urgenza strong { color: #fff; }
.acv-garanzie__lista { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 14px; }
.acv-garanzie__lista li { background: #17335a; border-radius: 12px; padding: 18px 20px; border-left: 4px solid #e30713; text-align: left; }
.acv-garanzie__lista li strong { display: block; color: #fff; font-size: 17px; margin-bottom: 4px; }
.acv-garanzie__lista li span { color: #c9d6e6; font-size: 15px; line-height: 1.5; }
.acv-garanzie .acv-coppia { margin-top: 30px; }

/* Schede delle cause senza foto ripetuta: un po' di respiro sopra il titolo */
.interactive-card { padding-top: 6px; }

/* Pulsanti senza sottolineatura anche dentro i testi delle pagine; respiro sotto la testata delle pagine semplici */
.acv-coppia a, .hero-cta a, a.acv-wa, .page-content .hero-cta a { text-decoration: none !important; }
.page-single .page-content { padding-top: 28px; }

/* Felice 20/10: al telefono rientri laterali bassi, pagina larga e più corta (anche la barra in alto) */
@media (max-width: 600px) {
  html body .container, html body .header-container, html body .site-header .container,
  html body .acv-garanzie .container, html body .page-header .container {
    padding-left: 12px !important; padding-right: 12px !important;
  }
  html body .footer-grid, html body .footer-bottom-inner { padding-left: 0 !important; padding-right: 0 !important; }
  html body .interactive-card, html body .interactive-card__content, html body .error-card__body, html body .error-card__content,
  html body .service-card, html body .trust-bar-item, html body .method-list > li, html body .card, html body .card-grid > * {
    padding-left: 14px !important; padding-right: 14px !important;
  }
  html body .faq-item .faq-toggle, html body .faq-item .faq-question-title, html body .faq-item .faq-answer { padding-left: 12px !important; padding-right: 12px !important; }
  html body .cta-urgente-box, html body .cta-box { padding-left: 14px !important; padding-right: 14px !important; }
  html body .cta-urgente-content, html body .cta-urgente-action { padding-left: 0 !important; padding-right: 0 !important; }
  html body .acv-garanzie__lista { padding-left: 0 !important; margin-left: 0 !important; }
  html body .acv-garanzie__lista li { padding: 14px 14px !important; }
  html body main ul:not(.acv-garanzie__lista), html body main ol { padding-left: 18px !important; }
  html body .entry-header, html body .hero-section, html body .general-hero, html body .general-intro { padding-left: 0 !important; padding-right: 0 !important; }
}
@media (max-width: 600px) {
  html body .container, html body .header-container { margin-left: 0 !important; margin-right: 0 !important; width: 100% !important; max-width: 100% !important; box-sizing: border-box; }
  html body .interactive-card { padding-left: 0 !important; padding-right: 0 !important; }
  html body .wp-block-group, html body .service-inline-card, html body .hero-content, html body .zone-hero-content { padding-left: 12px !important; padding-right: 12px !important; }
  html body .hero-content, html body .zone-hero-content { padding-left: 0 !important; padding-right: 0 !important; }
  html body main li { padding-left: 0 !important; }
}
@media (max-width: 600px) {
  html body .entry-header.hero-section--internal .hero-figure { padding: 0 12px 16px !important; box-sizing: border-box; }
}
.entry-header .acv-sotto-coppia { margin: 18px 0 0; color: #dbe5f1; font-size: 15px; }
.entry-header .acv-coppia { margin-top: 14px; }

/* Felice 20/10: la foto ha il suo contenitore, con lo STESSO margine del contenitore del paragrafo.
   Una sola misura per tutti e due, così testo e foto sono allineati a destra e a sinistra. */
:root { --acv-margine: 12px; }
@media (min-width: 601px) { :root { --acv-margine: 24px; } }
@media (max-width: 600px) {
  html body .container, html body .header-container { padding-left: var(--acv-margine) !important; padding-right: var(--acv-margine) !important; }
  html body .entry-header.hero-section--internal .hero-figure { padding: 0 var(--acv-margine) 16px !important; margin: 0 !important; width: 100% !important; max-width: 100% !important; box-sizing: border-box; }
  html body .entry-header.hero-section--internal .hero-figure img { width: 100% !important; height: auto !important; display: block; }
}

/* ADS 07:40 punto 4: da computer la barra Chiama/WhatsApp non deve coprire il testo.
   Diventa due bottoni tondi incolonnati sul bordo destro, nel margine fuori dal testo. */
@media (min-width: 1024px) {
  .acv-contact-bar { right: 14px !important; bottom: 18px !important; flex-direction: column !important; padding: 6px !important; gap: 6px !important; border-radius: 30px !important; }
  .acv-contact-bar a { width: 50px !important; height: 50px !important; min-height: 50px !important; padding: 0 !important; border-radius: 50% !important; font-size: 0 !important; overflow: hidden; }
  .acv-contact-bar a::before { font-size: 0; }
  .acv-contact-bar a:not(.acv-whatsapp)::after { content: ""; width: 22px; height: 22px; background: no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='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.72 12.84 12.84 0 0 0 .7 2.81 2 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-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E"); }
  .acv-contact-bar a.acv-whatsapp::after { content: ""; width: 24px; height: 24px; background: no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M12.04 2a9.9 9.9 0 0 0-8.47 15.03L2 22l5.1-1.53A9.9 9.9 0 1 0 12.04 2zm0 18.1a8.2 8.2 0 0 1-4.18-1.15l-.3-.18-3.03.9.92-2.94-.2-.31a8.2 8.2 0 1 1 6.79 3.68z'/%3E%3C/svg%3E"); }
  body { padding-bottom: 24px !important; }
}

/* ADS 07:40 punto 2b: i pulsanti dei blocchi di testo come tutti gli altri «Chiama» */
.wp-block-button__link { display: inline-flex !important; align-items: center; justify-content: center; gap: 8px; min-height: 50px; padding: 12px 24px !important; border-radius: 10px !important; font-weight: 600; text-decoration: none !important; }
.wp-block-button { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }
@media (max-width: 600px) {
  html body .trust-grid { gap: 10px !important; }
  html body .trust-item { padding: 16px 12px !important; }
  html body .trust-stats { padding-left: 12px !important; padding-right: 12px !important; }
}

/* ===== Felice 20/10 08:49 ===== */
/* Barra in basso da telefono, come fabbro ed elettricista. Da computer non c'è: numero e WhatsApp sono in testata. */
.acv-contact-bar { display: none !important; }
.acv-barra { display: none; }
@media (max-width: 860px) {
  .acv-barra { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 990; gap: 8px; align-items: stretch;
    padding: 8px 10px calc(8px + env(safe-area-inset-bottom)); background: #0b1526; border-top: 1px solid #243a5c;
    box-shadow: 0 -8px 24px rgba(0, 0, 0, .45); }
  .acv-barra__chiama { flex: 1; display: flex; align-items: center; gap: 12px; min-height: 64px; padding: 6px 12px 6px 6px;
    background: #e30713; border-radius: 10px; color: #fff !important; text-decoration: none !important; }
  .acv-barra__chiama:active { background: #c5000b; }
  .acv-barra__disco { flex: none; width: 52px; height: 52px; border-radius: 8px; background: #fff; color: #e30713; display: grid; place-items: center; }
  .acv-barra__testi { display: grid; gap: 2px; min-width: 0; }
  .acv-barra__numero { font-size: 26px; font-weight: 700; line-height: 1.05; letter-spacing: .3px; white-space: nowrap; }
  .acv-barra__sotto { display: flex; align-items: center; gap: 6px; font-size: 11.5px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }
  .acv-barra__sotto::before { content: ""; flex: none; width: 9px; height: 9px; border-radius: 50%; background: #2ee66b; }
  .acv-barra__wa { flex: none; width: 64px; border-radius: 10px; background: #146c48; color: #fff !important; display: grid; place-items: center; }
  .acv-barra__wa svg { width: 30px; height: 30px; }
  html body { padding-bottom: 96px !important; }
}
@media (max-width: 360px) { .acv-barra__numero { font-size: 22px; } .acv-barra__wa { width: 56px; } }

/* Briciole: sottili, bianche sul blu, in fondo alla barra in alto, su tutte le pagine */
.acv-briciole { border-top: 1px solid rgba(255, 255, 255, .08); background: transparent; }
.acv-briciole .container { padding-top: 7px !important; padding-bottom: 8px !important; }
.acv-briciole ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 2px 0; font-size: 12.5px; line-height: 1.4; }
.acv-briciole li { color: rgba(255, 255, 255, .92); }
.acv-briciole li + li::before { content: "›"; margin: 0 8px; color: rgba(255, 255, 255, .55); }
.acv-briciole a { color: rgba(255, 255, 255, .78) !important; text-decoration: none; }
.acv-briciole a:hover { color: #fff !important; text-decoration: underline; }
.acv-briciole span[aria-current] { color: #fff; font-weight: 600; }
.site-header { height: auto !important; }

/* Riquadro «Errore … non risolto?»: tutto centrato, i due pulsanti affiancati */
.cta-urgente-box { display: flex !important; flex-direction: column !important; align-items: center !important; text-align: center !important; gap: 14px !important; }
.cta-urgente-box .cta-urgente-content { padding: 0 !important; }
.cta-urgente-box .cta-urgente-action { flex-direction: row !important; flex-wrap: wrap; justify-content: center !important; align-items: center !important; gap: 10px !important; }
.cta-urgente-box .cta-urgente-number { flex-basis: 100%; text-align: center; }

/* Guide: il testo a tutta larghezza (la seconda colonna, pensata per una foto, era vuota) */
.section--text:not(:has(> figure, > .section-media, > img)) { display: block !important; }
.section--text > .container { max-width: 900px; margin-left: auto; margin-right: auto; }
/* comuni a bottoncini anche in home */
.home-content .zones-grid { display: flex; flex-wrap: wrap; gap: 10px; margin: 14px 0 6px; }
.home-content .zone-tag { display: inline-flex; padding: 9px 16px; border-radius: 999px; background: #eef2f7; border: 1px solid #dce4ef; color: #1e3a5f !important; font-weight: 600; font-size: 14px; text-decoration: none !important; }
.home-content .zone-tag:hover { background: #e30713; border-color: #e30713; color: #fff !important; }
/* spunte delle promesse dentro i riquadri CTA */
.acv-spunte { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 16px; margin-top: 12px; }
.acv-spunte .cta-feature { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; color: #dbe5f1; }
.acv-spunte .cta-feature svg { color: #2ee66b; flex: none; }
.cta-box .cta-features { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 18px; }
/* briciole: striscia blu sottile subito sotto la barra in alto (fuori dall'header fisso, stile tutto suo) */
html body .acv-briciole { display: block; position: relative; z-index: 5; background: #0b1526 !important; border-top: 1px solid rgba(255,255,255,.08); border-bottom: 1px solid rgba(255,255,255,.06); }
html body .acv-briciole .container { max-width: 1200px; margin: 0 auto; padding-top: 7px !important; padding-bottom: 8px !important; }
html body .acv-briciole ol { list-style: none !important; margin: 0 !important; padding: 0 !important; display: flex !important; flex-wrap: wrap; align-items: center; font-size: 12.5px !important; line-height: 1.4 !important; }
html body .acv-briciole li { display: inline !important; margin: 0 !important; padding: 0 !important; color: #fff !important; font-size: 12.5px !important; }
html body .acv-briciole li + li::before { content: "›"; margin: 0 7px; color: rgba(255,255,255,.55); }
html body .acv-briciole a { color: rgba(255,255,255,.75) !important; font-size: 12.5px !important; font-weight: 400 !important; text-decoration: none !important; padding: 0 !important; background: none !important; }
html body .acv-briciole span[aria-current] { color: #fff !important; font-weight: 600; }
/* ADS 09:25: nei riquadri chiari (indici dei codici) le spunte vanno scure */
.acv-contact-options .acv-spunte .cta-feature, .section--light .acv-spunte .cta-feature, .acv-spunte--chiaro .cta-feature { color: #1e3a5f !important; }
.acv-contact-options .acv-spunte .cta-feature svg, .section--light .acv-spunte .cta-feature svg { color: #138a4b !important; }
/* il numero dentro il pulsante del riquadro urgente: stessa misura degli altri pulsanti Chiama */
.cta-urgente-action a.btn-call-now, .cta-urgente-action a.btn-call-now.acv-wa { font-size: 16px !important; padding: 12px 22px !important; min-height: 50px; display: inline-flex !important; align-items: center; gap: 8px; border-radius: 10px !important; }
.cta-urgente-action a.btn-call-now span { font-size: 16px !important; font-weight: 700 !important; color: #fff !important; }
/* /marche/: schede delle marche senza logo (Cosmogas, De Dietrich, Italtherm, Radiant, Savio, Sylber): il nome fa da logo */
.brand-card-nome .brand-logo-nome { display: flex !important; align-items: center; justify-content: center; min-height: 60px; font-weight: 800; font-size: 22px; letter-spacing: .03em; text-transform: uppercase; color: #1e3a5f; text-align: center; }
.brand-card-nome .brand-name { display: none; }
