/* ===== LIGHT THEME — sezioni sotto il form ===== */
body{background:#faf8f4!important;color:#1a2e3b!important;font-family:'Hanken Grotesk',system-ui,sans-serif!important}
.hero{padding-top:48px!important}
.section-title,h1,h2,h3{color:#0c2334!important}
.how-step h3{color:#0c2334!important}.how-step p{color:rgba(26,46,59,.72)!important}
.fq-q{background:#fff!important;color:#1a2e3b!important;border:1px solid rgba(12,35,52,.10)!important;border-radius:12px!important;margin-bottom:8px!important}
.fq-q.open{background:rgba(47,148,136,.10)!important;color:#1a7a6f!important}
.fq-a{background:transparent!important;color:rgba(26,46,59,.78)!important;border-top-color:rgba(12,35,52,.10)!important}
.fq-a strong{color:#0c2334!important}
.benchmark-card,.proof-card,.result{background:#fff!important;border-color:rgba(12,35,52,.10)!important;color:#1a2e3b!important}
.hero-trust-row{color:rgba(26,46,59,.82)}
section{background:transparent!important}
.panel-map,#map,.leaflet-container{border:1px solid rgba(12,35,52,.12)!important;border-radius:18px!important}
.faq,.how,.map-section,.form-section,.form-card-section{background:transparent!important}
.fq{background:#fff!important;border-color:rgba(12,35,52,.10)!important}
.fq:hover{border-color:#2f9488!important}
.fq-q{background:transparent!important;color:#1a2e3b!important}
.fq-q.open{background:rgba(47,148,136,.10)!important;color:#1a7a6f!important}
.fq-q i{color:rgba(26,46,59,.55)!important}
.rm,.ai-box{background:#fff!important;border-color:rgba(12,35,52,.10)!important;color:#1a2e3b!important}
.pill{background:#fff!important;color:#1a2e3b!important;border-color:rgba(12,35,52,.12)!important}
.map-legend,.ms-pill{background:#fff!important;border-color:rgba(12,35,52,.12)!important;color:#1a2e3b!important;box-shadow:0 4px 16px rgba(12,35,52,.08)!important}
.ms-l{color:rgba(26,46,59,.65)!important}
.panel-card,.report-mock,.mock-cell,.panel-metric,.premium-strip,.floating-chip,.benchmark-card{color:#16242f!important}
.map-section-label{background:transparent!important;color:rgba(26,46,59,.65)!important}


/* ===== PATCH WEB DESIGN 2026 — card leggibili e coerenti ===== */
/* Card sotto la mappa: devono restare chiare anche nella landing scura */
.zone-scroll{
  gap:14px!important;
  padding:20px 0 14px!important;
  margin:0!important;
  scroll-snap-type:x proximity;
}
.zcard-mobile{
  width:224px!important;
  min-height:160px!important;
  padding:18px 18px 16px!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbfa 100%)!important;
  border:1px solid rgba(15,118,110,.18)!important;
  border-radius:22px!important;
  color:#07111f!important;
  box-shadow:0 18px 46px rgba(7,17,31,.14)!important;
  scroll-snap-align:start;
}
.zcard-mobile:hover,
.zcard-mobile:active{
  transform:translateY(-3px)!important;
  box-shadow:0 24px 60px rgba(7,17,31,.20)!important;
  border-color:rgba(201,164,92,.55)!important;
}
.zcard-mobile.active{
  border:2px solid #c9a45c!important;
  box-shadow:0 24px 70px rgba(201,164,92,.22)!important;
}
.zcard-accent{
  width:5px!important;
  border-radius:22px 0 0 22px!important;
  opacity:1!important;
}
.zcard-city{
  color:#64748b!important;
  font-size:.68rem!important;
  letter-spacing:.18em!important;
  margin-bottom:8px!important;
}
.zcard-name{
  color:#07111f!important;
  font-size:1rem!important;
  line-height:1.25!important;
  min-height:42px!important;
  margin-bottom:12px!important;
}
.zcard-price{
  color:#07111f!important;
  font-size:1.62rem!important;
  letter-spacing:-.03em!important;
}
.zcard-price span{
  color:#64748b!important;
  font-size:.78rem!important;
}
.zcard-trend{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  margin-top:10px!important;
  background:#f5efe3!important;
  color:#0f8a4b!important;
  border:1px solid #bbf7d0!important;
  border-radius:999px!important;
  padding:5px 9px!important;
  font-size:.74rem!important;
}
.scroll-hint{color:rgba(26,46,59,.72)!important;margin-top:10px!important}

/* Ecosistema: impianto tipo seconda proposta, ma con colori ValoreCasaTua */
.vct-eco{
  background:linear-gradient(180deg,#ffffff 0%,#f7faf9 100%)!important;
  border:1px solid rgba(15,118,110,.14)!important;
  color:#07111f!important;
  box-shadow:0 28px 90px rgba(7,17,31,.16)!important;
}
.vct-eco .vct-eyebrow{color:#0f766e!important;font-weight:900!important;letter-spacing:.16em!important}
.vct-eco h2{color:#07111f!important}
.vct-eco h2 .accent{color:#0f766e!important}
.vct-eco .sub{color:#475569!important}
.vct-eco-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important}
.vct-eco-card{
  background:#fff!important;
  color:#07111f!important;
  border:1px solid #e2e8f0!important;
  border-radius:24px!important;
  box-shadow:0 16px 42px rgba(7,17,31,.08)!important;
  min-height:245px!important;
}
.vct-eco-card:hover{
  background:#fff!important;
  border-color:rgba(15,118,110,.35)!important;
  box-shadow:0 24px 60px rgba(7,17,31,.13)!important;
}
.vct-eco-card[aria-current="page"]{
  border-color:#c9a45c!important;
  background:linear-gradient(180deg,#fff,#fffaf0)!important;
}
.vct-eco-card:before{
  background:#07111f!important;
  color:#f3d782!important;
}
.vct-eco-card .step{color:#0f766e!important;background:#f5efe3!important;border-color:#efe3cb!important}
.vct-eco-card h3{color:#07111f!important;font-size:1.24rem!important;min-height:58px!important}
.vct-eco-card p{color:#475569!important;font-size:.92rem!important;line-height:1.65!important}
.vct-eco-card .go{color:#0f766e!important}
@media(max-width:900px){.vct-eco-grid{grid-template-columns:1fr 1fr!important}.zcard-mobile{width:210px!important}}
@media(max-width:600px){.vct-eco-grid{grid-template-columns:1fr!important}.zcard-mobile{width:78vw!important;max-width:300px!important}.zone-scroll{padding-left:2px!important;padding-right:2px!important}}



/* ===== PATCH 2 — card zone sotto la mappa più compatte e leggibili ===== */
.zone-scroll{gap:10px!important;padding:14px 0 10px!important}
.zcard-mobile{
  width:168px!important;
  min-height:118px!important;
  padding:13px 13px 12px!important;
  border-radius:16px!important;
  box-shadow:0 10px 26px rgba(7,17,31,.12)!important;
}
.zcard-mobile:hover,.zcard-mobile:active{transform:translateY(-2px)!important;box-shadow:0 16px 34px rgba(7,17,31,.16)!important}
.zcard-mobile.active{box-shadow:0 16px 40px rgba(201,164,92,.20)!important}
.zcard-accent{width:4px!important;border-radius:16px 0 0 16px!important}
.zcard-city{font-size:.56rem!important;letter-spacing:.15em!important;margin-bottom:5px!important}
.zcard-name{font-size:.82rem!important;line-height:1.22!important;min-height:31px!important;margin-bottom:8px!important}
.zcard-price{font-size:1.24rem!important;line-height:1.05!important}
.zcard-price span{font-size:.62rem!important}
.zcard-trend{margin-top:7px!important;padding:3px 7px!important;font-size:.62rem!important}
@media(max-width:900px){.zcard-mobile{width:160px!important}}
@media(max-width:600px){.zcard-mobile{width:62vw!important;max-width:220px!important;min-height:112px!important}}



/* ===== PASSO 2 VISIBILE — refactor grafico più incisivo ===== */
:root{--vct-deep:#f2ede4;--vct-navy:#faf8f4;--vct-teal:#2f9488;--vct-teal2:#1a7a6f;--vct-gold:#8b6914;--vct-cream:#f4efe6;--vct-ink:#0c2334;}
body{letter-spacing:-.005em!important}
.topbar,.vct-header{box-shadow:0 4px 20px rgba(12,35,52,.08)!important}
.nav{padding:10px 0!important}.links{gap:10px!important}.links a{font-size:.86rem!important;padding:6px 8px!important;border-radius:999px!important}.links a:hover{background:rgba(47,148,136,.10)!important;color:var(--vct-teal2)!important}
.logo{font-size:20px!important}.pay{font-size:10.5px!important}
.hero{padding:32px 0 22px!important;background:radial-gradient(circle at 16% 0%,rgba(47,148,136,.12),transparent 38%),linear-gradient(170deg,#faf6ee 0%,#fff 65%)!important}
.hero h1{font-size:clamp(34px,4.5vw,56px)!important;line-height:1.05!important;margin:10px 0 12px!important;max-width:920px!important}
.hero .lead,.hero .hero-text{font-size:clamp(16px,1.6vw,19px)!important;line-height:1.55!important;max-width:820px!important;margin-bottom:14px!important}
.hero .badge,.hero .eyebrow,.hero .vct-eyebrow{padding:6px 10px!important;font-size:11.5px!important;letter-spacing:.07em!important}
.hero .pillrow{margin:14px 0 0!important}.hero .pill{padding:6px 10px!important;font-size:.82rem!important}
.cta,.nav-cta,.btn-primary,.vct-btn-primary{padding:9px 14px!important;border-radius:999px!important;box-shadow:0 12px 28px rgba(47,148,136,.24)!important}
section{padding:36px 0!important}.cream,.light,.light-section,.section-light{padding:38px 0!important}
h2{font-size:clamp(28px,3vw,40px)!important;line-height:1.12!important;margin-bottom:12px!important}h3{font-size:1.12rem!important;margin-bottom:8px!important}
.grid{gap:14px!important}.card{padding:17px 18px!important;border-radius:16px!important;box-shadow:0 6px 24px rgba(12,35,52,.08)!important}.cream .card,.light .card,.light-section .card{box-shadow:0 12px 30px rgba(7,17,31,.08)!important}
.card p,.card li{font-size:.93rem!important;line-height:1.55!important}.lead{font-size:1.02rem!important;line-height:1.6!important}
.card h3:before{content:'◆';display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin-right:8px;border-radius:9px;background:rgba(65,179,164,.12);color:var(--vct-teal2);font-size:.72rem;vertical-align:middle}.cream .card h3:before,.light .card h3:before{background:#f5efe3;color:#0f766e}
.toc{gap:8px!important;margin-top:14px!important}.toc a{padding:9px 11px!important;border-radius:12px!important;font-size:.92rem!important}
/* Home ecosystem e card sotto mappa: più piccole e più compatte */
.vct-eco{padding:28px!important;border-radius:24px!important}.vct-eco-grid{gap:14px!important}.vct-eco-card{min-height:172px!important;padding:18px!important;border-radius:18px!important}.vct-eco-card h3{font-size:1.02rem!important;min-height:auto!important;margin-bottom:7px!important}.vct-eco-card p{font-size:.84rem!important;line-height:1.48!important}.vct-eco-card .go{font-size:.86rem!important}.vct-eco-card:before{width:34px!important;height:34px!important;font-size:.92rem!important}.vct-eco .sub{font-size:.98rem!important}
.zone-scroll{gap:8px!important;padding:12px 0 8px!important}.zcard-mobile{width:148px!important;min-height:102px!important;padding:11px!important;border-radius:14px!important}.zcard-name{font-size:.76rem!important;min-height:28px!important}.zcard-price{font-size:1.12rem!important}.zcard-trend{font-size:.58rem!important;padding:2px 6px!important}
footer,.footer{padding-top:34px!important;padding-bottom:28px!important}
@media(max-width:850px){.hero{padding:28px 0 20px!important}.hero h1{font-size:clamp(30px,9vw,44px)!important}.grid,.two,.toc{grid-template-columns:1fr!important}.links{display:none!important}section{padding:30px 0!important}.card{padding:16px!important}.vct-eco{padding:20px!important}.vct-eco-grid{grid-template-columns:1fr!important}.zcard-mobile{width:58vw!important;max-width:190px!important}}

/* Fix buco bianco FAQ → Guide: ecosistema sempre visibile */
#home-eco,.vct-eco,.vct-eco.reveal{opacity:1!important;visibility:visible!important;transform:none!important}
#home-eco .vct-eco-card{opacity:1!important;visibility:visible!important}

#zone .map-section, #zone{scroll-margin-top:80px}
@media(min-width:901px){
  #situazioni .sit-grid{max-height:none}
}
/* Reduce post-form density: slightly tighter guide+eco spacing already ok */
#guide-2026{padding-top:36px!important;padding-bottom:40px!important}
#zone{padding-top:36px;padding-bottom:40px}

.vct-social{display:flex;flex-wrap:wrap;gap:10px 16px;margin:18px 0 8px;padding-top:4px}
.vct-social a{font-size:13px;font-weight:700;color:rgba(26,46,59,.72);text-decoration:none;border-bottom:1px solid rgba(139,105,20,.35)}
.vct-social a:hover{color:var(--teal-bright,#1a7a6f);border-bottom-color:var(--teal-bright,#1a7a6f)}
