.mappa-stage{position:relative;isolation:isolate}
.mappa-stage>img{display:block;width:100%;height:auto;border-radius:10px}
.mappa-punti{display:none;position:absolute;inset:0;pointer-events:none}
.mappa-stage.is-ready .mappa-punti{display:block}
.mappa-punto{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);pointer-events:auto;display:grid;place-items:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border:3px solid #fff;border-radius:50%;background:#a8382f;color:#fff;font:700 1rem/1 system-ui,sans-serif;box-shadow:0 2px 10px #17171777;cursor:pointer}
.mappa-punto:hover,.mappa-punto[aria-expanded=true]{background:#171717}
.mappa-punto:focus-visible{outline:3px solid #005a9c;outline-offset:3px}
.mappa-approfondimenti{margin:0 0 2.7rem;max-width:66rem}
.mappa-istruzione{font-size:.92rem;line-height:1.55;color:#37454e;margin:.5rem 0 1.3rem}
.mappa-scheda{border-top:1px solid #c9ced0;background:#fff;scroll-margin-top:5.5rem}
.mappa-scheda:last-of-type{border-bottom:1px solid #c9ced0}
.mappa-scheda>summary{display:flex;align-items:center;gap:1rem;min-height:54px;padding:.6rem .9rem;cursor:pointer;list-style:none;font-weight:650;color:#171717}
.mappa-scheda>summary::-webkit-details-marker{display:none}
.mappa-scheda>summary::after{content:'+';margin-left:auto;font-size:1.4rem;line-height:1}
.mappa-scheda[open]>summary::after{content:'−'}
.mappa-numero{color:#a8382f;min-width:2ch;font-variant-numeric:tabular-nums}
.mappa-scheda>summary:focus-visible,.mappa-scheda a:focus-visible{outline:3px solid #005a9c;outline-offset:2px}
.mappa-scheda-corpo{padding:0 .9rem 1.35rem;line-height:1.55;color:#28343b}
.mappa-scheda-corpo p{margin:.8rem 0}
.mappa-scheda-corpo a,.mappa-visita a{color:#8e2f29;text-decoration:underline;text-underline-offset:.14em}
.mappa-zoom{width:100%;height:clamp(11rem,28vw,17rem);border:1px solid #c9ced0;background-color:#ecebea;background-image:url('../assets/piante/pianta-scavi-1.png');background-repeat:no-repeat;background-size:240% auto;background-position:var(--bx) var(--by)}
.mappa-nota{font-size:.86rem;color:#4c5a63}
.mappa-visita{margin:1.2rem 0 0}
.a11y-contrasto .mappa-punto{background:#000;color:#fff;border-color:#fff}
.a11y-contrasto .mappa-numero,.a11y-contrasto .mappa-scheda-corpo a,.a11y-contrasto .mappa-visita a{color:#171717}
@media(max-width:640px){.mappa-punto{width:44px;height:44px}.mappa-zoom{height:12rem;background-size:300% auto}.mappa-scheda>summary{font-size:.95rem}}
