/* Animalinelmondo - stili del tema (estratti da theme.json per il caching) */
/* Nessun max-width sul form contatti, di proposito: dentro il layout
   "constrained" prende da solo la larghezza del testo e ci resta allineato.
   Col vecchio 640px il layout lo centrava, e i campi partivano rientrati da
   entrambi i lati rispetto al paragrafo che li introduce. Attenzione a
   rimetterne uno: qualsiasi cap qui ricrea il rientro. Vale anche per il
   form storie, che condivide questa classe. */
.anm-honeypot{position:absolute !important;left:-9999px;width:1px;height:1px;overflow:hidden}
.anm-form-riga{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media (max-width:600px){.anm-form-riga{grid-template-columns:1fr}}
.anm-campo{margin:0 0 1.1rem;display:flex;flex-direction:column;gap:.35rem}
.anm-campo label{font-weight:600;font-size:.9rem;color:var(--wp--preset--color--primary-dark)}
.anm-campo input,.anm-campo select,.anm-campo textarea{font:inherit;font-size:.97rem;color:var(--wp--preset--color--contrast);background:var(--wp--preset--color--surface);border:1.5px solid var(--wp--preset--color--border);border-radius:12px;padding:.7rem .9rem;transition:border-color .2s,box-shadow .2s}
.anm-campo textarea{resize:vertical;border-radius:14px}
.anm-campo input:focus,.anm-campo select:focus,.anm-campo textarea:focus{outline:0;border-color:var(--wp--preset--color--primary);box-shadow:0 0 0 4px rgba(45,106,79,.1)}
.anm-campo-hint{margin:-.5rem 0 1.1rem;padding:.6rem .9rem;font-size:.88rem;color:var(--wp--preset--color--contrast);background:var(--wp--preset--color--surface);border-left:3px solid var(--wp--preset--color--primary);border-radius:0 10px 10px 0}
.anm-campo-check{margin:0 0 1.3rem;font-size:.9rem;color:var(--wp--preset--color--muted)}
.anm-campo-check input{margin-right:.4rem}
.anm-form-esito{display:flex;gap:1rem;align-items:center;border-radius:14px;padding:1.1rem 1.3rem;margin:0 0 1.3rem}
.anm-form-ok{background:rgba(183,228,199,.4);border:1px solid var(--wp--preset--color--secondary);color:var(--wp--preset--color--primary-dark)}
.anm-form-ok svg{flex:none;color:var(--wp--preset--color--primary)}
.anm-form-ko{background:rgba(200,90,60,.08);border:1px solid rgba(200,90,60,.35);color:#8a3d28}
.anm-nomi-conteggio{font-family:var(--wp--preset--font-family--heading);font-weight:600;font-size:1.2rem;color:var(--wp--preset--color--primary-dark);margin:1.2rem 0 .9rem}
.anm-nomi-lista{list-style:none;margin:0;padding:0;columns:9rem auto;column-gap:2rem}
.anm-nomi-lista li{break-inside:avoid;padding:.18rem 0;font-size:.95rem;border-bottom:1px solid var(--wp--preset--color--border)}
.anm-vuoto{text-align:center;padding:2.6rem 1.5rem;background:var(--wp--preset--color--surface);border:1.5px dashed var(--wp--preset--color--border);border-radius:16px;color:var(--wp--preset--color--muted)}
.anm-vuoto svg{color:var(--wp--preset--color--secondary);margin-bottom:.6rem}
.anm-vuoto-titolo{margin:0 0 .35rem;font-family:var(--wp--preset--font-family--heading);font-weight:600;font-size:1.2rem;color:var(--wp--preset--color--primary-dark)}
.anm-vuoto-testo{margin:0 0 1.1rem;font-size:.95rem}
.anm-vuoto p:last-child{margin:0}
.anm-filtri-cerca button{flex:none;margin:.22rem 0;padding:.5rem 1.15rem;font-size:.85rem}
.anm-schede-sezione,.anm-archivio-sezione{transition:opacity .2s ease;scroll-margin-top:5.5rem}
.anm-schede-sezione[aria-busy=true],.anm-archivio-sezione[aria-busy=true]{opacity:.45;pointer-events:none}
/* Ultimi articoli della 404: fascia larga come lo stage, non incassata nella
   colonna del testo — è il rilancio dopo il vicolo cieco, e quattro card in
   fila fanno vedere subito che il portale continua. Quattro, poi due, poi una:
   la soglia è la stessa dei correlati dell'articolo. */
.anm-404-ultimi .wp-block-post-template{grid-template-columns:repeat(2,1fr)}
@media (min-width:1111px){.anm-404-ultimi .wp-block-post-template{grid-template-columns:repeat(4,1fr)}}
@media (max-width:599px){.anm-404-ultimi .wp-block-post-template{grid-template-columns:1fr}}
.anm-404-azioni .anm-search{max-width:600px}
.anm-404-azioni .anm-search:focus-within{max-width:600px}
.anm-filtri-attivi{display:flex;flex-wrap:wrap;gap:.45rem;margin:-.5rem 0 1.4rem}
.anm-fchip{display:inline-flex;align-items:center;gap:.45rem;padding:.22rem .8rem;border-radius:999px;background:rgba(183,228,199,.45);border:1px solid var(--wp--preset--color--secondary);color:var(--wp--preset--color--primary-dark);font-size:.85rem;font-weight:600;text-decoration:none;transition:background .2s,border-color .2s}
.anm-fchip:hover{background:var(--wp--preset--color--secondary)}
.anm-fchip .anm-fchip-x{display:inline-flex;align-items:center;justify-content:center;width:1.05rem;height:1.05rem;border-radius:50%;background:rgba(27,67,50,.12);font-size:.8rem;line-height:1}
.anm-fchip:hover .anm-fchip-x{background:rgba(27,67,50,.22)}
.anm-fchip-tutti{background:transparent;border-color:var(--wp--preset--color--border);color:var(--wp--preset--color--muted)}
.anm-fchip-tutti:hover{background:var(--wp--preset--color--surface);border-color:var(--wp--preset--color--muted)}
.anm-search{cursor:text}
.anm-footer{position:relative;overflow:hidden;background-image:radial-gradient(50rem 26rem at 90% -10%,rgba(74,140,108,.4),transparent 62%),radial-gradient(38rem 22rem at -8% 108%,rgba(200,145,95,.18),transparent 60%),linear-gradient(202deg,#21513D 0%,#1B4332 48%,#16382A 100%)}
.anm-footer::after{content:"";position:absolute;width:26rem;height:26rem;left:-6rem;bottom:-8rem;background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 64 64%27 fill=%27%23FFFFFF%27 fill-opacity=%27.03%27%3E%3Cellipse cx=%2722%27 cy=%2720%27 rx=%277%27 ry=%279%27/%3E%3Cellipse cx=%2742%27 cy=%2720%27 rx=%277%27 ry=%279%27/%3E%3Cellipse cx=%2710%27 cy=%2734%27 rx=%276%27 ry=%278%27/%3E%3Cellipse cx=%2754%27 cy=%2734%27 rx=%276%27 ry=%278%27/%3E%3Cpath d=%27M32 30c-9 0-17 8-17 16 0 6 5 9 9 9 3 0 5-1 8-1s5 1 8 1c4 0 9-3 9-9 0-8-8-16-17-16z%27/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;transform:rotate(14deg);pointer-events:none}
.anm-footer > *{position:relative;z-index:1}
.anm-footer-top{display:grid;grid-template-columns:1.2fr 1fr;gap:2.5rem;align-items:end;padding-bottom:2.2rem;border-bottom:1px solid rgba(255,255,255,.12)}
@media (max-width:899px){.anm-footer-top{grid-template-columns:1fr;align-items:stretch;gap:1.6rem}}
.anm-footer-cerca-label{margin:0 0 .7rem;font-family:var(--wp--preset--font-family--heading);font-weight:600;font-size:1.15rem;color:var(--wp--preset--color--base)}
.anm-footer-cerca .anm-search{border-color:rgba(255,255,255,.25);max-width:480px}
.anm-footer-cerca .anm-search:focus-within{box-shadow:0 0 0 4px rgba(183,228,199,.18);max-width:480px}
@media (max-width:899px){.anm-footer-cerca .anm-search,.anm-footer-cerca .anm-search:focus-within{max-width:none}}
.anm-footer-animali{display:grid;grid-template-columns:repeat(9,1fr);align-items:start;gap:1rem;padding:2rem 0;border-bottom:1px solid rgba(255,255,255,.12)}
/* Sotto i 900px i nove medaglioni vanno sempre 3 per riga: griglia piena 3x3
   invece della fila da 5 più una seconda riga spaiata da 4 (su iPad 10"
   verticale restava mozza a metà). Sulla fascia tablet ci sarebbe troppo spazio
   per tre sole colonne: i cerchi salgono da 100 a 132px e le colonne sono
   limitate a 11.5rem e centrate con justify-content, così i tondi restano
   vicini. Il limite sta sulle COLONNE e non sul contenitore, altrimenti anche
   la linea di separazione in fondo rientrerebbe rispetto al resto del footer. */
@media (max-width:899px){.anm-footer-animali{grid-template-columns:repeat(3,1fr);gap:1.6rem 1rem}}
@media (min-width:600px) and (max-width:899px){.anm-footer-animali{grid-template-columns:repeat(3,minmax(0,11.5rem));justify-content:center}.anm-footer-animali .anm-fa img{width:132px}}
.anm-fa{display:flex;flex-direction:column;align-items:center;gap:.5rem;text-decoration:none}
.anm-fa img{width:100px;height:auto;aspect-ratio:1;max-width:100%;border-radius:50%;object-fit:cover;border:3px solid rgba(255,255,255,.18);transition:transform .25s ease,border-color .25s ease}
/* Foto rappresentative in posa laterale/decentrata: sposto il crop orizzontale così la testa non viene tagliata */
.anm-fa--cani img{object-position:55% 50%}
.anm-fa--cavalli img{object-position:8% 50%}
.anm-fa--gatti img{object-position:45% 50%}
.anm-fa--mammiferi img{object-position:65% 50%}
.anm-fa--rettili img{object-position:90% 50%}
.anm-fa--volatili img{object-position:90% 50%}
.anm-fa:hover img{transform:scale(1.1) rotate(-3deg);border-color:var(--wp--preset--color--secondary)}
.anm-fa span{font-size:.78rem;font-weight:600;color:rgba(250,247,240,.85)}
.anm-fa:hover span{color:#fff}
html{scroll-behavior:smooth}
.wp-site-blocks > footer{margin-block-start:0}
.anm-footer-col a{display:inline-block;transition:color .2s,transform .2s}
.anm-footer-col a:hover{transform:translateX(3px)}
.anm-top{display:inline-flex;align-items:center;gap:.3rem;color:rgba(250,247,240,.8);text-decoration:none;font-size:.8125rem;transition:color .2s}
.anm-top:hover{color:#fff}
.anm-hero{--anm-hero-accento:var(--wp--preset--color--secondary);position:relative;overflow:hidden;background-image:radial-gradient(56rem 30rem at 88% -12%,rgba(74,140,108,.5),transparent 62%),radial-gradient(42rem 26rem at -8% 112%,rgba(200,145,95,.22),transparent 60%),linear-gradient(158deg,#16382A 0%,#1B4332 52%,#21513D 100%)}
.anm-hero::after{content:"";position:absolute;width:30rem;height:30rem;right:-7rem;bottom:-9rem;background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 64 64%27 fill=%27%23FFFFFF%27 fill-opacity=%27.035%27%3E%3Cellipse cx=%2722%27 cy=%2720%27 rx=%277%27 ry=%279%27/%3E%3Cellipse cx=%2742%27 cy=%2720%27 rx=%277%27 ry=%279%27/%3E%3Cellipse cx=%2710%27 cy=%2734%27 rx=%276%27 ry=%278%27/%3E%3Cellipse cx=%2754%27 cy=%2734%27 rx=%276%27 ry=%278%27/%3E%3Cpath d=%27M32 30c-9 0-17 8-17 16 0 6 5 9 9 9 3 0 5-1 8-1s5 1 8 1c4 0 9-3 9-9 0-8-8-16-17-16z%27/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;transform:rotate(-18deg);pointer-events:none}
.anm-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:3rem;align-items:center}
.anm-hero-badge{display:inline-flex;align-items:center;gap:.45rem;padding:.4rem 1rem;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:var(--anm-hero-accento);font-size:.82rem;font-weight:600;letter-spacing:.02em;margin-bottom:1.2rem}
.anm-hero-testo h1{margin:0;font-size:var(--wp--preset--font-size--xx-large);color:var(--wp--preset--color--base);line-height:1.08}
.anm-hero-sub{margin:.9rem 0 0;font-size:var(--wp--preset--font-size--large);color:var(--anm-hero-accento);line-height:1.5}
.anm-hero-foto{position:relative;min-height:380px}
.anm-hf{position:absolute;object-fit:cover;border:5px solid rgba(255,255,255,.14);box-shadow:0 18px 48px rgba(10,28,20,.45)}
.anm-hf1{width:62%;aspect-ratio:1;border-radius:42% 58% 52% 48%/48% 44% 56% 52%;top:4%;left:6%;animation:anm-galleggia 8s ease-in-out infinite alternate}
.anm-hf2{width:42%;aspect-ratio:1;border-radius:50%;right:2%;top:0;animation:anm-galleggia 10s ease-in-out 1s infinite alternate-reverse}
.anm-hf3{width:38%;aspect-ratio:1;border-radius:55% 45% 48% 52%/52% 55% 45% 48%;right:14%;bottom:0;object-position:86% 50%;animation:anm-galleggia 9s ease-in-out .5s infinite alternate}
@keyframes anm-galleggia{from{transform:translateY(-7px) rotate(-1deg)}to{transform:translateY(9px) rotate(1.2deg)}}
@media (prefers-reduced-motion:reduce){.anm-hf{animation:none}}
@media (max-width:899px){.anm-hero-grid{grid-template-columns:1fr;gap:0}}
.anm-hero-hub .anm-hero-grid{gap:2.5rem}
.anm-hero-hub .anm-hero-testo h1{font-size:clamp(2rem,4.5vw,2.9rem)}
.anm-hero-hub .anm-hero-foto{min-height:330px}
.anm-hero-hub .anm-breadcrumb{margin:0 0 1.7rem;color:rgba(250,247,240,.72)}
.anm-hero-hub .anm-breadcrumb a{color:rgba(250,247,240,.72)}
.anm-hero-hub .anm-breadcrumb a:hover{color:#fff}
.anm-hero-hub .anm-breadcrumb-sep{color:rgba(250,247,240,.38)}
.anm-hero-hub .anm-breadcrumb span[aria-current]{color:var(--anm-hero-accento)}
.anm-hero-stats{margin-top:1.4rem}
.anm-hero-stats a strong{font-weight:800;color:var(--anm-hero-accento)}
.anm-hero-stats .anm-hero-badge{margin-bottom:0}
.anm-hero-hub::after{content:none}
.anm-hero-marchio{position:absolute;width:30rem;height:30rem;right:-7rem;bottom:-9rem;color:#fff;opacity:.035;transform:rotate(-18deg);pointer-events:none}
.anm-hub-cani .anm-hero{--anm-hero-accento:#DDE8AE;background-image:radial-gradient(56rem 30rem at 88% -12%,rgba(150,180,80,.4),transparent 62%),radial-gradient(42rem 26rem at -8% 112%,rgba(220,200,120,.18),transparent 60%),linear-gradient(158deg,#28330F 0%,#333F14 52%,#3E4C1A 100%)}
.anm-hub-gatti .anm-hero{--anm-hero-accento:#D6DFE8;background-image:radial-gradient(56rem 30rem at 88% -12%,rgba(140,160,185,.42),transparent 62%),radial-gradient(42rem 26rem at -8% 112%,rgba(205,205,215,.18),transparent 60%),linear-gradient(158deg,#2A323C 0%,#353F4C 52%,#414D5C 100%)}
.anm-hub-cavalli .anm-hero{--anm-hero-accento:#F2D5AE;background-image:radial-gradient(56rem 30rem at 88% -12%,rgba(190,130,70,.45),transparent 62%),radial-gradient(42rem 26rem at -8% 112%,rgba(235,195,130,.2),transparent 60%),linear-gradient(158deg,#3A2415 0%,#4A2E1B 52%,#5A3922 100%)}
.anm-hub-pesci .anm-hero{--anm-hero-accento:#B5E0EC;background-image:radial-gradient(56rem 30rem at 88% -12%,rgba(64,148,180,.5),transparent 62%),radial-gradient(42rem 26rem at -8% 112%,rgba(140,200,210,.2),transparent 60%),linear-gradient(158deg,#0C2E3F 0%,#0F3D53 52%,#134C67 100%)}
.anm-hub-volatili .anm-hero{--anm-hero-accento:#C6DAF4;background-image:radial-gradient(56rem 30rem at 88% -12%,rgba(98,148,212,.5),transparent 62%),radial-gradient(42rem 26rem at -8% 112%,rgba(232,182,118,.22),transparent 60%),linear-gradient(158deg,#152A48 0%,#1B375E 52%,#224672 100%)}
.anm-hub-rettili .anm-hero{--anm-hero-accento:#F4E4BC;background-image:radial-gradient(56rem 30rem at 88% -12%,rgba(230,195,125,.45),transparent 62%),radial-gradient(42rem 26rem at -8% 112%,rgba(245,225,170,.22),transparent 60%),linear-gradient(158deg,#4A3A20 0%,#5C4A2C 52%,#6E5A38 100%)}
.anm-hub-anfibi .anm-hero{--anm-hero-accento:#AFE2D7;background-image:radial-gradient(56rem 30rem at 88% -12%,rgba(70,180,165,.4),transparent 62%),radial-gradient(42rem 26rem at -8% 112%,rgba(160,210,160,.18),transparent 60%),linear-gradient(158deg,#0F3A36 0%,#144842 52%,#19564F 100%)}
.anm-hub-invertebrati .anm-hero{--anm-hero-accento:#EADDC6;background-image:radial-gradient(56rem 30rem at 88% -12%,rgba(190,165,130,.4),transparent 62%),radial-gradient(42rem 26rem at -8% 112%,rgba(220,200,165,.2),transparent 60%),linear-gradient(158deg,#4E4234 0%,#5E5040 52%,#6E5E4C 100%)}
.anm-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:1.5rem}
.wp-site-blocks > main{margin-block-start:0}
.anm-hero-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1.1rem}
.anm-hero-chips-label{flex-basis:100%;font-size:.85rem;color:var(--anm-hero-accento)}
.anm-hero-chips a{display:inline-flex;padding:.4rem 1rem;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);color:var(--wp--preset--color--base);text-decoration:none;font-size:.88rem;font-weight:600;transition:background .2s,border-color .2s}
.anm-hero-chips a:hover{background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.5)}
.anm-gcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:1.25rem}
.anm-gcard{position:relative;display:block;border-radius:16px;overflow:hidden;aspect-ratio:4/3;box-shadow:var(--wp--preset--shadow--card);text-decoration:none;transition:transform .25s ease,box-shadow .25s ease;background:var(--wp--preset--color--primary-dark)}
.anm-gcard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.anm-gcard::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(27,67,50,0) 40%,rgba(27,67,50,.82) 100%)}
.anm-gcard:hover{transform:translateY(-3px);box-shadow:var(--wp--preset--shadow--card-hover)}
.anm-gcard:hover img{transform:scale(1.05)}
.anm-gcard-testo{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;flex-direction:column;padding:.9rem 1rem}
.anm-gcard-nome{font-family:var(--wp--preset--font-family--heading);font-weight:650;font-size:1.2rem;color:#fff}
.anm-gcard-n{font-size:.8rem;color:rgba(255,255,255,.85)}
/* auto-fit e non auto-fill: con 4 card in una griglia larga, auto-fill teneva
   viva una quinta colonna vuota e la fila finiva prima del margine destro,
   fuori asse rispetto al testo. auto-fit collassa la traccia vuota. */
.anm-rcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1.25rem}
/* variante a due per riga, dentro la colonna del testo (Collabora): le card
   sono poche e stanno in mezzo alla lettura, quindi devono condividere i
   margini del testo invece di sfondarli. Il min() le fa scendere a una sola
   colonna quando la colonna è più stretta della card, senza media query. */
.anm-rcards-due{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr))}
.anm-rcard{display:flex;flex-direction:column;gap:.45rem;padding:1.25rem 1.3rem;border-radius:16px;background:var(--wp--preset--color--surface);box-shadow:var(--wp--preset--shadow--card);text-decoration:none;border-top:3px solid var(--wp--preset--color--secondary);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.anm-rcard:hover{transform:translateY(-3px);box-shadow:var(--wp--preset--shadow--card-hover);border-top-color:var(--wp--preset--color--accent)}
.anm-rcard-nome{font-family:var(--wp--preset--font-family--heading);font-weight:650;font-size:1.1rem;color:var(--wp--preset--color--primary-dark)}
.anm-rcard-desc{font-size:.9rem;color:var(--wp--preset--color--muted);line-height:1.5}
.anm-rcard-n{font-size:.78rem;font-weight:600;color:var(--wp--preset--color--primary);margin-top:auto}
.anm-giorno{display:grid;grid-template-columns:1.05fr 1fr;border-radius:20px;overflow:hidden;background:var(--wp--preset--color--surface);box-shadow:var(--wp--preset--shadow--card)}
.anm-giorno-foto{display:block;min-height:280px}
.anm-giorno-foto img{width:100%;height:100%;object-fit:cover;border-radius:0}
.anm-giorno-testo{display:flex;flex-direction:column;gap:.6rem;justify-content:center;padding:2rem 2.2rem}
.anm-giorno-eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--wp--preset--color--accent)}
.anm-giorno-testo h3{margin:0;font-size:1.7rem}
.anm-giorno-testo h3 a{text-decoration:none;color:var(--wp--preset--color--primary-dark)}
.anm-giorno-testo h3 a:hover{color:var(--wp--preset--color--primary)}
.anm-giorno-meta{margin:0;font-size:.85rem;font-weight:600;color:var(--wp--preset--color--primary)}
.anm-giorno-abstract{margin:0;color:var(--wp--preset--color--muted);line-height:1.6}
@media (max-width:781px){.anm-giorno{grid-template-columns:1fr}.anm-giorno-foto{aspect-ratio:16/9;min-height:0}.anm-giorno-testo{padding:1.4rem 1.5rem}}
.anm-more-chiaro{color:var(--wp--preset--color--secondary)}
.anm-more-chiaro:hover{color:#fff}
.anm-numeri{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:1.8rem;text-align:center}
.anm-numero{display:flex;flex-direction:column;gap:.15rem}
.anm-numero-n{font-family:var(--wp--preset--font-family--heading);font-weight:650;font-size:2.7rem;line-height:1;color:var(--wp--preset--color--primary-dark)}
.anm-numero-label{font-size:.9rem;color:var(--wp--preset--color--primary-dark);opacity:.8}
.anm-header .anm-search-layer{max-width:none;width:auto;margin:0 !important}
@media (max-width:899px){.anm-logo-img{height:38px}.anm-logo-footer .anm-logo-img{height:46px}.anm-header-row{gap:.8rem}.anm-header .wp-block-navigation__responsive-container:not(.is-menu-open){display:none}.anm-header .wp-block-navigation__responsive-container-open{display:flex !important}}
@media (min-width:900px) and (max-width:1199px){.anm-header .wp-block-navigation .wp-block-navigation__container{gap:1rem}.anm-header .wp-block-navigation{font-size:.9rem}}
.anm-header{border-top:3px solid;border-image:linear-gradient(90deg,var(--wp--preset--color--secondary),var(--wp--preset--color--accent)) 1}
.anm-header-row{gap:1.5rem}
.anm-header .wp-block-navigation{flex:1 1 0;min-width:0;justify-content:flex-end}
.anm-header .wp-block-navigation .wp-block-navigation__container{flex-wrap:nowrap;gap:1.35rem;justify-content:flex-end}
.anm-header .wp-block-navigation a{position:relative;text-decoration:none;padding:.2rem 0}
.anm-header .wp-block-navigation a::after{content:"";position:absolute;left:0;right:100%;bottom:-2px;height:2px;border-radius:2px;background:var(--wp--preset--color--primary);transition:right .25s ease}
.anm-header .wp-block-navigation a:hover::after,.anm-header .wp-block-navigation a[aria-current=page]::after{right:0}
.anm-header .wp-block-navigation a:hover,.anm-header .wp-block-navigation a[aria-current=page]{color:var(--wp--preset--color--primary)}
.anm-search-hero{max-width:560px;margin-top:var(--wp--preset--spacing--40);padding:.4rem .45rem .4rem 1.2rem}
.anm-search-hero:focus-within{max-width:560px}
.anm-search-hero input[type=search]{font-size:1.05rem;padding:.7rem 0}
.anm-search-hero button{padding:.85rem 1.6rem;font-size:1rem}
/* Il template-part avvolge la barra in un <header> alto quanto lei: lo sticky,
   agganciato a quel wrapper corto, si staccava subito (scrollava via su desktop
   e mobile). display:contents rimuove il box del wrapper → la barra diventa
   figlia diretta di .wp-site-blocks (alta tutta la pagina) e lo sticky funziona. */
header.wp-block-template-part{display:contents}
.anm-header{position:sticky;top:0;z-index:60;color:var(--wp--preset--color--contrast)}
.anm-header::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(243,235,220,.92);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px)}
body.admin-bar .anm-header{top:32px}
.anm-logo{display:inline-flex;align-items:center;gap:.65rem;text-decoration:none}
.anm-logo-img{display:block;height:61px;width:auto;max-width:100%;transition:transform .25s ease}
.anm-logo:hover .anm-logo-img{transform:scale(1.035)}
.anm-logo-footer .anm-logo-img{height:54px}
.anm-logo-footer{transform:translateY(15px)}
.anm-search-apri{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:999px;border:1px solid var(--wp--preset--color--border);background:#faf9f2;color:var(--wp--preset--color--primary-dark);cursor:pointer;transition:border-color .2s,color .2s,transform .2s}
.anm-search-apri:hover{border-color:var(--wp--preset--color--primary);color:var(--wp--preset--color--primary);transform:scale(1.06)}
.anm-search-apri:focus-visible,.anm-header .wp-block-navigation__responsive-container-open:focus-visible{outline:2px solid var(--wp--preset--color--primary);outline-offset:2px}
.anm-search-layer{position:absolute;top:100%;left:0;right:0;z-index:4;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:.8rem;max-height:0;opacity:0;visibility:hidden;padding:0 var(--wp--preset--spacing--gutter);background:rgba(243,235,220,.97);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:max-height .35s ease,opacity .28s ease,padding .35s ease,visibility 0s linear .35s}
.anm-search-layer.is-aperta{max-height:110px;opacity:1;visibility:visible;padding:.85rem var(--wp--preset--spacing--gutter);box-shadow:0 14px 28px rgba(27,67,50,.09);transition:max-height .35s ease,opacity .28s ease,padding .35s ease}
.anm-search-layer .anm-search{flex:1 1 0;min-width:0;max-width:720px;margin:0}
.anm-search-layer .anm-search:focus-within{max-width:720px}
.anm-search-chiudi{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:999px;border:1px solid var(--wp--preset--color--border);background:var(--wp--preset--color--surface);color:var(--wp--preset--color--muted);cursor:pointer;transition:border-color .2s,color .2s,transform .2s}
.anm-search-chiudi:hover{border-color:var(--wp--preset--color--primary);color:var(--wp--preset--color--primary);transform:rotate(90deg)}
.anm-footer{border-top:4px solid;border-image:linear-gradient(90deg,var(--wp--preset--color--secondary),var(--wp--preset--color--accent)) 1}
.anm-footer-griglia{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:2.5rem;padding-top:2.2rem}
@media (max-width:899px){.anm-footer-griglia{grid-template-columns:1fr 1fr}}
/* Da 700px in su le tre liste stanno su una riga sola: a 820px (iPad 10"
   verticale) la griglia ha ~754px utili, quindi tre colonne da ~230px — prima
   "I più cercati" scendeva da solo su una seconda riga lasciando mezzo footer
   vuoto. Sotto i 700px non ci starebbero (il link più lungo, "Pappagallo
   cenerino", chiede ~145px): restano due colonne, e una sola sotto i 560px. */
@media (min-width:700px) and (max-width:899px){.anm-footer-griglia{grid-template-columns:repeat(3,1fr);gap:2rem}}
@media (max-width:559px){.anm-footer-griglia{grid-template-columns:1fr}}
.anm-footer-col h2{font-family:var(--wp--preset--font-family--body);font-size:.8rem;letter-spacing:.09em;text-transform:uppercase;color:var(--wp--preset--color--secondary);font-weight:700;margin:0 0 .9rem}
.anm-footer-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}
.anm-footer-col a{color:rgba(250,247,240,.85);text-decoration:none;font-size:.95rem;transition:color .2s}
.anm-footer-col a:hover{color:#fff;text-decoration:underline}
.anm-footer-bottom{margin-top:var(--wp--preset--spacing--60);padding-top:var(--wp--preset--spacing--30);border-top:1px solid rgba(255,255,255,.14);align-items:center}
.anm-footer-bottom p{margin:0;color:rgba(250,247,240,.72)}
.anm-footer-copy{display:flex;flex-direction:column;gap:.3rem;font-size:.8125rem}
.anm-footer-credit a{color:var(--wp--preset--color--secondary);text-decoration:none}
.anm-footer-credit a:hover{color:#fff;text-decoration:underline}
.anm-footer-legali{display:flex;gap:1.2rem;font-size:.8125rem}
.anm-footer-legali a{color:rgba(250,247,240,.8);text-decoration:none}
.anm-footer-legali a:hover{color:#fff;text-decoration:underline}
.anm-card{transition:box-shadow .25s ease, transform .25s ease;overflow:hidden}
.anm-card:hover{transform:translateY(-3px);box-shadow:var(--wp--preset--shadow--card-hover)}
.anm-card > figure{margin:0}
.anm-card .wp-block-post-featured-image img{transition:transform .4s ease}
.anm-card:hover .wp-block-post-featured-image img{transform:scale(1.04)}
.anm-card-body{padding:1.05rem 1.15rem 1.25rem}
.anm-card .wp-block-post-title{margin:0;line-height:1.32}
.anm-card .wp-block-post-title a{text-decoration:none}
.anm-card .wp-block-post-title a:hover{color:var(--wp--preset--color--primary)}
.anm-card .wp-block-post-excerpt{margin:.5rem 0 0}
.anm-card .wp-block-post-excerpt__excerpt{margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.anm-card .wp-block-post-date{display:block;margin:.6rem 0 0}
.anm-404-num{display:flex;align-items:center;justify-content:center;gap:.15em;margin:0;font-family:var(--wp--preset--font-family--heading);font-weight:650;font-size:clamp(5rem,14vw,9rem);line-height:1;color:var(--wp--preset--color--secondary)}
.anm-404-zampa{display:inline-flex;width:.85em;height:.85em;color:var(--wp--preset--color--primary);animation:anm-zampa 2.6s ease-in-out infinite}
.anm-404-zampa svg{width:100%;height:100%}
@keyframes anm-zampa{0%,100%{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}
.anm-404-hero h1{margin-top:.4em}
.anm-404-simili{background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:16px;padding:1.2rem 1.4rem;margin:0 0 1.25rem;box-shadow:var(--wp--preset--shadow--card)}
.anm-404-simili h2{font-size:1.05rem;margin:0 0 .6rem}
.anm-404-simili ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}
.anm-404-simili a{text-decoration:none;font-weight:600}
.anm-404-simili a:hover{text-decoration:underline}
.anm-404-tipo{font-size:.78rem;color:var(--wp--preset--color--muted);background:var(--wp--preset--color--base);border-radius:999px;padding:.15rem .6rem;margin-left:.35rem}
.anm-chips-center{justify-content:center}
.anm-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 .5rem}
.anm-chips a{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem 1rem;border-radius:999px;background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);text-decoration:none;font-weight:600;font-size:.9rem;color:var(--wp--preset--color--primary-dark);transition:border-color .2s,color .2s,background .2s}
.anm-chips a:hover{border-color:var(--wp--preset--color--primary);color:var(--wp--preset--color--primary)}
.anm-chips a.anm-chip-current{background:var(--wp--preset--color--primary);border-color:var(--wp--preset--color--primary);color:var(--wp--preset--color--surface)}
.anm-chip-n{font-weight:400;font-size:.8rem;opacity:.65}
/* Foto verticali (smartphone) nel corpo delle storie: tetto d'altezza, così non dominano
   il desktop. Solo i blocchi immagine di primo livello: le gallerie ritagliano da sole. */
.single-storia .wp-block-post-content > .wp-block-image{text-align:center}
.single-storia .wp-block-post-content > .wp-block-image img{max-height:600px;width:auto;max-width:100%;margin-inline:auto}
.anm-storia-byline{margin:var(--wp--preset--spacing--20) 0 0;font-size:var(--wp--preset--font-size--small);color:var(--wp--preset--color--muted)}
.anm-storia-byline strong{font-weight:650;color:var(--wp--preset--color--primary-dark)}
.anm-breadcrumb{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;font-size:.875rem;color:var(--wp--preset--color--muted);margin:0 0 1.1rem}
.anm-breadcrumb a{text-decoration:none;color:var(--wp--preset--color--muted);transition:color .2s}
.anm-breadcrumb a:hover{color:var(--wp--preset--color--primary)}
.anm-breadcrumb-sep{color:var(--wp--preset--color--border)}
.anm-breadcrumb span[aria-current]{color:var(--wp--preset--color--contrast)}
.anm-az{display:flex;flex-wrap:wrap;gap:.3rem;margin:0 0 .85rem}
.anm-az a,.anm-az-off{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;height:2rem;border-radius:9px;font-size:.85rem;font-weight:600;text-decoration:none}
.anm-az a{background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);color:var(--wp--preset--color--primary-dark);transition:border-color .2s,color .2s,background .2s}
.anm-az a:hover{border-color:var(--wp--preset--color--primary);color:var(--wp--preset--color--primary)}
.anm-az a.anm-az-current{background:var(--wp--preset--color--primary);border-color:var(--wp--preset--color--primary);color:var(--wp--preset--color--surface)}
.anm-az-off{color:var(--wp--preset--color--border)}
.anm-filtri{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:0 0 1.4rem}
.anm-filtri select{-webkit-appearance:none;appearance:none;background-color:var(--wp--preset--color--surface);background-image:url("data:image/svg+xml;utf8,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%2710%27 height=%276%27 viewBox=%270 0 10 6%27%3E%3Cpath d=%27M1 1l4 4 4-4%27 stroke=%27%236B7069%27 stroke-width=%271.8%27 fill=%27none%27 stroke-linecap=%27round%27/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;border:1px solid var(--wp--preset--color--border);border-radius:999px;padding:.55rem 2.4rem .55rem 1rem;font:inherit;font-size:.9rem;color:var(--wp--preset--color--contrast);max-width:300px;transition:border-color .2s}
.anm-filtri-cerca{display:inline-flex;align-items:center;gap:.45rem;flex:1 1 280px;max-width:480px;background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);border-radius:999px;padding:0 .28rem 0 .9rem;transition:border-color .2s,box-shadow .2s}
.anm-filtri-cerca:focus-within{border-color:var(--wp--preset--color--primary);box-shadow:0 0 0 3px rgba(45,106,79,.1)}
.anm-filtri-cerca .anm-search-icon{flex:none;display:flex;color:var(--wp--preset--color--muted)}
.anm-filtri-cerca input[type=search]{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-size:.9rem;color:var(--wp--preset--color--contrast);padding:.55rem 0}
.anm-filtri-cerca input[type=search]::placeholder{color:var(--wp--preset--color--muted)}
.anm-filtri select:hover,.anm-filtri select:focus{border-color:var(--wp--preset--color--primary);outline:0}
.anm-filtri button{border:0;cursor:pointer;background:var(--wp--preset--color--primary);color:var(--wp--preset--color--surface);font:inherit;font-weight:600;font-size:.9rem;line-height:1;padding:.65rem 1.3rem;border-radius:999px;transition:background .2s}
.anm-filtri button:hover{background:var(--wp--preset--color--primary-dark)}
.anm-filtri-reset{font-size:.9rem}
.anm-more{text-decoration:none;font-weight:600;display:inline-flex;align-items:center;gap:.3rem;transition:gap .2s ease,color .2s ease}
.anm-more:hover{gap:.55rem;color:var(--wp--preset--color--primary-dark)}
.anm-search{box-sizing:border-box;display:flex;align-items:center;gap:.5rem;flex:1 1 340px;width:100%;max-width:400px;background:var(--wp--preset--color--surface);border:1.5px solid var(--wp--preset--color--border);border-radius:999px;padding:.3rem .35rem .3rem 1.05rem;transition:border-color .25s ease,box-shadow .25s ease,max-width .35s ease}
.anm-search-static .anm-search{max-width:620px;transition:border-color .25s ease,box-shadow .25s ease}
.anm-search:focus-within{max-width:620px;border-color:var(--wp--preset--color--primary);box-shadow:0 0 0 4px rgba(45,106,79,.12)}
.anm-search .anm-search-icon{flex:none;display:flex;color:var(--wp--preset--color--muted)}
.anm-search input[type=search]{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-size:.95rem;color:var(--wp--preset--color--contrast);padding:.5rem 0}
.anm-search input[type=search]::placeholder{color:var(--wp--preset--color--muted)}
.anm-search input[type=search]::-webkit-search-decoration{display:none}
.anm-search button{flex:none;border:0;cursor:pointer;margin-right:2px;background:var(--wp--preset--color--primary);color:var(--wp--preset--color--surface);font:inherit;font-weight:600;font-size:.9rem;line-height:1;padding:.65rem 1.3rem;border-radius:999px;transition:background .2s ease,transform .2s ease}
.anm-search button:hover{background:var(--wp--preset--color--primary-dark);transform:scale(1.03)}
.wp-block-query-pagination{gap:.45rem;flex-wrap:wrap;justify-content:center;align-items:center}
.wp-block-query-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:2.6rem;height:2.6rem;padding:0 .65rem;border-radius:999px;background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);text-decoration:none;font-weight:600;font-size:var(--wp--preset--font-size--small);color:var(--wp--preset--color--primary-dark);transition:border-color .2s,color .2s,background .2s}
.wp-block-query-pagination a.page-numbers:hover{border-color:var(--wp--preset--color--primary);color:var(--wp--preset--color--primary)}
.wp-block-query-pagination .page-numbers.current{background:var(--wp--preset--color--primary);border-color:var(--wp--preset--color--primary);color:var(--wp--preset--color--surface)}
.wp-block-query-pagination .page-numbers.dots{background:transparent;border:0;min-width:auto}
.wp-block-query-pagination-previous,.wp-block-query-pagination-next{display:inline-flex;align-items:center;gap:.3rem;height:2.6rem;padding:0 1.1rem;border-radius:999px;background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);text-decoration:none;font-weight:600;font-size:var(--wp--preset--font-size--small);color:var(--wp--preset--color--primary-dark);transition:border-color .2s,color .2s}
.wp-block-query-pagination-previous:hover,.wp-block-query-pagination-next:hover{border-color:var(--wp--preset--color--primary);color:var(--wp--preset--color--primary)}

/* --- muro dei pensieri --- */
.anm-muro{columns:19rem auto;column-gap:1.4rem;margin-top:1.4rem}
.anm-pensiero{break-inside:avoid;margin:0 0 1.4rem;padding:1.2rem 1.3rem;background:var(--wp--preset--color--surface);border-radius:14px;box-shadow:var(--wp--preset--shadow--card);border-top:3px solid var(--wp--preset--color--secondary)}
.anm-pensiero-guestbook{border-top-color:var(--wp--preset--color--accent)}
.anm-pensiero-no-abbandono{border-top-color:var(--wp--preset--color--primary)}
.anm-pensiero-titolo{margin:0 0 .4rem;font-weight:700;font-size:.95rem;color:var(--wp--preset--color--primary-dark)}
.anm-pensiero blockquote{margin:0;font-size:.95rem;line-height:1.6;border:0;padding:0}
.anm-pensiero blockquote::before{content:"\201C";display:block;font-family:var(--wp--preset--font-family--heading);font-size:2rem;line-height:.6;color:var(--wp--preset--color--secondary)}
.anm-pensiero-per{margin:.5rem 0 0;font-size:.85rem;font-style:italic;color:var(--wp--preset--color--primary)}
.anm-pensiero figcaption{margin-top:.7rem;font-size:.8rem;color:var(--wp--preset--color--muted);display:flex;justify-content:space-between;gap:.6rem;flex-wrap:wrap}

/* --- condivisione pensieri --- */
.anm-pensiero-azioni{display:inline-flex;align-items:center;gap:.5rem}
.anm-condividi{position:relative;display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border:0;border-radius:50%;background:transparent;color:var(--wp--preset--color--muted);cursor:pointer;transition:color .2s,background .2s}
.anm-condividi:hover{color:var(--wp--preset--color--primary);background:rgba(45,106,79,.08)}
.anm-copiato{position:absolute;right:110%;top:50%;transform:translateY(-50%);white-space:nowrap;font-size:.72rem;font-weight:700;color:var(--wp--preset--color--primary);background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--secondary);border-radius:999px;padding:.15rem .55rem;opacity:0;pointer-events:none;transition:opacity .2s}
.anm-condividi.is-copiato .anm-copiato{opacity:1}
.anm-muro-evidenza{max-width:34rem;margin:1.4rem 0 0}
.anm-pensiero-evidenza{border:2px solid var(--wp--preset--color--primary);box-shadow:var(--wp--preset--shadow--card-hover)}
.anm-pensiero-eyebrow{margin:0 0 .5rem;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--wp--preset--color--accent)}


/* --- menu mobile: pannello a tutto schermo, allineato a sinistra --- */
/* overlay menu: la × sta in alto a destra (WP la posiziona a top/right del box
   interno = i padding sopra e a destra). Con sopra=destra=1.8rem la × ha spazio
   uguale sopra e a destra (prima erano 4.5rem sopra vs 1.8rem a destra) */
.anm-header .wp-block-navigation__responsive-container.is-menu-open{--navigation-layout-justification-setting:flex-start;--navigation-layout-justify:flex-start;--navigation-layout-align:flex-start;background:var(--wp--preset--color--surface);z-index:100000;padding:1.8rem 1.8rem 2.5rem;overflow-y:auto}
.anm-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{display:flex;flex-direction:column;align-items:flex-start !important;width:100%}
.anm-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{flex-direction:column;align-items:flex-start !important;justify-content:flex-start !important;gap:0;width:100%}
.anm-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{width:100%;align-items:flex-start !important;justify-content:flex-start !important}
.anm-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{font-size:1.15rem;padding:.42rem 0;text-align:left}
.anm-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container{padding:0 0 0 1.1rem !important;border-left:2px solid var(--wp--preset--color--secondary);margin:.1rem 0;width:100%;align-items:flex-start !important}
.anm-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content{font-size:1.02rem;padding:.34rem 0}

/* sottomenu desktop allineati a sinistra della voce (si aprono verso destra):
   il menu giustificato a destra li ancorerebbe alla freccia, verso sinistra */
@media (min-width:900px){.anm-header .anm-header-row .wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation__submenu-container{left:0;right:auto}}

/* niente sottolineatura animata dentro i sottomenu (desktop) e nel pannello mobile:
   la voce attiva resta indicata dal colore */
.anm-header .wp-block-navigation__submenu-container a::after{display:none}
.anm-header .wp-block-navigation__responsive-container.is-menu-open a::after{display:none}

/* pannello mobile: su fondo bianco tornano i colori scuri */
.anm-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{color:var(--wp--preset--color--primary-dark)}
.anm-header .wp-block-navigation__responsive-container.is-menu-open a:hover,.anm-header .wp-block-navigation__responsive-container.is-menu-open a[aria-current=page]{color:var(--wp--preset--color--primary)}
/* × di chiusura: 10px più in alto e 10px più a destra (meno spazio a destra) */
.anm-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close{color:var(--wp--preset--color--primary-dark);transform:translate(10px,-10px)}
/* meno spazio fra la × e la prima voce: WP riserva 56px di padding-top al
   contenuto (per la × in posizione assoluta) → lo riduco */
.anm-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{padding-top:26px}
.anm-hero-scheda .anm-hero-grid{grid-template-columns:1fr 1fr;gap:2.8rem}
.anm-hero-scheda .anm-hero-grid.anm-hero-solo{grid-template-columns:1fr}
.anm-hero-scheda .anm-hero-testo h1{font-size:clamp(1.9rem,4vw,2.7rem)}
.anm-hero-scheda .anm-hero-foto{min-height:0}
.anm-scheda-fatti{margin-top:1.3rem}
.anm-fatto{display:inline-flex;align-items:center;padding:.4rem 1rem;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);color:rgba(250,247,240,.8);font-size:.88rem}
.anm-fatto strong{font-weight:700;color:var(--anm-hero-accento)}
.anm-scheda-foto img{display:block;width:100%;height:auto;max-height:500px;object-fit:cover;border-radius:22px;border:5px solid rgba(255,255,255,.14);box-shadow:0 18px 40px rgba(0,0,0,.28);transform:rotate(1.5deg)}
@media (max-width:1024px){.anm-hero-scheda .anm-hero-grid{grid-template-columns:1fr;gap:0}.anm-hero-scheda .anm-hero-foto{display:block;margin-top:1.5rem}.anm-scheda-foto img{transform:none}}
.anm-hero-scheda .anm-hero-sub{font-size:1.05rem;max-width:52ch;color:rgba(250,247,240,.85)}
.anm-scheda-fatti .anm-hero-badge{margin-bottom:0}
.anm-hero .anm-chips a{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);color:var(--wp--preset--color--base)}
.anm-hero .anm-chips a:hover{border-color:rgba(255,255,255,.55);color:#fff}
.anm-hero .anm-chips a.anm-chip-current{background:var(--anm-hero-accento);border-color:var(--anm-hero-accento);color:var(--wp--preset--color--primary-dark)}
.anm-hero .anm-search{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.25)}
.anm-hero .anm-search input[type=search]{color:var(--wp--preset--color--base)}
.anm-hero .anm-search input[type=search]::placeholder{color:rgba(250,247,240,.55)}
.anm-hero .anm-search .anm-search-icon{color:rgba(250,247,240,.6)}
.anm-hero .anm-search button{background:var(--anm-hero-accento);color:var(--wp--preset--color--contrast)}
.anm-hero .anm-search button:hover{background:#fff}
.anm-hero .anm-search:focus-within{border-color:rgba(255,255,255,.5);box-shadow:0 0 0 4px rgba(255,255,255,.14)}
.anm-hero-storie .wp-block-query-title{margin:0;color:var(--wp--preset--color--base);font-size:clamp(2rem,4.5vw,2.9rem);line-height:1.08}
.anm-hero-storie .anm-hero-sub{margin:.7rem 0 0;font-size:1.05rem;max-width:62ch;color:rgba(250,247,240,.85)}
.anm-nu-emergenza{display:flex;flex-wrap:wrap;gap:1.2rem 2rem;align-items:center;justify-content:space-between;background:var(--wp--preset--color--surface);border:2px solid #C0392B;border-radius:20px;padding:1.5rem 1.9rem;box-shadow:var(--wp--preset--shadow--card)}
.anm-nu-emergenza-testo{flex:1 1 24rem}
.anm-nu-emergenza-titolo{margin:0 0 .3rem;font-family:var(--wp--preset--font-family--heading);font-weight:650;font-size:1.35rem;color:var(--wp--preset--color--primary-dark)}
.anm-nu-emergenza-testo p:last-child{margin:0;color:var(--wp--preset--color--muted);line-height:1.55}
.anm-nu-112{display:inline-flex;align-items:center;gap:.6rem;padding:.7rem 1.8rem;border-radius:999px;background:#C0392B;color:#fff;font-family:var(--wp--preset--font-family--heading);font-weight:700;font-size:2rem;line-height:1;text-decoration:none;box-shadow:0 6px 18px rgba(192,57,43,.35);transition:transform .2s,box-shadow .2s}
.anm-nu-112:hover{transform:scale(1.04);box-shadow:0 8px 24px rgba(192,57,43,.45)}
.anm-nu-112 svg{width:26px;height:26px}
.anm-nu-h2{margin:2.6rem 0 1.2rem}
.anm-nu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(19rem,1fr));gap:1.4rem}
.anm-nu-card{display:flex;flex-direction:column;gap:.5rem;padding:1.3rem 1.4rem;border-radius:16px;background:var(--wp--preset--color--surface);box-shadow:var(--wp--preset--shadow--card);border-top:3px solid var(--wp--preset--color--secondary)}
.anm-nu-card h3{margin:0;font-size:1.12rem;color:var(--wp--preset--color--primary-dark)}
.anm-nu-tel{display:flex;flex-wrap:wrap;align-items:baseline;gap:.6rem;margin:.1rem 0 0}
.anm-nu-tel a{display:inline-flex;align-items:center;gap:.45rem;font-family:var(--wp--preset--font-family--heading);font-weight:650;font-size:1.55rem;color:var(--wp--preset--color--primary);text-decoration:none}
.anm-nu-tel a:hover{color:var(--wp--preset--color--primary-dark)}
.anm-nu-tel a svg{color:var(--wp--preset--color--accent)}
.anm-nu-tel span{font-size:.85rem;font-weight:600;color:var(--wp--preset--color--muted)}
.anm-nu-passi{margin:0;font-size:.93rem;line-height:1.6;color:var(--wp--preset--color--muted)}
.anm-nu-passi a{color:var(--wp--preset--color--primary);font-weight:600}
.anm-nu-asso{display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:1.1rem}
.anm-nu-asso-card{display:flex;flex-direction:column;gap:.3rem;padding:1.05rem 1.2rem;border-radius:14px;background:var(--wp--preset--color--surface);border:1px solid var(--wp--preset--color--border);text-decoration:none;transition:border-color .2s,transform .2s,box-shadow .2s}
.anm-nu-asso-card:hover{border-color:var(--wp--preset--color--primary);transform:translateY(-2px);box-shadow:var(--wp--preset--shadow--card)}
.anm-nu-asso-nome{font-family:var(--wp--preset--font-family--heading);font-weight:650;color:var(--wp--preset--color--primary-dark)}
.anm-nu-asso-desc{font-size:.85rem;color:var(--wp--preset--color--muted);line-height:1.5}
.anm-nu-nota{margin:2.4rem 0 0;padding:.9rem 1.2rem;border-left:3px solid var(--wp--preset--color--accent);background:var(--wp--preset--color--surface);border-radius:0 12px 12px 0;font-size:.9rem;color:var(--wp--preset--color--muted)}
.anm-ponte-domanda{font-family:var(--wp--preset--font-family--heading);font-weight:600;font-size:1.2rem;color:var(--wp--preset--color--primary-dark);margin:0 0 1.1rem}
.anm-ponte-griglia{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;align-items:start}
@media (max-width:980px){.anm-ponte-griglia{grid-template-columns:1fr}}
.anm-ponte-card{background:var(--wp--preset--color--surface);border:1.5px solid var(--wp--preset--color--border);border-radius:18px;transition:border-color .2s,box-shadow .2s}
.anm-ponte-card[open]{border-color:var(--wp--preset--color--primary);box-shadow:var(--wp--preset--shadow--card)}
.anm-ponte-card summary{display:flex;align-items:center;gap:.85rem;list-style:none;cursor:pointer;padding:1.2rem 1.3rem;font-family:var(--wp--preset--font-family--heading);font-weight:600;font-size:1.08rem;color:var(--wp--preset--color--primary-dark);transition:color .2s}
.anm-ponte-card summary::-webkit-details-marker{display:none}
.anm-ponte-card summary:hover{color:var(--wp--preset--color--primary)}
.anm-ponte-icona{flex:none;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:rgba(183,228,199,.4);color:var(--wp--preset--color--primary)}
.anm-ponte-corpo{padding:0 1.3rem 1.3rem;font-size:.95rem}
.anm-ponte-corpo ul{padding-left:1.1rem;margin:.4rem 0 0}
.anm-ponte-corpo li{margin-bottom:.5rem}
.anm-ponte-form{margin-top:1rem;border-top:1px solid var(--wp--preset--color--border);padding-top:1rem}
.anm-ponte-form .anm-campo{margin-bottom:.85rem}
.anm-ponte-invia{border:0;cursor:pointer;background:var(--wp--preset--color--primary);color:var(--wp--preset--color--surface);font:inherit;font-weight:600;font-size:.92rem;padding:.7rem 1.4rem;border-radius:999px;transition:background .2s}
.anm-ponte-invia:hover{background:var(--wp--preset--color--primary-dark)}
.anm-facoltativo{font-weight:400;color:var(--wp--preset--color--muted)}
/* Video YouTube: facade click-to-play (nessun cookie di terze parti prima del click) */
.anm-yt-facade{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.9rem;width:100%;aspect-ratio:16/9;border:0;cursor:pointer;border-radius:14px;color:#fff;background:linear-gradient(135deg,var(--wp--preset--color--primary-dark),var(--wp--preset--color--primary));font:inherit;overflow:hidden}
.anm-yt-facade.wp-embed-aspect-4-3{aspect-ratio:4/3}
.anm-yt-facade:focus-visible{outline:3px solid var(--wp--preset--color--primary);outline-offset:3px}
.anm-yt-play{display:flex;align-items:center;justify-content:center;width:68px;height:48px;border-radius:14px;background:rgba(0,0,0,.55);transition:transform .2s ease,background .2s ease}
.anm-yt-play::after{content:"";border-style:solid;border-width:11px 0 11px 19px;border-color:transparent transparent transparent #fff;margin-left:4px}
.anm-yt-facade:hover .anm-yt-play,.anm-yt-facade:focus-visible .anm-yt-play{transform:scale(1.08);background:#f00}
.anm-yt-nota{display:flex;flex-direction:column;align-items:center;gap:.2rem;font-weight:600;font-size:1rem;text-align:center;padding:0 1rem}
.anm-yt-nota small{font-weight:400;font-size:.8rem;opacity:.85}
.anm-yt-loaded{position:relative;width:100%;aspect-ratio:16/9;border-radius:14px;overflow:hidden}
.anm-yt-loaded.wp-embed-aspect-4-3{aspect-ratio:4/3}
.anm-yt-loaded iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* Box prodotti affiliati (pattern anm/box-prodotti) — card interamente cliccabili, copertine "contain" per i libri */
.anm-prodotti{margin-top:var(--wp--preset--spacing--70)}
.anm-prodotti-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:1.5rem;margin-top:1.2rem}
.anm-prodotto{display:flex;flex-direction:column;text-decoration:none;color:inherit;background:var(--wp--preset--color--surface);border-radius:16px;box-shadow:var(--wp--preset--shadow--card);overflow:hidden;transition:box-shadow .25s ease,transform .25s ease}
.anm-prodotto:hover{transform:translateY(-3px);box-shadow:var(--wp--preset--shadow--card-hover)}
.anm-prodotto figure{margin:0;padding:1.1rem 1.1rem 0;display:grid;place-items:center}
.anm-prodotto figure img{width:auto;max-width:100%;height:10.5rem;object-fit:contain;border-radius:4px}
.anm-prodotto-body{display:flex;flex-direction:column;gap:.35rem;padding:1.05rem 1.15rem 1.25rem;flex:1}
.anm-prodotto-titolo{font-weight:600;line-height:1.32}
.anm-prodotto-autore{font-size:.85rem;color:var(--wp--preset--color--muted)}
.anm-prodotto-prezzi del{color:var(--wp--preset--color--muted);font-weight:400;margin-left:.4rem}
.anm-prodotto-cta{align-self:start;margin-top:auto;padding:.55rem 1.15rem .5rem;background:var(--wp--preset--color--primary);color:var(--wp--preset--color--surface);font-weight:600;font-size:.85rem;line-height:1;border-radius:999px;transition:background .2s}
.anm-prodotto:hover .anm-prodotto-cta{background:var(--wp--preset--color--primary-dark)}
.anm-prodotti-disclosure{margin:1.1rem 0 0;font-size:.8rem;color:var(--wp--preset--color--muted)}
.anm-prodotto-desc{font-size:.85rem;line-height:1.45}
.anm-prodotti-nav{position:relative}
.anm-prodotti-scroll{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:1.5rem;padding:4px 4px .6rem;margin:-4px -4px 0;scrollbar-width:thin}
.anm-prodotti-scroll .anm-prodotto{flex:0 0 15rem;scroll-snap-align:start}
.anm-pscroll{position:absolute;top:50%;transform:translateY(-50%);z-index:2;display:flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;border:0;border-radius:50%;background:var(--wp--preset--color--primary);color:var(--wp--preset--color--surface);font-size:1.5rem;line-height:1;cursor:pointer;box-shadow:var(--wp--preset--shadow--card);transition:background .2s,opacity .2s}
.anm-pscroll:hover{background:var(--wp--preset--color--primary-dark)}
.anm-pscroll-prev{left:-1rem}
.anm-pscroll-next{right:-1rem}
.anm-pscroll[disabled]{opacity:0;pointer-events:none}
.anm-prodotti-scroll{cursor:grab}
.anm-prodotti-scroll.is-drag{cursor:grabbing;scroll-snap-type:none;user-select:none}

/* ---------- Form racconta la tua storia ---------- */
/* stesso ragionamento del form contatti: nessun cap, così i campi stanno
   sulla colonna del testo invece di rientrare da entrambi i lati. */
.anm-form-storia .anm-campo small{font-size:.8rem;color:var(--wp--preset--color--muted)}
.anm-form-azioni{display:flex;gap:.8rem;flex-wrap:wrap}
.anm-bottone-secondario{background:transparent !important;color:var(--wp--preset--color--primary) !important;border:1.5px solid var(--wp--preset--color--primary) !important}
.anm-foto-attuali{margin:0 0 1.1rem}
.anm-foto-attuali-label{font-weight:600;font-size:.9rem;color:var(--wp--preset--color--primary-dark)}
.anm-foto-attuali ul{list-style:none;display:flex;gap:1rem;flex-wrap:wrap;margin:.5rem 0 0;padding:0}
.anm-foto-attuali li{display:flex;flex-direction:column;gap:.3rem;font-size:.8rem;color:var(--wp--preset--color--muted)}
.anm-foto-attuali img{width:96px;height:96px;object-fit:cover;border-radius:10px;border:1.5px solid var(--wp--preset--color--border)}
.anm-lemie{list-style:none;margin:1rem 0;padding:0;display:flex;flex-direction:column;gap:.7rem}
.anm-lemie li{border:1.5px solid var(--wp--preset--color--border);border-radius:12px;padding:.8rem 1rem;display:flex;gap:.7rem;align-items:baseline;flex-wrap:wrap}
.anm-lemie-stato{font-size:.75rem;font-weight:600;padding:.15rem .6rem;border-radius:99px;background:var(--wp--preset--color--surface);color:var(--wp--preset--color--muted);border:1px solid var(--wp--preset--color--border)}
.anm-lemie-stato-publish{background:rgba(183,228,199,.4);color:var(--wp--preset--color--primary-dark);border-color:var(--wp--preset--color--secondary)}
.anm-lemie-stato-pending{background:rgba(219,166,23,.12);color:#8a6d1d;border-color:rgba(219,166,23,.4)}
.anm-lemie-azioni{font-size:.9rem;margin-left:auto}
.anm-lemie-rimuovi{display:inline}
.anm-lemie-link{background:none;border:0;padding:0;font:inherit;color:var(--wp--preset--color--primary);text-decoration:underline;cursor:pointer}
.anm-lemie-nota{font-size:.9rem;color:var(--wp--preset--color--muted)}
.anm-gestisci{margin-top:3rem;padding-top:1.5rem;border-top:1.5px solid var(--wp--preset--color--border)}
.anm-gestisci-form{display:flex;gap:.8rem;flex-wrap:wrap;align-items:center}
.anm-gestisci-form .anm-campo{margin:0}
.anm-gestisci-form input[type=email]{min-width:16rem}
.anm-dropzone-invito{display:none}
.anm-dropzone.is-js .anm-dropzone-invito{display:flex;flex-direction:column;align-items:center;gap:.25rem;pointer-events:none}
.anm-dropzone.is-js .anm-dropzone-area{display:flex;align-items:center;justify-content:center;min-height:160px;border:2px dashed var(--wp--preset--color--border);border-radius:14px;background:var(--wp--preset--color--surface);cursor:pointer;text-align:center;padding:1.4rem;transition:border-color .2s,background .2s}
.anm-dropzone.is-js .anm-dropzone-area.is-drag,.anm-dropzone.is-js .anm-dropzone-area:focus-within{border-color:var(--wp--preset--color--primary);background:rgba(45,106,79,.06)}
.anm-dropzone.is-js .anm-dropzone-area input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.anm-dropzone-invito svg{color:var(--wp--preset--color--primary);opacity:.75}
.anm-dropzone-invito strong{color:var(--wp--preset--color--primary-dark);font-size:1.05rem}
.anm-dropzone-invito span{font-size:.85rem;color:var(--wp--preset--color--muted)}
.anm-dropzone-anteprime{list-style:none;display:flex;gap:1rem;flex-wrap:wrap;margin:.8rem 0 0;padding:0}
.anm-dropzone-anteprime li{position:relative;display:flex;flex-direction:column;gap:.25rem;font-size:.75rem;color:var(--wp--preset--color--muted);max-width:112px}
.anm-dropzone-anteprime img{width:112px;height:84px;object-fit:cover;border-radius:10px;border:1.5px solid var(--wp--preset--color--border)}
.anm-dropzone-anteprime span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.anm-dropzone-togli{position:absolute;top:4px;right:4px;width:22px;height:22px;border:0;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;font-size:.75rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.anm-dropzone-togli:hover{background:rgba(0,0,0,.75)}
.anm-dropzone-stato{font-size:.8rem;color:#8a3d28;margin:.4rem 0 0}

/* ---------- header mobile: logo a sinistra, [cerca][menu] a destra ----------
   Su mobile i due comandi diventano una coppia di tondi identici, raggruppati
   a destra. Convenzione: l'hamburger del menu è l'ultimo (estrema destra), il
   cerca gli sta subito a sinistra. Riordino con `order` così il desktop, che
   mostra il menu esteso + cerca in coda, resta invariato. */
@media (max-width:899px){
	/* margine laterale dell'header ridotto (da gutter ~20px a 14px): libera
	   spazio per un logo più grande + la coppia di icone, restando comodo
	   fino a 320px. !important perché il padding è inline sul gruppo */
	.anm-header{padding-left:14px !important;padding-right:14px !important}
	/* logo più grande e fluido: cresce con la viewport (12vw) ma resta tra 42
	   e 48px, limiti che non fanno mai sbordare la coppia di icone (verificato
	   320→899px). Specificità alta + coda del file per battere la regola
	   desktop (61px), che a pari specificità vincerebbe per ordine di sorgente */
	.anm-header .anm-logo-img{height:clamp(42px,12vw,48px)}
	/* logo a sinistra, [cerca][menu] coppia a destra con 10px tra le icone.
	   Il gap di riga è la distanza minima fra gli elementi: fra le due icone
	   diventa 10px, fra logo e cerca lo assorbe il margin auto (quindi ampio) */
	.anm-header-row{gap:10px}
	/* il menu (hamburger) va per ultimo = estrema destra; niente flex-grow qui,
	   così il tondo non si allarga e resta accanto al cerca */
	.anm-header .wp-block-navigation{flex:0 0 auto;order:3}
	/* il cerca precede il menu; margin-left:auto spinge la coppia a destra
	   lasciando il logo a sinistra. La specificità .anm-header-row .anm-search-apri
	   (0,2,0) batte il reset di WordPress `.is-layout-flex > *{margin:0}` (0,1,0),
	   che altrimenti azzererebbe il margine e lascerebbe i 3 elementi distribuiti */
	.anm-header-row .anm-search-apri{order:2;margin-left:auto}
	/* l'hamburger di WordPress prende lo stesso vestito del bottone cerca */
	.anm-header .wp-block-navigation__responsive-container-open{
		display:flex;align-items:center;justify-content:center;
		width:44px;height:44px;padding:0;border-radius:999px;
		border:1px solid var(--wp--preset--color--border);background:#faf9f2;
		color:var(--wp--preset--color--primary-dark);cursor:pointer;
		transition:border-color .2s,color .2s,transform .2s}
	.anm-header .wp-block-navigation__responsive-container-open:hover{
		border-color:var(--wp--preset--color--primary);color:var(--wp--preset--color--primary);transform:scale(1.06)}
	/* icona hamburger a TRE righe: l'icona "menu" di WordPress ne ha solo due,
	   quindi nascondo la sua SVG e disegno 3 barre con una pseudo + 2 box-shadow */
	.anm-header .wp-block-navigation__responsive-container-open svg{display:none}
	.anm-header .wp-block-navigation__responsive-container-open::before{
		content:"";width:19px;height:2px;border-radius:2px;background:currentColor;
		box-shadow:0 -6px 0 currentColor,0 6px 0 currentColor}
	/* hero: meno "vuoto" verde sopra il testo su mobile. Il padding inline vale
	   spacing-70 (5rem = 80px) sopra e sotto: qui lo riduco molto. !important
	   perché è inline sul gruppo .anm-hero */
	.anm-hero{padding-top:2rem !important;padding-bottom:2.5rem !important}
}
.anm-conta{align-self:flex-end;font-size:.82rem;color:var(--wp--preset--color--contrast-light,#6b7280);font-variant-numeric:tabular-nums}
.anm-conta-ok{color:var(--wp--preset--color--primary);font-weight:600}

/* Hero di home e hub su mobile: il cluster non sparisce più — diventa una fila di
   medaglioni sotto il testo (~7rem: identità conservata senza spingere giù i contenuti).
   Le hero delle schede/storie hanno il loro trattamento e restano fuori. */
@media (max-width:899px){
.anm-hero:not(.anm-hero-scheda) .anm-hero-foto{display:flex;justify-content:center;align-items:center;position:static;min-height:0;margin-top:clamp(1.5rem,3vw,2.2rem)}
/* dimensioni fluide: piene verso i 899px (tablet), compatte sotto i 600px */
/* Le misure sono una retta sola da 320 a 899px, non due gradini: la forma
   `offset + Nvw` serve proprio a questo. Con il solo `15vw` la crescita era
   troppo lenta e sui telefoni le misure finivano schiacciate contro il minimo
   fisso (5rem e 6.5rem), identiche da 320 a 530px mentre lo schermo cresceva:
   di qui i tondi piccoli in mezzo a molto verde vuoto. Con l'offset il gruppo
   occupa circa l'80% della larghezza utile a ogni misura — l'89% a 320px, dove
   il margine è più stretto — e il tetto lo raggiunge sul tablet. I minimi
   restano come rete di sicurezza, non come misura di esercizio.
   Le tre grandezze crescono insieme (tondo, tondo grande e sovrapposizione),
   così il gruppo mantiene le sue proporzioni. */
.anm-hero:not(.anm-hero-scheda) .anm-hf{position:static;width:clamp(4.5rem,2rem + 14.4vw,10.5rem);border-width:3px;box-shadow:0 10px 26px rgba(10,28,20,.35)}
.anm-hero:not(.anm-hero-scheda) .anm-hf1{width:clamp(6.5rem,2rem + 20.7vw,13.65rem)}
.anm-hero:not(.anm-hero-scheda) .anm-hf2,.anm-hero:not(.anm-hero-scheda) .anm-hf3{margin-left:clamp(-2rem,-.5rem - 2.4vw,-.9rem)}
}

/* ---------------------------------------------------------------------------
   Testo di lettura (corpo, sunti, metadati)
   I formati "di testo" escono dalle variabili dei preset, quindi si correggono
   da qui una volta sola, senza toccare theme.json né i singoli blocchi.
   Perché serve: WordPress 7.1 (theme.json v3) tiene i PROPRI formati per gli
   slug small/medium/large/x-large e ignora quelli del tema finché non si mette
   settings.typography.defaultFontSizes = false. Quello che usciva era la scala
   di core: corpo ~14,5px a 402px di viewport (iPhone 17) contro i 17px
   dichiarati in theme.json, e sunti delle card fermi a 13px ovunque.

   medium (corpo): stessa curva fluida di core, ma con il PAVIMENTO a 18px.
   Il minimo di core (14px) faceva scendere il corpo sotto la misura del
   telefono per tutta la fascia tablet — 16,8px a 768px contro i 18px a 425px,
   cioè il testo si rimpiccioliva passando dal telefono all'iPad. Con il
   pavimento la curva è monotona: 18px fino a ~960px, poi sale ai 20px di
   sempre a 1280px. Desktop invariato.
   small: 16px a tutte le larghezze. theme.json ne dichiarava 15 e core 13, ma a
   15px le descrizioni delle card, i pensieri del muro e i testi dei numeri utili
   restavano un gradino sotto ai sunti delle card, che stanno a 16: una
   differenza che si vedeva e che nessuno leggeva come voluta.
   x-small: 14px a tutte le larghezze. Nasce per date e metadati, ma se lo
   prendono anche i sunti delle card compatte, che sono frasi da leggere: a
   13px erano il testo più piccolo della pagina, sotto titoli da 24px. Uguale
   ovunque toglie anche l'ultimo gradino della scala. */
:root{
	--wp--preset--font-size--medium:clamp(1.125rem, .875rem + ((1vw - .2rem) * .625), 1.25rem);
	--wp--preset--font-size--small:1rem;
	--wp--preset--font-size--x-small:.875rem;
}

/* ---------------------------------------------------------------------------
   Gradini dei titoli (h2 e h3, tutte le larghezze)
   Stesso motivo del blocco sopra: per gli slug large e x-large vale la scala di
   core, non quella del tema. Su desktop usciva h1 54 / h2 42 / h3 36 / corpo 20:
   fra h2 e h3 c'erano 6px, così un sottotitolo non si distingueva dalla sezione
   che lo contiene, e i titoli delle card grandi arrivavano a 36px. Qui i due
   formati tornano a fare gradini netti — su desktop 36 e 26px, sui telefoni 26
   e 22px — restando fluidi come il resto della scala. Toccano gli h2/h3 dei
   testi, i titoli delle card grandi (card.php, storie-random) e l'occhiello
   della home. h1 e corpo non cambiano. */
:root{
	--wp--preset--font-size--large:clamp(1.375rem, 1.15rem + .9vw, 1.625rem);
	--wp--preset--font-size--x-large:clamp(1.625rem, 1.35rem + 1.1vw, 2.25rem);
}

/* Titoli delle card compatte (griglie di razze e specie): partono da 22px sui
   telefoni e salgono a 24px da ~960px in su. Prima seguivano il formato medium,
   cioè la misura del corpo del testo (20px su desktop), e accanto alle card
   articolo — che dopo la revisione dei gradini stanno a 26px — risultavano
   deboli. L'!important non è un capriccio: le classi dei preset di WordPress
   (.has-medium-font-size) dichiarano font-size con !important, quindi è l'unico
   modo di scavalcarle senza mettere le mani al markup, che per queste griglie
   vive nel contenuto delle pagine hub (database) e non nei pattern del tema. */
.anm-card .wp-block-post-title.has-medium-font-size{font-size:clamp(1.375rem, 1.2rem + .55vw, 1.5rem) !important}

/* ---------------------------------------------------------------------------
   Componenti scritti a mano: rientro nella scala
   Card e box del tema avevano misure fisse in rem, scelte prima della revisione
   della scala: non crescevano mai (17,6px su un iPhone come su un monitor da
   1440) e sono rimaste indietro rispetto alle card di WordPress, che ora fanno
   22→24/26px di titolo, 15-16px di sunto e 14px di metadati. Qui il testo che
   si legge davvero prende le stesse variabili dei preset, così si governa da un
   punto solo. Restano volutamente fuori chip, badge, occhielli in maiuscolo
   delle toolbar e le etichette delle colonne del footer: sono elementi di
   interfaccia, non testo da leggere. */

/* home — tessere delle rubriche (solo testo) */
.anm-rcard-nome{font-size:clamp(1.25rem, 1.15rem + .3vw, 1.375rem)}
.anm-rcard-desc{font-size:var(--wp--preset--font-size--small)}
.anm-rcard-n{font-size:var(--wp--preset--font-size--x-small)}
/* home — tessere dei gruppi (foto + nome): titolo come le card compatte */
.anm-gcard-nome{font-size:clamp(1.375rem, 1.2rem + .55vw, 1.5rem)}
.anm-gcard-n{font-size:var(--wp--preset--font-size--x-small)}
/* home — scheda del giorno e contatori. Il titolo della scheda era 1.7rem
   fissi: sui telefoni superava l'h2 della sezione che lo contiene */
.anm-giorno-testo h3{font-size:var(--wp--preset--font-size--large)}
.anm-giorno-eyebrow,.anm-giorno-meta{font-size:var(--wp--preset--font-size--x-small)}
.anm-numero-label{font-size:var(--wp--preset--font-size--small)}
/* schede e storie — l'occhiello sotto il titolo era 1.05rem fissi, quindi da
   oggi sarebbe più piccolo del corpo del testo: mai sotto la misura di lettura */
.anm-hero-scheda .anm-hero-sub,.anm-hero-storie .anm-hero-sub{font-size:var(--wp--preset--font-size--medium)}
/* box prodotti negli articoli */
.anm-prodotto-desc{font-size:var(--wp--preset--font-size--small)}
.anm-prodotto-autore,.anm-prodotto-cta,.anm-prodotti-disclosure{font-size:var(--wp--preset--font-size--x-small)}
/* footer — liste di link, etichette dei medaglioni, riga legale */
.anm-footer-col a{font-size:var(--wp--preset--font-size--small)}
.anm-fa span{font-size:var(--wp--preset--font-size--x-small)}
.anm-footer-copy,.anm-footer-legali{font-size:var(--wp--preset--font-size--x-small)}
/* muro dei ricordi — i pensieri sono testo scritto dai lettori, non didascalie */
.anm-pensiero-titolo,.anm-pensiero blockquote{font-size:var(--wp--preset--font-size--small)}
.anm-pensiero-per,.anm-pensiero figcaption,.anm-pensiero-eyebrow{font-size:var(--wp--preset--font-size--x-small)}
/* numeri utili — pagina che si legge di fretta e in emergenza */
.anm-nu-card h3{font-size:clamp(1.25rem, 1.15rem + .3vw, 1.375rem)}
.anm-nu-passi,.anm-nu-asso-desc,.anm-nu-nota{font-size:var(--wp--preset--font-size--small)}
.anm-nu-tel span{font-size:var(--wp--preset--font-size--x-small)}
/* footer — "Torna su" sta nella stessa riga dei link legali */
.anm-top{font-size:var(--wp--preset--font-size--x-small)}

/* Sunti delle card — misura propria, indipendente dai preset.
   Il markup ne usa due diversi: card.php dichiara "small" e card-compact.php
   "x-small", quindi sullo stesso schermo convivevano sunti da 15 e da 14px,
   mentre sotto i 600px salivano entrambi a 18. Un salto troppo largo fra
   telefono e desktop, e una differenza fra le due griglie che nessuno legge
   come voluta: qui prendono una misura unica, 18px sui telefoni (dove la card
   è larga quanto lo schermo e il sunto si legge come un paragrafo) e 16px da
   600px in su. Basta agire sul <p> interno: la classe del preset (con
   !important) sta sul div che lo contiene, quindi qui non serve rilanciare. */
.anm-card .wp-block-post-excerpt__excerpt{font-size:1rem}
@media (max-width:599px){
	.anm-card .wp-block-post-excerpt__excerpt{font-size:var(--wp--preset--font-size--medium)}
}

/* ---------------------------------------------------------------------------
   Densità del testo sui telefoni (<600px)
   L'interlinea 1,7 nasce per il desktop, dove la colonna è larga 860px e la
   riga porta ~59 caratteri: lì l'aria serve a non perdere il segno. Sul telefono
   la riga ne porta ~43, e con 30,6px di passo il testo risulta sparso: l'occhio
   va a capo di continuo in mezzo a molto bianco. Le app di lettura (misurato su
   una schermata di feed: corpo ~18-19px con passo ~24,6px) stanno a 1,30-1,35.
   Qui si scende a 1,55: sta in mezzo: recupera densità senza compattare un
   articolo lungo come fosse un post. Il peso passa da 400 a 430 perché Figtree
   è un carattere tondo e leggero: mezzo gradino di peso gli dà il tratto pieno
   dei font di sistema, senza sembrare grassetto. Su tablet e desktop non cambia
   nulla: lì la riga è lunga e 1,7 è la misura giusta. */
@media (max-width:599px){
	body{line-height:1.55;font-weight:430}
}

/* ---------------------------------------------------------------------------
   Fondo scheda: schede simili e scorrimento alfabetico
   Prima qui sotto c'era solo il footer: chi finiva di leggere non aveva un
   motivo per restare. Le card riusano .anm-cards-grid e .anm-card, quindi
   crescono e vanno a capo come tutte le altre del sito. */
.anm-correlate{margin-top:var(--wp--preset--spacing--70)}
.anm-correlate .anm-cards-grid{margin-top:1.2rem}
/* il "perché" della proposta: sta sotto il titolo della card, discreto ma
   leggibile — è quello che distingue un suggerimento da un riempitivo */
.anm-correlate-motivo{margin:.35rem 0 0;font-size:var(--wp--preset--font-size--x-small);color:var(--wp--preset--color--muted)}
/* Scorrimento alfabetico: due bersagli ampi, uno per lato, che su schermo
   stretto diventano due righe piene. `justify-content:space-between` con lo
   <span> vuoto tiene la successiva a destra anche quando manca la precedente
   (prima scheda del gruppo). */
.anm-scheda-nav{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-top:var(--wp--preset--spacing--50)}
.anm-scheda-nav a{display:flex;flex-direction:column;gap:.15rem;max-width:calc(50% - .5rem);padding:.7rem 1.1rem;border:1px solid var(--wp--preset--color--border);border-radius:14px;background:var(--wp--preset--color--surface);text-decoration:none;transition:border-color .2s,transform .2s,box-shadow .2s}
.anm-scheda-nav a:hover{border-color:var(--wp--preset--color--primary);transform:translateY(-2px);box-shadow:var(--wp--preset--shadow--card)}
.anm-scheda-nav-succ{text-align:right;margin-left:auto}
.anm-scheda-nav-et{font-size:var(--wp--preset--font-size--x-small);color:var(--wp--preset--color--muted)}
.anm-scheda-nav-tit{font-family:var(--wp--preset--font-family--heading);font-weight:600;color:var(--wp--preset--color--primary-dark)}
.anm-scheda-nav-prec .anm-scheda-nav-et::before{content:"← "}
.anm-scheda-nav-succ .anm-scheda-nav-et::after{content:" →"}
@media (max-width:599px){.anm-scheda-nav a{max-width:none;flex:1 1 100%;text-align:left}.anm-scheda-nav-succ{margin-left:0}}

/* ---------------------------------------------------------------------------
   Ultimi testi rimasti fuori dalla scala
   Erano scritti a mano a .95rem quando "small" valeva 15px: ora che la misura
   di riferimento è 16 stonavano di un gradino. Sono testi che si leggono
   (l'elenco dei nomi, il corpo delle schede annunci, i messaggi di elenco
   vuoto), non etichette. */
.anm-nomi-lista li,.anm-ponte-corpo,.anm-vuoto-testo,.anm-ponte-invia{font-size:var(--wp--preset--font-size--small)}

/* Campi di testo a 16px, non meno: sotto quella soglia iOS Safari ingrandisce
   da solo la pagina appena si tocca il campo, e l'utente si ritrova il sito
   zoomato e sballato. Vale per la ricerca (header, hero, footer) e per tutti i
   campi dei form: contatti, storie, annunci. Il valore va messo sul controllo,
   perché `font:inherit` non basta — la regola successiva lo sovrascriveva. */
.anm-search input[type=search],
.anm-filtri-cerca input[type=search],
.anm-campo input,.anm-campo select,.anm-campo textarea{font-size:1rem}
/* L'etichetta del "perché" è anche la scorciatoia all'archivio di quel criterio
   (l'elenco filtrato dell'hub, la rubrica, le storie del gruppo). La freccia la
   distingue dalle etichette non cliccabili — quelle sulle keyword in comune, che
   un archivio non ce l'hanno — senza dover colorare tutto. */
.anm-correlate-motivo a{color:var(--wp--preset--color--primary);text-decoration:none}
.anm-correlate-motivo a::after{content:" →"}
.anm-correlate-motivo a:hover{color:var(--wp--preset--color--primary-dark);text-decoration:underline}
/* Griglia dei correlati: stessa regola della fascia della 404 — quattro card in
   riga da 1111px in su, due sotto, una sui telefoni. Fissata a mano e non ad
   auto-fill perché l'auto-fill infilava uno stadio a tre colonne fra i 900 e i
   1110px, con la quarta card orfana a capo. Vale su articoli, storie e schede:
   il sito ha così una sola soglia da ricordare. */
.anm-correlate .anm-cards-grid{grid-template-columns:repeat(2,1fr)}
@media (min-width:1111px){.anm-correlate .anm-cards-grid{grid-template-columns:repeat(4,1fr)}}
@media (max-width:599px){.anm-correlate .anm-cards-grid{grid-template-columns:1fr}}

/* Link "vedi tutti" sotto la griglia delle schede simili: stesso trattamento
   dei "Tutti gli articoli →" delle sezioni della home. */
.anm-correlate-tutti{display:flex;flex-wrap:wrap;gap:.4rem 1.6rem;justify-content:flex-end;margin:1.1rem 0 0}
.anm-correlate-tutti a{color:var(--wp--preset--color--primary);font-weight:600;text-decoration:none;font-size:var(--wp--preset--font-size--small)}
.anm-correlate-tutti a::after{content:" →"}
.anm-correlate-tutti a:hover{color:var(--wp--preset--color--primary-dark);text-decoration:underline}

/* link-azione in coda a una sezione di testo (Collabora): allineato a destra
   come i "vedi tutti" delle griglie, così chiude il blocco invece di sembrare
   un rigo di testo in più. La freccia basta a dire che è un invito ad agire:
   niente sottolineatura a riposo, che qui farebbe rumore. */
.anm-azione{margin:.9rem 0 0;text-align:right}
.anm-azione a{font-weight:600;color:var(--wp--preset--color--primary);text-decoration:none}
.anm-azione a::after{content:" →"}
.anm-azione a:hover{color:var(--wp--preset--color--primary-dark);text-decoration:underline}
/* un titolo raggiunto da un'ancora interna deve restare visibile: l'header è
   sticky e senza questo finisce sotto la barra (stesso stacco delle sezioni). */
.wp-block-post-content :is(h2,h3,h4)[id]{scroll-margin-top:5.5rem}
