#hopee-costo-fv{
  --fv-blue:#042330;
  --fv-green:#34C759;
  --fv-green2:#6CC164;
  --fv-lightgreen:#E6F7E5;
  --fv-midgreen:#B5E3B1;
  --fv-lightblue:#9DC5F9;
  --fv-white:#FFFFFF;
  max-width:960px;
  margin:0 auto;
  padding:0 24px;
  font-family:'Nunito', sans-serif;
  color:var(--fv-blue);
  line-height:1.6;
}
#hopee-costo-fv *{box-sizing:border-box;}
#hopee-costo-fv h1,
#hopee-costo-fv h2,
#hopee-costo-fv h3{font-family:'Roboto', sans-serif; font-weight:700;}

#hopee-costo-fv .fv-hero{
  display:block;
  width:auto;
  height:auto;
  min-height:0;
  background:var(--fv-blue);
  color:var(--fv-white);
  padding:64px 32px;
  border-radius:24px;
  margin:40px auto 0;
  text-align:center;
  flex-direction:column;
}
#hopee-costo-fv .fv-hero h1{font-size:38px; margin:0 0 16px; color:var(--fv-white); display:block;}
#hopee-costo-fv .fv-hero p{font-size:18px; color:#cfe6ff; max-width:640px; margin:0 auto 28px; display:block;}
#hopee-costo-fv .fv-hero .fv-btn-primary{margin:0 auto; display:inline-block;}

#hopee-costo-fv .fv-btn-primary{
  display:inline-block;
  width:auto;
  height:auto;
  align-items:normal;
  justify-content:normal;
  background:var(--fv-green);
  color:var(--fv-blue);
  font-family:'Roboto', sans-serif;
  font-weight:700;
  font-size:16px;
  line-height:normal;
  padding:14px 32px;
  border-radius:999px;
  border:none;
  cursor:pointer;
  text-decoration:none;
  white-space:nowrap;
}
#hopee-costo-fv .fv-btn-secondary{
  display:inline-block;
  background:transparent;
  color:var(--fv-blue);
  font-family:'Roboto', sans-serif;
  font-weight:700;
  font-size:15px;
  padding:12px 28px;
  border-radius:999px;
  border:2px solid var(--fv-blue);
  cursor:pointer;
  text-decoration:none;
}

#hopee-costo-fv section{padding:56px 0;}
#hopee-costo-fv .section-title{font-size:28px; text-align:center; margin:0 0 8px;}
#hopee-costo-fv .section-sub{font-size:16px; color:#4a5a63; text-align:center; max-width:600px; margin:0 auto 40px;}

#hopee-costo-fv .calc-card{
  background:var(--fv-lightgreen);
  border-radius:24px;
  padding:40px;
}
#hopee-costo-fv .calc-toggle-group{display:flex; gap:10px; margin-bottom:28px;}
#hopee-costo-fv .calc-toggle{
  flex:1;
  text-align:center;
  padding:14px;
  border-radius:14px;
  background:var(--fv-white);
  font-family:'Roboto', sans-serif;
  font-weight:700;
  cursor:pointer;
  border:2px solid transparent;
  color:var(--fv-blue);
}
#hopee-costo-fv .calc-toggle.active{border-color:var(--fv-green); background:var(--fv-white);}
#hopee-costo-fv .calc-row{margin-bottom:24px;}
#hopee-costo-fv .calc-row label{display:flex; justify-content:space-between; font-weight:700; font-family:'Roboto', sans-serif; font-size:14px; margin-bottom:8px;}
#hopee-costo-fv .calc-row label .val{color:var(--fv-green2);}
#hopee-costo-fv input[type=range]{
  width:100%;
  height:6px;
  border-radius:6px;
  background:var(--fv-midgreen);
  accent-color:#3b6d11;
}
#hopee-costo-fv .storage-row{display:none;}
#hopee-costo-fv .calc-mode-question{font-family:'Roboto', sans-serif; font-weight:700; font-size:14px; margin:0 0 10px;}
#hopee-costo-fv .calc-mode-group{margin-bottom:24px;}
#hopee-costo-fv .calc-hint{font-size:12px; color:#5a6b73; margin:8px 0 0;}
#hopee-costo-fv .calc-row input[type=range]:disabled{opacity:0.5; accent-color:#8fa88f;}
#hopee-costo-fv .kwp-estimated{font-size:12px; font-weight:400; color:#5a6b73;}
#hopee-costo-fv .storage-check{display:flex; align-items:center; gap:10px; margin-bottom:20px; font-weight:700; font-family:'Roboto', sans-serif; font-size:14px;}
#hopee-costo-fv .storage-check input{width:20px; height:20px;}

#hopee-costo-fv .results-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));
  gap:16px;
  margin-top:32px;
}
#hopee-costo-fv .calc-zona-group .calc-toggle{flex:1;}
#hopee-costo-fv .result-card{
  background:var(--fv-white);
  border-radius:16px;
  padding:20px;
  text-align:center;
}
#hopee-costo-fv .result-card .label{font-size:13px; color:#4a5a63; margin:0 0 6px;}
#hopee-costo-fv .result-card .value{font-size:26px; font-family:'Roboto', sans-serif; font-weight:700; color:var(--fv-blue); margin:0;}
#hopee-costo-fv .result-note{font-size:13px; color:#5a6b73; text-align:center; margin-top:16px;}

#hopee-costo-fv .lead-gate{
  background:var(--fv-blue);
  border-radius:24px;
  padding:40px;
  color:var(--fv-white);
  margin-top:32px;
  text-align:center;
}
#hopee-costo-fv .lead-gate h3{color:var(--fv-lightblue); font-size:24px; margin:0 0 8px;}
#hopee-costo-fv .lead-gate p{color:#cfe6ff; margin:0 0 28px;}
#hopee-costo-fv .hc-form-row{display:flex; gap:16px; text-align:left; margin-bottom:16px;}
#hopee-costo-fv .hc-form-row label{flex:1; font-size:13px; font-weight:700; display:block;}
#hopee-costo-fv .lead-gate input[type=text],
#hopee-costo-fv .lead-gate input[type=email]{
  width:100%;
  margin-top:6px;
  padding:12px 14px;
  border-radius:10px;
  border:none;
  font-family:'Nunito', sans-serif;
  font-size:15px;
}
#hopee-costo-fv .privacy-row{display:flex; align-items:flex-start; gap:10px; text-align:left; margin:20px 0 24px; font-size:13px; color:#cfe6ff;}
#hopee-costo-fv .privacy-row a{color:var(--fv-lightblue); text-decoration:underline;}
#hopee-costo-fv .lead-success{display:none; background:var(--fv-lightgreen); color:var(--fv-blue); border-radius:16px; padding:20px; margin-bottom:24px; font-weight:700; text-align:center;}

#hopee-costo-fv .results-wrap{margin-top:32px;}
#hopee-costo-fv .cer-cta{
  background:var(--fv-blue);
  border-radius:20px;
  padding:32px;
  text-align:center;
  margin-top:32px;
}
#hopee-costo-fv .cer-cta h3{color:var(--fv-lightblue); font-size:22px; margin:0 0 8px;}
#hopee-costo-fv .cer-cta p{color:#cfe6ff; margin:0 0 20px; font-size:15px;}
#hopee-costo-fv .cer-cta .arrow{margin-left:4px;}

#hopee-costo-fv .info-grid{display:grid; grid-template-columns:1fr 1fr; gap:32px;}
#hopee-costo-fv .info-card{background:#f7f9f8; border-radius:16px; padding:28px;}
#hopee-costo-fv .info-card h3{font-size:18px; margin:0 0 10px;}
#hopee-costo-fv .info-card p{font-size:15px; color:#4a5a63; margin:0;}

#hopee-costo-fv .faq-item{border-bottom:1px solid #eee; padding:20px 0;}
#hopee-costo-fv .faq-item h3{font-size:16px; margin:0 0 8px;}
#hopee-costo-fv .faq-item p{font-size:15px; color:#4a5a63; margin:0;}

#hopee-costo-fv .final-cta{
  background:var(--fv-green);
  border-radius:24px;
  padding:48px;
  text-align:center;
  margin-bottom:40px;
}
#hopee-costo-fv .final-cta h2{font-size:26px; margin:0 0 12px; color:var(--fv-blue);}
#hopee-costo-fv .final-cta p{font-size:16px; margin:0 0 28px;}
#hopee-costo-fv .final-cta-btns{display:flex; gap:16px; justify-content:center; flex-wrap:wrap;}

/* Contact Form 7 dentro il lead-gate: wpautop già disattivato sitewide, qui solo reset margini e stile campi */
#hopee-costo-fv .lead-gate form.wpcf7-form p{margin:0;}
#hopee-costo-fv .lead-gate .hc-form-row p{
  display:flex;
  gap:16px;
  margin:0;
  flex-wrap:wrap;
}
#hopee-costo-fv .lead-gate .hc-form-row p br{display:none;}
#hopee-costo-fv .lead-gate .hc-form-row label{
  flex:1;
  min-width:140px;
}
#hopee-costo-fv .lead-gate .wpcf7-response-output{
  color:var(--fv-white);
  border-color:var(--fv-lightblue) !important;
  margin:16px 0 0 !important;
  border-radius:10px;
}
#hopee-costo-fv .lead-gate input[type=submit]{
  display:block;
  width:100%;
  background:var(--fv-green);
  color:var(--fv-blue);
  font-family:'Roboto', sans-serif;
  font-weight:700;
  font-size:16px;
  padding:14px 32px;
  border-radius:999px;
  border:none;
  cursor:pointer;
  text-transform:none;
  box-shadow:none;
}
#hopee-costo-fv .lead-gate input[type=submit]:hover{
  background:var(--fv-green);
  opacity:0.9;
}
#hopee-costo-fv .lead-gate .wpcf7-not-valid-tip{
  color:#ffb3b3;
  font-size:12px;
  text-align:left;
}
#hopee-costo-fv .lead-gate .wpcf7-acceptance label{
  display:flex;
  align-items:flex-start;
  gap:10px;
  font-weight:400;
}

@media(max-width:640px){
  #hopee-costo-fv .results-grid{grid-template-columns:1fr;}
  #hopee-costo-fv .info-grid{grid-template-columns:1fr;}
  #hopee-costo-fv .hc-form-row{flex-direction:column;}
  #hopee-costo-fv .fv-hero h1{font-size:28px;}
}
