/* Font serviti dal sito (licenza SIL OFL, testi in /fonts): nessuna richiesta a Google Fonts. */
@font-face{font-family:'Lilita One';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/lilita-one-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Lilita One';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/lilita-one-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Nunito';font-style:normal;font-weight:400 900;font-display:swap;src:url(../fonts/nunito-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Nunito';font-style:normal;font-weight:400 900;font-display:swap;src:url(../fonts/nunito-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

/* Stesso stile del sito della sagra (contorni marroni, ombre piene sfalsate), con il verde del logo della Pro Loco. */
:root{
  --panna:#FFF4DC;
  --panna-2:#FFE7BD;
  --bruno:#4A2210;
  --verde:#1F5E2E;
  --verde-2:#2E7A3D;
  --arancio:#F08A24;
  --rosso:#C2401E;
  --testo:#3A1D0E;
  --grigio:#6E5140;
  --linea:3px solid var(--bruno);
  --ombra:6px 7px 0 var(--bruno);
  --ombra-s:3px 4px 0 var(--bruno);
  --f-display:"Lilita One","Arial Rounded MT Bold","Trebuchet MS",sans-serif;
  --f-body:"Nunito","Trebuchet MS",system-ui,sans-serif;
  --gutter:16px;
  color-scheme:light;
  --colline:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 60' preserveAspectRatio='none'%3E%3Cpath d='M0 60V34C90 10 170 6 260 22s170 30 260 12 160-38 260-30 170 34 250 26 120-28 170-30V60Z'/%3E%3C/svg%3E");
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--panna);color:var(--testo);font-family:var(--f-body);font-size:17.5px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
h1,h2{margin:0;font-family:var(--f-display);font-weight:400;line-height:1.08;text-wrap:balance}
p{margin:0}
a{color:inherit}
:focus-visible{outline:3px solid var(--arancio);outline-offset:4px;border-radius:10px}

.pagina{flex:1;width:100%;max-width:760px;margin-inline:auto;padding:clamp(28px,6vw,64px) var(--gutter) 72px;display:flex;flex-direction:column;gap:clamp(32px,6vw,48px)}

/* ---------- intestazione ---------- */
.intesta{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px}
.logo{width:clamp(150px,34vw,220px);aspect-ratio:1;border-radius:50%;background:#fff;border:var(--linea);box-shadow:var(--ombra)}
.occhiello{margin-top:8px;text-wrap:balance;font-weight:900;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--grigio)}
.intesta h1{font-size:clamp(40px,9vw,66px);color:var(--verde)}
.sotto{max-width:34em;font-size:clamp(17px,2.4vw,19px);color:var(--grigio)}

/* ---------- card della sagra ---------- */
.sagra{display:block;text-decoration:none;background:#fff;border:var(--linea);border-radius:28px;box-shadow:var(--ombra);overflow:hidden;transition:transform .2s,box-shadow .2s}
.sagra:hover{transform:translate(-2px,-3px) rotate(-.4deg);box-shadow:9px 11px 0 var(--bruno)}
.sagra img{width:100%;aspect-ratio:960/416;object-fit:cover;border-bottom:var(--linea)}
.sagra-testo{padding:20px 22px 24px;display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.etichetta{font-weight:900;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:var(--rosso);border:2px solid var(--bruno);border-radius:999px;padding:2px 12px}
.sagra h2{font-size:clamp(24px,4.4vw,32px);color:var(--bruno)}
.sagra p{font-weight:800;color:var(--grigio)}
.bottone{margin-top:6px;display:inline-flex;gap:8px;align-items:center;font-family:var(--f-display);font-size:19px;letter-spacing:.02em;color:#fff;background:var(--arancio);border:var(--linea);border-radius:999px;box-shadow:var(--ombra-s);padding:8px 20px}
.sagra:hover .bottone{background:var(--rosso)}

/* ---------- contatti ---------- */
.contatti{text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px}
.contatti h2{font-size:clamp(24px,4vw,30px);color:var(--verde)}
.contatti-link{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.pill{display:inline-flex;gap:8px;align-items:baseline;text-decoration:none;font-weight:700;background:var(--panna-2);border:var(--linea);border-radius:999px;box-shadow:var(--ombra-s);padding:10px 20px;transition:transform .2s,background .2s}
.pill b{font-weight:900;color:var(--verde)}
.pill:hover{transform:translateY(-2px);background:#fff}

/* ---------- piè di pagina con le colline ---------- */
footer{position:relative;background:var(--verde);color:#fff;text-align:center;font-size:15px;padding:28px var(--gutter) calc(28px + env(safe-area-inset-bottom,0px))}
footer::before{content:"";position:absolute;left:0;right:0;top:-44px;height:46px;background:var(--verde);-webkit-mask:var(--colline) center/100% 100% no-repeat;mask:var(--colline) center/100% 100% no-repeat}
footer p+p{margin-top:4px;opacity:.9}
footer a{font-weight:800}

/* ---------- informativa ---------- */
.legale{max-width:760px;margin-inline:auto;padding:40px var(--gutter) 72px}
.legale h1{font-size:clamp(34px,7vw,48px);color:var(--verde);margin-bottom:8px}
.legale h2{font-size:24px;color:var(--verde);margin:28px 0 8px}
.legale p+p{margin-top:10px}
.legale .torna{display:inline-block;margin-bottom:24px;font-weight:800}
.legale small{color:var(--grigio)}
.legale .data{margin-top:28px}

@media (prefers-reduced-motion:reduce){.sagra,.pill{transition:none}.sagra:hover,.pill:hover{transform:none}}
