/* UNOMED Staff e Visite – integrazioni frontend */
.umsv-ph{background:#ffe066;color:#5a3d00;padding:1px 6px;border-radius:6px;font-weight:700}
.umsv-staff .ums-card[hidden],.umsv-staff .ums-group[hidden]{display:none!important}
.umsv-vdocs{position:relative}
.umsv-vdocs .ums-dir{padding-top:clamp(40px,6vw,72px);padding-bottom:clamp(40px,6vw,72px)}
.umsv-vhead{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 24px;margin-bottom:22px}
.umsv-vhead .ums-eyebrow{flex-basis:100%;margin-bottom:0}
.umsv-vhead h2{margin:0!important}
.umsv-all{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:#165c74!important;text-decoration:none!important;border-bottom:1px solid rgba(22,92,116,.3);padding-bottom:3px}
.umsv-all:hover{border-color:#165c74}
.umsv-all i{transition:transform .3s}.umsv-all:hover i{transform:translateX(3px)}
.umsv-hub-docs{display:flex;gap:8px;align-items:flex-start;margin:10px 0 0;font-size:.86rem;line-height:1.5;color:#165c74;font-weight:600}
.umsv-hub-docs i{margin-top:3px;opacity:.8}
/* ---------- News ---------- */
.umn{font-family:'Plus Jakarta Sans',system-ui,sans-serif;--umn-ink:#0f3143;--umn-teal:#165c74;--umn-line:rgba(21,50,67,.09)}
.umn-wrap{width:min(1240px,calc(100% - 40px));margin-inline:auto}
.umn-home{padding:clamp(56px,7vw,96px) 0;background:#fff}
.umn-archive{padding:clamp(48px,6vw,84px) 0 clamp(60px,7vw,100px)}
.umn-hide-loop{display:none!important}
.umn-news-page .ast-pagination,.umn-news-page .ast-archive-description{display:none!important}
.umn-head{display:flex;flex-wrap:wrap;gap:18px 30px;align-items:flex-end;justify-content:space-between;margin-bottom:clamp(26px,3.5vw,40px)}
.umn-head h2{font-size:clamp(30px,3.6vw,46px)!important;letter-spacing:-.045em!important;line-height:1.06!important;color:var(--umn-ink)!important;font-weight:700!important;margin:0 0 10px!important;text-transform:none!important}
.umn-head p{margin:0;max-width:620px;color:#5b6a72;font-size:16.5px;line-height:1.7}
.umn-eyebrow{display:inline-flex;align-items:center;gap:12px;font:700 .75rem/1.3 'Plus Jakarta Sans',system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#1a6c7a;margin:0 0 14px}
.umn-eyebrow::before{content:"";width:28px;height:2px;border-radius:2px;background:currentColor;opacity:.75}
.umn-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.umn-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--umn-line);border-radius:28px;overflow:hidden;box-shadow:0 14px 40px rgba(21,50,67,.06);transition:transform .4s,box-shadow .4s}
.umn-card:hover{transform:translateY(-6px);box-shadow:0 28px 56px -28px rgba(21,50,67,.35)}
.umn-media{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#eef7f8}
.umn-media img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.umn-card:hover .umn-media img{transform:scale(1.05)}
.umn-noimg{display:grid!important;place-items:center;background:radial-gradient(circle at 85% 15%,rgba(86,160,157,.45),transparent 40%),linear-gradient(135deg,#0f3143,#165c74 60%,#1a6c7a)!important}
.umn-logo{font:800 clamp(26px,3vw,36px)/1 'Plus Jakarta Sans',system-ui,sans-serif;letter-spacing:-.04em;color:#fff}
.umn-logo b{font-weight:400}
.umn-noimg i{position:absolute;right:18px;bottom:16px;color:rgba(191,230,230,.75);font-size:22px}
.umn-body{display:flex;flex-direction:column;flex:1;padding:22px 24px 24px}
.umn-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:12px;font-size:12.5px;color:#7a8a92;font-weight:600}
.umn-cat{background:#e6f4f5;color:#1a6c7a;border-radius:999px;padding:5px 11px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:700}
.umn-card h3{font-size:19px!important;line-height:1.3!important;letter-spacing:-.02em!important;margin:0 0 10px!important;font-weight:700!important;text-transform:none!important}
.umn-card h3 a{color:var(--umn-ink)!important;text-decoration:none!important}
.umn-card h3 a:hover{color:var(--umn-teal)!important}
.umn-card p{margin:0 0 16px;color:#5b6a72;font-size:15px;line-height:1.65}
.umn-more{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--umn-teal)!important;text-decoration:none!important}
.umn-more i{transition:transform .3s}.umn-card:hover .umn-more i{transform:translateX(4px)}
.umn-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 24px;border-radius:999px;border:1px solid rgba(22,92,116,.35);color:var(--umn-teal,#165c74)!important;font:700 .78rem/1.2 'Plus Jakarta Sans',system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;text-decoration:none!important;transition:.3s;background:#fff}
.umn-btn:hover{background:#165c74;color:#fff!important;border-color:#165c74}
.umn-btn-l{background:#165c74;color:#fff!important;border-color:#165c74}
.umn-btn-l:hover{background:#0f3143}
.umn-empty{padding:30px;text-align:center;color:#5b6a72}
.umn-pager{display:flex;justify-content:center;gap:8px;margin-top:34px}
.umn-pager .page-numbers{display:grid;place-items:center;min-width:42px;height:42px;border-radius:999px;border:1px solid var(--umn-line);color:#0f3143;text-decoration:none;font-weight:700}
.umn-pager .current{background:#165c74;color:#fff;border-color:#165c74}
.umn-back{display:inline-flex;align-items:center;gap:8px;margin:0 0 22px;font-weight:700;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:#165c74!important;text-decoration:none!important}
.umn-single .umn-content{font-size:17.5px;line-height:1.8;color:#2f3d45}
.umn-single .umn-content a{color:#165c74;font-weight:700;word-break:break-word}
.umn-cta{display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center;justify-content:space-between;margin:36px 0 10px;padding:24px 26px;border-radius:24px;background:linear-gradient(135deg,#f5fafb,#e6f4f5);border:1px solid rgba(21,50,67,.08)}
.umn-cta strong{display:block;color:#0f3143;font-size:18px}
.umn-cta span{color:#5b6a72}
.umn-cta-act{display:flex;flex-wrap:wrap;gap:10px}
@media (max-width:1024px){.umn-grid{grid-template-columns:1fr 1fr}}
@media (max-width:680px){.umn-grid{grid-template-columns:1fr}.umn-wrap{width:calc(100% - 32px)}.umn-head .umn-btn,.umn-cta-act .umn-btn{width:100%}}
/* ---------- Popup news ---------- */
.umn-pop{position:fixed;z-index:99990;font-family:'Plus Jakarta Sans',system-ui,sans-serif;opacity:0;transition:opacity .35s,transform .35s}
.umn-pop.in{opacity:1}
.umn-pop[hidden]{display:none!important}
.umn-pop a.umn-pop-link{text-decoration:none!important;color:inherit!important}
.umn-pop-x{position:absolute;top:8px;right:10px;width:34px;height:34px;border-radius:50%;border:0;background:rgba(15,49,67,.08);color:#0f3143;font-size:22px;line-height:1;cursor:pointer;z-index:2}
.umn-pop-x:hover{background:#0f3143;color:#fff}
.umn-pop-eye{display:inline-flex;gap:8px;align-items:center;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#1a6c7a}
.umn-pop strong{display:block;color:#0f3143;font-size:18px;line-height:1.3;letter-spacing:-.02em}
.umn-pop-cta{display:inline-flex;gap:8px;align-items:center;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#165c74}
/* Banner: barra in basso */
.umn-pop--banner{left:16px;right:16px;bottom:16px;transform:translateY(20px)}
.umn-pop--banner.in{transform:none}
.umn-pop--banner .umn-pop-card{position:relative;max-width:1100px;margin:0 auto;background:linear-gradient(135deg,#0f3143,#165c74);border-radius:22px;box-shadow:0 24px 60px -20px rgba(0,0,0,.45);padding:16px 56px 16px 18px}
.umn-pop--banner .umn-pop-link{display:flex;gap:16px;align-items:center}
.umn-pop--banner .umn-pop-ico{flex:0 0 46px;height:46px;border-radius:14px;background:rgba(255,255,255,.14);display:grid;place-items:center;color:#bfe6e6;font-size:20px}
.umn-pop--banner .umn-pop-txt{flex:1;min-width:0}
.umn-pop--banner strong{color:#fff;font-size:16px}
.umn-pop--banner .umn-pop-txt>span{display:block;color:rgba(255,255,255,.82);font-size:14px;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.umn-pop--banner .umn-pop-cta{flex:0 0 auto;background:#fff;color:#0f3143;border-radius:999px;padding:11px 18px}
.umn-pop--banner .umn-pop-x{background:rgba(255,255,255,.14);color:#fff;top:50%;margin-top:-17px}
/* Banner + immagine: riquadro centrale */
.umn-pop--banner_img{inset:0;display:grid;place-items:center;padding:16px}
.umn-pop-bg{position:absolute;inset:0;background:rgba(15,49,67,.55);backdrop-filter:blur(3px)}
.umn-pop--banner_img .umn-pop-card{position:relative;width:min(560px,100%);background:#fff;border-radius:28px;overflow:hidden;box-shadow:0 40px 90px -30px rgba(0,0,0,.55);transform:translateY(24px) scale(.97);transition:transform .35s}
.umn-pop--banner_img.in .umn-pop-card{transform:none}
.umn-pop--banner_img .umn-pop-link{display:block}
.umn-pop-img{position:relative;display:block;aspect-ratio:16/8;overflow:hidden;background:#eef7f8}
.umn-pop-img img{width:100%;height:100%;object-fit:cover}
.umn-pop-img.umn-noimg{display:grid;place-items:center}
.umn-pop--banner_img .umn-pop-txt{display:flex;flex-direction:column;gap:10px;padding:22px 26px 26px}
.umn-pop--banner_img .umn-pop-txt>span:not([class]){color:#5b6a72;font-size:15px;line-height:1.65}
.umn-pop--banner_img .umn-pop-x{background:rgba(255,255,255,.9)}
/* Solo testo: riquadro compatto */
.umn-pop--text{left:50%;bottom:24px;width:min(440px,calc(100% - 32px));transform:translate(-50%,20px)}
.umn-pop--text.in{transform:translate(-50%,0)}
.umn-pop--text .umn-pop-card{position:relative;background:#fff;border:1px solid rgba(21,50,67,.1);border-left:5px solid #165c74;border-radius:20px;box-shadow:0 24px 60px -24px rgba(15,49,67,.45);padding:18px 52px 18px 20px}
.umn-pop--text .umn-pop-link{display:flex;flex-direction:column;gap:8px}
.umn-pop--text .umn-pop-link>span:not([class]){color:#5b6a72;font-size:14.5px;line-height:1.6}
@media (max-width:700px){.umn-pop--banner .umn-pop-link{flex-wrap:wrap}.umn-pop--banner .umn-pop-ico{display:none}.umn-pop--banner .umn-pop-txt>span{white-space:normal}.umn-pop--banner .umn-pop-cta{width:100%;justify-content:center}}
@media (prefers-reduced-motion:reduce){.umn-pop,.umn-pop-card{transition:none!important}}
/* ---------- Newsletter Brevo ---------- */
.umn-nl{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,460px);gap:clamp(20px,4vw,48px);align-items:center;margin-top:clamp(36px,5vw,56px);padding:clamp(24px,3.5vw,40px);border-radius:30px;background:radial-gradient(circle at 92% 8%,rgba(86,160,157,.18),transparent 40%),linear-gradient(135deg,#f5fafb,#e6f4f5);border:1px solid rgba(21,50,67,.08);font-family:'Plus Jakarta Sans',system-ui,sans-serif}
.umn-nl h3{font-size:clamp(24px,2.6vw,34px)!important;letter-spacing:-.04em!important;line-height:1.1!important;color:#0f3143!important;margin:0 0 12px!important;font-weight:700!important;text-transform:none!important}
.umn-nl p{margin:0 0 12px;color:#4e5d65;font-size:15.5px;line-height:1.7}
.umn-nl-privacy{font-size:12.5px!important;line-height:1.6!important;color:#6b7a82!important;display:flex;gap:8px}
.umn-nl-privacy i{color:#165c74;margin-top:3px}
.umn-nl-privacy a{color:#165c74;font-weight:700}
.umn-nl-form{background:#fff;border-radius:22px;box-shadow:0 18px 44px -24px rgba(15,49,67,.35);overflow:hidden}
.umn-nl-form iframe{display:block;width:100%;height:330px;border:0}
.umn-nl--single{grid-template-columns:1fr}
@media (max-width:900px){.umn-nl{grid-template-columns:1fr}}
/* ---------- Home: Esplora le aree (umx) ---------- */
.umx{--x-ink:#0f3143;--x-teal:#165c74;--x-mint:#e6f4f5;--x-line:rgba(21,50,67,.09);padding:clamp(56px,7vw,100px) 0;background:radial-gradient(circle at 8% 0%,rgba(191,230,230,.45),transparent 38%),linear-gradient(180deg,#f3f9fb,#fff);font-family:'Plus Jakarta Sans',system-ui,sans-serif}
.umx-wrap{width:min(1240px,calc(100% - 40px));margin-inline:auto}
.umx-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,420px);gap:20px 48px;align-items:end;margin-bottom:clamp(24px,3vw,36px)}
.umx-eyebrow{display:inline-flex;align-items:center;gap:12px;font:700 .75rem/1.3 'Plus Jakarta Sans',system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#1a6c7a;margin:0 0 14px}
.umx-eyebrow::before{content:"";width:28px;height:2px;border-radius:2px;background:currentColor;opacity:.75}
.umx h2{font-size:clamp(32px,4vw,52px)!important;letter-spacing:-.045em!important;line-height:1.04!important;color:var(--x-ink)!important;font-weight:700!important;margin:0 0 12px!important;text-transform:none!important}
.umx-intro p{margin:0;max-width:600px;color:#5b6a72;font-size:clamp(15.5px,1.3vw,17px);line-height:1.7}
.umx-tools{display:flex;flex-direction:column;gap:10px;align-items:stretch}
.umx-search{position:relative;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--x-line);border-radius:999px;padding:0 8px 0 18px;min-height:56px;box-shadow:0 14px 34px -22px rgba(15,49,67,.45);transition:border-color .25s,box-shadow .25s}
.umx-search:focus-within{border-color:var(--x-teal);box-shadow:0 0 0 4px rgba(22,92,116,.12),0 14px 34px -22px rgba(15,49,67,.45)}
.umx-search>i{color:var(--x-teal)}
.umx-search input{flex:1;min-width:0;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;font:500 16px/1.2 'Plus Jakarta Sans',system-ui,sans-serif!important;color:var(--x-ink)!important;padding:14px 0!important;height:auto!important}
.umx-search input::-webkit-search-cancel-button{display:none}
.umx-clear{width:40px;height:40px;border-radius:50%;border:0;background:var(--x-mint);color:var(--x-teal);cursor:pointer;display:grid;place-items:center}
.umx-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.umx-count{align-self:flex-end;font-size:13px;color:#5b6a72;font-weight:600}
.umx-count strong{color:var(--x-ink)}
.umx-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.umx-card{position:relative;display:flex;align-items:center;gap:14px;min-height:84px;padding:14px 16px;background:#fff;border:1px solid var(--x-line);border-radius:20px;text-decoration:none!important;color:var(--x-ink)!important;box-shadow:0 10px 26px -20px rgba(15,49,67,.35);transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s,border-color .3s}
.umx-card:hover,.umx-card:focus-visible{transform:translateY(-3px);border-color:rgba(22,92,116,.35);box-shadow:0 20px 40px -24px rgba(15,49,67,.45);outline:0}
.umx-card:focus-visible{box-shadow:0 0 0 3px rgba(22,92,116,.35)}
.umx-ico{flex:0 0 48px;height:48px;border-radius:15px;display:grid;place-items:center;background:var(--x-mint);color:var(--x-teal);font-size:19px;transition:background .3s,color .3s}
.umx-card:hover .umx-ico{background:var(--x-teal);color:#fff}
.umx-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.umx-name{font-weight:700;font-size:15.5px;line-height:1.3;letter-spacing:-.01em}
.umx-meta{font-size:12.5px;color:#6b7a82;font-weight:600}
.umx-go{flex:0 0 32px;height:32px;border-radius:50%;display:grid;place-items:center;color:var(--x-teal);background:transparent;border:1px solid var(--x-line);font-size:12px;transition:background .3s,color .3s,transform .3s}
.umx-card:hover .umx-go{background:var(--x-teal);color:#fff;transform:translateX(2px)}
.umx[data-collapsed="1"] .umx-card:nth-child(n+13){display:none}
.umx-card[hidden]{display:none!important}
.umx-empty{text-align:center;color:#5b6a72;padding:26px 0;margin:0}
.umx-empty a{color:var(--x-teal);font-weight:700}
.umx-foot{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:center;margin-top:clamp(22px,3vw,34px)}
.umx-more,.umx-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border-radius:999px;font:700 .8rem/1.2 'Plus Jakarta Sans',system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;text-decoration:none!important;cursor:pointer;transition:.3s}
.umx-more{background:var(--x-ink);color:#fff;border:0}
.umx-more:hover{background:var(--x-teal)}
.umx-more i{transition:transform .3s}
.umx-more[aria-expanded="true"] i{transform:rotate(180deg)}
.umx-btn{background:var(--x-teal);color:#fff!important;border:1px solid var(--x-teal)}
.umx-btn:hover{background:var(--x-ink);border-color:var(--x-ink)}
.umx-btn-o{background:#fff;color:var(--x-teal)!important;border-color:rgba(22,92,116,.35)}
.umx-btn-o:hover{background:var(--x-mint);color:var(--x-ink)!important}
.umx.is-search .umx-more{display:none}
@media (max-width:1100px){.umx-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.umx[data-collapsed="1"] .umx-card:nth-child(n+10){display:none}}
@media (max-width:860px){.umx-head{grid-template-columns:1fr;align-items:start}.umx-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.umx[data-collapsed="1"] .umx-card:nth-child(n+9){display:none}.umx-count{align-self:flex-start}}
@media (max-width:600px){
.umx{padding:48px 0 56px}
.umx-wrap{width:calc(100% - 32px)}
.umx-grid{grid-template-columns:1fr;gap:10px}
.umx[data-collapsed="1"] .umx-card:nth-child(n+7){display:none}
.umx-card{min-height:68px;padding:10px 12px;border-radius:18px;gap:12px}
.umx-card:hover{transform:none}
.umx-ico{flex-basis:44px;height:44px;border-radius:13px;font-size:17px}
.umx-name{font-size:15px}
.umx-search{min-height:52px}
.umx-foot{flex-direction:column;align-items:stretch}
.umx-more,.umx-btn{width:100%}
}
@media (prefers-reduced-motion:reduce){.umx-card,.umx-ico,.umx-go{transition:none!important}}
.umx .umx-clear{width:36px!important;height:36px!important;min-height:0!important;padding:0!important;margin:0!important;border:0!important;border-radius:50%!important;background:#e6f4f5!important;color:#165c74!important;box-shadow:none!important;flex:0 0 36px;font-size:14px!important;line-height:1!important}
.umx .umx-clear[hidden]{display:none!important}
.umx .umx-more{border:0!important}
/* Incarichi staff UNOMED (sincronizzati con la Carta dei servizi) */
.umsv-duties{list-style:none;margin:12px 0 0;padding:12px 0 0;border-top:1px solid rgba(21,50,67,.08);display:flex;flex-direction:column;gap:6px;text-align:left}
.umsv-duties li{display:flex;gap:8px;align-items:flex-start;font-size:13px;line-height:1.45;color:#3c4a52;font-weight:600;margin:0}
.umsv-duties i{color:#1a6c7a;margin-top:2px;font-size:12px}
/* v1.6 – FAQ (umf) e Altre visite (umr) */
.umf,.umr{--f-ink:#0f3143;--f-teal:#165c74;--f-mint:#e6f4f5;--f-line:rgba(21,50,67,.1);font-family:'Plus Jakarta Sans',system-ui,sans-serif;color:var(--f-ink)}
.umf{padding:clamp(48px,6vw,88px) 0;background:linear-gradient(180deg,#fff,#f3f9fb)}
.umf-wrap,.umr-wrap{width:min(1100px,calc(100% - 32px));margin:0 auto}
.umf-wrap{max-width:860px}
.umf-eyebrow,.umr-eyebrow{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--f-teal);margin-bottom:8px}
.umf h2,.umr h2{font-size:clamp(24px,3.2vw,34px);line-height:1.15;margin:0 0 22px;color:var(--f-ink)}
.umf-list{display:grid;gap:10px}
.umf-item{background:#fff;border:1px solid var(--f-line);border-radius:18px;box-shadow:0 10px 26px -22px rgba(15,49,67,.4);overflow:hidden}
.umf-item summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px 20px;font-weight:700;font-size:16px;line-height:1.35}
.umf-item summary::-webkit-details-marker{display:none}
.umf-item summary i{flex:0 0 32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--f-mint);color:var(--f-teal);font-size:13px;transition:transform .25s,background .25s,color .25s}
.umf-item[open] summary i{transform:rotate(45deg);background:var(--f-teal);color:#fff}
.umf-item summary:focus-visible{outline:2px solid var(--f-teal);outline-offset:-2px;border-radius:18px}
.umf-a{padding:0 20px 18px;font-size:15px;line-height:1.65;color:#36505e}
.umf-a a{color:var(--f-teal);font-weight:600}
.umr{padding:clamp(44px,5vw,72px) 0;background:#f3f9fb;border-top:1px solid var(--f-line)}
.umr-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:20px}
.umr-head h2{margin:0}
.umr-all{font-weight:700;color:var(--f-teal)!important;text-decoration:none!important;display:inline-flex;gap:8px;align-items:center}
.umr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.umr-card{display:flex;align-items:center;gap:12px;min-height:76px;padding:12px 14px;background:#fff;border:1px solid var(--f-line);border-radius:18px;text-decoration:none!important;color:var(--f-ink)!important;transition:transform .25s,box-shadow .25s,border-color .25s}
.umr-card:hover,.umr-card:focus-visible{transform:translateY(-2px);border-color:var(--f-teal);box-shadow:0 16px 30px -22px rgba(15,49,67,.55)}
.umr-ico{flex:0 0 44px;height:44px;border-radius:13px;display:grid;place-items:center;background:var(--f-teal);color:#fff;font-size:17px}
.umr-txt{flex:1;min-width:0;display:flex;flex-direction:column}
.umr-name{font-weight:700;font-size:15px;line-height:1.25}
.umr-meta{font-size:12.5px;color:#5b6a72}
.umr-go{color:var(--f-teal);font-size:13px}
@media (max-width:900px){.umr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.umr-grid{grid-template-columns:1fr}.umf-item summary{padding:16px;font-size:15px}.umf-a{padding:0 16px 16px}}
/* v1.7 – orari e chiusure */
.umo-bar{position:relative;z-index:9999;display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 48px 10px 16px;background:#0f3143;color:#fff;font:600 14px/1.4 'Plus Jakarta Sans',system-ui,sans-serif;text-align:center}
.umo-bar i{color:#ffe066}
.umo-bar button{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:0;color:#fff;font-size:22px;line-height:1;cursor:pointer;padding:4px 8px}
.umo-special{margin-top:16px;padding:14px 16px;border-radius:16px;background:#fff8e6;border:1px solid #f0c36d;color:#5c4100;font-family:'Plus Jakarta Sans',system-ui,sans-serif;text-align:left}
.umo-special .umo-st{display:flex;gap:8px;align-items:center;font-size:14px;margin-bottom:6px;color:#5c4100}
.umo-special ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}
.umo-special li{font-size:14px;line-height:1.4}
.umo-special .umo-when{font-weight:700}
.umo-special small{display:block;opacity:.8}
.umo-week{margin:0;padding:0;list-style:none;display:grid;gap:6px}
.umo-week li{display:flex;justify-content:space-between;gap:12px;padding:8px 12px;border-radius:10px;background:#f3f9fb}
.umo-week em{font-style:normal;font-weight:600}
/* v1.8 – accessibilità (contrasto e link) */
.umx-meta{color:#4f5f67!important}
.um-flegal a{text-decoration:underline!important;text-underline-offset:2px}
/* v1.9 – Popup avanzati (ump) */
.ump{--u-bg:#fff;--u-ink:#0f3143;--u-sub:#36505e;--u-ac:#165c74;--u-btn:#165c74;--u-btnt:#fff;--u-line:rgba(21,50,67,.12);position:fixed;z-index:100050;font-family:'Plus Jakarta Sans',system-ui,sans-serif;pointer-events:none}
.ump[hidden]{display:none!important}
.ump--t-dark{--u-bg:#0f3143;--u-ink:#fff;--u-sub:rgba(255,255,255,.82);--u-ac:#7fd3d6;--u-btn:#fff;--u-btnt:#0f3143;--u-line:rgba(255,255,255,.15)}
.ump--t-accent{--u-bg:#165c74;--u-ink:#fff;--u-sub:rgba(255,255,255,.88);--u-ac:#ffe066;--u-btn:#fff;--u-btnt:#0f3143;--u-line:rgba(255,255,255,.18)}
.ump--t-warn{--u-bg:#fff8e6;--u-ink:#4a3400;--u-sub:#5c4100;--u-ac:#8a5a00;--u-btn:#0f3143;--u-btnt:#fff;--u-line:#f0c36d}
.ump--center{inset:0;display:grid;place-items:center;padding:16px}
.ump--br{right:16px;bottom:16px}.ump--bl{left:16px;bottom:16px}
.ump--top{left:0;right:0;top:0}.ump--bottom{left:0;right:0;bottom:0}
.ump-ov{position:absolute;inset:0;background:rgba(10,30,42,.55);opacity:0;transition:opacity .3s;pointer-events:auto}
.ump.in .ump-ov{opacity:1}
.ump-card{position:relative;pointer-events:auto;background:var(--u-bg);color:var(--u-ink);border:1px solid var(--u-line);border-radius:22px;box-shadow:0 30px 70px -25px rgba(10,30,42,.55);overflow:hidden;width:min(var(--u-w,460px),calc(100vw - 32px));max-height:calc(100vh - 32px);overflow-y:auto;transition:transform .35s cubic-bezier(.2,.7,.2,1),opacity .3s;opacity:0}
.ump--s{--u-w:360px}.ump--m{--u-w:460px}.ump--l{--u-w:640px}
.ump--img_left.ump--m{--u-w:620px}.ump--img_left.ump--l{--u-w:820px}.ump--img_left.ump--s{--u-w:480px}
.ump--a-zoom .ump-card{transform:scale(.92)}.ump--a-slide .ump-card{transform:translateY(24px)}.ump--a-fade .ump-card{transform:none}.ump--a-none .ump-card{transition:none}
.ump.in .ump-card{opacity:1;transform:none}
.ump-x{position:absolute;top:10px;right:10px;z-index:2;width:36px;height:36px;border-radius:50%;border:0;background:rgba(15,49,67,.08);color:var(--u-ink);font-size:24px;line-height:1;cursor:pointer;display:grid;place-items:center}
.ump--t-dark .ump-x,.ump--t-accent .ump-x,.ump--image .ump-x{background:rgba(255,255,255,.85);color:#0f3143}
.ump-x:focus-visible,.ump-btn:focus-visible{outline:3px solid var(--u-ac);outline-offset:2px}
.ump-img img{display:block;width:100%;height:auto;max-height:52vh;object-fit:cover}
.ump--image .ump-img img{max-height:calc(100vh - 40px);object-fit:contain;background:#0f3143}
.ump-txt{padding:20px 22px 22px}
.ump-eye{display:inline-flex;gap:6px;align-items:center;font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--u-ac);margin-bottom:6px}
.ump-title{display:block;font-size:clamp(18px,2.4vw,22px);line-height:1.25;margin:0 36px 8px 0;color:var(--u-ink)}
.ump-body{font-size:15px;line-height:1.6;color:var(--u-sub)}.ump-body p{margin:0 0 8px}.ump-body a{color:var(--u-ac);font-weight:600}
.ump-btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.ump-btn{display:inline-flex;gap:8px;align-items:center;padding:11px 18px;border-radius:999px;background:var(--u-btn);color:var(--u-btnt)!important;font-weight:700;font-size:14px;text-decoration:none!important}
.ump-btn--o{background:transparent;color:var(--u-ink)!important;border:1.5px solid var(--u-line)}
.ump--img_left .ump-in{display:grid;grid-template-columns:42% 1fr}.ump--img_left .ump-img img{height:100%;max-height:none}
.ump--bar .ump-card{width:100%;max-width:none;border-radius:0;border-left:0;border-right:0;max-height:none}
.ump--bar .ump-in{display:flex;align-items:center;justify-content:center;gap:16px;padding:10px 56px 10px 16px}
.ump--bar .ump-txt{padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px}
.ump--bar .ump-eye{margin:0}.ump--bar .ump-title{margin:0;font-size:15px}.ump--bar .ump-body{font-size:14px}.ump--bar .ump-body p{margin:0}.ump--bar .ump-btns{margin:0}.ump--bar .ump-btn{padding:7px 14px;font-size:13px}
.ump--bar .ump-x{top:50%;transform:translateY(-50%);width:32px;height:32px}
.ump--bar.ump--top .ump-card{transform:translateY(-100%)}.ump--bar.ump--bottom .ump-card{transform:translateY(100%)}.ump--bar.in .ump-card{transform:none}
html.ump-lock{overflow:hidden}
@media (max-width:640px){.ump--img_left .ump-in{grid-template-columns:1fr}.ump--br,.ump--bl{left:12px;right:12px;bottom:12px}.ump--br .ump-card,.ump--bl .ump-card{width:100%}.ump--bar .ump-in{justify-content:flex-start}}
@media (prefers-reduced-motion:reduce){.ump-card,.ump-ov{transition:none!important}}
.ump .ump-x{padding:0!important;margin:0!important;min-width:0!important;min-height:0!important;width:36px!important;height:36px!important;border-radius:50%!important;border:0!important;box-shadow:none!important;font-size:24px!important;line-height:1!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important}
.ump--bar .ump-x{width:32px!important;height:32px!important}
.ump .ump-x:hover{background:rgba(15,49,67,.18)!important;color:inherit}
/* v2.1 – Popup adattivi a ogni schermo, sempre leggibili */
.ump{--u-wi:600px}
.ump--s{--u-wi:440px}.ump--l{--u-wi:820px}
.ump--center{padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}
.ump-card{max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
/* Solo immagine: il riquadro prende la forma dell'immagine e la mostra sempre intera, il più grande possibile */
.ump--image .ump-card{width:auto!important;max-width:min(var(--u-wi),calc(100vw - 24px));background:transparent;border:0;overflow:visible}
.ump--image .ump-in{display:flex;justify-content:center}
.ump--image .ump-img{line-height:0;border-radius:18px;overflow:hidden;box-shadow:0 30px 70px -25px rgba(10,30,42,.6)}
.ump--image .ump-img img{width:auto;max-width:100%;height:auto;max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);object-fit:contain;background:transparent}
.ump--image .ump-x{top:-12px;right:-12px}
.ump .ump-x{background:#fff!important;color:#0f3143!important;box-shadow:0 4px 14px rgba(10,30,42,.35)!important;width:40px!important;height:40px!important;font-size:26px!important}
/* Testi: dimensioni fluide ma mai troppo piccole */
.ump-title{font-size:clamp(19px,1.2rem + .6vw,26px)}
.ump-body{font-size:clamp(15px,.9rem + .2vw,17px);line-height:1.6}
.ump-btn{min-height:44px}
.ump--img_text .ump-img img{max-height:min(46vh,420px)}
/* Schermi alti e larghi: popup un po' più grandi */
@media (min-width:1400px) and (min-height:850px){.ump--m{--u-w:520px;--u-wi:680px}.ump--l{--u-w:720px;--u-wi:920px}}
/* Smartphone */
@media (max-width:640px){
.ump--center{align-items:center}
.ump--center:not(.ump--image) .ump-card{width:calc(100vw - 24px)!important}
.ump--image .ump-card{max-width:calc(100vw - 24px)}
.ump--image .ump-x{top:8px;right:8px}
.ump--img_text .ump-img img,.ump--img_left .ump-img img{max-height:34vh;max-height:34dvh}
.ump-txt{padding:18px 18px 20px}
.ump-btns{flex-direction:column}.ump-btn{justify-content:center;width:100%}
.ump--br,.ump--bl{left:max(10px,env(safe-area-inset-left));right:max(10px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom))}
.ump--bar .ump-in{flex-wrap:wrap;padding:12px 52px 12px 14px}.ump--bar .ump-btns{flex-direction:row}.ump--bar .ump-btn{width:auto}
.ump--bottom .ump-card{padding-bottom:env(safe-area-inset-bottom)}
}
/* Smartphone in orizzontale / schermi bassi */
@media (max-height:520px){
.ump--img_text .ump-in{display:grid;grid-template-columns:40% 1fr}
.ump--img_text .ump-img img{height:100%;max-height:none}
.ump-txt{padding:12px 16px}
.ump-btns{flex-direction:row}.ump-btn{width:auto}
}
/* v2.2.2 – popup solo immagine più grandi sugli schermi ampi (scritte leggibili) */
.ump--image{--u-wi:min(760px,72vw)}
.ump--image.ump--s{--u-wi:min(540px,60vw)}
.ump--image.ump--l{--u-wi:min(1000px,86vw)}
@media (max-width:640px){.ump--image,.ump--image.ump--s,.ump--image.ump--l{--u-wi:calc(100vw - 24px)}.ump--image .ump-img img{width:100%}}
