/* =========================================================
   VIVERE PONDERANO v3 — PAGINA RIFIUTI
   ========================================================= */

body.vp-v3-legacy{
  background:#f5f7f9 !important;
  color:#18212b !important;
}

/* Vecchia micro-testata della pagina */
body.vp-v3-legacy .brand,
body.vp-v3-legacy .back{
  display:none !important;
}

/* Contenitore della pagina */
body.vp-v3-legacy main{
  width:min(calc(100% - 32px),1040px);
  margin:0 auto;
  padding-top:30px;
}

/* ---------------------------------------------------------
   HERO: da manifesto enorme a intestazione servizio
   --------------------------------------------------------- */

body.vp-v3-legacy .vp-wow-hero{
  background:
    linear-gradient(135deg,#ffffff 0%,#edf4fa 100%) !important;
  color:#18212b !important;

  border:1px solid #d8e0e7 !important;
  border-left:6px solid #174a7c !important;

  border-radius:18px !important;

  padding:28px 30px !important;
  margin:0 0 26px !important;

  box-shadow:
    0 5px 20px rgba(20,42,63,.06) !important;
}

body.vp-v3-legacy .vp-wow-hero h1{
  margin:8px 0 16px !important;

  font-size:clamp(2.15rem,4.5vw,3.35rem) !important;
  line-height:1.02 !important;
  letter-spacing:-.045em !important;

  color:#10283f !important;
}

body.vp-v3-legacy .vp-wow-sub{
  color:#52616f !important;
  font-size:1rem !important;
}

/* badge in alto */
body.vp-v3-legacy .vp-wow-hero > div:first-child{
  color:#174a7c !important;
}

/* box SEAB e problemi */
body.vp-v3-legacy .vp-wow-hero > div{
  border-radius:14px !important;
}

body.vp-v3-legacy .vp-summary-card{
  background:#fff !important;
  border:1px solid #d8e0e7 !important;
  color:#18212b !important;
  box-shadow:none !important;
}

/* ---------------------------------------------------------
   TITOLI DI SEZIONE
   --------------------------------------------------------- */

body.vp-v3-legacy .vp-section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;

  margin:38px 0 16px !important;

  border-bottom:1px solid #d8e0e7;
  padding-bottom:10px;
}

body.vp-v3-legacy .vp-section-head h2{
  margin:0 !important;

  font-size:clamp(1.65rem,3vw,2.15rem) !important;
  line-height:1.1 !important;
  color:#10283f !important;
}

body.vp-v3-legacy .vp-section-head span{
  color:#174a7c !important;

  font-size:.75rem !important;
  font-weight:800 !important;

  text-transform:uppercase;
  letter-spacing:.075em;
}

/* ---------------------------------------------------------
   OGGI / DOMANI
   --------------------------------------------------------- */

body.vp-v3-legacy .kicker{
  color:#174a7c !important;
  font-weight:800 !important;
}

body.vp-v3-legacy .empty{
  background:#f8fafc !important;
  border:1px dashed #cbd5df !important;
  border-radius:12px !important;
  color:#66727d !important;
}

body.vp-v3-legacy .collect{
  border-radius:10px !important;
}

/* ---------------------------------------------------------
   SCHEDE GENERICHE
   --------------------------------------------------------- */

body.vp-v3-legacy .vp-wow-card,
body.vp-v3-legacy .vp-vetro,
body.vp-v3-legacy .vp-pannolini-map-section{
  background:#fff !important;
  border:1px solid #d8e0e7 !important;

  border-radius:16px !important;
  box-shadow:none !important;
}

/* ---------------------------------------------------------
   PULSANTI
   --------------------------------------------------------- */

body.vp-v3-legacy a[class*="btn"],
body.vp-v3-legacy a[class*="button"]{
  border-radius:9px !important;
}

body.vp-v3-legacy .vp-wow-hero a{
  transition:none !important;
}

/* ---------------------------------------------------------
   MAPPA
   --------------------------------------------------------- */

body.vp-v3-legacy .vp-pannolini-map-section{
  padding:20px !important;
}

body.vp-v3-legacy #vp-pannolini-map{
  border:2px solid #174a7c !important;
  border-radius:14px !important;
  overflow:hidden;
}

body.vp-v3-legacy .vp-pannolini-map-label{
  color:#174a7c !important;
}

/* ---------------------------------------------------------
   NASO ODORE
   --------------------------------------------------------- */

body.vp-v3-legacy .vp-naso-odori-card{
  margin:38px auto 26px !important;

  background:#fff8ee !important;
  border:1px solid #edcf9b !important;

  border-radius:16px !important;

  box-shadow:none !important;
}

/* ---------------------------------------------------------
   FOOTER ESISTENTE, RESO COERENTE
   --------------------------------------------------------- */

body.vp-v3-legacy footer{
  max-width:1040px;
  margin:42px auto 0 !important;

  background:#10283f !important;
  color:#dbe7f1 !important;

  border:0 !important;
  border-radius:18px 18px 0 0 !important;

  box-shadow:none !important;

  padding:34px !important;
}

body.vp-v3-legacy footer *{
  color:inherit;
}

body.vp-v3-legacy footer a{
  color:#fff !important;
}

body.vp-v3-legacy footer strong{
  color:#fff !important;
}

/* ---------------------------------------------------------
   MOBILE
   --------------------------------------------------------- */

@media(max-width:700px){

  body.vp-v3-legacy main{
    width:min(calc(100% - 22px),1040px);
    padding-top:20px;
  }

  body.vp-v3-legacy .vp-wow-hero{
    padding:21px 18px !important;
  }

  body.vp-v3-legacy .vp-section-head{
    align-items:flex-start;
    flex-direction:column;
    gap:4px;
  }

  body.vp-v3-legacy footer{
    margin-top:30px !important;
    border-radius:14px 14px 0 0 !important;
    padding:24px 18px !important;
  }
}

.vp-v3-service-intro{
  max-width:760px;

  margin:-4px 0 22px !important;

  color:#52616f !important;
  font-size:1.05rem !important;
  line-height:1.55 !important;
}

/* =========================================================
   VIVERE PONDERANO v3
   CHIUSURA PAGINA SERVIZIO
   ========================================================= */

body.vp-v3-legacy .vp-v3-related-tools{
  margin:42px 0 0;
}

body.vp-v3-legacy .vp-naso-odori-card{
  margin:0 !important;
  padding:22px !important;

  background:#fff8ed !important;
  border:1px solid #e8c98c !important;

  border-radius:14px !important;
}

body.vp-v3-legacy .vp-naso-odori-card h2{
  margin-top:0 !important;
}


/* ---------------------------------------------------------
   Footer: non più "card", ma vera chiusura del portale
   --------------------------------------------------------- */

body.vp-v3-legacy footer{
  width:100vw !important;
  max-width:none !important;

  margin:
    42px
    0
    0
    50% !important;

  transform:translateX(-50%);

  padding:
    40px
    max(24px, calc((100vw - 1040px) / 2))
    32px !important;

  background:#10283f !important;

  border:0 !important;
  border-radius:0 !important;

  box-shadow:none !important;

  text-align:left !important;
}


/* Contrasto */

body.vp-v3-legacy footer,
body.vp-v3-legacy footer p,
body.vp-v3-legacy footer div,
body.vp-v3-legacy footer span{
  color:#dbe7f1 !important;
}

body.vp-v3-legacy footer strong,
body.vp-v3-legacy footer .vp-foot-brand{
  color:#ffffff !important;
}


/* Marchio footer */

body.vp-v3-legacy footer .vp-foot-brand{
  font-size:1.2rem !important;
  font-weight:800 !important;
  margin-bottom:5px !important;
}

body.vp-v3-legacy footer .vp-foot-copy{
  color:#b8c9d8 !important;
  margin-bottom:18px !important;
}


/* Link legali: link veri, non finti pulsanti */

body.vp-v3-legacy footer a{
  display:inline !important;

  padding:0 !important;

  background:transparent !important;

  border:0 !important;
  border-radius:0 !important;

  box-shadow:none !important;

  color:#ffffff !important;

  font-weight:650 !important;

  text-decoration:underline !important;
  text-decoration-thickness:1px !important;
  text-underline-offset:4px !important;
}

body.vp-v3-legacy footer a:hover,
body.vp-v3-legacy footer a:focus{
  color:#ffffff !important;
  text-decoration-thickness:2px !important;
}


/* Se esiste il contenitore link del vecchio footer */

body.vp-v3-legacy footer .vp-foot-links{
  display:flex !important;
  flex-wrap:wrap !important;

  gap:8px 18px !important;

  margin-top:20px !important;
}


/* Linea di separazione */

body.vp-v3-legacy footer hr{
  border:0 !important;
  border-top:1px solid rgba(255,255,255,.20) !important;
}


/* Mobile */

@media(max-width:700px){

  body.vp-v3-legacy .vp-v3-related-tools{
    margin-top:30px;
  }

  body.vp-v3-legacy footer{
    margin-top:32px !important;

    padding:
      32px
      20px
      26px !important;
  }

}
