/* Ferramenta: correzioni QA 18 ottobre 2026. Da caricare dopo il CSS del tema. */
:root { --fdt-qa-text:#545454; --fdt-qa-green:#146c35; }
body { color:var(--fdt-qa-text); }
main p, main li, main blockquote, main .page-body,
.grid-icons_description p, .grid-icons_description strong,
.service-box-icons_title-icon, .service-box-icons_title-icon li {
  color:var(--fdt-qa-text);
}
.header-contact-info p, .header-contact-info .links a,
.header-contact-info .text-holder a, .header-contact-info address p,
.header-contact-info__item p, .header-contact-info__item a { color:#545454; }
.home-local-intro__whatsapp,
.home-local-intro__whatsapp:hover,
.home-local-intro__whatsapp:focus { background:#146c35!important; color:#fff!important; }
.hero-banner__title, .hero-banner__title a, .hero-banner__phone { color:#173a2d!important; }
.hero-banner__title .icon, .hero-banner__phone .icon { fill:currentColor; }
.hero-banner__content .checked-list li { color:#14602b; }
footer, footer p, footer a, footer li, footer .text-holder,
footer .text-holder a, footer .footer-widget ul li a { color:#d0d0d0; }
footer .row > *, footer .list-inline-item, footer .text-holder { min-width:0; }
footer a[href^="mailto:"] { overflow-wrap:anywhere; word-break:normal; }
main a:focus-visible, footer a:focus-visible, .navbar-toggle:focus-visible,
#menu-main-nav a:focus-visible { outline:3px solid #103f2d; outline-offset:4px; }
footer a:focus-visible { outline-color:#ffb44e; }
@media(max-width:767px) {
  body.fdt-qa-direct-contact .whatsapp-chat { display:none!important; }
  #menu-main-nav[inert] { visibility:hidden; }
  #menu-main-nav:not([inert]) { overflow-y:auto; overscroll-behavior:contain; }
}
@media(prefers-reduced-motion:reduce) {
  #menu-main-nav, .navbar-toggle { transition:none!important; }
}
/* Link nel testo: colore scuro e sottolineatura, senza toccare le CTA. */
main .page-body p a, main .page-body li a { color:#155c36; text-decoration:underline; text-underline-offset:3px; }
.header address p, .header .text-holder p { color:#545454; }
.header .text-holder p, .header address p { color:#545454!important; }
.whatsapp-chat .btn-whatsapp { background:#146c35!important; }
@media(min-width:768px) {
  #menu-main-nav > li > a { color:#173a2d; }
  #menu-main-nav > li > a:hover, #menu-main-nav > li > a:focus { color:#173a2d;text-decoration:underline;text-underline-offset:5px; }
}
/* Accenti arancioni su fondo bianco: tonalità più scura per il testo. */
main .page-body span[style*="#ff8a00" i], main .subtitle[style*="#ff8a00" i] { color:#954800!important; }
main .page-body a:not([class]):not([style*="background" i]) { color:#155c36;text-decoration:underline;text-underline-offset:3px; }
main span[style*="#ff8a00" i] { color:#954800!important; }
main a[data-type="page"] { color:#155c36;text-decoration:underline;text-underline-offset:3px; }
@media(max-width:767px) {
  #menu-main-nav:not([inert]) { top:0!important;padding-top:12px; }
}
/* I pulsanti dei servizi conservano testo bianco sul fondo verde. */
main .page-body .fdtup-service-actions a { color:#fff!important;text-decoration:none; }
footer { background:#242424; }
footer .footer-bottom { background:#1c1c1c; }
.header .logo img { width:min(100%,400px);height:auto; }
@media(max-width:767px) { .header .logo img {width:min(100%,234px);} }
footer .footer-logo img { max-width:200px;width:min(100%,200px);height:auto; }

@media(max-width:360px) {
  .hero-banner__title {gap:14px;font-size:58px;padding:14px 20px;}
  .hero-banner__title svg {width:64px;height:64px;}
}
@media(max-width:360px) {
  .hero-banner__phone {max-width:calc(100% - 24px);font-size:30px;padding:12px 18px;gap:10px;}
  .hero-banner__phone .icon {width:28px;height:28px;}
}

.google-reviews-component .ti-widget.ti-goog .ti-rating-text {display:flex!important;flex-wrap:wrap!important;white-space:normal!important;gap:0 .25em;justify-content:center;max-width:100%;}
@media(max-width:360px) {
  body:has(.home-local-intro) .header .header-contact-info__item.d-md-none {flex-direction:column!important;gap:5px;min-height:68px;}
  .hero-banner__title {font-size:clamp(42px,14vw,52px);padding:14px 16px;gap:12px;}
  .hero-banner__title svg {width:58px;height:58px;}
}

/* Rifiniture emerse nel collaudo del sito pubblico. */
@media(max-width:360px) {
  .header .logo img { max-width:calc(100vw - 130px); }
}
@media(min-width:768px) {
  #menu-main-nav > li > a,
  #menu-main-nav > li > a:hover,
  #menu-main-nav > li > a:focus { color:#173a2d!important; }
}

/* Il menu mobile si allinea al logo, anche dopo il ridimensionamento. */
@media(max-width:767px) {
  .header .mainmenu:not(.active) .navbar-toggle:not(.active) {
    top:var(--fdt-qa-menu-top, -60px)!important;
    transition-property:opacity, background-color, border-color;
  }
}

/* Servizi della home: tutta la voce apre la pagina corrispondente. */
.hero-banner__subtitle .fdt-qa-service-link {
  display:block;
  min-height:44px;
  color:inherit;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:.15em;
}
.hero-banner__subtitle .fdt-qa-service-link:hover { color:#0d4f27; }
