/* =====================================================================
   3P I.C.C.A. — correzioni condivise (ottobre 2026)
   Usato dalla home e da tutte le pagine interne.
   ===================================================================== */
:root{
  --g:#3DA935;        /* verde marchio: logo, icone, cifre grandi */
  --g-dark:#2E7F28;   /* verde per pulsanti e testo (5:1 sul bianco) */
  --g-deep:#21571D;
  --g-tint:#EEF6EC;
  --ink:#24282A;
  --muted:#59615A;
  --line:#E3E9E3;
  --char:#1A1D20;
}

/* ---------- 1. Verde leggibile su pulsanti, link e testo ---------- */
a.bg-green,button.bg-green,.summary-btn,#toTop{background-color:var(--g-dark)!important}
a.bg-green:hover,button.bg-green:hover,.summary-btn:hover,#toTop:hover{background-color:var(--g-deep)!important}
a.text-green,nav .text-green,.hover\:text-green:hover,a.hover\:text-green:hover{color:var(--g-dark)!important}
a.text-green:hover{color:var(--g-deep)!important}
.hover\:text-green-dark:hover{color:var(--g-deep)!important}
/* fascia numeri: verde più profondo così anche le etichette piccole si leggono */
section.stats-band.bg-green{background:radial-gradient(120% 140% at 0% 0%,#318729 0%,#2E7F28 45%,#256B21 100%)!important}
section.stats-band p{color:#fff!important}

/* ---------- 2. Sottotitoli di gruppo (al posto delle eyebrow) ---------- */
.grp-title{font-family:'Archivo',system-ui,sans-serif;font-weight:700;font-size:1.25rem;line-height:1.25;color:var(--ink);letter-spacing:-.01em;margin:2.5rem 0 1rem}
.gov-title{font-family:'Archivo',system-ui,sans-serif;font-weight:800;color:var(--ink);text-align:center;font-size:clamp(1.75rem,3.4vw,2.6rem);line-height:1.1;letter-spacing:-.015em;margin:0 0 .4rem}

/* ---------- 3. Pausa per hero e righe che scorrono ---------- */
.hero-pause{position:absolute;right:max(20px,env(safe-area-inset-right,0px));bottom:26px;z-index:6;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.45);background:rgba(15,17,19,.35);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background .2s}
.hero-pause:hover{background:rgba(15,17,19,.55)}
.hero-pause svg{width:16px;height:16px}
.hero-pause .i-play{display:none}
.hero-pause[aria-pressed="true"] .i-play{display:block}
.hero-pause[aria-pressed="true"] .i-pause{display:none}
.mq.paused .mq-track,.rmq.paused .rtrack,.marquee.paused .marquee-track{animation-play-state:paused!important}

/* ---------- 4. Barra contatti fissa su telefono ---------- */
.mbar{display:none}
@media (max-width:767px){
  .mbar{display:flex;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:58;
    padding:10px max(14px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px));
    background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(14px) saturate(1.4);backdrop-filter:blur(14px) saturate(1.4);
    border-top:1px solid rgba(36,40,42,.08);box-shadow:0 -10px 30px -20px rgba(20,30,20,.45);
    transform:translateY(110%);transition:transform .35s cubic-bezier(.2,.7,.2,1)}
  .mbar.show{transform:none}
  .mbar a{flex:1 1 0;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;font:600 15px/1.1 'Inter',system-ui,sans-serif;text-decoration:none}
  .mbar .mb-call{flex:0 0 auto;padding:0 18px;color:var(--ink);border:1px solid rgba(36,40,42,.2);background:#fff}
  .mbar .mb-quote{background:var(--g-dark);color:#fff}
  .mbar svg{width:18px;height:18px}
  body.has-mbar{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}
  #toTop{display:none!important}
  /* scena "dal progetto alla realtà": più corta su telefono */
  section.morph{height:150vh!important}
}
@media (prefers-reduced-motion:reduce){.mbar{transition:none}}

/* ---------- 5. Aree toccabili più comode ---------- */
footer ul li a{display:inline-block;padding:5px 0}
footer .legal a{display:inline-block;padding:8px 0}
#consenso{width:20px!important;height:20px!important}

/* =====================================================================
   PAGINE INTERNE (ville, capannoni, zone servite, privacy, cookie)
   ===================================================================== */
.sh-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(14px) saturate(1.5);backdrop-filter:blur(14px) saturate(1.5);border-bottom:1px solid rgba(36,40,42,.06);box-shadow:0 6px 24px -18px rgba(20,30,20,.45)}
.sh-in{max-width:80rem;margin:0 auto;padding:0 1.25rem;height:72px;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}
@media(min-width:640px){.sh-in{padding:0 2rem}}
.sh-logo img{height:36px;width:auto;display:block}
@media(min-width:768px){.sh-logo img{height:44px}}
.sh-nav{display:none;align-items:center;gap:1.5rem;font:500 13.5px/1 'Inter',system-ui,sans-serif}
.sh-nav a{color:var(--ink);text-decoration:none;position:relative;padding:8px 0}
.sh-nav a::after{content:"";position:absolute;left:0;bottom:2px;width:0;height:2px;background:var(--g);transition:width .3s}
.sh-nav a:hover::after,.sh-nav a[aria-current="page"]::after{width:100%}
@media(min-width:1024px){.sh-nav{display:flex}}
.sh-right{display:flex;align-items:center;gap:.75rem}
.sh-cta{display:none;align-items:center;background:var(--g-dark);color:#fff;font:600 13px/1 'Inter',system-ui,sans-serif;padding:12px 20px;border-radius:999px;text-decoration:none;transition:background .2s}
.sh-cta:hover{background:var(--g-deep)}
@media(min-width:640px){.sh-cta{display:inline-flex}}
.sh-burger{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin-right:-8px;border:0;background:none;color:var(--ink);cursor:pointer}
@media(min-width:1024px){.sh-burger{display:none}}
.sh-menu{display:none;background:#23262A;color:#fff}
.sh-menu.open{display:block}
.sh-menu nav{display:flex;flex-direction:column;padding:.5rem 1.25rem 1rem}
.sh-menu a{color:#fff;text-decoration:none;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.06);font:500 15px/1.2 'Inter',system-ui,sans-serif}
.sh-menu a:last-child{border-bottom:0}

.seo-hero{max-width:80rem;margin:0 auto;padding:3rem 1.25rem 0;display:grid;gap:2rem;align-items:center}
@media(min-width:640px){.seo-hero{padding:4.5rem 2rem 0}}
@media(min-width:1024px){.seo-hero{grid-template-columns:1.1fr .9fr;gap:3.5rem}}
.seo-hero h1{margin-top:0!important}
.seo-hero figure{margin:0;border-radius:1.5rem;overflow:hidden;aspect-ratio:4/3;box-shadow:0 30px 60px -40px rgba(20,30,20,.55)}
.seo-hero figure img{width:100%;height:100%;object-fit:cover;display:block}

.gal{max-width:80rem;margin:2rem auto 0;padding:0 1.25rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media(min-width:640px){.gal{padding:0 2rem}}
@media(min-width:1024px){.gal{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}}
.gal figure{margin:0;position:relative;border-radius:1rem;overflow:hidden;aspect-ratio:4/3;background:#eef1ee}
.gal img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.gal figure:hover img{transform:scale(1.05)}
.gal figcaption{position:absolute;left:0;right:0;bottom:0;padding:22px 12px 10px;color:#fff;font:600 13px/1.2 'Inter',system-ui,sans-serif;background:linear-gradient(to top,rgba(15,17,19,.72),transparent)}
@media (prefers-reduced-motion:reduce){.gal img{transition:none}}

.zone-photo{margin:-1.5rem -1.5rem 1.25rem;aspect-ratio:16/9;overflow:hidden;border-radius:1rem 1rem 0 0}
.zone-photo img{width:100%;height:100%;object-fit:cover;display:block}

.sh-footer{background:var(--char);color:rgba(255,255,255,.72);margin-top:6rem;padding:4rem 0 2rem}
.sh-footer .in{max-width:80rem;margin:0 auto;padding:0 1.25rem}
@media(min-width:640px){.sh-footer .in{padding:0 2rem}}
.sh-footer .cols{display:grid;gap:2.5rem;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,.1)}
@media(min-width:768px){.sh-footer .cols{grid-template-columns:2fr 1fr 1fr}}
.sh-footer .flogo{height:48px;width:auto;margin-bottom:1rem;filter:brightness(1.18) drop-shadow(0 0 .6px rgba(61,169,53,.95)) drop-shadow(0 0 .6px rgba(61,169,53,.95))}
.sh-footer .slogan{font:italic 16px/1.6 'Archivo',system-ui,sans-serif;color:rgba(255,255,255,.9);max-width:24rem}
.sh-footer .ftitle{font:600 11px/1 'Inter',system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#fff;margin:0 0 1rem}
.sh-footer ul{list-style:none;margin:0;padding:0;font-size:14px;line-height:1.5}
.sh-footer li{margin:0 0 .35rem}
.sh-footer a{color:inherit;text-decoration:none}
.sh-footer a:hover{color:#6BC160}
.sh-footer .az{margin-top:1.25rem;display:inline-flex;align-items:center;gap:.75rem;font-size:12px;line-height:1.3}
.sh-footer .az img{height:28px;width:auto;max-width:180px;opacity:.9}
.sh-footer .bottom{margin-top:2rem;display:flex;flex-direction:column;gap:.5rem;justify-content:space-between;font-size:12px;color:#9A9C9D}
@media(min-width:640px){.sh-footer .bottom{flex-direction:row}}
.sh-footer .legal{display:flex;gap:1rem}

/* hero in pausa: si ferma anche lo zoom lento dell'immagine */
.hero-paused .hero-still,.hero-paused #home .slide.active img{animation-play-state:paused!important}
#contatti a[href^="mailto"],#contatti a[href^="tel"]{display:inline-block;padding:6px 0}
