/* Mappa interattiva Riserva della Biosfera MaB UNESCO Miramare – versione HTML5 2026
   Palette e impaginazione riprese dal progetto 3DVista originale (crema #F5E0BF, verde #20524C, arancio #CF7639). */
@font-face { font-family: "Broadsheet"; src: url(data:font/woff2;base64,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) format("woff2"); font-display: swap; }

:root {
  --teal: #20524c;
  --teal-dk: #163b36;
  --cream: #f5e0bf;
  --cream-lt: #faefdc;
  --cream-txt: #f4e0bf;
  --orange: #cf7639;
  --orange-hv: #d1743b;
  --orange-txt: #8f4615;
  --ink: #333333;
  --muted: #5d5a52;
  --line: #d9c49f;
  --focus: #1a73e8;
  --sea: #0f5c6e;
  --topbar-h: 64px;
  --shadow: 0 12px 34px rgba(0, 0, 0, .35);
  --ui: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --serif: Georgia, "Times New Roman", serif;
  --display: "Broadsheet", Georgia, serif;
  --fs: 1;
}

* { box-sizing: border-box; }
html, body { height: 100%; margin: 0; }
body { font-family: var(--ui); color: var(--ink); background: var(--sea); overflow: hidden; -webkit-text-size-adjust: 100%; }
button { font: inherit; color: inherit; cursor: pointer; }
svg { width: 1.25em; height: 1.25em; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; flex: none; }
img { max-width: 100%; }
a { color: var(--teal); }
:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; border-radius: 4px; }
[hidden] { display: none !important; }
.visually-hidden { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.skip-link { position: absolute; left: 8px; top: -60px; z-index: 100; background: var(--teal); color: #fff; padding: 10px 14px; border-radius: 8px; text-decoration: none; }
.skip-link:focus { top: 8px; }
.noscript { position: fixed; inset: 0; background: var(--cream); padding: 40px; font-size: 1.2rem; z-index: 200; }

/* ---------- Barra superiore ---------- */
.topbar {
  position: relative; z-index: 30; height: var(--topbar-h);
  display: flex; align-items: center; gap: 16px; padding: 0 14px;
  background: var(--cream);
  box-shadow: 0 2px 14px rgba(0,0,0,.18);
}
.topbar::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: -4px; height: 4px; pointer-events: none;
  background: linear-gradient(90deg, var(--teal) 0%, #2f7d72 40%, var(--orange) 100%);
  background-size: 220% 100%; animation: tide 16s ease-in-out infinite alternate;
}
@keyframes tide { from { background-position: 0% 0; } to { background-position: 100% 0; } }
.brand { display: flex; align-items: center; gap: 10px; min-width: 0; }
.brand-logo { height: 44px; width: auto; mix-blend-mode: multiply; }
.brand-text { display: flex; flex-direction: column; line-height: 1.1; min-width: 0; }
.brand-l1 { font-size: .7rem; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); font-weight: 700; }
.brand-l2 { font-family: var(--display); font-size: 1.15rem; color: var(--teal); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

.maptabs { position: relative; flex: 1; min-width: 0; overflow-x: auto; scrollbar-width: none; padding: 4px 0; }
.maptabs::-webkit-scrollbar { display: none; }
.maptabs ul {
  position: relative; display: flex; gap: 2px; list-style: none; margin: 0 auto; padding: 4px; width: max-content;
  background: rgba(32,82,76,.10); border-radius: 999px;
}
.tab-indicator {
  position: absolute; top: 8px; height: calc(100% - 16px); left: 0; width: 0; border-radius: 999px; z-index: 0;
  background: var(--teal); box-shadow: 0 4px 12px rgba(32,82,76,.35);
  transition: transform .45s cubic-bezier(.3,1.3,.5,1), width .45s cubic-bezier(.3,1.3,.5,1);
}
.maptab {
  position: relative; z-index: 1; display: inline-flex; align-items: center; gap: 8px;
  border: 0; background: transparent; padding: 5px 14px 5px 5px; border-radius: 999px;
  font-weight: 700; font-size: .86rem; color: var(--teal); white-space: nowrap; transition: color .3s;
}
.maptab .tab-thumb {
  width: 28px; height: 28px; border-radius: 50%; background-size: cover; background-position: center;
  box-shadow: 0 0 0 2px var(--cream-lt), 0 1px 3px rgba(0,0,0,.3); transition: transform .3s;
}
.maptab:hover { color: var(--orange-txt); }
.maptab:hover .tab-thumb { transform: scale(1.12) rotate(-4deg); }
.maptab[aria-current="true"] { color: var(--cream-txt); }

.tools { display: flex; align-items: center; gap: 4px; }
.tool {
  display: inline-flex; align-items: center; gap: 6px; border: 0; background: transparent;
  padding: 9px 11px; border-radius: 999px; font-size: .86rem; font-weight: 700; color: var(--teal);
  transition: background .2s, color .2s;
}
.tool svg { transition: transform .3s; }
.tool:hover { background: rgba(32,82,76,.10); color: var(--orange-txt); }
.tool:hover svg { transform: translateY(-1px) scale(1.1); }
.tool[aria-expanded="true"] { background: var(--teal); color: var(--cream-txt); }
.langs { position: relative; display: inline-flex; margin-left: 6px; padding: 3px; border-radius: 999px; background: rgba(32,82,76,.10); }
.lang-indicator {
  position: absolute; top: 3px; left: 3px; width: 40px; height: calc(100% - 6px); border-radius: 999px;
  background: #a9531f; box-shadow: 0 3px 8px rgba(207,118,57,.45);
  transition: transform .35s cubic-bezier(.3,1.3,.5,1);
}
.lang {
  position: relative; z-index: 1; width: 40px; height: 34px; border: 0; background: transparent; border-radius: 999px;
  font-weight: 800; font-size: .82rem; letter-spacing: .06em; color: var(--teal); transition: color .25s;
}
.lang:hover { color: var(--orange-txt); }
.lang[aria-pressed="true"] { color: #fff; }

/* ---------- Mappa ---------- */
.stage { position: relative; height: calc(100% - var(--topbar-h)); overflow: hidden; }
.viewer-wrap { position: absolute; inset: 0; }
.viewer { width: 100%; height: 100%; background: var(--sea); }
.viewer:focus-visible { outline-offset: -4px; }

.map-controls { position: absolute; right: 14px; bottom: 18px; display: flex; flex-direction: column; gap: 6px; z-index: 12; }
.ctrl {
  width: 44px; height: 44px; display: grid; place-items: center; border: 0; border-radius: 50%;
  background: var(--cream); color: var(--teal); box-shadow: 0 3px 10px rgba(0,0,0,.3); transition: background .2s, color .2s, transform .2s;
}
.ctrl:hover { background: var(--orange); color: #fff; transform: scale(1.06); }

.back-general {
  position: absolute; left: 14px; top: 14px; z-index: 12; display: inline-flex; align-items: center; gap: 6px;
  background: var(--teal); color: var(--cream-txt); border: 0; padding: 10px 18px 10px 12px; border-radius: 999px;
  font-family: var(--display); font-size: 1.1rem; box-shadow: var(--shadow); transition: background .2s;
}
.back-general:hover { background: var(--orange-hv); }

.map-status {
  position: absolute; left: 50%; bottom: 18px; transform: translateX(-50%); z-index: 11;
  background: rgba(22,59,54,.94); color: var(--cream-txt); padding: 9px 18px; border-radius: 999px; font-size: .92rem;
  pointer-events: none; opacity: 0; transition: opacity .3s; max-width: calc(100% - 140px); text-align: center;
}
.map-status.show { opacity: 1; }

.area-picker {
  position: absolute; left: 14px; bottom: 18px; z-index: 12; background: var(--cream);
  border-radius: 14px; padding: 12px; box-shadow: var(--shadow); max-width: 280px;
}
.area-picker-title { margin: 0 0 8px; font-family: var(--serif); font-weight: 700; color: var(--teal); font-size: .95rem; }
.area-picker ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.area-btn {
  width: 100%; display: flex; align-items: center; gap: 10px; text-align: left; border: 0;
  background: var(--teal); color: var(--cream-txt); border-radius: 10px; padding: 6px 10px 6px 6px; transition: background .2s, transform .2s;
}
.area-btn:hover { background: var(--orange-hv); transform: translateX(3px); }
.area-btn img { width: 56px; height: 38px; object-fit: cover; border-radius: 6px; }
.area-btn strong { display: block; font-family: var(--display); font-weight: normal; font-size: 1.15rem; }
.area-btn small { opacity: .85; }

/* ---------- Elementi sulla mappa ---------- */
.ov-pin {
  display: block; padding: 0; border: 0; background: transparent; cursor: pointer;
  height: max(var(--pin-min, 34px), calc(var(--nat) * var(--z, .3) * 1px));
  aspect-ratio: var(--ar);
  filter: drop-shadow(0 2px 2px rgba(0,0,0,.35));
  transition: transform .15s;
}
.ov-pin img { width: 100%; height: 100%; display: block; pointer-events: none; }
.ov-pin:hover, .ov-pin:focus-visible, .ov-pin.active { transform: scale(1.18); z-index: 3; }
.ov-pin:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; border-radius: 50% 50% 8px 8px; }
.ov-label { padding: 0; border: 0; background: transparent; cursor: pointer; }
.ov-label img { width: 100%; height: 100%; display: block; object-fit: contain; pointer-events: none; }
.ov-label:hover img { filter: brightness(1.05) drop-shadow(0 0 6px rgba(207,118,57,.9)); }
.ov-label.poly img { opacity: 0; }
.ov-label.poly:hover img { opacity: .5; }
.ov-deco { pointer-events: none; }
.ov-deco img { width: 100%; height: 100%; display: block; object-fit: contain; }
.ov-link { padding: 0; border: 0; background: transparent; cursor: pointer; border-radius: 6px; }
.ov-link img { width: 100%; height: 100%; display: block; pointer-events: none; transition: filter .2s; }
.ov-link:hover img, .ov-link:focus-visible img { filter: brightness(1.25) saturate(1.4) drop-shadow(0 0 10px rgba(255,255,255,.9)); }
.ov-link .ov-link-name-old {
  position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%) rotate(-38deg);
  background: var(--teal); color: var(--cream-txt); font-family: var(--display); padding: 6px 14px; border-radius: 999px; font-size: 1rem;
  opacity: 0; transition: opacity .2s; white-space: nowrap; pointer-events: none;
}
.ov-link:hover .ov-link-name, .ov-link:focus-visible .ov-link-name { opacity: 1; }
.tip {
  position: absolute; z-index: 15; pointer-events: none; background: var(--teal); color: var(--cream-txt);
  font-family: var(--serif); font-size: .9rem; font-weight: 700; padding: 6px 10px; border-radius: 8px; white-space: nowrap;
  transform: translate(-50%, calc(-100% - 10px)); box-shadow: 0 4px 10px rgba(0,0,0,.25);
}

/* ---------- Elenco dei luoghi ---------- */
.drawer {
  position: absolute; left: 0; top: 0; bottom: 0; width: min(360px, 92vw); z-index: 20;
  background: var(--cream); box-shadow: var(--shadow); display: flex; flex-direction: column;
}
.drawer-head { display: flex; align-items: center; justify-content: space-between; padding: 14px 14px 6px 18px; }
.drawer-head h2 { margin: 0; font-family: var(--serif); font-weight: 700; color: var(--teal); font-size: 1.4rem; }
.icon-btn { width: 44px; height: 44px; display: grid; place-items: center; border: 0; background: transparent; border-radius: 50%; color: var(--teal); }
.icon-btn:hover { background: rgba(32,82,76,.1); }
.icon-btn svg { width: 24px; height: 24px; }
.search { position: relative; margin: 6px 14px 10px; }
.search svg { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); color: var(--muted); }
.search input {
  width: 100%; font: inherit; font-size: 1rem; padding: 11px 12px 11px 40px; border: 1.5px solid var(--line);
  border-radius: 999px; background: var(--cream-lt); color: var(--ink);
}
.search input:focus { border-color: var(--teal); outline: none; box-shadow: 0 0 0 3px rgba(26,115,232,.5); }
.places-list { overflow-y: auto; padding: 0 8px 20px; flex: 1; }
.places-group h3 {
  margin: 14px 10px 6px; font-size: .78rem; letter-spacing: .1em; text-transform: uppercase; color: var(--orange-txt);
  display: flex; justify-content: space-between;
}
.places-group ul { list-style: none; margin: 0; padding: 0; }
.place-item {
  width: 100%; display: flex; align-items: center; gap: 10px; text-align: left; border: 0; background: transparent;
  padding: 8px 10px; border-radius: 10px; font-family: var(--serif); color: var(--teal);
}
.place-item:hover, .place-item:focus-visible { background: rgba(32,82,76,.1); }
.place-item img { width: 46px; height: 46px; object-fit: cover; border-radius: 8px; flex: none; }
.place-item .pi-ph { width: 46px; height: 46px; border-radius: 8px; background: rgba(32,82,76,.1); flex: none; display: grid; place-items: center; }
.place-item span { font-weight: 700; line-height: 1.25; }
.place-item small { display: block; color: var(--muted); font-weight: 400; font-family: var(--ui); font-size: .8rem; margin-top: 2px; }
.empty { padding: 20px; color: var(--muted); }

/* ---------- Pulsanti tondi originali ---------- */
.close-x {
  width: 48px; height: 48px; border: 0; padding: 0; flex: none; border-radius: 50%;
  background: url("../img/icons/close.png") center / contain no-repeat; transition: transform .2s;
}
.close-x:hover { background-image: url("../img/icons/close-hover.png"); transform: rotate(90deg); }
.carousel-btn {
  position: absolute; top: 50%; transform: translateY(-50%); width: 52px; height: 52px; border-radius: 50%; border: 0; padding: 0;
  background: center / contain no-repeat; filter: drop-shadow(0 2px 6px rgba(0,0,0,.4)); transition: transform .2s;
}
.carousel-btn.prev { left: 14px; background-image: url("../img/icons/prev.png"); }
.carousel-btn.next { right: 14px; background-image: url("../img/icons/next.png"); }
.carousel-btn:hover { transform: translateY(-50%) scale(1.08); }

/* ---------- Scheda del luogo ---------- */
.card { position: absolute; inset: 0; z-index: 25; display: grid; place-items: center; }
.card-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.6); animation: fade .25s ease; }
.card-panel {
  position: relative; width: 80%; height: 90%; max-width: 1500px; display: flex; background: var(--cream);
  box-shadow: var(--shadow); overflow: hidden; animation: pop .3s cubic-bezier(.2,1.2,.4,1);
}
@keyframes fade { from { opacity: 0; } }
@keyframes pop { from { opacity: 0; transform: scale(.96); } }
.card-left { flex: 0 0 55%; background: #000; position: relative; display: flex; }
.card.no-media .card-left { display: none; }
.card-right { flex: 1; min-width: 0; display: flex; flex-direction: column; background: var(--cream); }
.card-head { display: flex; align-items: center; gap: 10px; padding: 18px 18px 0 40px; }
.card-area { margin: 0 auto 0 0; font-size: .75rem; letter-spacing: .14em; text-transform: uppercase; color: var(--orange-txt); font-weight: 800; }
.card-scroll { overflow-y: auto; padding: 0 44px 24px 40px; flex: 1; overscroll-behavior: contain; }
.card-pin { display: block; width: calc(40px * var(--fs)); height: auto; margin: 4px 0 6px; }
.card-title {
  font-family: var(--serif); font-weight: 700; color: var(--teal); font-size: calc(2.35rem * var(--fs)); line-height: 1.12; margin: 0;
}
.card-title:focus { outline: none; }
.card-title::after { content: ""; display: block; width: 180px; height: 3px; background: var(--teal); margin: 26px 0 22px; }
.card-sub { margin: 0 0 16px; color: var(--muted); font-family: var(--serif); font-style: italic; font-size: calc(1rem * var(--fs)); }
.card-text { font-family: var(--serif); font-size: calc(1.08rem * var(--fs)); line-height: 1.58; color: var(--ink); }
.card-text p { margin: 0 0 .9em; }
.card-nav { display: flex; justify-content: space-between; gap: 8px; padding: 10px 18px 14px 40px; }
.pill {
  display: inline-flex; align-items: center; gap: 4px; border: 1.5px solid var(--teal); background: transparent; color: var(--teal);
  border-radius: 999px; padding: 7px 13px; font-size: .85rem; font-weight: 700; transition: background .2s, color .2s;
}
.pill:hover { background: var(--teal); color: var(--cream-txt); }
.textsize { display: inline-flex; border: 1.5px solid var(--teal); border-radius: 999px; overflow: hidden; }
.textsize button { border: 0; background: transparent; color: var(--teal); min-width: 38px; height: 34px; font-weight: 700; padding: 0 8px; font-family: var(--serif); line-height: 1; }
.textsize button + button { border-left: 1.5px solid var(--teal); }
.textsize button[aria-pressed="true"] { background: var(--teal); color: var(--cream-txt); }
.textsize .s1 { font-size: .85rem; } .textsize .s2 { font-size: 1.05rem; } .textsize .s3 { font-size: 1.3rem; }

.card-media { flex: 1; display: flex; flex-direction: column; min-height: 0; }
.card-left .carousel, .card-left .card-image { flex: 1; display: flex; flex-direction: column; min-height: 0; margin: 0; }
.carousel { position: relative; background: #000; }
.carousel-frame { position: relative; flex: 1; min-height: 0; display: grid; place-items: center; overflow: hidden; }
.carousel-frame img { width: 100%; height: 100%; object-fit: cover; display: block; cursor: zoom-in; animation: fade .4s ease; }
.carousel-zoom { position: absolute; right: 14px; top: 14px; width: 42px; height: 42px; border-radius: 50%; border: 0; background: rgba(0,0,0,.55); color: #fff; display: grid; place-items: center; }
.carousel-zoom:hover { background: var(--orange); }
.carousel-cap {
  position: absolute; left: 0; right: 0; bottom: 0; display: flex; justify-content: space-between; align-items: flex-end; gap: 12px;
  padding: 36px 18px 14px; color: #fff; font-family: var(--serif); font-size: calc(.95rem * var(--fs));
  background: linear-gradient(transparent, rgba(0,0,0,.75)); pointer-events: none;
}
.carousel-cap .count { opacity: .85; white-space: nowrap; font-family: var(--ui); font-size: .85rem; }
.card-image img { width: 100%; height: 100%; object-fit: cover; display: block; }

.actions { display: grid; gap: 10px; margin: 18px 0 4px; }
.actions-title { display: none; }
.act {
  display: flex; align-items: center; gap: 14px; width: 100%; min-height: 66px; text-align: left; text-decoration: none;
  border: 0; background: var(--teal); color: var(--cream-txt); border-radius: 10px; padding: 9px 16px;
  font-family: var(--display); font-size: calc(1.3rem * var(--fs)); line-height: 1.1; transition: background .2s, transform .2s;
}
.act:hover { background: var(--orange-hv); transform: translateX(3px); }
.act .act-ico { height: 34px; width: 44px; object-fit: contain; flex: none; }
.act .act-label { display: block; }
.act .act-meta { display: block; font-family: var(--ui); font-size: calc(.78rem * var(--fs)); opacity: .85; margin-top: 4px; letter-spacing: .01em; }

.sounds { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 12px; margin: 6px 0; }
.sound { display: flex; flex-direction: column; border: 0; background: #fff; border-radius: 12px; overflow: hidden; padding: 0; text-align: left; box-shadow: 0 1px 4px rgba(0,0,0,.15); }
.sound img { width: 100%; aspect-ratio: 16/9; object-fit: contain; background: #fff; }
.sound span { display: flex; align-items: center; gap: 8px; padding: 10px 12px; font-family: var(--serif); font-weight: 700; font-size: calc(.95rem * var(--fs)); color: var(--teal); }
.sound[aria-pressed="true"] { box-shadow: 0 0 0 3px var(--orange); }
.media-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 14px; }
.media-tile { border: 0; padding: 0; background: #fff; border-radius: 12px; overflow: hidden; text-align: left; box-shadow: 0 1px 4px rgba(0,0,0,.15); transition: transform .2s, box-shadow .2s; }
.media-tile .mt-img { position: relative; aspect-ratio: 16/9; background: #d7c6a5; }
.media-tile img { width: 100%; height: 100%; object-fit: cover; display: block; }
.media-tile .mt-badge { position: absolute; right: 6px; bottom: 6px; background: rgba(0,0,0,.72); color: #fff; font-size: .75rem; padding: 2px 6px; border-radius: 6px; }
.media-tile .mt-play { position: absolute; inset: 0; display: grid; place-items: center; color: #fff; }
.media-tile .mt-play svg { width: 46px; height: 46px; filter: drop-shadow(0 2px 4px rgba(0,0,0,.5)); }
.media-tile span { display: block; padding: 9px 11px 11px; font-family: var(--serif); font-weight: 700; font-size: calc(.95rem * var(--fs)); color: var(--teal); }
.media-tile:hover { transform: translateY(-2px); box-shadow: 0 0 0 3px var(--orange); }

/* ---------- Finestra multimediale ---------- */
.modal { position: fixed; inset: 0; z-index: 50; display: grid; place-items: center; }
.modal-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.78); animation: fade .25s ease; }
.modal-box {
  position: relative; width: min(1180px, calc(100% - 24px)); max-height: calc(100% - 24px); display: flex; flex-direction: column;
  background: #111; border-radius: 4px; overflow: hidden; box-shadow: 0 20px 60px rgba(0,0,0,.5); color: #fff; animation: pop .3s cubic-bezier(.2,1.2,.4,1);
}
.modal-box.paper { background: var(--cream); color: var(--ink); }
.modal-box.paper .modal-head h2 { color: var(--teal); }
.modal-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 12px 10px 20px; }
.modal-head h2 { margin: 0; font-family: var(--serif); font-weight: 700; font-size: calc(1.45rem * var(--fs)); line-height: 1.15; }
.modal-body { overflow: auto; padding: 0 20px 20px; }
.video-wrap { position: relative; background: #000; overflow: hidden; aspect-ratio: 16/9; max-height: calc(100vh - 190px); margin: 0 auto; }
.video-wrap video { width: 100%; height: 100%; display: block; background: #000; }
.video-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 2px 0; font-size: .9rem; }
.quality { display: inline-flex; border: 1.5px solid var(--cream-txt); border-radius: 999px; overflow: hidden; }
.quality button { border: 0; background: transparent; color: var(--cream-txt); padding: 7px 14px; font-weight: 700; font-size: .85rem; }
.quality button[aria-pressed="true"] { background: var(--cream-txt); color: var(--teal-dk); }
.video-note { color: rgba(255,255,255,.78); font-size: .84rem; }
.frame-wrap { height: min(78vh, 820px); background: #fff; overflow: hidden; }
.frame-wrap iframe { width: 100%; height: 100%; border: 0; display: block; }
.frame-bar { display: flex; justify-content: flex-end; padding: 10px 0 0; }
.frame-bar a { color: var(--cream-txt); font-weight: 700; display: inline-flex; gap: 6px; align-items: center; }
.lightbox { display: flex; flex-direction: column; gap: 10px; }
.lightbox-stage { position: relative; display: grid; place-items: center; background: #000; height: min(72vh, 780px); }
.lightbox-stage img { max-width: 100%; max-height: 100%; object-fit: contain; }
.lightbox-cap { display: flex; justify-content: space-between; gap: 12px; font-family: var(--serif); font-size: calc(1rem * var(--fs)); }
.lightbox-cap .count { opacity: .75; white-space: nowrap; font-family: var(--ui); }
.thumbs { display: flex; gap: 6px; overflow-x: auto; padding-bottom: 4px; }
.thumbs button { border: 3px solid transparent; padding: 0; background: none; overflow: hidden; flex: none; }
.thumbs button[aria-current="true"] { border-color: var(--orange); }
.thumbs img { width: 76px; height: 54px; object-fit: cover; display: block; }
.modal-box.paper .card-image img { width: 100%; height: auto; display: block; margin-bottom: 16px; }
.info-logos { background: #fff; border-radius: 6px; padding: 12px; margin: 18px 0 0; }
.info-logos img { display: block; width: 100%; height: auto; }

/* ---------- Adattamento schermi ---------- */
@media (max-width: 1600px) { .brand-text { display: none; } }
@media (max-width: 1180px) {
  .tool span { display: none; }
  .tool { padding: 10px; }
  .card-panel { width: 92%; height: 92%; }
}
@media (max-width: 860px) {
  :root { --topbar-h: 108px; }
  .topbar { flex-wrap: wrap; height: auto; min-height: var(--topbar-h); padding: 8px 10px 0; gap: 6px; align-content: flex-start; }
  .brand { order: 1; }
  .brand-logo { height: 32px; }
  .tools { order: 2; margin-left: auto; gap: 2px; }
  .tool { padding: 8px; }
  .maptabs { order: 3; flex-basis: 100%; padding: 2px 0 6px; }
  .maptabs ul { margin: 0; }
  .maptab .tab-thumb { width: 24px; height: 24px; }
  .lang { width: 34px; height: 32px; }
  .lang-indicator { width: 34px; }
  .langs { margin-left: 2px; }
  .card-panel { width: 100%; height: 100%; max-width: none; flex-direction: column; overflow-y: auto; animation: none; }
  .card-left { flex: 0 0 auto; height: 42vh; min-height: 220px; }
  .card-right { flex: 0 0 auto; }
  .card-scroll { overflow: visible; padding: 0 20px 20px; }
  .card-head { position: absolute; top: 10px; right: 10px; padding: 0; z-index: 3; }
  .card.no-media .card-head { position: static; padding: 12px 12px 0 20px; }
  .card-area { display: none; }
  .card.no-media .card-area { display: block; }
  .textsize { background: var(--cream); }
  .card-pin { margin-top: 14px; width: 30px; }
  .card-title { font-size: calc(1.8rem * var(--fs)); }
  .card-title::after { margin: 16px 0 16px; width: 120px; }
  .card-nav { padding: 10px 20px 24px; }
  .act { min-height: 58px; font-size: calc(1.15rem * var(--fs)); }
  .carousel-btn { width: 44px; height: 44px; }
  .area-picker { left: 10px; right: 66px; bottom: 12px; max-width: none; padding: 10px; }
  .area-picker ul { grid-template-columns: 1fr 1fr; }
  .area-btn img, .area-btn small { display: none; }
  .map-controls { right: 10px; bottom: 12px; }
  .ctrl { width: 42px; height: 42px; }
  #btn-fullscreen { display: none; }
  .map-status { top: auto; bottom: 12px; left: 10px; right: 64px; transform: none; max-width: none; }
  .area-picker:not([hidden]) ~ .map-status { display: none; }
  .modal-box { width: 100%; max-height: 100%; height: 100%; border-radius: 0; }
  .frame-wrap { height: calc(100vh - 150px); }
  .lightbox-stage { height: 58vh; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}
@media (forced-colors: active) {
  .act, .maptab[aria-current="true"], .lang[aria-pressed="true"], .close-x, .carousel-btn { border: 2px solid CanvasText; }
}

/* ---------- Benvenuto ---------- */
.intro { position: fixed; inset: 0; z-index: 60; display: grid; place-items: center; padding: 16px; }
.intro-bg {
  position: absolute; inset: -30px; background: url("../../media/maps/generale_preview.jpg") center / cover;
  filter: blur(6px) saturate(1.1); transform: scale(1.05); animation: drift 30s ease-in-out infinite alternate;
}
.intro-bg::after { content: ""; position: absolute; inset: 0; background: linear-gradient(160deg, rgba(15,92,110,.55), rgba(22,59,54,.75)); }
@keyframes drift { from { transform: scale(1.05) translate(0,0); } to { transform: scale(1.15) translate(-2%, -1%); } }
.intro-box {
  position: relative; width: min(640px, 100%); background: var(--cream); padding: 34px 38px 28px; text-align: center;
  box-shadow: 0 30px 80px rgba(0,0,0,.45); animation: pop .5s cubic-bezier(.2,1.2,.4,1); max-height: 100%; overflow: auto;
}
.intro-logo { height: 64px; width: auto; mix-blend-mode: multiply; }
.intro-kicker { margin: 14px 0 4px; font-size: .78rem; letter-spacing: .16em; text-transform: uppercase; color: var(--orange-txt); font-weight: 800; }
.intro-title { margin: 0; font-family: var(--display); font-weight: normal; color: var(--teal); font-size: clamp(1.9rem, 5vw, 2.9rem); line-height: 1.05; }
.intro-title::after { content: ""; display: block; width: 120px; height: 3px; background: var(--teal); margin: 18px auto 16px; }
.intro-text { font-family: var(--serif); font-size: 1.05rem; line-height: 1.55; color: var(--ink); margin: 0 auto 20px; max-width: 52ch; }
.intro-langs { display: flex; justify-content: center; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; }
.intro-lang {
  border: 1.5px solid var(--teal); background: transparent; color: var(--teal); border-radius: 999px; padding: 8px 16px; font-weight: 700;
  transition: background .2s, color .2s;
}
.intro-lang:hover { background: rgba(32,82,76,.1); }
.intro-lang[aria-pressed="true"] { background: #a9531f; border-color: #a9531f; color: #fff; }
.intro-go {
  display: inline-flex; align-items: center; gap: 12px; border: 0; background: var(--teal); color: var(--cream-txt);
  font-family: var(--display); font-size: 1.5rem; padding: 14px 28px; border-radius: 10px; box-shadow: 0 8px 20px rgba(32,82,76,.35);
  transition: background .2s, transform .2s;
}
.intro-go:hover { background: var(--orange-hv); transform: translateY(-2px); }
.intro-go svg { width: 26px; height: 26px; transition: transform .25s; }
.intro-go:hover svg { transform: translateX(4px); }
.intro-stats { margin: 16px 0 0; color: var(--muted); font-size: .85rem; }
/* comparsa dei segnaposto all'apertura di una mappa */
.viewer.reveal .ov-pin { animation: drop .5s cubic-bezier(.2,1.4,.4,1) both; }
@keyframes drop { from { opacity: 0; transform: translateY(-14px) scale(.8); } }
.ov-link.hl img { filter: brightness(1.3) saturate(1.5) drop-shadow(0 0 12px #fff); }
.ov-link.hl .ov-link-name { opacity: 1; }
@media (max-width: 860px) {
  .intro-box { padding: 24px 20px 20px; }
  .intro-logo { height: 48px; }
  .intro-text { font-size: .98rem; }
}

/* ---------- Accessibilità ---------- */
.a11y-panel {
  position: absolute; right: 14px; top: 14px; z-index: 40; width: min(380px, calc(100% - 28px)); max-height: calc(100% - 28px); overflow: auto;
  background: var(--cream); box-shadow: var(--shadow); border-radius: 14px;
}
.a11y-panel .drawer-head h2 { font-size: 1.25rem; }
.a11y-body { padding: 4px 16px 18px; display: grid; gap: 8px; }
.a11y-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 6px 2px 8px; }
.a11y-label { font-weight: 700; color: var(--teal); }
.a11y-opt {
  display: flex; align-items: center; gap: 12px; width: 100%; text-align: left; border: 1.5px solid var(--line); background: var(--cream-lt);
  border-radius: 12px; padding: 10px 12px; color: var(--ink);
}
.a11y-opt:hover { border-color: var(--teal); }
.a11y-opt strong { display: block; color: var(--teal); }
.a11y-opt small { display: block; color: var(--muted); font-size: .82rem; margin-top: 2px; }
.a11y-opt .sw { position: relative; flex: none; width: 42px; height: 24px; border-radius: 999px; background: #b9ad96; transition: background .2s; }
.a11y-opt .sw::after { content: ""; position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; border-radius: 50%; background: #fff; transition: transform .2s; }
.a11y-opt[aria-pressed="true"] { border-color: var(--teal); }
.a11y-opt[aria-pressed="true"] .sw { background: var(--teal); }
.a11y-opt[aria-pressed="true"] .sw::after { transform: translateX(18px); }
.a11y-note { font-size: .82rem; color: var(--muted); margin: 6px 2px; }
.speak {
  display: inline-flex; align-items: center; gap: 6px; border: 1.5px solid var(--teal); background: transparent; color: var(--teal);
  border-radius: 999px; height: 37px; padding: 0 12px; font-weight: 700; font-size: .85rem; margin-right: 2px;
}
.speak:hover { background: rgba(32,82,76,.1); }
.speak[aria-pressed="true"] { background: #a9531f; border-color: #a9531f; color: #fff; }
.speaking-now { background: rgba(207,118,57,.22); border-radius: 4px; }

/* testo ad alta leggibilità */
body.readable .card-text, body.readable .card-title, body.readable .intro-text, body.readable .act, body.readable .modal-head h2,
body.readable .place-item, body.readable .carousel-cap, body.readable .media-tile span, body.readable .sound span {
  font-family: Verdana, Tahoma, "Segoe UI", Arial, sans-serif !important; letter-spacing: .03em; word-spacing: .12em;
}
body.readable .card-text { line-height: 1.85; }
body.readable .card-text p { margin-bottom: 1.2em; }
/* link evidenziati */
body.links a, body.links .act { text-decoration: underline; text-underline-offset: 3px; }
body.links .act { outline: 2px dashed currentColor; outline-offset: -6px; }
/* niente animazioni */
body.still *, body.still *::before, body.still *::after { transition: none !important; animation: none !important; }
/* contrasto elevato */
body.hc {
  --teal: #000; --teal-dk: #000; --cream: #fff; --cream-lt: #fff; --cream-txt: #ffef00; --orange: #000; --orange-hv: #000; --orange-txt: #000;
  --ink: #000; --muted: #000; --line: #000; --focus: #d60000;
}
body.hc .topbar, body.hc .card-right, body.hc .drawer, body.hc .a11y-panel, body.hc .area-picker, body.hc .modal-box.paper, body.hc .intro-box { background: #fff; color: #000; }
body.hc .act, body.hc .area-btn, body.hc .back-general, body.hc .intro-go, body.hc .tab-indicator, body.hc .lang-indicator,
body.hc .textsize button[aria-pressed="true"], body.hc .map-status, body.hc .tip { background: #000 !important; color: #ffef00 !important; box-shadow: none; }
body.hc .act:hover, body.hc .area-btn:hover { background: #222 !important; }
body.hc .act .act-ico { filter: brightness(0) saturate(100%) invert(91%) sepia(98%) saturate(2000%) hue-rotate(359deg); }
body.hc .maptab[aria-current="true"], body.hc .lang[aria-pressed="true"] { color: #ffef00; }
body.hc .card-backdrop { background: rgba(0,0,0,.85); }
body.hc .card-title::after { background: #000; }
body.hc .pill, body.hc .speak, body.hc .textsize, body.hc .a11y-opt, body.hc .intro-lang { border-color: #000; color: #000; }
body.hc .a11y-opt[aria-pressed="true"] .sw { background: #000; }
body.hc .carousel-cap { background: #000; }
body.hc a { color: #00e; text-decoration: underline; }
body.hc .ctrl { background: #fff; color: #000; border: 2px solid #000; }
body.hc .card-pin { filter: grayscale(1) contrast(2); }
body.hc .topbar::after { background: #000; animation: none; }
body.hc .ov-pin { filter: drop-shadow(0 0 0 #fff) drop-shadow(0 0 3px #ff0); }
@media (max-width: 860px) { .speak span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; } .speak { padding: 0 9px; } .a11y-panel { right: 8px; top: 8px; } }

/* ---------- Animazioni della mappa ---------- */
/* segnaposto: respiro leggero a riposo, salto e alone al passaggio */
.ov-pin { transform-origin: 50% 92%; transition: transform .35s cubic-bezier(.3,1.6,.5,1), filter .3s; }
.ov-pin::after {
  content: ""; position: absolute; left: 50%; bottom: 2%; width: 70%; aspect-ratio: 1; transform: translate(-50%, 50%) scale(.4);
  border-radius: 50%; border: 2px solid rgba(207,118,57,.9); opacity: 0; pointer-events: none;
  animation: ripple 3.2s ease-out infinite; animation-delay: var(--d, 0s);
}
@keyframes ripple { 0% { opacity: .85; transform: translate(-50%, 50%) scale(.35); } 70%, 100% { opacity: 0; transform: translate(-50%, 50%) scale(1.6); } }
.ov-pin:hover, .ov-pin:focus-visible, .ov-pin.hl, .ov-pin.active {
  transform: translateY(-8%) scale(1.28); filter: drop-shadow(0 8px 6px rgba(0,0,0,.35)) drop-shadow(0 0 10px rgba(255,214,150,.9));
  animation: hop .6s cubic-bezier(.3,1.6,.5,1);
}
@keyframes hop { 0% { transform: scale(1); } 40% { transform: translateY(-12%) scale(1.26); } 70% { transform: translateY(-1%) scale(1.2); } 100% { transform: translateY(-3%) scale(1.22); } }
/* etichette: comparsa e "pop" al passaggio */
.ov-label img { transition: transform .35s cubic-bezier(.3,1.6,.5,1), filter .3s; transform-origin: center; }
.ov-label:hover img, .ov-label.hl img { transform: scale(1.1) rotate(-1deg); filter: drop-shadow(0 6px 10px rgba(0,0,0,.35)) drop-shadow(0 0 6px rgba(255,214,150,.95)); }
.ov-label.poly.hl img, .ov-label.poly:hover img { transform: none; opacity: .45; }

@keyframes labelIn { from { opacity: 0; transform: scale(.6) translateY(10px); } }
/* elementi illustrati: barche, delfini, uccelli si muovono piano */
.ov-deco img { animation: bob 6s ease-in-out infinite; transform-origin: 50% 90%; }
@keyframes bob { 0%, 100% { transform: translateY(0) rotate(0); } 50% { transform: translateY(-4%) rotate(1.5deg); } }
/* riquadri delle aree sulla mappa generale */
.ov-link img { animation: glow 4s ease-in-out infinite; }
@keyframes glow { 0%, 100% { filter: none; } 50% { filter: brightness(1.12) saturate(1.2); } }
.ov-link:hover img, .ov-link.hl img { animation: none; }
body.still .ov-pin::after, body.still .ov-deco img, body.still .ov-link img { animation: none !important; }
@media (prefers-reduced-motion: reduce) { .ov-pin::after { display: none; } }

/* etichetta delle aree: orizzontale, fuori dal riquadro, con comparsa animata */
.area-tip {
  position: absolute; z-index: 16; pointer-events: none; display: flex; align-items: center; gap: 12px;
  background: var(--cream); color: var(--teal); border-radius: 14px; padding: 8px 18px 8px 8px;
  box-shadow: 0 12px 28px rgba(0,0,0,.35); border: 2px solid var(--teal);
  transform: translate(18px, -50%) scale(.6); transform-origin: left center; opacity: 0;
  transition: transform .45s cubic-bezier(.2,1.5,.4,1), opacity .2s;
}
.area-tip::before { /* filo di collegamento al riquadro */
  content: ""; position: absolute; right: 100%; top: 50%; width: 18px; height: 2px; background: var(--teal);
}
.area-tip::after {
  content: ""; position: absolute; right: calc(100% + 14px); top: 50%; width: 10px; height: 10px; margin-top: -5px;
  border-radius: 50%; background: var(--orange); box-shadow: 0 0 0 3px var(--cream); animation: ping 1.4s ease-out infinite;
}
@keyframes ping { 0% { box-shadow: 0 0 0 0 rgba(207,118,57,.7), 0 0 0 3px var(--cream); } 100% { box-shadow: 0 0 0 12px rgba(207,118,57,0), 0 0 0 3px var(--cream); } }
.area-tip.show { opacity: 1; transform: translate(26px, -50%) scale(1); }
.area-tip.left { transform: translate(calc(-100% - 18px), -50%) scale(.6); transform-origin: right center; }
.area-tip.left.show { transform: translate(calc(-100% - 26px), -50%) scale(1); }
.area-tip.left::before { right: auto; left: 100%; }
.area-tip.left::after { right: auto; left: calc(100% + 14px); }
.area-tip .at-img { width: 64px; height: 44px; border-radius: 9px; background-size: cover; background-position: center; flex: none; }
.area-tip strong { display: block; font-family: var(--display); font-weight: normal; font-size: 1.55rem; line-height: 1; }
.area-tip small { display: block; margin-top: 4px; font-size: .82rem; font-weight: 700; color: var(--orange-txt); white-space: nowrap; }
.ov-link.hl img, .ov-link:hover img { filter: brightness(1.3) saturate(1.5) drop-shadow(0 0 14px #fff); animation: none; }
body.hc .area-tip { background: #fff; color: #000; border-color: #000; }

/* ---------- Segnaposto SVG animati ---------- */
.ov-pin { animation: none; }
.pin-svg { width: 100%; height: 100%; display: block; overflow: visible; pointer-events: none; }
.pin-drop { fill: #d1753b; stroke: #174742; stroke-width: 3.5; }
.pin-face { fill: #f3ecdf; stroke: #174742; stroke-width: 4; }
.pin-compass circle { fill: #215b55; }
.pin-spokes line { stroke: #215b55; stroke-width: 4.5; stroke-linecap: round; }
.pin-stem { stroke: #174742; stroke-width: 3.5; }
.pin-foot { fill: #174742; }
.pin-compass { transform-box: view-box; transform-origin: 46.5px 45px; transition: transform .6s cubic-bezier(.3,1.4,.5,1); }
.pin-body { transform-box: view-box; transform-origin: 46.5px 131px; }
/* 1. comparsa a cascata: i segnaposto cadono uno dopo l'altro */
.viewer.reveal .ov-pin .pin-body { animation: pinDrop .75s cubic-bezier(.25,1.5,.45,1) both, sway 5s ease-in-out infinite; animation-delay: calc(var(--i, 0) * 70ms + .15s), calc(var(--i, 0) * 70ms + 1s); }
.viewer.reveal .ov-pin .pin-stem, .viewer.reveal .ov-pin .pin-foot { animation: footIn .4s ease both; animation-delay: calc(var(--i, 0) * 70ms); }
@keyframes pinDrop { 0% { opacity: 0; transform: translateY(-90px) scale(.7); } 60% { opacity: 1; transform: translateY(4px) scale(1.05, .92); } 80% { transform: translateY(-6px) scale(.98, 1.03); } 100% { transform: none; } }
@keyframes footIn { from { opacity: 0; transform: scale(.2); transform-origin: 46.5px 152px; } }
/* 2. a riposo oscilla piano sul suo perno */
@keyframes sway { 0%, 100% { transform: rotate(0); } 50% { transform: rotate(3deg); } 25% { transform: rotate(-2deg); } }
/* 3. onda sonar più evidente (due onde sfalsate) */
.ov-pin::before, .ov-pin::after {
  content: ""; position: absolute; left: 50%; bottom: 8%; width: 90%; aspect-ratio: 1; border-radius: 50%; pointer-events: none;
  border: 3px solid rgba(209,117,59,.95); box-shadow: 0 0 10px rgba(209,117,59,.6); opacity: 0;
  transform: translate(-50%, 50%) scale(.3); animation: sonar 4s ease-out infinite; animation-delay: var(--d, 0s);
}
.ov-pin::before { animation-delay: calc(var(--d, 0s) + .5s); border-color: rgba(255,240,210,.9); box-shadow: none; }
@keyframes sonar { 0% { opacity: 0; transform: translate(-50%, 50%) scale(.3); } 8% { opacity: 1; } 55%, 100% { opacity: 0; transform: translate(-50%, 50%) scale(2.2); } }
/* 4. al passaggio: si alza con un rimbalzo e la bussola gira */
.ov-pin:hover, .ov-pin:focus-visible, .ov-pin.hl, .ov-pin.active { animation: hop .6s cubic-bezier(.3,1.6,.5,1) forwards; transform: translateY(-3%) scale(1.22); filter: drop-shadow(0 10px 8px rgba(0,0,0,.35)); }
.ov-pin:hover .pin-compass, .ov-pin:focus-visible .pin-compass, .ov-pin.hl .pin-compass { animation: spin 1.1s cubic-bezier(.4,.1,.3,1) infinite; }
.ov-pin.active .pin-compass { transform: rotate(45deg); }
.ov-pin:hover .pin-drop, .ov-pin.hl .pin-drop, .ov-pin.active .pin-drop { fill: #e0823f; }
.ov-pin:hover::after, .ov-pin.hl::after, .ov-pin:hover::before, .ov-pin.hl::before { animation-duration: 1.2s; animation-delay: 0s; }
@keyframes spin { from { transform: rotate(0); } to { transform: rotate(360deg); } }
/* anteprima del luogo */
.peek {
  position: absolute; z-index: 17; pointer-events: none; width: 240px; background: var(--cream); color: var(--teal);
  border-radius: 14px; overflow: hidden; box-shadow: 0 14px 34px rgba(0,0,0,.38); border: 2px solid var(--teal);
  transform: translate(-50%, calc(-100% - 6px)) scale(.6); transform-origin: 50% 100%; opacity: 0;
  transition: transform .4s cubic-bezier(.2,1.5,.4,1), opacity .18s;
}
.peek.show { opacity: 1; transform: translate(-50%, calc(-100% - 14px)) scale(1); }
.peek.below { transform: translate(-50%, 6px) scale(.6); transform-origin: 50% 0; }
.peek.below.show { transform: translate(-50%, 14px) scale(1); }
.peek .pk-img { display: block; height: 120px; background-size: cover; background-position: center; }
.peek .pk-txt { display: block; padding: 9px 12px 10px; }
.peek strong { display: block; font-family: var(--serif); font-size: 1.02rem; line-height: 1.2; }
.peek small { display: block; margin-top: 3px; font-size: .8rem; font-weight: 700; color: var(--orange-txt); }
/* etichette: l'effetto resta dentro il cartiglio (niente ingrandimento), con un riflesso che scorre */
.ov-label img, .ov-label:hover img, .ov-label.hl img { transform: none !important; filter: none; }
.ov-label { position: relative; }
.ov-label .sheen {
  position: absolute; inset: 0; pointer-events: none; opacity: 0;
  -webkit-mask: var(--mask) center / contain no-repeat; mask: var(--mask) center / contain no-repeat;
  background: linear-gradient(100deg, rgba(209,117,59,.0) 30%, rgba(255,255,255,.85) 48%, rgba(209,117,59,.25) 52%, rgba(209,117,59,0) 70%);
  background-size: 260% 100%; background-position: 120% 0;
}
.ov-label:hover .sheen, .ov-label.hl .sheen { opacity: 1; animation: sheen 1.1s ease-out forwards; }
.ov-label:hover img, .ov-label.hl img { filter: saturate(1.25) brightness(1.04) !important; }
@keyframes sheen { from { background-position: 120% 0; } to { background-position: -40% 0; } }

@keyframes labelFade { from { opacity: 0; } }
body.still .ov-pin::before, body.still .ov-pin::after { display: none; }
body.still .pin-body, body.still .pin-compass { animation: none !important; }
body.hc .pin-drop { fill: #000; stroke: #ffef00; } body.hc .pin-face { fill: #fff; } body.hc .pin-compass circle, body.hc .pin-spokes line { fill: #000; stroke: #000; }
body.hc .peek { background: #fff; color: #000; border-color: #000; }
@media (prefers-reduced-motion: reduce) { .ov-pin::before, .ov-pin::after { display: none; } .pin-body, .pin-compass { animation: none !important; } }

/* ---------- Motore di ricerca ---------- */
.search-tool { background: #fff; border: 1.5px solid rgba(32,82,76,.25); padding: 8px 10px 8px 12px; }
.search-tool kbd { font: 700 .72rem var(--ui); border: 1px solid rgba(32,82,76,.35); border-radius: 5px; padding: 1px 6px; color: var(--muted); margin-left: 4px; }
.finder { position: fixed; inset: 0; z-index: 55; display: grid; justify-items: center; align-items: start; padding: 9vh 14px 14px; }
.finder-backdrop { position: absolute; inset: 0; background: rgba(10,30,28,.55); backdrop-filter: blur(3px); animation: fade .2s ease; }
.finder-box {
  position: relative; width: min(720px, 100%); max-height: 80vh; display: flex; flex-direction: column; background: var(--cream);
  border-radius: 18px; box-shadow: 0 24px 70px rgba(0,0,0,.45); overflow: hidden; animation: pop .3s cubic-bezier(.2,1.3,.4,1);
}
.finder-field { display: flex; align-items: center; gap: 10px; padding: 12px 12px 12px 18px; border-bottom: 1.5px solid var(--line); }
.finder-field svg { width: 24px; height: 24px; color: var(--teal); }
.finder-field input { flex: 1; min-width: 0; border: 0; background: transparent; font: 1.2rem var(--serif); color: var(--ink); padding: 8px 0; }
.finder-field input:focus { outline: none; }
.close-x.small { width: 38px; height: 38px; }
.finder-chips { display: flex; gap: 6px; padding: 10px 16px; flex-wrap: wrap; }
.chip { border: 1.5px solid var(--teal); background: transparent; color: var(--teal); border-radius: 999px; padding: 5px 12px; font-weight: 700; font-size: .82rem; }
.chip[aria-pressed="true"] { background: var(--teal); color: var(--cream-txt); }
.finder-results { list-style: none; margin: 0; padding: 4px 8px 8px; overflow-y: auto; flex: 1; }
.finder-head { padding: 8px 10px 4px; font-size: .75rem; letter-spacing: .12em; text-transform: uppercase; color: var(--orange-txt); font-weight: 800; }
.fr { display: flex; gap: 12px; align-items: center; padding: 8px 10px; border-radius: 12px; cursor: pointer; }
.fr[aria-selected="true"] { background: var(--teal); color: var(--cream-txt); }
.fr[aria-selected="true"] small, .fr[aria-selected="true"] .fr-snip { color: rgba(244,224,191,.85); }
.fr-thumb { position: relative; width: 74px; height: 52px; border-radius: 9px; overflow: hidden; background: rgba(32,82,76,.12); flex: none; display: grid; place-items: center; color: var(--teal); }
.fr-thumb img { width: 100%; height: 100%; object-fit: cover; }
.fr-kind { position: absolute; right: 3px; bottom: 3px; width: 22px; height: 22px; border-radius: 50%; background: var(--orange); color: #fff; display: grid; place-items: center; }
.fr-kind svg { width: 13px; height: 13px; }
.fr-txt { min-width: 0; }
.fr-txt strong { display: block; font-family: var(--serif); font-size: 1.02rem; line-height: 1.2; }
.fr-txt small { display: block; font-size: .8rem; color: var(--muted); margin-top: 2px; }
.fr-snip { display: block; font-size: .82rem; color: var(--muted); margin-top: 3px; line-height: 1.35; }
.fr mark { background: rgba(207,118,57,.35); color: inherit; border-radius: 3px; padding: 0 1px; }
.finder-hint { margin: 0; padding: 8px 18px 12px; font-size: .8rem; color: var(--muted); border-top: 1px solid var(--line); }
body.hc .fr[aria-selected="true"] { background: #000; color: #ffef00; }
@media (max-width: 860px) { .search-tool span, .search-tool kbd { display: none; } .search-tool { background: transparent; border: 0; } .finder { padding: 0; } .finder-box { max-height: 100vh; height: 100%; border-radius: 0; } }
.finder-field input::-webkit-search-cancel-button { -webkit-appearance: none; display: none; }
.fr[aria-selected="true"] mark { background: #f4e0bf; color: #163b36; }

/* ---------- Video: indicatore di caricamento e selettore qualità ---------- */
.video-spinner { position: absolute; left: 50%; top: 50%; width: 54px; height: 54px; margin: -27px 0 0 -27px; border-radius: 50%;
  border: 5px solid rgba(244,224,191,.25); border-top-color: var(--orange); opacity: 0; pointer-events: none; transition: opacity .2s; animation: spin .9s linear infinite; }
.video-spinner.on { opacity: 1; }
.quality { flex-wrap: wrap; }
.quality button { padding: 7px 12px; }
.q-now { font-weight: 600; opacity: .8; }
.video-msg { min-height: 1.2em; margin: 8px 2px 0; color: var(--cream-txt); }
/* ---------- Ottimizzazione mobile: barra superiore su due righe compatte ---------- */
@media (max-width: 860px) {
  :root { --topbar-h: 100px; }
  .topbar { flex-wrap: wrap; row-gap: 4px; padding: 6px 8px 0; }
  .brand { order: 1; flex: none; }
  .brand-logo { height: 28px; }
  .tools { order: 2; margin-left: auto; gap: 0; flex-wrap: nowrap; }
  .tool { padding: 7px; }
  .tool svg { width: 20px; height: 20px; }
  .langs { margin-left: 2px; padding: 2px; }
  .lang { width: 30px; height: 30px; font-size: .74rem; }
  .lang-indicator { width: 30px; top: 2px; left: 2px; height: calc(100% - 4px); }
  .maptabs { order: 3; flex-basis: 100%; padding: 0 0 6px; }
  .maptab { padding: 4px 12px 4px 4px; font-size: .82rem; }
  .video-bar { flex-direction: column; align-items: flex-start; }
  .quality button { padding: 7px 9px; font-size: .78rem; }
}
@media (max-width: 380px) { #btn-gallery { display: none; } }

/* ---------- Navigazione sempre disponibile tra le aree ---------- */
a.brand { text-decoration: none; color: inherit; border-radius: 10px; }
a.brand:hover .brand-logo { transform: scale(1.04); }
.brand-logo { transition: transform .25s; }
.lang-indicator { transform: none !important; transition: left .35s cubic-bezier(.3,1.3,.5,1), width .35s; }
.area-nav {
  position: absolute; left: 14px; top: 14px; z-index: 12; display: flex; align-items: stretch;
  background: var(--teal); border-radius: 999px; box-shadow: var(--shadow); overflow: hidden;
}
.area-nav button { border: 0; background: transparent; color: var(--cream-txt); display: inline-flex; align-items: center; gap: 6px; padding: 10px 14px; font-family: var(--display); font-size: 1.05rem; transition: background .2s; }
.area-nav button:hover { background: var(--orange-hv); }
.area-nav .an-home { padding-left: 14px; border-right: 1px solid rgba(244,224,191,.3); }
.area-nav .an-step + .an-step { border-left: 1px solid rgba(244,224,191,.3); }
.area-nav .an-step span { max-width: 140px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#btn-back.back-general { all: unset; }
body.hc .area-nav { background: #000; } body.hc .area-nav button { color: #ffef00; }
@media (max-width: 860px) {
  .area-nav { left: 8px; top: 8px; right: auto; }
  .area-nav button { padding: 8px 10px; font-size: .95rem; }
  .area-nav .an-home span { display: none; }
  .area-nav .an-step span { max-width: 92px; }
}
@media (max-width: 1500px) and (min-width: 861px) { .tool:not(.search-tool) span { display: none; } .tool { padding: 10px; } }
@media (max-width: 1100px) and (min-width: 861px) { .search-tool span, .search-tool kbd { display: none; } .maptab .tab-thumb { display: none; } .maptab { padding: 8px 12px; } }

/* le etichette dei luoghi compaiono insieme alla mappa, senza animazione */
.viewer.reveal .ov-label img, .ov-label img { animation: none !important; }

/* ---------- Pulsante "Mappe" e scelta delle aree in grande ---------- */
.mapswitch { flex: 1; display: flex; justify-content: center; min-width: 0; }
.maps-btn {
  display: inline-flex; align-items: center; gap: 10px; border: 0; background: var(--teal); color: var(--cream-txt);
  border-radius: 999px; padding: 5px 14px 5px 5px; box-shadow: 0 4px 12px rgba(32,82,76,.3); transition: background .2s, transform .2s;
}
.maps-btn:hover { background: var(--orange-hv); transform: translateY(-1px); }
.mb-icon { width: 38px; height: 38px; border-radius: 50%; background: var(--cream); color: var(--teal); display: grid; place-items: center; flex: none; }
.mb-icon svg { width: 22px; height: 22px; }
.maps-btn:hover .mb-icon svg { animation: unfold .6s ease; }
@keyframes unfold { 0% { transform: scaleX(1); } 40% { transform: scaleX(.6); } 100% { transform: scaleX(1); } }
.mb-txt { display: flex; flex-direction: column; line-height: 1.05; text-align: left; }
.mb-txt small { font-size: .66rem; letter-spacing: .14em; text-transform: uppercase; font-weight: 800; opacity: .8; }
.mb-txt strong { font-family: var(--display); font-weight: normal; font-size: 1.25rem; white-space: nowrap; }
.mb-chev { width: 20px; height: 20px; transition: transform .3s; }
.maps-btn[aria-expanded="true"] .mb-chev { transform: rotate(180deg); }
.maps-panel { position: absolute; inset: 0; z-index: 35; display: grid; justify-items: center; align-items: start; padding: 18px; }
.maps-backdrop { position: absolute; inset: 0; background: rgba(10,30,28,.6); backdrop-filter: blur(4px); animation: fade .25s ease; }
.maps-box {
  position: relative; width: min(1180px, 100%); max-height: 100%; overflow: auto; background: var(--cream); border-radius: 20px;
  padding: 18px 22px 24px; box-shadow: 0 24px 70px rgba(0,0,0,.45); animation: slideDown .4s cubic-bezier(.2,1.2,.4,1);
}
@keyframes slideDown { from { opacity: 0; transform: translateY(-24px) scale(.98); } }
.maps-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.maps-head h2 { margin: 0; font-family: var(--display); font-weight: normal; color: var(--teal); font-size: 2rem; }
.maps-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.maps-grid li { animation: cardIn .5s cubic-bezier(.2,1.3,.4,1) both; animation-delay: calc(var(--k) * 70ms + 80ms); }
.maps-grid .mg-general { grid-column: 1 / -1; }
@keyframes cardIn { from { opacity: 0; transform: translateY(18px) scale(.95); } }
.map-card {
  width: 100%; height: 100%; border: 0; padding: 0; background: #fff; border-radius: 16px; overflow: hidden; text-align: left;
  display: flex; flex-direction: column; box-shadow: 0 3px 10px rgba(0,0,0,.15); transition: transform .3s cubic-bezier(.3,1.4,.5,1), box-shadow .3s;
}
.map-card:hover, .map-card:focus-visible { transform: translateY(-4px); box-shadow: 0 0 0 3px var(--orange), 0 14px 28px rgba(0,0,0,.25); }
.map-card[aria-current="true"] { box-shadow: 0 0 0 3px var(--teal), 0 3px 10px rgba(0,0,0,.15); }
.mc-img { display: block; aspect-ratio: 4 / 3; background-size: cover; background-position: center; transition: transform .6s ease; }
.mg-general .mc-img { aspect-ratio: auto; height: 190px; }
.map-card:hover .mc-img { transform: scale(1.06); }
.mc-txt { position: relative; display: block; padding: 12px 14px 14px; background: #fff; }
.mc-txt strong { display: block; font-family: var(--display); font-weight: normal; color: var(--teal); font-size: 1.6rem; line-height: 1.05; }
.mc-txt small { display: block; color: var(--muted); font-weight: 700; font-size: .85rem; margin-top: 4px; }
.mc-go { display: inline-block; margin-top: 10px; background: var(--teal); color: var(--cream-txt); border-radius: 999px; padding: 5px 12px; font-weight: 800; font-size: .82rem; transition: background .2s; }
.map-card:hover .mc-go { background: var(--orange-hv); }
.map-card[aria-current="true"] .mc-go { background: transparent; color: var(--teal); border: 1.5px solid var(--teal); }
.mg-general .map-card { flex-direction: row; }
.mg-general .mc-img { flex: 1.4; }
.mg-general .mc-txt { flex: 1; display: flex; flex-direction: column; justify-content: center; padding: 18px 22px; }
body.hc .maps-btn, body.hc .mc-go { background: #000; color: #ffef00; }
@media (max-width: 860px) {
  .mapswitch { order: 3; flex-basis: 100%; justify-content: flex-start; padding-bottom: 6px; }
  .maps-btn { width: 100%; padding: 4px 12px 4px 4px; }
  .mb-icon { width: 32px; height: 32px; }
  .mb-txt { flex: 1; flex-direction: row; align-items: baseline; gap: 8px; }
  .mb-txt strong { font-size: 1.1rem; }
  .maps-panel { padding: 8px; }
  .maps-box { padding: 12px 12px 16px; border-radius: 16px; }
  .maps-head h2 { font-size: 1.5rem; }
  .maps-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
  .mg-general .map-card { flex-direction: column; }
  .mg-general .mc-img { height: 110px; flex: none; }
  .mg-general .mc-txt { padding: 10px 12px 12px; }
  .mc-txt strong { font-size: 1.25rem; }
  .mc-txt { padding: 9px 10px 11px; }
}

/* ---------- Apertura spettacolare ---------- */
.intro.leaving .intro-box { animation: introOut .7s cubic-bezier(.6,0,.4,1) forwards; }
.intro.leaving .intro-bg { animation: bgOut 1.1s ease forwards; }
@keyframes introOut { to { opacity: 0; transform: scale(1.12) translateY(-20px); filter: blur(4px); } }
@keyframes bgOut { from { opacity: 1; } to { opacity: 0; filter: blur(0); transform: scale(1.3); } }
/* durante la "ripresa" i riquadri delle aree si disegnano uno dopo l'altro, i disegni spuntano */
.viewer.cinema .ov-link { animation: linkIn 1s cubic-bezier(.2,1.3,.4,1) both; animation-delay: calc(2.4s + var(--k, 0) * .22s); }
@keyframes linkIn { 0% { opacity: 0; transform: scale(.6); } 60% { opacity: 1; transform: scale(1.08); } 100% { transform: none; } }
.viewer.cinema .ov-link img { animation: linkGlow 1.6s ease both; animation-delay: calc(2.6s + var(--k, 0) * .22s); }
@keyframes linkGlow { 0% { filter: brightness(2) drop-shadow(0 0 22px #fff); } 100% { filter: none; } }
.viewer.cinema .ov-deco { animation: decoPop .7s cubic-bezier(.2,1.5,.4,1) both; animation-delay: calc(1.6s + var(--k, 0) * .09s); }
@keyframes decoPop { from { opacity: 0; transform: scale(.3) translateY(20px); } }
.area-picker { transition: transform .7s cubic-bezier(.2,1.3,.4,1), opacity .5s; }
.area-picker.cinema-wait { transform: translateX(-120%); opacity: 0; }
body.still .viewer.cinema .ov-link, body.still .viewer.cinema .ov-deco { animation: none !important; }
.mc-go { align-self: flex-start; }

/* ---------- Indicatori ai bordi: la mappa continua ---------- */
.edge-hints { position: absolute; inset: 0; pointer-events: none; z-index: 11; }
.edge-hint {
  position: absolute; display: inline-flex; align-items: center; gap: 6px; border: 0; pointer-events: auto;
  background: rgba(22,59,54,.9); color: var(--cream-txt); font: 700 .82rem var(--ui); padding: 7px 12px; border-radius: 999px;
  box-shadow: 0 6px 16px rgba(0,0,0,.3); opacity: 0; transform: scale(.8); transition: opacity .35s, transform .35s cubic-bezier(.3,1.5,.5,1), background .2s; visibility: hidden;
}
.edge-hint.show { opacity: 1; transform: none; visibility: visible; }
.edge-hint:hover { background: var(--orange-hv); }
.edge-hint.has-pins { background: rgba(169,83,31,.95); }
.edge-hint svg { width: 18px; height: 18px; }
.edge-hint[data-dir="up"] { top: 12px; left: 50%; margin-left: -60px; }
.edge-hint[data-dir="down"] { bottom: 64px; left: 50%; margin-left: -60px; }
.edge-hint[data-dir="left"] { left: 12px; top: 50%; }
.edge-hint[data-dir="right"] { right: 70px; top: 50%; }
.edge-hint.show[data-dir="up"] svg { animation: bobUp 1.6s ease-in-out infinite; }
.edge-hint.show[data-dir="down"] svg { animation: bobDown 1.6s ease-in-out infinite; }
.edge-hint.show[data-dir="left"] svg { animation: bobLeft 1.6s ease-in-out infinite; }
.edge-hint.show[data-dir="right"] svg { animation: bobRight 1.6s ease-in-out infinite; }
@keyframes bobUp { 50% { transform: translateY(-3px); } } @keyframes bobDown { 50% { transform: translateY(3px); } }
@keyframes bobLeft { 50% { transform: translateX(-3px); } } @keyframes bobRight { 50% { transform: translateX(3px); } }
/* sfumatura ai bordi dove la mappa prosegue, e piccolo "respiro" della mappa all'apertura */
.viewer.invite .openseadragon-canvas { animation: invite 2.4s ease-in-out; }
@keyframes invite { 20% { transform: translate(-10px, -8px); } 45% { transform: translate(8px, 10px); } 70% { transform: translate(-4px, 3px); } }
body.still .edge-hint svg, body.still .viewer.invite .openseadragon-canvas { animation: none !important; }
@media (max-width: 860px) { .edge-hint { font-size: .75rem; padding: 6px 10px; } .edge-hint[data-dir="right"] { right: 8px; top: 40%; } .edge-hint[data-dir="left"] { left: 8px; top: 40%; } .edge-hint[data-dir="down"] { bottom: 60px; } }

/* ---------- Mediateca ---------- */
.library { position: fixed; inset: 0; z-index: 55; display: grid; justify-items: center; align-items: start; padding: 4vh 14px 14px; }
.lib-box { position: relative; width: min(1200px, 100%); height: 92vh; display: flex; flex-direction: column; background: var(--cream); border-radius: 20px; box-shadow: 0 24px 70px rgba(0,0,0,.45); overflow: hidden; animation: slideDown .4s cubic-bezier(.2,1.2,.4,1); }
.lib-head { display: flex; align-items: center; justify-content: space-between; padding: 16px 18px 6px 24px; }
.lib-kicker { margin: 0; font-size: .74rem; letter-spacing: .14em; text-transform: uppercase; color: var(--orange-txt); font-weight: 800; }
.lib-head h2 { margin: 0; font-family: var(--display); font-weight: normal; color: var(--teal); font-size: 2.2rem; line-height: 1; }
.lib-tabs { display: flex; gap: 6px; padding: 8px 20px; overflow-x: auto; scrollbar-width: none; border-bottom: 1.5px solid var(--line); }
.lib-tab { display: inline-flex; align-items: center; gap: 8px; border: 0; background: transparent; color: var(--teal); font-weight: 800; padding: 10px 14px; border-radius: 12px 12px 0 0; white-space: nowrap; position: relative; }
.lib-tab b { background: rgba(32,82,76,.12); border-radius: 999px; padding: 1px 8px; font-size: .78rem; }
.lib-tab[aria-selected="true"] { background: var(--teal); color: var(--cream-txt); }
.lib-tab[aria-selected="true"] b { background: rgba(244,224,191,.25); }
.lib-filters { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; justify-content: space-between; padding: 12px 20px; }
.lib-areas { display: flex; flex-wrap: wrap; gap: 6px; }
.lib-search { position: relative; flex: 0 1 300px; }
.lib-search svg { position: absolute; left: 11px; top: 50%; transform: translateY(-50%); color: var(--muted); width: 18px; height: 18px; }
.lib-search input { width: 100%; font: inherit; padding: 9px 12px 9px 36px; border: 1.5px solid var(--line); border-radius: 999px; background: var(--cream-lt); color: var(--ink); }
.lib-search input:focus { outline: none; border-color: var(--teal); box-shadow: 0 0 0 3px rgba(26,115,232,.45); }
.lib-grid { overflow-y: auto; padding: 4px 20px 24px; flex: 1; }
.lib-sec h3 { display: flex; align-items: baseline; gap: 8px; margin: 14px 2px 10px; font-family: var(--display); font-weight: normal; color: var(--teal); font-size: 1.5rem; }
.lib-sec h3 small { font: 800 .8rem var(--ui); color: var(--orange-txt); }
.lib-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px; }
.lib-list li { position: relative; display: flex; flex-direction: column; background: #fff; border-radius: 14px; overflow: hidden; box-shadow: 0 2px 8px rgba(0,0,0,.12); transition: transform .25s cubic-bezier(.3,1.4,.5,1), box-shadow .25s; animation: cardIn .4s ease both; }
.lib-list li:hover { transform: translateY(-3px); box-shadow: 0 0 0 3px var(--orange), 0 10px 24px rgba(0,0,0,.2); }
.lib-card { border: 0; background: transparent; padding: 0; text-align: left; display: flex; flex-direction: column; flex: 1; }
.lc-img { position: relative; display: block; aspect-ratio: 16 / 9; background: #d9c9a8 center / cover no-repeat; }
.lc-img.contain { background-size: contain; background-color: #fff; }
.lc-ico { display: grid; place-items: center; color: var(--teal); background: linear-gradient(135deg, #f8ecd6, #ead6b0); }
.lc-ico svg { width: 46px; height: 46px; }
.lc-play { position: absolute; inset: 0; display: grid; place-items: center; color: #fff; }
.lc-play svg { width: 44px; height: 44px; filter: drop-shadow(0 2px 4px rgba(0,0,0,.5)); }
.lc-txt { display: block; padding: 10px 12px 6px; }
.lc-txt strong { display: block; font-family: var(--serif); color: var(--teal); font-size: 1rem; line-height: 1.2; }
.lc-txt small { display: block; color: var(--orange-txt); font-weight: 800; font-size: .78rem; margin-top: 4px; }
.lc-txt em { display: block; color: var(--muted); font-style: normal; font-size: .78rem; margin-top: 2px; }
.lc-go { align-self: flex-start; margin: 4px 12px 12px; border: 1.5px solid var(--teal); background: transparent; color: var(--teal); border-radius: 999px; padding: 4px 10px; font-weight: 800; font-size: .75rem; }
.lc-go:hover { background: var(--teal); color: var(--cream-txt); }
.lib-audio .lib-card[aria-pressed="true"] .lc-img { box-shadow: inset 0 0 0 4px var(--orange); }
.lib-pub .lc-img, .lib-web .lc-img { aspect-ratio: 3 / 1; }
body.hc .lib-tab[aria-selected="true"] { background: #000; color: #ffef00; }
@media (max-width: 860px) {
  .library { padding: 0; } .lib-box { height: 100vh; border-radius: 0; }
  .lib-head h2 { font-size: 1.7rem; } .lib-tab span { display: none; } .lib-tab { padding: 9px 12px; }
  .lib-list { grid-template-columns: 1fr 1fr; gap: 10px; } .lib-search { flex-basis: 100%; }
}
.edge-hint[data-dir="down"] { bottom: 14px; }
.map-status { bottom: 62px; }
@media (max-width: 860px) { .edge-hint[data-dir="down"] { bottom: 12px; } .map-status { bottom: 56px; } }

/* =====================================================================
   v14 – Logo su blocco bianco, pulsante Cerca integrato
   ===================================================================== */
.topbar { overflow: visible; }
a.brand.brand {
  align-self: flex-start; position: relative; z-index: 3; background: #fff; height: calc(var(--topbar-h) + 18px);
  padding: 10px 18px 10px 16px; border-radius: 0 0 18px 18px; gap: 12px;
  box-shadow: 0 10px 26px rgba(10,40,36,.28), inset 0 -4px 0 var(--teal);
}
a.brand.brand::after { content: ""; position: absolute; left: 16px; right: 18px; bottom: 4px; height: 3px; border-radius: 3px;
  background: linear-gradient(90deg, var(--teal), #3f8b80 55%, var(--orange)); opacity: .9; }
.brand .brand-logo { height: 60px; mix-blend-mode: normal; }
a.brand:hover .brand-logo { transform: scale(1.03); }
.area-nav { top: 32px; }
.search-tool.search-tool {
  background: rgba(32,82,76,.11); border: 0; color: var(--teal); padding: 5px 8px 5px 5px; gap: 8px;
  box-shadow: inset 0 0 0 1.5px rgba(32,82,76,.16); transition: background .2s, box-shadow .2s, color .2s;
}
.search-tool .st-ico { width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; background: var(--teal); color: var(--cream-txt); transition: background .25s, transform .3s cubic-bezier(.3,1.6,.5,1); }
.search-tool .st-ico svg { width: 17px; height: 17px; stroke-width: 2.6; }
.search-tool .st-txt { font-size: .92rem; padding-right: 2px; }
.search-tool kbd { border: 0; background: rgba(32,82,76,.14); color: var(--teal); }
.search-tool:hover, .search-tool[aria-expanded="true"] { background: var(--teal); color: var(--cream-txt); box-shadow: 0 6px 16px rgba(32,82,76,.3); }
.search-tool:hover .st-ico { background: #a9531f; transform: rotate(-12deg) scale(1.06); }
.search-tool:hover kbd { background: rgba(244,224,191,.2); color: var(--cream-txt); }
.search-tool:hover svg { transform: none; }
body.hc a.brand.brand { box-shadow: 0 0 0 2px #000; } body.hc .search-tool .st-ico { background: #000; color: #ffef00; }
@media (max-width: 860px) {
  a.brand.brand { height: 46px; padding: 5px 10px; border-radius: 10px; box-shadow: 0 2px 8px rgba(0,0,0,.18); align-self: auto; }
  a.brand.brand::after { display: none; }
  .brand .brand-logo { height: 36px; }
  .area-nav { top: 8px; }
  .search-tool.search-tool { background: transparent; box-shadow: none; padding: 3px; }
  .search-tool .st-ico { width: 34px; height: 34px; }
}
@media (max-width: 380px) { .brand .brand-logo { height: 30px; } }

/* =====================================================================
   v14 – Motore di ricerca
   ===================================================================== */
.finder { padding: 6vh 14px 14px; }
.finder-backdrop { background: radial-gradient(ellipse at 50% 20%, rgba(15,92,110,.55), rgba(10,30,28,.78)); backdrop-filter: blur(6px) saturate(1.2); }
.finder-box { width: min(880px, 100%); max-height: 88vh; border-radius: 24px; background: var(--cream-lt); animation: finderIn .45s cubic-bezier(.2,1.2,.4,1); }
@keyframes finderIn { from { opacity: 0; transform: translateY(-24px) scale(.97); } }
.finder-hero {
  flex: none; position: relative; padding: 18px 22px 14px; color: var(--cream-txt); overflow: hidden;
  background: radial-gradient(120% 140% at 100% 0%, #2f7d72 0%, transparent 55%), linear-gradient(135deg, #1b4842, var(--teal) 60%, #22605a);
}
.finder-hero::before { /* onde stilizzate */
  content: ""; position: absolute; inset: auto -10% -30px -10%; height: 70px; opacity: .16; pointer-events: none;
  background: repeating-radial-gradient(ellipse at 50% 120%, transparent 0 14px, rgba(244,224,191,.9) 15px 16px, transparent 17px 30px);
}
.fh-row { position: relative; display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.fh-kicker { margin: 0; font-size: .74rem; letter-spacing: .16em; text-transform: uppercase; font-weight: 800; color: #f2b183; }
.fh-title { margin: 2px 0 0; font-family: var(--display); font-weight: normal; font-size: 2rem; line-height: 1; color: var(--cream-txt); }
.close-x.light { filter: drop-shadow(0 2px 6px rgba(0,0,0,.3)); }
.finder-field {
  position: relative; border: 0; background: #fffaf1; border-radius: 16px; padding: 6px 8px 6px 16px; gap: 10px;
  box-shadow: 0 10px 28px rgba(0,0,0,.25), inset 0 0 0 2px transparent; transition: box-shadow .2s;
}
.finder-field:focus-within { box-shadow: 0 10px 28px rgba(0,0,0,.25), inset 0 0 0 3px #f2b183; }
.finder-field > svg { width: 26px; height: 26px; color: var(--teal); }
.finder-field input { font: 1.3rem var(--serif); padding: 12px 0; color: var(--ink); }
.finder-field input::placeholder { color: #7d7566; }
.finder-clear { border: 0; background: rgba(32,82,76,.1); color: var(--teal); width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; flex: none; }
.finder-clear:hover { background: var(--teal); color: #fff; }
.fa-tag { display: inline-flex; align-items: center; gap: 4px; background: var(--ac); color: #fff; border-radius: 999px; padding: 4px 4px 4px 12px; font-weight: 700; font-size: .85rem; flex: none; white-space: nowrap; }
.fa-x { border: 0; background: rgba(255,255,255,.22); color: #fff; width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; padding: 0; }
.fa-x svg { width: 14px; height: 14px; }
.finder-chips { position: relative; padding: 12px 0 2px; gap: 8px; }
.finder .chip { display: inline-flex; align-items: center; gap: 6px; border: 1.5px solid rgba(244,224,191,.45); color: var(--cream-txt); background: rgba(255,255,255,.06); padding: 6px 12px; font-size: .84rem; transition: background .2s, border-color .2s, opacity .2s; }
.finder .chip svg { width: 15px; height: 15px; }
.finder .chip:hover { background: rgba(255,255,255,.14); }
.finder .chip[aria-pressed="true"] { background: var(--cream-txt); color: var(--teal-dk); border-color: var(--cream-txt); }
.finder .chip .cnt { font-size: .74rem; min-width: 1.3em; padding: 1px 6px; border-radius: 999px; background: rgba(0,0,0,.2); }
.finder .chip .cnt:empty { display: none; }
.finder .chip[aria-pressed="true"] .cnt { background: var(--teal); color: var(--cream-txt); }
.finder .chip.empty { opacity: .5; }
.finder-body { flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior: contain; }
.finder-explore { padding: 6px 22px 18px; }
.fx-h { margin: 16px 0 10px; font-size: .76rem; letter-spacing: .14em; text-transform: uppercase; color: var(--orange-txt); font-weight: 800; display: flex; align-items: center; gap: 10px; }
.fx-h::after { content: ""; flex: 1; height: 1px; background: var(--line); }
.fx-areas { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.fx-area { position: relative; display: flex; flex-direction: column; border: 0; padding: 0; border-radius: 14px; overflow: hidden; background: #fff; text-align: left;
  box-shadow: 0 4px 14px rgba(32,82,76,.14); transition: transform .3s cubic-bezier(.3,1.5,.5,1), box-shadow .3s; animation: fxIn .5s cubic-bezier(.2,1.3,.4,1) both; animation-delay: calc(var(--k) * 60ms); }
@keyframes fxIn { from { opacity: 0; transform: translateY(12px); } }
.fx-area:hover, .fx-area:focus-visible { transform: translateY(-4px); box-shadow: 0 12px 26px rgba(32,82,76,.25); }
.fx-img { height: 78px; background-size: cover; background-position: center; transition: transform .6s; }
.fx-area:hover .fx-img { transform: scale(1.08); }
.fx-txt { padding: 8px 12px 10px; border-top: 4px solid var(--ac); }
.fx-txt strong { display: block; font-family: var(--display); font-weight: normal; font-size: 1.3rem; color: var(--ac); line-height: 1.05; }
.fx-txt small { display: block; color: var(--muted); font-size: .76rem; margin-top: 2px; }
.fx-pop { display: flex; flex-wrap: wrap; gap: 8px; }
.fx-term { display: inline-flex; align-items: center; gap: 6px; border: 1.5px solid var(--line); background: #fffaf1; color: var(--teal); border-radius: 999px; padding: 7px 14px 7px 10px; font-weight: 700; font-size: .9rem; transition: all .2s; }
.fx-term svg { width: 16px; height: 16px; color: var(--orange-txt); }
.fx-term:hover { background: var(--teal); border-color: var(--teal); color: var(--cream-txt); transform: translateY(-2px); }
.fx-term:hover svg { color: #f2b183; }
.fx-feat { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.fx-card { position: relative; border: 0; padding: 0; border-radius: 16px; overflow: hidden; height: 150px; text-align: left; color: #fff; background: var(--teal);
  box-shadow: 0 6px 18px rgba(0,0,0,.18); animation: fxIn .5s cubic-bezier(.2,1.3,.4,1) both; animation-delay: calc(200ms + var(--k) * 60ms); }
.fx-cimg, .fx-cimg img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .7s ease; }
.fx-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 30%, rgba(8,28,26,.88)); }
.fx-card:hover .fx-cimg img, .fx-card:focus-visible .fx-cimg img { transform: scale(1.08); }
.fx-ctxt { position: absolute; left: 12px; right: 12px; bottom: 10px; z-index: 1; }
.fx-ctxt small { display: inline-block; background: var(--ac); color: #fff; font-weight: 800; font-size: .68rem; letter-spacing: .06em; text-transform: uppercase; padding: 2px 8px; border-radius: 999px; }
.fx-ctxt strong { display: block; font-family: var(--serif); font-size: 1.08rem; line-height: 1.2; margin-top: 5px; text-shadow: 0 1px 4px rgba(0,0,0,.5); }
.finder-results { padding: 6px 14px 14px; }
.finder-head { display: flex; align-items: center; gap: 8px; padding: 14px 8px 6px; color: var(--orange-txt); }
.finder-head svg { width: 16px; height: 16px; }
.finder-head b { margin-left: auto; font-size: .74rem; background: rgba(169,83,31,.12); padding: 1px 8px; border-radius: 999px; letter-spacing: 0; }
.fr { gap: 14px; padding: 8px 12px 8px 8px; border-radius: 14px; margin: 3px 0; border: 1.5px solid transparent; transition: background .15s, border-color .15s, transform .15s; animation: fxIn .3s ease both; }
.fr[aria-selected="true"] { background: #fff; color: var(--ink); border-color: rgba(32,82,76,.22); box-shadow: 0 6px 18px rgba(32,82,76,.14); }
.fr[aria-selected="true"] small, .fr[aria-selected="true"] .fr-snip { color: var(--muted); }
.fr[aria-selected="true"] mark { background: rgba(207,118,57,.35); color: inherit; }
.fr-thumb { width: 92px; height: 64px; border-radius: 10px; background: rgba(32,82,76,.1); box-shadow: inset 0 0 0 1px rgba(0,0,0,.05); }
.fr-thumb img { transition: transform .4s; }
.fr[aria-selected="true"] .fr-thumb img { transform: scale(1.06); }
.fr-doc { display: grid; place-items: center; width: 100%; height: 100%; color: var(--teal); background: linear-gradient(135deg, #f7e8cd, #efd6ae); }
.fr-doc svg { width: 28px; height: 28px; }
.fr-play { position: absolute; left: 50%; top: 50%; width: 30px; height: 30px; margin: -15px 0 0 -15px; border-radius: 50%; background: rgba(169,83,31,.92); color: #fff; display: grid; place-items: center; box-shadow: 0 2px 8px rgba(0,0,0,.35); }
.fr-play svg { width: 14px; height: 14px; margin-left: 2px; }
.fr-txt { flex: 1; }
.fr-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-bottom: 3px; }
.fr-area { font-size: .68rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: #fff; background: var(--ac); padding: 2px 8px; border-radius: 999px; }
.fr-sub { font-size: .78rem; color: var(--muted); }
.fr-txt strong { font-size: 1.06rem; }
.fr-go { flex: none; width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; color: var(--teal); opacity: 0; transform: translateX(-6px); transition: opacity .2s, transform .2s, background .2s; }
.fr[aria-selected="true"] .fr-go { opacity: 1; transform: none; background: var(--teal); color: var(--cream-txt); }
.finder-empty { list-style: none; text-align: center; padding: 40px 10px; color: var(--muted); }
.fe-ico { display: inline-grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; background: rgba(32,82,76,.08); color: var(--teal); margin-bottom: 8px; }
.fe-ico svg { width: 28px; height: 28px; }
.finder-empty strong { display: block; font-family: var(--serif); font-size: 1.1rem; }
.finder-hint { background: #f3e2c4; border-top: 1px solid var(--line); padding: 9px 22px; }
.finder-hint kbd { font: 700 .72rem var(--ui); background: #fff; border: 1px solid var(--line); border-bottom-width: 2px; border-radius: 5px; padding: 1px 6px; color: var(--teal); }
body.hc .finder-hero { background: #000; } body.hc .fr[aria-selected="true"] { background: #fff; color: #000; border-color: #000; }
@media (max-width: 860px) {
  .finder { padding: 0; } .finder-box { max-height: 100vh; height: 100%; border-radius: 0; }
  .finder-hero { padding: 12px 12px 10px; } .fh-title { font-size: 1.5rem; } .fh-row { margin-bottom: 8px; }
  .finder-field input { font-size: 1.1rem; padding: 9px 0; }
  .finder-chips { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; } .finder .chip { flex: none; }
  .finder-explore { padding: 4px 12px 14px; }
  .fx-areas { grid-template-columns: 1fr 1fr; } .fx-feat { grid-template-columns: 1fr 1fr; } .fx-card { height: 130px; }
  .fr-thumb { width: 72px; height: 54px; } .fr-go { display: none; } .finder-hint { display: none; }
}

/* =====================================================================
   v14 – Informazioni legali
   ===================================================================== */
.legal-links {
  position: absolute; right: 70px; bottom: 8px; z-index: 11; display: flex; align-items: center; gap: 2px;
  background: rgba(245,224,191,.88); backdrop-filter: blur(4px); border-radius: 999px; padding: 2px 8px; font-size: .74rem; color: var(--muted);
  box-shadow: 0 2px 8px rgba(0,0,0,.18);
}
.legal-links button { border: 0; background: transparent; color: var(--teal-dk); font-weight: 700; padding: 4px 5px; border-radius: 6px; }
.legal-links button:hover { color: var(--orange-txt); text-decoration: underline; }
@media (max-width: 860px) { .legal-links { right: auto; left: 8px; bottom: 6px; font-size: .68rem; padding: 1px 6px; } .legal-links button { padding: 3px 3px; } }
.legal-tabs { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 14px; padding-bottom: 12px; border-bottom: 1.5px solid var(--line); position: sticky; top: 0; background: inherit; z-index: 1; }
.legal-tab { border: 1.5px solid var(--teal); background: transparent; color: var(--teal); border-radius: 999px; padding: 7px 14px; font-weight: 700; font-size: .9rem; }
.legal-tab[aria-selected="true"] { background: var(--teal); color: var(--cream-txt); }
.legal-body h3 { font-family: var(--display); font-weight: normal; color: var(--teal); font-size: 1.7rem; margin: 0 0 10px; }
.legal-body h4 { margin: 18px 0 6px; font-size: .8rem; letter-spacing: .12em; text-transform: uppercase; color: var(--orange-txt); }
.legal-body ul { padding-left: 1.2em; } .legal-body li { margin: 6px 0; }
.legal-body:focus-visible { outline-offset: 6px; }
.legal-upd { margin-top: 22px; font-size: .82rem; color: var(--muted); border-top: 1px solid var(--line); padding-top: 10px; }
.a11y-statement { margin-top: 10px; border: 0; background: transparent; color: var(--teal); font-weight: 700; text-decoration: underline; padding: 6px 0; text-align: left; }
.intro-legal { margin: 12px 0 0; font-size: .78rem; color: var(--muted); }
.intro-legal button { border: 0; background: transparent; color: var(--teal); text-decoration: underline; padding: 2px; font-size: inherit; }

/* =====================================================================
   v14 – Kit scuole
   ===================================================================== */
.school-box { width: min(1100px, 100%); background: var(--cream-lt); }
.school-hero { flex: none; position: relative; display: flex; justify-content: space-between; gap: 16px; padding: 22px 22px 20px 28px; color: var(--cream-txt); overflow: hidden;
  background: radial-gradient(90% 160% at 100% 0%, rgba(207,118,57,.55), transparent 60%), linear-gradient(135deg, #1b4842, var(--teal)); }
.school-hero::after { content: ""; position: absolute; right: 90px; top: -30px; width: 180px; height: 180px; border-radius: 50%; border: 2px dashed rgba(244,224,191,.25); animation: spinSlow 40s linear infinite; pointer-events: none; }
@keyframes spinSlow { to { transform: rotate(360deg); } }
.school-hero .lib-kicker { color: #f2b183; margin: 0; }
.school-hero h2 { margin: 4px 0 6px; font-family: var(--display); font-weight: normal; font-size: 2.3rem; line-height: 1; }
.school-lead { margin: 0; max-width: 60ch; font-family: var(--serif); font-size: 1.02rem; opacity: .95; }
.school-body { flex: 1; overflow-y: auto; padding: 4px 26px 26px; }
.school-body:focus { outline: none; }
.sc-h { margin: 22px 0 12px; font-size: .78rem; letter-spacing: .14em; text-transform: uppercase; color: var(--orange-txt); font-weight: 800; display: flex; align-items: center; gap: 10px; }
.sc-h::after { content: ""; flex: 1; height: 1px; background: var(--line); }
.sc-quizzes { display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; }
.sc-quiz { display: flex; flex-direction: column; border: 0; padding: 0; text-align: left; background: #fff; border-radius: 16px; overflow: hidden; box-shadow: 0 6px 18px rgba(32,82,76,.14);
  transition: transform .3s cubic-bezier(.3,1.5,.5,1), box-shadow .3s; animation: fxIn .5s cubic-bezier(.2,1.3,.4,1) both; animation-delay: calc(var(--k) * 70ms); }
.sc-quiz:hover, .sc-quiz:focus-visible { transform: translateY(-5px) rotate(-.4deg); box-shadow: 0 16px 30px rgba(32,82,76,.24); }
.sq-img { position: relative; height: 104px; background-size: cover; background-position: center; }
.sq-badge { position: absolute; left: 10px; bottom: -12px; background: var(--ac); color: #fff; font-weight: 800; font-size: .74rem; padding: 4px 10px; border-radius: 999px; box-shadow: 0 3px 8px rgba(0,0,0,.25); }
.sq-txt { display: flex; flex-direction: column; gap: 3px; padding: 18px 14px 14px; flex: 1; }
.sq-txt strong { font-family: var(--display); font-weight: normal; font-size: 1.45rem; color: var(--ac); line-height: 1; }
.sq-txt small { color: var(--muted); font-size: .8rem; }
.sq-best { font-size: .78rem; font-weight: 800; color: #8a6a00; }
.sq-go { margin-top: auto; padding-top: 8px; font-weight: 800; color: var(--teal); font-size: .88rem; }
.sc-quiz.mix .sq-img::after { content: "?"; position: absolute; inset: 0; display: grid; place-items: center; font-family: var(--display); font-size: 4rem; color: #fff; background: rgba(169,83,31,.55); text-shadow: 0 3px 10px rgba(0,0,0,.3); }
.sc-downloads { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.sc-dl { display: flex; gap: 14px; align-items: flex-start; background: #fff; border-radius: 16px; padding: 16px; box-shadow: 0 4px 14px rgba(32,82,76,.1); border: 0; text-align: left; color: inherit; }
.sd-ico { flex: none; width: 48px; height: 48px; border-radius: 14px; display: grid; place-items: center; background: linear-gradient(135deg, var(--teal), #2f7d72); color: var(--cream-txt); }
.sd-ico svg { width: 26px; height: 26px; }
.sd-txt { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.sd-txt strong { font-family: var(--serif); font-size: 1.1rem; color: var(--teal-dk); }
.sd-txt small { color: var(--muted); font-size: .86rem; line-height: 1.4; }
.sd-acts { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 6px; }
.sd-btn { display: inline-flex; align-items: center; gap: 6px; background: #a9531f; color: #fff; text-decoration: none; font-weight: 800; font-size: .86rem; padding: 8px 14px; border-radius: 999px; transition: background .2s, transform .2s; }
.sd-btn:hover { background: var(--teal); transform: translateY(-2px); }
.sd-btn svg { width: 16px; height: 16px; }
.sd-other { font-size: .8rem; color: var(--muted); } .sd-other a { font-weight: 800; margin-left: 4px; }
.sd-go { font-weight: 800; color: var(--teal); font-size: .88rem; margin-top: 4px; }
.sc-pubs { cursor: pointer; transition: transform .2s; } .sc-pubs:hover { transform: translateY(-3px); }
.sc-pubs .sd-ico { background: linear-gradient(135deg, #a9531f, #cf7639); }
.sc-tips ul { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; counter-reset: tip; }
.sc-tips li { position: relative; background: rgba(32,82,76,.07); border-radius: 14px; padding: 14px 14px 14px 52px; font-size: .92rem; line-height: 1.45; }
.sc-tips li::before { counter-increment: tip; content: counter(tip); position: absolute; left: 14px; top: 12px; width: 28px; height: 28px; border-radius: 50%; background: var(--teal); color: var(--cream-txt); display: grid; place-items: center; font-weight: 800; }
/* quiz */
.qz, .qz-end { max-width: 760px; margin: 0 auto; padding: 14px 0 10px; }
.qz-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 6px 0 12px; }
.qz-back { display: inline-flex; align-items: center; gap: 6px; border: 0; background: transparent; color: var(--teal); font-weight: 700; padding: 6px 8px; border-radius: 999px; }
.qz-back:hover { background: rgba(32,82,76,.1); }
.qz-area { background: var(--ac); color: #fff; font-weight: 800; font-size: .78rem; letter-spacing: .06em; text-transform: uppercase; padding: 4px 12px; border-radius: 999px; }
.qz-prog { height: 10px; border-radius: 999px; background: rgba(32,82,76,.12); overflow: hidden; }
.qz-prog span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--ac), #cf7639); transition: width .6s cubic-bezier(.3,1.2,.5,1); }
.qz-count { margin: 14px 0 4px; color: var(--muted); font-weight: 700; font-size: .85rem; }
.qz-q { margin: 0 0 18px; font-family: var(--serif); font-size: calc(1.55rem * var(--fs)); line-height: 1.25; color: var(--teal-dk); }
.qz-q:focus { outline: none; }
.qz-opts { display: grid; gap: 10px; }
.qz-opt { display: flex; align-items: center; gap: 14px; text-align: left; border: 2px solid rgba(32,82,76,.18); background: #fff; border-radius: 16px; padding: 12px 14px; font-size: calc(1.05rem * var(--fs));
  transition: border-color .2s, background .2s, transform .25s cubic-bezier(.3,1.6,.5,1), opacity .3s; animation: fxIn .4s cubic-bezier(.2,1.3,.4,1) both; animation-delay: calc(var(--k) * 70ms); }
.qz-opt:hover:not([disabled]) { border-color: var(--teal); transform: translateX(4px); }
.qo-l { flex: none; width: 36px; height: 36px; border-radius: 10px; display: grid; place-items: center; background: rgba(32,82,76,.1); color: var(--teal); font-weight: 800; transition: background .2s, color .2s; }
.qz-opt:hover:not([disabled]) .qo-l { background: var(--teal); color: var(--cream-txt); }
.qo-t { flex: 1; }
.qo-m { flex: none; width: 30px; height: 30px; display: grid; place-items: center; }
.qo-m svg { width: 26px; height: 26px; stroke-width: 3; }
.qz-opt[disabled] { cursor: default; }
.qz-opt.right { border-color: #2e7d4f; background: #e8f5ec; animation: pulseRight .5s ease; }
.qz-opt.right .qo-l { background: #2e7d4f; color: #fff; } .qz-opt.right .qo-m { color: #2e7d4f; }
.qz-opt.wrong { border-color: #b3261e; background: #fbeceb; animation: shake .45s ease; }
.qz-opt.wrong .qo-l { background: #b3261e; color: #fff; } .qz-opt.wrong .qo-m { color: #b3261e; }
.qz-opt.dim { opacity: .55; }
@keyframes pulseRight { 50% { transform: scale(1.025); } }
@keyframes shake { 20%, 60% { transform: translateX(-6px); } 40%, 80% { transform: translateX(6px); } }
.qz-fb { margin-top: 16px; border-radius: 18px; padding: 0 18px; max-height: 0; overflow: hidden; opacity: 0; transition: max-height .5s ease, opacity .3s, padding .3s; }
.qz-fb.show { max-height: 600px; opacity: 1; padding: 16px 18px; }
.qz-fb.ok { background: #e8f5ec; border: 2px solid #9fd1b0; } .qz-fb.ko { background: #fdf3e6; border: 2px solid #efc79d; }
.qf-h { margin: 0 0 6px; font-family: var(--display); font-size: 1.6rem; color: var(--teal-dk); display: flex; align-items: center; gap: 8px; }
.qf-ico { color: #d39b00; animation: starPop .6s cubic-bezier(.3,1.8,.5,1); display: inline-block; }
@keyframes starPop { from { transform: scale(0) rotate(-90deg); } }
.qf-r { margin: 0 0 6px; } .qf-x { margin: 0; font-family: var(--serif); line-height: 1.5; font-size: calc(1rem * var(--fs)); }
.qf-acts { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px; margin-top: 14px; }
.qf-map { display: inline-flex; align-items: center; gap: 6px; border: 2px solid var(--teal); background: transparent; color: var(--teal); border-radius: 999px; padding: 9px 16px; font-weight: 800; }
.qf-map:hover { background: rgba(32,82,76,.1); }
.qf-next { border: 0; background: var(--teal); color: var(--cream-txt); border-radius: 999px; padding: 11px 22px; font-weight: 800; font-size: 1rem; box-shadow: 0 6px 16px rgba(32,82,76,.3); transition: background .2s, transform .2s; }
.qf-next:hover { background: #a9531f; transform: translateY(-2px); }
.qz-end { text-align: center; padding-top: 30px; }
.qe-stars { display: flex; justify-content: center; gap: 10px; font-size: 3.4rem; line-height: 1; }
.qe-star { color: rgba(32,82,76,.15); animation: starPop .7s cubic-bezier(.3,1.8,.5,1) both; animation-delay: calc(.2s + var(--k) * .18s); }
.qe-star.on { color: #e0a400; text-shadow: 0 4px 12px rgba(224,164,0,.4); }
.qe-title { font-family: var(--display); font-weight: normal; font-size: 2rem; color: var(--teal); margin: 14px 0 6px; }
.qe-title:focus { outline: none; }
.qe-msg { font-family: var(--serif); font-size: 1.1rem; margin: 0 0 14px; }
.qe-ring { position: relative; width: 120px; height: 120px; margin: 0 auto 10px; }
.qe-ring svg { width: 120px; height: 120px; transform: rotate(-90deg); }
.qe-ring circle { fill: none; stroke: rgba(32,82,76,.12); stroke-width: 10; }
.qe-ring .qe-val { stroke: var(--ac); stroke-linecap: round; stroke-dasharray: 327; stroke-dashoffset: calc(327 - 327 * var(--p)); animation: ringIn 1.2s cubic-bezier(.3,1,.4,1) both .3s; }
@keyframes ringIn { from { stroke-dashoffset: 327; } }
.qe-ring > span { position: absolute; inset: 0; display: grid; place-items: center; font-family: var(--display); font-size: 1.9rem; color: var(--teal-dk); }
.qz-end .qf-acts { justify-content: center; }
body.hc .school-hero { background: #000; } body.hc .qz-opt.right { background: #fff; border-color: #000; border-width: 4px; } body.hc .qz-opt.wrong { background: #fff; border-style: dashed; }
@media (max-width: 1000px) { .sc-quizzes { grid-template-columns: repeat(3, 1fr); } .sc-downloads, .sc-tips ul { grid-template-columns: 1fr; } }
@media (max-width: 860px) {
  .school-hero { padding: 14px 12px 14px 16px; } .school-hero h2 { font-size: 1.6rem; } .school-lead { font-size: .92rem; } .school-hero::after { display: none; }
  .school-body { padding: 0 14px 20px; } .sc-quizzes { grid-template-columns: 1fr 1fr; gap: 10px; } .sq-img { height: 80px; } .qz-q { font-size: calc(1.25rem * var(--fs)); }
}

/* =====================================================================
   v14 – Benvenuto e aperture cinematografiche
   ===================================================================== */
.intro-box { border-radius: 22px; overflow: hidden; padding-top: 0; background: var(--cream); }
.intro-logo-wrap { margin: 0 -38px 0; padding: 20px 20px 18px; background: #fff; position: relative; box-shadow: inset 0 -4px 0 var(--teal); }
.intro-logo-wrap::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: linear-gradient(90deg, var(--teal), #3f8b80 55%, var(--orange)); }
.intro-logo { height: 84px; mix-blend-mode: normal; }
.intro-box > * { animation: introItem .7s cubic-bezier(.2,1.2,.4,1) both; }
.intro-box > :nth-child(1) { animation-delay: .05s; } .intro-box > :nth-child(2) { animation-delay: .25s; } .intro-box > :nth-child(3) { animation-delay: .35s; }
.intro-box > :nth-child(4) { animation-delay: .5s; } .intro-box > :nth-child(5) { animation-delay: .6s; } .intro-box > :nth-child(6) { animation-delay: .7s; }
.intro-box > :nth-child(7) { animation-delay: .8s; } .intro-box > :nth-child(8) { animation-delay: .9s; }
@keyframes introItem { from { opacity: 0; transform: translateY(16px); } }
.intro-title::after { width: 0; animation: lineGrow .9s cubic-bezier(.3,1,.4,1) .8s forwards; background: linear-gradient(90deg, var(--teal), var(--orange)); }
@keyframes lineGrow { to { width: 120px; } }
.intro-go { position: relative; overflow: hidden; border-radius: 999px; padding: 14px 30px; }
.intro-go::before { content: ""; position: absolute; top: 0; bottom: 0; left: -60%; width: 40%; background: linear-gradient(100deg, transparent, rgba(255,255,255,.35), transparent); transform: skewX(-20deg); animation: btnShine 3.2s ease-in-out 1.6s infinite; }
@keyframes btnShine { 0% { left: -60%; } 40%, 100% { left: 130%; } }
.intro-go::after { content: ""; position: absolute; inset: -6px; border-radius: inherit; border: 2px solid rgba(207,118,57,.6); animation: btnRing 2.4s ease-out 1.4s infinite; pointer-events: none; }
@keyframes btnRing { from { transform: scale(.9); opacity: 1; } to { transform: scale(1.25); opacity: 0; } }
.intro-stats { display: flex; justify-content: center; gap: 6px 22px; flex-wrap: wrap; margin-top: 18px; }
.is-item { display: flex; flex-direction: column; align-items: center; min-width: 64px; }
.is-num { font-family: var(--display); font-weight: normal; font-size: 1.9rem; line-height: 1; color: var(--teal); font-variant-numeric: tabular-nums; }
.is-lab { font-size: .74rem; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); font-weight: 700; margin-top: 2px; }
.intro-bg { animation: drift 24s ease-in-out infinite alternate; }
.intro-fx { position: absolute; inset: 0; pointer-events: none; overflow: hidden; }
.intro-waves { position: absolute; left: 0; right: 0; bottom: 0; width: 200%; height: 26vh; }
.intro-waves path { fill: rgba(244,224,191,.07); stroke: none; }
.intro-waves .w1 { animation: waveX 18s linear infinite; } .intro-waves .w2 { animation: waveX 12s linear infinite reverse; fill: rgba(244,224,191,.06); } .intro-waves .w3 { animation: waveX 9s linear infinite; fill: rgba(15,92,110,.25); }
@keyframes waveX { to { transform: translateX(-50%); } }
.intro-ray { position: absolute; top: -50%; left: -30%; width: 40%; height: 200%; background: linear-gradient(90deg, transparent, rgba(255,240,210,.12), transparent); transform: rotate(18deg); animation: ray 9s ease-in-out infinite; }
@keyframes ray { 0% { left: -40%; } 60%, 100% { left: 120%; } }
.intro.leaving .intro-box { animation: introOut .6s cubic-bezier(.6,0,.4,1) forwards; }
.intro.leaving .intro-fx { opacity: 0; transition: opacity .5s; }
/* titolo cinematografico sopra la mappa */
.cine-title { position: absolute; left: 50%; top: 42%; z-index: 13; transform: translate(-50%, -50%); text-align: center; pointer-events: none; opacity: 0; width: min(92vw, 1000px); color: #fff8ea; }
.cine-title .ct-kicker { display: block; font: 800 .82rem var(--ui); letter-spacing: .5em; text-transform: uppercase; color: #f6c69f; text-shadow: 0 2px 10px rgba(0,0,0,.6); }
.cine-title .ct-title { display: block; font-family: var(--display); font-size: clamp(2rem, 5.6vw, 4.6rem); line-height: 1; margin-top: 10px; text-transform: none; text-shadow: 0 4px 30px rgba(0,0,0,.65), 0 1px 3px rgba(0,0,0,.5); }
.cine-title .ct-line { display: block; height: 3px; width: 0; margin: 18px auto 0; background: linear-gradient(90deg, transparent, #f6c69f, transparent); }
.cine-title.show { animation: ctIn 4.2s cubic-bezier(.3,.8,.4,1) forwards; }
.cine-title.show .ct-kicker { animation: ctKick 4.2s ease forwards; }
.cine-title.show .ct-line { animation: ctLine 4.2s ease forwards; }
@keyframes ctIn { 0% { opacity: 0; transform: translate(-50%, -40%) scale(.94); filter: blur(8px); } 14% { opacity: 1; transform: translate(-50%, -50%) scale(1); filter: blur(0); } 62% { opacity: 1; } 100% { opacity: 0; transform: translate(-50%, -62%) scale(1.04); filter: blur(4px); } }
@keyframes ctKick { from { letter-spacing: 1.2em; } 30% { letter-spacing: .5em; } }
@keyframes ctLine { 10% { width: 0; } 40% { width: 60%; } 100% { width: 60%; } }
/* anello del "portale" */
.portal-ring { position: absolute; z-index: 14; width: 0; height: 0; pointer-events: none; }
.portal-ring::before { content: ""; position: absolute; left: 0; top: 0; width: var(--R, 2000px); height: var(--R, 2000px); border-radius: 50%; transform: translate(-50%, -50%) scale(0); border: 3px solid rgba(246,198,159,.9); box-shadow: 0 0 40px rgba(246,198,159,.6), inset 0 0 40px rgba(246,198,159,.4); opacity: 0; }
.portal-ring.go::before { animation: portal 1.15s cubic-bezier(.65,0,.35,1) forwards; }
@keyframes portal { 0% { transform: translate(-50%, -50%) scale(0); opacity: 1; } 85% { opacity: 1; } 100% { transform: translate(-50%, -50%) scale(1); opacity: 0; } }
/* riflesso di luce sulla mappa durante l'apertura */

.viewer.cinema::after, .viewer.returning::after { content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 5; }
.viewer.cinema::after { background: linear-gradient(105deg, transparent 35%, rgba(255,246,225,.32) 50%, transparent 65%); background-size: 300% 100%; animation: mapSweep 2.2s ease-in-out 2.3s both; }
@keyframes mapSweep { from { background-position: 100% 0; } to { background-position: 0% 0; } }
.viewer.returning::after { background: radial-gradient(circle at 50% 50%, transparent 30%, rgba(8,32,30,.55) 100%); animation: vignetteOut 2s ease forwards; }
@keyframes vignetteOut { from { opacity: 1; } to { opacity: 0; } }
.ov-link.came-from img { animation: cameFrom 3s ease forwards; }
@keyframes cameFrom { 0%, 30% { filter: brightness(1.6) saturate(1.6) drop-shadow(0 0 18px #f6c69f); } 100% { filter: none; } }
.ov-link.came-from::after { content: ""; position: absolute; left: 50%; top: 50%; width: 100%; height: 100%; border-radius: 50%; transform: translate(-50%, -50%) scale(.2); border: 3px solid #f6c69f; animation: ripple 1.8s ease-out .6s 2 both; pointer-events: none; }
@keyframes ripple { to { transform: translate(-50%, -50%) scale(2.2); opacity: 0; } }
body.still .cine-title, body.still .portal-ring { display: none; }
@media (prefers-reduced-motion: reduce) { .cine-title, .portal-ring, .intro-fx { display: none; } .intro-box > * { animation: none; } .intro-title::after { width: 120px; animation: none; } }
@media (max-width: 860px) { .intro-logo-wrap { margin: 0 -20px; padding: 14px; } .intro-logo { height: 60px; } .is-num { font-size: 1.5rem; } .cine-title .ct-kicker { letter-spacing: .3em; font-size: .7rem; } }
@media (min-width: 1101px) { .search-tool .st-txt { display: inline; } }
@media (max-width: 860px) { .legal-links { display: none; } .intro-stats { gap: 6px 14px; } .is-item { min-width: 50px; } }

/* =====================================================================
   v15 – Riquadri media senza bande bianche
   ===================================================================== */
.media-tile { display: flex; flex-direction: column; justify-content: flex-start; align-items: stretch; }
.media-tile .mt-img { flex: none; width: 100%; overflow: hidden; }
.media-tile .mt-badge, .media-tile .mt-play { padding: 2px 8px; font-family: var(--ui); font-weight: 700; }
.media-tile .mt-play { padding: 0; }
.media-tile > span { flex: 1; }
.lib-card { justify-content: flex-start; }

/* =====================================================================
   v15 – Pagina Info
   ===================================================================== */
.modal-box.about-box { width: min(1080px, calc(100% - 24px)); border-radius: 22px; }
.about-box .modal-head { position: absolute; top: 0; right: 0; left: 0; z-index: 3; background: transparent; pointer-events: none; }
.about-box .modal-head h2 { opacity: 0; }
.about-box .modal-head .close-x { pointer-events: auto; filter: drop-shadow(0 3px 8px rgba(0,0,0,.4)); }
.about-box .modal-body { padding: 0; }
.about { padding-bottom: 0; }
.ab-hero { position: relative; height: clamp(240px, 42vh, 400px); overflow: hidden; color: #fff8ea; }
.ab-hero-img { position: absolute; inset: -4%; background-size: cover; background-position: center; animation: kenburns 22s ease-in-out infinite alternate; }
@keyframes kenburns { from { transform: scale(1) translate(0,0); } to { transform: scale(1.12) translate(-2%, -2%); } }
.ab-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,40,36,.05) 25%, rgba(10,40,36,.82)); }
.ab-hero-txt { position: absolute; left: 34px; right: 34px; bottom: 44px; z-index: 1; }
.ab-kick { margin: 0; font: 800 .76rem var(--ui); letter-spacing: .2em; text-transform: uppercase; color: #f6c69f; }
.ab-kick.dark { color: var(--orange-txt); }
.ab-title { margin: 6px 0 0; font-family: var(--display); font-weight: normal; font-size: clamp(1.9rem, 4.4vw, 3.4rem); line-height: 1; text-shadow: 0 3px 18px rgba(0,0,0,.5); animation: introItem .9s cubic-bezier(.2,1.2,.4,1) .15s both; }
.ab-hero-txt .ab-kick { animation: introItem .8s cubic-bezier(.2,1.2,.4,1) both; }
.ab-wave { position: absolute; left: 0; right: 0; bottom: -1px; width: 100%; height: 40px; z-index: 2; }
.ab-wave path { fill: var(--cream); stroke: none; }
.ab-stats { display: flex; justify-content: center; flex-wrap: wrap; gap: 8px 34px; padding: 6px 30px 10px; }
.ab-stat { display: flex; flex-direction: column; align-items: center; min-width: 70px; }
.ab-stat b { font-family: var(--display); font-weight: normal; font-size: 2.4rem; line-height: 1; color: var(--teal); font-variant-numeric: tabular-nums; }
.ab-stat span { font: 800 .72rem var(--ui); letter-spacing: .12em; text-transform: uppercase; color: var(--muted); margin-top: 3px; }
.ab-intro { padding: 10px 40px 4px; }
.ab-intro .card-text { column-count: 2; column-gap: 40px; font-size: calc(1.04rem * var(--fs)); }
.ab-intro .card-text p:first-child::first-letter { float: left; font-family: var(--display); font-size: 3.6em; line-height: .82; padding: 6px 8px 0 0; color: var(--teal); }
.ab-video { display: grid; grid-template-columns: 1.15fr 1fr; gap: 26px; align-items: center; margin: 22px 30px 8px; padding: 18px; border-radius: 20px; background: linear-gradient(135deg, #1b4842, var(--teal)); color: var(--cream-txt); box-shadow: 0 14px 34px rgba(16,55,50,.3); }
.ab-vbtn { border: 0; padding: 0; background: transparent; border-radius: 14px; overflow: hidden; display: block; }
.ab-vimg { position: relative; display: block; aspect-ratio: 16 / 9; background-size: cover; background-position: center; transition: transform .6s ease; }
.ab-vbtn:hover .ab-vimg, .ab-vbtn:focus-visible .ab-vimg { transform: scale(1.04); }
.ab-play { position: absolute; left: 50%; top: 50%; width: 76px; height: 76px; margin: -38px 0 0 -38px; border-radius: 50%; background: rgba(169,83,31,.94); color: #fff; display: grid; place-items: center; box-shadow: 0 8px 24px rgba(0,0,0,.4); }
.ab-play::after { content: ""; position: absolute; inset: -8px; border-radius: 50%; border: 2px solid rgba(255,255,255,.7); animation: btnRing 2.2s ease-out infinite; }
.ab-play svg { width: 34px; height: 34px; margin-left: 4px; }
.ab-dur { position: absolute; right: 10px; bottom: 10px; background: rgba(0,0,0,.7); color: #fff; font: 700 .8rem var(--ui); padding: 3px 8px; border-radius: 6px; }
.ab-vtxt h4 { margin: 4px 0 8px; font-family: var(--display); font-weight: normal; font-size: 2rem; line-height: 1; color: #fff8ea; }
.ab-vtxt p { margin: 0 0 14px; font-family: var(--serif); font-size: calc(.96rem * var(--fs)); line-height: 1.5; opacity: .95; }
.ab-video .ab-kick.dark { color: #f6c69f; }
.ab-cta { display: inline-flex; align-items: center; gap: 8px; border: 0; background: #a9531f; color: #fff; text-decoration: none; font-weight: 800; border-radius: 999px; padding: 10px 18px; transition: transform .2s, background .2s; }
.ab-cta:hover { background: var(--orange-hv); transform: translateY(-2px); }
.ab-sec { padding: 8px 30px 6px; }
.ab-h { display: flex; align-items: center; gap: 10px; margin: 18px 0 12px; font: 800 .78rem var(--ui); letter-spacing: .14em; text-transform: uppercase; color: var(--orange-txt); }
.ab-h::after { content: ""; flex: 1; height: 1px; background: var(--line); }
.ab-areas { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.ab-area { border: 0; padding: 0; text-align: left; background: #fff; border-radius: 16px; overflow: hidden; box-shadow: 0 6px 16px rgba(32,82,76,.14); transition: transform .3s cubic-bezier(.3,1.5,.5,1), box-shadow .3s; }
.ab-area:hover, .ab-area:focus-visible { transform: translateY(-5px); box-shadow: 0 14px 28px rgba(32,82,76,.24); }
.aa-img { display: block; height: 110px; background-size: cover; background-position: center; transition: transform .6s; }
.ab-area:hover .aa-img { transform: scale(1.08); }
.aa-txt { display: block; padding: 10px 14px 12px; border-top: 4px solid var(--ac); }
.aa-txt strong { display: block; font-family: var(--display); font-weight: normal; font-size: 1.45rem; color: var(--ac); line-height: 1; }
.aa-txt small { display: block; margin-top: 4px; color: var(--muted); font-weight: 700; font-size: .8rem; }
.ab-tiles { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; }
.ab-tile { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; min-height: 96px; border: 1.5px solid var(--line); background: #fffaf1; color: var(--teal); text-decoration: none; border-radius: 16px; font-weight: 800; font-size: .9rem; text-align: center; padding: 12px; transition: all .25s; }
.ab-tile svg { width: 28px; height: 28px; transition: transform .3s cubic-bezier(.3,1.6,.5,1); }
.ab-tile:hover, .ab-tile:focus-visible { background: var(--teal); border-color: var(--teal); color: var(--cream-txt); transform: translateY(-3px); }
.ab-tile:hover svg { transform: scale(1.15) rotate(-6deg); }
.about .info-logos { margin: 0; border-radius: 14px; padding: 14px 20px; }
.ab-credits { display: grid; grid-template-columns: 1fr auto; gap: 8px 24px; align-items: center; margin: 24px 0 0; padding: 22px 30px 18px; background: #fff; border-top: 4px solid var(--teal); position: relative; }
.ab-credits::before { content: ""; position: absolute; left: 0; right: 0; top: -4px; height: 4px; background: linear-gradient(90deg, var(--teal), #3f8b80 55%, var(--orange)); }
.ac-txt p { margin: 2px 0 6px; font-size: .95rem; }
.ac-link { font-weight: 800; color: var(--teal); }
.ac-logo { display: block; padding: 8px; border-radius: 10px; transition: transform .25s; }
.ac-logo:hover { transform: scale(1.05); }
.ac-logo img { display: block; width: 180px; height: auto; }
.ac-legal { grid-column: 1 / -1; margin: 6px 0 0; padding-top: 10px; border-top: 1px solid #eee; font-size: .8rem; color: var(--muted); }
.ac-legal button { border: 0; background: transparent; padding: 2px; color: var(--teal); text-decoration: underline; font-size: inherit; }
.rv { opacity: 0; transform: translateY(22px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,1,.3,1); }
.rv.in { opacity: 1; transform: none; }
body.still .rv, body.still .ab-hero-img { opacity: 1; transform: none; animation: none; }
body.hc .ab-video { background: #000; } body.hc .ab-credits { border-color: #000; }
@media (max-width: 860px) {
  .modal-box.about-box { width: 100%; max-height: 100%; height: 100%; border-radius: 0; }
  .ab-hero-txt { left: 18px; right: 18px; bottom: 34px; }
  .ab-stats { gap: 6px 18px; } .ab-stat b { font-size: 1.8rem; } .ab-stat { min-width: 54px; }
  .ab-intro { padding: 6px 18px; } .ab-intro .card-text { column-count: 1; }
  .ab-video { grid-template-columns: 1fr; margin: 16px 14px; gap: 14px; padding: 14px; } .ab-vtxt h4 { font-size: 1.6rem; }
  .ab-sec { padding: 6px 14px; } .ab-areas { grid-template-columns: 1fr 1fr; gap: 10px; } .aa-img { height: 84px; }
  .ab-tiles { grid-template-columns: repeat(2, 1fr); } .ab-tile:last-child { grid-column: 1 / -1; }
  .ab-credits { grid-template-columns: 1fr; padding: 18px; } .ac-logo img { width: 150px; }
}

/* =====================================================================
   v15 – Sfogliabile (PDF e pubblicazioni)
   ===================================================================== */
body.book-open { overflow: hidden; }
.book { position: fixed; inset: 0; z-index: 70; display: flex; flex-direction: column; color: var(--cream-txt);
  background: radial-gradient(120% 90% at 50% 10%, #2a6a62 0%, #163b36 55%, #0d2522 100%); animation: fade .3s ease; }
.bk-bar { flex: none; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 14px 10px 18px; background: rgba(0,0,0,.18); box-shadow: 0 2px 14px rgba(0,0,0,.25); }
.bk-title { display: flex; align-items: center; gap: 12px; min-width: 0; }
.bk-kind { flex: none; width: 38px; height: 38px; border-radius: 12px; background: #a9531f; color: #fff; display: grid; place-items: center; }
.bk-title h2 { margin: 0; font-family: var(--serif); font-size: 1.15rem; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bk-tools { display: flex; align-items: center; gap: 6px; flex: none; }
.bk-count { font: 700 .86rem var(--ui); margin-right: 6px; opacity: .9; white-space: nowrap; }
.bk-btn { display: inline-flex; align-items: center; gap: 6px; height: 40px; min-width: 40px; justify-content: center; border: 0; border-radius: 12px; background: rgba(255,255,255,.1); color: var(--cream-txt); text-decoration: none; font-weight: 700; font-size: .86rem; padding: 0 10px; transition: background .2s; }
.bk-btn:hover, .bk-btn[aria-pressed="true"] { background: rgba(255,255,255,.24); }
.bk-btn.wide { padding: 0 14px; }
.bk-stage { position: relative; flex: 1; min-height: 0; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.bk-loading { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; font-weight: 700; transition: opacity .4s; }
.bk-spin { width: 54px; height: 54px; border-radius: 50%; border: 5px solid rgba(244,224,191,.2); border-top-color: var(--orange); animation: spin .9s linear infinite; }
.bk-stage.ready > .bk-loading, .bk-stage.ready .bk-web .bk-loading { opacity: 0; pointer-events: none; }
.bk-view { position: relative; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; perspective: 2600px; padding: 20px 60px 50px; touch-action: pan-y; }
.bk-view.zoomed { overflow: auto; align-items: flex-start; justify-content: flex-start; touch-action: auto; }
.bk-view.zoomed .bk-spread { margin: auto; }
.bk-spread { position: relative; display: flex; transform-style: preserve-3d; filter: drop-shadow(0 22px 40px rgba(0,0,0,.45)); }
.bk-spread.enter { animation: bookIn .8s cubic-bezier(.2,1.1,.3,1) both; }
@keyframes bookIn { from { opacity: 0; transform: translateY(30px) rotateX(18deg) scale(.92); } }
.bk-page { position: relative; background: #fff; line-height: 0; }
.bk-page canvas { display: block; }
.bk-page.l { border-radius: 6px 0 0 6px; overflow: hidden; }
.bk-page.r { border-radius: 0 6px 6px 0; overflow: hidden; }
.bk-page.one { border-radius: 6px; overflow: hidden; }
.bk-page.l::after { content: ""; position: absolute; top: 0; bottom: 0; right: 0; width: 60px; background: linear-gradient(90deg, transparent, rgba(0,0,0,.18)); pointer-events: none; }
.bk-page.r::after { content: ""; position: absolute; top: 0; bottom: 0; left: 0; width: 60px; background: linear-gradient(270deg, transparent, rgba(0,0,0,.2)); pointer-events: none; }
.bk-leaf { position: absolute; top: 0; height: 100%; width: 50%; transform-style: preserve-3d; transition: transform .74s cubic-bezier(.45,.05,.3,1); z-index: 5; }
.bk-leaf.fwd { right: 0; transform-origin: left center; }
.bk-leaf.back { left: 0; transform-origin: right center; }
.bk-leaf.fwd.go { transform: rotateY(-180deg); }
.bk-leaf.back.go { transform: rotateY(180deg); }
.bk-leaf .face { position: absolute; inset: 0; backface-visibility: hidden; -webkit-backface-visibility: hidden; background: #fff; overflow: hidden; line-height: 0; }
.bk-leaf .face canvas { width: 100% !important; height: 100% !important; }
.bk-leaf .back { transform: rotateY(180deg); }
.bk-leaf .face::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,0,0,.25), transparent 40%, rgba(255,255,255,.15) 70%, transparent); opacity: 0; transition: opacity .74s; }
.bk-leaf.go .face::after { opacity: 1; }
.bk-spread.turning-cover .bk-leaf { display: none; }
.bk-spread.turning-cover { animation: pageFade .7s ease; }
@keyframes pageFade { 50% { opacity: .2; transform: scale(.97); } }
.bk-page.slide-in { position: absolute; inset: 0; animation: slideIn .42s cubic-bezier(.3,1,.4,1) both; }
.bk-page.slide-in.from-r { --sx: 60%; --rot: -8deg; } .bk-page.slide-in.from-l { --sx: -60%; --rot: 8deg; }
@keyframes slideIn { from { transform: translateX(var(--sx)) rotateY(var(--rot)); opacity: 0; } }
.bk-page.slide-out { animation: slideOut .42s ease both; }
.bk-page.slide-out.to-l { --ox: -40%; } .bk-page.slide-out.to-r { --ox: 40%; }
@keyframes slideOut { to { transform: translateX(var(--ox)) scale(.92); opacity: 0; } }
.bk-nav { position: absolute; top: 50%; z-index: 6; width: 52px; height: 52px; margin-top: -26px; border: 0; border-radius: 50%; background: rgba(255,255,255,.14); color: #fff; display: grid; place-items: center; transition: background .2s, transform .2s, opacity .2s; }
.bk-nav svg { width: 28px; height: 28px; }
.bk-nav:hover:not([disabled]) { background: #a9531f; transform: scale(1.08); }
.bk-nav[disabled] { opacity: .25; cursor: default; }
.bk-nav.prev { left: 12px; } .bk-nav.next { right: 12px; }
.bk-range { position: absolute; left: 50%; bottom: 14px; transform: translateX(-50%); width: min(420px, 60%); accent-color: var(--orange); z-index: 6; }
.bk-hint { position: absolute; left: 0; right: 0; bottom: 36px; text-align: center; margin: 0; font-size: .78rem; opacity: 0; animation: hintFade 5s ease 1s; pointer-events: none; }
@keyframes hintFade { 15%, 70% { opacity: .8; } }
.book.with-thumbs .bk-view { padding-bottom: 150px; }
.bk-thumbs { position: absolute; left: 0; right: 0; bottom: 40px; z-index: 6; display: flex; gap: 8px; overflow-x: auto; padding: 8px 16px; background: rgba(0,0,0,.25); scrollbar-width: thin; }
.bk-thumb { position: relative; flex: none; height: 96px; min-width: 64px; border: 2px solid transparent; border-radius: 6px; background: rgba(255,255,255,.08); padding: 0; overflow: hidden; display: grid; place-items: center; }
.bk-thumb canvas { display: block; height: 90px; width: auto; }
.bk-thumb span { position: absolute; right: 3px; bottom: 3px; background: rgba(0,0,0,.6); color: #fff; font: 700 .68rem var(--ui); padding: 1px 5px; border-radius: 4px; }
.bk-thumb.on { border-color: var(--orange); }
.bk-err { text-align: center; padding: 30px; } .bk-err p { font-size: 1.1rem; margin-bottom: 16px; }
.bk-web { position: absolute; inset: 14px 14px 14px; border-radius: 14px; overflow: hidden; background: #fff; box-shadow: 0 20px 50px rgba(0,0,0,.45); animation: bookIn .7s cubic-bezier(.2,1.1,.3,1) both; }
.bk-web iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.bk-web .bk-loading { color: var(--teal); background: #faefdc; z-index: 1; }
@media (max-width: 860px) {
  .bk-bar { padding: 8px 8px 8px 10px; flex-wrap: wrap; } .bk-title h2 { font-size: 1rem; } .bk-kind { width: 32px; height: 32px; }
  .bk-count { display: none; } .bk-btn.wide span { display: none; } [data-b="full"] { display: none; }
  .bk-view { padding: 10px 8px 46px; } .bk-nav { width: 42px; height: 42px; margin-top: -21px; background: rgba(0,0,0,.35); } .bk-nav.prev { left: 4px; } .bk-nav.next { right: 4px; }
  .bk-web { inset: 6px; border-radius: 8px; }
}
@media (prefers-reduced-motion: reduce) { .bk-leaf { transition: none; } .bk-spread.enter, .bk-web, .ab-hero-img { animation: none; } }

/* =====================================================================
   v15 – Schede con molti contenuti: riepilogo e avviso "altri contenuti"
   ===================================================================== */
.card-right { position: relative; }
.card-toc { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; width: 100%; margin: 0 0 18px; padding: 8px 10px; border: 1.5px dashed rgba(32,82,76,.35); border-radius: 14px; background: rgba(255,255,255,.55); text-align: left; color: var(--teal); transition: background .2s, border-color .2s; }
.card-toc:hover { background: #fff; border-color: var(--teal); }
.ct-n { display: grid; place-items: center; min-width: 30px; height: 30px; border-radius: 50%; background: var(--teal); color: var(--cream-txt); font: 800 .9rem var(--ui); }
.ct-l { font: 800 .78rem var(--ui); letter-spacing: .1em; text-transform: uppercase; margin-right: 4px; }
.ct-chip { display: inline-flex; align-items: center; gap: 5px; background: rgba(32,82,76,.09); border-radius: 999px; padding: 4px 10px; font: 700 calc(.8rem * var(--fs)) var(--ui); }
.ct-chip svg { width: 15px; height: 15px; }
.ct-go { margin-left: auto; width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; background: #a9531f; color: #fff; animation: bob 1.6s ease-in-out infinite; }
.ct-go svg { width: 18px; height: 18px; }
@keyframes bob { 50% { transform: translateY(3px); } }
.actions.many { grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr)); gap: 8px; }
.actions.many .act { padding: 10px 12px; min-height: 64px; }
.actions.many .act .act-ico { height: 28px; width: 34px; }
.actions.flash .act { animation: actFlash 1.2s ease; }
@keyframes actFlash { 0%, 100% { box-shadow: none; } 30% { box-shadow: 0 0 0 4px rgba(207,118,57,.7); } }
.card-more { position: absolute; left: 50%; bottom: 82px; transform: translateX(-50%); z-index: 4; display: inline-flex; align-items: center; gap: 8px; border: 0; border-radius: 999px; padding: 9px 16px 9px 10px;
  background: #a9531f; color: #fff; font: 800 .86rem var(--ui); box-shadow: 0 8px 22px rgba(0,0,0,.3); animation: moreIn .4s cubic-bezier(.3,1.5,.5,1); white-space: nowrap; }
.card-more svg { width: 20px; height: 20px; animation: bob 1.4s ease-in-out infinite; }
.card-more .cm-n { display: grid; place-items: center; min-width: 24px; height: 24px; border-radius: 50%; background: #fff; color: #a9531f; font-size: .8rem; }
.card-more:hover { background: var(--teal); }
.card-more[hidden] { display: none; }
@keyframes moreIn { from { opacity: 0; transform: translate(-50%, 14px); } }
.card-right::after { content: ""; position: absolute; left: 0; right: 0; bottom: 70px; height: 50px; pointer-events: none; background: linear-gradient(180deg, rgba(245,224,191,0), var(--cream)); }
body.hc .card-more { background: #000; color: #ffef00; }
@media (max-width: 860px) {
  .card-more { position: fixed; bottom: 76px; }
  .card-right::after { display: none; }
}
.card-scroll { padding-bottom: 64px; }
@media (max-width: 860px) { .card-right { padding-bottom: 60px; } .card-scroll { padding-bottom: 20px; } }
a.info-logos { display: block; transition: transform .25s, box-shadow .25s; }
a.info-logos:hover, a.info-logos:focus-visible { transform: translateY(-3px); box-shadow: 0 10px 24px rgba(32,82,76,.2); }
.noscript-content { position: fixed; inset: 0; z-index: 200; overflow: auto; background: var(--cream); color: var(--ink); padding: 32px max(20px, calc(50vw - 420px)); font-family: var(--serif); line-height: 1.5; }
.noscript-content h1, .noscript-content h2 { font-family: var(--display); font-weight: normal; color: var(--teal); }
