/* =====================================================================
   BreAssicura - ritocchi estetici leggeri (non sostanziali)
   Caricato dopo main.css: rifiniture, non ridisegno.
   ===================================================================== */

/* Reso testo piu' nitido */
body{
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}

/* Scorrimento morbido per i link ancora del menu */
html{scroll-behavior:smooth;}

/* L'header e' fisso: evita che le sezioni finiscano sotto di esso
   quando ci si arriva da un link ancora */
#chisiamo,#auto,#contatti,#contattaci{scroll-margin-top:110px;}

/* Transizioni delicate su link e pulsanti */
a,.btn,button,.vc_btn3{transition:color .2s ease,background-color .2s ease,
  box-shadow .2s ease,transform .2s ease,opacity .2s ease;}

/* Micro sollevamento dei pulsanti al passaggio del mouse */
.vc_btn3:hover,.bre-form button[type=submit]:hover{
  transform:translateY(-1px);
  box-shadow:0 6px 18px rgba(15,76,129,.22);
}

/* Foto consulenti e staff: ombra piu' morbida e transizione */
.vc_single_image-img,.wpb_single_image img{transition:transform .25s ease,
  box-shadow .25s ease;}
.wpb_single_image img:hover{transform:scale(1.02);}

/* Stati di focus accessibili sui campi del form */
.bre-form input:focus,.bre-form textarea:focus{
  outline:none;
  border-color:#0f4c81;
  box-shadow:0 0 0 3px rgba(15,76,129,.15);
}

/* Pulsante WhatsApp: ombra un filo piu' presente */
.wa-chat-box-widget,.qlwapp-toggle,[class*="whatsapp"] .wa-chat{
  box-shadow:0 8px 24px rgba(0,0,0,.18)!important;
}

/* Immagini responsive di sicurezza */
img{max-width:100%;height:auto;}

/* Rifinitura tipografica dei titoli di sezione */
h2,h3{letter-spacing:.2px;}


/* =====================================================================
   RESTYLING ESTETICO 2 - ritocchi leggeri (colori/font/testi invariati)
   ===================================================================== */

/* --- Header unificato su una sola riga ------------------------------- */

/* Nascondo il vecchio header WordPress (resta nel DOM, non piu' visibile) */
header.n-header{display:none !important;}

/* Nascondo il widget WhatsApp flottante: ora e' nella barra in alto */
.qlwapp{display:none !important;}

.bre-header{
  position:sticky;top:0;z-index:1000;
  background:#fff;
  box-shadow:0 1px 0 rgba(24,111,184,.08),0 6px 22px rgba(17,34,51,.06);
}
.bre-header-inner{
  display:flex;align-items:center;gap:24px;
  min-height:74px;
}
.bre-logo{display:inline-flex;align-items:center;flex:0 0 auto;}
.bre-logo img{height:52px;width:auto;display:block;}

.bre-nav{
  margin-left:auto;
  display:flex;align-items:center;gap:22px;
}
.bre-menu{
  list-style:none;margin:0;padding:0;
  display:flex;align-items:center;gap:8px;
}
.bre-menu a{
  display:inline-block;
  font-family:Lato,sans-serif;
  font-size:14px;font-weight:700;letter-spacing:.4px;
  text-transform:uppercase;
  color:#2b2b2b;text-decoration:none;
  padding:8px 12px;border-radius:8px;
  transition:color .2s ease,background-color .2s ease;
}
.bre-menu a:hover{color:#186fb8;background:rgba(24,111,184,.07);}

/* Bottone WhatsApp dentro l'header */
.bre-wa{
  display:inline-flex;align-items:center;gap:9px;
  background:#25d366;color:#fff;text-decoration:none;
  font-family:Lato,sans-serif;font-size:14px;font-weight:700;
  padding:10px 18px;border-radius:999px;white-space:nowrap;
  box-shadow:0 4px 14px rgba(37,211,102,.32);
  transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease;
}
.bre-wa:hover{background:#1fbe5b;color:#fff;transform:translateY(-1px);
  box-shadow:0 8px 22px rgba(37,211,102,.4);}
.bre-wa svg{flex:0 0 auto;}

/* Hamburger (solo mobile) */
.bre-nav-toggle{display:none;flex:0 0 auto;margin-left:auto;
  width:44px;height:44px;cursor:pointer;
  border-radius:10px;align-items:center;justify-content:center;flex-direction:column;gap:5px;}
.bre-nav-toggle span{display:block;width:24px;height:2px;background:#186fb8;border-radius:2px;transition:.25s ease;}
.bre-nav-backdrop{display:none;}

@media (max-width:1000px){
  .bre-header-inner{gap:12px;flex-wrap:wrap;min-height:64px;}
  .bre-logo img{height:44px;}
  .bre-nav-toggle{display:flex;position:relative;z-index:1003;}
  .bre-nav{
    position:fixed;top:0;right:-320px;bottom:0;width:290px;max-width:82vw;
    margin:0;flex-direction:column;align-items:stretch;justify-content:flex-start;
    gap:6px;background:#fff;padding:88px 22px 28px;
    box-shadow:-14px 0 40px rgba(17,34,51,.18);
    transition:right .28s ease;z-index:1002;overflow-y:auto;
  }
  .bre-menu{flex-direction:column;align-items:stretch;gap:2px;width:100%;}
  .bre-menu a{display:block;padding:13px 14px;font-size:15px;border-radius:10px;}
  .bre-menu li+li a{border-top:1px solid #f0f2f5;}
  .bre-wa{margin-top:14px;justify-content:center;}
  .bre-nav-check:checked ~ .bre-header .bre-nav{right:0;}
  .bre-nav-check:checked ~ .bre-nav-backdrop{
    display:block;position:fixed;inset:0;z-index:1001;
    background:rgba(17,34,51,.45);
  }
  .bre-nav-check:checked ~ .bre-header .bre-nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .bre-nav-check:checked ~ .bre-header .bre-nav-toggle span:nth-child(2){opacity:0;}
  .bre-nav-check:checked ~ .bre-header .bre-nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
}

/* L'header ora e' sticky: aggiorno l'offset delle ancore */
#chisiamo,#auto,#contatti,#contattaci,#contact{scroll-margin-top:94px;}


/* --- Card servizi (AUTO / CASA / SALUTE / LAVORO) -------------------- */
.vc_custom_1582809351292 > .wpb_column > .vc_column-inner{
  height:100%;
  background:#fff;
  border:1px solid #eaeef2;
  border-radius:16px;
  padding:34px 24px 30px;
  box-shadow:0 8px 26px rgba(24,111,184,.07);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.vc_custom_1582809351292 > .wpb_column > .vc_column-inner:hover{
  transform:translateY(-4px);
  border-color:rgba(24,111,184,.25);
  box-shadow:0 16px 38px rgba(24,111,184,.14);
}
/* Colonne di pari altezza per allineare le card */
.vc_custom_1582809351292{display:flex;flex-wrap:wrap;align-items:stretch;}
.vc_custom_1582809351292 > .wpb_column{float:none;display:flex;}
.vc_custom_1582809351292 > .wpb_column > .vc_column-inner{width:100%;display:flex;flex-direction:column;}
.vc_custom_1582809351292 .wpb_single_image{margin-bottom:14px;}
.vc_custom_1582809351292 h4{margin-bottom:10px;}
.vc_custom_1582809351292 .wpb_text_column{margin-top:auto;}
.vc_custom_1582809351292 img{width:96px;height:96px;object-fit:contain;}
@media (max-width:767px){
  .vc_custom_1582809351292 > .wpb_column{width:100%;}
}


/* --- Griglia Staff: foto di altezza uniforme ------------------------- */
.ult-banner-block{
  border-radius:14px;overflow:hidden;
  box-shadow:0 8px 24px rgba(17,34,51,.10);
}
.ult-banner-block img{
  width:100%;height:290px;object-fit:cover;object-position:center top;
  display:block;
}
.ult-banner-block .bb-top-title{
  margin:0;padding:14px 12px;letter-spacing:.4px;
}


/* --- Foto consulenti (Chi siamo): rifinitura cerchio ---------------- */
.vc_box_shadow_border_circle{
  box-shadow:0 12px 30px rgba(17,34,51,.14) !important;
}


/* --- Sezione Contatti: mappa con angoli arrotondati ----------------- */
.map-multi-marker{border-radius:14px;overflow:hidden;}


/* --- Numeri: piu' respiro tra cifra e didascalia -------------------- */
.stats-number{margin-bottom:4px;}


/* --- Form contatti: honeypot + popup di esito ----------------------- */
.bre-hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;opacity:0;overflow:hidden;}

.bre-popup{
  position:fixed;inset:0;z-index:2000;
  background:rgba(13,27,42,.7);
  display:none;align-items:center;justify-content:center;padding:20px;
}
.bre-popup.open{display:flex;}
.bre-popup-box{
  background:#fff;border-radius:16px;max-width:430px;width:100%;
  padding:40px 34px;text-align:center;
  box-shadow:0 20px 60px rgba(0,0,0,.35);
  animation:brePop .25s ease;
}
@keyframes brePop{from{transform:scale(.92);opacity:0}to{transform:scale(1);opacity:1}}
.bre-popup-icon{
  width:74px;height:74px;border-radius:50%;margin:0 auto 20px;
  display:flex;align-items:center;justify-content:center;
  font-size:2.4rem;line-height:1;color:#fff;background:#2e9e5b;
}
.bre-popup.error .bre-popup-icon{background:#c0392b;}
.bre-popup-box h3{color:#2b2b2b;font-size:1.5rem;margin-bottom:10px;}
.bre-popup-box p{color:#54606e;font-size:1rem;line-height:1.5;margin-bottom:26px;}
.bre-popup-box p a{color:#186fb8;text-decoration:underline;}
.bre-popup-box button{
  background:#186fb8;color:#fff;border:0;cursor:pointer;
  padding:13px 44px;border-radius:40px;
  font-weight:700;text-transform:uppercase;letter-spacing:.5px;
  transition:background-color .2s ease,transform .2s ease;
}
.bre-popup-box button:hover{background:#0f4c81;transform:translateY(-1px);}
