/* ========================================================
   Il tronco: le regole scritte identiche in tutte le famiglie.
   Rigenerato da Sito/migrazione/estrai_css.py:
   non modificare a mano la parte generata.
   ======================================================== */

.nav{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;height:70px;padding:0 clamp(1rem,4vw,2.6rem);background:rgba(28,43,21,.82);backdrop-filter:blur(10px);border-bottom:1px solid rgba(246,241,231,.08)}
.wordmark{display:flex;align-items:center;gap:.65rem;text-decoration:none;font-family:'Poppins';font-weight:700;color:var(--crema);font-size:1.155rem}
.nav-links{display:flex;gap:1.6rem;font-weight:700;font-size:1.045rem}
.nav-links a{text-decoration:none;color:var(--sage)}
.nav-links a:hover{color:var(--crema)}
.slats{display:inline-flex;flex-direction:column;gap:4px;align-items:center}
.slats i{display:block;height:6px;border-radius:3px}
.slats i:nth-child(1){width:34px;background:var(--verde)}
.slats i:nth-child(2){width:24px;background:var(--terra);transform:translateX(4px)}
.slats i:nth-child(3){width:29px;background:var(--verde);opacity:.7;transform:translateX(-3px)}
.reveal.in{opacity:1;translate:0 0}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal{opacity:1;translate:0 0;transition:none}
}
@media(max-width:640px){
  .storia p,.storia .apertura{font-size:1.16rem}
  .nav-links{gap:.85rem;font-size:.86rem}
  .nav .wordmark{font-size:1.02rem}
}
footer{border-top:1px solid rgba(246,241,231,.08);background:var(--fondo-3);padding:clamp(2.8rem,6vw,4rem) clamp(1.25rem,5vw,3rem) 2rem}
.ft-top{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:clamp(1.8rem,4vw,3rem)}
.ft-brand .wordmark{margin-bottom:.9rem}
.ft-brand p{font-size:1.045rem;color:var(--muted);max-width:30ch}
.ft-col h3{font-family:'Poppins',sans-serif;font-weight:600;font-size:.88rem;letter-spacing:.14em;text-transform:uppercase;color:var(--verde);margin-bottom:.8rem}
.ft-col ul{list-style:none}
.ft-col a{display:inline-block;padding:.6rem 0;text-decoration:none;font-weight:700;font-size:1.045rem;color:var(--sage);transition:color .2s}
.ft-col a:hover{color:var(--crema)}
.ft-bottom{max-width:1140px;margin:clamp(2.2rem,5vw,3rem) auto 0;padding-top:1.8rem;border-top:1px solid rgba(246,241,231,.08);display:flex;flex-direction:column;gap:.7rem;font-size:.935rem;color:var(--muted);line-height:1.65}
.ft-bottom a{color:var(--sage);text-decoration:underline;text-underline-offset:3px}
.ft-bottom a:hover{color:var(--crema)}
.ft-bottom strong{color:var(--sage);font-weight:700}
@media(max-width:860px){
  .ft-top{grid-template-columns:1fr 1fr}
  .ft-brand{grid-column:1/-1}
}
@media(max-width:420px){
  .ft-top{grid-template-columns:1fr;gap:1.4rem}
}
