/* =========================================================
   POLCENIGO VR – identità visiva della Guida tascabile 2026
   ========================================================= */
@font-face{font-family:"Gotham";src:url(../assets/fonts/Gotham-Book.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Gotham";src:url(../assets/fonts/Gotham-BookItalic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Gotham";src:url(../assets/fonts/Gotham-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Gotham";src:url(../assets/fonts/Gotham-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Gotham";src:url(../assets/fonts/Gotham-BoldItalic.woff2) format("woff2");font-weight:700;font-style:italic;font-display:swap}
@font-face{font-family:"EB Garamond";src:url(../assets/fonts/eb-garamond-latin-wght-normal.woff2) format("woff2");font-weight:400 800;font-style:normal;font-display:swap}
@font-face{font-family:"EB Garamond";src:url(../assets/fonts/eb-garamond-latin-wght-italic.woff2) format("woff2");font-weight:400 800;font-style:italic;font-display:swap}

:root{
  --taupe:#908678; --taupe-d:#6d655a; --taupe-dd:#4a443c; --taupe-l:#a69d90; --pietra:#c9c2b6;
  --verde:#b6c611; --verde-d:#8f9c0a; --verde-l:#dfe88c;
  --blu:#3b738f; --blu-d:#2c5a71; --acqua:#00a19a;
  --carta:#f4f1ec; --ink:#2b2722; --soft:#655d52; --white:#fff;
  --sans:"Gotham",system-ui,-apple-system,"Segoe UI",sans-serif;
  --serif:"EB Garamond",Georgia,"Times New Roman",serif;
  --r:14px; --shadow:0 10px 30px rgba(30,25,20,.25);
  --header-h:76px;
}
*{box-sizing:border-box}
html,body{margin:0;height:100%}
body{background:var(--carta);color:var(--ink);font-family:var(--serif);font-size:19px;line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:inherit}
button{font:inherit;cursor:pointer}
img{max-width:100%;display:block}
.sans{font-family:var(--sans)}

/* ---------- header ---------- */
.top{position:fixed;inset:0 0 auto 0;height:var(--header-h);display:flex;align-items:center;gap:12px;padding:0 18px;z-index:1000;color:#fff;background:var(--taupe);box-shadow:0 2px 14px rgba(0,0,0,.18)}
.top.solid{background:var(--taupe)}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none;min-width:0}
.brand .wm{height:56px;width:auto;border-radius:6px;background:#fff;padding:4px}
.brand b{font:700 15px/1.1 var(--sans);letter-spacing:.06em;text-transform:uppercase;display:block}
.brand i{font:italic 16px/1.15 var(--serif);opacity:.95;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.top .sp{flex:1}
.partners{display:flex;align-items:center;gap:14px;margin-right:8px}
.partners .comune{height:52px;width:auto}
.partners .borghi{height:56px;width:auto}
.ibtn{width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.16);color:#fff;display:grid;place-items:center;flex:none}
.ibtn:hover{background:var(--verde);color:var(--ink)}
.ibtn svg{width:22px;height:22px}
.skip{position:absolute;left:12px;top:-60px;z-index:5000;background:var(--verde);color:var(--ink);padding:12px 18px;border-radius:8px;font:700 14px var(--sans)}
.skip:focus{top:12px}
:focus-visible{outline:3px solid var(--verde);outline-offset:3px}
.a11y-panel{position:fixed;right:18px;top:calc(var(--header-h) + 8px);z-index:2500;background:#fff;color:var(--ink);border-radius:var(--r);box-shadow:var(--shadow);padding:16px 18px;width:280px;font:500 14px/1.4 var(--sans)}
.a11y-panel h2{font:700 12px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--verde-d);margin:0 0 8px}
.a11y-panel label{display:flex;gap:10px;align-items:center;padding:7px 0;cursor:pointer}
.a11y-panel input{width:20px;height:20px;accent-color:var(--taupe-dd)}
.a11y-panel a{display:inline-block;margin-top:8px;font-weight:700}
html.a11y-big{font-size:118%}
html.a11y-big body{font-size:22px}
html.a11y-contrast{--taupe:#3a342c;--taupe-d:#2a251f;--taupe-dd:#16130f;--soft:#2b2722;--verde:#d4e600}
html.a11y-contrast .hero::before{background:linear-gradient(180deg,rgba(0,0,0,.45),rgba(0,0,0,.92))}
html.a11y-contrast .brand .wm{background:#fff}
html.a11y-links a{text-decoration:underline!important;text-underline-offset:3px}
html.a11y-readable body,html.a11y-readable .gsub,html.a11y-readable .prose,html.a11y-readable i{font-family:var(--sans)!important;font-style:normal!important;letter-spacing:.01em}
html.a11y-motion *,html.a11y-motion *::before,html.a11y-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- menu laterale ---------- */
.drawer{position:fixed;inset:0;z-index:2000;pointer-events:none}
.drawer .veil{position:absolute;inset:0;background:rgba(30,26,22,.5);opacity:0;transition:opacity .3s}
.drawer nav{position:absolute;top:0;right:0;bottom:0;width:min(420px,92vw);background:var(--taupe);color:#fff;transform:translateX(100%);transition:transform .35s cubic-bezier(.2,.8,.2,1);overflow:auto;padding:22px 24px 40px}
.drawer.open{pointer-events:auto}.drawer.open .veil{opacity:1}.drawer.open nav{transform:none}
.drawer h3{font:700 12px var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--verde);margin:26px 0 10px}
.mcap{display:grid;grid-template-columns:44px 1fr;gap:4px 12px;padding:12px 0;border-top:1px solid rgba(255,255,255,.18);text-decoration:none}
.mcap .n{font:400 44px/1 var(--serif);color:var(--verde);grid-row:span 2}
.mcap b{font:700 15px/1.25 var(--sans)}
.mcap .subs{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.mcap .subs a{font:500 12px var(--sans);text-decoration:none;padding:5px 9px;border-radius:20px;background:rgba(255,255,255,.12)}
.mcap .subs a.vr::before{content:"360° ";color:var(--verde);font-weight:700}
.mcap .subs a:hover{background:var(--verde);color:var(--ink)}
.mcap .subs a.vr:hover::before{color:var(--ink)}

/* ---------- elementi della guida ---------- */
.gt{font:700 clamp(26px,4.2vw,46px)/1.08 var(--sans);margin:0}
.gt .br{color:var(--verde);font-weight:500}
.gsub{font:italic 400 clamp(19px,2.2vw,26px)/1.25 var(--serif);margin:.35em 0 0}
.kicker{font:700 12px var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--verde)}
.pin{display:inline-block;width:30px;height:38px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 38'%3E%3Cpath d='M15 0C6.7 0 0 6.7 0 15c0 10.5 15 23 15 23s15-12.5 15-23C30 6.7 23.3 0 15 0z' fill='%23b6c611'/%3E%3Ccircle cx='15' cy='14.5' r='6' fill='%23fff'/%3E%3C/svg%3E") no-repeat center/contain}
.btn{display:inline-flex;align-items:center;gap:10px;border:0;border-radius:40px;padding:14px 22px;font:700 14px var(--sans);letter-spacing:.05em;text-transform:uppercase;text-decoration:none;background:var(--verde);color:var(--ink);box-shadow:0 6px 18px rgba(143,156,10,.35);transition:transform .15s,background .2s}
.btn:hover{transform:translateY(-2px);background:#c8d72a}
.btn.ghost{background:rgba(255,255,255,.14);color:#fff;box-shadow:none;border:1px solid rgba(255,255,255,.35)}
.btn.ghost:hover{background:#fff;color:var(--ink)}
.btn svg{width:20px;height:20px}
.chip{display:inline-block;font:700 11px var(--sans);letter-spacing:.12em;text-transform:uppercase;padding:5px 10px;border-radius:20px;background:var(--verde);color:var(--ink)}
.chip.soon{background:var(--pietra);color:var(--soft)}

/* ---------- HOME: mappa ---------- */
.home{position:fixed;inset:0}
#map{position:absolute;inset:0;background:#d9dcc4}
.leaflet-container{font-family:var(--sans)}
.leaflet-top{top:calc(var(--header-h) + 6px)}
.topo-tiles{filter:grayscale(.35) sepia(.35) hue-rotate(28deg) saturate(.85) brightness(1.04) contrast(.95)}
.home-panel{position:absolute;left:24px;top:calc(var(--header-h) + 10px);bottom:24px;width:min(420px,calc(100vw - 48px));z-index:500;display:flex;flex-direction:column;
  background:rgba(143,133,119,.94);color:#fff;border-radius:var(--r);box-shadow:var(--shadow);overflow:hidden;backdrop-filter:blur(4px);transition:transform .4s}
.home-panel .hd{padding:22px 24px 14px;position:relative}
.home-panel .hd .G{position:absolute;right:-6px;top:-34px;font:400 190px/1 var(--serif);color:rgba(255,255,255,.12);pointer-events:none}
.home-panel .hd h1{font:700 30px/1.05 var(--sans);margin:6px 0 0;text-transform:uppercase;letter-spacing:.02em}
.home-panel .hd p{font:italic 19px/1.3 var(--serif);margin:6px 0 0;opacity:.95}
.home-panel .list{overflow:auto;padding:0 12px 16px;flex:1}
.home-panel .pf{padding:12px 24px 14px;border-top:1px solid rgba(255,255,255,.2);display:flex;flex-wrap:wrap;gap:6px 16px;font:500 12px var(--sans)}
.home-panel .pf a{color:#fff;text-decoration:none;opacity:.9}.home-panel .pf a:hover{color:var(--verde)}
.home-panel .pf .dv{margin-right:auto}.home-panel .pf .dv b{color:var(--verde)}
.hcap{border-top:1px solid rgba(255,255,255,.2);padding:12px 12px}
.hcap .row{display:flex;gap:12px;align-items:baseline;text-decoration:none}
.hcap .num{font:400 40px/0.9 var(--serif);color:var(--verde);min-width:26px}
.hcap .t{font:700 15px/1.25 var(--sans)}
.hcap .t small{display:block;font:italic 16px/1.2 var(--serif);opacity:.85;margin-top:2px}
.hsites{display:flex;flex-direction:column;gap:2px;margin:8px 0 0 38px}
.hsite{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:10px;text-decoration:none;font:500 13px var(--sans);cursor:pointer;border:0;background:none;color:#fff;text-align:left}
.hsite:hover,.hsite.on{background:rgba(255,255,255,.16)}
.hsite .dot{width:10px;height:10px;border-radius:50%;background:var(--verde);flex:none;box-shadow:0 0 0 3px rgba(182,198,17,.25)}
.hsite .dot.no{background:var(--pietra);box-shadow:none}
.hsite em{margin-left:auto;font:700 10px var(--sans);letter-spacing:.1em;color:var(--verde)}
.panel-toggle{display:none}

/* marker mappa */
.gpin{width:40px;height:52px;position:relative;transition:transform .2s}
.gpin svg{width:100%;height:100%;filter:drop-shadow(0 3px 4px rgba(0,0,0,.35))}
.gpin span{position:absolute;top:9px;left:0;right:0;text-align:center;font:700 15px var(--sans);color:var(--taupe-dd)}
.gpin.vr::after{content:"360°";position:absolute;left:50%;top:-14px;transform:translateX(-50%);font:700 9px var(--sans);background:var(--taupe-dd);color:var(--verde);padding:2px 5px;border-radius:8px;white-space:nowrap}
.gpin:hover,.gpin.on{transform:scale(1.18) translateY(-4px)}
.gpin.soft svg path{fill:#d8d2c6}
.leaflet-tooltip.gtip{font:700 12px var(--sans);background:var(--taupe-dd);color:#fff;border:0;border-radius:8px;box-shadow:var(--shadow);padding:6px 10px}
.leaflet-tooltip.gtip::before{display:none}

/* scheda popup sulla mappa */
.card{position:absolute;right:24px;bottom:24px;width:min(380px,calc(100vw - 48px));z-index:600;background:#fff;border-radius:var(--r);box-shadow:var(--shadow);overflow:hidden;transform:translateY(20px);opacity:0;pointer-events:none;transition:.3s}
.card.show{transform:none;opacity:1;pointer-events:auto}
.card .im{height:170px;background:#ccc center/cover;position:relative}
.card .im .chip{position:absolute;left:14px;top:14px}
.card .x{position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:50%;border:0;background:rgba(0,0,0,.45);color:#fff;font-size:20px;line-height:1}
.card .bd{padding:16px 18px 18px}
.card .cap{font:700 11px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--verde-d)}
.card h2{font:700 21px/1.15 var(--sans);margin:4px 0 6px}
.card p{font-size:17px;line-height:1.4;margin:0 0 14px;color:var(--soft)}
.card .acts{display:flex;gap:8px;flex-wrap:wrap}
.card .btn{padding:11px 16px;font-size:12px}
.card .btn.alt{background:var(--taupe);color:#fff;box-shadow:none}

/* ---------- PAGINE (capitolo / sito) ---------- */
.page{min-height:100%;padding-top:0}
.hero{position:relative;min-height:78vh;display:flex;align-items:flex-end;color:#fff;background:var(--taupe) center/cover;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(60,54,46,.15) 30%,rgba(60,54,46,.88))}
.hero .big{position:absolute;right:-2vw;top:4vh;font:400 min(62vh,52vw)/.8 var(--serif);color:rgba(255,255,255,.16);pointer-events:none}
.hero .num{position:absolute;right:5vw;bottom:5vh;font:400 min(30vh,24vw)/.8 var(--serif);color:var(--verde);opacity:.9;pointer-events:none}
.hero .in{position:relative;padding:0 6vw 7vh;max-width:900px}
.hero .gt{font-size:clamp(32px,5.4vw,64px)}
.hero .acts{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.wrap{max-width:1180px;margin:0 auto;padding:0 6vw}
.sec{padding:70px 0}
.sec.taupe{background:var(--taupe);color:#fff}
.sec.dark{background:var(--taupe-dd);color:#fff}
.sec h2{font:700 clamp(24px,3vw,34px)/1.15 var(--sans);margin:0 0 6px}
.sec h2 + .gsub{margin-bottom:26px}
.cols{display:grid;grid-template-columns:1.25fr 1fr;gap:56px;align-items:start}
.prose p{margin:0 0 1em}
.prose p:first-child::first-letter{float:left;font:400 92px/.78 var(--serif);color:var(--verde-d);padding:8px 10px 0 0}
.box{background:var(--verde);color:var(--ink);padding:22px 24px;border-radius:0 var(--r) var(--r) 0;font:400 16px/1.5 var(--sans);position:relative}
.box::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--taupe-d)}
.fig{margin:0}.fig img{border-radius:var(--r);width:100%;box-shadow:var(--shadow)}
.fig figcaption{font:italic 15px/1.3 var(--serif);color:var(--soft);margin-top:8px}
.sites{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px}
.scard{background:#fff;border-radius:var(--r);overflow:hidden;box-shadow:0 4px 16px rgba(0,0,0,.08);text-decoration:none;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s;color:var(--ink)}
.scard:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.scard .im{aspect-ratio:16/10;background:#bbb center/cover;position:relative}
.scard .im .chip{position:absolute;left:12px;top:12px}
.scard .bd{padding:14px 16px 18px}
.scard b{font:700 17px/1.2 var(--sans);display:block}
.scard i{font-size:16px;color:var(--soft)}

/* player audio */
.audio{display:flex;align-items:center;gap:14px;background:var(--taupe-dd);color:#fff;border-radius:60px;padding:8px 18px 8px 8px;max-width:560px;margin:14px 0 22px}
.audio .play{width:48px;height:48px;border-radius:50%;border:0;background:var(--verde);display:grid;place-items:center;flex:none}
.audio .play svg{width:22px;height:22px}
.audio .meta{flex:1;min-width:0}
.audio .meta b{display:block;font:700 13px var(--sans);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.audio .bar{height:5px;background:rgba(255,255,255,.2);border-radius:5px;margin-top:7px;cursor:pointer;position:relative}
.audio .bar i{position:absolute;left:0;top:0;bottom:0;background:var(--verde);border-radius:5px;width:0}
.audio .tm{font:500 12px var(--sans);opacity:.8;min-width:78px;text-align:right}
.track{padding:34px 0;border-top:1px solid rgba(0,0,0,.1)}
.track:first-child{border-top:0}
.track h3{font:700 22px/1.2 var(--sans);margin:0}
.track h3 .br{color:var(--verde-d)}

/* mini mappa nella pagina */
.pmap{height:380px;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow)}

/* ---------- GORGAZZO: esplorazioni ---------- */
.explore{display:grid;grid-template-columns:minmax(300px,1fr) 1.15fr;gap:48px;align-items:start}
.section-svg{width:100%;height:auto;display:block}
.section-svg .tick text{font:700 11px var(--sans)}
.section-svg .lab{font:500 11px var(--sans)}
.section-svg .hit{cursor:pointer}
.section-svg .mk circle{transition:r .2s}
.section-svg .mk.on circle.c{r:9}
.section-svg .mk.on .lab{fill:var(--verde)}
.tl{position:relative;padding-left:30px}
.tl::before{content:"";position:absolute;left:9px;top:6px;bottom:6px;width:2px;background:rgba(255,255,255,.25)}
.ev{position:relative;padding:10px 14px 12px;border-radius:12px;cursor:pointer;transition:background .2s;margin-bottom:4px}
.ev::before{content:"";position:absolute;left:-27px;top:16px;width:14px;height:14px;border-radius:50%;background:var(--taupe-dd);border:3px solid var(--verde)}
.ev.inc::before{border-style:dashed;border-color:var(--pietra)}
.ev:hover,.ev.on{background:rgba(255,255,255,.1)}
.ev.on::before{background:var(--verde)}
.ev .d{font:700 12px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--verde)}
.ev .p{float:right;font:700 22px/1 var(--sans)}
.ev .w{font:500 15px/1.3 var(--sans);margin-top:3px}
.ev .nt{font:italic 16px/1.3 var(--serif);opacity:.85;margin-top:3px}
.ev .src{font:500 10px var(--sans);letter-spacing:.08em;text-transform:uppercase;opacity:.55;margin-top:4px}
.depthbar{display:flex;align-items:center;gap:14px;margin:0 0 26px;font:500 13px var(--sans)}
.depthbar input{flex:1;accent-color:var(--verde)}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;margin:26px 0}
.stat{background:rgba(255,255,255,.08);border-radius:12px;padding:14px 16px}
.stat b{display:block;font:700 30px/1 var(--sans);color:var(--verde)}
.stat span{font:500 12px/1.3 var(--sans);opacity:.85}
.catasto{display:flex;gap:18px;align-items:center;background:#fff;color:var(--ink);border-radius:var(--r);padding:18px 20px;margin-top:10px}
.catasto .lg{font:700 13px/1.15 var(--sans);text-transform:uppercase;letter-spacing:.05em;border-left:5px solid var(--blu);padding-left:12px;flex:1}
.catasto .lg small{display:block;font:italic 15px var(--serif);text-transform:none;letter-spacing:0;color:var(--soft);margin-top:3px}
.video360{position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:16/8;background:linear-gradient(135deg,var(--blu-d),#0c2c3a);display:grid;place-items:center;color:#fff;text-align:center;box-shadow:var(--shadow)}
.video360 .ring{width:110px;height:110px;border-radius:50%;border:2px dashed rgba(255,255,255,.5);display:grid;place-items:center;margin:0 auto 14px;font:700 22px var(--sans)}

/* ---------- VR ---------- */
.vrview{position:fixed;inset:0;background:#111;z-index:900}
#viewer{position:absolute;inset:0}
.vr-top{position:absolute;left:0;right:0;top:0;z-index:20;display:flex;align-items:center;gap:12px;padding:12px 16px;background:linear-gradient(180deg,rgba(40,36,30,.8),rgba(40,36,30,0));color:#fff;pointer-events:none}
.vr-top>*{pointer-events:auto}
.vr-top .ttl{min-width:0}
.vr-top .ttl small{display:block;font:700 10px var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--verde)}
.vr-top .ttl b{display:block;font:700 18px/1.15 var(--sans);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vr-top .ttl i{font:italic 15px var(--serif);opacity:.85}
.vr-top .sp{flex:1}
.mini{position:absolute;left:16px;bottom:96px;width:260px;height:200px;z-index:20;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);border:3px solid rgba(255,255,255,.85);transition:width .3s,height .3s}
.mini.big{width:min(520px,calc(100vw - 32px));height:min(420px,55vh)}
.mini .grow{position:absolute;right:6px;top:6px;z-index:500;width:30px;height:30px;border-radius:8px;border:0;background:rgba(255,255,255,.9);display:grid;place-items:center}
.ndot{width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid var(--taupe-dd);box-shadow:0 1px 3px rgba(0,0,0,.4)}
.ndot.cur{background:var(--verde);border-color:#fff;width:18px;height:18px}
.ndot.est{border-style:dashed}
.cone{width:120px;height:120px;pointer-events:none}
.strip{position:absolute;left:0;right:0;bottom:0;z-index:20;display:flex;gap:8px;overflow-x:auto;padding:10px 16px 14px;background:linear-gradient(0deg,rgba(40,36,30,.85),rgba(40,36,30,0));scrollbar-width:thin}
.strip button{flex:none;width:112px;border:0;padding:0;background:none;color:#fff;text-align:left;opacity:.75;transition:opacity .2s}
.strip button img{width:112px;height:56px;object-fit:cover;border-radius:8px;border:2px solid transparent}
.strip button span{display:block;font:500 10px/1.2 var(--sans);margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.strip button.on{opacity:1}.strip button.on img{border-color:var(--verde)}
.strip button:hover{opacity:1}
.vr-audio{position:absolute;right:16px;bottom:96px;z-index:20;margin:0;max-width:340px}
.psv-navbar{display:none!important}
/* hotspot info nel 360 */
.hs{width:46px;height:46px;border-radius:50%;background:var(--verde);display:grid;place-items:center;box-shadow:0 0 0 6px rgba(182,198,17,.35),0 4px 10px rgba(0,0,0,.4);animation:pulse 2s infinite;cursor:pointer}
.hs svg{width:22px;height:22px}
@keyframes pulse{0%,100%{box-shadow:0 0 0 6px rgba(182,198,17,.35),0 4px 10px rgba(0,0,0,.4)}50%{box-shadow:0 0 0 14px rgba(182,198,17,0),0 4px 10px rgba(0,0,0,.4)}}
.psv-virtual-tour-arrow{filter:drop-shadow(0 2px 3px rgba(0,0,0,.5))}
/* modale */
.modal{position:fixed;inset:0;z-index:3000;background:rgba(25,22,18,.86);display:none;align-items:center;justify-content:center;padding:24px}
.modal.show{display:flex}
.modal .in{max-width:min(1200px,96vw);max-height:92vh;overflow:auto;background:var(--carta);border-radius:var(--r);position:relative}
.modal .in img{width:100%}
.modal .in h3{font:700 18px var(--sans);margin:0;padding:16px 56px 14px 20px;background:var(--taupe);color:#fff}
.modal .x{position:absolute;right:10px;top:8px;width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.2);color:#fff;font-size:22px}
/* editor */
.edit{position:absolute;right:16px;top:76px;z-index:30;width:300px;background:rgba(255,255,255,.96);border-radius:var(--r);padding:14px 16px;font:500 13px/1.4 var(--sans);box-shadow:var(--shadow)}
.edit h4{margin:0 0 6px;font:700 12px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--verde-d)}
.edit select,.edit button{width:100%;margin-top:6px;padding:8px;border-radius:8px;border:1px solid #ccc;background:#fff;font:500 13px var(--sans)}
.edit button{background:var(--taupe-dd);color:#fff;border:0}
.edit .cross{position:absolute}
.crosshair{position:absolute;left:50%;top:50%;width:40px;height:40px;margin:-20px 0 0 -20px;z-index:15;pointer-events:none;border:2px solid var(--verde);border-radius:50%}
.crosshair::before,.crosshair::after{content:"";position:absolute;background:var(--verde)}
.crosshair::before{left:50%;top:-10px;bottom:-10px;width:2px;margin-left:-1px}
.crosshair::after{top:50%;left:-10px;right:-10px;height:2px;margin-top:-1px}

/* footer */
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--taupe-dd);color:#fff;padding:10px 18px;border-radius:30px;font:500 13px var(--sans);z-index:4000;opacity:0;transition:opacity .3s;pointer-events:none}
.toast.show{opacity:1}

@media (max-width:860px){
  body{font-size:18px}
  .cols,.explore{grid-template-columns:1fr;gap:32px}
  .home-panel{top:auto;bottom:0;left:0;width:100%;height:46vh;border-radius:var(--r) var(--r) 0 0}
  .home-panel.min{transform:translateY(calc(100% - 92px))}
  .panel-toggle{display:block;position:absolute;left:50%;top:6px;width:48px;height:6px;margin-left:-24px;border-radius:4px;border:0;background:rgba(255,255,255,.5)}
  .card{left:12px;right:12px;width:auto;bottom:calc(46vh + 12px)}
  .home-panel.min ~ .card{bottom:104px}
  .mini{width:150px;height:120px;bottom:92px}
  .vr-audio{left:176px;right:12px;bottom:92px;max-width:none}
  .brand i{display:none}
  .edit{left:12px;right:12px;width:auto}
  .hero{min-height:70vh}
}

/* ---------- footer / crediti ---------- */
.foot{background:var(--taupe-dd);color:#fff;padding:0;font:400 14px/1.6 var(--sans)}
.foot .grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px;padding:50px 0 34px}
.foot h4{font:700 12px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--verde);margin:0 0 10px}
.foot .logos{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
.foot .logos img{height:60px;width:auto}
.foot .logos .wm{background:#fff;border-radius:6px;padding:4px}
.foot a{color:#fff}
.foot ul{list-style:none;margin:0;padding:0}.foot li{margin:4px 0}
.foot .bar{border-top:1px solid rgba(255,255,255,.15);padding:16px 0 26px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px}
.foot .bar .dv{font-weight:500}.foot .bar .dv a{color:var(--verde);font-weight:700;text-decoration:none}
.spot{display:grid;grid-template-columns:auto 1fr auto;gap:26px;align-items:center;background:linear-gradient(120deg,var(--blu-d),#1d3f50);color:#fff;border-radius:var(--r);padding:28px 32px;box-shadow:var(--shadow)}
.spot .ic{width:74px;height:74px;border-radius:50%;background:rgba(255,255,255,.12);display:grid;place-items:center}
.spot .ic svg{width:40px;height:40px}
.spot h3{font:700 20px/1.2 var(--sans);margin:0 0 4px}
.spot p{margin:0;font-size:17px;opacity:.92}
/* ---------- guida sfogliabile ---------- */
.flip-wrap{background:var(--taupe-dd);padding:calc(var(--header-h) + 30px) 0 50px;min-height:100vh;color:#fff}
.flip-head{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:22px}
.book{margin:0 auto;max-width:1000px}
.book .page{background:#fff}
.book .page img{width:100%;height:100%;object-fit:contain}
.flip-ctrl{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:20px;font:500 14px var(--sans)}
.flip-ctrl button{width:48px;height:48px;border-radius:50%;border:0;background:var(--verde);color:var(--ink);font-size:22px}
.flip-thumbs{display:flex;gap:6px;overflow:auto;margin-top:18px;padding-bottom:6px}
.flip-thumbs button{flex:none;border:2px solid transparent;padding:0;background:none;border-radius:4px}
.flip-thumbs button.on{border-color:var(--verde)}
.flip-thumbs img{height:84px;width:auto;display:block}
.doc{max-width:820px}
.doc h2{margin-top:1.4em}
@media (max-width:1100px){.partners .comune{display:none}}
@media (max-width:860px){
  :root{--header-h:64px}
  .brand .wm{height:44px}.brand b{font-size:12px}
  .partners{display:none}
  .foot .grid{grid-template-columns:1fr;gap:26px}
  .spot{grid-template-columns:1fr;text-align:left}
}
.book{display:flex;justify-content:center}
@media (max-width:860px){.home .leaflet-control-zoom{display:none}}

/* =========================================================
   HOME editoriale (proposta B)
   ========================================================= */
.contour{background-color:var(--taupe);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='600'%3E%3Cg fill='none' stroke='%23000' stroke-opacity='.07'%3E%3Cpath d='M0 120 Q150 60 300 140 T600 110'/%3E%3Cpath d='M0 170 Q160 110 300 190 T600 160'/%3E%3Cpath d='M0 230 Q140 170 310 250 T600 220'/%3E%3Cpath d='M0 400 Q170 330 300 420 T600 380'/%3E%3Cpath d='M0 450 Q160 390 300 470 T600 430'/%3E%3Cpath d='M0 520 Q150 470 290 540 T600 500'/%3E%3C/g%3E%3C/svg%3E")}
.ed-hero{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr;color:#fff;padding-top:var(--header-h);overflow:hidden;position:relative}
.ed-hero{background-color:var(--taupe);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='600'%3E%3Cg fill='none' stroke='%23000' stroke-opacity='.07'%3E%3Cpath d='M0 120 Q150 60 300 140 T600 110'/%3E%3Cpath d='M0 170 Q160 110 300 190 T600 160'/%3E%3Cpath d='M0 230 Q140 170 310 250 T600 220'/%3E%3Cpath d='M0 400 Q170 330 300 420 T600 380'/%3E%3Cpath d='M0 450 Q160 390 300 470 T600 430'/%3E%3Cpath d='M0 520 Q150 470 290 540 T600 500'/%3E%3C/g%3E%3C/svg%3E")}
.ed-l{position:relative;padding:40px 0 60px 6vw;display:flex;align-items:flex-end}
.ed-G{position:absolute;left:2vw;top:-2vh;font:400 min(78vh,46vw)/.8 var(--serif);color:var(--taupe-dd);opacity:.92;pointer-events:none;animation:gIn 1.4s cubic-bezier(.2,.8,.2,1) both}
@keyframes gIn{from{opacity:0;transform:translateY(30px) scale(.96)}to{opacity:.92;transform:none}}
.ed-bar{position:absolute;left:calc(6vw - 36px);bottom:22vh;width:6px;height:170px;background:var(--verde)}
.ed-in{position:relative;max-width:560px;margin-bottom:8vh}
.ed-in h1{font:700 clamp(34px,4.2vw,58px)/1.02 var(--sans);text-transform:uppercase;margin:12px 0}
.ed-in p{font:italic clamp(20px,1.8vw,26px)/1.3 var(--serif);margin:0 0 28px}
.ed-in .acts{display:flex;gap:12px;flex-wrap:wrap}
.ed-idx{padding:44px 6vw 50px 2vw;display:flex;flex-direction:column;justify-content:center}
.ed-idx h2{font:700 13px var(--sans);letter-spacing:.2em;text-transform:uppercase;margin:0 0 14px}
.ed-it{display:grid;grid-template-columns:40px 1fr 120px 64px;gap:16px;align-items:center;padding:14px 12px;border-top:1px solid rgba(255,255,255,.25);text-decoration:none;color:#fff;border-radius:8px;transition:background .25s}
.ed-it:last-child{border-bottom:1px solid rgba(255,255,255,.25)}
.ed-it .pin{width:28px;height:36px}
.ed-it b{font:700 18px/1.2 var(--sans);display:block}.ed-it i{font:italic 17px/1.25 var(--serif);opacity:.92}
.ed-it img{width:120px;height:70px;object-fit:cover;border-radius:6px;transition:transform .35s}
.ed-it .n{font:400 70px/.8 var(--serif);color:rgba(255,255,255,.35);text-align:right;transition:color .25s}
.ed-it:hover,.ed-it:focus-visible{background:rgba(255,255,255,.09)}
.ed-it:hover .n,.ed-it:focus-visible .n{color:var(--verde)}
.ed-it:hover img{transform:scale(1.06)}
.ed-mos{background:var(--carta);padding:80px 0 90px}
.ed-h2{font:700 clamp(28px,3.4vw,42px) var(--sans);margin:6px 0 34px}
.ed-h2 .br{color:var(--verde-d)}
.mos{display:grid;grid-template-columns:1.45fr 1fr 1fr;grid-template-rows:300px 300px;gap:16px}
.tile{position:relative;border-radius:12px;background:center/cover;color:#fff;text-decoration:none;display:flex;align-items:flex-end;padding:22px;overflow:hidden;isolation:isolate}
.tile::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(40,36,30,0) 30%,rgba(40,36,30,.9));transition:background .3s}
.tile::after{content:"";position:absolute;inset:0;z-index:-2;background:inherit;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.tile:hover::after{transform:scale(1.07)}
.tile:hover::before{background:linear-gradient(180deg,rgba(40,36,30,.1) 10%,rgba(40,36,30,.94))}
.tile.big{grid-row:span 2}
.tile em{position:absolute;top:16px;left:16px;font:700 11px var(--sans);font-style:normal;background:var(--verde);color:var(--ink);padding:5px 10px;border-radius:20px}
.tile .tn{position:absolute;top:6px;right:16px;font:400 110px/1 var(--serif);color:var(--verde);opacity:.95;text-shadow:0 2px 14px rgba(0,0,0,.35)}
.tile.big .tn{font-size:170px}
.tile b{display:block;font:700 20px/1.15 var(--sans)}
.tile.big b{font-size:30px}
.tile i{display:block;font:italic 18px/1.25 var(--serif);opacity:.92;margin-top:4px}
.tile .ch{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px;max-height:0;opacity:0;overflow:hidden;transition:max-height .45s,opacity .35s}
.tile.big .ch,.tile:hover .ch,.tile:focus-visible .ch{max-height:120px;opacity:1}
.tile .ch span{font:500 12px var(--sans);padding:5px 10px;border-radius:20px;background:rgba(255,255,255,.18);backdrop-filter:blur(4px)}
.tile .ch strong{color:var(--verde)}
.ed-intro .prose p:first-child::first-letter{color:var(--taupe-d)}
.ed-focus{background:var(--taupe-dd);color:#fff;border-radius:var(--r);padding:30px 32px;align-self:center}
.ed-focus h3{font:700 26px var(--sans);margin:8px 0}
.ed-focus p{margin:0 0 20px}
.ed-two{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.ed-card{display:block;background:rgba(255,255,255,.1);border-radius:var(--r);padding:30px;color:#fff;text-decoration:none;transition:background .25s,transform .25s}
.ed-card:hover{background:rgba(255,255,255,.16);transform:translateY(-3px)}
.ed-card h3{font:700 24px var(--sans);margin:8px 0}
.ed-card p{margin:0 0 20px}
.ed-card.guide{display:grid;grid-template-columns:120px 1fr;gap:24px;align-items:center}
.ed-card.guide img{border-radius:6px;box-shadow:var(--shadow)}
/* comparsa allo scorrimento */
.rv{opacity:0;transform:translateY(26px);transition:opacity .8s ease var(--d,0ms),transform .8s cubic-bezier(.2,.8,.2,1) var(--d,0ms)}
.rv.in{opacity:1;transform:none}
@media (max-width:980px){
  .ed-hero{grid-template-columns:1fr}
  .ed-l{min-height:70vh}
  .ed-idx{padding:20px 5vw 50px}
  .ed-it{grid-template-columns:34px 1fr 54px;}
  .ed-it img{display:none}
  .mos{grid-template-columns:1fr 1fr;grid-template-rows:none;grid-auto-rows:240px}
  .tile.big{grid-column:span 2;grid-row:auto;min-height:340px}
  .tile .ch{max-height:120px;opacity:1}
  .ed-two{grid-template-columns:1fr}
}
@media (max-width:560px){.mos{grid-template-columns:1fr}.tile.big{grid-column:auto}}
@media (max-width:980px){
  .ed-l{min-height:0;padding:min(42vw,300px) 5vw 20px}
  .ed-G{top:10px;font-size:min(70vw,420px)}
  .ed-bar{display:none}
  .ed-in{margin-bottom:10px}
}

/* =========================================================
   REVISIONE: Gotham ovunque, Garamond solo per i grandi numeri
   ========================================================= */
body{font-family:var(--sans);font-size:17px;line-height:1.6}
.gsub{font:400 clamp(17px,1.6vw,21px)/1.45 var(--sans);opacity:.92}
.prose p:first-child::first-letter{float:none;font:inherit;color:inherit;padding:0}
.ed-it i,.tile i,.hcap .t small,.brand i,.fig figcaption,.ev .nt,.home-panel .hd p,.catasto .lg small,.scard i{font-family:var(--sans)!important;font-style:normal!important;font-weight:400}
.brand i{font-size:13px;opacity:.85}
.kicker.dk{color:var(--verde-d)}
.hero .num{position:absolute;right:5vw;bottom:4vh;font:400 min(34vh,26vw)/.8 var(--serif);color:var(--verde);opacity:.95;pointer-events:none}

/* ---------- HOME: logo animato ---------- */
.ed-hero{grid-template-columns:1.1fr 1fr;align-items:center}
.ed-l{flex-direction:column;align-items:flex-start;justify-content:center;padding:30px 3vw 40px 6vw;gap:10px}
.logo-wrap{width:min(500px,90%,62vh);aspect-ratio:300/268;margin:0 0 6px -10px}
.logo-wrap svg{width:100%;height:100%;overflow:hidden}
.ed-in{margin:0}
.ed-in h1{font-size:clamp(28px,3.2vw,46px)}
.ed-in p{font:400 clamp(16px,1.35vw,19px)/1.5 var(--sans)}
.logo-anim>*{transform-box:fill-box;transform-origin:center;opacity:0}
.go .logo-anim>*{animation:pop .7s cubic-bezier(.2,1.4,.4,1) both;animation-delay:calc(var(--i) * 12ms)}
.go .logo-anim .white{animation:fadeIn .6s ease both;animation-delay:.1s}
.go .logo-anim .hatch{animation:fadeIn .5s ease both;animation-delay:calc(1.6s + var(--i) * 4ms)}
.go .logo-anim .lime{animation:drop .8s cubic-bezier(.2,1.5,.4,1) both;animation-delay:calc(1.1s + var(--i) * 5ms)}
.go .logo-anim .teal{animation:pop .8s cubic-bezier(.2,1.4,.4,1) both,sway 4.5s ease-in-out infinite;animation-delay:calc(.4s + var(--i) * 10ms),calc(2.5s + var(--i) * 40ms);transform-origin:bottom center}
.go .logo-anim .blue{animation:pop .8s cubic-bezier(.2,1.4,.4,1) both,bob 3.6s ease-in-out infinite;animation-delay:calc(.3s + var(--i) * 10ms),2.8s}
.go .logo-anim .dash{animation:fadeIn .8s ease both;animation-delay:2s}
@keyframes pop{from{opacity:0;transform:scale(.3) translateY(14px)}to{opacity:1;transform:none}}
@keyframes drop{from{opacity:0;transform:translateY(-40px) scale(1.3)}to{opacity:1;transform:none}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes sway{0%,100%{transform:rotate(0)}50%{transform:rotate(-4deg)}}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes march{to{stroke-dashoffset:-26}}
/* indice dinamico */
.ed-idx{position:relative;padding:40px 6vw 60px 2vw}
.idx-prev{position:absolute;inset:30px 4vw 30px 0;border-radius:18px;overflow:hidden;pointer-events:none;z-index:0}
.idx-prev span{position:absolute;inset:0;background:center/cover;opacity:0;transform:scale(1.08);transition:opacity .6s,transform 1.2s cubic-bezier(.2,.8,.2,1)}
.idx-prev span::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(60,54,46,.92),rgba(60,54,46,.55))}
.idx-prev span.on{opacity:1;transform:none}
.ed-idx>h2,.ed-it{position:relative;z-index:1}
.ed-idx h2{margin-left:14px}
.ed-it{grid-template-columns:64px 1fr auto 30px;padding:18px 14px;border-radius:12px;border-top:1px solid rgba(255,255,255,.22)}
.ed-it .num{font:400 58px/.8 var(--serif);color:rgba(255,255,255,.45);transition:color .3s,transform .4s}
.ed-it b{font-size:19px}
.ed-it i{font-size:14px;opacity:.85;display:block;margin-top:3px}
.ed-it em{font:700 10px var(--sans);font-style:normal;background:var(--verde);color:var(--ink);padding:4px 8px;border-radius:12px}
.ed-it .go{font:700 22px var(--sans);opacity:0;transform:translateX(-10px);transition:.3s;color:var(--verde)}
.ed-it:hover,.ed-it:focus-visible{background:rgba(255,255,255,.06)}
.ed-it:hover .num,.ed-it:focus-visible .num{color:var(--verde);transform:scale(1.12)}
.ed-it:hover .go,.ed-it:focus-visible .go{opacity:1;transform:none}
.scroll-cue{position:absolute;left:50%;bottom:22px;width:28px;height:46px;border:2px solid rgba(255,255,255,.7);border-radius:16px;transform:translateX(-50%)}
.scroll-cue span{position:absolute;left:50%;top:8px;width:4px;height:8px;border-radius:2px;background:#fff;margin-left:-2px;animation:cue 1.8s infinite}
@keyframes cue{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(16px)}}
.ed-num{background:var(--taupe-dd);color:#fff;padding:56px 0}
.nums{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}
.nums b{display:block;font:700 clamp(36px,5vw,64px)/1 var(--sans);color:var(--verde)}
.nums span{font:500 13px var(--sans);letter-spacing:.14em;text-transform:uppercase;opacity:.85}
a.ed-focus{text-decoration:none;display:block;transition:transform .3s}
a.ed-focus:hover{transform:translateY(-4px)}
.tile b{font-family:var(--sans)}
/* ---------- mappe del tour ---------- */
.pmap.tall{height:min(70vh,620px);margin-top:16px}
.legend{display:flex;flex-wrap:wrap;gap:8px 18px;font:500 13px var(--sans)}
.legend i{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:6px;vertical-align:-1px}
.ndot{background:var(--c,#fff)!important;border-color:#fff!important}
.ndot.cur{background:#fff!important;border-color:var(--c,#b6c611)!important;box-shadow:0 0 0 4px rgba(182,198,17,.5)}
.leaflet-tooltip.ntip{padding:6px;text-align:center}
.leaflet-tooltip.ntip img{width:160px;height:80px;object-fit:cover;border-radius:6px;display:block;margin-bottom:5px}
/* ---------- VR ---------- */
.plabel{display:inline-block;font:700 13px var(--sans);color:#fff;background:rgba(60,54,46,.78);padding:6px 12px;border-radius:20px;border-left:4px solid var(--verde);white-space:nowrap;backdrop-filter:blur(4px);pointer-events:none}
.hs{border:0;width:50px;height:50px}
.hs-video{background:#fff}.hs-video svg{color:#2b2722}
.hs-model{background:#dfe88c}
.hs-video360{background:#fff}
.vr-hint{position:absolute;left:50%;top:84px;transform:translateX(-50%);z-index:20;background:rgba(60,54,46,.85);color:#fff;font:500 13px var(--sans);padding:9px 16px;border-radius:20px;transition:opacity .8s}
.vr-hint.hide{opacity:0}
.modal .in{background:var(--taupe-dd)}
.modal .body img,.modal .body video{display:block;width:100%;max-height:80vh;object-fit:contain;background:#000}
.m3d{width:min(1000px,92vw);height:min(70vh,640px);display:grid;place-items:center;color:#fff;background:radial-gradient(circle at 50% 40%,#6d655a,#2b2722)}
.m3d canvas{display:block}
.m3d-h{color:#fff;font:500 13px var(--sans);text-align:center;margin:0;padding:10px}

/* ---------- GORGAZZO: discesa ---------- */
.gz{position:relative;background:linear-gradient(180deg,#0e5a63 0%,#0b3442 40%,#061a22 100%);color:#fff;--deep:0}
.gz-sticky{position:sticky;top:0;height:100vh;overflow:hidden;display:flex;align-items:center;padding-top:var(--header-h)}
.gz-water{position:absolute;inset:0;background:radial-gradient(ellipse at 30% calc(10% + var(--deep) * 60%),rgba(31,179,173,calc(.45 - var(--deep) * .4)),transparent 60%),linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,calc(var(--deep) * .6)))}
.gz-ray{position:absolute;left:-10%;top:-20%;width:60%;height:140%;background:linear-gradient(100deg,rgba(255,255,255,.12),transparent 60%);filter:blur(20px);transform:rotate(12deg);opacity:calc(1 - var(--deep) * 1.4);animation:ray 7s ease-in-out infinite}
@keyframes ray{50%{transform:rotate(16deg) translateX(30px)}}
.gz-bubbles i{position:absolute;bottom:-20px;left:var(--x);width:var(--s);height:var(--s);border-radius:50%;border:1.5px solid rgba(255,255,255,.5);background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.6),rgba(255,255,255,0) 60%);animation:bub var(--t) linear infinite;animation-delay:var(--dl)}
@keyframes bub{to{transform:translateY(-110vh) translateX(20px)}}
.gz-grid{position:relative;display:grid;grid-template-columns:1fr 1.1fr;gap:40px;align-items:center;width:100%}
.gz-head h2{font:700 clamp(28px,3.4vw,46px)/1.05 var(--sans);margin:8px 0 14px}
.gz-depth{display:flex;align-items:baseline;gap:10px}
.gz-depth b{font:700 clamp(70px,10vw,150px)/.9 var(--sans);color:var(--verde);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.gz-depth span{font:500 16px var(--sans);letter-spacing:.2em;text-transform:uppercase;opacity:.8}
.gz-card{min-height:150px;margin-top:18px}
.gz-c{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-left:5px solid var(--verde);border-radius:14px;padding:16px 20px;backdrop-filter:blur(6px);animation:cardIn .5s cubic-bezier(.2,.8,.2,1)}
@keyframes cardIn{from{opacity:0;transform:translateY(14px)}}
.gz-c .d{display:block;font:700 12px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--verde)}
.gz-c b{display:block;font:700 28px var(--sans);margin:4px 0}
.gz-c .w{display:block;font:500 16px var(--sans)}
.gz-c .nt{display:block;font:400 14px var(--sans);opacity:.85;margin-top:4px}
.gz-scroll{font:500 12px var(--sans);letter-spacing:.18em;text-transform:uppercase;opacity:.6;margin-top:16px}
.gz-svg{width:100%;max-height:calc(100vh - var(--header-h) - 40px)}
.gz-svg .surf{fill:none;stroke:var(--verde);stroke-width:2.5}
.gz-svg .tick line{stroke:rgba(255,255,255,.5)}.gz-svg .tick text,.gz-svg .lab{font:500 12px var(--sans);fill:rgba(255,255,255,.75)}
.gz-svg .lab.lime{fill:var(--verde);font-weight:700}.gz-svg .lab.dim{opacity:.5}
.gz-svg .cave{fill:none;stroke:rgba(255,255,255,.08);stroke-width:34;stroke-linecap:round;stroke-linejoin:round}
.gz-svg .cave-in{fill:none;stroke:url(#wg);stroke-width:30;stroke-linecap:round;stroke-linejoin:round}
.gz-svg .cavern{fill:#1d5a70;opacity:.85}
.gz-svg .unexp{fill:none;stroke:var(--verde);stroke-width:3;stroke-dasharray:4 5;animation:march 1.2s linear infinite}
.gz-svg .mk line{stroke:var(--verde);stroke-dasharray:2 3;opacity:.25;transition:opacity .4s}
.gz-svg .mk circle{fill:rgba(255,255,255,.25);stroke:#0b3442;stroke-width:2;transition:all .4s}
.gz-svg .mk text{font:700 12px var(--sans);fill:rgba(255,255,255,.35);transition:fill .4s}
.gz-svg .mk.on line{opacity:.8}.gz-svg .mk.on circle{fill:var(--verde);r:7}.gz-svg .mk.on text{fill:#fff}
.gz-svg .mk.inc circle{stroke-dasharray:2 2}
.gz-svg .dv{fill:#fff;stroke:var(--verde);stroke-width:3}
.gz-svg .beam{fill:rgba(255,255,220,.25)}
.gz-after{position:relative;padding:20px 0 80px}
.gz-h3{font:700 22px var(--sans);margin:40px 0 14px}
.gz .tl{list-style:none;margin:0;padding:0 0 0 30px;columns:2;column-gap:40px}
.gz .ev{break-inside:avoid}
.gz-v{margin-top:40px}
.video360 p{font:400 15px var(--sans);opacity:.85}
/* ---------- LIBRO 3D ---------- */
.book3d{--w:120px;--h:202px;--t:14px;position:relative;display:block;width:var(--w);height:var(--h);transform-style:preserve-3d;transform:rotateY(-28deg) rotateX(6deg);transition:transform .8s cubic-bezier(.2,.8,.2,1);perspective-origin:center}
.book3d.sm{--w:110px;--h:185px;--t:12px}
.book3d.xl{--w:min(330px,60vw);--h:calc(var(--w) * 1.68);--t:26px}
.book3d>span{position:absolute;top:0;left:0;width:var(--w);height:var(--h)}
.b-cover{background:center/cover;border-radius:2px 6px 6px 2px;transform:translateZ(calc(var(--t) / 2));box-shadow:inset 6px 0 10px rgba(0,0,0,.25);transform-origin:left center;transition:transform 1s cubic-bezier(.6,.05,.3,1);backface-visibility:hidden}
.b-back{background:#6d655a;transform:translateZ(calc(var(--t) / -2));border-radius:2px 6px 6px 2px;box-shadow:20px 30px 50px rgba(0,0,0,.45)}
.b-pages{width:var(--t)!important;left:auto!important;right:0;background:repeating-linear-gradient(90deg,#f4f1ec 0 2px,#ddd6ca 2px 3px);transform:translateX(calc(var(--t) / 2 - 3px)) rotateY(90deg)}
.b-spine{width:var(--t)!important;background:#4a443c;transform:translateX(calc(var(--t) / -2)) rotateY(-90deg)}
a:hover .book3d,.fl-stage:hover .book3d{transform:rotateY(-12deg) rotateX(4deg) translateY(-6px)}
.fl-stage{border:0;background:none;padding:40px;cursor:pointer;perspective:1600px;display:grid;place-items:center}
.fl-stage.opening .book3d{transform:rotateY(0) scale(1.08)}
.fl-stage.opening .b-cover{transform:translateZ(calc(var(--t) / 2)) rotateY(-165deg)}
.flip-wrap{background:radial-gradient(circle at 70% 40%,#6d655a,#2f2a24 70%);padding:calc(var(--header-h) + 30px) 0 50px;min-height:100vh;color:#fff}
.fl-intro{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;min-height:calc(100vh - var(--header-h) - 80px)}
.fl-txt .acts{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.fl-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;font:700 14px var(--sans)}
.book-wrap{display:flex;justify-content:center;filter:drop-shadow(0 30px 40px rgba(0,0,0,.5));animation:fadeIn .6s ease}
.flip-ctrl input{width:min(420px,50vw);accent-color:var(--verde)}
.ed-card.guide{grid-template-columns:auto 1fr;perspective:900px}
@media (max-width:980px){
  .logo-wrap{width:min(420px,88vw);margin:0 auto}
  .ed-l{align-items:center;text-align:left;padding:30px 5vw}
  .idx-prev{display:none}
  .nums{grid-template-columns:repeat(2,1fr)}
  .gz-grid{grid-template-columns:1fr;gap:6px}
  .gz-svg{max-height:52vh}
  .gz-depth b{font-size:64px}
  .gz-card{min-height:110px}
  .gz-head h2{font-size:24px}
  .gz .tl{columns:1}
  .fl-intro{grid-template-columns:1fr;text-align:center}
  .fl-txt .acts{justify-content:center}
}
@media (prefers-reduced-motion:reduce){.logo-anim>*{opacity:1!important}}
html.a11y-motion .logo-anim>*{opacity:1!important}
/* spot Regione FVG */
.geo-fvg{color:#fff}
.fvg-head{max-width:760px}
.fvg-head h2{font:700 clamp(28px,3.4vw,42px)/1.1 var(--sans);margin:8px 0 12px}
.fvg-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:34px}
.fvg-c{background:rgba(255,255,255,.1);border-radius:var(--r);padding:24px 22px;border-top:5px solid var(--verde);transition:transform .3s,background .3s}
.fvg-c:hover{transform:translateY(-6px);background:rgba(255,255,255,.16)}
.fvg-c b{display:block;font:700 30px/1 var(--sans);color:var(--verde)}
.fvg-c h3{font:700 17px var(--sans);margin:12px 0 6px}
.fvg-c p{font:400 15px/1.5 var(--sans);margin:0;opacity:.92}
.fvg-note{margin-top:28px;font-size:14px;opacity:.9}
.fvg-note a{color:var(--verde);font-weight:700}
@media (max-width:980px){.fvg-cards{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.fvg-cards{grid-template-columns:1fr}}

.gz-track{position:relative;height:420vh}
.hs .i{font:700 italic 24px Georgia,serif;color:#2b2722}
@media (max-width:980px){.gz-track{height:380vh}}

/* indice: immagini tonde */
.ed-it{grid-template-columns:44px 132px 1fr auto 26px}
.ed-it .num{font-size:46px}
.tondi{position:relative;height:84px;display:block}
.tondi img{position:absolute;top:50%;width:84px;height:84px;border-radius:50%;object-fit:cover;border:3px solid var(--taupe);box-shadow:0 6px 16px rgba(0,0,0,.25);
  left:calc(var(--k) * 26px);transform:translateY(-50%) scale(calc(1 - var(--k) * .18));z-index:calc(3 - var(--k));transition:transform .45s cubic-bezier(.2,1.3,.4,1),left .45s cubic-bezier(.2,1.3,.4,1),border-color .3s}
.ed-it:hover .tondi img,.ed-it:focus-visible .tondi img{border-color:var(--verde);left:calc(var(--k) * 40px);transform:translateY(-50%) scale(calc(1.06 - var(--k) * .2))}
@media (max-width:980px){.ed-it{grid-template-columns:34px 96px 1fr 22px}.ed-it em{display:none}.tondi{height:64px}.tondi img{width:64px;height:64px;left:calc(var(--k) * 18px)}}

/* frecce minimali del tour */
.arw{width:54px;height:54px;padding:0;border:0;background:none;cursor:pointer;filter:drop-shadow(0 2px 6px rgba(0,0,0,.45));transition:transform .25s}
.arw svg{width:100%;height:100%}
.arw circle{fill:rgba(255,255,255,.14);stroke:#fff;stroke-width:2;transition:fill .25s,stroke .25s}
.arw path{fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.arw:hover,.arw:focus-visible{transform:scale(1.15)}
.arw:hover circle,.arw:focus-visible circle{fill:var(--verde);stroke:var(--verde)}
.arw:hover path,.arw:focus-visible path{stroke:var(--ink)}
.arw-jump circle{stroke-dasharray:4 4}
.psv-virtual-tour-tooltip{font:500 13px var(--sans)!important}

/* =========================================================
   GEOSITO 5 – Cansiglio
   ========================================================= */
.cs h2,.cs-depth h2{font:700 clamp(26px,3vw,38px) var(--sans);margin:6px 0}
.cs-tools{display:flex;flex-wrap:wrap;gap:8px 20px;margin:18px 0 12px;font:500 13px var(--sans)}
.cs-tools label{display:flex;align-items:center;gap:7px;cursor:pointer}
.cs-tools input{accent-color:var(--taupe-dd);width:17px;height:17px}
.cs-tools i{display:inline-block;width:22px;height:10px;border-radius:5px}
.lg-trail{background:#c96f3b}.lg-area{border:2px dashed #8f9c0a;background:rgba(182,198,17,.15)}.lg-cave{width:10px!important;background:#4a443c}.lg-main{width:14px!important;height:14px!important;border-radius:50%!important;background:var(--verde);border:2px solid #fff;box-shadow:0 0 0 1px #4a443c}
.cs-map-wrap{position:relative}
.cs-info{position:absolute;right:14px;top:14px;z-index:500;width:min(300px,70%);background:#fff;border-radius:12px;box-shadow:var(--shadow);padding:14px 16px;font:400 14px/1.45 var(--sans)}
.cs-info b{display:block;font:700 16px var(--sans)}.cs-info span{font:500 12px var(--sans);color:var(--soft)}.cs-info p{margin:6px 0 10px}
.cs-info .btn{padding:9px 14px;font-size:11px}
.cvm{display:grid;place-items:center;border-radius:50%;background:var(--verde);border:3px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.4);font:700 10px var(--sans);color:var(--ink);transition:transform .2s}
.cvm:hover{transform:scale(1.15)}
.trail-start{display:inline-block;background:#c96f3b;color:#fff;font:700 11px var(--sans);padding:4px 9px;border-radius:12px;white-space:nowrap;box-shadow:0 2px 6px rgba(0,0,0,.3)}
.cs-prof{margin-top:26px}.cs-prof h3{font:700 16px var(--sans);margin:0 0 8px}
.prof{width:100%;height:auto}.prof text{font:500 12px var(--sans);fill:var(--soft)}.prof .q{font-weight:700}
.cs-src{font:400 12px var(--sans);color:var(--soft);margin-top:18px}
.cs-depth{background:linear-gradient(180deg,var(--taupe-dd),#1f1b17);color:#fff}
.dbars{display:flex;gap:10px;align-items:flex-start;height:420px;margin-top:30px;overflow-x:auto;padding-bottom:10px}
.dbar{flex:1;min-width:62px;display:flex;flex-direction:column;align-items:center;text-decoration:none;color:#fff;height:100%}
.dbar .dv{font:500 11px var(--sans);opacity:.8;margin-bottom:6px;white-space:nowrap}.dbar .dv b{font:700 15px var(--sans);color:var(--verde)}
.dbar .col{position:relative;flex:1;width:34px;border-top:3px solid var(--verde)}
.dbar .col i{position:absolute;left:0;right:0;top:0;height:0;background:linear-gradient(180deg,#8f9c0a,#2c5a71 70%,#0b2430);border-radius:0 0 17px 17px;transition:height 1.4s cubic-bezier(.2,.8,.2,1) var(--d,0ms)}
.dbar.in .col i{height:var(--h)}
.dbar .nm{font:500 11px/1.25 var(--sans);text-align:center;margin-top:8px;max-width:90px;min-height:42px}
.dbar:hover .col i{filter:brightness(1.25)}
.dbar:hover .nm{color:var(--verde)}
.gcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:24px}
.gcard{display:flex;flex-direction:column;background:#fff;border-radius:var(--r);overflow:hidden;text-decoration:none;color:var(--ink);box-shadow:0 4px 16px rgba(0,0,0,.08);transition:transform .25s,box-shadow .25s}
.gcard:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.gc-im{height:150px;background:linear-gradient(135deg,#4a443c,#2c5a71) center/cover;position:relative}
.gc-im em{position:absolute;left:12px;top:12px;font:700 11px var(--sans);font-style:normal;background:var(--verde);padding:4px 9px;border-radius:12px}
.gc-bd{padding:14px 16px 18px}.gc-bd b{display:block;font:700 17px var(--sans)}
.gc-f{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 8px}.gc-f span{font:700 11px var(--sans);background:var(--carta);padding:3px 8px;border-radius:10px}.gc-f .on{background:#c96f3b;color:#fff}
.gc-bd i{font:400 14px/1.45 var(--sans);font-style:normal;color:var(--soft)}
/* scheda grotta */
.gr-hero{min-height:64vh}
.gr-id{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.gr-id span{font:500 13px var(--sans);background:rgba(255,255,255,.14);padding:6px 12px;border-radius:20px}
.gr-facts{background:var(--taupe-dd);color:#fff;padding:26px 0}
.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.facts b{display:block;font:700 clamp(26px,3vw,40px)/1 var(--sans);color:var(--verde)}.facts span{font:500 12px var(--sans);opacity:.85;letter-spacing:.04em}
.gr-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:50px;align-items:start}
.gr-grid h2{font:700 22px var(--sans);margin:30px 0 10px}.gr-grid h2:first-child{margin-top:0}
.gr-list{padding-left:20px}.gr-list li{margin:6px 0}
.gr-box{margin:20px 0}.gr-note{font-size:15px;color:var(--soft)}
.gr-tl{list-style:none;padding:0;margin:0;border-left:3px solid var(--verde)}
.gr-tl li{position:relative;padding:4px 0 14px 22px}.gr-tl li::before{content:"";position:absolute;left:-9px;top:8px;width:15px;height:15px;border-radius:50%;background:#fff;border:3px solid var(--taupe-dd)}
.gr-tl span{font:700 14px var(--sans);color:var(--verde-d)}.gr-tl p{margin:2px 0 0}
.gr-side{display:flex;flex-direction:column;gap:16px;position:sticky;top:calc(var(--header-h) + 20px)}
.gr-side .btn{justify-content:center}.btn.ghost.dk{color:var(--ink);border-color:var(--taupe)}
.gr-sect{background:var(--taupe-dd);color:#fff;border-radius:var(--r);padding:16px 18px;text-align:center}
.gs-top,.gs-bot{font:700 13px var(--sans)}.gs-bot{opacity:.8;margin-top:6px}
.gs-shaft{position:relative;height:240px;width:60px;margin:8px auto 0;border-top:4px solid var(--verde);background:rgba(255,255,255,.06);border-radius:0 0 30px 30px;overflow:hidden}
.gs-shaft i{position:absolute;left:0;right:0;top:0;height:0;background:linear-gradient(180deg,#8f9c0a,#2c5a71,#0b2430);transition:height 1.6s cubic-bezier(.2,.8,.2,1)}
.gs-shaft.in i{height:calc(var(--p) * 100%)}
.gs-shaft span{position:absolute;left:50%;bottom:8px;transform:translateX(-50%);font:700 12px var(--sans);white-space:nowrap}
.gr-sect small{display:block;font:400 11px var(--sans);opacity:.6;margin-top:8px}
.gr-nav .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.gr-nav a{color:#fff;font:700 14px var(--sans);text-decoration:none}.gr-nav a:hover{color:var(--verde)}
@media (max-width:980px){.gr-grid{grid-template-columns:1fr}.gr-side{position:static}.facts{grid-template-columns:1fr 1fr}.cs-info{position:static;width:auto;margin-top:10px}.dbars{height:340px}}

.gc-im.noimg{background:repeating-linear-gradient(0deg,rgba(255,255,255,.04) 0 1px,transparent 1px 14px),linear-gradient(180deg,#6d655a,#2c5a71 calc(40% + var(--p) * 60%),#0b2430)}
.gc-d{position:absolute;right:16px;bottom:10px;font:700 48px/1 var(--sans);color:var(--verde)}.gc-d small{font-size:16px;margin-left:3px;color:#fff}

/* copertine con dissolvenza e lento zoom (Ken Burns) */
.hero{background:var(--taupe-dd)}
.hbg{position:absolute;inset:0;overflow:hidden;z-index:0}
.hero::before{z-index:1}.hero .in,.hero .num{z-index:2}
.hbg span{position:absolute;inset:-2%;background:center/cover no-repeat;opacity:0;transition:opacity 1.8s ease;will-change:transform,opacity}
.hbg span.on{opacity:1}
.hbg span.hs-a.on{animation:kbA 9s ease-out both}
.hbg span.hs-b.on{animation:kbB 9s ease-out both}
@keyframes kbA{from{transform:scale(1.02) translate(0,0)}to{transform:scale(1.14) translate(-2%,-1.5%)}}
@keyframes kbB{from{transform:scale(1.14) translate(2%,1%)}to{transform:scale(1.03) translate(0,0)}}
@media (prefers-reduced-motion:reduce){.hbg span.on{animation:none}}
html.a11y-motion .hbg span.on{animation:none}
.gz-svg .cave.branch{stroke-width:16;stroke:rgba(31,179,173,.45)}
.hcred{position:absolute;right:16px;bottom:12px;z-index:3;font:400 11px var(--sans);color:rgba(255,255,255,.85);text-shadow:0 1px 3px rgba(0,0,0,.7);max-width:60%;text-align:right}
.doc h2{font:700 20px var(--sans)}

/* promozione CaRGeo */
.cargeo{background:radial-gradient(circle at 85% 30%,rgba(182,198,17,.25),transparent 45%),linear-gradient(135deg,#2c5a71,#173847);color:#fff}
.cg-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:50px;align-items:center}
.cargeo h2{font:700 clamp(26px,3vw,40px)/1.12 var(--sans);margin:8px 0 14px}
.cargeo p{font-size:17px;opacity:.95}
.cargeo .acts{margin-top:22px}
.cg-vis{display:grid;gap:14px}
.cg-num{background:rgba(255,255,255,.1);border-left:5px solid var(--verde);border-radius:12px;padding:16px 20px;transition:transform .3s}
.cg-num:hover{transform:translateX(6px)}
.cg-num b{display:block;font:700 clamp(28px,3.4vw,44px)/1 var(--sans);color:var(--verde)}
.cg-num span{font:500 13px var(--sans);opacity:.9}
@media (max-width:980px){.cg-grid{grid-template-columns:1fr}}

.cg-geo{margin-top:56px;padding-top:44px;border-top:1px solid rgba(255,255,255,.18)}
.cg-geo-h h3{font:700 clamp(22px,2.4vw,30px) var(--sans);margin:8px 0}
.cg-res{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:24px 0}
.cg-res div{background:rgba(255,255,255,.08);border-radius:12px;padding:18px;border-top:4px solid var(--verde)}
.cg-res b{display:block;font:700 16px var(--sans);margin-bottom:6px}.cg-res span{font:400 14px/1.45 var(--sans);opacity:.9}
@media (max-width:980px){.cg-res{grid-template-columns:1fr 1fr}}@media (max-width:560px){.cg-res{grid-template-columns:1fr}}

/* home: apertura più compatta, foto più grandi */
.ed-hero{min-height:calc(100vh - 0px);grid-template-columns:minmax(380px,.85fr) 1.15fr;gap:2vw;padding:calc(var(--header-h) + 18px) 3vw 40px;align-items:center}
.ed-l{padding:0;gap:6px}
.logo-wrap{width:min(440px,100%,46vh);margin:0 0 4px -6px}
.ed-in h1{font-size:clamp(26px,2.7vw,40px);margin:6px 0 8px}
.ed-in p{margin-bottom:18px}
.ed-idx{padding:0}
.idx-prev{inset:-10px -10px -10px -10px}
.ed-idx h2{margin:0 0 8px 14px}
.ed-it{grid-template-columns:40px 190px 1fr auto 24px;padding:12px 14px;gap:14px}
.ed-it .num{font-size:44px}
.tondi{height:118px}
.tondi img{width:118px;height:118px;left:calc(var(--k) * 34px)}
.ed-it:hover .tondi img,.ed-it:focus-visible .tondi img{left:calc(var(--k) * 52px)}
.ed-it b{font-size:20px}
.ed-it i{font-size:15px}
.scroll-cue{bottom:12px}
@media (max-width:1180px){.ed-it{grid-template-columns:34px 150px 1fr 22px}.ed-it em{display:none}.tondi{height:96px}.tondi img{width:96px;height:96px;left:calc(var(--k) * 26px)}}
@media (max-width:980px){.ed-hero{grid-template-columns:1fr;padding:calc(var(--header-h) + 10px) 4vw 40px}.ed-it{grid-template-columns:30px 110px 1fr 20px}.tondi{height:80px}.tondi img{width:80px;height:80px;left:calc(var(--k) * 18px)}}
@media (min-width:1500px){.logo-wrap{width:min(560px,100%,52vh)}.ed-hero{grid-template-columns:minmax(420px,.9fr) 1.1fr}}
@media (max-width:560px){.ed-it{grid-template-columns:26px 76px 1fr 16px;gap:10px;padding:10px 6px}.tondi{height:72px}.tondi img{width:72px;height:72px}.tondi img+img{display:none}.ed-it b{font-size:16px}.ed-it .num{font-size:30px}}

.ndot.aer{border-style:dashed!important;width:12px;height:12px;opacity:.85}
.plabel.peak{background:rgba(255,255,255,.85);color:var(--ink);border-left-color:#3b738f;font-size:11px;padding:3px 8px}
.hs-cave{background:#c96f3b}.hs-cave svg{color:#fff}.hs-cave path{stroke:#fff}
.hs-goto{background:#fff}
.lg-foto{width:12px!important;height:12px!important;border-radius:50%!important;background:#c96f3b;border:2px solid #fff;box-shadow:0 0 0 1px #4a443c}
.gc-360{position:absolute;right:12px;top:12px;font:700 11px var(--sans);font-style:normal;background:#fff;color:var(--ink);padding:4px 8px;border-radius:12px}
.ril-b{display:block;border:0;padding:0;background:#fff;border-radius:var(--r);overflow:hidden;cursor:zoom-in;width:100%;box-shadow:var(--shadow)}
.ril-b img{width:100%}
.fig.ril figcaption{font:400 12px var(--sans)}

/* ---------- video immersivi 360° ---------- */
.v360{position:relative;display:flex;align-items:flex-end;gap:18px;min-height:300px;padding:26px;border-radius:var(--r);overflow:hidden;color:#fff;text-decoration:none;
  background-color:#1c2a30;background-size:cover;background-position:center;box-shadow:var(--shadow);margin:0 0 30px}
.v360 .ring{flex:none;width:76px;height:76px;border-radius:50%;background:var(--verde);color:#2b2722;display:grid;place-items:center;transition:transform .3s}
.v360 .ring svg{width:30px;height:30px}
.v360:hover .ring,.v360:focus-visible .ring{transform:scale(1.08)}
.v360 .t small{display:block;font:700 11px var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--verde)}
.v360 .t b{display:block;font:700 26px/1.1 var(--sans);margin:4px 0}
.v360 .t i{font:400 14px var(--sans);font-style:normal;opacity:.85}
.gz-v{margin-top:40px}
.v360-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:15;display:flex;flex-direction:column;align-items:center;gap:12px;background:none;border:0;color:#fff;font:700 15px var(--sans);cursor:pointer;transition:opacity .4s}
.v360-play svg{width:46px;height:46px;padding:26px;box-sizing:content-box;border-radius:50%;background:var(--verde);color:#2b2722;box-shadow:0 8px 30px rgba(0,0,0,.4)}
.v360-play.off{opacity:0;pointer-events:none}
.v360-cred{position:absolute;right:14px;bottom:54px;z-index:15;font:400 11px var(--sans);color:rgba(255,255,255,.75);text-shadow:0 1px 3px #000}
.v360view .psv-navbar{background:linear-gradient(0deg,rgba(40,36,30,.85),rgba(40,36,30,.4))}
@media (max-width:640px){.v360{min-height:220px;padding:18px}.v360 .t b{font-size:20px}.v360 .ring{width:58px;height:58px}}

/* ---------- modalità verifica / calibrazione (#/vr/<sito>?edit) ---------- */
.vrview.editing #viewer{left:44vw}
.vrview.editing .mini{left:0;top:0;bottom:0;width:44vw;height:auto;border-radius:0;border:0;border-right:3px solid #fff;z-index:25}
.vrview.editing .mini .grow{display:none}
.vrview.editing .crosshair{left:72vw}
.vrview.editing .strip{left:44vw}
.vrview.editing .vr-top{left:44vw}
.vrview.editing #vrAudio,.vrview.editing .vr-hint{display:none}
.vrview.editing .edit{max-height:calc(100vh - 190px);overflow:auto}
.etip{background:rgba(255,255,255,.92);border:0;box-shadow:0 1px 4px rgba(0,0,0,.3);font:600 11px var(--sans);padding:1px 5px;color:#285a3c}
.etip.aer{color:#b4520f}
.etip::before{display:none}
.econn{margin-top:10px;border-top:1px solid #ddd;padding-top:8px}
.econn button{background:#f2efe9;color:#2b2722;text-align:left;margin-top:4px}
.econn small{opacity:.6;float:right}

/* ---------- itinerario 360° nella pagina del geosito ---------- */
.intro-box .box{max-width:860px}
.itin{position:relative;background:#1d1a16}
.it-tabs{display:flex;gap:0;overflow-x:auto;background:var(--taupe-dd)}
.it-tabs button{flex:1;min-width:200px;border:0;background:transparent;color:rgba(255,255,255,.7);padding:16px 22px;text-align:left;font:700 17px var(--sans);cursor:pointer;border-bottom:4px solid transparent;transition:.25s}
.it-tabs button small{display:block;font:500 12px var(--sans);opacity:.75;margin-top:2px}
.it-tabs button.on,.it-tabs button:hover{color:#fff;border-bottom-color:var(--c);background:rgba(255,255,255,.06)}
.it-stage{position:relative;height:min(86vh,860px);min-height:520px}
.it-map{position:absolute;inset:0;background:#2a2620}
.it-map .leaflet-tile-pane{filter:saturate(1.05) contrast(1.05)}
.it-flow{animation:itflow 1.4s linear infinite}
@keyframes itflow{to{stroke-dashoffset:-32}}
.it-pin{outline:2px solid rgba(0,0,0,.35);outline-offset:0;width:36px;height:36px;border-radius:50% 50% 50% 4px;transform:rotate(-45deg);background:var(--c);border:3px solid #fff;box-shadow:0 3px 10px rgba(0,0,0,.45);display:grid;place-items:center;transition:transform .2s;cursor:pointer}
.it-pin span{transform:rotate(45deg);font:800 13px var(--sans);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.4)}
.it-pin:hover,.it-pin.hot{transform:rotate(-45deg) scale(1.35);z-index:10}
.it-aer{width:30px;height:30px;border-radius:50%;background:rgba(29,26,22,.82);border:2px solid #fff;color:var(--verde);display:grid;place-items:center;box-shadow:0 2px 8px rgba(0,0,0,.4);transition:transform .2s;cursor:pointer}
.it-aer svg{width:17px;height:17px}
.it-aer:hover{transform:scale(1.25)}
.it-side{position:absolute;right:20px;top:20px;bottom:20px;width:370px;z-index:500;background:rgba(32,29,25,.86);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff;border-radius:var(--r);padding:24px 22px 20px;display:flex;flex-direction:column;box-shadow:0 10px 40px rgba(0,0,0,.4)}
.it-side .kicker{color:var(--verde)}
.it-side h2{margin:4px 0 14px;font:800 30px/1.05 var(--sans);color:#fff}
.it-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}
.it-stats b{display:block;font:800 24px var(--sans);color:var(--verde);line-height:1.05;white-space:nowrap}
.it-stats span{display:block;font:500 11px/1.25 var(--sans);opacity:.75;margin-top:3px}
.it-tog{font:500 13px var(--sans);display:flex;gap:8px;align-items:center;margin-bottom:10px;cursor:pointer}
.it-tog input{accent-color:var(--verde);width:16px;height:16px}
.it-list{list-style:none;margin:0 -8px 14px;padding:0;overflow:auto;flex:1;scrollbar-width:thin}
.it-list button{display:flex;gap:10px;align-items:center;width:100%;background:none;border:0;color:#fff;padding:6px 8px;border-radius:10px;text-align:left;cursor:pointer;font:600 14px var(--sans)}
.it-list button:hover,.it-list button:focus-visible{background:rgba(255,255,255,.1)}
.it-list img{width:76px;height:38px;object-fit:cover;border-radius:6px;flex:none}
.it-list b{display:inline-grid;place-items:center;min-width:22px;height:22px;border-radius:50%;background:var(--verde);color:#2b2722;font:800 11px var(--sans);margin-right:8px}
.it-list small{display:block;opacity:.6;font:500 11px var(--sans);margin:2px 0 0 30px}
.it-side .btn{align-self:stretch;justify-content:center}
.it-hover{position:absolute;left:20px;bottom:20px;z-index:500;width:300px;border-radius:var(--r);overflow:hidden;background:#1d1a16;box-shadow:0 10px 30px rgba(0,0,0,.5);pointer-events:none}
.it-hover img{display:block;width:100%;aspect-ratio:2/1;object-fit:cover}
.it-hover b{display:block;color:#fff;font:700 13px var(--sans);padding:8px 12px}
.itin .leaflet-control-layers{border-radius:10px}
@media (max-width:900px){
  .it-stage{height:auto;min-height:0}
  .it-map{position:relative;height:62vh}
  .it-side{position:relative;inset:auto;width:auto;border-radius:0;background:#2a2620;max-height:none}
  .it-list{max-height:320px}
  .it-hover{display:none}
}
.it-pin span{pointer-events:none}

/* basi cartografiche */
.sat-tiles{filter:brightness(.78) saturate(1.1) contrast(1.05)}
.it-hint{position:absolute;left:50%;top:18px;transform:translateX(-50%);z-index:600;background:rgba(32,29,25,.85);color:#fff;font:700 13px var(--sans);padding:9px 16px 9px 12px;border-radius:30px;display:flex;gap:8px;align-items:center;box-shadow:0 6px 20px rgba(0,0,0,.35);pointer-events:none;animation:hintin 1s .6s both}
.it-hint svg{width:20px;height:20px;color:var(--verde)}
@keyframes hintin{from{opacity:0;transform:translate(-50%,-10px)}}
@media (max-width:900px){.it-hint{top:auto;bottom:12px;font-size:12px}}

/* ---------- sentiero con traccia GPS ---------- */
.trail{background:#1d1a16;color:#fff;padding-top:56px}
.tr-head h2{color:#fff;margin:6px 0 18px;font:800 clamp(28px,4vw,44px)/1.05 var(--sans)}
.tr-head .kicker{color:var(--verde)}
.tr-stats{display:flex;flex-wrap:wrap;gap:12px 34px;margin-bottom:26px}
.tr-stats b{display:block;font:800 30px/1 var(--sans);color:#f0c419}
.tr-stats span{font:500 12px var(--sans);opacity:.75}
.tr-stats.sm{gap:8px 18px;margin:10px 0 0}.tr-stats.sm b{font-size:20px;color:var(--verde)}
.tr-stage{position:relative;height:min(78vh,760px);min-height:480px}
.tr-map{position:absolute;inset:0;background:#2a2620}
.tr-side{position:absolute;right:20px;top:20px;width:360px;z-index:500;background:rgba(32,29,25,.88);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:var(--r);padding:22px;box-shadow:0 10px 40px rgba(0,0,0,.4)}
.tr-side h3{margin:0 0 6px;font:800 21px var(--sans);color:var(--verde)}
.tr-side p{font:400 13.5px/1.45 var(--sans);opacity:.85;margin:0 0 10px}
.tr-ab{font:600 13px var(--sans);display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.tr-ab .tr-h{width:22px;height:22px;font-size:11px;border-width:2px}
.tr-ab .tr-h.b{margin-left:8px}
.tr-btns{display:grid;gap:8px;margin-top:14px}
.tr-btns .btn{justify-content:center;width:100%}
.tr-btns .btn.ghost.dk{color:#fff;border-color:rgba(255,255,255,.4)}
.tr-km{width:26px;height:26px;border-radius:50%;background:#fff;color:#2b2722;font:800 11px/26px var(--sans);text-align:center;box-shadow:0 2px 6px rgba(0,0,0,.4)}
.tr-poi{width:40px;height:40px;border-radius:50% 50% 50% 4px;transform:rotate(-45deg);background:#c96f3b;border:3px solid #fff;display:grid;place-items:center;box-shadow:0 4px 12px rgba(0,0,0,.45)}
.tr-poi svg{width:20px;height:20px;color:#fff;transform:rotate(45deg)}
.tr-360{width:34px;height:34px;border-radius:50%;background:var(--verde);color:#2b2722;border:3px solid #fff;font:800 9.5px/28px var(--sans);text-align:center;box-shadow:0 3px 10px rgba(0,0,0,.45);cursor:pointer;transition:transform .2s}
.tr-360:hover{transform:scale(1.25)}
.tr-h{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font:800 14px var(--sans);color:#fff;border:3px solid #fff;box-shadow:0 3px 10px rgba(0,0,0,.5);cursor:grab}
.tr-h.a{background:#2e8b57}.tr-h.b{background:#b03a2e}
.tr-read{position:absolute;left:20px;bottom:20px;z-index:500;background:rgba(32,29,25,.88);padding:10px 14px;border-radius:12px;font:600 13px var(--sans)}
.tr-read b{display:block;font:800 18px var(--sans);color:#f0c419}
.tr-prof{padding:26px 16px 40px}
.tr-pwrap{position:relative;background:#f4f1ec;border-radius:var(--r);padding:16px 16px 34px;cursor:crosshair}
.tr-svg{display:block;width:100%;height:200px}
.tr-svg text{font:600 12px var(--sans);fill:#6d655a}
.tr-svg text.tp{font-weight:800;fill:#c96f3b}
.tr-svg .tg{stroke:#d8d2c8;stroke-width:1;vector-effect:non-scaling-stroke}
.tr-svg .tc{stroke:#2b2722;stroke-width:2;vector-effect:non-scaling-stroke}
.tr-r{position:absolute;left:16px;right:16px;bottom:10px;width:calc(100% - 32px);margin:0;pointer-events:none;-webkit-appearance:none;appearance:none;background:transparent;height:24px}
.tr-r::-webkit-slider-thumb{pointer-events:auto;-webkit-appearance:none;width:26px;height:26px;border-radius:50%;border:3px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.4);cursor:grab}
.tr-r::-moz-range-thumb{pointer-events:auto;width:22px;height:22px;border-radius:50%;border:3px solid #fff;cursor:grab}
.tr-r.a::-webkit-slider-thumb{background:#2e8b57}.tr-r.b::-webkit-slider-thumb{background:#b03a2e}
.tr-r.a::-moz-range-thumb{background:#2e8b57}.tr-r.b::-moz-range-thumb{background:#b03a2e}
.trail .cs-src{color:rgba(255,255,255,.6)}
@media (max-width:900px){.tr-stage{height:auto;min-height:0}.tr-map{position:relative;height:60vh}.tr-side{position:relative;inset:auto;width:auto;border-radius:0;right:auto;top:auto}.tr-read{display:none}}
.tr-r:focus,.tr-r:focus-visible{outline:none;box-shadow:none}
.tr-r::-webkit-slider-runnable-track{background:transparent;border:0}
.tr-r:focus-visible::-webkit-slider-thumb{outline:3px solid #f0c419}

/* ---------- punti di interesse nel 360°: nuova grafica ---------- */
.hs{--c:var(--verde);position:relative;width:46px!important;height:46px!important;border-radius:50%;border:2px solid var(--c)!important;background:rgba(28,25,21,.62)!important;
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff;display:grid;place-items:center;box-shadow:0 4px 14px rgba(0,0,0,.45)!important;animation:none!important;cursor:pointer;transition:transform .25s,background .25s}
.hs::before{content:"";position:absolute;inset:-2px;border-radius:50%;border:2px solid var(--c);animation:hsring 2.4s ease-out infinite;pointer-events:none}
.hs:hover,.hs:focus-visible{transform:scale(1.15);background:var(--c)!important;color:#1d1a16}
.hs svg{width:22px!important;height:22px!important;color:inherit}
.hs svg path,.hs svg circle,.hs svg rect{stroke:currentColor}
.hs .t360{font:800 11px var(--sans);letter-spacing:-.02em}
.hs-img{--c:#b6c611}.hs-video{--c:#f0c419}.hs-model{--c:#7cc7e8}.hs-video360{--c:#ff8a5c}.hs-cave{--c:#f08a3c}.hs-goto{--c:#ffffff}.hs-url{--c:#cfc7b8}.hs-goto.hs-ground{--c:#2ea6d9}
@keyframes hsring{0%{transform:scale(1);opacity:.9}100%{transform:scale(1.7);opacity:0}}
html.a11y-motion .hs::before{animation:none}
.hs-tip small{display:block;font:700 9.5px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--verde);margin-bottom:2px}
.psv-tooltip:has(.hs-tip){background:rgba(28,25,21,.9);border-radius:10px;font:700 13.5px var(--sans);padding:8px 12px}

/* scheda di approfondimento */
.icard{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,1fr);background:#1d1a16;color:#fff}
.icard>img,.icard>video,.icard>.m3d{width:100%;height:100%;max-height:78vh;object-fit:cover;background:#000}
.icard>img.pan{object-fit:contain;background:#2a2620;cursor:zoom-in}
.icard>img.pan.zoom{max-height:none;cursor:zoom-out}
.ic-tx{padding:26px 28px;overflow:auto;max-height:78vh}
.ic-tx p{font:400 15.5px/1.6 var(--sans);margin:0 0 12px;color:rgba(255,255,255,.92)}
.ic-tx p:first-child::first-line{font-weight:700}
.ic-tx small{display:block;margin-top:14px;font:500 11.5px var(--sans);opacity:.6}
.icard:not(:has(.ic-tx)){display:block}
@media (max-width:820px){.icard{grid-template-columns:1fr}.icard>img,.icard>video{max-height:50vh}.ic-tx{max-height:none}}
/* elenco tappe come griglia di miniature */
.it-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-content:start;margin:0 0 14px;padding:2px}
.it-list li{min-width:0}
.it-list button{position:relative;display:block;padding:0;border-radius:10px;overflow:hidden;aspect-ratio:2/1}
.it-list img{width:100%;height:100%;border-radius:0}
.it-list button span{position:absolute;inset:auto 0 0 0;padding:16px 8px 6px;background:linear-gradient(0deg,rgba(0,0,0,.75),transparent);font:700 11.5px/1.2 var(--sans);text-align:left}
.it-list b{position:absolute;left:6px;top:6px;margin:0;box-shadow:0 1px 4px rgba(0,0,0,.4)}
.it-list button:hover img,.it-list button:focus-visible img{transform:scale(1.06)}
.it-list img{transition:transform .3s}
.it-list button:hover,.it-list button:focus-visible{outline:2px solid var(--verde);background:none}
.strip button span{display:none}
.hs{padding:0!important;box-sizing:border-box;aspect-ratio:1/1;min-width:0;flex:none}

/* ---------- mappa dei geositi: pannello chiaro ---------- */
.home-panel{background:#fff!important;color:#2b2722!important;box-shadow:0 14px 50px rgba(0,0,0,.25)!important;border-radius:18px;overflow:hidden}
.home-panel .hd{padding:24px 26px 16px;background:linear-gradient(180deg,#f6f3ee,#fff)}
.home-panel .hd .kicker{color:var(--verde-d)}
.home-panel .hd h1{color:#2b2722;font:800 28px/1.05 var(--sans);text-transform:none;letter-spacing:0}
.home-panel .hd p{color:#6d655a;font:400 15px/1.4 var(--sans)!important;margin-top:8px}
.home-panel .list{padding:4px 14px 18px}
.hcap{border-top:1px solid #ece7df;padding:14px 8px}
.hcap .row{align-items:center;color:#2b2722}
.hcap .num{display:grid;place-items:center;flex:none;width:38px;height:38px;min-width:0;border-radius:50%;background:var(--verde);color:#2b2722;font:800 18px/1 var(--sans)}
.hcap .row:hover .num{background:#2b2722;color:var(--verde)}
.hcap .t{font:800 15.5px/1.25 var(--sans);color:#2b2722}
.hcap .t small{color:#8a8175;font:500 13px/1.3 var(--sans)!important;margin-top:3px}
.hsites{margin:10px 0 0 50px;gap:4px}
.hsite{color:#2b2722;font:600 14px var(--sans);padding:8px 10px;border-radius:12px;background:#f6f3ee}
.hsite:hover,.hsite.on{background:#2b2722;color:#fff}
.hsite .dot{width:16px;height:16px;background:var(--c)!important;border:3px solid #fff;box-shadow:0 0 0 2px var(--c)!important}
.hsite .dot.no{opacity:.7}
.hsite .nm{flex:1}
.hsite em{display:flex;align-items:center;gap:4px;margin-left:auto;font:800 12px var(--sans);letter-spacing:0;color:#2b2722;background:var(--verde);padding:3px 8px 3px 6px;border-radius:20px}
.hsite em svg{width:15px;height:15px}
.hsite em.no{background:#e4ded4;color:#8a8175;font-weight:600}
.home-panel .panel-toggle{background:#2b2722}
.gpin{transform:scale(1.15);transform-origin:bottom center}

/* segnaposto: a terra / drone */
.mk-drone{position:relative;width:44px;height:44px;border-radius:12px;background:#1d1a16;border:2.5px solid #fff;color:#fff;display:grid;place-items:center;box-shadow:0 4px 12px rgba(0,0,0,.5);transform:rotate(45deg);cursor:pointer;transition:transform .2s}
.mk-drone svg{width:24px;height:24px;transform:rotate(-45deg)}
.mk-drone i{position:absolute;right:-12px;top:-10px;transform:rotate(-45deg);font:800 9px/1 var(--sans);font-style:normal;background:var(--verde);color:#1d1a16;padding:3px 4px;border-radius:6px;border:1.5px solid #fff}
.mk-drone:hover{transform:rotate(45deg) scale(1.15)}
.mk-drone.sm{width:30px;height:30px;border-radius:9px;border-width:2px}
.mk-drone.sm svg{width:17px;height:17px}
.mk-drone.sm i{display:none}
.mk-ground{width:30px;height:30px;border-radius:50% 50% 50% 4px;transform:rotate(-45deg);background:var(--c);border:3px solid #fff;box-shadow:0 3px 8px rgba(0,0,0,.4)}
.map-legend{display:flex;flex-direction:column;gap:6px;background:rgba(255,255,255,.95);border-radius:12px;padding:10px 12px;font:600 12.5px var(--sans);color:#2b2722;box-shadow:0 4px 14px rgba(0,0,0,.25)}
.map-legend span{display:flex;align-items:center;gap:8px}
.map-legend .lg-g{width:16px;height:16px;border-radius:50% 50% 50% 3px;transform:rotate(-45deg);background:var(--c);border:2px solid #fff;box-shadow:0 0 0 1px rgba(0,0,0,.25)}
.map-legend .lg-d{width:18px;height:18px;border-radius:5px;background:#1d1a16;color:#fff;display:grid;place-items:center;transform:rotate(45deg)}
.map-legend .lg-d svg{width:12px;height:12px;transform:rotate(-45deg)}
.vrview .mini .map-legend{display:none}
.vrview.editing .mini .map-legend{display:flex}
@media (max-width:640px){.map-legend{font-size:11px;padding:7px 9px}}

/* scheda modello 3D: modello grande al centro, descrizione sotto */
.modal .in{width:min(1200px,96vw)}
.modal.wide .in{width:min(1100px,96vw)}
.mcard{background:#1d1a16;color:#fff}
.m3d-stage{position:relative;background:radial-gradient(ellipse at 50% 45%,#7a7166 0%,#3a352e 55%,#1d1a16 100%)}
.mcard .m3d{width:100%;height:min(62vh,600px);background:transparent;display:grid;place-items:center}
.mcard .m3d span{font:600 14px var(--sans);opacity:.8}
.mcard .m3d canvas{display:block;cursor:grab}
.mcard .m3d-h{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);display:flex;align-items:center;gap:8px;background:rgba(0,0,0,.45);padding:7px 14px;border-radius:20px;font:600 12.5px var(--sans);white-space:nowrap;pointer-events:none}
.mcard .m3d-h svg{width:16px;height:16px;color:var(--verde)}
.m3d-tx{max-width:760px;margin:0 auto;padding:26px 28px 30px}
.m3d-tx p{font:400 16px/1.6 var(--sans);margin:0 0 12px;color:rgba(255,255,255,.92)}
.m3d-tx p:first-child::first-line{font-weight:700}
.m3d-tx small{display:block;margin-top:10px;font:500 11.5px var(--sans);opacity:.6}
@media (max-width:640px){.mcard .m3d{height:48vh}.mcard .m3d-h{font-size:11px}}

/* ---------- home: mappa elegante dei cinque geositi ---------- */
.hmap-sec{background:#f4f1ec;padding:70px 0 0}
.hmap-head{margin-bottom:26px}
.hmap-head p{max-width:720px;font:400 17px/1.5 var(--sans);color:#6d655a;margin:8px 0 0}
.hmap-stage{position:relative;height:min(78vh,760px);min-height:520px}
#hmap{position:absolute;inset:0;background:#e9e4dc}
.hm-tiles{filter:sepia(.25) saturate(.8) brightness(1.03)}
.hm-shade{mix-blend-mode:multiply}
.hm-pin{position:relative;width:76px;height:96px;cursor:pointer;transition:transform .3s cubic-bezier(.2,.8,.2,1);transform-origin:50% 100%}
.hm-pin .ph{position:absolute;left:6px;top:0;width:64px;height:64px;border-radius:50%;background-size:cover;background-position:center;border:4px solid #fff;box-shadow:0 8px 22px rgba(43,39,34,.4)}
.hm-pin::after{content:"";position:absolute;left:50%;top:64px;width:3px;height:26px;margin-left:-1.5px;background:#fff;box-shadow:0 2px 4px rgba(0,0,0,.3)}
.hm-pin::before{content:"";position:absolute;left:50%;bottom:0;width:12px;height:6px;margin-left:-6px;border-radius:50%;background:rgba(43,39,34,.35)}
.hm-pin .nb{position:absolute;right:0;top:-4px;width:28px;height:28px;border-radius:50%;background:var(--verde);color:#2b2722;font:800 14px/28px var(--sans);text-align:center;border:3px solid #fff;z-index:2}
.hm-pin .lb{position:absolute;left:50%;top:70px;transform:translateX(-50%);white-space:nowrap;background:#2b2722;color:#fff;font:700 12px var(--sans);padding:5px 10px;border-radius:14px;opacity:0;pointer-events:none;transition:opacity .25s;z-index:3}
.hm-pin:hover,.hm-pin.hot,.hm-pin.on{transform:scale(1.18)}
.hm-pin:hover .lb,.hm-pin.hot .lb,.hm-pin.on .lb{opacity:1}
.hm-pin.on .ph{border-color:var(--verde)}
.hmap-list{position:absolute;left:24px;top:24px;z-index:500;width:330px;display:flex;flex-direction:column;gap:8px}
.hm-it{display:flex;gap:12px;align-items:center;text-align:left;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:0;border-radius:14px;padding:10px 14px;box-shadow:0 4px 16px rgba(43,39,34,.15);cursor:pointer;transition:transform .2s,background .2s}
.hm-it .n{flex:none;width:36px;height:36px;border-radius:50%;background:var(--verde);color:#2b2722;font:800 17px/36px var(--sans);text-align:center}
.hm-it b{display:block;font:800 14px/1.2 var(--sans);color:#2b2722}
.hm-it i{display:block;font:500 12px/1.3 var(--sans);font-style:normal;color:#8a8175;margin-top:2px}
.hm-it:hover,.hm-it.hot{transform:translateX(6px)}
.hm-it.on{background:#2b2722}.hm-it.on b{color:#fff}.hm-it.on i{color:rgba(255,255,255,.7)}
.hmap-card{position:absolute;right:24px;top:24px;z-index:520;width:340px;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 14px 40px rgba(43,39,34,.3);animation:hmc .35s ease both}
@keyframes hmc{from{opacity:0;transform:translateY(10px)}}
.hmap-card .im{position:relative;height:170px;background-size:cover;background-position:center}
.hmap-card .im .nb{position:absolute;left:16px;bottom:-22px;width:46px;height:46px;border-radius:50%;background:var(--verde);border:4px solid #fff;font:800 20px/38px var(--sans);text-align:center;color:#2b2722}
.hmap-card .x{position:absolute;right:10px;top:10px;z-index:2;width:34px;height:34px;border-radius:50%;border:0;background:rgba(0,0,0,.5);color:#fff;font-size:20px;cursor:pointer}
.hmap-card .bd{padding:30px 20px 20px}
.hmap-card h3{margin:4px 0 6px;font:800 20px/1.15 var(--sans);color:#2b2722}
.hmap-card p{margin:0 0 12px;color:#6d655a;font:500 14px/1.4 var(--sans)}
.hmap-card .ch{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.hmap-card .ch a{font:600 12.5px var(--sans);color:#2b2722;background:#f1ede6;padding:5px 10px;border-radius:14px;text-decoration:none}
.hmap-card .ch a strong{color:var(--verde-d)}
.hmap-card .btn{width:100%;justify-content:center}
@media (max-width:900px){
  .hmap-stage{height:auto;min-height:0}
  #hmap{position:relative;height:62vh}
  .hmap-list{position:relative;left:auto;top:auto;width:auto;padding:14px 16px;background:#f4f1ec}
  .hmap-card{position:fixed;left:12px;right:12px;bottom:12px;top:auto;width:auto;z-index:1200}
  .hmap-card .im{height:120px}
}
/* guida in evidenza */
.ed-guide{background:#fff}
.eg-grid{display:grid;grid-template-columns:minmax(220px,380px) 1fr;gap:56px;align-items:center}
.eg-book{display:grid;place-items:center;padding:30px 0;text-decoration:none}
.eg-book .book3d{transform:scale(1.35)}
.ed-guide p{font:400 17px/1.55 var(--sans);color:#4a443c;max-width:620px}
@media (max-width:800px){.eg-grid{grid-template-columns:1fr;gap:20px}.eg-book .book3d{transform:none}}
/* striscia VR: gallerie separate a terra / dal drone */
.strip .sg{display:flex;gap:8px;align-items:flex-end;flex:none;padding:6px 10px 2px;border-radius:12px;background:rgba(255,255,255,.06)}
.strip .sg.air{background:rgba(46,166,217,.16);box-shadow:inset 0 0 0 1px rgba(46,166,217,.45)}
.strip .sg-h{flex:none;align-self:stretch;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:54px;font:800 9.5px/1.1 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--verde);text-align:center}
.strip .sg.air .sg-h{color:#7fd0f2}
.strip .sg-h svg{width:22px;height:22px}
.strip button{position:relative}
.strip button.aer img{border-color:rgba(127,208,242,.6);border-radius:10px}
.strip button.aer.on img{border-color:#7fd0f2}
.strip button.aer i{position:absolute;right:5px;top:5px;width:20px;height:20px;border-radius:6px;background:#1d1a16;color:#fff;display:grid;place-items:center;border:1.5px solid #fff}
.strip button.aer i svg{width:13px;height:13px}
/* Cansiglio: mappa grande a tutta larghezza, elenco grotte */
.cs-map-wrap{width:100vw;margin-left:calc(50% - 50vw)}
.cs-map-wrap #csmap{height:min(80vh,780px)!important;border-radius:0}
.cs-info{right:24px;top:24px;width:340px;max-height:calc(100% - 48px);overflow:auto;padding:18px 18px 14px;border-radius:16px}
.cs-gl{margin-top:10px;border-top:1px solid #ece7df;padding-top:10px}
.cs-gl h4{margin:0 0 6px;font:800 11px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--verde-d)}
.cs-gl a{display:flex;gap:10px;align-items:center;padding:7px 8px;border-radius:10px;text-decoration:none;color:#2b2722;font:600 13.5px var(--sans)}
.cs-gl a:hover{background:#f1ede6}
.cs-gl .d{flex:none;min-width:58px;font:800 12px var(--sans);color:#fff;background:#c96f3b;border-radius:12px;padding:3px 7px;text-align:center}
.cs-gl .nm{flex:1}
.cs-gl em{font:800 10px var(--sans);font-style:normal;background:var(--verde);color:#2b2722;padding:2px 6px;border-radius:8px}
.cs-hint{font:500 12px/1.4 var(--sans)!important;color:#8a8175;margin:10px 0 0!important}
.cs-back{margin-top:10px;border:0;background:none;font:700 13px var(--sans);color:#6d655a;cursor:pointer;padding:0}
.cvm{transition:transform .2s}.cvm.hot{transform:scale(1.4);box-shadow:0 0 0 6px rgba(240,138,60,.45)}
@media (max-width:980px){.cs-map-wrap #csmap{height:62vh!important}.cs-info{max-height:none;border-radius:0}}
.hm-tiles{filter:saturate(.85) brightness(.92) contrast(1.05)}
#hmap{background:#2a2620}
/* sentieri sulla mappa generale */
.trail-lab{position:absolute;transform:translate(-50%,-140%);display:inline-flex;align-items:center;gap:6px;white-space:nowrap;background:#fff;color:#2b2722;font:800 12.5px var(--sans);padding:6px 11px 6px 7px;border-radius:20px;border:2.5px solid var(--c);box-shadow:0 4px 12px rgba(0,0,0,.35);cursor:pointer}
.trail-lab svg{width:18px;height:18px;color:#fff;background:var(--c);border-radius:50%;padding:2px}
.trail-lab:hover{transform:translate(-50%,-140%) scale(1.06)}
.card .dl{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0;padding:12px;border-radius:12px;background:#f4f1ec}
.card .dl span{flex:1 1 100%;font:700 12px var(--sans);color:#6d655a}
.card .dl .btn{padding:9px 16px;font-size:12px}
.card .acts{display:flex;flex-wrap:wrap;gap:8px}
.card .acts .btn.ghost.dk{padding:9px 14px;font-size:11.5px}
.hcap.htr .num{font:800 18px/38px var(--sans);background:#2b2722;color:var(--verde)}
/* mappa generale: geoguida a scomparsa a destra */
.gg-tab{position:absolute;right:0;top:50%;transform:translateY(-50%);z-index:640;display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 10px;border:0;border-radius:14px 0 0 14px;background:#2b2722;color:#fff;cursor:pointer;box-shadow:-4px 6px 18px rgba(0,0,0,.3);transition:right .35s cubic-bezier(.2,.8,.2,1),background .2s}
.gg-tab svg{width:22px;height:22px;color:var(--verde)}
.gg-tab span{writing-mode:vertical-rl;transform:rotate(180deg);font:800 12px var(--sans);letter-spacing:.16em;text-transform:uppercase}
.gg-tab:hover{background:#4a443c}
.gg-tab.on{right:min(440px,100vw)}
.gg{position:absolute;right:0;top:var(--header-h);bottom:0;width:min(440px,100vw);z-index:650;background:#fff;color:#2b2722;box-shadow:-10px 0 40px rgba(0,0,0,.25);display:flex;flex-direction:column;animation:ggin .35s cubic-bezier(.2,.8,.2,1)}
.gg[hidden]{display:none}
@keyframes ggin{from{transform:translateX(100%)}}
.gg-hd{position:relative;padding:22px 24px 14px;border-bottom:1px solid #ece7df;background:linear-gradient(180deg,#f6f3ee,#fff)}
.gg-hd h2{margin:4px 0 0;font:800 26px var(--sans)}
.gg-hd .x{position:absolute;right:16px;top:18px;width:36px;height:36px;border-radius:50%;border:0;background:#f1ede6;font-size:22px;cursor:pointer}
.gg-body{overflow:auto;padding:8px 20px 30px;flex:1}
.gg-cap h3{display:flex;gap:10px;align-items:center;margin:22px 0 10px;font:800 16px/1.2 var(--sans)}
.gg-cap h3 .num{flex:none;width:32px;height:32px;border-radius:50%;background:var(--verde);display:grid;place-items:center;font:800 15px var(--sans)}
.gg-tr{background:#f6f3ee;border-radius:14px;padding:14px;margin:0 0 10px}
.gg-tr img{width:100%;height:130px;object-fit:cover;border-radius:10px;margin-bottom:10px}
.gg-tr h4{margin:0 0 6px;font:800 15px var(--sans)}
.gg-tr p{font:400 14px/1.5 var(--sans);margin:0 0 8px;color:#4a443c}
.gg-audio{margin:8px 0}
.gg-acts{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.gg-acts button,.gg-acts a{display:inline-flex;align-items:center;gap:5px;border:0;background:#fff;border-radius:16px;padding:6px 11px;font:700 12px var(--sans);color:#2b2722;text-decoration:none;cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.gg-acts svg{width:14px;height:14px}
.gg-acts .fly{background:var(--verde)}
.gg-body>.btn{margin-top:14px;width:100%;justify-content:center}
@media (max-width:860px){.gg-tab{top:auto;bottom:calc(46vh + 20px);transform:none;padding:12px 8px}.gg{top:var(--header-h);z-index:1100}.gg-tab.on{display:none}}
.gg{z-index:1050}.gg-tab{z-index:1040}

/* home: numeri */
.ed-num{position:relative;padding:70px 0;background:radial-gradient(ellipse at 20% 0%,#5a5248 0%,#2b2722 60%);overflow:hidden}
.ed-num::before{content:"";position:absolute;inset:0;opacity:.08;background:repeating-radial-gradient(circle at 80% 120%,transparent 0 22px,#fff 22px 23px)}
.nums2{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.nums2 .st{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:26px 24px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(4px)}
.nums2 .ic{width:44px;height:44px;border-radius:12px;background:var(--verde);color:#2b2722;display:grid;place-items:center}
.nums2 .ic svg{width:24px;height:24px}
.nums2 b{display:flex;align-items:baseline;gap:6px;font:800 clamp(40px,4.4vw,60px)/1 var(--sans);color:#fff;white-space:nowrap}
.nums2 b small{font:700 .42em var(--sans);color:var(--verde)}
.nums2 .lb{font:600 13.5px/1.35 var(--sans);color:rgba(255,255,255,.75)}
@media (max-width:900px){.nums2{grid-template-columns:1fr 1fr}.nums2 .st{padding:18px}}
/* glossario */
.gl-hero{background:#2b2722;color:#fff;padding:calc(var(--header-h) + 50px) 0 34px}
.gl-hero .gsub{color:rgba(255,255,255,.8)}
.gl-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:26px}
.gl-lang{display:flex;gap:6px;background:rgba(255,255,255,.08);padding:5px;border-radius:14px}
.gl-lang button{border:0;background:none;color:#fff;padding:8px 12px;border-radius:10px;cursor:pointer;text-align:left}
.gl-lang button b{display:block;font:800 13px var(--sans)}.gl-lang button span{font:500 10.5px var(--sans);opacity:.7}
.gl-lang button.on{background:var(--verde);color:#2b2722}.gl-lang button.on span{opacity:.8}
.gl-sec{display:flex;gap:6px}
.gl-sec button{border:1px solid rgba(255,255,255,.3);background:none;color:#fff;font:700 13px var(--sans);padding:9px 14px;border-radius:20px;cursor:pointer}
.gl-sec button.on{background:#fff;color:#2b2722}
.gl-q{flex:1;min-width:200px;border:0;border-radius:22px;padding:11px 16px;font:500 14px var(--sans)}
.gl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px}
.gl-card{position:relative;background:#fff;border-radius:18px;padding:22px 22px 18px;box-shadow:0 4px 18px rgba(43,39,34,.08);border-top:5px solid var(--verde);transition:box-shadow .3s}
.gl-card.ipogee{border-top-color:#c96f3b}
.gl-card.hl{box-shadow:0 0 0 4px var(--verde),0 8px 30px rgba(43,39,34,.2)}
.gl-ic{position:absolute;right:18px;top:18px;width:38px;height:38px;border-radius:50%;background:#f1ede6;color:#6d655a;display:grid;place-items:center}
.gl-ic svg{width:22px;height:22px}
.gl-card h3{margin:0 50px 8px 0;font:800 21px/1.15 var(--sans);color:#2b2722}
.gl-alt{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.gl-alt span{font:600 12px var(--sans);color:#6d655a;background:#f6f3ee;border-radius:10px;padding:3px 8px}
.gl-alt i{font-style:normal;font-weight:800;color:var(--verde-d);margin-right:5px}
.gl-x p{font:400 14.5px/1.55 var(--sans);color:#4a443c;margin:0 0 8px}
.gl-more{border:0;background:none;color:var(--verde-d);font:800 13px var(--sans);cursor:pointer;padding:0}
.gl-teaser{background:#2b2722;color:#fff}
.gl-tz{display:grid;grid-template-columns:minmax(260px,1fr) 1.4fr;gap:40px;align-items:center}
.gl-tz h2{color:#fff;font:800 clamp(28px,3vw,40px) var(--sans);margin:6px 0 10px}
.gl-tz p{color:rgba(255,255,255,.8);font:400 16px/1.5 var(--sans)}
.gl-chips{display:flex;flex-wrap:wrap;gap:8px}
.gl-chips a{font:700 13px var(--sans);color:#fff;text-decoration:none;padding:7px 12px;border-radius:18px;border:1.5px solid rgba(182,198,17,.6);transition:.2s}
.gl-chips a.ipogee{border-color:rgba(240,138,60,.7)}
.gl-chips a:hover{background:#fff;color:#2b2722}
@media (max-width:800px){.gl-tz{grid-template-columns:1fr}}
/* intestazione: accesso rapido */
.hnav{display:flex;gap:6px;margin-right:6px}
.hbtn{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 14px 0 8px;border-radius:22px;border:0;background:rgba(255,255,255,.16);color:#fff;font:700 13px var(--sans);text-decoration:none;cursor:pointer;transition:background .2s}
.hbtn:hover,.hbtn:focus-visible{background:rgba(255,255,255,.3)}
.hbtn svg{width:22px;height:22px;flex:none}
.hbtn em{font-style:normal;white-space:nowrap}
.hbtn .i,.ibtn .i{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--verde);color:#2b2722;font:800 16px/1 Georgia,serif;font-style:italic}
.hbtn:first-child{padding-left:8px}
@media (max-width:1180px){.hbtn em{display:none}.hbtn{padding:0 8px}.top .partners{display:none}}
@media (max-width:560px){.hnav{gap:2px}.hbtn{height:38px;padding:0 5px;background:none}.top .brand span{display:none}}
.gg.glob{position:fixed;right:0;top:var(--header-h);bottom:0;z-index:2500}
.vrview .gg.glob,body .gg.glob{top:0}
body:not(:has(.vrview)) .gg.glob{top:var(--header-h)}

/* ---------- accessibilità: nuovo pannello ---------- */
@font-face{font-family:"Atkinson Hyperlegible";src:url("../assets/fonts/atkinson/regular.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Atkinson Hyperlegible";src:url("../assets/fonts/atkinson/bold.woff2") format("woff2");font-weight:700 900;font-display:swap}
.a11y-panel{width:min(380px,calc(100vw - 24px));padding:0;border-radius:18px;overflow:hidden;max-height:calc(100vh - var(--header-h) - 20px);overflow-y:auto}
.a11-hd{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 10px;background:#2b2722}
.a11-hd h2{color:var(--verde)!important;margin:0!important;font:800 14px var(--sans)!important}
.a11-x{width:34px;height:34px;border-radius:50%;border:0;background:rgba(255,255,255,.15);color:#fff;font-size:20px;cursor:pointer}
.a11-sec{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 18px 6px}
.a11-l{font:700 13.5px var(--sans)}
.a11-size{display:flex;gap:4px;background:#f1ede6;border-radius:12px;padding:4px}
.a11-size button{border:0;background:none;border-radius:9px;width:44px;height:38px;font:800 15px var(--sans);cursor:pointer;color:#2b2722}
.a11-size button:nth-child(2){font-size:19px}.a11-size button:nth-child(3){font-size:24px}
.a11-size button.on{background:#2b2722;color:var(--verde)}
.a11-speak{display:flex;gap:6px;padding:10px 18px 4px}
.a11-speak button{display:flex;align-items:center;gap:10px;flex:1;border:0;border-radius:12px;background:var(--verde);color:#2b2722;font:800 14px var(--sans);padding:12px 14px;cursor:pointer}
.a11-speak button svg{width:22px;height:22px}
.a11-speak #a11yStop{flex:none;width:48px;justify-content:center;background:#2b2722;color:#fff}
.a11-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px 18px}
.a11-grid label{position:relative;display:block;padding:0;cursor:pointer}
.a11-grid input{position:absolute;opacity:0;width:1px;height:1px}
.a11-grid .t{display:flex;flex-direction:column;gap:8px;height:100%;padding:12px;border-radius:12px;border:2px solid #ece7df;font:700 12.5px/1.25 var(--sans);color:#2b2722;transition:.2s}
.a11-grid .t svg{width:24px;height:24px}
.a11-grid input:checked+.t{background:#2b2722;border-color:#2b2722;color:#fff}
.a11-grid input:checked+.t svg{color:var(--verde)}
.a11-grid input:focus-visible+.t{outline:3px solid var(--verde);outline-offset:2px}
.a11-ft{display:flex;justify-content:space-between;align-items:center;padding:8px 18px 16px;border-top:1px solid #ece7df}
.a11-ft button{border:0;background:#f1ede6;border-radius:10px;padding:8px 12px;font:700 13px var(--sans);cursor:pointer}
.a11-ft a{margin:0!important;font:700 13px var(--sans);color:var(--verde-d)}
#a11yBtn.on{background:var(--verde);color:#2b2722}
/* effetti */
html.a11y-size1{font-size:115%}html.a11y-size2{font-size:130%}
html.a11y-size1 p,html.a11y-size1 li{font-size:1.12em!important}
html.a11y-size2 p,html.a11y-size2 li{font-size:1.25em!important}
html.a11y-gray #app,html.a11y-gray .top,html.a11y-gray .modal,html.a11y-gray .gg{filter:grayscale(1)}
html.a11y-readable body,html.a11y-readable body *:not(svg):not(svg *){font-family:"Atkinson Hyperlegible",Verdana,sans-serif!important}
html.a11y-spacing p,html.a11y-spacing li,html.a11y-spacing .gsub{line-height:1.9!important;letter-spacing:.04em!important;word-spacing:.12em!important}
html.a11y-cursor,html.a11y-cursor *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 24 24'%3E%3Cpath d='M4 2l16 9-7 2-3 8z' fill='%23000' stroke='%23fff' stroke-width='1.5'/%3E%3C/svg%3E") 4 2,auto!important}
.a11-ruler{display:none;position:fixed;left:0;right:0;height:44px;z-index:3000;pointer-events:none;box-shadow:0 0 0 100vmax rgba(0,0,0,.45);border-top:3px solid var(--verde);border-bottom:3px solid var(--verde)}
html.a11y-ruler .a11-ruler{display:block}
html.a11y-contrast body{background:#fff}
html.a11y-contrast p,html.a11y-contrast li{color:#000}
html.a11y-contrast .gl-hero p,html.a11y-contrast .ed-num p,html.a11y-contrast .trail p{color:#fff}
.a11-ruler{z-index:2400}
.a11-speak [hidden],.a11-speak[hidden]{display:none!important}
/* schede grotte a carosello (3 per volta) */
.gslider{position:relative;margin-top:24px}
.gslider .gcards{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 40px)/3);grid-template-columns:none;gap:20px;margin:0;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:6px 2px 14px}
.gslider .gcards::-webkit-scrollbar{display:none}
.gslider .gcard{scroll-snap-align:start}
.gslider .gcards>.gcard:nth-child(3n+1){scroll-snap-align:start}
.gs-nav{position:absolute;top:38%;z-index:5;width:52px;height:52px;border-radius:50%;border:0;background:#2b2722;color:var(--verde);font:400 34px/1 var(--sans);cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.3);transition:opacity .2s,transform .2s}
.gs-nav.prev{left:-26px}.gs-nav.next{right:-26px}
.gs-nav:hover{transform:scale(1.08)}
.gs-nav:disabled{opacity:0;pointer-events:none}
.gs-dots{display:flex;justify-content:center;gap:8px;margin-top:8px}
.gs-dots button{width:10px;height:10px;border-radius:5px;border:0;background:#d8d2c8;cursor:pointer;transition:width .3s,background .3s}
.gs-dots button.on{width:30px;background:var(--verde-d)}
@media (max-width:980px){.gslider .gcards{grid-auto-columns:calc((100% - 20px)/2)}.gs-nav.prev{left:-8px}.gs-nav.next{right:-8px}}
@media (max-width:620px){.gslider .gcards{grid-auto-columns:86%}.gs-nav{display:none}}
.gs-nav{top:30%}.gs-nav.prev{left:-72px}.gs-nav.next{right:-72px}
@media (max-width:1180px){.gs-nav.prev{left:-14px}.gs-nav.next{right:-14px}}

/* glossario: illustrazione interattiva + animazioni */
.gl-ill{background:#2b2722;padding:0 0 34px}
.gl-svgw{border-radius:20px;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.4)}
.ks{display:block;width:100%;height:auto}
.ks-water{animation:ksw 1.6s linear infinite}
@keyframes ksw{to{stroke-dashoffset:-24}}
.ks-hot{cursor:pointer;outline:none;animation:kshin .5s var(--d) both}
@keyframes kshin{from{opacity:0;transform-box:fill-box}}
.ks-hot .c{fill:var(--verde);stroke:#fff;stroke-width:3;transition:r .2s}
.ks-hot .r{fill:none;stroke:var(--verde);stroke-width:2;animation:ksr 2.2s ease-out infinite;transform-box:fill-box;transform-origin:center}
@keyframes ksr{0%{opacity:.9;transform:scale(.6)}100%{opacity:0;transform:scale(1.8)}}
.ks-hot text{font:800 13px var(--sans);fill:#2b2722;paint-order:stroke;stroke:#fff;stroke-width:4px;opacity:0;transition:opacity .2s}
.ks-hot:hover text,.ks-hot:focus text{opacity:1}
.ks-hot:hover .c,.ks-hot:focus .c{r:10;fill:#fff;stroke:var(--verde)}
.gl-ill-h{color:rgba(255,255,255,.7);font:600 13px var(--sans);text-align:center;margin:14px 0 0}
@media (max-width:700px){.ks-hot text{opacity:1;font-size:16px}}
.gl-card{opacity:0;transform:translateY(24px);transition:opacity .5s var(--d,0ms),transform .5s var(--d,0ms),box-shadow .3s}
.gl-card.in{opacity:1;transform:none}
.gl-card:hover{box-shadow:0 14px 34px rgba(43,39,34,.18);transform:translateY(-4px)}
.gl-card.hl{animation:glhl 1.6s ease 2}
@keyframes glhl{50%{box-shadow:0 0 0 6px var(--verde),0 14px 34px rgba(43,39,34,.2)}}
html.a11y-motion .gl-card{opacity:1;transform:none}
/* richiami del glossario nei testi */
.glt{display:inline;border:0;padding:0 1px;margin:0;background:linear-gradient(transparent 62%,rgba(182,198,17,.45) 62%);color:inherit;font:inherit;cursor:help;border-bottom:1.5px dotted var(--verde-d)}
.glt:hover,.glt:focus-visible{background:rgba(182,198,17,.55)}
.gl-pop{position:fixed;z-index:4000;background:#fff;border-radius:16px;padding:16px 18px 14px;box-shadow:0 16px 44px rgba(0,0,0,.3);border-top:5px solid var(--verde);font:400 14px/1.5 var(--sans);color:#2b2722;animation:hmc .2s ease both}
.gl-pop[hidden]{display:none}
.gl-pop .k{font:800 10px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--verde-d)}
.gl-pop h4{margin:2px 0 6px;font:800 19px var(--sans)}
.gl-pop .alt{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px}.gl-pop .alt span{font:600 11px var(--sans);background:#f6f3ee;border-radius:8px;padding:2px 7px;color:#6d655a}
.gl-pop p{margin:0 0 8px;color:#4a443c}
.gl-pop a{font:800 13px var(--sans);color:var(--verde-d)}
.gl-pop .x{position:absolute;right:10px;top:8px;border:0;background:none;font-size:20px;cursor:pointer;color:#8a8175}

/* home: mappa dei geositi più leggibile */
#hmap .hm-tiles{filter:saturate(.7) brightness(.72) contrast(1.08)}
.hmap-stage::after{content:"";position:absolute;inset:0;z-index:400;pointer-events:none;background:radial-gradient(ellipse at 60% 50%,transparent 40%,rgba(29,26,22,.55) 100%)}
.hm-pin{width:96px;height:120px}
.hm-pin .ph{left:8px;width:80px;height:80px;border-width:5px;box-shadow:0 0 0 4px rgba(182,198,17,.55),0 10px 26px rgba(0,0,0,.55)}
.hm-pin .ph::after{content:"";position:absolute;inset:-14px;border-radius:50%;border:3px solid var(--verde);animation:hmpulse 2.4s ease-out infinite}
@keyframes hmpulse{0%{opacity:.9;transform:scale(.85)}100%{opacity:0;transform:scale(1.35)}}
.hm-pin::after{top:80px;height:34px;width:4px;margin-left:-2px;background:linear-gradient(#fff,rgba(255,255,255,.3))}
.hm-pin .nb{width:34px;height:34px;font:800 17px/28px var(--sans);right:-2px;top:-6px}
.hm-pin .lb{opacity:1;top:auto;bottom:-6px;transform:translate(-50%,100%);background:#fff;color:#2b2722;font:800 12.5px var(--sans);padding:6px 11px;border-radius:16px;box-shadow:0 4px 12px rgba(0,0,0,.4);max-width:220px;white-space:normal;text-align:center;line-height:1.2;width:max-content}
.hm-pin:hover .lb,.hm-pin.on .lb,.hm-pin.hot .lb{background:var(--verde)}
.hmap-list .hm-it{background:rgba(255,255,255,.96);border-left:5px solid var(--verde)}
html.a11y-motion .hm-pin .ph::after{animation:none}
/* loghi partner: a sinistra, separati dal menu, link a polcenigo.org */
.top .partners{display:flex;align-items:center;gap:14px;margin-left:22px;padding:6px 14px 6px 22px;border-left:1px solid rgba(255,255,255,.3);text-decoration:none;border-radius:0 10px 10px 0;transition:background .2s}
.top .partners:hover{background:rgba(255,255,255,.12)}
@media (max-width:1180px){.top .partners{display:flex}.top .brand span{display:none}}
@media (max-width:760px){.top .partners{display:none}}
/* approfondimenti: gerarchia geosito > testi */
.gg-cap{margin:0 0 22px}
.gg-cap h3{position:sticky;top:-8px;z-index:2;margin:18px -20px 12px;padding:14px 20px;background:#2b2722;color:#fff;font:800 17px/1.2 var(--sans)}
.gg-cap h3 .num{width:36px;height:36px;font-size:17px;color:#2b2722}
.gg-cap h3::after{content:"Geosito";order:-1;display:none}
.gg-tr{margin:0 0 10px 14px;border-left:3px solid var(--verde);border-radius:0 14px 14px 0;background:#f8f6f2}
.gg-tr h4{font:700 14.5px var(--sans);color:#4a443c}
.gg-tr h4::before{content:"› ";color:var(--verde-d);font-weight:800}
.gg-tr img{height:96px}
/* scheda punto di interesse: immagine grande al centro, testo su richiesta */
.modal.wide .in{width:min(1500px,96vw);max-height:94vh}
.icard{display:block!important;position:relative;background:#141210;min-height:200px}
.icard .ic-media{display:grid;place-items:center;background:#141210}
.icard .ic-media>img,.icard .ic-media>video{display:block;width:auto!important;max-width:100%;height:auto!important;max-height:calc(94vh - 70px)!important;object-fit:contain!important;background:#141210}
.icard .ic-media>img.pan{cursor:zoom-in}
.icard .ic-media>img.pan.zoom{max-height:none!important;width:100%!important;cursor:zoom-out}
.ic-cred{position:absolute;left:14px;bottom:12px;z-index:3;font:500 11.5px var(--sans);color:rgba(255,255,255,.85);background:rgba(0,0,0,.5);padding:4px 9px;border-radius:10px}
.ic-btn{position:absolute;right:18px;bottom:18px;z-index:4;display:flex;align-items:center;gap:10px;border:0;border-radius:30px;padding:6px 18px 6px 6px;background:#fff;color:#2b2722;font:800 14px var(--sans);cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.45);transition:transform .2s}
.ic-btn .i{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--verde);font:700 italic 22px/1 Georgia,serif;animation:icp 2.2s ease-out infinite}
@keyframes icp{0%{box-shadow:0 0 0 0 rgba(182,198,17,.7)}100%{box-shadow:0 0 0 14px rgba(182,198,17,0)}}
.ic-btn:hover{transform:scale(1.05)}
.ic-btn.on{opacity:0;pointer-events:none}
.icard .ic-tx{position:absolute;right:0;top:0;bottom:0;z-index:5;width:min(460px,100%);max-height:none!important;overflow:auto;background:rgba(29,26,22,.96);backdrop-filter:blur(8px);padding:30px 30px 30px;box-shadow:-12px 0 40px rgba(0,0,0,.5);animation:ictx .35s cubic-bezier(.2,.8,.2,1)}
.icard .ic-tx[hidden]{display:none}
@keyframes ictx{from{transform:translateX(100%)}}
.ic-close{position:sticky;top:0;float:right;margin:-14px -14px 0 10px;width:36px;height:36px;border-radius:50%;border:0;background:rgba(255,255,255,.15);color:#fff;font-size:20px;cursor:pointer}
html.a11y-motion .ic-btn .i{animation:none}
@media (max-width:820px){.icard .ic-tx{position:relative;width:auto;box-shadow:none}.ic-btn{right:12px;bottom:12px}}
/* home: titolo della mappa integrato */
.hmap-sec{background:#1d1a16;padding:64px 0 0;position:relative}
.hmap-sec::before{content:"";position:absolute;inset:0 0 auto 0;height:100%;background:radial-gradient(ellipse at 15% 0%,rgba(182,198,17,.18),transparent 55%);pointer-events:none}
.hmap-head{position:relative;margin-bottom:0;padding-bottom:30px}
.hmap-head .kicker{color:var(--verde)}
.hmap-head .ed-h2{color:#fff}
.hmap-head .ed-h2 .br{color:var(--verde)}
.hmap-head p{color:rgba(255,255,255,.75)}
.hmap-tab{position:absolute;left:50%;bottom:-22px;transform:translateX(-50%);z-index:600;display:inline-flex;align-items:center;gap:8px;background:var(--verde);color:#2b2722;font:800 13px var(--sans);letter-spacing:.06em;text-transform:uppercase;padding:11px 22px;border-radius:24px;box-shadow:0 8px 22px rgba(0,0,0,.4)}
.hmap-tab svg{width:18px;height:18px}
.hmap-tab::after{content:"";position:absolute;left:50%;bottom:-7px;margin-left:-7px;border:7px solid transparent;border-bottom:0;border-top-color:var(--verde)}
.hmap-stage{border-top:3px solid var(--verde)}
.hmap-list{top:44px}
/* intestazione: avanti / home / indietro */
.hhist{display:flex;align-items:center;gap:2px;margin-right:10px;padding:3px;border-radius:24px;background:rgba(0,0,0,.18)}
.hh{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:38px;min-width:38px;padding:0 9px;border:0;border-radius:20px;background:none;color:#fff;font:700 13px var(--sans);text-decoration:none;cursor:pointer;transition:background .2s,opacity .2s}
.hh svg{width:20px;height:20px}
.hh em{font-style:normal}
.hh:hover:not(:disabled),.hh:focus-visible{background:rgba(255,255,255,.25)}
.hh:disabled{opacity:.35;cursor:default}
.hh.hh-home{background:rgba(255,255,255,.14)}
.hh.hh-home.on{background:var(--verde);color:#2b2722}
@media (max-width:1180px){.hh em{display:none}}
@media (max-width:560px){.hhist{margin-right:2px;background:none}.hh{min-width:32px;padding:0 4px}#navFwd{display:none}}
.hs-panel{--c:#ffffff}
.hs-panel::after{content:"";position:absolute;right:-4px;bottom:-4px;width:18px;height:18px;border-radius:50%;background:var(--verde) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232b2722' stroke-width='3'%3E%3Ccircle cx='10' cy='10' r='6'/%3E%3Cpath d='M15 15l5 5M10 7v6M7 10h6'/%3E%3C/svg%3E") center/12px no-repeat;border:2px solid #1d1a16}

/* home: mappa dei geositi – titolo sopra la mappa, elenco a fotogrammi */
.hmap-sec{background:none!important;padding:0!important}
.hmap-sec::before{display:none}
.hmap-stage{height:min(90vh,860px)!important;min-height:600px;border-top:0!important}
.hmap-stage::after{background:linear-gradient(90deg,rgba(20,18,15,.82) 0%,rgba(20,18,15,.35) 34%,transparent 55%),linear-gradient(0deg,rgba(20,18,15,.75) 0%,transparent 26%)!important}
.hmap-title{position:absolute;left:clamp(20px,5vw,72px);top:clamp(30px,8vh,80px);z-index:520;max-width:520px;color:#fff;pointer-events:none}
.hmap-title .kicker{display:inline-flex;align-items:center;gap:10px;color:var(--verde)}
.hmap-title .kicker::before{content:"";width:34px;height:2px;background:var(--verde)}
.hmap-title h2{margin:12px 0 14px;font:800 clamp(38px,5vw,72px)/.98 var(--sans);letter-spacing:-.01em;text-shadow:0 4px 30px rgba(0,0,0,.5)}
.hmap-title h2 em{font-style:normal;color:transparent;-webkit-text-stroke:2px var(--verde)}
.hmap-title p{font:400 17px/1.5 var(--sans);color:rgba(255,255,255,.85);margin:0;text-shadow:0 2px 12px rgba(0,0,0,.6)}
.hmap-list{left:50%!important;right:auto!important;top:auto!important;bottom:26px;transform:translateX(-50%);width:auto!important;flex-direction:row!important;gap:6px!important;padding:8px;border-radius:60px;background:rgba(20,18,15,.6);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 10px 34px rgba(0,0,0,.4)}
.hmap-list .hm-it{display:flex;align-items:center;gap:10px;background:none!important;border:0!important;border-left:0!important;border-radius:40px;padding:4px 16px 4px 4px;box-shadow:none;color:#fff;transform:none!important;transition:background .25s}
.hm-it .ph{position:relative;flex:none;width:46px;height:46px;border-radius:50%;background-size:cover;background-position:center;border:2px solid rgba(255,255,255,.7)}
.hm-it .ph .n{position:absolute;right:-5px;bottom:-5px;width:22px;height:22px;border-radius:50%;background:var(--verde);color:#2b2722;font:800 12px/22px var(--sans);text-align:center;border:2px solid #1d1a16}
.hmap-list .hm-it b{color:#fff!important;font:700 12.5px/1.2 var(--sans);max-width:150px;text-align:left}
.hmap-list .hm-it:hover,.hmap-list .hm-it.hot{background:rgba(255,255,255,.14)!important}
.hmap-list .hm-it.on{background:var(--verde)!important}.hmap-list .hm-it.on b{color:#2b2722!important}.hmap-list .hm-it.on .ph{border-color:#2b2722}
.hm-pin .lb{background:rgba(20,18,15,.82)!important;color:#fff!important;border:1.5px solid rgba(182,198,17,.7);backdrop-filter:blur(6px)}
.hm-pin:hover .lb,.hm-pin.on .lb,.hm-pin.hot .lb{background:var(--verde)!important;color:#2b2722!important}
.hmap-card{top:24px;right:24px}
@media (max-width:1100px){.hmap-list .hm-it b{display:none}.hmap-list .hm-it{padding:4px}}
@media (max-width:900px){.hmap-stage{height:auto!important;min-height:0}#hmap{height:70vh}.hmap-title{top:20px;left:16px;max-width:80%}.hmap-title h2{font-size:34px}.hmap-title p{display:none}
  .hmap-list{position:absolute!important;padding:6px}.hmap-list .hm-it .ph{width:40px;height:40px}}
.hmap-list .hm-it b{min-width:118px;max-width:170px;white-space:normal}
.hmap-list{max-width:calc(100% - 40px)}

/* ---------- footer ---------- */
.foot{display:none}
.foot2{background:#1d1a16;color:#fff;margin-top:0}
.f2-reg{background:linear-gradient(90deg,#2b2722,#3a342c);border-bottom:3px solid var(--verde);padding:30px 0}
.rfvg{display:flex;align-items:center;gap:30px;flex-wrap:wrap}
.rfvg-logo{flex:none;display:block;background:#fff;padding:10px 14px;border-radius:10px;box-shadow:0 6px 20px rgba(0,0,0,.35);transition:transform .2s}
.rfvg-logo:hover{transform:translateY(-2px)}
.rfvg-logo img{display:block;height:58px;width:auto}
.rfvg-tx p{margin:0 0 6px;font:500 16px/1.45 var(--sans);color:#fff}
.rfvg-tx p b{color:var(--verde)}
.rfvg-tx p[lang=en]{font:400 13.5px/1.45 var(--sans);color:rgba(255,255,255,.65)}
.f2-main{display:grid;grid-template-columns:1.1fr 1.4fr 1fr;gap:48px;padding:54px 16px 44px}
.f2-logo img{height:64px;background:#fff;border-radius:12px;padding:8px 10px}
.f2-brand p{font:400 14px/1.5 var(--sans);color:rgba(255,255,255,.75);margin:14px 0 18px}
.f2-brand p b{color:#fff;font-weight:800;letter-spacing:.06em;text-transform:uppercase;font-size:13px}
.f2-partners{display:inline-flex;align-items:center;gap:14px;background:rgba(255,255,255,.95);padding:8px 14px;border-radius:12px}
.f2-partners img{height:44px;width:auto}
.foot2 h4{margin:0 0 14px;font:800 11px var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--verde)}
.f2-geo{display:grid;gap:6px}
.f2-geo a{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font:600 14px var(--sans);padding:5px 8px 5px 5px;border-radius:30px;transition:background .2s,transform .2s}
.f2-geo a:hover{background:rgba(255,255,255,.08);transform:translateX(4px)}
.f2-geo .ph{position:relative;flex:none;width:40px;height:40px;border-radius:50%;background-size:cover;background-position:center;border:2px solid rgba(255,255,255,.5)}
.f2-geo .ph i{position:absolute;right:-4px;bottom:-4px;width:19px;height:19px;border-radius:50%;background:var(--verde);color:#2b2722;font:800 10.5px/19px var(--sans);font-style:normal;text-align:center;border:2px solid #1d1a16}
.f2-col{display:grid;gap:4px;align-content:start}
.f2-col a{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.85);text-decoration:none;font:600 14px var(--sans);padding:8px 10px;border-radius:10px;transition:background .2s,color .2s}
.f2-col a svg{width:19px;height:19px;color:var(--verde);flex:none}
.f2-col a:hover{background:rgba(255,255,255,.08);color:#fff}
.f2-bar{border-top:1px solid rgba(255,255,255,.1);padding:16px 0;font:500 13px var(--sans);color:rgba(255,255,255,.65)}
.f2-bar .wrap{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.f2-bar a{color:#fff;text-decoration:none}.f2-bar a b{color:var(--verde)}
.f2-links{display:flex;align-items:center;gap:18px}
.f2-top{width:38px;height:38px;border-radius:50%;border:0;background:var(--verde);color:#2b2722;font:800 18px var(--sans);cursor:pointer;transition:transform .2s}
.f2-top:hover{transform:translateY(-3px)}
@media (max-width:900px){.f2-main{grid-template-columns:1fr;gap:30px}.rfvg{gap:16px}.rfvg-logo img{height:46px}}
/* ---------- pagina crediti ---------- */
.cr-hero{background:#2b2722;color:#fff;padding:calc(var(--header-h) + 54px) 0 30px}
.cr-hero .gsub{color:rgba(255,255,255,.75)}
.cr-reg{background:#2b2722;padding:0 0 46px}
.cr-reg .rfvg.full{background:rgba(255,255,255,.06);border:1px solid rgba(182,198,17,.4);border-radius:20px;padding:28px}
.cr-reg .rfvg.full .rfvg-logo img{height:80px}
.cr-part{display:flex;gap:16px;margin-top:18px}
.cr-part a{background:#fff;border-radius:12px;padding:10px 16px}.cr-part img{height:54px;display:block}
.cr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}
.cr-card{background:#fff;border-radius:18px;padding:24px;box-shadow:0 4px 18px rgba(43,39,34,.08);border-top:4px solid var(--verde)}
.cr-ic{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#2b2722;color:var(--verde);margin-bottom:12px}
.cr-ic svg{width:24px;height:24px}
.cr-card h2{margin:0 0 10px;font:800 20px var(--sans)}
.cr-card p,.cr-card li{font:400 14.5px/1.55 var(--sans);color:#4a443c}
.cr-card ul{padding-left:18px;margin:0}
/* ---------- menu principale ---------- */
.drawer nav{background:#1d1a16!important;padding:0 0 30px!important;width:min(440px,94vw)!important}
.mn-hd{display:flex;align-items:center;gap:12px;padding:20px 22px;border-bottom:1px solid rgba(255,255,255,.1)}
.mn-hd img{height:44px;background:#fff;border-radius:8px;padding:4px 6px}
.mn-hd span{font:800 12px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#fff}
.mn-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:18px 18px 8px}
.mn-tiles a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;aspect-ratio:1.1;border-radius:16px;background:rgba(255,255,255,.06);color:#fff;text-decoration:none;text-align:center;transition:background .2s,transform .2s}
.mn-tiles a svg{width:28px;height:28px;color:var(--verde)}
.mn-tiles a b{font:700 12px/1.2 var(--sans)}
.mn-tiles a:hover{background:var(--verde);transform:translateY(-2px)}.mn-tiles a:hover svg,.mn-tiles a:hover b{color:#2b2722}
.drawer nav h3{margin:18px 22px 8px!important;font:800 11px var(--sans)!important;letter-spacing:.18em;text-transform:uppercase;color:var(--verde)!important}
.mn-geo{margin:0 14px 6px;border-radius:16px;transition:background .2s}
.mn-geo:hover{background:rgba(255,255,255,.04)}
.mn-g{display:flex;align-items:center;gap:12px;padding:8px;text-decoration:none;color:#fff}
.mn-g .ph{position:relative;flex:none;width:52px;height:52px;border-radius:50%;background-size:cover;background-position:center;border:2px solid rgba(255,255,255,.5)}
.mn-g .ph i{position:absolute;right:-4px;bottom:-4px;width:22px;height:22px;border-radius:50%;background:var(--verde);color:#2b2722;font:800 12px/22px var(--sans);font-style:normal;text-align:center;border:2px solid #1d1a16}
.mn-g b{display:block;font:800 14.5px/1.2 var(--sans)}
.mn-g small{display:block;font:500 12px/1.3 var(--sans);color:rgba(255,255,255,.6);margin-top:2px}
.mn-subs{display:flex;flex-wrap:wrap;gap:6px;padding:0 8px 10px 72px}
.mn-subs a{font:600 12px var(--sans);color:#fff;text-decoration:none;background:rgba(255,255,255,.08);padding:5px 10px;border-radius:14px}
.mn-subs a em{font-style:normal;color:var(--verde);font-weight:800;margin-right:4px}
.mn-subs a:hover{background:var(--verde);color:#2b2722}.mn-subs a:hover em{color:#2b2722}
/* disegno carsico: nuova grafica */
.gl-ill{background:linear-gradient(180deg,#2b2722,#1d1a16)}
.gl-svgw{border-radius:24px;border:1px solid rgba(255,255,255,.12)}
.ks-clouds g{animation:ksc 40s linear infinite alternate}
.ks-clouds g:nth-child(2){animation-duration:55s}
@keyframes ksc{to{transform:translateX(60px)}}
.ks-aquifer{animation:ksa 6s ease-in-out infinite alternate}
@keyframes ksa{to{transform:translateX(-60px)}}
.ks-glow{animation:ksg 4s ease-in-out infinite alternate}
@keyframes ksg{to{opacity:.2}}
.ks-drip circle{animation:ksd 2.1s ease-in infinite}
@keyframes ksd{0%{transform:translateY(0);opacity:0}15%{opacity:1}100%{transform:translateY(60px);opacity:0}}
.ks-tag{font:700 10px var(--sans);letter-spacing:.14em;text-transform:uppercase;fill:#fff;opacity:.8}
.ks-hot .c{r:9;fill:var(--verde);stroke:#fff;stroke-width:3;filter:drop-shadow(0 2px 3px rgba(0,0,0,.4))}
.ks-hot .pl{stroke:#2b2722;stroke-width:2;stroke-linecap:round;transition:transform .25s}
.ks-hot .lbl{opacity:0;transform:translateY(6px);transition:opacity .2s,transform .2s;pointer-events:none}
.ks-hot .lbl rect{fill:#2b2722;stroke:var(--verde);stroke-width:1.5}
.ks-hot text{font:800 12.5px var(--sans)!important;fill:#fff!important;stroke:none!important;opacity:1!important}
.ks-hot:hover .lbl,.ks-hot:focus .lbl{opacity:1;transform:none}
.ks-hot:hover .c,.ks-hot:focus .c{r:11;fill:#fff;stroke:var(--verde)}
.ks-hot:hover .pl,.ks-hot:focus .pl{transform:rotate(45deg)}
html.a11y-motion .ks *{animation:none!important}
.f2-partners,.cr-part a{background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.15)}
.cr-part a{padding:10px 16px}

/* ---------- home: numeri a nastro ---------- */
.ed-num2{position:relative;background:radial-gradient(ellipse at 10% 0%,#4a4238,#1d1a16 60%);color:#fff;padding:64px 0 54px;overflow:hidden}
.en-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:26px}
.en-head .kicker{color:var(--verde);display:block}
.en-head h2{margin:6px 0 0;font:800 clamp(28px,3.4vw,44px)/1.05 var(--sans);color:#fff}
.en-nav{display:flex;gap:8px}
.en-b{width:48px;height:48px;border-radius:50%;border:1.5px solid rgba(255,255,255,.3);background:none;color:#fff;font:400 28px/1 var(--sans);cursor:pointer;transition:.2s}
.en-b:hover{background:var(--verde);color:#2b2722;border-color:var(--verde)}
.en-track{display:flex;gap:18px;overflow-x:auto;scrollbar-width:none;padding:6px max(16px,calc((100vw - 1100px)/2)) 18px;cursor:grab;user-select:none}
.en-track::-webkit-scrollbar{display:none}
.en-card{position:relative;flex:none;width:280px;height:340px;border-radius:22px;overflow:hidden;color:#fff;text-decoration:none;display:flex;flex-direction:column;justify-content:flex-end;padding:22px;isolation:isolate;box-shadow:0 14px 34px rgba(0,0,0,.4);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.en-card::before{content:"";position:absolute;inset:0;z-index:-2;background:var(--img) center/cover;transition:transform .6s}
.en-card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(20,18,15,.15) 0%,rgba(20,18,15,.55) 45%,rgba(20,18,15,.92) 100%)}
.en-card:hover{transform:translateY(-6px)}
.en-card:hover::before{transform:scale(1.08)}
.en-ic{position:absolute;left:20px;top:20px;width:44px;height:44px;border-radius:13px;background:var(--verde);color:#2b2722;display:grid;place-items:center}
.en-ic svg{width:24px;height:24px}
.en-card b{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;font:800 54px/1 var(--sans);letter-spacing:-.02em}
.en-card b small{font:800 15px var(--sans);color:var(--verde);letter-spacing:0}
.en-card .lb{display:block;margin-top:10px;font:600 14px/1.35 var(--sans);color:rgba(255,255,255,.88)}
.en-card .go{position:absolute;right:20px;top:24px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.15);font:700 16px var(--sans);opacity:0;transform:translateX(-6px);transition:.3s}
.en-card:hover .go{opacity:1;transform:none}
@media (max-width:640px){.en-card{width:230px;height:300px}.en-card b{font-size:44px}.en-nav{display:none}}
/* ---------- documentari ---------- */
.doc-card{position:relative;display:flex;align-items:flex-end;width:100%;min-height:220px;border:0;border-radius:18px;overflow:hidden;background-size:cover;background-position:center;color:#fff;text-align:left;padding:20px;cursor:pointer;margin:0 0 24px;box-shadow:0 10px 28px rgba(0,0,0,.25);isolation:isolate}
.doc-card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 30%,rgba(20,18,15,.85))}
.doc-card.big{min-height:300px}
.doc-card .pl{position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);width:74px;height:74px;border-radius:50%;background:rgba(255,255,255,.92);color:#2b2722;display:grid;place-items:center;transition:transform .25s;box-shadow:0 8px 24px rgba(0,0,0,.4)}
.doc-card .pl svg{width:32px;height:32px;margin-left:4px}
.doc-card:hover .pl{transform:translate(-50%,-50%) scale(1.1);background:var(--verde)}
.doc-card small{display:block;font:800 11px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--verde)}
.doc-card b{display:block;font:800 22px var(--sans);margin-top:4px}
.doc-v video{display:block;width:100%;max-height:calc(94vh - 70px);background:#000}
.cs-docs{background:#1d1a16;color:#fff}.cs-docs h2{color:#fff}.cs-docs .gsub{color:rgba(255,255,255,.75)}
.docs-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:22px}
.docs-row .doc-card{margin:0}
.v360-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px}
.v360-mini{position:relative;display:flex;flex-direction:column;justify-content:flex-end;height:140px;border-radius:14px;overflow:hidden;background-size:cover;background-position:center;color:#fff;text-decoration:none;padding:12px;isolation:isolate}
.v360-mini::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 30%,rgba(20,18,15,.85))}
.v360-mini span{position:absolute;left:10px;top:10px;font:800 11px var(--sans);background:var(--verde);color:#2b2722;padding:3px 7px;border-radius:8px}
.v360-mini b{font:800 14px/1.2 var(--sans)}
.v360-mini:hover{outline:3px solid var(--verde)}
@media (max-width:800px){.docs-row{grid-template-columns:1fr}.v360-row{grid-template-columns:1fr 1fr}}
/* riquadro illustrato "Lo sapevi?" */
.intro-box{padding:44px 0!important}
.ibox{display:grid;grid-template-columns:170px 1fr;align-items:center;gap:30px;max-width:980px;background:#fff;border-radius:26px;padding:22px 34px 22px 22px;box-shadow:0 14px 40px rgba(43,39,34,.1);position:relative;overflow:hidden}
.ibox::before{content:"";position:absolute;left:-40px;bottom:-60px;width:220px;height:220px;border-radius:50%;background:var(--verde);opacity:.18}
.ibox-ill{position:relative}
.ibox-ill svg{display:block;width:100%;height:auto}
.ibox-k{display:inline-flex;align-items:center;gap:8px;font:800 12px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--verde-d)}
.ibox-k::before{content:"!";display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--verde);color:#2b2722;font:800 14px var(--sans);letter-spacing:0}
.ibox p{margin:10px 0 0;font:500 clamp(17px,1.6vw,21px)/1.5 var(--sans);color:#2b2722}
.bi-drop{animation:bidrop 3s ease-in-out infinite;transform-origin:100px 76px}
@keyframes bidrop{50%{transform:translateY(5px) scale(1.04)}}
.bi-shell{animation:bisway 5s ease-in-out infinite;transform-origin:100px 130px}
.bi-coral{animation:bisway 4s ease-in-out infinite;transform-origin:100px 136px}
@keyframes bisway{50%{transform:rotate(3deg)}}
.bi-foot{animation:bifoot 3s ease-in-out infinite}
@keyframes bifoot{50%{opacity:.7}}
.bi-dots circle{animation:bidot 1.8s ease-in infinite}
.bi-dots circle:nth-child(2){animation-delay:.6s}.bi-dots circle:nth-child(3){animation-delay:1.2s}
@keyframes bidot{0%,100%{opacity:0}50%{opacity:1}}
html.a11y-motion .ibox *{animation:none!important}
@media (max-width:640px){.ibox{grid-template-columns:1fr;text-align:center;padding:20px}.ibox-ill{max-width:150px;margin:0 auto}}
/* frecce del tour: anteprima rotonda ed etichette */
.arw{position:relative;overflow:visible}
.arw svg{position:relative;z-index:2}
.arw-pv{position:absolute;left:50%;bottom:calc(100% + 12px);transform:translate(-50%,8px) scale(.85);display:flex;flex-direction:column;align-items:center;gap:8px;opacity:0;pointer-events:none;transition:opacity .25s,transform .3s cubic-bezier(.2,.8,.2,1)}
.arw-pv .ph{display:block;width:118px;height:118px;border-radius:50%;background-size:auto 100%;background-position:center;border:4px solid #fff;box-shadow:0 0 0 3px var(--verde),0 12px 28px rgba(0,0,0,.5);animation:pvpan 8s linear infinite alternate}
@keyframes pvpan{from{background-position:30% 50%}to{background-position:70% 50%}}
.arw-pv .nm{font:800 13px var(--sans);color:#fff;background:rgba(29,26,22,.85);padding:5px 12px;border-radius:14px;white-space:nowrap;backdrop-filter:blur(6px)}
.arw-pv::after{content:"";position:absolute;left:50%;bottom:-10px;width:2px;height:10px;margin-left:-1px;background:#fff}
.arw:hover .arw-pv,.arw:focus-visible .arw-pv{opacity:1;transform:translate(-50%,0) scale(1)}
.arw-lb{position:absolute;left:50%;top:calc(100% + 6px);transform:translateX(-50%);z-index:1;white-space:nowrap;font:800 13px var(--sans);color:#fff;background:rgba(29,26,22,.78);padding:6px 13px;border-radius:16px;border:1.5px solid rgba(182,198,17,.8);backdrop-filter:blur(6px);box-shadow:0 4px 14px rgba(0,0,0,.35);pointer-events:none;transition:background .2s,color .2s}
.arw:hover .arw-lb,.arw:focus-visible .arw-lb{background:var(--verde);color:#2b2722}
.arw-jump circle{stroke-dasharray:none!important;fill:rgba(182,198,17,.25)!important;stroke:var(--verde)!important}
.arw-jump .arw-pv .ph{box-shadow:0 0 0 3px #fff,0 12px 28px rgba(0,0,0,.5)}
.plabel{background:rgba(29,26,22,.72)!important;border:1.5px solid rgba(182,198,17,.7)!important;border-left-width:1.5px!important;border-radius:16px!important;font:800 13px var(--sans)!important;padding:6px 13px!important;box-shadow:0 4px 14px rgba(0,0,0,.3)}
.psv-virtual-tour-tooltip{display:none!important}
html.a11y-motion .arw-pv .ph{animation:none}
/* definizione illustrata (voce di dizionario) */
.defb{position:relative;overflow:hidden;background:#2b2722;color:#fff;padding:70px 0}
.defb::before{content:"";position:absolute;inset:0;opacity:.09;background:repeating-radial-gradient(circle at 18% 50%,transparent 0 26px,#fff 26px 27px)}
.defb::after{content:"“";position:absolute;right:4%;top:-60px;font:400 380px/1 var(--serif);color:var(--verde);opacity:.12;pointer-events:none}
.defb-in{position:relative;display:grid;grid-template-columns:260px 1fr;gap:56px;align-items:center}
.defb-ring{width:240px;height:240px;border-radius:50%;background:#f4f1ec;box-shadow:0 0 0 10px rgba(182,198,17,.25),0 0 0 22px rgba(182,198,17,.1),0 20px 50px rgba(0,0,0,.45);display:grid;place-items:center;overflow:hidden}
.defb-ring svg{width:92%;height:auto}
.defb-ring svg>circle:first-child{display:none}
.defb-k{display:inline-flex;align-items:center;gap:10px;font:800 11.5px var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--verde)}
.defb-k::before{content:"";width:30px;height:2px;background:var(--verde)}
.defb-term{margin:12px 0 4px;font:800 clamp(42px,6vw,84px)/.95 var(--sans);letter-spacing:-.02em;color:#fff;display:flex;align-items:baseline;flex-wrap:wrap;gap:16px}
.defb-term small{font:italic 400 22px var(--serif);color:var(--verde);letter-spacing:0}
.defb-ety{margin:8px 0 0;font:italic 400 19px/1.4 var(--serif);color:rgba(255,255,255,.7)}
.defb-def{margin:22px 0 0;max-width:760px;font:400 clamp(19px,1.8vw,24px)/1.5 var(--sans);color:rgba(255,255,255,.92);border-left:3px solid var(--verde);padding-left:22px}
.defb-def span{display:inline-block;opacity:.15;transform:translateY(6px);transition:opacity .5s calc(var(--k)*18ms),transform .5s calc(var(--k)*18ms)}
.defb.in .defb-def span{opacity:1;transform:none}
.defb .defb-ring{transform:scale(.85) rotate(-8deg);opacity:0;transition:transform .9s cubic-bezier(.2,.8,.2,1),opacity .6s}
.defb.in .defb-ring{transform:none;opacity:1}
html.a11y-motion .defb-def span,html.a11y-motion .defb-ring{opacity:1!important;transform:none!important}
@media (max-width:800px){.defb{padding:46px 0}.defb-in{grid-template-columns:1fr;gap:26px}.defb-ring{width:170px;height:170px;margin:0 auto}}
.defb{background:linear-gradient(120deg,#8f8576,#6d655a)}
.defb::before{opacity:.12}
.defb::after{color:#fff;opacity:.14}
.defb-term small,.defb-k{color:#e4ef8a}.defb-k::before{background:#e4ef8a}
.defb-def{border-left-color:var(--verde)}
.defb-ety{color:rgba(255,255,255,.82)}

/* ---------- home: nuova animazione d'apertura ---------- */
/* logo: arriva intero, svelato da un cerchio che si allarga, poi respiro leggero */
.logo-anim>*{opacity:1!important;animation:none!important}
.go .logo-anim .teal{animation:sway 4.5s ease-in-out 2.2s infinite!important;transform-origin:bottom center}
.go .logo-anim .blue{animation:bob 3.6s ease-in-out 2.4s infinite!important}
.logo-wrap{position:relative}
.logo-wrap svg{clip-path:circle(0% at 50% 50%);filter:blur(8px);transform:scale(.92)}
.logo-wrap.go svg{animation:logoIn 1.6s cubic-bezier(.2,.8,.2,1) .15s forwards}
@keyframes logoIn{60%{filter:blur(0)}100%{clip-path:circle(75% at 50% 50%);filter:blur(0);transform:none}}
.logo-wrap::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.55) 50%,transparent 65%);background-size:250% 100%;background-position:120% 0;mix-blend-mode:soft-light;opacity:0}
.logo-wrap.go::after{animation:sheen 1.4s ease 1.7s forwards}
@keyframes sheen{0%{opacity:1;background-position:120% 0}100%{opacity:0;background-position:-30% 0}}
/* titolo e testi: salgono da una maschera */
.ed-in>*{opacity:0;transform:translateY(26px);animation:edUp .9s cubic-bezier(.2,.8,.2,1) forwards}
.ed-in>*:nth-child(1){animation-delay:1.1s}.ed-in>*:nth-child(2){animation-delay:1.25s}.ed-in>*:nth-child(3){animation-delay:1.4s}.ed-in>*:nth-child(4){animation-delay:1.55s}
@keyframes edUp{to{opacity:1;transform:none}}
/* indice: le voci scorrono da destra una dopo l'altra, la linea si disegna */
.ed-idx h2{opacity:0;animation:edUp .8s ease .5s forwards}

@keyframes edIdx{to{opacity:1;transform:none}}
.ed-it{position:relative}
.ed-it::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;opacity:.25;transform:scaleX(0);transform-origin:left;animation:edLine 1s ease forwards;animation-delay:calc(.9s + var(--d,0ms))}
@keyframes edLine{to{transform:none}}
.ed-it .tondi img{opacity:0;scale:.4;animation:edTondo .6s cubic-bezier(.2,1.4,.4,1) forwards;animation-delay:calc(1s + var(--d,0ms) + var(--k) * 90ms)}
@keyframes edTondo{to{opacity:1;scale:1}}
html.a11y-motion .logo-wrap svg{clip-path:none;filter:none;transform:none;animation:none}
html.a11y-motion .ed-in>*,html.a11y-motion .ed-idx h2,html.a11y-motion .ed-it.rv{opacity:1!important;transform:none!important;animation:none!important}html.a11y-motion .ed-it .tondi img{opacity:1!important;scale:1!important;animation:none!important}
html.a11y-motion .ed-it::after{transform:none;animation:none}
@media (prefers-reduced-motion:reduce){.logo-wrap svg{clip-path:none;filter:none;transform:none;animation:none}.ed-in>*,.ed-idx h2,.ed-it.rv{opacity:1!important;transform:none!important;animation:none!important}.ed-it .tondi img{opacity:1!important;scale:1!important;animation:none!important}}
/* indice home: percorso a medaglioni sfalsati */
.ed-path{position:relative;display:flex;flex-direction:column;gap:12px;padding:6px 0}
.ed-path::before{content:"";position:absolute;left:calc(8% + 34px);top:30px;bottom:30px;width:2px;background:repeating-linear-gradient(transparent 0 6px,rgba(255,255,255,.35) 6px 12px);display:none}
.ed-it2{position:relative;display:flex;align-items:center;gap:16px;width:min(440px,92%);margin-left:var(--x);padding:8px 18px 8px 8px;border-radius:60px;background:rgba(255,255,255,.1);backdrop-filter:blur(6px);color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.18);opacity:0;transform:translateX(50px);animation:edIdx .9s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(.7s + var(--d));transition:background .3s,box-shadow .3s}
.ed-it2 .ph{flex:none;width:72px;height:72px;border-radius:50%;background-size:cover;background-position:center;border:3px solid #fff;box-shadow:0 6px 18px rgba(0,0,0,.3);transition:transform .35s cubic-bezier(.2,1.4,.4,1)}
.ed-it2 small{display:block;font:800 10.5px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--verde)}
.ed-it2 b{display:block;font:800 17px/1.2 var(--sans);margin-top:3px}
.ed-it2 .go{margin-left:auto;width:34px;height:34px;flex:none;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.15);font:700 16px var(--sans);transition:.3s}
.ed-it2:hover,.ed-it2:focus-visible{background:rgba(255,255,255,.95);color:#2b2722;box-shadow:0 12px 30px rgba(0,0,0,.25)}
.ed-it2:hover small{color:var(--verde-d)}
.ed-it2:hover .ph{transform:scale(1.15) rotate(-6deg)}
.ed-it2:hover .go{background:var(--verde);color:#2b2722;transform:translateX(4px)}
html.a11y-motion .ed-it2{opacity:1;transform:none;animation:none}
@media (prefers-reduced-motion:reduce){.ed-it2{opacity:1;transform:none;animation:none}}
@media (max-width:900px){.ed-it2{margin-left:0;width:100%}}

/* ---------- guida sfogliabile (nuovo lettore) ---------- */
.gd{background:radial-gradient(ellipse at 50% 30%,#4a4238,#1d1a16 70%);color:#fff;padding:calc(var(--header-h) + 26px) 0 30px;min-height:100vh}
.gd:fullscreen{padding-top:20px;overflow:auto}
.gd-top{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:18px}
.gd-top .kicker{color:var(--verde)}
.gd-top h1{margin:4px 0 0;font:800 clamp(26px,3vw,40px) var(--sans)}
.gd-tools{display:flex;gap:8px}
.gd-t{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 14px;border-radius:22px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.06);color:#fff;font:700 13px var(--sans);text-decoration:none;cursor:pointer}
.gd-t svg{width:18px;height:18px}
.gd-t:hover,.gd-t.on{background:var(--verde);color:#2b2722;border-color:var(--verde)}
.gd-stage{position:relative;display:flex;flex-direction:column;align-items:center}
.gd-stage[hidden],.gd-thumbs[hidden]{display:none}
.gd-book{--h:min(74vh,880px);position:relative;display:flex;height:var(--h);perspective:2600px;transition:transform .6s cubic-bezier(.2,.8,.2,1);filter:drop-shadow(0 24px 40px rgba(0,0,0,.55))}
.gd-book.front{transform:translateX(-25%)}.gd-book.back{transform:translateX(25%)}
.gd-pg{height:100%;aspect-ratio:837/1406;background:#f4f1ec;overflow:hidden;cursor:zoom-in}
.gd-pg img{display:block;width:100%;height:100%;object-fit:cover;user-select:none;-webkit-user-drag:none}
.gd-pg.l{border-radius:6px 0 0 6px;box-shadow:inset -22px 0 30px -18px rgba(0,0,0,.35)}
.gd-pg.r{border-radius:0 6px 6px 0;box-shadow:inset 22px 0 30px -18px rgba(0,0,0,.35)}
.gd-pg.l img{mask-image:linear-gradient(90deg,#000 92%,rgba(0,0,0,.82))}
.gd-pg.r img{mask-image:linear-gradient(270deg,#000 92%,rgba(0,0,0,.82))}
.gd-pg.empty{background:transparent;box-shadow:none;cursor:default}
.gd-pg.one{border-radius:6px}
.gd-leaf{position:absolute;top:0;height:100%;width:50%;transform-style:preserve-3d;transition:transform .85s cubic-bezier(.45,.05,.25,1);z-index:5;pointer-events:none}
.gd-leaf.fw{left:50%;transform-origin:left center}.gd-leaf.fw.go{transform:rotateY(-180deg)}
.gd-leaf.bw{left:0;transform-origin:right center}.gd-leaf.bw.go{transform:rotateY(180deg)}
.gd-leaf .f,.gd-leaf .b{position:absolute;inset:0;backface-visibility:hidden;overflow:hidden;background:#f4f1ec}
.gd-leaf .b{transform:rotateY(180deg)}
.gd-leaf img{width:100%;height:100%;object-fit:cover}
.gd-leaf .sh{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.25),transparent 40%);opacity:0;transition:opacity .85s}
.gd-leaf.go .sh{opacity:1}
.gd-book.out-l{transform:translateX(-40px);opacity:0;transition:.26s}.gd-book.out-r{transform:translateX(40px);opacity:0;transition:.26s}
.gd-book.in-r{animation:gdin-r .32s ease}.gd-book.in-l{animation:gdin-l .32s ease}
@keyframes gdin-r{from{transform:translateX(40px);opacity:0}}@keyframes gdin-l{from{transform:translateX(-40px);opacity:0}}
.gd-nav{position:absolute;top:calc(var(--hh,37vh));z-index:6;width:58px;height:58px;border-radius:50%;border:0;background:var(--verde);color:#2b2722;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 22px rgba(0,0,0,.45);transition:transform .2s,opacity .2s}
.gd-nav svg{width:26px;height:26px}
.gd-nav.prev{left:3vw}.gd-nav.next{right:3vw}
.gd-nav:hover{transform:scale(1.1)}.gd-nav:disabled{opacity:0;pointer-events:none}
.gd-hint{margin:16px 0 0;font:500 12.5px var(--sans);color:rgba(255,255,255,.6)}
.gd-thumbs{display:flex;gap:8px;overflow-x:auto;padding:16px max(16px,calc(50vw - 560px)) 6px;scrollbar-width:thin}
.gd-thumbs button,.gd-grid button{position:relative;flex:none;border:0;padding:0;background:none;cursor:pointer;border-radius:5px;overflow:hidden;opacity:.55;transition:opacity .2s,transform .2s,box-shadow .2s}
.gd-thumbs img{display:block;height:84px;width:auto}
.gd-thumbs span,.gd-grid span{position:absolute;right:4px;bottom:4px;font:800 10px var(--sans);background:rgba(0,0,0,.65);color:#fff;padding:1px 5px;border-radius:6px}
.gd-thumbs button:hover,.gd-thumbs button.on{opacity:1;transform:translateY(-3px)}
.gd-thumbs button.on{box-shadow:0 0 0 3px var(--verde)}
.gd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:16px;max-width:1200px;margin:10px auto 0;padding:0 16px}
.gd-grid[hidden]{display:none}
.gd-grid button{opacity:1}.gd-grid img{display:block;width:100%;height:auto}
.gd-grid button:hover{transform:translateY(-4px);box-shadow:0 0 0 3px var(--verde),0 10px 24px rgba(0,0,0,.4)}
.gd-zoom{position:fixed;inset:0;z-index:3500;background:rgba(15,13,11,.94);display:flex;justify-content:center;cursor:zoom-in}
.gd-zoom[hidden]{display:none}
.gd-zoom .zi{height:100%;overflow:auto;padding:20px}
.gd-zoom img{display:block;height:calc(100vh - 40px);width:auto;margin:0 auto;border-radius:4px;transition:height .3s}
.gd-zoom.big{cursor:zoom-out}.gd-zoom.big img{height:auto;width:min(1400px,96vw)}
.gd-zoom .x{position:fixed;right:20px;top:16px;width:44px;height:44px;border-radius:50%;border:0;background:var(--verde);color:#2b2722;font-size:24px;cursor:pointer;z-index:2}
@media (max-width:820px){.gd-book{--h:min(68vh,640px)}.gd-book.front,.gd-book.back{transform:none}.gd-nav{width:46px;height:46px}.gd-nav.prev{left:6px}.gd-nav.next{right:6px}.gd-t span{display:none}}
/* titolo mappa home: scheda in vetro, sobria */
.hmap-title{max-width:400px;padding:22px 24px 20px;border-radius:20px;background:rgba(20,18,15,.55);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.14);box-shadow:0 14px 40px rgba(0,0,0,.35)}
.hmap-title h2{font:800 clamp(28px,2.6vw,38px)/1.05 var(--sans)!important;margin:10px 0 10px!important;text-shadow:none!important}
.hmap-title p{font:400 15px/1.5 var(--sans)!important}
.hmap-stage::after{background:linear-gradient(0deg,rgba(20,18,15,.6) 0%,transparent 24%)!important}
.gd-book{--h:min(74vh,880px,calc((100vw - 170px) * 1406 / 837 / 2))}
@media (max-width:820px){.gd-book{--h:min(68vh,640px,calc((100vw - 40px) * 1406 / 837))}}
/* indice home: elenco numerato */
.ed-list{list-style:none;margin:0;padding:0;position:relative;z-index:1;counter-reset:none}
.ed-row{position:relative;display:grid;grid-template-columns:78px 1fr 64px;align-items:center;gap:16px;padding:14px 16px 14px 6px;color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.18);opacity:0;transform:translateY(18px);animation:edUp .8s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(.7s + var(--d));transition:padding .35s,background .3s;border-radius:14px}
.ed-list li:first-child .ed-row{border-top:1px solid rgba(255,255,255,.18)}
.ed-row .nm{font:800 64px/1 var(--sans);color:transparent;-webkit-text-stroke:2px rgba(255,255,255,.75);text-align:center;transition:color .3s,-webkit-text-stroke-color .3s,transform .4s cubic-bezier(.2,1.4,.4,1)}
.ed-row b{display:block;font:800 19px/1.2 var(--sans)}
.ed-row i{display:block;margin-top:4px;font:500 13px/1.35 var(--sans);font-style:normal;color:rgba(255,255,255,.75)}
.ed-row .ph{position:relative;width:60px;height:60px;border-radius:50%;background-size:cover;background-position:center;border:3px solid rgba(255,255,255,.85);transition:transform .4s cubic-bezier(.2,1.4,.4,1)}
.ed-row .ph em{position:absolute;right:-8px;top:-6px;font:800 9.5px var(--sans);font-style:normal;background:var(--verde);color:#2b2722;padding:2px 5px;border-radius:8px}
.ed-row:hover,.ed-row:focus-visible{padding-left:16px;background:rgba(0,0,0,.18)}
.ed-row:hover .nm,.ed-row:focus-visible .nm{color:var(--verde);-webkit-text-stroke-color:var(--verde);transform:scale(1.08)}
.ed-row:hover .ph{transform:scale(1.15)}
html.a11y-motion .ed-row{opacity:1;transform:none;animation:none}
@media (prefers-reduced-motion:reduce){.ed-row{opacity:1;transform:none;animation:none}}
@media (max-width:600px){.ed-row{grid-template-columns:52px 1fr 48px}.ed-row .nm{font-size:44px}.ed-row .ph{width:46px;height:46px}}
/* istruzioni al primo utilizzo */
.help-ov{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;padding:20px;background:rgba(15,13,11,.6);backdrop-filter:blur(4px);animation:hov .3s ease}
.help-ov.out{opacity:0;transition:opacity .25s}
@keyframes hov{from{opacity:0}}
.help-c{width:min(520px,100%);background:#fff;color:#2b2722;border-radius:22px;padding:26px 26px 22px;box-shadow:0 30px 70px rgba(0,0,0,.45);border-top:6px solid var(--verde);animation:hmc .4s cubic-bezier(.2,.8,.2,1)}
.help-c .kicker{color:var(--verde-d)}
.help-c h3{margin:4px 0 14px;font:800 24px var(--sans)}
.help-c ol{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:12px}
.help-c li{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:center;opacity:0;transform:translateX(-10px);animation:edIdx .5s ease forwards;animation-delay:calc(.15s + var(--d))}
.help-c .ic{width:42px;height:42px;border-radius:12px;background:#2b2722;color:var(--verde);display:grid;place-items:center}
.help-c .ic svg{width:22px;height:22px}
.help-c p{margin:0;font:500 14.5px/1.45 var(--sans);color:#4a443c}
.help-c .btn{width:100%;justify-content:center}
/* definizione: versione semplice, senza icona né cerchi */
.defb{background:#f4f1ec!important;color:#2b2722;padding:56px 0!important}
.defb::before{display:none!important}
.defb::after{display:none!important}
.defb-in{display:block!important;max-width:900px;border-left:6px solid var(--verde);padding:6px 0 6px 32px!important;margin:0 auto}
.defb-k{color:var(--verde-d)!important}.defb-k::before{background:var(--verde-d)!important}
.defb-term{color:#2b2722!important;font-size:clamp(34px,4.2vw,56px)!important;margin:10px 0 2px!important}
.defb-term small{color:var(--verde-d)!important}
.defb-ety{color:#6d655a!important}
.defb-def{color:#2b2722!important;border-left:0!important;padding-left:0!important;margin-top:14px!important;font-size:clamp(18px,1.6vw,22px)!important}
@media (max-width:800px){.defb-in{padding-left:20px!important;margin:0 16px}}

/* ===== v50 · definizione in stile guida cartacea (capolettera G di p.2) ===== */
.defb{background:#fff!important;color:#524d47!important;padding:0!important;position:relative;overflow:hidden;min-height:clamp(300px,34vw,480px)}
.defb::before,.defb::after{display:none!important}
.defb-bar{position:absolute;left:0;top:42%;bottom:0;width:clamp(18px,3vw,46px);background:var(--verde);transform:scaleY(0);transform-origin:bottom;transition:transform 1s cubic-bezier(.2,.8,.2,1) .2s}
.defb-in{position:relative;display:grid!important;grid-template-columns:minmax(200px,38%) 1fr;align-items:center;max-width:1180px!important;border:0!important;padding:0!important;margin:0 auto;min-height:inherit}
.defb-L{font:500 clamp(300px,40vw,600px)/.74 var(--serif);color:#524d47;margin:-.04em 0 -.12em -.06em;justify-self:start;user-select:none;opacity:0;transform:translateX(-30px);transition:opacity .9s,transform 1.1s cubic-bezier(.2,.8,.2,1)}
.defb-def{margin:0!important;padding:40px 0 40px clamp(0px,1vw,20px)!important;max-width:620px;font:400 clamp(21px,2.1vw,29px)/1.42 var(--serif)!important;color:#524d47!important;border:0!important;opacity:0;transform:translateY(12px);transition:opacity .8s .35s,transform .8s .35s}
.defb-def b{font-weight:700;font-size:1.06em;color:#3e3a35}
.defb.in .defb-L,.defb.in .defb-def{opacity:1;transform:none}.defb.in .defb-bar{transform:none}
html.a11y-motion .defb-L,html.a11y-motion .defb-def,html.a11y-motion .defb-bar{opacity:1!important;transform:none!important}
html.a11y-readable .defb-def{font-family:"Atkinson Hyperlegible",Verdana,sans-serif!important}
@media (max-width:800px){.defb{min-height:0}.defb-in{grid-template-columns:1fr;padding:0 16px 0 calc(16px + 18px)!important}.defb-L{font-size:220px;margin:10px 0 -40px -8px}.defb-def{padding:0 0 44px!important;font-size:21px!important;position:relative}.defb-bar{top:30%}}
.defb-in{grid-template-columns:auto 1fr!important;column-gap:clamp(20px,4vw,64px)!important;padding:28px 24px 0 clamp(40px,6vw,90px)!important}
.defb-L{margin:0 0 -.1em!important;font-size:clamp(260px,32vw,500px)!important}
.defb-def{font-size:clamp(22px,2.3vw,31px)!important;max-width:660px;padding:30px 0 50px!important}
@media (max-width:800px){.defb-in{grid-template-columns:1fr!important;padding:10px 16px 0 40px!important}.defb-L{font-size:200px!important;margin:0 0 -30px!important}.defb-def{font-size:21px!important}}

/* ===== v52 · definizione: dizionario compatto su fondo verde ===== */
.defb{background:var(--verde)!important;color:#2b2722!important;padding:34px 0!important;min-height:0!important}
.defb-bar{display:none}
.defb-in{display:flex!important;align-items:center;gap:clamp(18px,3vw,36px);max-width:880px!important;padding:0 24px!important;margin:0 auto;min-height:0!important;border:0!important}
.defb-L{flex:none;font:500 clamp(96px,10vw,140px)/.8 var(--serif)!important;color:#2b2722!important;opacity:.88;margin:0!important;transform:none;transition:opacity .8s}
.defb-tx{min-width:0}
.defb-k{display:inline-flex;align-items:center;gap:8px;font:800 10.5px var(--sans)!important;letter-spacing:.18em;text-transform:uppercase;color:#2b2722!important;opacity:.7}
.defb-k::before{content:"";width:22px;height:2px;background:#2b2722!important}
.defb-term{margin:6px 0 0!important;display:flex;align-items:baseline;flex-wrap:wrap;gap:10px;font:700 clamp(24px,2.4vw,32px)/1.1 var(--serif)!important;color:#2b2722!important;letter-spacing:0}
.defb-term small{font:italic 400 17px var(--serif)!important;color:#2b2722!important;opacity:.75}
.defb-ety{margin:4px 0 0!important;font:italic 400 16px/1.4 var(--serif)!important;color:#3e3a35!important}
.defb-def{margin:10px 0 0!important;padding:0!important;max-width:640px;font:400 clamp(16px,1.35vw,18.5px)/1.5 var(--serif)!important;color:#2b2722!important;border:0!important;opacity:1;transform:none}
.defb .defb-L,.defb .defb-def{opacity:1}
@media (max-width:600px){.defb{padding:26px 0!important}.defb-in{gap:14px;padding:0 16px!important;align-items:flex-start}.defb-L{font-size:76px!important}}
/* ===== v53 · selettore sfondi/livelli per tipologia ===== */
.leaflet-control-layers{border:0!important;border-radius:12px!important;box-shadow:0 8px 24px rgba(0,0,0,.25)!important;font:500 13px var(--sans)}
.leaflet-control-layers-expanded{padding:10px 14px 12px!important;max-height:70vh;overflow:auto;min-width:210px}
.leaflet-control-layers-base::before,.leaflet-control-layers-overlays::before{display:block;font:800 10.5px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:#2b2722;margin:2px 0 4px}
.leaflet-control-layers-base::before{content:"Sfondo"}
.leaflet-control-layers-overlays::before{content:"Sovrapponi"}
.leaflet-control-layers-separator{margin:8px -14px!important;border-top-color:#e6e1d8!important}
.leaflet-control-layers label{margin:1px 0;cursor:pointer}
.leaflet-control-layers label>span,.leaflet-control-layers label>div{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.lg-h{flex-basis:100%;display:block;font:700 10px var(--sans);font-style:normal;letter-spacing:.12em;text-transform:uppercase;color:var(--verde-d);margin:8px 0 2px}
.leaflet-control-layers label:first-child .lg-h{margin-top:0}
.lg-t{padding:2px 0}
.leaflet-control-layers input{accent-color:var(--verde-d);margin:0 6px 0 0!important}
.hs-ov{mix-blend-mode:multiply}
.leaflet-control-layers label>span>span{display:contents}
.lg-h{order:-1}
/* ===== v54 · SCUOLE ===== */
.mn-tiles a:last-child:nth-child(3n+1){grid-column:1/-1;aspect-ratio:auto;flex-direction:row;padding:12px}
.btn svg{width:18px;height:18px}
.btn.sm{padding:9px 14px;font-size:11.5px;gap:7px}
.sec:not(.taupe) .btn.ghost,.sc-doc .btn.ghost,.ks-bar .btn.ghost,.qz-pg .btn.ghost{background:transparent;color:var(--ink);border-color:rgba(43,39,34,.3)}
.sec:not(.taupe) .btn.ghost:hover,.qz-pg .btn.ghost:hover{background:var(--ink);color:#fff}
.sc-pg .kicker{display:inline-flex;align-items:center;gap:8px}.sc-pg .kicker svg{width:18px;height:18px}
.sc-steps{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;counter-reset:none}
.sc-steps li{position:relative;background:#fff;border-radius:18px;padding:28px 24px 24px;box-shadow:0 10px 30px rgba(43,39,34,.08)}
.sc-steps li>svg{width:40px;height:40px;color:var(--verde-d)}
.sc-steps h3{font:800 18px var(--sans);margin:12px 0 6px}.sc-steps p{margin:0;font:400 15.5px/1.5 var(--sans);color:var(--soft)}
.sc-n{position:absolute;right:18px;top:6px;font:400 70px/1 var(--serif);color:var(--verde-l)}
.sc-age{margin:18px 0 0;font:italic 16px var(--serif);color:var(--soft)}
.sc-sub{font:800 13px var(--sans);letter-spacing:.16em;text-transform:uppercase;margin:44px 0 14px;color:#fff}
.sk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;margin-top:24px}
.sk-grid.two{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:0}
.sk-card{background:#fff;color:var(--ink);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 10px 26px rgba(0,0,0,.14)}
.sk-ph{position:relative;display:block;aspect-ratio:16/10;background-size:cover;background-position:center;transition:transform .4s}
.sk-card:hover .sk-ph{transform:scale(1.04)}
.sk-ph em{position:absolute;left:12px;top:12px;font:800 10px var(--sans);font-style:normal;letter-spacing:.12em;text-transform:uppercase;background:var(--verde);color:var(--ink);padding:5px 9px;border-radius:20px}
.sk-bd{padding:16px 18px 18px;display:flex;flex-direction:column;flex:1}
.sk-bd h3{font:800 18px/1.2 var(--sans);margin:0 0 4px}.sk-bd p{margin:0 0 14px;font:400 14px/1.4 var(--sans);color:var(--soft);flex:1}
.sk-acts{display:flex;gap:8px;flex-wrap:wrap}
.sq-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px;margin-top:24px}
.sq-card{display:flex;gap:16px;align-items:center;background:#fff;border-radius:18px;padding:12px;text-decoration:none;color:var(--ink);box-shadow:0 8px 24px rgba(43,39,34,.08);transition:transform .2s,box-shadow .2s}
.sq-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(43,39,34,.16)}
.sq-ph{flex:none;width:92px;height:92px;border-radius:50%;background-size:cover;background-position:center;border:4px solid var(--verde)}
.sq-bd small{display:block;font:700 10.5px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--verde-d)}
.sq-bd b{display:block;font:800 17px/1.2 var(--sans);margin:4px 0 6px}
.sq-go{font:700 13px var(--sans);color:var(--taupe-d)}
.sq-best{display:inline-flex;align-items:center;gap:5px;font:700 13px var(--sans);color:var(--verde-d)}.sq-best svg{width:15px;height:15px}
.sc-doc-in{background:var(--verde);border-radius:22px;padding:34px 36px}
.sc-doc-in h2{margin:0 0 10px}.sc-doc-in ul{margin:0 0 20px;padding-left:20px;font:400 16px/1.55 var(--sans)}
.sc-doc-in .btn{background:var(--ink);color:#fff;box-shadow:none}
@media (max-width:800px){.sc-steps{grid-template-columns:1fr}.sc-doc-in{padding:26px 22px}}

/* kit stampabile */
.ks-pg{padding:calc(var(--header-h) + 24px) 16px 60px;background:#e9e5de;min-height:100vh}
.ks-bar{max-width:800px;margin:0 auto 18px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ks-tip{font:400 13px var(--sans);color:var(--soft)}
.ks-sheet{max-width:800px;margin:0 auto 24px;background:#fff;padding:44px 50px;box-shadow:0 10px 30px rgba(0,0,0,.12);font-family:var(--sans);color:var(--ink)}
.ks-head{display:flex;gap:20px;align-items:center;background:var(--taupe);color:#fff;margin:-44px -50px 26px;padding:24px 50px;border-bottom:6px solid var(--verde)}
.ks-logo{width:96px;flex:none}
.ks-head small{font:700 10.5px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--verde-l)}
.ks-head h1{font:800 28px/1.15 var(--sans);margin:4px 0 2px}.ks-head p{margin:0;font:italic 17px var(--serif);opacity:.9}
.ks-name{display:flex;gap:18px;margin-bottom:20px;font:600 13px var(--sans)}
.ks-name span{flex:1;display:flex;align-items:flex-end;gap:6px}.ks-name span:first-child{flex:2}
.ks-line{display:block;flex:1;min-height:26px;border-bottom:1.5px dotted #9a9286}
.ks-box p .ks-line,.ks-sign .ks-line{display:inline-block;width:60%;vertical-align:bottom}
.ks-box{margin:0 0 18px;break-inside:avoid}
.ks-box h2{display:flex;align-items:center;gap:10px;font:800 13px var(--sans);letter-spacing:.14em;text-transform:uppercase;margin:0 0 8px;color:var(--taupe-dd)}
.ks-box h2::before{content:"";width:16px;height:16px;border-radius:50%;background:var(--verde);flex:none}
.ks-fig{margin:0 0 18px}.ks-fig img{width:100%;height:240px;object-fit:cover;border-radius:12px;display:block}
.ks-fig figcaption{font:400 10.5px var(--sans);color:var(--soft);margin-top:4px}
.ks-read p{font:400 16.5px/1.6 var(--serif);margin:0 0 8px}
.ks-words{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0}
.ks-words div{background:#f4f1ec;border-radius:10px;padding:10px 12px;border-left:4px solid var(--verde)}
.ks-words dt{font:800 14px var(--sans)}.ks-words dd{margin:3px 0 0;font:400 13px/1.4 var(--sans)}
.ks-act li,.ks-teacher li{font:400 15px/1.5 var(--sans);margin-bottom:6px}
.ks-q{margin-bottom:10px}.ks-q b{display:block;font:600 14.5px var(--sans)}
.ks-grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.ks-frame{height:300px;border:2px dashed #b8b0a3;border-radius:12px}
.ks-rules{list-style:none;padding:0;margin:0 0 22px;display:grid;grid-template-columns:1fr 1fr;gap:12px;counter-reset:r}
.ks-rules li{counter-increment:r;background:#f4f1ec;border-radius:14px;padding:16px 16px 16px 58px;position:relative}
.ks-rules li::before{content:counter(r);position:absolute;left:14px;top:14px;width:32px;height:32px;border-radius:50%;background:var(--verde);display:grid;place-items:center;font:800 16px var(--sans)}
.ks-rules b{display:block;font:800 15.5px var(--sans)}.ks-rules span{font:400 14px/1.4 var(--sans)}
.ks-url{display:block;font:400 11px var(--sans);color:var(--soft);word-break:break-all}
.ks-teacher .ks-head{background:var(--ink)}
@media (max-width:700px){.ks-sheet{padding:28px 20px}.ks-head{margin:-28px -20px 20px;padding:20px}.ks-words,.ks-grid2,.ks-rules{grid-template-columns:1fr}.ks-name{flex-direction:column;gap:6px}}

/* quiz */
.qz-pg{min-height:100vh;background:linear-gradient(160deg,#f4f1ec,#e6e0d4);padding:calc(var(--header-h) + 26px) 16px 60px}
.qz-wrap{max-width:860px;margin:0 auto;font-family:var(--sans)}
.qz-start{display:grid;grid-template-columns:300px 1fr;gap:36px;align-items:center;background:#fff;border-radius:26px;padding:34px;box-shadow:0 18px 40px rgba(43,39,34,.12)}
.qz-ph{display:block;aspect-ratio:1;border-radius:50%;background-size:cover;background-position:center;border:8px solid var(--verde)}
.qz-start h1{font:800 32px/1.1 var(--sans);margin:6px 0 10px}.qz-start p{font:400 16px/1.5 var(--sans);color:var(--soft)}
.qz-form{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin:18px 0 12px}
.qz-form label{display:flex;flex-direction:column;gap:4px;font:700 12px var(--sans);letter-spacing:.06em;text-transform:uppercase;flex:1;min-width:140px}
.qz-form input{font:400 17px var(--sans);padding:11px 14px;border:2px solid #ddd6ca;border-radius:12px}
.qz-form input:focus{outline:none;border-color:var(--verde-d)}
.qz-back{font:600 14px var(--sans);color:var(--taupe-d)}
.qz-top{display:flex;align-items:center;gap:14px;margin-bottom:16px;font:800 15px var(--sans)}
.qz-x{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#fff;text-decoration:none;color:var(--ink);box-shadow:0 4px 12px rgba(0,0,0,.1)}
.qz-prog{flex:1;height:12px;border-radius:12px;background:rgba(43,39,34,.12);overflow:hidden}.qz-prog span{display:block;height:100%;background:var(--verde);border-radius:12px;transition:width .5s}
.qz-card{background:#fff;border-radius:26px;overflow:hidden;box-shadow:0 18px 40px rgba(43,39,34,.12);animation:qzIn .45s cubic-bezier(.2,.8,.2,1)}
@keyframes qzIn{from{opacity:0;transform:translateY(18px)}}
.qz-img{height:clamp(200px,34vh,330px);background-size:cover;background-position:center}
.qz-body{padding:26px 30px 30px}.qz-body h2{font:800 clamp(20px,2.4vw,26px)/1.25 var(--sans);margin:0 0 18px}
.qz-opts{display:grid;gap:10px}
.qz-o{display:flex;align-items:center;gap:14px;text-align:left;font:600 17px/1.3 var(--sans);color:var(--ink);background:#f4f1ec;border:2px solid transparent;border-radius:16px;padding:14px 16px;cursor:pointer;transition:border-color .2s,background .2s,transform .15s}
.qz-o span{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#fff;font:800 15px var(--sans)}
.qz-o:hover:not(:disabled){border-color:var(--verde);transform:translateX(4px)}
.qz-o:disabled{cursor:default;opacity:.6}
.qz-o.ok{opacity:1;background:#eef5c4;border-color:var(--verde-d)}.qz-o.ok span{background:var(--verde-d);color:#fff}
.qz-o.no{opacity:1;background:#f8e1dc;border-color:#c96a55}.qz-o.no span{background:#c96a55;color:#fff}
.qz-fb{margin-top:16px;display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.qz-fb .good,.qz-fb .bad{font:400 16px/1.5 var(--sans);padding:14px 16px;border-radius:14px;background:#f4f1ec;animation:qzIn .35s}
.qz-fb .good b{color:var(--verde-d)}.qz-fb .bad b{color:#b0543f}
.qz-end{display:flex;flex-direction:column;gap:20px}
.qz-cert{text-align:center;background:var(--taupe);color:#fff;border-radius:26px;padding:34px 28px;border-bottom:10px solid var(--verde)}
.qz-logo{width:120px}.qz-cert small{display:block;margin-top:12px;font:700 11px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--verde-l)}
.qz-cert h1{font:800 28px var(--sans);margin:6px 0 10px}
.qz-stars{display:flex;justify-content:center;gap:8px}.qz-stars span{width:48px;height:48px;color:rgba(255,255,255,.25)}.qz-stars span.on{color:var(--verde);animation:qzStar .5s cubic-bezier(.2,1.6,.4,1) backwards}
.qz-stars span:nth-child(2){animation-delay:.15s}.qz-stars span:nth-child(3){animation-delay:.3s}
@keyframes qzStar{from{transform:scale(0) rotate(-40deg)}}
.qz-score{font:400 19px var(--sans);margin:12px 0 4px}.qz-score b{font-size:40px;color:var(--verde)}
.qz-msg{font:italic 20px var(--serif);margin:0 0 10px}.qz-who{font:600 14px var(--sans);opacity:.85;margin:0}
.qz-acts{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.qz-rev{background:#fff;border-radius:20px;padding:20px 24px 20px 44px;margin:0}
.qz-rev li{padding:8px 0;border-bottom:1px solid #eee7dc;font:400 14px/1.4 var(--sans)}.qz-rev li:last-child{border:0}
.qz-rev b{display:block;font-weight:700}.qz-rev li.ok span{color:var(--verde-d)}.qz-rev li.no span{color:#b0543f}
@media (max-width:700px){.qz-start{grid-template-columns:1fr;padding:24px;text-align:center}.qz-ph{width:180px;margin:0 auto}.qz-body{padding:20px}}

/* stampa: solo il foglio */
@media print{
  @page{size:A4;margin:12mm}
  body{background:#fff!important}
  #top,.top,.drawer,.ks-bar,.f2,footer,.a11y-panel,#a11yRuler,.qz-acts,.qz-x,.skip,.ggx,#ggx,.help-ov{display:none!important}
  .ks-pg,.qz-pg{padding:0!important;background:#fff!important;min-height:0}
  .ks-sheet{box-shadow:none;margin:0;max-width:none;padding:0 0 0}
  .ks-head{margin:0 0 18px;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .ks-teacher{break-before:page}
  .ks-sheet *,.qz-cert,.qz-cert *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .qz-rev{padding-left:24px}
  .rv{opacity:1!important;transform:none!important}
}
.sk-card .btn.ghost{background:transparent!important;color:var(--ink)!important;border:1.5px solid rgba(43,39,34,.3)!important}
.sk-card .btn.ghost:hover{background:var(--ink)!important;color:#fff!important}
/* ===== v56 · home: blocco scuole ===== */
.hsc{background:#fff;padding:80px 0}
.hsc-grid{display:grid;grid-template-columns:minmax(260px,420px) 1fr;gap:clamp(30px,5vw,70px);align-items:center}
.hsc-ph{position:relative;aspect-ratio:1;max-width:420px}
.hsc-ph span{position:absolute;border-radius:50%;background-size:cover;background-position:center;border:6px solid #fff;box-shadow:0 14px 34px rgba(43,39,34,.2)}
.hsc-ph span:nth-child(1){width:68%;height:68%;left:0;top:4%}
.hsc-ph span:nth-child(2){width:46%;height:46%;right:2%;top:0}
.hsc-ph span:nth-child(3){width:50%;height:50%;right:8%;bottom:0}
.hsc-badge{position:absolute;left:10%;bottom:6%;width:104px;height:104px;border-radius:50%;background:var(--verde);display:grid;place-content:center;text-align:center;font:800 22px/1 var(--sans);color:var(--ink);box-shadow:0 10px 24px rgba(143,156,10,.4)}
.hsc-badge small{font:700 12px var(--sans)}
.hsc-tx h2{margin:6px 0 10px}.hsc-tx>p{font:400 17px/1.55 var(--sans);color:var(--soft);margin:0 0 18px;max-width:620px}
.hsc-list{list-style:none;margin:0 0 24px;padding:0;display:grid;gap:12px}
.hsc-list li{position:relative;padding:12px 16px 12px 52px;background:#f4f1ec;border-radius:14px}
.hsc-list li::before{content:"";position:absolute;left:16px;top:15px;width:22px;height:22px;border-radius:50%;background:var(--verde) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232b2722' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 12l4 4 8-8'/%3E%3C/svg%3E") center/14px no-repeat}
.hsc-list b{display:block;font:800 15.5px var(--sans)}.hsc-list span{font:400 14.5px/1.45 var(--sans);color:var(--soft)}
.hsc .btn.ghost{background:transparent;color:var(--ink);border-color:rgba(43,39,34,.3)}.hsc .btn.ghost:hover{background:var(--ink);color:#fff}
@media (max-width:860px){.hsc{padding:54px 0}.hsc-grid{grid-template-columns:1fr}.hsc-ph{max-width:300px;margin:0 auto}}
/* ===== v57 · linguette dei luoghi più riconoscibili ===== */
.it-tabs{display:block!important;background:var(--taupe-dd);padding:14px 16px 0;overflow:visible}
.it-tabs-k{display:block;font:800 10.5px var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--verde);margin:0 0 10px 4px}
.it-tabs-row{display:flex;gap:8px;overflow-x:auto}
.it-tabs button{flex:1;min-width:220px;display:flex!important;align-items:center;gap:14px;padding:14px 18px 16px!important;border:1px solid rgba(255,255,255,.18)!important;border-bottom:0!important;border-radius:14px 14px 0 0;background:rgba(255,255,255,.07)!important;color:rgba(255,255,255,.85)!important;position:relative;top:1px;transition:background .2s,color .2s,transform .2s}
.it-tabs button:hover:not(.on){background:rgba(255,255,255,.16)!important;color:#fff!important;transform:translateY(-2px)}
.it-tabs button.on{background:#fff!important;color:var(--ink)!important;border-color:#fff!important;box-shadow:inset 0 4px 0 var(--c)}
.it-dot{flex:none;width:18px;height:18px;border-radius:50%;border:3px solid var(--c);background:transparent}
.it-tabs button.on .it-dot{background:var(--c);box-shadow:0 0 0 4px color-mix(in srgb,var(--c) 25%,transparent)}
.it-tl{flex:1;font:800 17px/1.15 var(--sans)}
.it-tl small{display:block;font:500 12px var(--sans);opacity:.75;margin-top:3px}
.it-st{flex:none;font:700 11px var(--sans);letter-spacing:.08em;text-transform:uppercase;padding:5px 10px;border-radius:20px;background:rgba(255,255,255,.14)}
.it-tabs button.on .it-st{background:var(--verde);color:var(--ink)}
.it-tabs button:focus-visible{outline:3px solid var(--verde);outline-offset:2px}
@media (max-width:600px){.it-tabs button{min-width:170px;padding:12px 12px 14px!important;gap:10px}.it-st{display:none}}
/* ===== v59 · "Il progetto in numeri" compatto ===== */
.ed-num2{padding:34px 0 30px!important;background:var(--taupe-d) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='200' viewBox='0 0 600 200' fill='none' stroke='%23ffffff' stroke-opacity='.07' stroke-width='1.2'%3E%3Cpath d='M0 40c100-30 200 30 300 0s200-30 300 0M0 80c100-30 200 30 300 0s200-30 300 0M0 120c100-30 200 30 300 0s200-30 300 0M0 160c100-30 200 30 300 0s200-30 300 0'/%3E%3C/svg%3E")!important}
.ed-num2 .en-head{margin-bottom:16px;align-items:center}
.ed-num2 .en-head h2{font-size:clamp(22px,2.3vw,30px)!important;margin-top:2px}
.ed-num2 .en-b{width:40px;height:40px;font-size:24px}
.ed-num2 .en-track{gap:14px;padding-top:6px;padding-bottom:10px}
.en-it{flex:none;display:flex;align-items:center;gap:16px;width:340px;padding:10px 22px 10px 10px;border-radius:70px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);color:#fff;text-decoration:none;transition:background .25s,transform .25s,border-color .25s}
.en-it:hover,.en-it:focus-visible{background:rgba(255,255,255,.14);border-color:var(--verde);transform:translateY(-3px)}
.en-ph{position:relative;flex:none;width:96px;height:96px;border-radius:50%;background-size:cover;background-position:center;box-shadow:0 0 0 3px var(--verde),0 8px 20px rgba(0,0,0,.3);transition:transform .35s}
.en-it:hover .en-ph{transform:scale(1.06) rotate(-4deg)}
.en-ph .en-ic{position:absolute;left:auto;top:auto;right:-6px;bottom:-4px;width:34px;height:34px;border-radius:50%;background:var(--verde);color:#2b2722;display:grid;place-items:center;box-shadow:0 0 0 3px var(--taupe-d)}
.en-ph .en-ic svg{width:18px;height:18px}
.en-tx{min-width:0}
.en-tx b{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px;font:800 38px/1 var(--sans);letter-spacing:-.02em;color:#fff}
.en-tx b small{font:800 13px var(--sans);color:var(--verde);letter-spacing:0}
.en-tx .lb{display:block;margin-top:5px;font:500 13px/1.32 var(--sans);color:rgba(255,255,255,.85)}
@media (max-width:640px){.en-it{width:290px;gap:12px}.en-ph{width:76px;height:76px}.en-tx b{font-size:30px}}
/* ===== v59 · copertine: sfumatura scura in moltiplica + sfocatura verso il basso ===== */
.hero{isolation:isolate}
.hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;-webkit-backdrop-filter:blur(7px) saturate(1.05);backdrop-filter:blur(7px) saturate(1.05);-webkit-mask-image:linear-gradient(180deg,transparent 42%,rgba(0,0,0,.55) 68%,#000 100%);mask-image:linear-gradient(180deg,transparent 42%,rgba(0,0,0,.55) 68%,#000 100%)}
.hero::before{z-index:1;mix-blend-mode:multiply;background:linear-gradient(180deg,rgba(20,18,15,0) 25%,rgba(28,24,20,.45) 55%,rgba(14,12,10,.92) 100%)!important}
.hero .in,.hero .num,.hero .hcred{z-index:2}
html.a11y-contrast .hero::before{background:linear-gradient(180deg,rgba(0,0,0,.4),rgba(0,0,0,.95))!important}
/* ===== v59 · SCUOLE – identità propria (quaderno, spaccato, medaglie) ===== */
.sx-pg{background:#fbfaf6}
.sx-paper{background-color:#fbfaf6;background-image:linear-gradient(rgba(143,156,10,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(143,156,10,.10) 1px,transparent 1px);background-size:28px 28px}
.sx-chip{display:inline-flex;align-items:center;gap:7px;font:800 11px var(--sans);letter-spacing:.14em;text-transform:uppercase;background:var(--ink);color:var(--verde);padding:7px 12px;border-radius:30px;transform:rotate(-1.5deg)}
.sx-chip svg{width:15px;height:15px}.sx-chip.lt{background:var(--verde);color:var(--ink)}
.sx-hero{padding:calc(var(--header-h) + 34px) 0 30px}
.sx-hero-in{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(24px,4vw,60px);align-items:center}
.sx-hero h1{font:800 clamp(38px,5vw,68px)/1.02 var(--sans);letter-spacing:-.02em;margin:16px 0 14px;color:var(--ink)}
.sx-hero mark{background:linear-gradient(transparent 58%,var(--verde) 58%,var(--verde) 90%,transparent 90%);color:inherit;padding:0 .08em}
.sx-hero-tx>p{font:400 17.5px/1.55 var(--sans);color:var(--soft);max-width:520px;margin:0}
.sx-cta{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 14px}
.btn.sx-dark{background:var(--ink);color:#fff;box-shadow:0 6px 18px rgba(0,0,0,.2)}.btn.sx-dark:hover{background:#000}
.sx-age{font:italic 15px var(--serif)!important;color:var(--taupe-d)!important}
.sx-earth-w{position:relative;filter:drop-shadow(0 18px 30px rgba(60,50,40,.25))}
.sx-earth{width:100%;height:auto;display:block}
.sx-water{animation:sxFlow 2.4s linear infinite}@keyframes sxFlow{to{stroke-dashoffset:-48}}
.sx-hs{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;gap:0;text-decoration:none;color:#fff;z-index:2}
.sx-hs b{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--c);font:800 18px var(--sans);border:3px solid #fff;box-shadow:0 6px 14px rgba(0,0,0,.3);animation:sxPulse 2.6s ease-in-out infinite}
.sx-hs:nth-of-type(2) b{animation-delay:.5s}.sx-hs:nth-of-type(3) b{animation-delay:1s}.sx-hs:nth-of-type(4) b{animation-delay:1.5s}.sx-hs:nth-of-type(5) b{animation-delay:2s}
@keyframes sxPulse{50%{box-shadow:0 0 0 9px color-mix(in srgb,var(--c) 30%,transparent),0 6px 14px rgba(0,0,0,.3)}}
.sx-hs span{max-width:0;overflow:hidden;white-space:nowrap;font:800 13px var(--sans);background:#fff;color:var(--ink);border-radius:0 20px 20px 0;padding:6px 0;margin-left:-6px;transition:max-width .35s,padding .35s;box-shadow:0 4px 10px rgba(0,0,0,.2)}
.sx-hs:hover span,.sx-hs:focus-visible span{max-width:140px;padding:6px 12px 6px 12px}
.sx-note{position:absolute;left:4%;bottom:-6px;font:italic 14px var(--serif);color:var(--taupe-d)}
html.a11y-motion .sx-water,html.a11y-motion .sx-hs b{animation:none}
.sx-steps-s{background:var(--ink);color:#fff;padding:20px 0}
.sx-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;position:relative}
.sx-steps li{display:grid;grid-template-columns:52px 1fr;column-gap:14px;align-items:center}
.sx-st{grid-row:span 2;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--verde);color:var(--ink)}
.sx-st svg{width:26px;height:26px}
.sx-steps b{font:800 15px var(--sans);color:var(--verde)}.sx-steps li>span:last-child{font:400 13.5px/1.35 var(--sans);opacity:.85}
.sx-sec{padding:64px 0}
.sx-h{max-width:720px;margin-bottom:30px}.sx-h h2{font:800 clamp(28px,3.4vw,42px)/1.05 var(--sans);margin:14px 0 8px}.sx-h p{font:400 16.5px/1.5 var(--sans);color:var(--soft);margin:0}
.sx-nbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:34px 26px}
.sx-nb{position:relative;background:var(--c);color:#fff;border-radius:6px 18px 18px 6px;padding:20px 18px 16px 34px;transform:rotate(var(--r));box-shadow:6px 8px 0 rgba(43,39,34,.15),0 10px 24px rgba(43,39,34,.18);transition:transform .3s,box-shadow .3s}
.sx-nb::before{content:"";position:absolute;left:8px;top:14px;bottom:14px;width:12px;background:radial-gradient(circle,#fbfaf6 4px,transparent 5px) 0 0/12px 20px repeat-y}
.sx-nb:hover{transform:rotate(0) translateY(-6px);box-shadow:8px 12px 0 rgba(43,39,34,.15),0 18px 34px rgba(43,39,34,.24)}
.sx-tag{display:inline-block;font:800 10px var(--sans);letter-spacing:.14em;text-transform:uppercase;background:rgba(0,0,0,.22);padding:4px 9px;border-radius:20px}
.sx-pol{position:relative;display:block;background:#fff;padding:8px 8px 22px;margin:14px 0 14px;transform:rotate(calc(var(--r) * -1.4));box-shadow:0 6px 14px rgba(0,0,0,.25)}
.sx-pol img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.sx-tape{position:absolute;left:50%;top:-10px;width:70px;height:22px;transform:translateX(-50%) rotate(-4deg);background:rgba(255,255,240,.65);box-shadow:0 1px 3px rgba(0,0,0,.15)}
.sx-nb h3{font:800 19px/1.15 var(--sans);margin:0 0 4px}.sx-nb p{font:400 13.5px/1.4 var(--sans);opacity:.92;margin:0 0 14px}
.sx-nb-acts{display:flex;gap:8px}
.sx-nb-acts a{display:inline-flex;align-items:center;gap:6px;font:800 11.5px var(--sans);letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:var(--ink);background:#fff;padding:8px 12px;border-radius:30px}
.sx-nb-acts a+a{background:rgba(255,255,255,.2);color:#fff}
.sx-nb-acts a:hover{background:var(--ink);color:#fff}.sx-nb-acts svg{width:15px;height:15px}
.sx-quiz{background:var(--ink) radial-gradient(circle at 20% 0%,#4a443c,transparent 60%);color:#fff}
.sx-quiz .sx-h p{color:rgba(255,255,255,.75)}
.sx-medals{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:30px 18px}
.sx-medal{display:flex;flex-direction:column;align-items:center;text-align:center;text-decoration:none;color:#fff;transition:transform .3s}
.sx-medal:hover{transform:translateY(-6px)}
.sx-ring{position:relative;width:150px;height:150px;border-radius:50%;padding:9px;background:conic-gradient(var(--verde) calc(var(--p) * 1%),rgba(255,255,255,.14) 0)}
.sx-face{display:block;width:100%;height:100%;border-radius:50%;background-size:cover;background-position:center;border:4px solid var(--c);transition:transform .4s}
.sx-medal:hover .sx-face{transform:rotate(-6deg) scale(1.04)}
.sx-ring em{position:absolute;right:2px;top:4px;width:40px;height:40px;border-radius:50%;background:var(--c);display:grid;place-items:center;font:800 17px var(--sans);font-style:normal;border:3px solid var(--ink)}
.sx-medal b{font:800 16px/1.2 var(--sans);margin:14px 0 2px}.sx-medal small{font:500 12.5px var(--sans);opacity:.7}
.sx-stars{display:flex;gap:3px;margin:8px 0}.sx-stars i{width:20px;height:20px;color:rgba(255,255,255,.2)}.sx-stars i.on{color:var(--verde)}
.sx-play{font:800 11.5px var(--sans);letter-spacing:.08em;text-transform:uppercase;background:var(--verde);color:var(--ink);padding:7px 16px;border-radius:30px}
.sx-postit{position:relative;max-width:720px;margin:0 auto;background:#eef3b0;padding:34px 36px 30px;transform:rotate(-1deg);box-shadow:0 14px 30px rgba(60,50,40,.18);border-radius:2px 2px 30px 2px}
.sx-pin{position:absolute;left:50%;top:-12px;width:24px;height:24px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#e98a74,#b5422c);box-shadow:0 3px 6px rgba(0,0,0,.3)}
.sx-postit h2{font:800 26px var(--sans);margin:0 0 12px}.sx-postit ul{margin:0 0 20px;padding-left:20px;font:400 16px/1.55 var(--sans)}
@media (max-width:900px){.sx-hero-in{grid-template-columns:1fr}.sx-steps{grid-template-columns:1fr}.sx-earth-w{max-width:520px;margin:0 auto 10px}}
@media (max-width:560px){.sx-ring{width:124px;height:124px}.sx-medals{grid-template-columns:repeat(2,1fr)}.sx-hs b{width:34px;height:34px;font-size:15px}}
@media print{.sx-hs{display:none}}
.sx-nb{rotate:var(--r)}.sx-nb:hover{rotate:0deg}
.sx-postit{rotate:-1deg}
/* ===== v61 · home: blocco scuole nello stile della sezione ===== */
.hsc2{padding:64px 0;border-top:6px solid var(--verde)}
.hsc2-in{display:grid;grid-template-columns:minmax(280px,.8fr) 1.2fr;gap:clamp(24px,4vw,56px);align-items:center}
.hsc2 h2{font:800 clamp(32px,4vw,52px)/1.03 var(--sans);letter-spacing:-.02em;margin:16px 0 12px;color:var(--ink)}
.hsc2 mark{background:linear-gradient(transparent 58%,var(--verde) 58%,var(--verde) 90%,transparent 90%);color:inherit}
.hsc2-tx>p{font:400 17px/1.55 var(--sans);color:var(--soft);margin:0 0 22px;max-width:460px}
.hsc2-acts{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.hsc2-q{display:inline-flex;align-items:center;gap:10px;font:800 13px var(--sans);color:var(--ink);text-decoration:none}
.hsc2-q span{width:46px;height:46px;border-radius:50%;background-size:cover;background-position:center;box-shadow:0 0 0 3px var(--verde)}
.hsc2-q:hover{color:var(--verde-d)}
.hsc2-nbs{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;align-items:start}
.hsc2-nb{position:relative;display:block;background:var(--c);color:#fff;text-decoration:none;border-radius:4px 14px 14px 4px;padding:12px 10px 12px 20px;rotate:var(--r);box-shadow:4px 6px 0 rgba(43,39,34,.15),0 8px 18px rgba(43,39,34,.16);transition:rotate .3s,translate .3s}
.hsc2-nb:nth-child(even){margin-top:26px}
.hsc2-nb::before{content:"";position:absolute;left:5px;top:10px;bottom:10px;width:9px;background:radial-gradient(circle,#fbfaf6 3px,transparent 4px) 0 0/9px 15px repeat-y}
.hsc2-nb:hover{rotate:0deg;translate:0 -6px}
.hsc2-pol{display:block;background:#fff;padding:5px 5px 14px;margin-bottom:10px;box-shadow:0 4px 10px rgba(0,0,0,.2)}
.hsc2-pol img{display:block;width:100%;aspect-ratio:1;object-fit:cover}
.hsc2-nb b{display:block;font:800 13.5px/1.15 var(--sans)}.hsc2-nb small{font:700 10px var(--sans);letter-spacing:.1em;text-transform:uppercase;opacity:.8}
@media (max-width:980px){.hsc2-in{grid-template-columns:1fr}.hsc2-nbs{grid-template-columns:repeat(3,1fr)}.hsc2-nb:nth-child(even){margin-top:0}}
@media (max-width:520px){.hsc2-nbs{grid-template-columns:repeat(2,1fr)}}

/* ===== v61 · VR: barra superiore leggibile anche su cieli chiari ===== */
.vr-top{padding:14px 16px 34px!important;background:linear-gradient(180deg,rgba(22,19,15,.82) 0%,rgba(22,19,15,.55) 55%,rgba(22,19,15,0) 100%)!important}
.vr-top::before{content:"";position:absolute;inset:0;z-index:-1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);-webkit-mask-image:linear-gradient(180deg,#000 40%,transparent);mask-image:linear-gradient(180deg,#000 40%,transparent);pointer-events:none}
.vr-top .ttl{background:rgba(22,19,15,.55);padding:6px 14px 7px;border-radius:12px}
.vr-top .ttl b,.vr-top .ttl i{text-shadow:0 1px 4px rgba(0,0,0,.6)}
.vr-top .ibtn,.vr-top button{background:rgba(22,19,15,.6)!important;box-shadow:0 2px 8px rgba(0,0,0,.3)}
.vr-top .ibtn:hover,.vr-top button:hover{background:var(--verde)!important;color:var(--ink)!important}

/* ===== v61 · anteprime fotosfere sulle mappe ===== */
.leaflet-tooltip.ntip{padding:6px!important;width:212px;white-space:normal;border-radius:12px!important;background:#2b2722!important;box-shadow:0 10px 26px rgba(0,0,0,.45)!important}
.leaflet-tooltip.ntip img{width:200px!important;height:112px!important;object-fit:cover;object-position:center 45%;border-radius:8px!important;margin:0 0 6px!important}
.leaflet-tooltip.ntip b{display:block;font:700 12.5px/1.25 var(--sans);padding:0 4px 3px;text-align:left}
.leaflet-tooltip.ntip::after{content:"";position:absolute;left:50%;bottom:-6px;width:12px;height:12px;background:#2b2722;transform:translateX(-50%) rotate(45deg)}
/* ===== v61 · video racconti e documentari ===== */
.vd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-top:22px}
.vd-grid .doc-card{min-height:0;aspect-ratio:16/9}
.vd-card{display:flex;flex-direction:column;text-align:left;border:0;padding:0;background:#fff;border-radius:16px;overflow:hidden;cursor:pointer;box-shadow:0 8px 22px rgba(43,39,34,.1);transition:transform .25s,box-shadow .25s;font-family:var(--sans);color:var(--ink)}
.vd-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(43,39,34,.18)}
.vd-ph{position:relative;display:block;aspect-ratio:16/9;background-size:cover;background-position:center}
.vd-ph .pl{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:58px;height:58px;border-radius:50%;background:rgba(255,255,255,.92);color:#2b2722;display:grid;place-items:center;transition:transform .25s,background .25s}
.vd-ph .pl svg{width:26px;height:26px;margin-left:3px}
.vd-card:hover .pl{transform:translate(-50%,-50%) scale(1.1);background:var(--verde)}
.vd-ph em{position:absolute;right:10px;bottom:10px;font:700 11px var(--sans);font-style:normal;background:rgba(20,18,15,.75);color:#fff;padding:3px 8px;border-radius:12px}
.vd-tx{padding:12px 16px 16px}.vd-tx small{display:block;font:800 10px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--verde-d)}
.vd-tx b{display:block;font:800 17px/1.2 var(--sans);margin:3px 0 2px}.vd-tx i{font:400 13.5px var(--sans);font-style:normal;color:var(--soft)}
.vd-360{display:inline-flex;align-items:center;gap:8px;margin:12px 0 0;font:800 13px var(--sans);color:var(--ink);background:var(--verde);padding:9px 16px;border-radius:30px;text-decoration:none}
.vd-360 svg{width:18px;height:18px}
.docs-row.d4{margin-top:18px;grid-template-columns:repeat(3,1fr)}
@media (max-width:760px){.docs-row.d4{grid-template-columns:1fr}}

/* ===== v61 · scheda del punto di interesse nel 360° ===== */
.vr-poi{position:absolute;left:16px;top:96px;z-index:19;max-width:min(380px,calc(100vw - 32px));font-family:var(--sans)}
.vp-pill{display:inline-flex;align-items:center;gap:8px;border:0;cursor:pointer;background:rgba(22,19,15,.72);color:#fff;font:700 13px var(--sans);padding:6px 14px 6px 6px;border-radius:30px;box-shadow:0 4px 14px rgba(0,0,0,.3);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:opacity .25s}
.vp-i{width:26px;height:26px;border-radius:50%;background:var(--verde);color:var(--ink);display:grid;place-items:center;font:italic 800 15px var(--serif)}
.vp-card{display:flex;gap:12px;align-items:stretch;background:rgba(255,255,255,.96);color:var(--ink);border-radius:16px;padding:10px;box-shadow:0 14px 34px rgba(0,0,0,.35);position:relative;margin-top:8px;opacity:0;transform:translateY(-8px) scale(.97);pointer-events:none;transition:opacity .35s,transform .35s;max-height:0;overflow:hidden}
.vr-poi.open .vp-card{opacity:1;transform:none;pointer-events:auto;max-height:200px}
.vr-poi.open .vp-pill{opacity:0;pointer-events:none;position:absolute}
.vp-ph{flex:none;width:96px;border-radius:10px;background-size:cover;background-position:center;min-height:96px}
.vp-tx{min-width:0;padding-right:18px}.vp-tx small{display:block;font:800 10px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--verde-d)}
.vp-tx b{display:block;font:800 17px/1.2 var(--sans);margin:3px 0 8px}
.vp-acts{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.vp-acts a,.vp-play{font:800 12.5px var(--sans);color:var(--ink);text-decoration:none;border:0;cursor:pointer;background:none;padding:0}
.vp-play{background:var(--verde);padding:6px 12px;border-radius:20px}
.vp-acts a:hover{color:var(--verde-d);text-decoration:underline}
.vp-x{position:absolute;right:6px;top:4px;border:0;background:none;font:400 22px var(--sans);color:var(--soft);cursor:pointer}
@media (max-width:600px){.vr-poi{top:84px}.vp-ph{width:70px;min-height:70px}}

/* ===== v61 · scelta della zona del virtual tour ===== */
body.vtc-open{overflow:hidden}
.vtc{position:fixed;inset:0;z-index:3000;background:rgba(20,18,15,.72);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:flex-start;justify-content:center;overflow:auto;padding:4vh 16px;opacity:0;transition:opacity .3s}
.vtc.show{opacity:1}
.vtc-in{position:relative;width:min(1180px,100%);background:#fbfaf6;border-radius:26px;padding:34px clamp(18px,3vw,40px) 34px;box-shadow:0 30px 80px rgba(0,0,0,.5);transform:translateY(20px);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.vtc.show .vtc-in{transform:none}
.vtc-x{position:absolute;right:18px;top:16px;width:44px;height:44px;border-radius:50%;border:0;background:var(--ink);color:#fff;font:400 26px/1 var(--sans);cursor:pointer}
.vtc-h h2{font:800 clamp(30px,4vw,46px)/1.05 var(--sans);margin:6px 0 6px}.vtc-h .kicker{color:var(--verde-d)}
.vtc-h p{font:400 16px/1.5 var(--sans);color:var(--soft);margin:0 0 16px;max-width:640px}
.vtc-f{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}
.vtc-f button{border:1.5px solid #ddd6ca;background:#fff;border-radius:30px;padding:8px 14px;font:700 13px var(--sans);cursor:pointer;color:var(--ink)}
.vtc-f button b{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--verde);font-size:11px;margin-right:4px}
.vtc-f button.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.vtc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}
.vtc-card{display:flex;flex-direction:column;background:#fff;border-radius:18px;overflow:hidden;text-decoration:none;color:var(--ink);box-shadow:0 8px 22px rgba(43,39,34,.1);border-top:5px solid var(--c);transition:transform .25s,box-shadow .25s;animation:vtcIn .45s cubic-bezier(.2,.8,.2,1) backwards;animation-delay:var(--d)}
@keyframes vtcIn{from{opacity:0;transform:translateY(14px)}}
.vtc-card[hidden]{display:none}
.vtc-card:hover,.vtc-card:focus-visible{transform:translateY(-5px);box-shadow:0 18px 36px rgba(43,39,34,.22);outline:none}
.vtc-ph{position:relative;display:block;aspect-ratio:16/10;background-size:cover;background-position:center;transition:transform .5s}
.vtc-card:hover .vtc-ph{transform:scale(1.04)}
.vtc-ph em{position:absolute;left:10px;bottom:10px;font:700 11px var(--sans);font-style:normal;background:rgba(20,18,15,.72);color:#fff;padding:4px 9px;border-radius:14px}
.vtc-tx{padding:12px 16px 4px;flex:1}.vtc-tx small{display:block;font:800 10px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--soft)}
.vtc-tx b{display:block;font:800 19px/1.15 var(--sans);margin:4px 0 3px}.vtc-tx i{font:400 13.5px var(--sans);font-style:normal;color:var(--soft)}
.vtc-go{margin:10px 16px 16px;align-self:flex-start;font:800 12px var(--sans);letter-spacing:.06em;text-transform:uppercase;background:var(--verde);padding:7px 14px;border-radius:20px}
.vtc-v{margin-top:28px}.vtc-v .kicker{color:var(--verde-d)}
.vtc-vr{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin-top:10px}
.vtc-vr a{position:relative;aspect-ratio:16/9;border-radius:14px;background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:10px;color:#fff;text-decoration:none;overflow:hidden}
.vtc-vr a::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.75))}
.vtc-vr span{position:absolute;left:8px;top:8px;z-index:1;font:800 10px var(--sans);background:var(--verde);color:var(--ink);padding:3px 7px;border-radius:10px}
.vtc-vr b{position:relative;z-index:1;font:800 13px/1.15 var(--sans)}
.hero::after{display:none!important}
/* ===== v64 · footer rinnovato ===== */
.foot3{position:relative;color:#fff;margin-top:0;font-family:var(--sans)}
.f3-wave{display:block;width:100%;height:46px;margin-bottom:-1px}
.f3-body{background:#2f2a24 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='240' viewBox='0 0 600 240' fill='none' stroke='%23ffffff' stroke-opacity='.045' stroke-width='1.2'%3E%3Cpath d='M0 40c100-30 200 30 300 0s200-30 300 0M0 90c100-30 200 30 300 0s200-30 300 0M0 140c100-30 200 30 300 0s200-30 300 0M0 190c100-30 200 30 300 0s200-30 300 0'/%3E%3C/svg%3E");padding:26px 0 30px}
.f3-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.1)}
.f3-cta h2{font:800 clamp(24px,2.6vw,34px)/1.1 var(--sans);margin:4px 0 0;color:#fff}
.f3-qb{display:flex;gap:10px;flex-wrap:wrap}
.f3-qb a{display:flex;align-items:center;gap:12px;padding:10px 18px 10px 10px;border-radius:40px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);color:#fff;text-decoration:none;transition:background .2s,border-color .2s,transform .2s}
.f3-qb a svg{width:38px;height:38px;padding:8px;border-radius:50%;background:var(--verde);color:var(--ink);flex:none}
.f3-qb b{display:block;font:800 14px var(--sans)}.f3-qb small{font:500 11.5px var(--sans);opacity:.7}
.f3-qb a:hover{background:rgba(255,255,255,.14);border-color:var(--verde);transform:translateY(-2px)}
.f3-grid{display:grid;grid-template-columns:1.3fr 1.3fr 1fr;gap:clamp(24px,4vw,56px);padding:30px 0 26px}
.f3-logo img{height:64px;width:auto;display:block}
.f3-brand p{font:400 14px/1.5 var(--sans);color:rgba(255,255,255,.75);margin:14px 0 16px;max-width:320px}
.f3-partners{display:inline-flex;gap:12px;align-items:center;background:#fff;padding:8px 12px;border-radius:10px;transition:transform .2s}
.f3-partners:hover{transform:translateY(-2px)}.f3-partners img{height:40px;width:auto;display:block}
.foot3 h4{font:800 11px var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--verde);margin:4px 0 12px}
.f3-geo a{display:flex;align-items:center;gap:12px;padding:6px 0;color:rgba(255,255,255,.9);text-decoration:none;font:600 14.5px/1.25 var(--sans);transition:color .2s,transform .2s}
.f3-geo i{flex:none;width:26px;height:26px;border-radius:50%;border:1.5px solid var(--verde);display:grid;place-items:center;font:800 12px var(--sans);font-style:normal;color:var(--verde);transition:background .2s,color .2s}
.f3-geo a:hover{color:#fff;transform:translateX(4px)}.f3-geo a:hover i{background:var(--verde);color:var(--ink)}
.f3-col a{display:block;padding:6px 0;color:rgba(255,255,255,.85);text-decoration:none;font:500 14.5px var(--sans)}
.f3-col a:hover{color:var(--verde)}
.f3-reg{border-top:1px solid rgba(255,255,255,.1);padding-top:22px}
.f3-reg .rfvg{gap:22px;flex-wrap:nowrap}.f3-reg .rfvg-logo img{height:46px}
.f3-reg .rfvg-tx p{font-size:14px}.f3-reg .rfvg-tx p[lang=en]{font-size:12px}
.f3-bar{background:#1f1b17;font:500 12.5px var(--sans);color:rgba(255,255,255,.65)}
.f3-bar .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:12px;padding-bottom:12px}
.f3-bar a{color:#fff;text-decoration:none}.f3-bar a:hover b{color:var(--verde)}
.f3-top{width:40px;height:40px;border-radius:50%;border:0;background:var(--verde);color:var(--ink);display:grid;place-items:center;cursor:pointer;flex:none;transition:transform .2s}
.f3-top:hover{transform:translateY(-3px)}.f3-top svg{width:20px;height:20px}
@media (max-width:900px){.f3-grid{grid-template-columns:1fr 1fr}.f3-brand{grid-column:1/-1}.f3-reg .rfvg{flex-wrap:wrap}}
@media (max-width:560px){.f3-grid{grid-template-columns:1fr}.f3-qb a{flex:1 1 100%}}
@media print{.foot3{display:none!important}}
.f3-partners{background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.14)}
.cs-dh{font:800 13px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--verde);margin:30px 0 12px}.docs-row+.docs-row{margin-top:18px}
.cs-intro{padding-top:48px!important;padding-bottom:20px!important}
.cs-anello{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(20px,3vw,40px);align-items:center;margin:0 0 34px}
.cs-anello .track{display:block!important;margin:0}
.cs-anello figure{margin:0}.cs-anello img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:18px;box-shadow:0 14px 34px rgba(43,39,34,.2);display:block}
.cs-anello figcaption{font:italic 14px var(--serif);color:var(--soft);margin-top:6px}
@media (max-width:860px){.cs-anello{grid-template-columns:1fr}}
/* ===== v68 · icona drone nel colore della sezione ===== */
.mk-drone.col{background:var(--c);color:#fff;border-color:#fff;box-shadow:0 0 0 2px rgba(29,26,22,.55),0 4px 12px rgba(0,0,0,.45)}
.mk-drone.col svg{filter:drop-shadow(0 1px 1px rgba(0,0,0,.45))}
.mk-drone.col i{background:#1d1a16;color:#fff}
.map-legend .lg-d{background:var(--c,#1d1a16)!important}
/* ===== v70 · pagina Doline e abissi del Cansiglio ===== */
.cs-intro{padding:50px 0 40px!important}
.cs-intro-g{display:grid;grid-template-columns:1fr 360px;gap:clamp(24px,4vw,56px);align-items:start}
.cs-intro h2,.cs-sent h2{font:800 clamp(28px,3.2vw,40px)/1.1 var(--sans);margin:6px 0 14px}
.cs-2col{column-count:2;column-gap:40px}
.cs-2col p{break-inside:avoid-column;margin:0 0 14px}
.cs-intro-v{position:sticky;top:calc(var(--header-h) + 20px)}
.cs-vprev{position:relative;display:flex;align-items:flex-end;width:100%;aspect-ratio:16/9;border:0;border-radius:18px;overflow:hidden;background-size:cover;background-position:center;color:#fff;text-align:left;cursor:pointer;padding:0;box-shadow:0 14px 34px rgba(43,39,34,.25)}
.cs-vprev::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(20,18,15,.85))}
.cs-vprev .pl{position:absolute;left:50%;top:42%;transform:translate(-50%,-50%);z-index:1;width:64px;height:64px;border-radius:50%;background:var(--verde);color:var(--ink);display:grid;place-items:center;transition:transform .25s}
.cs-vprev .pl svg{width:28px;height:28px;margin-left:3px}
.cs-vprev:hover .pl{transform:translate(-50%,-50%) scale(1.1)}
.cs-vprev .t{position:relative;z-index:1;padding:14px 16px}.cs-vprev small{display:block;font:800 10px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--verde)}
.cs-vprev b{font:800 17px var(--sans)}
.cs-vprev.soon{cursor:default}.cs-vprev.soon .pl{background:rgba(255,255,255,.3);color:#fff}
.cs-facts{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:8px}
.cs-facts li{background:#fff;border-radius:12px;padding:10px 14px;font:500 14px var(--sans);color:var(--soft);border-left:4px solid #c96f3b}
.cs-facts b{font:800 18px var(--sans);color:var(--ink);margin-right:4px}
.cs-facts.row{grid-template-columns:repeat(3,1fr);margin-top:20px}
.cs-sent{background:#fff}
.cs-sent-h{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:20px}
.cs-sent-dl{display:flex;gap:10px;flex-wrap:wrap}
.cs-sent-g{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(24px,4vw,48px);align-items:start}
.cs-sent .cs-2col{column-count:1}
.cs-mosaic{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,150px);gap:8px}
.cs-mosaic img{width:100%;height:100%;object-fit:cover;border-radius:12px}
.cs-mosaic .m0{grid-column:span 2;grid-row:span 2}
.cs-mosaic .m3,.cs-mosaic .m4{display:none}
@media (min-width:1100px){.cs-mosaic{grid-template-rows:repeat(3,130px)}.cs-mosaic .m3,.cs-mosaic .m4{display:block}.cs-mosaic .m3{grid-column:span 2}}
@media (max-width:980px){.cs-intro-g,.cs-sent-g{grid-template-columns:1fr}.cs-intro-v{position:static}.cs-2col{column-count:1}.cs-facts.row{grid-template-columns:1fr}}
.cs-intro-g{grid-template-columns:1fr minmax(300px,420px)!important;grid-template-areas:"head vid" "text text";row-gap:26px!important;align-items:center!important}
.cs-ih{grid-area:head}.cs-intro-v{grid-area:vid;position:static!important}.cs-intro .cs-2col{grid-area:text;column-count:2!important}
.cs-intro .cs-facts.row{margin-top:16px}
@media (max-width:980px){.cs-intro-g{grid-template-columns:1fr!important;grid-template-areas:"head" "vid" "text"}.cs-intro .cs-2col{column-count:1!important}}
/* ===== v73 · panorama 360° che ruota lentamente in copertina ===== */
.hbg .hs-pano{position:absolute;inset:0;overflow:hidden;opacity:0;transition:opacity 1.8s ease}
.hbg .hs-pano.on{opacity:1}
.hbg .hs-pano i{position:absolute;top:0;bottom:0;left:0;background-repeat:repeat-x;background-size:auto 100%;background-position:0 50%;animation:panoSpin 45s linear infinite;will-change:transform}
@keyframes panoSpin{to{transform:translateX(-50%)}}
html.a11y-motion .hbg .hs-pano i{animation:none}
@media (prefers-reduced-motion:reduce){.hbg .hs-pano i{animation:none}}
/* ===== v73 · lightbox immagini ===== */
img.lb-ok{cursor:zoom-in}
.lbx{position:fixed;inset:0;z-index:4000;background:rgba(14,12,10,.94);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .25s}
.lbx.show{opacity:1}
.lbx figure{margin:0;max-width:92vw;max-height:88vh;display:flex;flex-direction:column;align-items:center}
.lbx img{max-width:92vw;max-height:82vh;object-fit:contain;border-radius:6px;box-shadow:0 20px 60px rgba(0,0,0,.6)}
.lbx figcaption{color:rgba(255,255,255,.85);font:italic 16px var(--serif);margin-top:10px;text-align:center}
.lbx button{position:absolute;border:0;cursor:pointer;color:#fff;background:rgba(255,255,255,.12);border-radius:50%;display:grid;place-items:center;transition:background .2s}
.lbx button:hover{background:var(--verde);color:var(--ink)}
.lbx-x{right:20px;top:20px;width:48px;height:48px;font:400 30px/1 var(--sans)}
.lbx-p,.lbx-n{top:50%;transform:translateY(-50%);width:56px;height:56px;font:400 36px/1 var(--sans)}
.lbx-p{left:20px}.lbx-n{right:20px}
.lbx-c{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);color:rgba(255,255,255,.7);font:600 13px var(--sans)}
@media (max-width:600px){.lbx-p,.lbx-n{width:42px;height:42px;font-size:28px}.lbx-p{left:8px}.lbx-n{right:8px}}
/* ===== v74 · mini-mappa del 360° su satellite, cornice scura ===== */
.mini{background:#1d1a16;border:0!important;border-radius:18px!important;box-shadow:0 0 0 1px rgba(255,255,255,.18),0 14px 34px rgba(0,0,0,.5)!important;width:240px;height:180px}
.mini::after{content:"";position:absolute;inset:0;z-index:450;pointer-events:none;border-radius:18px;box-shadow:inset 0 0 0 3px rgba(22,19,15,.85),inset 0 0 40px rgba(0,0,0,.35)}
.mini .mini-sat{filter:saturate(1.05) brightness(.82) contrast(1.05)}
.mini .grow{background:rgba(22,19,15,.75)!important;color:#fff;backdrop-filter:blur(4px)}
.mini .grow:hover{background:var(--verde)!important;color:var(--ink)}
.mini .ndot{width:12px;height:12px;border-width:2px!important;box-shadow:0 0 0 2px rgba(0,0,0,.35)}
.mini .ndot.cur{width:18px;height:18px;border-width:3px!important;box-shadow:0 0 0 5px rgba(182,198,17,.45),0 0 14px rgba(0,0,0,.6)!important}
.mini .leaflet-control-attribution{display:none}
/* ===== v75 · nomi dei monti sul panorama che ruota ===== */
.hbg .hs-pano .pk{position:absolute;left:calc(var(--w) * var(--x));top:var(--y);transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center;pointer-events:auto}
.hbg .hs-pano .pk::after{content:"";width:1.5px;height:38px;background:linear-gradient(rgba(255,255,255,.9),rgba(255,255,255,0));order:2}
.hbg .hs-pano .pk::before{content:"";position:absolute;bottom:-4px;width:7px;height:7px;border-radius:50%;background:var(--verde);box-shadow:0 0 0 2px rgba(0,0,0,.35)}
.hbg .hs-pano .pk em{font-style:normal;order:1;font:800 12.5px/1.1 var(--sans);color:#fff;background:rgba(22,19,15,.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:5px 10px;border-radius:20px;white-space:nowrap;text-align:center;border:1px solid rgba(255,255,255,.25);margin-bottom:-38px;transform:translateY(-44px);transition:background .25s,transform .25s}
.hbg .hs-pano .pk small{display:block;font:600 10px var(--sans);color:var(--verde);margin-top:1px}
.hbg .hs-pano .pk:hover em{background:var(--verde);color:var(--ink);transform:translateY(-48px) scale(1.08)}
.hbg .hs-pano .pk:hover small{color:var(--ink)}
.hero:has(.hs-pano.on)::before{pointer-events:none}
.hero:has(.hs-pano.on) .in{pointer-events:none}.hero:has(.hs-pano.on) .in a,.hero:has(.hs-pano.on) .in button{pointer-events:auto}
@media (max-width:700px){.hbg .hs-pano .pk em{font-style:normal;font-size:10.5px;padding:4px 8px}}
/* ===== v77 · gallerie fotografiche delle grotte ===== */
.gal-sec{background:#1d1a16;color:#fff}
.gal-sec h2{color:#fff}.gal-sec .gsub{color:rgba(255,255,255,.7)}.gal-sec .kicker{color:var(--verde)}
.gal{columns:4 240px;column-gap:12px;margin-top:22px}
.gal-it{break-inside:avoid;margin:0 0 12px;position:relative;border-radius:12px;overflow:hidden;background:#000}
.gal-it img{display:block;width:100%;height:auto;transition:transform .5s,opacity .3s}
.gal-it:hover img{transform:scale(1.04);opacity:.85}
.gal-it figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 12px 9px;background:linear-gradient(transparent,rgba(0,0,0,.8));font:600 12.5px/1.3 var(--sans);opacity:0;transform:translateY(6px);transition:.3s;pointer-events:none}
.gal-it figcaption small{display:block;font:500 10.5px var(--sans);color:var(--verde);margin-top:2px}
.gal-it:hover figcaption{opacity:1;transform:none}
@media (hover:none){.gal-it figcaption{opacity:1;transform:none}}
/* ===== v78 · navigazione tra le grotte ===== */
.cave-nav{background:#2b2722 radial-gradient(circle at 15% 0%,#4a443c,transparent 55%);color:#fff;padding:44px 0 36px}
.cn-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.cn-card{display:flex;align-items:center;gap:18px;padding:12px 22px 12px 12px;border-radius:80px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);color:#fff;text-decoration:none;transition:background .25s,border-color .25s,transform .25s}
.cn-card.next{flex-direction:row-reverse;text-align:right;padding:12px 12px 12px 22px}
.cn-card:hover{background:rgba(255,255,255,.14);border-color:var(--verde)}
.cn-card.prev:hover{transform:translateX(-4px)}.cn-card.next:hover{transform:translateX(4px)}
.cn-ph{flex:none;width:88px;height:88px;border-radius:50%;background-size:cover;background-position:center;box-shadow:0 0 0 3px var(--verde),0 8px 18px rgba(0,0,0,.4);transition:transform .35s}
.cn-card:hover .cn-ph{transform:scale(1.07) rotate(-4deg)}
.cn-tx small{display:block;font:800 10.5px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--verde)}
.cn-tx b{display:block;font:800 19px/1.15 var(--sans);margin:4px 0 3px}.cn-tx i{font:500 13px var(--sans);font-style:normal;color:rgba(255,255,255,.7)}
.cn-all{display:flex;justify-content:space-between;align-items:center;margin:30px 0 12px}
.cn-map{font:700 13px var(--sans);color:#fff;text-decoration:none}.cn-map:hover{color:var(--verde)}
.cn-strip{display:flex;gap:14px;overflow-x:auto;padding:6px 2px 10px;scrollbar-width:thin}
.cn-strip a{flex:none;width:92px;display:flex;flex-direction:column;align-items:center;gap:8px;text-decoration:none;color:rgba(255,255,255,.8);text-align:center}
.cn-strip span{width:70px;height:70px;border-radius:50%;background-size:cover;background-position:center;box-shadow:0 0 0 2px rgba(255,255,255,.25);transition:transform .25s,box-shadow .25s;filter:saturate(.8)}
.cn-strip b{font:600 11.5px/1.2 var(--sans)}
.cn-strip a:hover span{transform:translateY(-4px);box-shadow:0 0 0 3px var(--verde);filter:none}
.cn-strip a.on span{box-shadow:0 0 0 4px var(--verde),0 0 0 8px rgba(182,198,17,.25);filter:none}
.cn-strip a.on b{color:var(--verde)}
@media (max-width:760px){.cn-row{grid-template-columns:1fr}.cn-card.next{flex-direction:row;text-align:left;padding:12px 22px 12px 12px}.cn-ph{width:64px;height:64px}}
.hbg .hs-pano .pk{pointer-events:none!important}
/* ===== v84 · linea del tempo delle esplorazioni ===== */
.tl2{list-style:none;margin:18px 0 10px;padding:0 0 0 0;position:relative;--fill:0}
.tl2::before,.tl2::after{content:"";position:absolute;left:43px;top:10px;width:4px;border-radius:4px}
.tl2::before{bottom:18px;background:repeating-linear-gradient(#d8d1c4 0 8px,transparent 8px 14px)}
.tl2::after{height:calc((100% - 28px) * var(--fill));background:linear-gradient(var(--verde),#8f9c0a);box-shadow:0 0 12px rgba(182,198,17,.6);transition:height .15s linear}
.tl2-it{position:relative;display:grid;grid-template-columns:90px 1fr;gap:18px;align-items:start;padding:0 0 18px}
.tl2-y{position:relative;z-index:1;justify-self:start;min-width:90px;text-align:center;font:800 15px var(--sans);letter-spacing:.04em;color:var(--taupe-dd);background:#fff;border:3px solid #d8d1c4;border-radius:30px;padding:7px 10px;transition:background .35s,color .35s,border-color .35s,transform .35s}
.tl2-it.past .tl2-y{background:var(--verde);color:var(--ink);border-color:var(--verde);transform:scale(1.06)}
.tl2-c{position:relative;background:#fff;border-radius:16px;padding:14px 18px;box-shadow:0 6px 18px rgba(43,39,34,.08);border-left:4px solid transparent;transition:border-color .35s,box-shadow .35s,transform .35s}
.tl2-c::before{content:"";position:absolute;left:-12px;top:14px;border:8px solid transparent;border-right-color:#fff;border-left:0}
.tl2-it.past .tl2-c{border-left-color:var(--verde)}
.tl2-c:hover{transform:translateX(4px);box-shadow:0 12px 26px rgba(43,39,34,.14)}
.tl2-c p{margin:0;font:400 16px/1.5 var(--sans)}
.tl2-dep{display:flex;align-items:center;gap:10px;margin-top:10px}
.tl2-dep i{flex:1;max-width:260px;height:8px;border-radius:8px;background:#ece7de;position:relative;overflow:hidden}
.tl2-dep i::after{content:"";position:absolute;left:0;top:0;bottom:0;width:calc(var(--p) * 100%);border-radius:8px;background:linear-gradient(90deg,#5fb7d6,#2b5d7a);transform-origin:left;transform:scaleX(0);transition:transform 1.2s cubic-bezier(.2,.8,.2,1) .2s}
.tl2-it.past .tl2-dep i::after{transform:scaleX(1)}
.tl2-dep b{font:800 13px var(--sans);color:#2b5d7a}
.tl2-end{padding-left:22px}.tl2-end span{display:inline-block;font:800 11px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--soft);background:#f4f1ec;border:2px dashed #d8d1c4;border-radius:30px;padding:5px 14px}
@media (max-width:600px){.tl2-it{grid-template-columns:66px 1fr;gap:12px}.tl2-y{min-width:66px;font-size:13px;padding:5px 6px}.tl2::before,.tl2::after{left:31px}}
html.a11y-motion .tl2-dep i::after{transition:none;transform:scaleX(1)}
/* ===== v86 · strumento di collegamento nel 360° (?edit) ===== */
.elinks{margin-top:12px;padding-top:10px;border-top:1px solid #e3ddd2}
.elinks>b,.econn>b{display:block;margin-bottom:6px}
.el-row{display:flex;align-items:center;gap:6px;padding:5px 6px;border-radius:8px;background:#f4f1ec;margin-bottom:5px}
.el-row.man{background:#eef5c4}
.el-row span{flex:1;min-width:0;font:600 12px/1.2 var(--sans)}.el-row small{display:block;font:500 10.5px var(--sans);color:var(--soft)}
.el-row button{border:0;border-radius:6px;cursor:pointer;font:700 12px var(--sans);padding:5px 7px;background:#fff;margin:0!important;width:auto!important}
.el-row .ego{background:var(--ink);color:#fff}
.el-row .el-del{color:#b0543f}.el-row .el-aim{color:#2b5d7a}
.el-add select{width:100%;margin-top:4px}
.el-mode{display:flex;gap:6px;align-items:center;margin-top:8px;font-weight:700}
.mini.linkmode{box-shadow:inset 0 0 0 4px #e0701f!important}
.mini.linkmode .leaflet-marker-icon{cursor:crosshair!important}
.vrview.editing .vr-top .ttl{display:none}.vrview.editing .vr-poi{display:none}
/* ===== v89 · pannello del sentiero ingrandibile ===== */
.pnx{position:fixed;inset:0;z-index:4000;background:rgba(14,12,10,.95);display:flex;flex-direction:column;opacity:0;transition:opacity .25s}
.pnx.show{opacity:1}
.pnx-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;color:#fff;font:700 15px var(--sans)}
.pnx-bar span{display:flex;gap:8px}
.pnx-bar button{width:42px;height:42px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;font:400 24px/1 var(--sans);cursor:pointer}
.pnx-bar button:hover{background:var(--verde);color:var(--ink)}
.pnx-sc{flex:1;overflow:auto;display:block;padding:0 0 20px;cursor:grab;text-align:center}
.pnx-sc.drag{cursor:grabbing}
.pnx-sc img{width:100%;max-width:none;display:inline-block;transition:width .25s}
@media (min-width:700px){.pnx-sc{padding:0 calc((100vw - min(760px,92vw))/2) 20px}.pnx-sc img{width:100%}}
.pnx-h{text-align:center;color:rgba(255,255,255,.6);font:500 12px var(--sans);padding:6px 0 10px}
/* ===== v91 · percorso guidato nel 360° ===== */
.vr-route{position:absolute;left:50%;bottom:104px;transform:translateX(-50%);z-index:21;display:flex;align-items:center;gap:10px;max-width:min(860px,calc(100vw - 32px));padding:8px 10px;border-radius:40px;background:rgba(22,19,15,.78);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 10px 30px rgba(0,0,0,.4);color:#fff;font-family:var(--sans)}
.vr-route[hidden]{display:none}
.rt-mid{min-width:0;flex:1}.rt-mid small{display:block;font:800 10px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--verde);padding:0 4px 4px}
.rt-dots{display:flex;gap:5px;overflow-x:auto;scrollbar-width:none;padding:2px}
.rt-dots::-webkit-scrollbar{display:none}
.rt-b{flex:none;width:28px;height:28px;border-radius:50%;border:1.5px solid rgba(255,255,255,.35);background:transparent;color:#fff;font:700 12px var(--sans);cursor:pointer;transition:.2s}
.rt-b.done{background:rgba(182,198,17,.35);border-color:transparent}
.rt-b.cur{background:var(--verde);color:var(--ink);border-color:var(--verde);transform:scale(1.15)}
.rt-b:hover{border-color:var(--verde)}
.rt-nav{flex:none;width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;font:400 24px/1 var(--sans);cursor:pointer}
.rt-nav:disabled{opacity:.3;cursor:default}
.rt-next{flex:none;border:0;border-radius:30px;background:var(--verde);color:var(--ink);font:800 13px var(--sans);padding:10px 16px;cursor:pointer;white-space:nowrap;box-shadow:0 0 0 0 rgba(182,198,17,.6);animation:rtPulse 2.4s ease-in-out infinite}
.rt-next span{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--ink);color:var(--verde);font-size:11px;margin:0 2px}
.rt-next.end{background:#fff}
@keyframes rtPulse{50%{box-shadow:0 0 0 8px rgba(182,198,17,0)}}
.vr-rcard{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:30;width:min(420px,calc(100vw - 32px));background:rgba(251,250,246,.97);color:var(--ink);border-radius:22px;padding:26px 26px 20px;box-shadow:0 24px 60px rgba(0,0,0,.5);text-align:center;font-family:var(--sans);animation:qzIn .4s cubic-bezier(.2,.8,.2,1)}
.vr-rcard[hidden]{display:none}
.rc-k{font:800 10.5px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--verde-d)}
.vr-rcard h3{font:800 26px/1.1 var(--sans);margin:6px 0 8px}.vr-rcard p{font:400 15px/1.5 var(--sans);color:var(--soft);margin:0 0 16px}
.vr-rcard .btn{width:100%;justify-content:center}
.rc-free{display:block;margin:10px auto 0;border:0;background:none;font:700 13px var(--sans);color:var(--soft);cursor:pointer;text-decoration:underline}
.rt-n{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:rgba(22,19,15,.8);color:#fff;font:800 10px var(--sans);border:1.5px solid #fff}
.rt-n.done{background:#8f9c0a}.rt-n.next{background:var(--verde);color:var(--ink);transform:scale(1.25)}.rt-n.cur{background:#fff;color:var(--ink);border-color:var(--verde);transform:scale(1.3)}
@media (max-width:700px){.vr-route{bottom:96px;gap:6px;padding:6px}.rt-next{padding:9px 12px;font-size:12px}.rt-nav{width:32px;height:32px}}
.vr-route{max-width:calc(100vw - 640px)}
.vrview:has(.vr-route:not([hidden])) .vr-hint{display:none}
@media (max-width:1100px){.vr-route{bottom:auto;top:84px;max-width:calc(100vw - 32px)}}
.vr-rcard{animation:none}
@media (max-width:1100px){.vrview:has(.vr-route:not([hidden])) .vr-poi{top:150px}}
.ov-ic{pointer-events:none}.ov-ic img{display:block;transform-origin:50% 50%;border-radius:50%;box-shadow:0 0 0 2px rgba(240,0,170,.8)}
.eov{margin-top:10px;padding:10px;border-radius:10px;background:#fbeaf6}
.eov b{display:block;margin-bottom:4px}.eov label{display:flex;align-items:center;gap:6px;margin:4px 0;font-weight:600}.eov input[type=range]{flex:1}
.eov output{min-width:52px;text-align:right;font-weight:800}
/* v95 · etichetta "Avanti" sulla freccia del percorso */
.arw-av{position:absolute;left:50%;top:100%;transform:translate(-50%,6px);z-index:3;white-space:nowrap;background:var(--verde);color:var(--ink);font:800 11px/1 var(--sans,inherit);letter-spacing:.06em;text-transform:uppercase;padding:6px 10px;border-radius:99px;box-shadow:0 3px 10px rgba(0,0,0,.4);pointer-events:none}
.arw-next circle{fill:var(--verde);stroke:#fff}
.arw-next path{stroke:var(--ink)}
.arw-next{animation:arwPulse 2.2s ease-in-out infinite}
@keyframes arwPulse{0%,100%{filter:drop-shadow(0 2px 6px rgba(0,0,0,.45))}50%{filter:drop-shadow(0 0 12px rgba(200,230,60,.9))}}
/* v96 · punti a terra numerati visti dal drone */
.hs-num{width:34px!important;height:34px!important;border-radius:50% 50% 50% 0!important;transform:rotate(-45deg);background:var(--verde)!important;color:var(--ink)!important;border:2px solid #fff!important;box-shadow:0 3px 10px rgba(0,0,0,.5)}
.hs-num b{transform:rotate(45deg);font:800 14px/1 var(--sans,inherit)}
/* ===== v97 · Mediateca ===== */
.mt-hero{background:linear-gradient(160deg,#1f2a16,#2d3b1c 55%,#3b4a22);color:#fff;padding:120px 0 34px}
.mt-hero h1{font:800 clamp(30px,4.4vw,52px)/1.05 var(--sans);margin:8px 0 10px;letter-spacing:-.01em}
.mt-hero .gsub{color:rgba(255,255,255,.78);max-width:680px}
.mt-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0 18px}
.mt-tabs button{display:flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.07);color:#fff;border-radius:14px;padding:12px 16px;font:700 15px var(--sans);cursor:pointer;transition:.2s}
.mt-tabs button svg{width:22px;height:22px}
.mt-tabs button em{font-style:normal;font-size:12px;background:rgba(255,255,255,.16);border-radius:99px;padding:3px 8px}
.mt-tabs button:hover{background:rgba(255,255,255,.15)}
.mt-tabs button[aria-selected=true]{background:var(--verde);border-color:var(--verde);color:var(--ink)}
.mt-tabs button[aria-selected=true] em{background:rgba(0,0,0,.15)}
.mt-bar{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.mt-geo{display:flex;gap:6px;flex-wrap:wrap}
.mt-geo button{display:flex;align-items:center;gap:6px;border:0;background:rgba(255,255,255,.1);color:#fff;border-radius:99px;padding:6px 12px 6px 6px;font:600 12.5px var(--sans);cursor:pointer}
.mt-geo button[data-g="0"]{padding:6px 14px}
.mt-geo button i{font-style:normal;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.2);font-weight:800}
.mt-geo button span{max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mt-geo button.on{background:#fff;color:var(--ink)}
.mt-geo button.on i{background:var(--verde)}
.mt-q{margin-left:auto;display:flex;align-items:center;gap:8px;background:#fff;border-radius:99px;padding:0 14px;height:42px;min-width:240px;color:#6b665c}
.mt-q svg{width:18px;height:18px}.mt-q input{border:0;outline:0;font:500 15px var(--sans);flex:1;background:none;color:var(--ink)}
.mt-body{background:#f5f2ea;min-height:50vh}
.mt-count{font:700 12px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#7c766b;margin:0 0 16px}
.mt-empty{padding:40px 0;color:#7c766b}
.mt-audio{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:14px}
.mt-a{display:flex;gap:14px;align-items:center;background:#fff;border-radius:16px;padding:12px;box-shadow:0 2px 10px rgba(0,0,0,.06)}
.mt-a-ph{flex:0 0 76px;height:76px;border-radius:12px;background:#ddd center/cover;position:relative}
.mt-a-ph i{position:absolute;left:6px;top:6px;font:800 11px/1 var(--sans);font-style:normal;background:var(--verde);color:var(--ink);border-radius:99px;padding:4px 7px}
.mt-a-tx{flex:1;min-width:0}.mt-a-tx .audio{margin:0 0 6px;background:#2b2822}
.mt-a-tx a{font:600 13px var(--sans);color:#5e7a0e;text-decoration:none}
.mt-v360{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
.mt-gal{columns:5 200px;margin-top:0}.mt-gal .gal-it figcaption{color:#fff}
.mt-sf{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px}
.mt-s{text-decoration:none;color:var(--ink)}
.mt-s span{display:block;aspect-ratio:1;border-radius:50%;background:#ccc center/cover;box-shadow:0 0 0 4px #fff,0 6px 16px rgba(0,0,0,.15);position:relative;transition:transform .25s}
.mt-s:hover span{transform:scale(1.04)}
.mt-s span em{position:absolute;right:4px;top:4px;width:34px;height:34px;border-radius:50%;background:#2ea6d9;color:#fff;display:grid;place-items:center}
.mt-s span em svg{width:20px;height:20px}
.mt-s b{display:block;font:700 14px/1.25 var(--sans);margin:12px 0 2px;text-align:center}
.mt-s small{display:block;font:500 12px var(--sans);color:#7c766b;text-align:center}
@media (max-width:640px){.mt-audio{grid-template-columns:1fr}.mt-q{margin-left:0;width:100%}.mt-geo button span{display:none}.mt-geo button{padding:6px}}
/* ===== v97 · Cerca ===== */
.srx{position:fixed;inset:0;z-index:3000;background:rgba(18,16,12,.6);backdrop-filter:blur(6px);display:none;align-items:flex-start;justify-content:center;padding:8vh 16px 16px}
.srx.show{display:flex;animation:srxIn .18s ease-out}
@keyframes srxIn{from{opacity:0}to{opacity:1}}
.srx-box{width:min(760px,100%);max-height:84vh;display:flex;flex-direction:column;background:#fbf9f4;border-radius:20px;box-shadow:0 30px 80px rgba(0,0,0,.45);overflow:hidden}
.srx-in{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid #e7e1d4}
.srx-in>svg{width:24px;height:24px;color:#6b8f12;flex:0 0 auto}
.srx-in input{flex:1;border:0;outline:0;background:none;font:600 20px var(--sans);color:var(--ink);min-width:0}
.srx-in input::-webkit-search-cancel-button{display:none}
.srx kbd{font:700 11px var(--sans);border:1px solid #d9d2c3;border-bottom-width:2px;border-radius:6px;padding:2px 6px;color:#6f695d;background:#fff}
.srx-x{border:0;background:#ece7dc;width:34px;height:34px;border-radius:50%;font-size:22px;line-height:1;cursor:pointer;color:#555}
.srx-f{display:flex;gap:6px;flex-wrap:wrap;padding:10px 18px 0}
.srx-f:empty{display:none}
.srx-f button{border:1px solid #e1dacb;background:#fff;border-radius:99px;padding:5px 11px;font:700 12px var(--sans);cursor:pointer;color:#4b463d}
.srx-f button em{font-style:normal;color:#9a9385;margin-left:3px}
.srx-f button.on{background:var(--c,#2b2822);border-color:var(--c,#2b2822);color:#fff}.srx-f button.on em{color:rgba(255,255,255,.8)}
.srx-r{overflow-y:auto;padding:8px 10px 14px;flex:1}
.srx-r h4{display:flex;justify-content:space-between;align-items:center;margin:12px 8px 4px;font:800 11px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--c)}
.srx-r h4 button{border:0;background:none;color:#7c766b;font:700 11px var(--sans);letter-spacing:0;text-transform:none;cursor:pointer}
.srx-it{display:flex;align-items:center;gap:12px;padding:8px 10px;border-radius:12px;text-decoration:none;color:var(--ink)}
.srx-it.on,.srx-it:hover{background:#efeadf}
.srx-it.on{box-shadow:inset 3px 0 0 var(--verde)}
.srx-ph{flex:0 0 48px;height:48px;border-radius:10px;background:var(--c) center/cover;display:grid;place-items:center;color:#fff}
.srx-ph svg{width:20px;height:20px}
.srx-tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.srx-tx b{font:700 15px/1.25 var(--sans)}
.srx-tx small{font:500 12.5px var(--sans);color:#7c766b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.srx-tx i{font:400 13px/1.4 var(--serif,Georgia,serif);color:#5d584e;font-style:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.srx mark{background:rgba(182,198,17,.45);color:inherit;border-radius:3px;padding:0 1px}
.srx-it>em{font:700 10px var(--sans);font-style:normal;text-transform:uppercase;letter-spacing:.08em;color:var(--c);border:1px solid var(--c);border-radius:99px;padding:3px 7px;white-space:nowrap}
.srx-hint{padding:18px 10px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.srx-hint p{width:100%;margin:0 0 4px;font:700 12px var(--sans);text-transform:uppercase;letter-spacing:.12em;color:#9a9385}
.srx-hint button{border:1px solid #e1dacb;background:#fff;border-radius:99px;padding:7px 14px;font:600 14px var(--sans);cursor:pointer}
.srx-hint button:hover{background:var(--verde);border-color:var(--verde)}
.srx-0{padding:26px 12px;color:#7c766b}
.srx-ft{display:flex;gap:18px;padding:10px 18px;border-top:1px solid #e7e1d4;font:500 12px var(--sans);color:#8a8374;flex-wrap:wrap}
@media (max-width:640px){.srx{padding:0}.srx-box{max-height:100vh;height:100%;border-radius:0}.srx-ft,.srx-in kbd,.srx-it>em{display:none}}
/* ===== v98 · schemi dai pannelli ===== */
.sch-sec{background:#fbf9f4}.sch-sec.alt{background:#f1ede3}
.sch{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:44px;align-items:center}
.sch-sec.alt .sch{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr)}.sch-sec.alt .sch-fig{order:2}
.sch.tall{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)!important}.sch.tall .sch-fig{order:0!important}
.sch-fig{margin:0;position:relative;background:#fff;border-radius:18px;padding:14px;box-shadow:0 10px 30px rgba(40,32,20,.12);cursor:zoom-in}
.sch-fig img{display:block;width:100%;height:auto;border-radius:10px}
.sch-fig figcaption{display:none}
.sch-zoom{position:absolute;right:22px;bottom:22px;background:rgba(28,25,21,.75);color:#fff;font:700 11px var(--sans);letter-spacing:.06em;text-transform:uppercase;padding:6px 10px;border-radius:99px;pointer-events:none;opacity:0;transition:.25s}
.sch-fig:hover .sch-zoom{opacity:1}
.sch-tx h2{margin:.2em 0 .5em}
.sch-tx p{margin:0 0 .8em}
.sch-cr{font:500 12.5px/1.4 var(--sans)!important;color:#857e70;border-top:1px solid #ddd5c5;padding-top:10px;margin-top:14px!important}
.sch-st{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 18px}
.sch-st div{background:#fff;border-radius:14px;padding:12px;box-shadow:0 2px 8px rgba(0,0,0,.05)}
.sch-st b{display:block;font:800 24px/1 var(--sans);color:#2ea6d9}.sch-st span{font:500 12px/1.3 var(--sans);color:#6f695d}
.sch-li{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:8px}
.sch-li li{display:flex;gap:10px;align-items:flex-start;font:500 15px/1.35 var(--sans)}
.sch-li i{flex:0 0 26px;height:26px;border-radius:50%;background:#3a3a32;color:var(--verde);font:800 13px/26px var(--sans);font-style:normal;text-align:center}
@media (max-width:860px){.sch,.sch-sec.alt .sch,.sch.tall{grid-template-columns:1fr!important;gap:22px}.sch-sec.alt .sch-fig{order:0}.sch-st{grid-template-columns:1fr 1fr 1fr}}
/* ===== v99 · scheda animata scogliera ===== */
.rf-sec{background:linear-gradient(180deg,#0f2f45,#123a52);color:#fff}
.rf-sec h2{color:#fff}.rf-sec .gsub{color:rgba(255,255,255,.75);max-width:760px}.rf-sec .kicker{color:var(--verde)}
.rf{margin-top:22px}
.rf-steps{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.rf-steps button{flex:1 1 220px;display:flex;align-items:center;gap:12px;text-align:left;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff;border-radius:14px;padding:10px 14px;cursor:pointer;transition:.25s;position:relative;overflow:hidden}
.rf-steps button i{flex:0 0 34px;height:34px;border-radius:50%;background:rgba(255,255,255,.15);display:grid;place-items:center;font:800 16px var(--sans);font-style:normal}
.rf-steps button b{display:block;font:700 14px/1.2 var(--sans)}.rf-steps button small{font:500 11.5px var(--sans);opacity:.7}
.rf-steps button[aria-selected=true]{background:#fff;color:#123a52;border-color:#fff}
.rf-steps button[aria-selected=true] i{background:var(--verde);color:var(--ink)}
.rf.playing .rf-steps button[aria-selected=true]::after{content:"";position:absolute;left:0;bottom:0;height:3px;background:var(--verde);animation:rfProg 5.2s linear forwards}
@keyframes rfProg{from{width:0}to{width:100%}}
.rf-play{flex:0 0 52px!important;justify-content:center;padding:0!important}
.rf-play svg{width:22px;height:22px}
.rf.playing .rf-play svg path{d:path("M7 5h4v14H7zM13 5h4v14h-4z")}
.rf-stage{position:relative;border-radius:18px;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.35)}
.rf-svg{display:block;width:100%;height:auto}
.rf-plat{transition:opacity .6s}
.rf-reef{fill:url(#rfCor);stroke:#efe2c4;stroke-width:1.5;opacity:0;transition:opacity 1.1s ease;transform-box:fill-box;transform-origin:50% 100%}
.rf[data-st="0"] .rf-reef.r0,.rf[data-st="1"] .rf-reef.r1,.rf[data-st="2"] .rf-reef.r2{opacity:1;animation:rfGrow 1.2s ease-out}
@keyframes rfGrow{from{transform:scaleY(.85)}to{transform:none}}
.rf-zones rect{fill:#fff;opacity:0;cursor:pointer;transition:opacity .35s}
.rf-zones rect:hover{opacity:.08}.rf-zones rect.on{opacity:.16}
.rf-lbl text{font:800 13px var(--sans);letter-spacing:.08em;fill:#123a52;text-anchor:middle;opacity:.55;transition:.3s;pointer-events:none}
.rf-lbl text.on{opacity:1;fill:#0b2f57}
.rf-lbl text.sm{font-size:12px;fill:#cfe9f5;opacity:.8}.rf-lbl text.w{fill:#e6e9ec;opacity:.55}
.rf-fos image{opacity:.0;transform-box:fill-box;transform-origin:center;transition:opacity .6s,transform .6s cubic-bezier(.3,1.6,.5,1);transform:scale(.4);pointer-events:none;filter:drop-shadow(0 3px 4px rgba(0,0,0,.4))}
.rf-fos image.on{opacity:1;transform:scale(1)}
.rf-wave{animation:rfWave 6s linear infinite}
@keyframes rfWave{to{transform:translateX(100px)}}
.rf-rays path{animation:rfRay 6s ease-in-out infinite;opacity:.25}
@keyframes rfRay{50%{opacity:.7}}
.rf-fish{animation:rfFish 22s linear infinite}.rf-fish.f2{animation-duration:30s;animation-delay:-12s}
@keyframes rfFish{0%{transform:translate(1250px,280px)}100%{transform:translate(-120px,250px) }}
.rf-bub circle{fill:none;stroke:rgba(255,255,255,.7);stroke-width:1.5;animation:rfBub 6s ease-in infinite;opacity:0}
@keyframes rfBub{10%{opacity:1}100%{transform:translateY(-230px);opacity:0}}
.rf-card{position:absolute;left:16px;top:56px;width:min(340px,46%);background:rgba(255,255,255,.95);color:var(--ink);border-radius:14px;padding:14px 16px;box-shadow:0 10px 30px rgba(0,0,0,.3);opacity:0;transform:translateY(8px)}
.rf-card.in{animation:rfIn .45s ease forwards}
@keyframes rfIn{to{opacity:1;transform:none}}
.rf-card b{display:block;font:800 17px/1.2 var(--sans);margin:4px 0 4px}
.rf-card p{font:400 15px/1.4 var(--serif);margin:0 0 8px}
.rf-k{display:flex;align-items:center;gap:6px;font:700 11px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:#1d7fb3}
.rf-k i{font-style:normal;background:var(--verde);color:var(--ink);border-radius:50%;width:20px;height:20px;display:grid;place-items:center}
.rf-fl{display:flex;gap:8px;flex-wrap:wrap}
.rf-fl figure{margin:0;flex:1 1 80px;max-width:110px;text-align:center}
.rf-fl img{width:100%;height:70px;object-fit:contain}
.rf-fl figcaption{font:600 11px/1.2 var(--sans);color:#6f695d}
.rf-zbar{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
.rf-zbar button{border:1px solid rgba(255,255,255,.25);background:none;color:#fff;border-radius:99px;padding:6px 12px;font:600 12.5px var(--sans);cursor:pointer}
.rf-zbar button.on,.rf-zbar button:hover{background:var(--verde);border-color:var(--verde);color:var(--ink)}
.rf-sec .sch-cr{color:rgba(255,255,255,.55);border-color:rgba(255,255,255,.15)}
@media (max-width:760px){.rf-card{position:static;width:auto;margin:0;border-radius:0}.rf-lbl text{font-size:20px}.rf-lbl text.sm{display:none}}
/* ===== v100 · marker Gorgazzo, scheda Palse ===== */
.hs-hero{position:relative;display:flex;align-items:center;gap:14px;width:300px;height:120px;border:0;background:none;cursor:pointer;padding:0 0 0 10px;text-align:left}
.hs-hero .hh-ic{position:relative;z-index:2;flex:0 0 76px;height:76px;border-radius:50%;background:#00a19a;color:#fff;display:grid;place-items:center;box-shadow:0 0 0 5px #fff,0 10px 30px rgba(0,0,0,.5);animation:hhB 2.4s ease-in-out infinite}
.hs-hero .hh-ic svg{width:34px;height:34px;margin-left:4px}
.hs-hero .hh-ring{position:absolute;left:10px;top:22px;width:76px;height:76px;border-radius:50%;border:3px solid #6ff0e6;animation:hhR 2.4s ease-out infinite;z-index:1}
.hs-hero .hh-ring.r2{animation-delay:1.2s}
.hs-hero .hh-tx{position:relative;z-index:2;background:rgba(10,40,48,.88);backdrop-filter:blur(6px);color:#fff;border-radius:14px;padding:10px 14px;box-shadow:0 8px 24px rgba(0,0,0,.45);border:1px solid rgba(111,240,230,.5)}
.hs-hero .hh-tx small{display:block;font:800 10px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#6ff0e6}
.hs-hero .hh-tx b{display:block;font:800 17px/1.15 var(--sans);margin:2px 0}
.hs-hero .hh-tx i{font:600 12px var(--sans);font-style:normal;opacity:.85}
.hs-hero:hover .hh-ic{background:var(--verde);color:var(--ink)}
@keyframes hhR{0%{transform:scale(1);opacity:.9}100%{transform:scale(2.3);opacity:0}}
@keyframes hhB{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}
.pl-sec{background:#f4f0e7}
.pl-grid{display:grid;grid-template-columns:200px minmax(0,1.3fr) minmax(0,.8fr);gap:34px;align-items:start;margin-top:18px}
.pl-depth svg{width:100%;height:auto;border-radius:14px;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.pl-shaft{stroke:#2a251f;stroke-width:1}
.pl-l{stroke:#f2e9d4;stroke-width:2;stroke-dasharray:4 4}
.pl-t{font:800 18px var(--sans);fill:#fff}.pl-s{font:600 10px var(--sans);fill:#e6dcc5}.pl-q{font:700 12px var(--sans);fill:#2b2822}
.pl-depth text.pl-q:last-of-type{fill:#f2e9d4}
.pl-drop{fill:#7cc4e6;animation:plDrop 3s ease-in infinite}
@keyframes plDrop{0%{transform:translateY(0);opacity:1}85%{opacity:1}100%{transform:translateY(310px);opacity:0}}
.pl-dl{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:14px 0 0}
.pl-dl div{background:#fff;border-radius:10px;padding:8px 12px}
.pl-dl dt{font:700 10.5px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:#8a8374}
.pl-dl dd{margin:2px 0 0;font:700 15px/1.25 var(--sans)}
.pl-h{font:800 15px var(--sans);margin:18px 0 0}
.pl-ril{margin:0;background:#fff;border-radius:16px;padding:12px;box-shadow:0 10px 30px rgba(0,0,0,.12);cursor:zoom-in}
.pl-ril img{width:100%;display:block}
.pl-ril figcaption{font:700 13px var(--sans);margin-top:8px}.pl-ril small{display:block;font:500 11.5px/1.4 var(--sans);color:#857e70;margin-top:4px}
@media (max-width:980px){.pl-grid{grid-template-columns:1fr}.pl-depth{max-width:220px}}
.hs-hero .hh-tx{min-width:210px}
/* ===== v101 · calcari: leggio, forme dei coralli, mosaico; correzioni scogliera ===== */
@keyframes rfFish{0%{transform:translate(1230px,330px);opacity:0}8%{opacity:1}90%{opacity:1}100%{transform:translate(960px,300px);opacity:0}}
.rf-fish{animation-duration:14s!important}.rf-fish.f2{animation-duration:19s!important;animation-delay:-7s!important}
.rf-card{top:auto!important;bottom:16px}
.rf-reef{filter:drop-shadow(0 -2px 6px rgba(255,240,200,.35))}
.lg-sec{background:#fbf9f4}
.lg{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:46px;align-items:start}
.lg-tx p{margin:0 0 .9em}
.lg-md{display:grid;gap:16px}
.lg-md .vd-card{width:100%;max-width:none}
.lg-fig{margin:0;border-radius:16px;overflow:hidden;position:relative;box-shadow:0 10px 30px rgba(0,0,0,.14);cursor:zoom-in}
.lg-fig img{display:block;width:100%;height:260px;object-fit:cover}
.lg-fig figcaption{position:absolute;left:0;right:0;bottom:0;padding:28px 14px 10px;background:linear-gradient(transparent,rgba(0,0,0,.75));color:#fff;font:700 13px var(--sans)}
.lg-fig small{display:block;font:500 10.5px var(--sans);opacity:.8}
.cf-sec{background:linear-gradient(180deg,#e9f6f7,#d7edf0)}
.cf-stage{position:relative;border-radius:18px;overflow:hidden;box-shadow:0 18px 44px rgba(10,60,90,.25);margin-top:18px}
.cf-svg{display:block;width:100%;height:auto}
.cf-rays path{opacity:.3;animation:rfRay 6s ease-in-out infinite}
.cf-wave{animation:rfWave 5s linear infinite}
.cf-energy path{stroke:#fff;stroke-width:3;fill:none;stroke-linecap:round;animation:cfEn 1.6s ease-in-out infinite}
@keyframes cfEn{50%{transform:translateX(14px);opacity:.5}}
.cf-depth line{stroke:rgba(255,255,255,.6);stroke-width:2;stroke-dasharray:5 5}
.cf-depth text{font:700 12px var(--sans);fill:#fff;text-anchor:end}
.cf-c{cursor:pointer;outline:none}
.cf .cg{fill:#e7b38a;stroke:#fff3df;stroke-width:1.5;transform-box:fill-box;transform-origin:50% 100%;transform:scale(0);transition:transform .9s cubic-bezier(.3,1.5,.5,1) var(--d)}
.cf .cg.br{fill:none;stroke:#f1d3a6;stroke-width:5;stroke-linecap:round}
.cf.go .cg{transform:scale(1)}
.cf-c.on .cg{fill:#ffcf6e}.cf-c.on .cg.br{stroke:#ffcf6e}
.cf-c.on .cg,.cf-c:hover .cg{animation:cfPulse 1.6s ease-in-out infinite}
@keyframes cfPulse{50%{transform:scale(1.08)}}
.cf-lead{stroke:#fff;stroke-width:2}.cf-dot{fill:#fff}
.cf-lbl{font:800 19px var(--sans);fill:#fff;paint-order:stroke;stroke:rgba(10,50,80,.55);stroke-width:4px}
.cf-c.on .cf-lbl{fill:#ffe17a}
.cf-c:focus-visible .cf-lbl{text-decoration:underline}
.cf-fish{animation:cfFish 18s linear infinite}
@keyframes cfFish{0%{transform:translate(1020px,200px)}100%{transform:translate(-60px,130px)}}
.cf-bub circle{fill:none;stroke:rgba(255,255,255,.75);stroke-width:1.5;animation:rfBub 6s ease-in infinite;opacity:0}
.cf-card{position:absolute;right:16px;bottom:16px;width:min(330px,44%);background:rgba(255,255,255,.95);border-radius:14px;padding:14px 16px;box-shadow:0 10px 30px rgba(0,0,0,.25);opacity:0}
.cf-card.in{animation:rfIn .45s ease forwards}
.cf-card b{display:block;font:800 18px var(--sans);margin:4px 0}.cf-card p{font:400 15px/1.4 var(--serif);margin:0}
.cf-card img{display:block;max-height:90px;margin:10px auto 0}
.cf-ph{margin-top:22px}
.cf-row{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:8px}
.cf-row figure{margin:0;background:#fff;border-radius:14px;padding:10px;display:grid;place-items:center;aspect-ratio:1;box-shadow:0 4px 14px rgba(0,0,0,.08);cursor:zoom-in;transition:transform .3s}
.cf-row figure:hover{transform:translateY(-4px) rotate(-1deg)}
.cf-row img{max-width:100%;max-height:100%;object-fit:contain}
.cf-row figcaption{display:none}
.gm-sec{background:#1d1a16;color:#fff}.gm-sec h2{color:#fff}.gm-sec .gsub{color:rgba(255,255,255,.7)}.gm-sec .kicker{color:var(--verde)}
.gm{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:190px;gap:10px;margin-top:20px}
.gm .gal-it{margin:0;height:100%}
.gm .gal-it img{width:100%;height:100%;object-fit:cover}
.gm .gm-0{grid-column:span 2;grid-row:span 2}.gm .gm-1{grid-column:span 2}
.gm .gal-it figcaption{color:#fff}
@media (max-width:860px){.lg{grid-template-columns:1fr}.cf-card{position:static;width:auto;border-radius:0;opacity:1}.cf-row{grid-template-columns:repeat(3,1fr)}.gm{grid-template-columns:1fr 1fr;grid-auto-rows:150px}.cf-lbl{font-size:26px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
.top{z-index:1200}
.cf-card{top:16px;bottom:auto!important;right:60px}
.cf-row figure{min-width:0;overflow:hidden}
/* ===== v102 · sezione geologica animata ===== */
.sz{background:#fff;border-radius:18px;padding:14px;box-shadow:0 12px 34px rgba(40,32,20,.14)}
.sz svg{display:block;width:100%;height:auto}
.sz-cloud ellipse{fill:#c9d6de}
.sz-cloud{animation:szCl 9s ease-in-out infinite alternate}
@keyframes szCl{to{transform:translateX(40px)}}
.sz-rain line{stroke:#3d8fc2;stroke-width:2;stroke-linecap:round;animation:szR 1.2s linear infinite;opacity:0}
@keyframes szR{0%{transform:translateY(0);opacity:0}20%{opacity:1}100%{transform:translateY(34px);opacity:0}}
.sz-inf path{stroke:#bfe9ff;stroke-width:3;stroke-dasharray:4 8;fill:none;animation:szF 1.4s linear infinite}
.sz-flow{fill:none;stroke:#bfe9ff;stroke-width:4;stroke-linecap:round;stroke-dasharray:2 14;animation:szF 1.8s linear infinite;opacity:0;transition:opacity 1s .6s}
.sz-flow.f2{stroke-width:3;animation-duration:2.4s}
.go .sz-flow{opacity:1}
@keyframes szF{to{stroke-dashoffset:-32}}
.sz-fault{stroke:#a0322b;stroke-width:2.5;stroke-dasharray:7 5;fill:none}
.sz-spr circle{fill:#1f9fe0}.sz-spr .rp{fill:none;stroke:#1f9fe0;stroke-width:2;animation:hhR 2.2s ease-out infinite;transform-box:fill-box;transform-origin:center}.sz-spr .r2{animation-delay:1.1s}
.sz-l{font:800 14px var(--sans);fill:#2b2822}
.sz-w{font:700 12px var(--sans);fill:#fff;paint-order:stroke;stroke:#2f5d17;stroke-width:3px;text-anchor:middle}.sz-w.b{stroke:#1d5f86}
.sz-s{font:700 12px var(--sans);fill:#7c766b}
.sz-ax line{stroke:#7c766b;stroke-width:1.5}.sz-ax text{font:600 11px var(--sans);fill:#7c766b;text-anchor:middle}
.sz-leg{display:flex;gap:16px;flex-wrap:wrap;font:600 12.5px var(--sans);color:#5d584e;margin-top:8px}
.sz-leg i{display:inline-block;width:14px;height:14px;border-radius:4px;margin-right:6px;vertical-align:-2px}
.sz-leg .lk{background:#5f9d34}.sz-leg .lc{background:#5bbbe8}.sz-leg .lf{background:#bfe9ff;border:1px solid #6aaed6}
.sch-st div{transform:translateY(14px);opacity:0;transition:.6s}.go .sch-st div{transform:none;opacity:1}.go .sch-st div:nth-child(2){transition-delay:.15s}.go .sch-st div:nth-child(3){transition-delay:.3s}
.sch-st b{white-space:nowrap}
.sch.wide{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)!important;align-items:center}
.sch.wide .sch-fig,.sch.wide .sz{order:0!important}
@media (max-width:1100px){.sch.wide{grid-template-columns:1fr!important}}
.sz-l{font-size:16px}.sz-w{font-size:13px}
/* ===== v103 · presentazione in home, numeri indice ===== */
.ed-it .num{font:900 64px/.8 var(--sans)!important;color:rgba(255,255,255,.28)!important;letter-spacing:-.04em;-webkit-text-stroke:1px rgba(255,255,255,.35)}
.ed-it:hover .num,.ed-it:focus-visible .num,.ed-it.on .num{color:rgba(182,198,17,.85)!important;-webkit-text-stroke:0}
.pres{background:#fbf9f4;padding:80px 0;position:relative}
.pres::before{content:"“";position:absolute;left:4%;top:20px;font:700 220px/1 var(--serif);color:rgba(143,156,10,.12)}
.pres-in{max-width:1000px}
.pres-hd{display:flex;align-items:center;gap:20px;margin-bottom:24px}
.pres-hd img{height:76px;width:auto}
.pres-hd h2{margin:.1em 0 0}
.pres-tx{columns:2 340px;column-gap:44px}
.pres-tx p{margin:0 0 1em;break-inside:avoid-column}
.pres-tx p.first::first-letter{float:left;font:800 64px/.85 var(--sans);color:#8f9c0a;margin:6px 10px 0 0}
.pres-sig{display:flex;gap:60px;flex-wrap:wrap;justify-content:flex-end;margin-top:26px;padding-top:20px;border-top:1px solid #e3dccd}
.pres-sig div{text-align:right}
.pres-sig small{display:block;font:600 12px var(--sans);letter-spacing:.06em;text-transform:uppercase;color:#8a8374}
.pres-sig b{display:block;font:italic 400 30px/1.2 var(--serif);color:#2b2822;margin-top:4px}
/* ===== v104 · privacy ===== */
.pres-hd img{background:#3b372f;padding:8px 14px;border-radius:12px;height:70px}
.privb{position:fixed;left:16px;right:16px;bottom:16px;z-index:2500;display:flex;justify-content:center;transform:translateY(130%);transition:transform .45s cubic-bezier(.2,.9,.3,1)}
.privb.show{transform:none}
.privb-in{display:flex;align-items:center;gap:14px;max-width:880px;background:#2b2822;color:#fff;border-radius:16px;padding:14px 18px;box-shadow:0 14px 40px rgba(0,0,0,.4)}
.privb-in svg{flex:0 0 30px;height:30px;color:var(--verde)}
.privb-in p{margin:0;font:400 14px/1.45 var(--sans)}.privb-in a{color:var(--verde)}
@media (max-width:640px){.privb-in{flex-wrap:wrap}}
/* ===== v105 · contrasti WCAG ===== */
.kicker.dk,.pl-sec .kicker,.lg-sec .kicker,.sch-sec .kicker,.cf-ph .kicker,.pres .kicker{color:#5d6800!important}
.mt-count,.pl-dl dt,.sch-cr{color:#6b6559!important}
.leaflet-control-attribution a{color:#0b5aa6!important;text-decoration:underline}
.rf-sec .sch-cr{color:rgba(255,255,255,.75)!important}
.acts{display:flex;flex-wrap:wrap;gap:14px 16px!important;align-items:center}
.it-dot{width:26px;height:26px;border-radius:50%;background:var(--c);color:#fff;border:2px solid #fff;display:grid;place-items:center;font:800 12px var(--sans);box-shadow:0 2px 8px rgba(0,0,0,.5);transition:transform .2s}
.it-dot:hover,.it-dot.hot{transform:scale(1.35);background:var(--verde);color:var(--ink)}
/* contrasti residui */
.vd-tx small,.vd-sec .kicker,.taupe .kicker{color:#5d6800}
.taupe .kicker{color:#eef59a}
.gr-compl{font:600 14.5px/1.45 var(--sans);opacity:.9;margin-top:10px!important;padding-bottom:6px}
.hb-lang b{font:800 13px var(--sans);letter-spacing:.06em;min-width:26px;text-align:center;display:inline-block}
/* selettore lingua: pillola IT | EN in fondo a destra */
.lang-sw{display:flex;align-items:center;margin-left:10px;background:rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.28);border-radius:22px;padding:3px;gap:2px}
.lang-sw a{display:grid;place-items:center;min-width:38px;height:34px;padding:0 8px;border-radius:18px;color:rgba(255,255,255,.75);font:800 13px var(--sans);letter-spacing:.08em;text-decoration:none;transition:.2s}
.lang-sw a:hover{color:#fff;background:rgba(255,255,255,.12)}
.lang-sw a.on{background:var(--verde);color:var(--ink)}
@media (max-width:560px){.lang-sw a{min-width:30px;height:30px;padding:0 5px;font-size:12px}.lang-sw{margin-left:4px}}
/* ===== v113 · lettore vocale con audiodescrizione ===== */
.rdbar{position:fixed;left:16px;bottom:16px;z-index:2600;width:min(420px,calc(100vw - 32px));background:#1f1c18;color:#fff;border-radius:18px;padding:14px 16px;box-shadow:0 16px 44px rgba(0,0,0,.5);transform:translateY(140%);transition:transform .4s cubic-bezier(.2,.9,.3,1);border:2px solid var(--verde)}
.rdbar.show{transform:none}
.rd-hd{display:flex;align-items:center;gap:8px;font:800 13px var(--sans);letter-spacing:.04em}
.rd-hd svg{width:22px;height:22px;color:var(--verde)}.rd-n{margin-left:auto;font-weight:600;opacity:.7}
.rd-tx{margin:8px 0 10px;font:400 15px/1.4 var(--sans);max-height:4.3em;overflow:hidden;opacity:.9}
.rd-ctl{display:flex;align-items:center;gap:8px}
.rd-ctl button{width:42px;height:42px;border-radius:50%;border:0;background:rgba(255,255,255,.12);color:#fff;font-size:16px;cursor:pointer;display:grid;place-items:center}
.rd-ctl .rd-pp{background:var(--verde);color:var(--ink);width:50px;height:50px}.rd-ctl .rd-pp svg{width:22px;height:22px}
.rd-ctl button:focus-visible{outline:3px solid #fff;outline-offset:2px}
.rd-sp{margin-left:auto;font:600 12px var(--sans);display:flex;align-items:center;gap:6px}
.rd-sp select{background:#2f2b25;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:8px;padding:4px}
.rd-x{font-size:22px!important}
.rd-on{outline:3px solid var(--verde)!important;outline-offset:4px;border-radius:6px;background:rgba(182,198,17,.12)!important;transition:outline .2s}
/* ===== v115 · header responsivo: niente sovrapposizioni sui monitor più stretti ===== */
.top>*{flex-shrink:0}
.top .brand{min-width:0;flex-shrink:1;overflow:hidden}
.top .brand span{min-width:0;overflow:hidden}
.top .brand span b,.top .brand span i{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.top .sp{flex:1 1 0;min-width:0}
@media (max-width:1950px){.top .brand span{display:none!important}}
@media (max-width:1720px){.hbtn em{display:none!important}.hbtn{padding:0 10px!important}}
@media (max-width:1150px){.top .partners{display:none!important}}
@media (max-width:900px){.hhist #navBack,.hhist #navFwd{display:none}.hhist{margin-right:4px}.top{gap:6px;padding:0 10px}.hnav{gap:3px;margin-right:2px}}
@media (max-width:700px){.hnav .hb-read,.hnav [href="#/mappa"]{display:none}}
@media (max-width:480px){.top .ibtn[href="#/guida"],.hnav #infoBtn{display:none}.lang-sw a{min-width:28px;padding:0 4px}}
/* ===== v116 · pagine statiche indicizzabili (s/*.html) ===== */
.static .rv{opacity:1!important;transform:none!important}
.static .st-top{position:sticky;top:0;z-index:1000;display:flex;align-items:center;gap:16px;padding:10px 18px;background:var(--taupe);color:#fff;flex-wrap:wrap;box-shadow:0 2px 14px rgba(0,0,0,.18)}
.static .st-logo img{height:44px;width:auto;display:block}
.static .st-nav{display:flex;gap:4px;flex-wrap:wrap;flex:1}
.static .st-nav a{color:#fff;text-decoration:none;font:700 13px var(--sans);padding:8px 12px;border-radius:18px;background:rgba(255,255,255,.12)}
.static .st-nav a[aria-current]{background:var(--verde);color:var(--ink)}
.static .st-go{white-space:nowrap}
.static .st-lang{color:#fff;font:800 13px var(--sans);text-decoration:none;border:1px solid rgba(255,255,255,.4);border-radius:18px;padding:8px 12px}
.static .hero{margin-top:0}
.static .static-map{min-height:120px!important;height:auto!important;display:grid;place-items:center;background:#e9e4d8 url("../media/og/home.jpg") center/cover;border-radius:14px}
.static .static-map::after{content:"Mappa interattiva nella versione interattiva del sito";font:700 14px var(--sans);background:rgba(255,255,255,.9);padding:10px 16px;border-radius:99px;color:#2b2822}
html[lang=en] .static .static-map::after{content:"Interactive map in the interactive version of the site"}
.static .audio audio{width:100%;margin-bottom:6px}.static .audio .play,.static .audio .bar,.static .audio .tm{display:none}
.static .hbg>*:first-child{opacity:1!important}
@media (max-width:760px){.static .st-nav{order:3;flex-basis:100%}}

/* ---------- v117 · scala dei tempi geologici ---------- */
.gt-hero{background:linear-gradient(120deg,#2b4f61,#3b738f 55%,#6d655a)}
.gt-day .gtd{position:relative;margin:34px 0 10px;padding-bottom:30px}
.gd-bar{position:relative;height:54px;border-radius:10px;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}
.gd-bar i{position:absolute;top:0;bottom:0;transform-origin:left;transform:scaleX(0);transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.gd-bar i:nth-child(2){transition-delay:.25s}.gd-bar i:nth-child(3){transition-delay:.5s}.gd-bar i:nth-child(4){transition-delay:.75s}
.gtd.go .gd-bar i{transform:none}
.gd-bar b{position:absolute;left:10px;top:50%;transform:translateY(-50%);font:700 13px/1 var(--sans);color:#fff;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;text-shadow:0 1px 3px rgba(0,0,0,.35)}
.gd-zm{position:absolute;top:-6px;bottom:-6px;right:0;background:repeating-linear-gradient(45deg,rgba(43,39,34,.85) 0 4px,rgba(43,39,34,.55) 4px 8px);border-left:2px solid var(--ink);opacity:0;transition:opacity .5s 1.6s}
.gtd.go .gd-zm{opacity:1;animation:gdp 1.8s 2s ease-in-out 3}
@keyframes gdp{50%{box-shadow:0 0 0 6px rgba(182,198,17,.6)}}
.gd-h{position:relative;height:18px;margin-top:8px}
.gd-h span{position:absolute;transform:translateX(-50%);font:600 12px var(--sans);color:var(--soft)}
.gd-h span:first-child{transform:none}.gd-h span:last-child{transform:translateX(-100%);color:var(--ink);font-weight:800}
.gd-facts{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
.gd-facts li{background:#fff;border-radius:12px;padding:14px 16px;box-shadow:0 2px 10px rgba(30,25,20,.08);display:grid;gap:2px}
.gd-facts b{font:800 26px/1 var(--sans);color:var(--blu-d);font-variant-numeric:tabular-nums}
.gd-facts span{font-size:17px;line-height:1.25}.gd-facts em{font:600 12px var(--sans);color:var(--soft);font-style:normal}
.gd-facts li:nth-child(n+3){border-left:4px solid var(--verde)}

.gt-sticky{position:sticky;top:calc(var(--header-h) + 8px);z-index:20;background:rgba(244,241,236,.96);backdrop-filter:blur(6px);padding:10px 0 4px;margin:18px 0 26px;border-bottom:1px solid rgba(0,0,0,.08)}
.gt-scale{position:relative;margin:0 6px;padding-bottom:22px}
.gt-lanes{position:relative;height:120px}
.gt-ev{position:absolute;bottom:calc(var(--ln) * 28px + 6px);height:18px;min-width:12px;border:0;border-radius:9px;padding:0;background:var(--taupe-d);color:#fff;transition:background .3s,transform .3s,box-shadow .3s}
.gt-ev.pt{width:14px!important;margin-left:-7px;border-radius:50%;height:14px;bottom:calc(var(--ln) * 28px + 8px)}
.gt-ev span{position:absolute;left:0;bottom:calc(100% + 1px);font:700 12px/1.1 var(--sans);color:var(--ink);white-space:nowrap;padding:1px 2px}
.gt-ev span.r{left:auto;right:0}
.gt-ev:hover,.gt-ev:focus-visible{background:var(--blu)}
.gt-ev.on{background:var(--verde-d);box-shadow:0 0 0 4px rgba(182,198,17,.35);z-index:2}
.gt-ev.on span{color:var(--verde-d)}
.gt-era,.gt-per{position:relative;height:22px}
.gt-per{height:30px;margin-top:2px}
.gt-era i,.gt-per i{position:absolute;top:0;bottom:0;border-right:1px solid rgba(255,255,255,.7);overflow:hidden}
.gt-era b,.gt-per b{position:absolute;left:6px;top:50%;transform:translateY(-50%);font:700 11px/1 var(--sans);color:rgba(0,0,0,.72);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}
.gt-per i:last-child b,.gt-per i:nth-child(5) b{display:none}
.gt-ax{position:relative;height:18px;margin-top:4px}
.gt-ax span{position:absolute;transform:translateX(-50%);font:600 12px var(--sans);color:var(--soft)}
.gt-ax span:last-of-type{transform:translateX(-100%);color:var(--ink);font-weight:800}
.gt-ax em{position:absolute;left:0;top:18px;font:600 11px var(--sans);color:var(--soft);font-style:normal}
.gt-cur{position:absolute;top:0;bottom:22px;width:0;border-left:2px dashed var(--ink);transition:left .8s cubic-bezier(.3,.7,.2,1);pointer-events:none}
.gt-cur b{position:absolute;top:-2px;left:6px;background:var(--ink);color:#fff;font:700 12px/1 var(--sans);padding:5px 8px;border-radius:6px;white-space:nowrap}
.gt-cur.r b{left:auto;right:6px}
.gt-here{position:absolute;bottom:-2px;transform:translateX(-100%)}
.gt-here span{font:800 11px var(--sans);text-transform:uppercase;letter-spacing:.06em;color:#fff;background:var(--blu);padding:3px 7px;border-radius:5px;white-space:nowrap}
.gt-cards{list-style:none;margin:0;padding:0;display:grid;gap:22px}
.gt-card{display:grid;grid-template-columns:1.2fr 1fr;gap:26px;align-items:center;background:#fff;border-radius:var(--r);padding:24px;box-shadow:0 3px 16px rgba(30,25,20,.08);border-left:6px solid transparent;transition:border-color .4s,box-shadow .4s,transform .4s}
.gt-card.on{border-left-color:var(--verde);box-shadow:0 10px 30px rgba(30,25,20,.16)}
.gt-card h3{font:700 24px/1.15 var(--sans);margin:8px 0 8px}
.gt-card p{margin:0 0 10px}
.gt-age{display:inline-flex;align-items:center;gap:8px;font:700 13px var(--sans);text-transform:uppercase;letter-spacing:.04em;color:var(--taupe-dd)}
.gt-age::before{content:"";width:14px;height:14px;border-radius:3px;background:var(--pc);box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}
.gt-clock{font:600 14px var(--sans);color:var(--soft)}.gt-clock b{color:var(--blu-d);font-variant-numeric:tabular-nums}
.gt-card figure{margin:0}.gt-card img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}
.gt-card figcaption{font:500 12px var(--sans);color:var(--soft);margin-top:6px}
.gt-ext{aspect-ratio:4/3;border-radius:10px;background:radial-gradient(circle at 70% 30%,#ffb35c 0 6%,#d9542b 14%,#3a2a24 40%,#1d1714 70%);display:grid;place-content:center;text-align:center;color:#fff}
.gt-ext span{font:800 84px/1 var(--sans);opacity:.85}.gt-ext em{font:700 16px var(--sans);font-style:normal;letter-spacing:.2em}
.btn.sm{padding:8px 14px;font-size:14px}
.gcol{list-style:none;margin:0;padding:0;display:grid;gap:0;border-radius:12px;overflow:hidden;box-shadow:0 8px 26px rgba(0,0,0,.25)}
.gcol a{display:grid;grid-template-columns:110px 1fr;text-decoration:none;color:var(--ink);background:#fff;border-bottom:1px solid rgba(0,0,0,.08)}
.gcol li:last-child a{border-bottom:0}
.gcol a:hover .gcol-t,.gcol a:focus-visible .gcol-t{background:var(--verde-l)}
.gcol-r{min-height:92px;background-color:var(--uc)}
.gcol-r.cong{background-image:radial-gradient(circle at 30% 40%,rgba(90,70,40,.45) 0 5px,transparent 6px),radial-gradient(circle at 75% 70%,rgba(90,70,40,.35) 0 7px,transparent 8px),radial-gradient(circle at 55% 15%,rgba(90,70,40,.3) 0 3px,transparent 4px);background-size:34px 30px}
.gcol-r.lime,.gcol-r.reef,.gcol-r.thin{background-image:linear-gradient(rgba(0,0,0,.28) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.28) 1px,transparent 1px);background-size:36px 18px,36px 18px}
.gcol-r.thin{background-size:28px 9px,28px 9px}
.gcol-r.reef{background-image:radial-gradient(circle at 50% 100%,rgba(255,255,255,.55) 0 4px,transparent 5px),linear-gradient(rgba(0,0,0,.25) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.25) 1px,transparent 1px);background-size:18px 18px,36px 18px,36px 18px}
.gcol-t{display:grid;gap:2px;padding:14px 18px;transition:background .25s}
.gcol-t b{font:700 18px/1.15 var(--sans)}.gcol-t em{font:700 12px var(--sans);text-transform:uppercase;letter-spacing:.04em;color:var(--blu-d);font-style:normal}
.gcol-t small{font-size:16px;line-height:1.3;color:var(--soft)}
.gt-note{font:500 14px var(--sans);opacity:.85}
.gt-src p{font:500 14px/1.5 var(--sans);color:var(--soft);max-width:900px}
/* mini scala nelle pagine dei geositi */
.gtm-sec{padding-top:26px;padding-bottom:6px}
.gtm{display:grid;grid-template-columns:minmax(220px,1fr) 2fr auto;gap:22px;align-items:center;text-decoration:none;color:var(--ink);background:#fff;border-radius:var(--r);padding:16px 20px;box-shadow:0 3px 14px rgba(30,25,20,.08);transition:box-shadow .25s}
.gtm:hover{box-shadow:0 8px 24px rgba(30,25,20,.16)}
.gtm-l{display:grid;gap:2px}.gtm-l b{font:800 22px/1.1 var(--sans);color:var(--blu-d)}.gtm-l em{font:600 14px var(--sans);font-style:normal;color:var(--soft)}
.gtm-bar{position:relative;height:16px;border-radius:5px;overflow:visible;margin-bottom:16px}
.gtm-bar i{position:absolute;top:0;bottom:0}
.gtm-bar s{position:absolute;top:-6px;bottom:-6px;border:3px solid var(--ink);border-radius:5px;min-width:6px;animation:gdp 1.8s ease-in-out infinite}
.gtm-bar u{position:absolute;top:20px;left:0;text-decoration:none;font:600 11px var(--sans);color:var(--soft)}.gtm-bar u.r{left:auto;right:0}
.gtm-go{font:700 14px var(--sans);color:var(--blu-d);white-space:nowrap}
@media (max-width:900px){
  .gt-card{grid-template-columns:1fr;padding:18px}.gt-card figure,.gt-ext{order:-1}
  .gt-ev span{display:none}.gt-ev.on span{display:block;font-size:11px}
  .gt-lanes{height:96px}.gt-ev{bottom:calc(var(--ln) * 22px + 6px);height:14px}.gt-ev.pt{width:12px!important;height:12px;bottom:calc(var(--ln) * 22px + 7px)}
  .gt-era b,.gt-per b{font-size:9px;left:3px}.gt-per i:nth-child(4) b{display:none}
  .gtm{grid-template-columns:1fr}.gd-bar b{font-size:10px;left:4px}
  .gd-bar i:nth-child(1) b{display:none}
  .gcol a{grid-template-columns:70px 1fr}
}
@media (prefers-reduced-motion:reduce){.gd-bar i{transform:none;transition:none}.gd-zm{opacity:1;animation:none}.gtm-bar s{animation:none}.gt-cur{transition:none}}
.gd-call{position:absolute;right:0;top:-30px;display:flex;gap:8px;align-items:baseline;font:600 13px var(--sans);color:var(--ink);opacity:0;transition:opacity .5s 1.8s;text-align:right}
.gd-call b{background:var(--ink);color:#fff;padding:3px 7px;border-radius:5px;font-variant-numeric:tabular-nums}
.gtd.go .gd-call{opacity:1}
@media (max-width:700px){.gd-call{top:auto;bottom:-30px;flex-direction:column;align-items:flex-end;gap:2px}.gt-day .gtd{padding-bottom:64px}}
@media (prefers-reduced-motion:reduce){.gd-call{opacity:1}}
@media (max-width:700px){.gt-sticky{position:relative;top:auto}}

/* v118 · rimando alla scala dei tempi dalla home */
.hgeo{background:linear-gradient(120deg,#22404f,#3b738f 60%,#5d564c);color:#fff;padding:70px 0}
.hgeo-in{display:grid;grid-template-columns:1fr 1.25fr;gap:48px;align-items:center;text-decoration:none;color:inherit}
.hgeo h2{font:800 clamp(30px,3.4vw,46px)/1.05 var(--sans);margin:8px 0 14px}
.hgeo p{margin:0 0 22px;opacity:.92}
.hgeo-in:hover .btn{background:var(--verde);color:var(--ink)}
.hgeo-sc{position:relative;height:150px}
.hgeo-bar{position:absolute;left:0;right:0;top:56px;height:34px;border-radius:8px;overflow:hidden;box-shadow:0 6px 20px rgba(0,0,0,.25)}
.hgeo-bar i{position:absolute;top:0;bottom:0;transform:scaleY(0);transform-origin:bottom;transition:transform .7s calc(var(--i) * 120ms) cubic-bezier(.2,.7,.2,1)}
.hgeo-in.in .hgeo-bar i{transform:none}
.hgeo-pin{position:absolute;top:0;transform:translateX(-50%);display:grid;justify-items:center;text-align:center;opacity:0;transition:opacity .5s calc(.8s + var(--i) * 150ms)}
.hgeo-pin::after{content:"";width:2px;height:16px;background:#fff;order:3}
.hgeo-pin.dn{top:92px;flex-direction:column}.hgeo-pin.dn::after{order:-1}
.hgeo-pin b{font:800 15px/1.1 var(--sans);white-space:nowrap}.hgeo-pin em{font:600 12px var(--sans);font-style:normal;opacity:.85;white-space:nowrap}
.hgeo-pin:first-of-type{transform:translateX(-30%)}.hgeo-pin:last-of-type{transform:translateX(-85%)}
.hgeo-in.in .hgeo-pin{opacity:1}
@media (max-width:900px){.hgeo{padding:50px 0}.hgeo-in{grid-template-columns:1fr;gap:26px}.hgeo-pin em{display:none}}
@media (prefers-reduced-motion:reduce){.hgeo-bar i{transform:none;transition:none}.hgeo-pin{opacity:1;transition:none}}

/* ---------- v119 · revisione mobile ---------- */
.drawer{overflow:hidden}
html,body{overflow-x:clip;max-width:100%}
.cols>*,.mt-a>*,.track>*{min-width:0}
.mt-a{min-width:0;max-width:100%}
/* header compatto su smartphone: le funzioni nascoste passano nel menu */
.mn-tiles .mn-mob{display:none}
@media (max-width:760px){
  .top{gap:6px;padding:0 10px}
  .hhist,.hnav .hb-read,.hnav [href="#/mappa"],.hnav #infoBtn,.top .ibtn[href="#/guida"],.top #a11yBtn{display:none!important}
  .mn-tiles .mn-mob{display:flex}
  .hnav{gap:4px;margin-right:0}.hbtn em{display:none}.hbtn{padding:0;width:42px;justify-content:center}
  .top .ibtn{width:42px;height:42px}
  .lang-sw{margin-left:2px}
  .brand .wm{height:48px}
}
@media (max-width:380px){
  .hbtn,.top .ibtn{width:38px;height:38px}
  .lang-sw a{min-width:28px;height:30px;padding:0 4px;font-size:12px}
  .brand .wm{height:42px}
}
/* home: riquadri dei geositi senza altezza fissa (prima si sovrapponevano) */
@media (max-width:900px){.mos{grid-auto-rows:auto}.tile{min-height:240px}.tile.big{min-height:340px}}
@media (max-width:560px){.tile{min-height:220px}.tile.big{min-height:300px}.tile.big .tn{font-size:120px}.tile.big b{font-size:26px}}
.cs-intro-g>*,.cs-sent-g>*,.gr-grid>*,.ks-grid>*,.pl-grid>*,.gt-card>*,.hgeo-in>*,.pres-in>*,.eg-grid>*,.f3>*{min-width:0}
@media (max-width:900px){.it-hint{top:12px;bottom:auto;max-width:calc(100% - 110px);line-height:1.2}}
@media (max-width:900px){.tile{padding:58px 18px 18px}.tile .tn{font-size:76px;top:4px;right:12px}.tile.big .tn{font-size:110px}.tile .tt{padding-right:0}.tile em{top:14px;left:14px}}
@media (max-width:700px){
  .trail-lab{font-size:0;gap:0;padding:4px}.trail-lab svg{width:20px;height:20px}
  .mt-a{flex-wrap:wrap}.mt-a>img,.mt-a>.mt-a-ph,.mt-a>a:first-child{flex:none}
  .mt-a-tx{flex:1 1 100%}
  .rfvg{flex-wrap:wrap}.rfvg-logo{max-width:100%}.rfvg-logo img{max-width:100%;height:auto!important;max-height:56px}
  .cr-reg .rfvg.full .rfvg-logo img{max-height:64px}
}
@media (max-width:700px){.mt-a{padding:10px}.mt-a-ph{width:100%!important;height:96px!important;border-radius:10px}}
@media (max-width:700px){
  .audio{padding-right:14px;gap:10px}.audio .meta b{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.2}
  .audio .tm{min-width:0;font-size:11px}
  .leaflet-control-attribution{font-size:9px!important;max-width:70vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}
/* v119 · visori VR */
.vx{background:radial-gradient(ellipse at 80% 20%,#3a4a1a 0,#1d1a16 55%);color:#fff;padding:80px 0 70px;overflow:hidden}
.vx-hd{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.vx h2{font:800 clamp(32px,4vw,54px)/1.02 var(--sans);margin:10px 0 18px}.vx h2 em{font-style:normal;color:var(--verde)}
.vx-tx>p{opacity:.92;max-width:620px}
.vx-steps{list-style:none;margin:22px 0 10px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.vx-steps li{display:flex;gap:10px;align-items:center;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:12px;font:600 14px/1.25 var(--sans)}
.vx-steps b{flex:none;width:30px;height:30px;border-radius:50%;background:var(--verde);color:var(--ink);display:grid;place-items:center;font:800 15px var(--sans)}
.vx-steps svg{width:18px;height:18px;vertical-align:-4px;color:var(--verde)}
.vx-alt{font:500 14px var(--sans);opacity:.7}
.vx-hs{display:grid;place-items:center}
.vx-head{position:relative;width:min(420px,100%);animation:vxf 5s ease-in-out infinite}
.vx-head svg{width:100%;display:block;filter:drop-shadow(0 20px 40px rgba(0,0,0,.5))}
.vx-pan{animation:vxp 14s ease-in-out infinite alternate}
@keyframes vxp{from{transform:translateX(0)}to{transform:translateX(-200px)}}
@keyframes vxf{50%{transform:translateY(-10px) rotate(-1.5deg)}}
.vx-ring{position:absolute;inset:10% 5%;border:2px solid rgba(182,198,17,.5);border-radius:50%;animation:vxr 3s ease-out infinite;pointer-events:none}
.vx-ring.r2{animation-delay:1.5s}
@keyframes vxr{from{transform:scale(.6);opacity:.9}to{transform:scale(1.25);opacity:0}}
.vx-h3{font:800 13px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--verde);margin:44px 0 14px}
.vx-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(230px,260px);gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 14px;scrollbar-width:thin}
.vx-c{position:relative;scroll-snap-align:start;height:200px;border-radius:16px;overflow:hidden;text-decoration:none;color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:12px;isolation:isolate;box-shadow:0 8px 24px rgba(0,0,0,.35);transition:transform .25s}
.vx-c:hover,.vx-c:focus-visible{transform:translateY(-4px)}
.vx-ph{position:absolute;inset:0;z-index:-1;background:center/cover}
.vx-c::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,.05) 30%,rgba(20,18,15,.9))}
.vx-c.pano .vx-ph{background-size:auto 100%;background-position:0 50%;animation:vxbg 40s linear infinite}
.vx-c.pano:hover .vx-ph{animation-duration:12s}
@keyframes vxbg{to{background-position:-200% 50%}}
.vx-k{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;background:var(--verde);color:var(--ink);font:800 11px var(--sans);letter-spacing:.06em;text-transform:uppercase;padding:5px 10px;border-radius:20px}
.vx-k svg{width:16px;height:16px}
.vx-t b{display:block;font:700 17px/1.15 var(--sans)}.vx-t small{display:block;font:500 13px/1.3 var(--sans);opacity:.85;margin-top:3px}
@media (max-width:900px){.vx{padding:56px 0 50px}.vx-hd{grid-template-columns:1fr}.vx-hs{order:-1}.vx-head{width:min(300px,80%)}.vx-steps{grid-template-columns:1fr}.vx-strip{grid-auto-columns:78%}}
@media (prefers-reduced-motion:reduce){.vx-head,.vx-pan,.vx-ring,.vx-c.pano .vx-ph{animation:none}}
.gl-grid,.cr-grid{grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr))}
.sch.wide>*{min-width:0}
@media (max-width:980px){.cs-info{width:auto!important;max-width:100%}}
@media (max-width:560px){.pres-hd{gap:12px}.pres-hd img{width:64px;height:auto}.pres-hd h2{font-size:26px}}
@media (max-width:560px){.pres-hd img{height:54px!important;padding:6px 8px!important}.pres-hd>div{min-width:0}}
.sch-st>*{min-width:0}@media (max-width:420px){.sch-st{grid-template-columns:1fr 1fr!important}}
/* v120 · carta geologica */
.gm2-stage{position:relative;display:grid;grid-template-columns:1fr 340px;gap:0;margin-top:26px;border-radius:18px;overflow:hidden;box-shadow:0 14px 40px rgba(40,32,20,.18);background:#fff}
.gm2-map{height:620px;background:#e8e4dc}
.gm2-pane path.gm2-p{transition:fill-opacity .6s,stroke-opacity .6s;cursor:pointer}
.gm2-pane{mix-blend-mode:multiply}
.gm2-side{background:#fff;padding:16px;display:flex;flex-direction:column;gap:12px;max-height:620px;overflow:auto}
.gm2-leg{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.gm2-leg button{display:flex;gap:10px;align-items:center;width:100%;text-align:left;border:0;background:none;padding:7px 8px;border-radius:10px;color:var(--ink);transition:background .2s}
.gm2-leg button:hover,.gm2-leg button.on{background:#f1eee7}
.gm2-leg button.on{box-shadow:inset 3px 0 0 var(--verde-d)}
.gm2-leg i{flex:none;width:26px;height:20px;border-radius:5px;background:var(--uc);box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}
.gm2-leg b{display:block;font:700 13.5px/1.2 var(--sans)}.gm2-leg em{display:block;font:500 11.5px var(--sans);font-style:normal;color:var(--soft)}
.gm2-ln span{display:flex;gap:10px;align-items:center;font:500 12px/1.3 var(--sans);color:var(--soft);padding:6px 8px}.gm2-ln b{color:var(--ink)}
.gm2-ln i{flex:none;width:26px;height:0;border-top:3px solid #c0262d}
.gm2-card{background:#f6f3ee;border-radius:12px;padding:14px;font:400 14px/1.45 var(--sans)}
.gm2-card>b{display:block;font:800 16px/1.2 var(--sans)}.gm2-card>em{display:block;font:700 12px var(--sans);font-style:normal;color:var(--blu-d);text-transform:uppercase;letter-spacing:.04em;margin:3px 0 6px}
.gm2-card p{margin:0 0 8px}.gm2-card a{font-weight:700;color:var(--blu-d)}
.gm2-card details{font-size:13px;color:var(--soft);margin-bottom:8px}.gm2-card summary{cursor:pointer;font-weight:700}
.gm2-sw{display:block;width:40px;height:8px;border-radius:4px;background:var(--uc);margin-bottom:8px}
.gm2-play{position:absolute;left:14px;bottom:14px;z-index:500}
.gm2-play svg{width:16px;height:16px}
.gm2-cap{position:absolute;left:50%;top:14px;transform:translateX(-50%);z-index:500;max-width:min(520px,calc(100% - 380px));background:rgba(32,29,25,.88);color:#fff;border-radius:14px;padding:10px 16px;font:500 14px/1.35 var(--sans);text-align:center;box-shadow:0 8px 24px rgba(0,0,0,.3)}
.gm2-cap b{display:block;color:var(--verde);font:800 12px var(--sans);text-transform:uppercase;letter-spacing:.08em;margin-bottom:2px}
.gm2-pt{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--ink);color:#fff;font:800 13px var(--sans);text-decoration:none;border:2px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.4)}
.gm2-src{font:500 13px/1.5 var(--sans);color:var(--soft);margin-top:12px}
@media (max-width:900px){.gm2-stage{grid-template-columns:1fr}.gm2-map{height:62vh;min-height:380px}.gm2-side{max-height:none}.gm2-cap{max-width:calc(100% - 28px);top:10px}.gm2-leg{grid-template-columns:1fr 1fr}.gm2-play{bottom:auto;top:auto;left:10px;bottom:10px;font-size:13px;padding:10px 14px}}
@media (max-width:420px){.gm2-leg{grid-template-columns:1fr}}
.gm2-mw{position:relative;min-width:0}
.gm2-ln em{display:block;font-style:normal}
@media (max-width:900px){.gm2-cap{max-width:calc(100% - 28px)}}
a.autolink{color:inherit;text-decoration:underline;text-decoration-color:var(--verde-d);text-decoration-thickness:2px;text-underline-offset:3px;transition:background .2s}
a.autolink:hover,a.autolink:focus-visible{background:var(--verde-l);text-decoration-color:var(--ink)}
.taupe a.autolink,.vx a.autolink,.hgeo a.autolink{text-decoration-color:var(--verde)}
/* v121 · rimando a Geo in Caneva */
.cnv{display:grid;grid-template-columns:260px 1fr;border-radius:18px;overflow:hidden;background:#1f3d4a;color:#fff;text-decoration:none;box-shadow:0 12px 30px rgba(0,0,0,.18);transition:transform .25s}
.cnv:hover{transform:translateY(-3px)}
.cnv-ph{background:center/cover;min-height:180px}
.cnv-tx{padding:24px 28px;display:grid;gap:6px;align-content:center}
.cnv-tx b{font:800 24px/1.15 var(--sans)}.cnv-tx em{font-style:normal;opacity:.9}
.cnv-go{font:800 14px var(--sans);color:var(--verde);margin-top:6px}
a.autolink.ext::after{content:" ↗";font-size:.8em}
@media (max-width:700px){.cnv{grid-template-columns:1fr}.cnv-ph{min-height:150px}.cnv-tx{padding:18px}.cnv-tx b{font-size:20px}}
.cnv-cr{font:500 11px var(--sans);opacity:.6}
/* v124 · virtual tour su smartphone */
@media (max-width:700px){
  .vr-top{flex-wrap:wrap;gap:6px;padding:10px 10px 26px!important;row-gap:8px}
  .vr-top .ttl{order:-1;flex:1 1 100%;padding:5px 12px 6px!important}
  .vr-top .ttl small{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .vr-top .ttl b{font-size:16px}
  .vr-top .ttl i{display:none}
  .vr-top .sp{display:none}
  .vr-top .ibtn{width:38px!important;height:38px!important}
  .vr-top .ibtn svg{width:20px;height:20px}
  .vr-top #bFull,.vr-top a[href="#/mappa"]{display:none!important}
  .vr-poi{top:118px!important}
  .mini{width:132px!important;height:104px!important;left:10px!important;bottom:90px!important}
  .vr-audio{left:150px!important;right:10px!important;bottom:90px!important;max-width:none!important}
  .vr-audio .meta b{-webkit-line-clamp:2}
}
/* v125 · Abisso delle Buselonghe */
.pl-figs{display:grid;gap:16px}
.pl-figs .pl-ril:last-child img{max-height:340px;object-fit:cover}
.pl-nomi{font:500 14px/1.45 var(--sans);color:var(--soft)}
@media (max-width:980px){.pl-figs{grid-template-columns:1fr 1fr}.pl-figs .pl-ril:first-child{grid-column:1/-1}}
/* v127 · geo-escursioni */
.ex-hero{background:linear-gradient(120deg,#3b4a22,#6d655a 60%,#3b738f)}
.ex-nums{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:22px;font:500 15px var(--sans)}
.ex-nums b{display:block;font:800 34px/1 var(--sans);color:var(--verde)}
.ex-years{display:flex;gap:10px;margin-top:22px}
.ex-years a{font:800 15px var(--sans);color:#fff;text-decoration:none;border:2px solid rgba(255,255,255,.5);padding:8px 18px;border-radius:30px}
.ex-years a:hover{background:var(--verde);border-color:var(--verde);color:var(--ink)}
.ex-yh{display:flex;align-items:baseline;gap:14px;font:800 24px var(--sans);margin:0 0 26px}
.ex-yh span{font:800 64px/1 var(--sans);color:var(--verde-d);opacity:.85}
.ex-list{display:grid;gap:26px;position:relative;padding-left:28px;border-left:3px solid var(--verde-l)}
.ex-card{position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 8px 26px rgba(30,25,20,.1)}
.ex-card::before{content:"";position:absolute;left:-39px;top:34px;width:18px;height:18px;border-radius:50%;background:var(--verde);border:4px solid var(--carta)}
.ex-cover{position:relative;min-height:260px;background:center/cover}
.ex-date{position:absolute;left:16px;top:16px;background:#fff;border-radius:14px;padding:8px 12px;text-align:center;box-shadow:0 6px 16px rgba(0,0,0,.25);font-family:var(--sans)}
.ex-date b{display:block;font:800 32px/1 var(--sans)}.ex-date em{display:block;font:800 13px var(--sans);font-style:normal;text-transform:uppercase;color:var(--verde-d)}.ex-date i{display:block;font:600 11px var(--sans);font-style:normal;color:var(--soft)}
.ex-ev{position:absolute;left:16px;bottom:16px;right:16px;background:rgba(32,29,25,.85);color:#fff;font:700 12.5px var(--sans);padding:7px 12px;border-radius:10px}
.ex-tx{padding:22px 24px}
.ex-tx h3{font:800 23px/1.15 var(--sans);margin:6px 0 10px}
.ex-tx>p{margin:0 0 12px}
.ex-st{list-style:none;margin:0 0 10px;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.ex-st li{background:#f4f1ec;border-radius:10px;padding:8px 10px}.ex-st b{display:block;font:800 15px var(--sans)}.ex-st small{font:600 11px var(--sans);color:var(--soft);text-transform:uppercase;letter-spacing:.04em}
.ex-rit{font:500 14px var(--sans);color:var(--soft)}
.ex-geo{display:inline-flex;align-items:center;gap:8px;font:700 14px var(--sans);color:var(--blu-d);text-decoration:none;margin-bottom:12px}
.ex-geo i{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--verde);color:var(--ink);font-style:normal;font-size:12px}
.ex-gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:6px}
.ex-gal figure{margin:0}.ex-gal img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;cursor:zoom-in}
.ex-cr{font:500 12px var(--sans);color:var(--soft);margin:6px 0 0}
.ex-wait{font:600 13px var(--sans);color:var(--soft);background:#f4f1ec;border:1px dashed #cfc8bb;border-radius:10px;padding:10px 12px}
@media (max-width:800px){.ex-card{grid-template-columns:1fr}.ex-cover{min-height:200px}.ex-st{grid-template-columns:repeat(2,1fr)}.ex-list{padding-left:18px}.ex-card::before{left:-29px}.ex-yh span{font-size:44px}}
/* v128 · escursioni sulla mappa */
.ex-map-sec{background:var(--carta)}
.ex-mf{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 14px}
.ex-mf button{font:700 14px var(--sans);padding:7px 16px;border-radius:30px;border:2px solid var(--yc,#2b2722);background:#fff;color:#2b2722;cursor:pointer}
.ex-mf button.on{background:var(--yc,#2b2722);color:#fff}
.ex-mf button[data-y="2025"].on{color:#2b2722}
.ex-mw{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:stretch}
.ex-map{height:560px;border-radius:14px;overflow:hidden;background:#d7d2c8}
.ex-ml{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:560px;overflow:auto}
.ex-ml button{display:flex;gap:10px;align-items:flex-start;width:100%;text-align:left;background:#fff;border:1px solid rgba(43,39,34,.12);border-radius:10px;padding:9px 10px;font:600 14px/1.3 var(--sans);color:#2b2722;cursor:pointer}
.ex-ml button:hover,.ex-ml button.on{border-color:var(--yc);box-shadow:inset 4px 0 0 var(--yc)}
.ex-ml button i,.ex-pin{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--yc);color:#1d1a16;font:800 13px var(--sans);font-style:normal;border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.45)}
.ex-ml small{display:block;font:700 11px var(--sans);letter-spacing:.06em;text-transform:uppercase;color:#655d52;margin-bottom:2px}
.ex-pin{width:30px;height:30px;font-size:14px;cursor:pointer}
.ex-pop{font:14px/1.45 var(--sans);color:#2b2722}
.ex-pop img{width:100%;height:130px;object-fit:cover;border-radius:8px;display:block;margin-bottom:8px}
.ex-pop-d{display:inline-block;font:700 11px var(--sans);letter-spacing:.05em;text-transform:uppercase;background:var(--yc);color:#1d1a16;padding:3px 8px;border-radius:20px}
.ex-pop h3{font:800 17px/1.2 var(--sans);margin:7px 0 3px}
.ex-pop em{display:block;font:italic 600 13px var(--sans);color:#3b738f}
.ex-pop p{margin:6px 0}
.ex-pop-st{font-size:12.5px;color:#655d52}
.ex-pop-a{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:6px}
.ex-pop-a a{font-weight:800;color:#3b738f}
.ex-acts{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center}
.ex-onmap{display:inline-flex;gap:6px;align-items:center;font:700 14px var(--sans);background:none;border:2px solid currentColor;color:#3b738f;border-radius:30px;padding:6px 14px;cursor:pointer}
.ex-onmap svg{width:16px;height:16px}
@media (max-width:860px){.ex-mw{grid-template-columns:1fr}.ex-map{height:62vh;min-height:360px}.ex-ml{max-height:none}}
.ex-tm{list-style:none;padding:0;margin:18px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
.ex-tm li{background:#fff;border:1px solid rgba(43,39,34,.12);border-left:4px solid var(--verde);border-radius:10px;padding:12px 14px;font:600 16px var(--sans)}
.ex-tm small{display:block;font:500 13px var(--sans);color:#655d52;margin-top:2px}
/* v130 · logo del footer con angoli arrotondati */
.f3-logo{display:inline-block;border-radius:14px;overflow:hidden;line-height:0}
.f3-logo img{border-radius:14px}
/* v130 · linea del tempo */
.ex-tl-sec{background:#2b2722;color:#fff}.ex-tl-sec .gsub{color:rgba(255,255,255,.8)}.ex-tl-sec .kicker{color:var(--verde)}
.ex-tl-sc{overflow-x:auto;margin:20px -8px 0;padding:0 8px 6px;scrollbar-width:thin}
.ex-tl{position:relative;min-width:860px;height:380px}
.ex-tl-ax{position:absolute;left:0;right:0;top:190px;height:4px;background:rgba(255,255,255,.25);border-radius:2px}
.ex-tl-ax i{position:absolute;top:10px;transform:translateX(2px);font:700 11px var(--sans);font-style:normal;color:rgba(255,255,255,.55);border-left:1px solid rgba(255,255,255,.25);padding-left:3px;height:14px;line-height:14px}
.ex-tl-y{position:absolute;top:-2px;width:50%;height:8px;background:var(--yc);opacity:.85;border-radius:4px}
.ex-tl-y b{position:absolute;left:0;top:30px;font:800 22px var(--sans);color:var(--yc)}
.ex-tl-now{position:absolute;top:-16px;width:3px;height:36px;background:#fff;border-radius:2px;text-decoration:none}
.ex-tl-now em{position:absolute;top:38px;left:-14px;font:700 11px var(--sans);font-style:normal;color:#fff;text-transform:uppercase}
.ex-tl-e{position:absolute;width:0;text-decoration:none;color:#fff;--st:46px}
.ex-tl-e::before{content:"";position:absolute;left:-1px;width:2px;background:var(--yc);opacity:.7}
.ex-tl-e::after{content:"";position:absolute;left:-6px;top:184px;width:12px;height:12px;border-radius:50%;background:var(--yc);border:2px solid #2b2722}
.ex-tl-c{position:absolute;left:-29px;width:58px;height:58px;border-radius:50%;border:3px solid var(--yc);overflow:hidden;background:#555;box-shadow:0 4px 12px rgba(0,0,0,.4);transition:transform .2s}
.ex-tl-c img{width:100%;height:100%;object-fit:cover;display:block}
.ex-tl-c i{position:absolute;right:0;bottom:0;width:20px;height:20px;border-radius:50%;background:var(--yc);color:#1d1a16;font:800 11px/20px var(--sans);font-style:normal;text-align:center}
.ex-tl-l{position:absolute;left:-60px;width:120px;text-align:center;font:600 11.5px/1.25 var(--sans);color:rgba(255,255,255,.85);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ex-tl-l b{display:block;font:800 12px var(--sans);color:var(--yc);text-transform:uppercase}
/* corsie: 0 e 2 sopra la linea, 1 e 3 sotto */
.ex-tl-e.l0::before{top:120px;height:70px}.ex-tl-e.l0 .ex-tl-c{top:62px}.ex-tl-e.l0 .ex-tl-l{top:4px}
.ex-tl-e.l1::before{top:196px;height:56px}.ex-tl-e.l1 .ex-tl-c{top:250px}.ex-tl-e.l1 .ex-tl-l{top:312px}
.ex-tl-e.l2::before{top:60px;height:130px}.ex-tl-e.l2 .ex-tl-c{top:2px}.ex-tl-e.l2 .ex-tl-l{display:none}
.ex-tl-e.l3::before{top:196px;height:110px}.ex-tl-e.l3 .ex-tl-c{top:304px}.ex-tl-e.l3 .ex-tl-l{display:none}
.ex-tl-e:hover .ex-tl-c,.ex-tl-e:focus-visible .ex-tl-c{transform:scale(1.12)}
.ex-tl-e:focus-visible{outline:none}.ex-tl-e:focus-visible .ex-tl-c{outline:3px solid #fff;outline-offset:2px}
/* barra del tempo che accompagna lo scorrimento */
.ex-tlb{position:fixed;left:0;right:0;top:var(--header-h,72px);z-index:40;background:rgba(43,39,34,.94);backdrop-filter:blur(6px);color:#fff;transform:translateY(-120%);opacity:0;transition:transform .3s,opacity .3s;pointer-events:none}
.ex-tlb.show{transform:none;opacity:1;pointer-events:auto}
.ex-tlb .wrap{display:flex;align-items:center;gap:18px;padding-top:8px;padding-bottom:8px}
.ex-tlb-l{position:relative;flex:0 0 46%;height:26px;background:linear-gradient(to right,#b6c611 0 50%,#2ea6d9 50% 100%) center/100% 3px no-repeat}
.ex-tlb-l button{position:absolute;top:2px;transform:translateX(-50%);width:22px;height:22px;border-radius:50%;border:2px solid #2b2722;background:var(--yc);color:#1d1a16;font:800 10px var(--sans);padding:0;cursor:pointer;transition:transform .2s}
.ex-tlb-l button.on{transform:translateX(-50%) scale(1.35);border-color:#fff;z-index:2}
.ex-tlb-y{position:absolute;left:0;top:-4px;font:800 9px var(--sans);color:rgba(255,255,255,.6)}.ex-tlb-y.r{left:50%}
.ex-tlb-t{flex:1;min-width:0;font:700 14px var(--sans);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media (max-width:760px){.ex-tlb-l{flex-basis:100%}.ex-tlb-t{display:none}.ex-tlb .wrap{padding-top:6px;padding-bottom:4px}}
/* v130 · galleria a mosaico */
.ex-gal{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:84px;gap:6px;margin-top:4px}
.ex-gal .ex-g:first-child{grid-column:span 2;grid-row:span 2}
.ex-gal.n1{grid-template-columns:1fr;grid-auto-rows:220px}.ex-gal.n1 .ex-g:first-child{grid-column:auto;grid-row:auto}
.ex-gal.n2,.ex-gal.n3{grid-auto-rows:120px}.ex-gal.n2 .ex-g:first-child,.ex-gal.n3 .ex-g:first-child{grid-row:span 1}
.ex-g{position:relative;padding:0;border:0;border-radius:10px;overflow:hidden;cursor:zoom-in;background:#ddd}
.ex-g img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}
.ex-g:hover img{transform:scale(1.06)}
.ex-g:focus-visible{outline:3px solid var(--blu);outline-offset:2px}
.ex-more{position:absolute;inset:0;display:grid;place-items:center;background:rgba(32,29,25,.62);color:#fff;font:800 24px var(--sans)}
.ex-gal-f{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 14px;margin-top:8px}
.ex-gal-f .ex-cr{margin:0}
.ex-all{display:inline-flex;align-items:center;gap:7px;font:700 14px var(--sans);background:var(--ink,#2b2722);color:#fff;border:0;border-radius:30px;padding:8px 16px;cursor:pointer}
.ex-all svg{width:15px;height:15px;fill:currentColor}
@media (max-width:760px){.ex-gal{grid-auto-rows:64px}}
/* visore */
.exv{position:fixed;inset:0;z-index:1000;background:rgba(18,16,14,.97);color:#fff;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;opacity:0;transition:opacity .25s}
.exv.show{opacity:1}
.exv-h{display:flex;align-items:center;gap:14px;padding:12px 18px}
.exv-t{flex:1;min-width:0}.exv-t small{display:block;font:700 11px var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--verde)}.exv-t b{display:block;font:800 17px/1.2 var(--sans);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.exv-n{font:700 14px var(--sans);color:rgba(255,255,255,.75)}
.exv-x{width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.12);color:#fff;font-size:28px;cursor:pointer}
.exv-st{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr) 56px;align-items:center;min-height:0}
.exv-st figure{margin:0;height:100%;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.exv-st img{max-width:100%;max-height:calc(100% - 36px);object-fit:contain;border-radius:6px;opacity:0;transition:opacity .25s}.exv-st img.in{opacity:1}
.exv-st figcaption{font:600 15px var(--sans);text-align:center;padding:8px 10px 0;min-height:28px}
.exv-p,.exv-nx{width:48px;height:48px;justify-self:center;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;font-size:30px;line-height:1;cursor:pointer}
.exv-p:hover,.exv-nx:hover,.exv-x:hover{background:var(--verde);color:#2b2722}
.exv-th{display:flex;gap:6px;overflow-x:auto;padding:10px 18px;justify-content:safe center;scrollbar-width:thin}
.exv-th button{flex:none;width:72px;height:52px;padding:0;border:2px solid transparent;border-radius:6px;overflow:hidden;opacity:.55;cursor:pointer;background:#333}
.exv-th button.on{border-color:var(--verde);opacity:1}.exv-th img{width:100%;height:100%;object-fit:cover;display:block}
.exv-f{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 18px 14px;font:500 12px var(--sans);color:rgba(255,255,255,.6)}
.exv-ex{font:700 13px var(--sans);background:none;border:1px solid rgba(255,255,255,.35);color:#fff;border-radius:20px;padding:6px 12px;cursor:pointer}
@media (max-width:760px){.exv-st{grid-template-columns:1fr}.exv-p,.exv-nx{position:absolute;top:40%;z-index:2;width:40px;height:40px;background:rgba(0,0,0,.45)}.exv-p{left:6px}.exv-nx{right:6px}.exv-th button{width:56px;height:42px}}
/* v130 · anteprime principali senza tagli: foto intera su fondo sfocato della stessa immagine */
.ex-cover{background:#2b2722;overflow:hidden;display:flex;align-items:center;justify-content:center}
.ex-cover::before{content:"";position:absolute;inset:-30px;background:var(--bg) center/cover;filter:blur(22px) brightness(.7);transform:scale(1.1)}
.ex-cv{position:relative;display:block;width:100%;height:100%;max-height:100%;object-fit:contain}
.ex-g:first-child{background:#2b2722}
.ex-g-bg{position:absolute;inset:-20px;width:calc(100% + 40px)!important;height:calc(100% + 40px)!important;object-fit:cover;filter:blur(16px) brightness(.7)}
.ex-gal .ex-g:first-child>img:not(.ex-g-bg){position:relative;object-fit:contain}
.ex-gal .ex-g:first-child:hover img{transform:none}
.ex-cover::before{content:none}
.ex-cover .ex-g-bg{width:calc(100% + 40px);height:calc(100% + 40px)}
.ex-cv{z-index:1}.ex-cover .ex-date,.ex-cover .ex-ev{z-index:2}
.ex-tl-l{left:-48px;width:96px}
.ex-tl-e.l2 .ex-tl-l{display:-webkit-box;left:36px;top:8px;width:104px;text-align:left}
.ex-tl{height:450px}
.ex-tl-e.l2::before{top:196px;height:184px}.ex-tl-e.l2 .ex-tl-c{top:380px}.ex-tl-e.l2 .ex-tl-l{top:388px}
/* v130 · scheda: colonna immagini (copertina intera + mosaico) e colonna testo */
.ex-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}
.ex-side{padding:14px;display:flex;flex-direction:column;gap:0;align-self:stretch;background:#f4f1ec}
.ex-side .ex-cover{min-height:0;aspect-ratio:4/3;border-radius:12px}
.ex-side .ex-gal{margin-top:8px}
.ex-side .ex-wait{margin:10px 0 0}
.exv{z-index:5000;background:#121010}
@media (max-width:860px){.ex-card{grid-template-columns:1fr}.ex-side{padding:10px}}
.ex-gal4{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:8px}
.ex-gal4 .ex-g{aspect-ratio:1}
.ex-cv-open{position:absolute;inset:0;z-index:1;background:none;border:0;cursor:zoom-in}
.ex-cv-open:focus-visible{outline:3px solid var(--blu);outline-offset:-3px;border-radius:12px}
.exv{grid-template-columns:minmax(0,1fr);width:100vw;overflow:hidden}
.exv-h{min-width:0}
/* v131 · pieghevoli 3D */
.pf-sec{background:linear-gradient(180deg,#f4f1ec,#e9e4da)}
.pf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,520px),1fr));gap:30px;margin-top:24px}
.pf{margin:0;display:flex;flex-direction:column;align-items:center}
.pf3-stage{--w:min(118px,calc((100vw - 56px)/4.3));width:100%;height:calc(var(--w)*1.304 + 90px);display:grid;place-items:center;perspective:1500px;cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.pf3-stage:active{cursor:grabbing}
.pf3{--a:28deg;transform-style:preserve-3d;transform:rotateX(var(--rx,-8deg)) rotateY(var(--ry,180deg));transition:transform .9s cubic-bezier(.2,.8,.2,1)}
.pf3.drag{transition:none}
.pf3-rot{transform-style:preserve-3d;width:calc(var(--w)*4);height:calc(var(--w)*1.304);position:relative}
.pf3-p{position:absolute;top:0;width:var(--w);height:calc(var(--w)*1.304);transform-style:preserve-3d;transform-origin:0 50%;transition:transform 1.1s cubic-bezier(.3,.7,.2,1)}
.pf3-p.p1{left:0}.pf3-p .pf3-p{left:100%}
.pf3-p img{position:absolute;inset:0;width:100%;height:100%;display:block;backface-visibility:hidden;-webkit-backface-visibility:hidden;object-fit:cover;pointer-events:auto}
.pf3-p img.b{transform:rotateY(180deg)}
.pf3-p::after{content:"";position:absolute;inset:0;pointer-events:none;transition:background .9s}
.pf3[data-state="zig"] .p1{transform:translateX(calc(var(--w)*.35)) rotateY(var(--a))}
.pf3[data-state="zig"] .p2{transform:rotateY(calc(var(--a)*-2))}
.pf3[data-state="zig"] .p3{transform:rotateY(calc(var(--a)*2))}
.pf3[data-state="zig"] .p4{transform:rotateY(calc(var(--a)*-2))}
.pf3[data-state="zig"] .p2>img,.pf3[data-state="zig"] .p4>img{filter:brightness(.88)}
.pf3-rot{filter:drop-shadow(0 18px 18px rgba(30,25,20,.28))}
.pf figcaption{text-align:center;margin-top:6px}
.pf figcaption b{display:block;font:800 18px var(--sans);margin-bottom:10px}
.pf-btns{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.pf-btns button,.pf-btns a{font:700 14px var(--sans);padding:8px 16px;border-radius:30px;border:2px solid #2b2722;background:#fff;color:#2b2722;cursor:pointer;text-decoration:none}
.pf-btns button[aria-pressed="true"],.pf-btns a{background:#2b2722;color:#fff}
.pf-btns small{font-weight:500;opacity:.75}
.pfv .exv-st img{max-height:calc(100% - 40px)}
.pfv .exv-th button{width:44px;height:58px}
@media (prefers-reduced-motion:reduce){.pf3,.pf3-p{transition:none}}
.pf3-rot{filter:none}
.pf3-stage{--w:min(165px,calc((100vw - 56px)/4.2))}
.pf3-p img{box-shadow:0 10px 24px rgba(30,25,20,.22)}
.pf3[data-state="zig"] .p2>img,.pf3[data-state="zig"] .p4>img{filter:none}
.pf3[data-state="zig"] .p2>img.f,.pf3[data-state="zig"] .p4>img.f,.pf3[data-state="zig"] .p1>img.b,.pf3[data-state="zig"] .p3>img.b{opacity:.92}
/* v133 · convegno 2025 */
.cv-hero{position:relative;overflow:hidden;background:#1d2a30}
.cv-hero-bg{position:absolute;inset:0;background:center/cover;opacity:.55}
.cv-hero .wrap{position:relative}
.cv-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,28,32,.85),rgba(20,28,32,.2));pointer-events:none}
.cv-hero .wrap{z-index:1}
.cv-cr{position:absolute;right:12px;bottom:8px;z-index:1;font:500 11px var(--sans);color:rgba(255,255,255,.75)}
.cv-jump{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.cv-jump a{font:800 15px var(--sans);color:#fff;text-decoration:none;border:2px solid rgba(255,255,255,.6);padding:8px 18px;border-radius:30px}
.cv-jump a:first-child,.cv-jump a:hover{background:var(--verde);border-color:var(--verde);color:var(--ink)}
.cv-intro .cols{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr);gap:34px;align-items:start}
.cv-loc{margin:0}.cv-loc img{width:100%;border-radius:10px;box-shadow:0 12px 30px rgba(0,0,0,.18);display:block}
.cv-loc figcaption{font:600 13px var(--sans);color:var(--soft);margin-top:8px}
.cv-pg .gd{background:var(--carta)}
.cv-days{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px;margin-top:20px}
.cv-day{background:#fff;border-radius:14px;padding:18px 20px;box-shadow:0 6px 20px rgba(30,25,20,.08);border-top:5px solid var(--verde)}
.cv-day h3{font:800 19px var(--sans);margin:0 0 12px}.cv-day h3 small{display:block;font:600 13px var(--sans);color:var(--soft);margin-top:3px}
.cv-day ol{list-style:none;margin:0;padding:0}.cv-day li{display:grid;grid-template-columns:50px 1fr;gap:10px;padding:8px 0;border-top:1px solid #eee8de;font:500 14.5px/1.4 var(--sans)}
.cv-day time{font-weight:800;color:var(--verde-d)}
.cv-gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-top:20px}
.cv-gal figure{margin:0;position:relative;border-radius:10px;overflow:hidden;background:#ddd}
.cv-gal img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;cursor:zoom-in;transition:transform .35s}
.cv-gal figure:hover img{transform:scale(1.05)}
.cv-gal figcaption{position:absolute;left:0;right:0;bottom:0;padding:22px 10px 8px;background:linear-gradient(transparent,rgba(0,0,0,.7));color:#fff;font:600 12.5px/1.3 var(--sans);pointer-events:none}
@media (max-width:860px){.cv-intro .cols{grid-template-columns:1fr}.cv-loc{max-width:360px}.cv-gal{grid-template-columns:repeat(2,1fr)}}
.cv-pg .gd{background:radial-gradient(ellipse at 50% 30%,#3b4a52,#16201f 70%);padding-top:40px;min-height:0}
.gd[style*="--ar"] .gd-pg{aspect-ratio:var(--ar)}
.gd[style*="--ar"] .gd-book{--h:min(74vh,880px,calc((100vw - 170px) * 1.4146 / 2))}
@media (max-width:820px){.gd[style*="--ar"] .gd-book{--h:min(68vh,640px,calc((100vw - 40px) * 1.4146))}}
/* v134 · copertine: foto piena senza bande sfocate */
.ex-side .ex-cover{aspect-ratio:3/2;background:#2b2722}
.ex-cover .ex-g-bg{display:none}
.ex-cv{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}
/* v135 · programma del convegno */
.cv-prog{background:linear-gradient(180deg,#f4f1ec,#ebe6dc)}
.cvp{display:grid;grid-template-columns:1fr 1.6fr 1fr;gap:22px;margin-top:26px;align-items:start}
.cvp-day{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 10px 30px rgba(30,25,20,.1)}
.cvp-day header{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:0 14px;align-items:center;background:#2b2722;color:#fff;padding:18px 20px}
.cvp-day header b{grid-row:span 2;font:800 58px/1 var(--sans);color:var(--verde)}
.cvp-day header span{font:800 18px/1.1 var(--sans);text-transform:capitalize}.cvp-day header span small{display:block;font:700 12px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#cfc7b8}
.cvp-day header em{font:500 13px/1.3 var(--sans);font-style:normal;color:#e5e0d6}.cvp-day header em i{display:inline-block;font-style:normal;font-weight:800;font-size:11px;letter-spacing:.12em;text-transform:uppercase;background:var(--verde);color:#2b2722;border-radius:20px;padding:2px 8px;margin-right:6px}
.cvp-day ol{list-style:none;margin:0;padding:10px 20px 18px;position:relative}
.cvp-day ol::before{content:"";position:absolute;left:73px;top:18px;bottom:24px;width:2px;background:#e6dfd2}
.cvp-day li{display:grid;grid-template-columns:48px 1fr;gap:22px;padding:11px 0;position:relative}
.cvp-day li::before{content:"";position:absolute;left:48px;top:16px;width:12px;height:12px;border-radius:50%;background:var(--verde);border:3px solid #fff;box-shadow:0 0 0 1px #d8d1c4}
.cvp-day li.mi::before{background:#d8d1c4}.cvp-day li.ex::before{background:#2ea6d9}
.cvp-day time{font:800 14px var(--sans);color:var(--verde-d);padding-top:2px;text-align:right}
.cvp-day li b{display:block;font:700 15px/1.35 var(--sans);color:#2b2722}
.cvp-day li span{display:block;font:500 13.5px/1.35 var(--sans);color:#3b738f;margin-top:3px}
.cvp-day li.mi b{font-weight:500;color:#7a7065}.cvp-day li.mi time{color:#a49a8c}
.cvp-atti{display:inline-block;margin-top:7px;font:700 12.5px var(--sans);color:#2b2722;background:#f1eee6;border:0;border-radius:20px;padding:5px 12px;cursor:pointer;text-decoration:none}
.cvp-atti:hover{background:var(--verde)}
@media (max-width:1100px){.cvp{grid-template-columns:1fr 1fr}.cvp-day:nth-child(2){grid-row:span 2;grid-column:2}}
@media (max-width:760px){.cvp{grid-template-columns:1fr}.cvp-day:nth-child(2){grid-row:auto;grid-column:auto}.cvp-day ol{padding:6px 14px 14px}.cvp-day ol::before{left:65px}.cvp-day li::before{left:42px}.cvp-day li{grid-template-columns:42px 1fr;gap:20px}}
/* v137 · programma a righe larghe */
.cvq{display:flex;flex-direction:column;gap:22px;margin-top:26px}
.cvq-day{display:grid;grid-template-columns:230px minmax(0,1fr);background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 10px 30px rgba(30,25,20,.08)}
.cvq-day header{background:#2b2722;color:#fff;padding:24px 22px;display:flex;flex-direction:column;gap:6px}
.cvq-k{align-self:flex-start;font:800 11px var(--sans);letter-spacing:.14em;text-transform:uppercase;background:var(--verde);color:#2b2722;border-radius:20px;padding:3px 10px}
.cvq-day header b{font:800 76px/1 var(--sans);color:var(--verde);margin-top:6px}
.cvq-w{font:800 17px/1.2 var(--sans)}
.cvq-day header em{font:500 14px/1.35 var(--sans);font-style:normal;color:#d9d2c6;margin-top:auto;padding-top:12px;border-top:1px solid rgba(255,255,255,.2)}
.cvq-list{list-style:none;margin:0;padding:8px 26px}
.cvq-list li{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:18px;align-items:center;padding:14px 0;border-bottom:1px solid #eee8de}
.cvq-list li:last-child{border-bottom:0}
.cvq-list time{font:800 17px var(--sans);color:var(--verde-d)}
.cvq-list b{display:block;font:700 17px/1.35 var(--sans);color:#2b2722}
.cvq-list li div span{display:block;font:500 14.5px/1.35 var(--sans);color:#3b738f;margin-top:3px}
.cvq-mi{grid-template-columns:64px 1fr!important;padding:8px 0!important}.cvq-mi time{color:#a49a8c!important;font-size:14px!important}.cvq-mi span{font:500 14px var(--sans);color:#7a7065}
.cvq-it.ex time{color:#2ea6d9}
.cvq-list .cvp-atti{margin:0;white-space:nowrap;padding:8px 14px;font-size:13px}.cvp-atti small{font-weight:500;opacity:.75}
@media (max-width:860px){.cvq-day{grid-template-columns:1fr}.cvq-day header{flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 14px;padding:16px 18px}.cvq-day header b{font-size:52px;margin:0}.cvq-day header em{margin:0;padding:0;border:0;flex-basis:100%}
.cvq-list{padding:4px 16px}.cvq-list li{grid-template-columns:52px minmax(0,1fr);gap:12px}.cvq-list .cvp-atti{grid-column:2;justify-self:start;white-space:normal}}
/* v140 · zoom pagina degli sfogliabili */
.gd-zoom{background:rgba(12,14,15,.96)}
.gd-zoom img{height:calc(100vh - 40px);max-width:96vw;object-fit:contain;box-shadow:0 20px 60px rgba(0,0,0,.6)}
.gd-zoom .x{width:48px;height:48px;font-size:28px;line-height:1}
@media (max-width:820px){.gd-zoom .zi{padding:60px 8px 8px}.gd-zoom img{height:auto;width:100%;max-width:none}}
/* v150 · fotosfere 360° nella scheda grotta */
.gp-sec{background:#1d1a16;color:#fff}.gp-sec .gsub{color:rgba(255,255,255,.8)}
.gp-wrap{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:14px;margin-top:18px}
.gp-view{position:relative;height:min(68vh,560px);border-radius:14px;overflow:hidden;background:#000}
.gp-start{position:absolute;inset:0;border:0;background:center/cover;cursor:pointer;display:grid;place-items:center}
.gp-start span{display:inline-flex;gap:8px;align-items:center;font:800 16px var(--sans);background:var(--verde);color:#2b2722;padding:12px 22px;border-radius:30px;box-shadow:0 8px 24px rgba(0,0,0,.5)}
.gp-start span svg{width:20px;height:20px}
.gp-load{position:absolute;inset:0;display:grid;place-items:center;font:600 15px var(--sans);color:#ccc}
.gp-tabs{display:flex;flex-direction:column;gap:10px}
.gp-tabs button{flex:1;min-height:110px;border:3px solid transparent;border-radius:12px;background:center/cover;position:relative;cursor:pointer;overflow:hidden;text-align:left}
.gp-tabs button.on{border-color:var(--verde)}
.gp-tabs button span{position:absolute;left:0;right:0;bottom:0;padding:18px 10px 8px;background:linear-gradient(transparent,rgba(0,0,0,.75));color:#fff;font:700 13px/1.3 var(--sans)}
@media (max-width:760px){.gp-wrap{grid-template-columns:1fr}.gp-tabs{flex-direction:row}.gp-tabs button{min-height:80px}.gp-view{height:56vh}}
.gp-wrap:not(:has(.gp-tabs)){grid-template-columns:1fr}
/* v154 · visita virtuale lineare in grotta */
/* v157 · "Il filo di Arianna": visita immersiva guidata dalla pianta */
.gv-sec{background:radial-gradient(120% 80% at 70% 0,#2a2620 0,#0d0c0a 60%);color:#fff;padding:40px 0 28px}
.gv-head{margin-bottom:18px}.gv-head h2{font:800 clamp(28px,4vw,46px)/1.05 var(--sans);margin:6px 0 10px}.gv-head .gsub{color:rgba(255,255,255,.78);max-width:760px;margin:0}
.gv-shell{--side:300px;position:relative;max-width:1560px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) var(--side);background:#000;transition:grid-template-columns .35s ease}
@media (min-width:1600px){.gv-shell{border-radius:18px;overflow:hidden}}
.gv-shell.nomap{grid-template-columns:minmax(0,1fr) 0}
.gv-view{position:relative;height:min(80vh,780px);overflow:hidden;background:#000}
.gv-psv{position:absolute;inset:0;transition:filter .5s,transform .65s cubic-bezier(.55,0,.9,.5)}
.gv-view.dive .gv-psv{transform:scale(1.06);filter:blur(2.5px) brightness(1.15)}
.gv-view.back .gv-psv{transform:scale(.97);filter:blur(2px) brightness(.8)}
.gv-view.emerge .gv-psv{transition:filter .9s,transform .9s cubic-bezier(.2,.6,.3,1)}
.gv-flash{position:absolute;inset:0;z-index:5;pointer-events:none;opacity:0;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.0) 0,rgba(255,255,255,0) 18%,rgba(0,0,0,.85) 75%);transition:opacity .5s}
.gv-view.dive .gv-flash{opacity:1}
.gv-torch{position:absolute;inset:0;z-index:6;pointer-events:none;--x:50%;--y:50%;background:radial-gradient(circle 190px at var(--x) var(--y),transparent 0,transparent 35%,rgba(0,0,0,.55) 62%,rgba(0,0,0,.94) 100%);transition:background .05s}
@media (pointer:coarse){.gv-torch{--x:50%!important;--y:50%!important}}
.gv-start{position:absolute;inset:0;z-index:30;border:0;cursor:pointer;background:center/cover;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#fff}
.gv-start::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(0,0,0,.15),rgba(0,0,0,.8))}
.gv-start>*{position:relative}
.gv-go{display:inline-flex;align-items:center;gap:10px;font:800 20px var(--sans);background:var(--verde);color:#2b2722;border-radius:40px;padding:16px 32px;box-shadow:0 0 0 0 rgba(182,198,17,.6);animation:gvpulse 2.2s infinite}
.gv-go svg{width:24px;height:24px}.gv-start small{font:600 14px var(--sans);text-shadow:0 1px 6px #000}
@keyframes gvpulse{70%{box-shadow:0 0 0 22px rgba(182,198,17,0)}100%{box-shadow:0 0 0 0 rgba(182,198,17,0)}}
.gv-hud{position:absolute;left:16px;top:16px;z-index:20;display:flex;align-items:center;gap:12px;max-width:calc(100% - 100px);background:rgba(14,13,11,.62);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.12);border-radius:40px;padding:7px 16px 7px 7px}
.gv-hn{flex:none;font:800 13px var(--sans);background:var(--verde);color:#2b2722;border-radius:30px;padding:6px 10px}
.gv-hud b{font:700 15.5px/1.25 var(--sans);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv-hd{flex:none;font:700 13px var(--sans);color:var(--verde);font-variant-numeric:tabular-nums}
.gv-tools{position:absolute;right:14px;top:50%;transform:translateY(-50%);z-index:21;display:flex;flex-direction:column;gap:4px;background:rgba(14,13,11,.6);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.12);padding:6px;border-radius:32px}
.gv-tool{width:42px;height:42px;border-radius:50%;border:0;background:transparent;color:#fff;display:grid;place-items:center;cursor:pointer;transition:background .2s}
.gv-tool svg{width:20px;height:20px}.gv-tool:hover{background:rgba(255,255,255,.16)}.gv-tool.on{background:var(--verde);color:#2b2722}.gv-tool.dim{opacity:.45}
.gv-step{position:absolute;bottom:22px;z-index:20;border:0;cursor:pointer;display:flex;align-items:center;gap:8px;border-radius:40px;font:800 17px var(--sans);transition:transform .2s,opacity .2s}
.gv-step svg{width:24px;height:24px}
.gv-step.nx{left:50%;transform:translateX(-50%);background:var(--verde);color:#2b2722;padding:14px 30px 14px 22px;box-shadow:0 8px 26px rgba(0,0,0,.5);flex-direction:row-reverse}
.gv-step.nx:hover{transform:translateX(-50%) scale(1.05)}
.gv-step.pv{left:18px;width:48px;height:48px;justify-content:center;background:rgba(14,13,11,.62);color:#fff;border:1px solid rgba(255,255,255,.18)}
.gv-step:disabled{opacity:.25;cursor:default}
.gv-side{position:relative;background:#f3efe7;color:#2b2722;display:flex;flex-direction:column;min-width:0;overflow:hidden;height:min(80vh,780px)}
.gv-tabs{display:flex;gap:4px;padding:10px 10px 0}
.gv-tabs button{flex:1;border:0;background:transparent;font:800 12px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:#8a8174;padding:8px;border-bottom:3px solid transparent;cursor:pointer}
.gv-tabs button.on{color:#2b2722;border-color:var(--verde)}
.gv-maps{position:relative;flex:1;min-height:0;padding:6px 30px 6px 8px}
.gv-map{display:none;width:100%;height:100%}.gv-map.on{display:block}
.gv-map image{opacity:.55;mix-blend-mode:multiply}
.gv-thr0{fill:none;stroke:#2b2722;stroke-width:2;stroke-dasharray:3 4;opacity:.45;stroke-linecap:round;stroke-linejoin:round}
.gv-thr{fill:none;stroke:#e4a21c;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1000;transition:stroke-dashoffset 1.1s cubic-bezier(.4,0,.2,1);filter:drop-shadow(0 0 3px rgba(240,170,20,.9))}
.gv-cone{fill:rgba(228,162,28,.38);stroke:rgba(228,162,28,.9);stroke-width:1}
.gv-node{cursor:pointer;outline:none}.gv-node circle{fill:#fff;stroke:#2b2722;stroke-width:1.6;transition:r .2s,fill .2s}
.gv-node text{font:800 9px var(--sans);fill:#2b2722;paint-order:stroke;stroke:#f3efe7;stroke-width:3px;opacity:0;transition:opacity .2s}
.gv-node:hover circle,.gv-node:focus circle{r:8;fill:var(--verde)}.gv-node:hover text,.gv-node:focus text,.gv-node.on text{opacity:1}
.gv-node.done circle{fill:#e4a21c}
.gv-me{fill:#e2401c;stroke:#fff;stroke-width:2.5;pointer-events:none;transition:cx 1.1s cubic-bezier(.4,0,.2,1),cy 1.1s cubic-bezier(.4,0,.2,1);animation:gvme 1.6s ease-in-out infinite}
@keyframes gvme{50%{stroke-width:6;stroke:rgba(255,255,255,.5)}}
.gv-peek{position:absolute;left:8px;right:34px;z-index:3;background:#2b2722;color:#fff;border-radius:10px;overflow:hidden;box-shadow:0 8px 24px rgba(0,0,0,.4);pointer-events:none}
.gv-peek img{display:block;width:100%;aspect-ratio:2/1;object-fit:cover}.gv-peek b{display:block;font:700 12.5px/1.3 var(--sans);padding:6px 9px}
.gv-depth{position:absolute;right:10px;top:12px;bottom:12px;width:8px;border-radius:4px;background:linear-gradient(#cfe0f0,#2b3f55)}
.gv-depth i{position:absolute;left:50%;top:calc(var(--p,0) * 100%);width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;background:#e2401c;border:3px solid #fff;box-shadow:0 1px 5px rgba(0,0,0,.4);transition:top 1.1s cubic-bezier(.4,0,.2,1)}
.gv-depth span{position:absolute;right:12px;font:700 10px var(--sans);color:#655d52;white-space:nowrap}.gv-depth span:first-of-type{top:-2px}.gv-depth span:last-of-type{bottom:-2px}
.gv-sidecap{margin:0;padding:6px 12px 10px;font:500 11px/1.35 var(--sans);color:#7d7466}
.gv-cr{margin-top:10px;color:rgba(255,255,255,.6)}
.gv-shell.is-fs,.gv-shell.gv-max{max-width:none;border-radius:0}
.gv-shell.gv-max{position:fixed;inset:0;z-index:5000}
.gv-shell.is-fs .gv-view,.gv-shell.is-fs .gv-side,.gv-shell.gv-max .gv-view,.gv-shell.gv-max .gv-side{height:100vh;height:100dvh}
.gv-shell.is-fs{--side:340px}
@media (max-width:900px){
  .gv-shell{grid-template-columns:1fr}.gv-shell.nomap{grid-template-columns:1fr}.gv-shell.nomap .gv-side{display:none}
  .gv-view{height:68vh}.gv-side{height:auto}.gv-maps{height:380px;flex:none}
  .gv-step.nx{padding:12px 22px 12px 16px;font-size:15px;bottom:16px}.gv-step.pv{bottom:16px;left:12px;width:44px;height:44px}
  .gv-hud{left:10px;top:10px;max-width:calc(100% - 76px)}.gv-hud b{font-size:13.5px}
  .gv-tools{right:8px;gap:2px;padding:4px}.gv-tool{width:38px;height:38px}
  .gv-shell.is-fs,.gv-shell.gv-max{grid-template-columns:1fr}.gv-shell.is-fs .gv-side,.gv-shell.gv-max .gv-side{display:none}
}
@media (prefers-reduced-motion:reduce){.gv-me,.gv-go{animation:none}.gv-thr,.gv-me,.gv-depth i,.gv-psv{transition:none}}
/* v156 · storia delle esplorazioni: colonna allineata, nodi e "oggi" centrati */
.tl2{--col:100px;margin:22px 0 10px}
.tl2::before,.tl2::after{left:calc(var(--col) / 2 - 2px);top:24px}
.tl2::before{bottom:20px}
.tl2::after{height:calc((100% - 44px) * var(--fill))}
.tl2-it{grid-template-columns:var(--col) 1fr;gap:20px;align-items:center;padding:0 0 16px}
.tl2-y{justify-self:center;width:var(--col);min-width:0;padding:9px 0;font-size:16px;box-shadow:0 4px 12px rgba(43,39,34,.08)}
.tl2-it.past .tl2-y{box-shadow:0 6px 16px rgba(182,198,17,.45)}
.tl2-c{padding:16px 20px;border-left-width:5px}
.tl2-c::before{top:50%;transform:translateY(-50%);left:-13px}
.tl2-it.past .tl2-c::before{border-right-color:#fff}
.tl2-c p{font-size:16.5px}
.tl2-end{display:grid;grid-template-columns:var(--col) 1fr;gap:20px;align-items:center;padding:0}
.tl2-end span{justify-self:center;width:var(--col);text-align:center;position:relative;z-index:1;padding:7px 0;background:#f4f1ec}
.tl2-it.rv{opacity:0;transform:translateX(-14px);transition:opacity .5s var(--d,0ms),transform .5s var(--d,0ms)}
.tl2-it.rv.in{opacity:1;transform:none}
@media (max-width:600px){.tl2{--col:72px}.tl2-it,.tl2-end{gap:12px}.tl2-y{font-size:14px;padding:7px 0}.tl2::before,.tl2::after{left:calc(var(--col) / 2 - 2px)}}
@media (prefers-reduced-motion:reduce){.tl2-it.rv{opacity:1;transform:none;transition:none}}
/* v159 · panorama con i nomi delle montagne */
.pk-sec{background:linear-gradient(#f4f1ec,#e8e2d6)}
.pk-shell{max-width:1560px;margin:18px auto 0}
.pk-view{position:relative;height:min(78vh,740px);background:#1d2a33;overflow:hidden}
@media (min-width:1600px){.pk-view{border-radius:18px}}
.pk-start{position:absolute;inset:0;z-index:30;border:0;cursor:pointer;background:center/cover;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#fff}
.pk-start::before{content:"";position:absolute;inset:0;background:radial-gradient(circle,rgba(0,0,0,.05),rgba(0,0,0,.6))}.pk-start>*{position:relative}.pk-start small{font:600 14px var(--sans);text-shadow:0 1px 6px #000}
.pk-m{position:relative;display:flex;flex-direction:column;align-items:center;padding-bottom:var(--h);cursor:pointer;transform:translateY(2px)}
.pk-m i{position:absolute;bottom:0;left:50%;width:1.5px;height:var(--h);background:linear-gradient(rgba(255,255,255,.95),rgba(255,255,255,.35));transform:translateX(-50%)}
.pk-m i::after{content:"";position:absolute;bottom:-3px;left:50%;width:7px;height:7px;margin-left:-3.5px;border-radius:50%;background:#fff;box-shadow:0 0 0 2px rgba(0,0,0,.35)}
.pk-m b{font:700 12.5px/1.15 var(--sans);color:#fff;white-space:nowrap;text-shadow:0 1px 3px rgba(0,0,0,.9),0 0 8px rgba(0,0,0,.6)}
.pk-m small{font:600 10.5px var(--sans);color:#e9f2a0;text-shadow:0 1px 3px rgba(0,0,0,.9)}
.pk-m.main b{font-size:14.5px;background:rgba(20,18,15,.55);padding:3px 8px;border-radius:20px;backdrop-filter:blur(3px);text-shadow:none}
.pk-m.main small{margin-top:2px}
.pk-m:hover b{background:var(--verde);color:#2b2722;text-shadow:none;padding:3px 8px;border-radius:20px}
.pk-compass{position:absolute;top:14px;left:50%;transform:translateX(-50%);z-index:20;width:min(420px,70%);height:34px;overflow:hidden;border-radius:20px;background:rgba(14,13,11,.6);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.15);pointer-events:none;
  -webkit-mask:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent);mask:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent)}
.pk-compass>div{position:absolute;top:0;bottom:0;left:calc(50% - 1440px)}
.pk-compass span{position:absolute;top:7px;transform:translateX(-50%);font:800 13px var(--sans);color:#fff}
.pk-compass em{position:absolute;bottom:0;width:1px;height:6px;background:rgba(255,255,255,.5)}
.pk-compass>i{position:absolute;left:50%;bottom:0;width:0;height:0;border:6px solid transparent;border-bottom-color:var(--verde);transform:translateX(-50%)}
.pk-bar{position:absolute;left:50%;bottom:58px;transform:translateX(-50%);z-index:20;display:flex;gap:4px;background:rgba(14,13,11,.6);backdrop-filter:blur(6px);border-radius:30px;padding:4px;border:1px solid rgba(255,255,255,.15)}
.pk-bar button{border:0;background:transparent;color:#fff;font:700 13px var(--sans);padding:8px 14px;border-radius:24px;cursor:pointer;white-space:nowrap}
.pk-bar button.on{background:var(--verde);color:#2b2722}
.pk-info{position:absolute;left:16px;top:60px;z-index:21;max-width:340px;background:rgba(14,13,11,.8);backdrop-filter:blur(8px);color:#fff;border-radius:14px;padding:12px 38px 12px 14px;border-left:4px solid var(--verde)}
.pk-info b{display:block;font:800 17px var(--sans)}.pk-info span{font:500 13.5px/1.4 var(--sans);color:rgba(255,255,255,.85)}
.pk-info button{position:absolute;right:6px;top:6px;border:0;background:transparent;color:#fff;font-size:22px;cursor:pointer}
@media (max-width:760px){.pk-view{height:66vh}.pk-bar{bottom:54px}.pk-bar button{font-size:12px;padding:7px 10px}.pk-m b{font-size:11px}.pk-m.main b{font-size:12.5px}}
.gv-tabs.one span{flex:1;text-align:center;font:800 12px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:#2b2722;padding:8px;border-bottom:3px solid var(--verde)}
/* v161 · home: il Cansiglio dall'alto */
.dr-band{position:relative;height:min(62vh,560px);overflow:hidden;background:#1d2a33;color:#fff;display:flex;align-items:flex-end}
.dr-strip{position:absolute;inset:0;overflow:hidden}
.dr-strip i{position:absolute;top:0;bottom:0;left:0;background-repeat:repeat-x;background-size:auto 100%;animation:panoSpin 90s linear infinite;will-change:transform}
.dr-band::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 35%,rgba(0,0,0,.65))}
.dr-in{position:relative;z-index:1;padding-bottom:36px}.dr-in h2{font:800 clamp(30px,4.6vw,56px)/1.05 var(--sans);margin:6px 0 10px;text-shadow:0 2px 12px rgba(0,0,0,.4)}
.dr-in p{max-width:620px;font-size:18px;margin:0 0 18px;text-shadow:0 1px 8px rgba(0,0,0,.6)}
.dr-cr{position:absolute;right:14px;bottom:10px;z-index:1;font:500 11px var(--sans);color:rgba(255,255,255,.75)}
@media (prefers-reduced-motion:reduce){.dr-strip i{animation:none}}html.a11y-motion .dr-strip i{animation:none}
