.elementor-608 .elementor-element.elementor-element-b4ba189{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-608 .elementor-element.elementor-element-b4ba189:not(.elementor-motion-effects-element-type-background), .elementor-608 .elementor-element.elementor-element-b4ba189 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0A4EA8;}.elementor-608 .elementor-element.elementor-element-929aba4{--display:flex;--min-height:0vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:-5px;--padding-bottom:-5px;--padding-left:0px;--padding-right:0px;}.elementor-608 .elementor-element.elementor-element-929aba4:not(.elementor-motion-effects-element-type-background), .elementor-608 .elementor-element.elementor-element-929aba4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0A4EA8;}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-608 .elementor-element.elementor-element-1982b45{--divider-border-style:solid;--divider-color:#FF020C;--divider-border-width:2px;}.elementor-608 .elementor-element.elementor-element-1982b45 .elementor-divider-separator{width:100%;}.elementor-608 .elementor-element.elementor-element-1982b45 .elementor-divider{padding-block-start:2px;padding-block-end:2px;}.elementor-608 .elementor-element.elementor-element-ac25643{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-608 .elementor-element.elementor-element-ac25643:not(.elementor-motion-effects-element-type-background), .elementor-608 .elementor-element.elementor-element-ac25643 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0A4EA8;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for container, class: .elementor-element-b4ba189 *//* =========================================================
   SEZIONE CONTATTI · BANNER BLU (IMG SVG, no recolor)
   ========================================================= */
.contact-band{
  background:var(--color-primary);   /* blu brand */
  color:#fff;
  padding:1rem 1rem 1rem;
}
.contact-wrap{max-width:1100px;margin-inline:auo;}

.contact-copy{text-align:center;margin-bottom:1.6rem;}
.contact-title{
  font-family:"Montserrat",sans-serif;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.4px;
  font-size:clamp(1.6rem,2vw + 1rem,2.2rem);
  margin:0 0 .4rem;
}
.contact-subtitle{
  font-size:clamp(1rem,1vw + .5rem,1.15rem);
  margin:0;opacity:.95;
}

/* griglia */
.contact-grid{
  display:grid;
  gap:1rem;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  margin-top:1.4rem;
}

/* card link */
.contact-link{
  display:flex;align-items:center;gap:.9rem;
  text-decoration:none;color:#fff;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.22);
  border-radius:12px;
  padding:1rem 1.2rem;
  transition:transform .2s, background .2s, border-color .2s, box-shadow .2s;
}
.contact-link:hover{
  transform:translateY(-3px);
  background:rgba(255,255,255,.14);
  border-color:rgba(255,255,255,.35);
  box-shadow:0 6px 16px rgba(0,0,0,.18);
}
.contact-link:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(255,255,255,.45);
}

/* icona (cerchio) + IMG SVG esterno */
.contact-ico{
  flex:0 0 48px;width:48px;height:48px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:50%;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.35);
}
.contact-ico img{width:40px;height:40px;display:block;}

/* testi */
.contact-text{display:flex;flex-direction:column;line-height:1.2;}
.contact-head{font-weight:700;font-size:1rem;margin:0;}
.contact-sub{font-size:.95rem;opacity:.95;}

/* mobile */
@media (max-width:575px){
  .contact-link{padding:.9rem 1rem;}
  .contact-ico{width:44px;height:44px;}
  .contact-ico img{width:40px;height:40px;}
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ac25643 *//* =======================================================
   FOOTER · STILE BRAND (blu / testo bianco)
   ======================================================= */
.site-footer{
  background: var(--color-primary, #0A4EA8);
  color: #fff;
  padding: 1rem 1rem 1rem;
}
.sf-wrap{ max-width: 1200px; margin-inline: auto; }

/* griglia 4→2→1 */
.sf-grid{
  display: grid;
  gap: 1.4rem;
  grid-template-columns: repeat(4, 1fr);
  align-items: start;
}
@media (max-width: 1024px){
  .sf-grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 575px){
  .sf-grid{ grid-template-columns: 1fr; }
}

/* brand */
.sf-logo img{ display:block; max-width: 180px; height:auto; }
.sf-tagline{ margin:.6rem 0 1rem; color: rgba(255,255,255,.9); }

/* contatti */
.sf-contacts{ list-style:none; margin:0; padding:0; display:grid; gap:.4rem; }
.sf-contacts .sf-label{
  display:block; font-weight:700; font-size:.9rem; opacity:.95;
}
.sf-contacts a{ color:#fff; text-decoration:none; border-bottom:1px solid transparent; }
.sf-contacts a:hover{ border-bottom-color: rgba(255,255,255,.65); }

/* headings colonna */
.sf-h{
  font-weight:800; font-size:1rem; margin:.2rem 0 .6rem;
  text-transform:uppercase; letter-spacing:.3px; color:#fff;
}

/* menu rapido */
.sf-menu{ list-style:none; margin:0; padding:0; display:grid; gap:.35rem; }
.sf-menu a{
  color:#fff; text-decoration:none; opacity:.95; border-bottom:1px solid transparent;
}
.sf-menu a:hover{ opacity:1; border-bottom-color: rgba(255,255,255,.65); }

/* social */
.sf-social-list{ list-style:none; margin:0; padding:0; display:grid; gap:.45rem; }
.sf-social-list a{
  display:inline-flex; align-items:center; gap:.5rem;
  color:#fff; text-decoration:none; opacity:.95;
  padding:.35rem .4rem; border-radius:8px; transition:.2s;
}
.sf-social-list a:hover{ opacity:1; background: rgba(255,255,255,.08); }
.sf-social-list img{
  width: var(--sf-icon, 24px);
  height: var(--sf-icon, 24px);
  display:block;
}

/* legale */
.sf-legal-list{ list-style:none; margin:0 0 .6rem; padding:0; display:grid; gap:.35rem; }
.sf-legal-list a{ color:#fff; text-decoration:none; opacity:.95; }
.sf-legal-list a:hover{ opacity:1; text-decoration:underline; }
.sf-extra p{ margin:.2rem 0 0; opacity:.95; }

/* bottom bar */
.sf-bottom{
  display:flex; gap:.8rem; justify-content:space-between; align-items:center;
  border-top: 1px solid rgba(255,255,255,.18);
  margin-top: 1.6rem; padding-top: 1rem;
}
.sf-copy{ margin:0; font-size:.92rem; opacity:.95; }
.sf-bottom-links{ display:flex; gap:.8rem; flex-wrap:wrap; }
.sf-bottom-links a{
  color:#fff; text-decoration:none; opacity:.95; border-bottom:1px solid transparent;
}
.sf-bottom-links a:hover{ opacity:1; border-bottom-color: rgba(255,255,255,.65); }

@media (max-width:575px){
  .site-footer{ padding: 2.2rem 1rem 1rem; }
  .sf-bottom{ flex-direction:column; gap:.6rem; align-items:flex-start; }
}

/* Opzione: accentua hover con rosso brand sui link del footer */
.site-footer a:hover{ color:#fff; }/* End custom CSS */