/* Componenti del tema che sostituiscono i comportamenti del CMS originario. */
:root{--af-vino:#6a2b22;--af-panna:#eeece2;--af-visibili:1;--af-spazio:14px}
/* Evita il rimbalzo orizzontale del viewport e il trascinamento della pagina ai bordi delle gallerie. */
html{scroll-behavior:smooth;overscroll-behavior-x:none}body:has(dialog:modal){overflow:hidden}body{margin:0}
.af-menu-dialogo{border:0;padding:0;margin:0;max-width:none;max-height:none;width:100%;height:100dvh;background:var(--af-panna);color:var(--af-vino);overflow:auto}
.af-menu-dialogo::backdrop{background:transparent}
.af-menu-dialogo:not([open]),.af-luce:not([open]){display:none}
.af-menu-dialogo .af-menu-item{list-style:none}
.af-menu-dialogo .af-menu-item ul{padding-left:24px}
.af-menu-dialogo .af-vista-nav-menu{list-style:none;padding:0}
[data-af-canvas-menu] .af-struttura-pagina{display:none}
[data-af-canvas-menu] [data-af-menu="chiudi"]{display:none}
[data-af-galleria="5"]{--af-visibili:5}
[data-af-galleria] .af-scorrimento-wrapper{overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;gap:var(--af-spazio)}
[data-af-galleria] .af-scorrimento-wrapper::-webkit-scrollbar{display:none}
[data-af-galleria] .af-scorrimento-slide{scroll-snap-align:start}
.af-scorrimento-pagination{display:flex;justify-content:center;gap:8px;padding:10px}
.af-punto{border:0;width:6px;height:6px;border-radius:50%;padding:0;background:currentColor;opacity:.25;cursor:pointer}
.af-punto[aria-current="true"]{opacity:1}
.af-luce{width:100vw;height:100dvh;max-width:none;max-height:none;inset:0;border:0;padding:40px;background:#16120ff2;color:white}
.af-luce[open]{display:flex;align-items:center;justify-content:center}
.af-luce img{max-width:100%;max-height:100%;object-fit:contain}
.af-luce button{position:absolute;right:20px;top:10px;background:transparent;color:white;border:0;font:40px Arial;cursor:pointer}
:focus-visible{outline:2px solid var(--af-vino);outline-offset:5px}
/* Il modulo usa CSRF e instradamento pubblicato del Core, conservando il disegno del riferimento. */
.af-modulo{width:100%;min-width:0;max-width:1120px;margin-inline:auto;color:#444;font:16px magneta,serif;text-align:left}
.af-riga{display:grid;gap:30px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:16px}
.af-riga-date{grid-template-columns:repeat(2,minmax(0,1fr))}
.af-riga-tre{grid-template-columns:4.2fr 1fr 1fr}
.af-riga label,.af-modulo>label{display:flex;flex-direction:column;gap:6px;min-width:0;font-weight:700;line-height:1.4}
.af-modulo input:not([type=checkbox]),.af-modulo select,.af-modulo textarea{width:100%;min-width:0;max-width:100%;min-height:48px;border:1px solid #cfd2d5;border-radius:2px;background:#fff;color:#666;padding:10px 12px;font:16px magneta,serif}
.af-modulo input[type=date]{min-height:50px}
.af-modulo textarea{min-height:120px;height:120px;resize:vertical}
.af-telefono{display:flex;align-items:center;min-width:0;background:white;border:1px solid #cfd2d5;border-radius:2px}
.af-telefono select{flex:0 0 105px;width:105px;border:0}
.af-telefono input[type=tel]{flex:1;width:0;border:0;min-width:0}
.af-nota-modulo{text-align:right;font-style:italic;margin:12px 0}
.af-modulo .af-invia{display:block;margin-left:auto}
.af-modulo .af-consenso{display:flex;flex-direction:row;align-items:start;justify-content:flex-start;gap:10px;margin:16px 0;font-weight:400;line-height:1.5}
.af-consenso input{flex:0 0 18px;width:18px;height:18px;margin-top:3px}
.af-invia{background:var(--af-vino);color:white;border:1px solid var(--af-vino);border-radius:3px;padding:13px 25px;cursor:pointer;font:16px Arial,sans-serif}
.af-invia:hover{background:#512219}.af-invia:disabled{opacity:.6;cursor:wait}
.af-esito:empty{display:none}.af-esito{margin:18px 0;padding:15px;border:1px solid currentColor}
@media(max-width:767px){[data-af-galleria="5"]{--af-visibili:1}.af-riga{gap:12px;grid-template-columns:1fr}.af-riga-date,.af-riga-tre{grid-template-columns:repeat(2,minmax(0,1fr))}.af-riga-tre>label:first-child{grid-column:1/-1}.af-modulo{font-size:14px}.af-modulo .af-invia{width:100%;min-height:48px;margin-top:20px}.af-nota-modulo{text-align:left}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms;transition-duration:.01ms}}

/* Il Core aggiunge un selettore a fondo pagina: questo tema usa quello originale in header/menu. */
body .pigu-lingue{display:none}
