:root{--bg:#ffffff;--fg:#111;--muted:#333;--accent:#147814}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--fg);
  line-height:1.65;

  /* Full-page background with lighter overlay */
  background-image: linear-gradient(rgba(255,255,255,0.6), rgba(255,255,255,0.6)), url('img/man-scaled.jpg');
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
a{color:inherit}
.container{width:min(100%,780px);margin:0 auto;padding:0 16px}
header{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px 0}
header img{height:44px}
.claim{margin-top:6px;color:#147814;font-weight:900;letter-spacing:.2px}
main{padding:10px 0 40px}
.hero{display:grid;gap:12px;place-items:center;text-align:center;padding:30px 0 40px}
.hero h1{margin:8px 0 0;font-size:clamp(22px,4vw,36px);font-weight:900;color:#000}
.hero p.ln{max-width:760px;color:#222;margin:0}
ul.points{list-style:"•  ";padding-left:1ch;margin:8px 0;max-width:720px;text-align:left;font-size:18px}
.cta{display:inline-block;background:#147814;color:#fff;border:none;border-radius:999px;padding:10px 16px;font-weight:800;text-decoration:none;cursor:pointer}
.cta:hover{filter:brightness(1.05);transform:translateY(-1px)}
.cta:active{transform:translateY(0)}
section.block{padding:22px 0 8px}
footer{text-align:center;color:#000;padding:18px 0;background:transparent}
footer img{height:28px}
small.copy{display:block;opacity:.9}
.hr{height:1px;background:rgba(0,0,0,.08);margin:16px 0}
.sec-title{font-weight:900;margin:0 0 8px;color:#000}
.legal{color:#000}
form{display:grid;gap:10px;place-items:center;margin-top:10px}
input[type="text"], input[type="email"]{width:100%;max-width:420px;padding:12px 14px;border-radius:12px;border:1px solid rgba(0,0,0,.2);background:#fff;color:#000}




/* === FIX sfondo uniforme + footer trasparente === */

/* 1) Overlay bianco + immagine su TUTTA la pagina */
html, body { height: 100%; }
body{
  background-image:
    linear-gradient(rgba(255,255,255,0.60), rgba(255,255,255,0.60)),
    url('img/man-scaled.jpg');
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: scroll; /* metti "fixed" se vuoi effetto parallax desktop */
}

/* 2) Togli qualsiasi background locale che copra l’overlay */
header, main, footer, section, .container, .hero,
footer *, .site-footer, .site-footer * {
  background: transparent !important;
}

/* 3) Togli layer/ombre/bordi del footer */
footer, .site-footer {
  box-shadow: none !important;
  border: 0 !important;
}
footer::before, footer::after,
.site-footer::before, .site-footer::after {
  content: none !important;
}

/* 4) Se il footer ha un colore inline (style="background:...") o classe più specifica */
footer[style], .site-footer[style] { background: transparent !important; }

/* === Overlay bianco uniforme su TUTTA la pagina (anche sotto il footer) === */
html, body { height: 100%; }
body {
  position: relative;               /* crea stacking context per lo pseudo-elemento */
}

/* L’overlay sta SOPRA a qualunque background delle sezioni, ma SOTTO ai testi */
body::before {
  content: "";
  position: fixed;                  /* copre tutta la viewport, anche scroll */
  inset: 0;
  z-index: 1;                       /* overlay sopra i background dei contenuti */
  pointer-events: none;             /* non intercetta click/hover */
  background-image:
    linear-gradient(rgba(255,255,255,0.60), rgba(255,255,255,0.60)),
    url('img/man-scaled.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  /* se vuoi effetto “parallax” desktop: background-attachment: fixed; */
}

/* Tutti i contenuti stanno SOPRA l’overlay e NON hanno background proprio */
header, main, footer, section, .container, .hero,
.site-footer, .site-footer * , footer *, header * , main * {
  position: relative;
  z-index: 2;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border: 0 !important;
}

/* (extra difensivo) Se il footer ha uno style inline con background, annulla */
footer[style], .site-footer[style] {
  background: transparent !important;
  background-image: none !important;
}

/* === FIX mirato: ripristina bg CTA + campi form === */

/* 1) CTA verde identico all’originale */
button.cta, .cta {
  background: #147814 !important;
  color: #fff;
}

/* 2) Campi del form con sfondo bianco */
input[type="text"],
input[type="email"],
input[type="password"],
textarea,
select {
  background: #fff !important;
  border: 1px solid rgba(0,0,0,.2);
  color: #000;
}

/* Placeholder più tenue (opzionale) */
input::placeholder, textarea::placeholder { color: #666; }


#subscribe-message{
  font-size: 1.2rem;
}

#subscribe-message .success{
  color: #147814;
}

#subscribe-message .error{
  color: #d93025;
}