
:root{
 --blue:#073b91;--blue2:#0b63ce;--blue3:#dfeeff;--navy:#051a3d;--red:#ed1c24;
 --paper:#fff;--bg:#f4f8fc;--ink:#16304a;--muted:#64778a;--line:#d7e2ee;
 --shadow:0 18px 48px rgba(6,43,98,.12);--shadow2:0 8px 24px rgba(6,43,98,.08);
 --r:24px;--pad:clamp(18px,2.4vw,36px);--max:1840px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto}a{color:inherit}button,input,select,textarea{font:inherit}.sr-only{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:fixed;left:12px;top:-80px;z-index:99999;background:#fff;color:#000;padding:10px 14px;border-radius:9px}.skip-link:focus{top:12px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--red);outline-offset:3px}.eyebrow{font-size:.7rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase;color:var(--blue2)}.eyebrow.light{color:#c8e5ff}.live-badge{display:inline-flex;padding:2px 6px;border-radius:99px;background:var(--red);color:#fff;font-size:.55rem;letter-spacing:.06em;vertical-align:middle;animation:live 1.8s infinite}.brand-line{height:4px;background:linear-gradient(90deg,var(--blue) 0 74%,var(--red) 74%)}.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.97);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.header-main{max-width:var(--max);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:8px var(--pad)}.brand{display:block;min-width:220px}.brand img{display:block;width:clamp(270px,25vw,470px);max-height:70px;object-fit:contain;object-position:left center}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.zoom-tools{display:flex;border:1px solid var(--line);border-radius:11px;overflow:hidden}.zoom-tools button{border:0;background:#fff;color:var(--blue);width:42px;height:40px;font-weight:900}.zoom-tools button+button{border-left:1px solid var(--line)}.site-search{display:flex;border:1px solid var(--line);border-radius:11px;overflow:hidden;background:#fff}.site-search input{border:0;width:clamp(130px,12vw,210px);padding:9px 11px}.site-search button{border:0;background:var(--navy);color:#fff;padding:0 12px;font-weight:850}.social-links{display:flex;gap:4px}.social-links a{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:#eef4fb;color:var(--blue);font-size:.67rem;font-weight:950;text-decoration:none;text-transform:uppercase}.contact-btn,.menu-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border-radius:11px;padding:0 14px;font-weight:900;text-decoration:none}.contact-btn{background:var(--red);color:#fff}.menu-toggle{display:none;border:0;background:var(--blue);color:#fff}.cert-row,.claim-row{display:flex;align-items:center;justify-content:center;gap:clamp(14px,3vw,42px);white-space:nowrap;overflow:auto}.cert-row{padding:4px 18px;background:#edf4fb;color:#49657d;font-size:.64rem;font-weight:850;letter-spacing:.05em}.claim-row{padding:5px 18px;background:linear-gradient(90deg,#061a3d,#073b91);color:#fff;font-size:.7rem;font-weight:850;letter-spacing:.06em}.site-shell{max-width:var(--max);margin:auto;display:grid;grid-template-columns:286px minmax(0,1fr)}.sidebar{position:sticky;top:123px;height:calc(100dvh - 123px);overflow:auto;padding:20px 16px 24px;background:#fff;border-right:1px solid var(--line)}.sidebar nav{display:flex;flex-direction:column;gap:3px}.nav-item,.nav-group summary,.nav-group a{border-radius:10px;text-decoration:none;color:#38546b}.nav-item{display:flex;align-items:center;justify-content:space-between;min-height:42px;padding:8px 10px;font-size:.88rem;font-weight:780}.nav-item:hover,.nav-item.active{background:var(--blue);color:#fff}.nav-group{border:1px solid #e5edf4;border-radius:12px;padding:2px}.nav-group summary{cursor:pointer;padding:9px 10px;font-size:.82rem;font-weight:850;color:var(--blue)}.nav-group a{display:block;padding:7px 10px 7px 18px;font-size:.78rem}.nav-group a:hover{background:#edf4fb}.sidebar-cta{display:block;margin-top:18px;padding:16px;border-radius:18px;background:linear-gradient(135deg,var(--blue),var(--navy));color:#fff;text-decoration:none;box-shadow:var(--shadow2)}.sidebar-cta small,.sidebar-cta strong,.sidebar-cta span{display:block}.sidebar-cta small{font-size:.62rem;color:#b8dbff;text-transform:uppercase;letter-spacing:.08em}.sidebar-cta strong{margin-top:4px;font-size:1.03rem}.sidebar-cta span{margin-top:7px;font-size:.78rem}.network-mini{margin-top:18px;padding-top:15px;border-top:1px solid var(--line);text-align:center}.network-mini span{display:block;font-size:.6rem;color:var(--muted);text-transform:uppercase}.network-mini img{margin-top:7px;max-height:42px}.sidebar-backdrop{display:none}.site-main{min-width:0;padding:clamp(18px,2.4vw,42px);overflow:hidden}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:45px;border-radius:12px;padding:0 17px;text-decoration:none;font-weight:900;border:1px solid transparent}.btn.primary{background:var(--red);color:#fff}.btn.glass{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.35);color:#fff;backdrop-filter:blur(8px)}.btn.light{background:#fff;color:var(--blue)}.btn.outline{border-color:var(--blue);color:var(--blue);background:#fff}.text-link{font-weight:900;color:var(--blue);text-decoration:none}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin:30px 0 16px}.section-head.compact{margin-top:26px}.section-head h2{margin:.2rem 0 0;max-width:920px;font-size:clamp(1.6rem,2.7vw,3rem);line-height:1.03;letter-spacing:-.035em}.hero-home{position:relative;min-height:clamp(440px,56vw,690px);border-radius:32px;overflow:hidden;box-shadow:var(--shadow);background:var(--navy)}.hero-media{position:absolute;inset:0}.hero-media img{width:100%;height:100%;object-fit:cover}.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,17,49,.92) 0%,rgba(4,29,72,.78) 40%,rgba(4,29,72,.12) 72%)}.hero-overlay{position:absolute;left:0;top:0;bottom:0;display:flex;flex-direction:column;justify-content:center;width:min(760px,62%);padding:clamp(28px,5vw,72px);color:#fff}.hero-overlay h1{margin:.12em 0 .25em;font-size:clamp(2.8rem,6vw,6.4rem);line-height:.88;letter-spacing:-.065em}.hero-overlay h1 span{color:#a9d9ff}.hero-overlay p{margin:0;max-width:650px;font-size:clamp(1rem,1.4vw,1.28rem);color:#e7f1fb}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.impact-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.impact-strip>div{padding:15px 18px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow2)}.impact-strip strong{display:block;color:var(--blue);font-size:1.45rem}.impact-strip span{display:block;margin-top:2px;font-size:.74rem;color:var(--muted)}.service-showcase{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.service-tile{position:relative;display:block;min-height:255px;padding:20px;border-radius:20px;background:#fff;border:1px solid var(--line);text-decoration:none;box-shadow:var(--shadow2);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.service-tile:after{content:"";position:absolute;right:-35px;bottom:-50px;width:120px;height:120px;border:18px solid #e6f1ff;border-radius:50%}.service-tile:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.service-icon{width:42px;height:42px}.service-tile span{display:block;margin-top:14px;font-size:.64rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--blue2)}.service-tile h3{margin:.25rem 0 .45rem;font-size:1.12rem;line-height:1.12}.service-tile p{margin:0;color:var(--muted);font-size:.82rem}.service-tile b{position:absolute;left:20px;bottom:18px;color:var(--blue);font-size:.78rem}.method-band{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;align-items:center;margin-top:30px;padding:clamp(26px,4vw,52px);border-radius:28px;background:linear-gradient(135deg,#051a3d,#073b91 68%,#0e5bb6);color:#fff;box-shadow:var(--shadow)}.method-copy h2{margin:.2rem 0 .5rem;font-size:clamp(1.8rem,3.4vw,3.9rem);line-height:.95;letter-spacing:-.045em}.method-copy p{color:#d8e8f7}.method-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;list-style:none;margin:0;padding:0}.method-steps li{min-height:126px;padding:13px;border-radius:14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14)}.method-steps b{display:block;color:#8bc9ff;font-size:1.3rem}.method-steps span{display:block;margin-top:28px;font-size:.68rem;font-weight:900;letter-spacing:.06em}.network-section{display:grid;grid-template-columns:1fr .75fr;gap:20px;margin-top:28px}.network-copy,.network-logos{padding:26px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow2)}.network-copy h2{margin:.2rem 0 .45rem;font-size:clamp(1.7rem,2.8vw,3rem);line-height:1}.network-copy p{color:var(--muted)}.network-logos{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:14px}.network-logos a{display:grid;place-items:center;min-height:150px;border-radius:18px;background:#f6f9fc}.network-logos img{max-width:85%;max-height:90px;object-fit:contain}.resource-cards{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:12px;margin-top:28px}.resource-card{min-height:220px;padding:22px;border-radius:22px;text-decoration:none;border:1px solid var(--line);box-shadow:var(--shadow2);background:#fff}.resource-card h3{margin:.35rem 0 .55rem;font-size:1.45rem;line-height:1.04}.resource-card p{margin:0;color:var(--muted)}.resource-card.observatory{background:linear-gradient(145deg,#eef5ff,#fff)}.resource-card.events{background:linear-gradient(145deg,#fff4f4,#fff)}.resource-card.news{background:linear-gradient(145deg,#f1f7ff,#fff)}.pa-callout{display:grid;grid-template-columns:.8fr 1.2fr;gap:26px;align-items:center;margin-top:28px;padding:28px;border-radius:24px;background:linear-gradient(135deg,var(--blue),var(--navy));color:#fff}.pa-callout h2{margin:.2rem 0 0;font-size:clamp(1.7rem,3vw,3.1rem);line-height:1}.pa-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.pa-actions a,.pa-actions button{display:flex;flex-direction:column;justify-content:center;min-height:94px;padding:14px;border-radius:14px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08);color:#fff;text-decoration:none;text-align:left}.pa-actions button{cursor:pointer}.pa-actions strong{font-size:.92rem}.pa-actions span{margin-top:4px;font-size:.68rem;color:#c9e1f8}.page-hero{position:relative;overflow:hidden;min-height:260px;padding:clamp(28px,4vw,54px);border-radius:28px;background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;box-shadow:var(--shadow)}.page-hero:after{content:"";position:absolute;right:-90px;bottom:-120px;width:330px;height:330px;border:55px solid rgba(255,255,255,.07);border-radius:50%}.page-hero.compact{min-height:200px}.page-hero>div{position:relative;z-index:1;max-width:1000px}.page-hero h1{margin:.16em 0 .25em;font-size:clamp(2.4rem,5vw,5.2rem);line-height:.91;letter-spacing:-.055em}.page-hero p{max-width:850px;margin:0;color:#dce9f6;font-size:clamp(1rem,1.25vw,1.18rem)}.visual-hero{background:linear-gradient(135deg,#061a3d,#0a58b5)}.service-directory{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:18px}.directory-card{display:grid;grid-template-columns:54px 1fr 30px;gap:14px;align-items:center;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff;text-decoration:none;box-shadow:var(--shadow2)}.directory-card img{width:46px}.directory-card span{font-size:.62rem;color:var(--blue);font-weight:900;text-transform:uppercase}.directory-card h2{margin:.15rem 0 .3rem;font-size:1.12rem}.directory-card p{margin:0;color:var(--muted);font-size:.8rem}.directory-card>b{font-size:1.3rem;color:var(--red)}.search-result{margin:15px 0;padding:10px 13px;background:#eef5ff;border-radius:11px}.service-hero{display:grid;grid-template-columns:1fr 260px;gap:28px;align-items:center;padding:clamp(28px,4vw,52px);border-radius:28px;background:linear-gradient(135deg,#eef5ff,#fff);border:1px solid var(--line);box-shadow:var(--shadow2)}.service-hero h1{margin:.18em 0 .25em;font-size:clamp(2.2rem,4.6vw,4.8rem);line-height:.92;letter-spacing:-.05em}.service-hero p{max-width:800px;color:var(--muted);font-size:1.05rem}.service-hero-icon{display:grid;place-items:center;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#fff 0 42%,#e7f1ff 43% 60%,transparent 61%),linear-gradient(135deg,#edf5ff,#fff)}.service-hero-icon img{width:110px}.service-story{display:grid;grid-template-columns:1.15fr .85fr;gap:14px;margin-top:18px}.story-lead,.story-panel{padding:24px;border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow2)}.story-lead h2{margin:.25rem 0 0;font-size:clamp(1.45rem,2.2vw,2.4rem);line-height:1.08}.story-panel h3{margin-top:0}.story-panel ul{margin:0;padding-left:1.15rem}.story-panel li+li{margin-top:.55rem}.service-detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px}.service-detail-grid article{min-height:230px;padding:20px;border-radius:18px;background:#fff;border:1px solid var(--line)}.service-detail-grid .num{font-size:1.6rem;color:#bfdcff;font-weight:950}.service-detail-grid h3{margin:.3rem 0 .5rem}.service-detail-grid p{margin:0;color:var(--muted);font-size:.82rem}.service-process{margin-top:18px;padding:24px;border-radius:22px;background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff}.process-line{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:14px}.process-line div{padding:14px;border-radius:13px;background:rgba(255,255,255,.08)}.process-line b{color:#acd9ff}.process-line span{display:block;margin-top:7px;font-size:.72rem;font-weight:800}.mini-service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.mini-service-grid a{padding:14px;border-radius:13px;background:#fff;border:1px solid var(--line);text-decoration:none}.mini-service-grid span{display:block;font-size:.59rem;color:var(--blue);text-transform:uppercase;font-weight:900}.mini-service-grid strong{display:block;margin-top:3px;font-size:.84rem}.story-layout{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.story-card{padding:22px;border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow2)}.story-card.feature{grid-column:span 2;background:linear-gradient(135deg,#eef5ff,#fff)}.story-card h2,.story-card h3{margin:.25rem 0 .45rem}.story-card h2{font-size:clamp(1.6rem,2.5vw,2.7rem);line-height:1}.story-card p{margin:0;color:var(--muted)}.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}.timeline div{padding:18px;border-radius:15px;background:var(--navy);color:#fff}.timeline b{display:block;font-size:1.5rem;color:#a8d7ff}.timeline span{display:block;margin-top:5px;font-size:.75rem}.values-band{margin-top:14px;padding:28px;border-radius:20px;background:#fff;border-left:5px solid var(--red)}.values-band h2{margin:0;color:var(--blue);font-size:clamp(1.5rem,2.5vw,2.6rem)}.values-band p{margin:.35rem 0 0;color:var(--muted)}.network-partners-large{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}.network-partners-large article{padding:26px;border-radius:22px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow2)}.network-partners-large img{height:88px;max-width:75%;object-fit:contain}.network-partners-large h2{margin:.65rem 0 .35rem}.network-partners-large p{color:var(--muted)}.network-partners-large a{color:var(--blue);font-weight:900}.network-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.network-benefits div{padding:20px;border-radius:18px;background:#eef5ff}.network-benefits b{color:var(--red)}.network-benefits h3{margin:.35rem 0}.network-benefits p{margin:0;color:var(--muted)}.pa-fast-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:14px}.pa-fast-grid a,.pa-fast-grid button{display:flex;flex-direction:column;min-height:140px;justify-content:center;padding:18px;border-radius:18px;background:#fff;border:1px solid var(--line);text-decoration:none;text-align:left;box-shadow:var(--shadow2)}.pa-fast-grid button{cursor:pointer}.pa-fast-grid b{font-size:.62rem;color:var(--blue);text-transform:uppercase}.pa-fast-grid strong{margin-top:5px}.pa-fast-grid span{margin-top:4px;color:var(--muted);font-size:.75rem}.workflow-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.workflow-grid article{padding:17px;border-radius:16px;background:#fff;border:1px solid var(--line)}.workflow-grid b{color:var(--red)}.workflow-grid h3{margin:.35rem 0}.workflow-grid p{margin:0;color:var(--muted);font-size:.77rem}.pa-doc-panel{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;padding:24px;border-radius:22px;background:linear-gradient(135deg,#071d45,#0a4e9f);color:#fff}.pa-doc-panel h2{margin:.2rem 0 .4rem}.pa-doc-panel p{color:#d7e8f8}.tag-cloud{display:flex;flex-wrap:wrap;align-content:center;gap:7px}.tag-cloud span{padding:8px 11px;border-radius:99px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);font-size:.72rem}.method-detail{display:grid;gap:8px;margin-top:16px}.method-detail article{display:grid;grid-template-columns:72px 1fr;gap:18px;padding:18px 22px;border-radius:18px;background:#fff;border:1px solid var(--line)}.method-detail article>span{font-size:2rem;font-weight:950;color:#c5ddfa}.method-detail h2{margin:0}.method-detail p{margin:.25rem 0 0;color:var(--muted)}.training-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}.training-grid a{padding:24px;border-radius:20px;background:#fff;border:1px solid var(--line);text-decoration:none;box-shadow:var(--shadow2)}.training-grid img{width:48px}.training-grid h2{margin:.7rem 0 .35rem}.training-grid p{margin:0;color:var(--muted)}.course-format{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.course-format div{padding:18px;border-radius:16px;background:var(--navy);color:#fff}.course-format b,.course-format span{display:block}.course-format b{color:#a9d6ff;font-size:.7rem}.course-format span{margin-top:5px}.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}.case-grid article{padding:24px;border-radius:20px;background:#fff;border:1px solid var(--line)}.case-grid span{font-size:.65rem;color:var(--red);font-weight:900}.case-grid h2{margin:.4rem 0}.case-grid p{color:var(--muted)}.case-grid b{color:var(--blue);font-size:.77rem}.privacy-note{padding:14px 16px;border-radius:13px;background:#fff5f5;border-left:4px solid var(--red);color:#6f3a3d}.publication-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}.publication-grid article{min-height:220px;padding:22px;border-radius:18px;background:#fff;border:1px solid var(--line)}.publication-grid span{font-size:.63rem;color:var(--blue);font-weight:900}.publication-grid h2{margin:.4rem 0}.publication-grid p{color:var(--muted)}.publication-grid a{font-weight:900;color:var(--blue)}.news-placeholder,.archive-empty{margin-top:16px;padding:28px;border-radius:20px;background:#fff;border:1px solid var(--line);text-align:center}.news-placeholder b{display:inline-flex;padding:5px 9px;border-radius:99px;background:var(--red);color:#fff}.news-placeholder h2{margin:.7rem 0 .3rem}.news-placeholder p,.archive-empty p{color:var(--muted)}.archive-cta{display:flex;flex-direction:column;margin-top:12px;padding:22px;border-radius:18px;background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;text-decoration:none}.archive-cta span{font-size:.65rem;color:#b9dcff}.archive-cta strong{margin-top:5px;font-size:1.2rem}.archive-cta b{margin-top:9px}.events-hero{display:grid;grid-template-columns:1fr auto;align-items:center}.hero-stat{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;width:130px;height:130px;border-radius:50%;background:#fff;color:var(--blue)}.hero-stat strong{font-size:2rem}.hero-stat span{font-size:.65rem;text-align:center}.event-filters{display:grid;grid-template-columns:1.2fr 1fr .7fr 1fr auto;gap:8px;margin-top:14px;padding:12px;border-radius:16px;background:#fff;border:1px solid var(--line)}.event-filters label{display:flex;flex-direction:column;gap:4px;font-size:.65rem;font-weight:900;color:var(--blue)}.event-filters input,.event-filters select{min-height:40px;border:1px solid var(--line);border-radius:9px;padding:7px 9px;background:#fff;color:var(--ink)}.event-filters button{align-self:end;min-height:40px;border:0;border-radius:9px;background:var(--navy);color:#fff;font-weight:850;padding:0 13px}.event-toolbar{display:flex;justify-content:space-between;margin:10px 2px;font-size:.75rem;color:var(--muted)}.event-toolbar a{font-weight:900;color:var(--blue)}.event-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.event-card{overflow:hidden;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow2)}.event-card[hidden]{display:none}.event-poster{position:relative;display:block;width:100%;padding:0;border:0;background:#eaf0f5;aspect-ratio:210/297;overflow:hidden;cursor:zoom-in}.event-poster img{width:100%;height:100%;object-fit:cover;display:block}.event-poster span{position:absolute;right:7px;top:7px;padding:4px 7px;border-radius:99px;background:rgba(0,0,0,.7);color:#fff;font-size:.58rem;font-weight:900}.event-info{padding:10px}.event-info h2{margin:0;font-size:.86rem;line-height:1.15}.event-info strong{display:block;margin-top:3px;font-size:.68rem;color:#39566e}.event-info p{display:flex;flex-wrap:wrap;gap:5px 8px;margin:4px 0 0;font-size:.66rem;color:var(--muted)}.event-info p b{color:var(--blue)}.event-modal{position:fixed;inset:0;z-index:12000;display:none;place-items:center;padding:12px;background:rgba(2,10,26,.91)}.event-modal.open{display:grid}.event-modal-box{position:relative;max-width:96vw;max-height:96dvh}.event-modal-box img{display:block;max-width:96vw;max-height:96dvh;object-fit:contain}.event-modal-box button{position:absolute;right:8px;top:8px;width:42px;height:42px;border:0;border-radius:50%;background:var(--red);color:#fff;font-size:1.3rem}.observatory-live{display:grid;grid-template-columns:.9fr 1.1fr;gap:14px;margin-top:16px}.magazine-panel,.observatory-feed{padding:24px;border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow2)}.magazine-panel h2{margin:.35rem 0}.magazine-panel p{color:var(--muted)}.observatory-feed{display:grid;gap:7px}.feed-item{display:flex;flex-direction:column;padding:12px;border-radius:12px;background:#f5f8fc;text-decoration:none}.feed-item span{font-size:.55rem;color:var(--red);font-weight:900}.feed-item strong{margin-top:2px;font-size:.8rem}.feed-item b{margin-top:5px;color:var(--blue);font-size:.68rem}.feed-loading,.feed-fallback{display:grid;place-items:center;min-height:150px;color:var(--muted);text-align:center}.observatory-rubrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}.observatory-rubrics article{padding:16px;border-radius:15px;background:#071d45;color:#fff}.observatory-rubrics span{font-size:.62rem;color:#aad6ff;font-weight:900}.observatory-rubrics p{margin:.45rem 0 0;font-size:.75rem;color:#d8e8f7}.contact-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:16px}.contact-cards a{min-height:160px;padding:20px;border-radius:18px;background:#fff;border:1px solid var(--line);text-decoration:none;box-shadow:var(--shadow2)}.contact-cards span{font-size:.62rem;color:var(--blue);font-weight:900;text-transform:uppercase}.contact-cards strong{display:block;margin-top:8px;font-size:.93rem}.contact-cards p{color:var(--muted);font-size:.75rem}.contact-form-panel{display:grid;grid-template-columns:.72fr 1.28fr;gap:18px;margin-top:14px;padding:24px;border-radius:22px;background:#fff;border:1px solid var(--line)}.contact-form-panel h2{margin:.25rem 0}.contact-form-panel p{color:var(--muted)}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.contact-form label{display:flex;flex-direction:column;gap:4px;font-size:.72rem;font-weight:800}.contact-form input,.contact-form textarea{min-height:42px;border:1px solid var(--line);border-radius:9px;padding:8px 10px}.contact-form textarea{resize:vertical}.contact-form .full{grid-column:1/-1}.contact-form .check{flex-direction:row;align-items:flex-start}.contact-form .check input{min-height:0;margin-top:4px}.hp{position:absolute!important;left:-10000px!important}.site-footer{margin-top:24px;padding:28px var(--pad) 14px;background:#051a3d;color:#dce9f7;border-top:4px solid var(--red)}.footer-grid{max-width:1700px;margin:auto;display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr;gap:26px}.footer-brand img{max-width:310px;max-height:90px;object-fit:contain}.footer-brand p{max-width:420px;font-size:.78rem}.legal-mini{color:#9db1c6}.site-footer h3{margin:0 0 8px;color:#fff;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.site-footer a,.site-footer button,.site-footer span{display:block;margin-top:6px;color:#dce9f7;text-decoration:none;font-size:.75rem}.site-footer button{padding:0;border:0;background:none;text-align:left;cursor:pointer}.footer-bottom{max-width:1700px;margin:22px auto 0;padding-top:12px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;color:#93a9bf;font-size:.65rem}.modal{position:fixed;inset:0;z-index:15000;display:none;place-items:center;padding:18px;background:rgba(3,11,28,.84)}.modal.open{display:grid}.modal-panel{position:relative;width:min(760px,100%);max-height:92dvh;overflow:auto;padding:28px;border-radius:22px;background:#fff}.modal-panel h2{margin:.3rem 0}.modal-close{position:absolute;right:12px;top:12px;width:42px;height:42px;border:0;border-radius:50%;background:var(--red);color:#fff;font-size:1.4rem}.modal-open,.menu-open{overflow:hidden}
@media(max-width:1380px){.service-showcase{grid-template-columns:repeat(3,1fr)}.event-grid{grid-template-columns:repeat(3,1fr)}.header-actions .social-links{display:none}.service-detail-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:1080px){.site-shell{display:block}.sidebar{position:fixed;z-index:9000;left:0;top:0;width:min(350px,88vw);height:100dvh;padding-top:90px;transform:translateX(-105%);transition:transform .22s ease}.sidebar.open{transform:none}.sidebar-backdrop.open{display:block;position:fixed;inset:0;z-index:8999;background:rgba(0,0,0,.45)}.menu-toggle{display:inline-flex}.site-search,.zoom-tools{display:none}.brand img{width:270px;max-height:58px}.header-main{padding-block:7px}.cert-row{justify-content:flex-start}.hero-home{min-height:520px}.hero-overlay{width:70%}.service-showcase{grid-template-columns:repeat(2,1fr)}.method-band,.network-section,.pa-callout,.service-story,.observatory-live,.contact-form-panel{grid-template-columns:1fr}.resource-cards{grid-template-columns:1fr 1fr}.resource-card.observatory{grid-column:1/-1}.workflow-grid{grid-template-columns:repeat(3,1fr)}.pa-fast-grid{grid-template-columns:repeat(2,1fr)}.network-partners-large{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.site-main{padding:14px 11px 30px}.header-main{padding:7px 10px}.brand{min-width:0}.brand img{width:220px}.contact-btn{display:none}.cert-row{display:none}.claim-row{justify-content:flex-start;font-size:.59rem}.hero-home{min-height:500px;border-radius:22px}.hero-media:after{background:linear-gradient(90deg,rgba(2,17,49,.93),rgba(4,29,72,.68))}.hero-overlay{width:100%;padding:25px}.hero-overlay h1{font-size:clamp(2.8rem,14vw,4.7rem)}.impact-strip{grid-template-columns:repeat(2,1fr)}.service-showcase,.service-directory,.network-partners-large,.training-grid,.case-grid,.publication-grid,.contact-cards{grid-template-columns:1fr}.method-steps,.process-line{grid-template-columns:1fr 1fr}.method-steps li{min-height:90px}.network-logos{grid-template-columns:1fr 1fr}.resource-cards{grid-template-columns:1fr}.resource-card.observatory{grid-column:auto}.pa-actions{grid-template-columns:1fr}.service-hero{grid-template-columns:1fr}.service-hero-icon{display:none}.service-detail-grid{grid-template-columns:1fr}.mini-service-grid{grid-template-columns:1fr 1fr}.story-layout{grid-template-columns:1fr}.story-card.feature{grid-column:auto}.timeline{grid-template-columns:1fr 1fr}.network-benefits,.course-format{grid-template-columns:1fr}.workflow-grid{grid-template-columns:1fr 1fr}.event-filters{grid-template-columns:1fr 1fr}.event-filters button{grid-column:1/-1}.event-grid{grid-template-columns:repeat(2,1fr)}.observatory-rubrics{grid-template-columns:1fr 1fr}.contact-form{grid-template-columns:1fr}.contact-form .full{grid-column:auto}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:4px}.page-hero{border-radius:22px}.page-hero h1{font-size:clamp(2.5rem,12vw,4.5rem)}.pa-callout{padding:22px}.events-hero{display:block}.hero-stat{margin-top:18px;width:100px;height:100px}}
@media(max-width:430px){.brand img{width:188px}.header-actions{gap:5px}.menu-toggle{padding:0 11px}.impact-strip,.method-steps,.process-line,.mini-service-grid,.timeline,.workflow-grid,.event-filters,.event-grid,.observatory-rubrics{grid-template-columns:1fr}.service-tile{min-height:235px}.network-logos{grid-template-columns:1fr}.network-logos a{min-height:110px}.pa-fast-grid{grid-template-columns:1fr}.site-footer{padding-bottom:calc(14px + env(safe-area-inset-bottom))}.contact-form input,.contact-form textarea,.event-filters input,.event-filters select{font-size:16px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}@keyframes live{0%,100%{opacity:1}50%{opacity:.55}}

.institution-grid,.support-grid,.org-grid,.career-grid,.gallery-entry{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}.institution-grid article,.support-grid article,.org-grid article,.career-grid article,.gallery-entry article,.gallery-entry a{padding:22px;border-radius:19px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow2);text-decoration:none}.institution-grid h2,.institution-grid h3,.support-grid h2,.org-grid h2,.career-grid h2,.gallery-entry h2{margin:.35rem 0}.institution-grid p,.support-grid p,.org-grid p,.career-grid p,.gallery-entry p{color:var(--muted)}.support-grid span,.gallery-entry span{font-size:.62rem;color:var(--red);font-weight:900}.support-grid a,.career-grid a{font-weight:900;color:var(--blue)}.org-grid b{font-size:.63rem;color:var(--blue)}.faq-list{display:grid;gap:8px;margin-top:16px}.faq-list details{padding:16px 18px;border-radius:14px;background:#fff;border:1px solid var(--line)}.faq-list summary{cursor:pointer;font-weight:900;color:var(--blue)}.faq-list p{margin:.6rem 0 0;color:var(--muted)}.gallery-entry{grid-template-columns:1fr 1fr}
@media(max-width:760px){.institution-grid,.support-grid,.org-grid,.career-grid,.gallery-entry{grid-template-columns:1fr}}

/* === REVISIONE HEADER / FOOTER / MENU 09-09-2026 === */
.site-header{background:#fff;border-bottom:1px solid var(--line)}
.utility-bar{min-height:43px;padding:5px clamp(16px,2.2vw,38px);display:flex;align-items:center;justify-content:space-between;gap:18px;background:#07172c;color:#8ea6be}
.utility-left,.utility-right{display:flex;align-items:center;gap:14px}
.utility-left{font-size:.72rem;white-space:nowrap}
.utility-phone{color:#00b8ff;text-decoration:none;font-weight:950}
.utility-social{display:flex;align-items:center;gap:5px}
.utility-social a{display:block;width:31px;height:31px;border-radius:6px;overflow:hidden;border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)}
.utility-social img{display:block;width:100%;height:100%}
.utility-bar .zoom-tools{height:31px;border-color:#48576a;border-radius:6px;background:#1b2737}
.utility-bar .zoom-tools button{height:29px;width:34px;background:#263345;color:#fff;font-size:.83rem}
.utility-bar .zoom-tools span{display:flex;align-items:center;padding:0 7px;color:#dce7f2;font-size:.66rem;font-weight:850}
.utility-bar .site-search{height:31px;border-color:#4b5d72;border-radius:18px;background:#1d2a3b}
.utility-bar .site-search input{width:200px;padding:5px 11px;background:transparent;color:#dce7f2;font-size:.67rem}
.utility-bar .site-search input::placeholder{color:#9cadbd;text-transform:uppercase}
.utility-bar .site-search button{width:34px;padding:0;background:transparent;color:#00b8ff;font-size:1rem}
.brand-header{max-width:var(--max);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:8px var(--pad) 7px}
.brand-header .brand{min-width:0;flex:1}
.brand-header .brand img{display:block;width:min(1120px,72vw);max-width:100%;height:auto;max-height:112px;object-fit:contain;object-position:left center}
.brand-actions{display:flex;align-items:center;gap:8px}
.cert-row{padding:4px 18px;background:#eef4fa;border-top:1px solid #e4ebf3}
.claim-row{display:none!important}
.site-shell{grid-template-columns:278px minmax(0,1fr)}
.sidebar{top:170px;height:calc(100dvh - 170px)}
.nav-group{border:0;background:#f5f8fc;padding:4px;border-radius:12px}
.nav-group summary{position:relative;padding:10px 28px 10px 11px;color:#173c66;font-size:.8rem}
.nav-group summary::after{content:"+";position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:1rem;color:var(--blue)}
.nav-group[open] summary::after{content:"−"}
.nav-group a{margin-top:2px;padding:7px 9px 7px 14px;border-radius:8px;background:#fff;border:1px solid #e6edf4;font-size:.74rem}
.nav-group a:hover{background:#eaf3ff;color:var(--blue)}
.site-footer{background:#07172c;border-top:4px solid var(--red)}
.footer-brand img{max-width:430px;max-height:118px}
@media(max-width:1080px){
  .utility-left span{display:none}
  .sidebar{top:0;height:100dvh}
  .brand-header .brand img{width:min(850px,70vw);max-height:88px}
}
@media(max-width:760px){
  .utility-bar{padding:5px 8px;gap:8px}
  .utility-left{display:none}
  .utility-right{width:100%;justify-content:space-between;gap:7px}
  .utility-social a{width:28px;height:28px}
  .utility-bar .zoom-tools span{display:none}
  .utility-bar .site-search input{display:none}
  .utility-bar .site-search{width:34px}
  .brand-header{padding:6px 10px}
  .brand-header .brand img{width:min(560px,76vw);max-height:74px}
}
@media(max-width:430px){
  .utility-social a:nth-child(n+4){display:none}
  .brand-header .brand img{width:74vw}
}

/* Footer readability */
.site-footer .footer-brand p,.site-footer .footer-brand .legal-mini{color:#d8e4ef}
.site-footer .footer-brand img{filter:none}

/* Compact legal page first card */
.page-hero.legal-hero{min-height:118px!important;padding:16px 22px!important;border-radius:18px!important}
.page-hero.legal-hero h1{margin:.08em 0 .12em!important;font-size:clamp(1.65rem,2.6vw,2.55rem)!important;line-height:1!important}
.page-hero.legal-hero p{font-size:.82rem!important;line-height:1.3!important;max-width:1050px!important}
.page-hero.legal-hero .eyebrow{font-size:.59rem!important}

/* === REVISIONE 09/09/2026: CERTIFICAZIONI + HERO HOME COMPATTO === */
.cert-row.cert-logo-row{
  min-height:48px;
  padding:5px clamp(12px,2vw,28px);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  overflow:hidden;
  background:#f7faff;
  border-top:1px solid #e3ebf4;
  border-bottom:1px solid #dbe5ef;
}
.cert-row-label{
  flex:0 0 auto;
  color:#5a6f84;
  font-size:.58rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.cert-logo-list{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-width:0;
}
.cert-logo-link{
  display:grid;
  place-items:center;
  width:58px;
  height:36px;
  padding:2px 4px;
  background:#fff;
  border:1px solid #dce6ef;
  border-radius:8px;
  box-shadow:0 2px 8px rgba(5,42,86,.05);
  transition:transform .16s ease, box-shadow .16s ease;
}
.cert-logo-link:hover{transform:translateY(-2px);box-shadow:0 5px 14px rgba(5,42,86,.12)}
.cert-logo-link img{
  display:block;
  max-width:100%;
  max-height:30px;
  width:auto;
  height:auto;
  object-fit:contain;
}

.hero-home.hero-home-compact{
  min-height:390px;
  max-height:430px;
  border-radius:26px;
}
.hero-home-compact .hero-media img{
  object-position:center 48%;
}
.hero-home-compact .hero-media:after{
  background:linear-gradient(90deg,rgba(2,17,49,.94) 0%,rgba(3,28,68,.90) 34%,rgba(3,28,68,.60) 53%,rgba(3,28,68,.10) 72%);
}
.hero-home-compact .hero-overlay{
  width:min(690px,52%);
  padding:clamp(24px,3.3vw,48px);
}
.hero-home-compact .hero-overlay h1{
  margin:.15em 0 .25em;
  font-size:clamp(2.55rem,4.15vw,4.55rem);
  line-height:.91;
  letter-spacing:-.055em;
}
.hero-home-compact .hero-overlay p{
  max-width:580px;
  font-size:clamp(.92rem,1.12vw,1.08rem);
  line-height:1.45;
}
.hero-home-compact .hero-actions{margin-top:16px}
.hero-home-compact .btn{min-height:42px}

@media(max-width:1080px){
  .cert-row.cert-logo-row{justify-content:flex-start;overflow-x:auto}
  .cert-logo-list{justify-content:flex-start}
  .hero-home.hero-home-compact{min-height:390px;max-height:none}
  .hero-home-compact .hero-overlay{width:62%}
}
@media(max-width:760px){
  .cert-row-label{display:none}
  .cert-row.cert-logo-row{min-height:43px;padding:4px 8px}
  .cert-logo-link{width:50px;height:32px}
  .cert-logo-link img{max-height:26px}
  .hero-home.hero-home-compact{min-height:410px}
  .hero-home-compact .hero-media img{object-position:61% center}
  .hero-home-compact .hero-media:after{background:linear-gradient(90deg,rgba(2,17,49,.95),rgba(3,28,68,.72))}
  .hero-home-compact .hero-overlay{width:100%;padding:24px}
  .hero-home-compact .hero-overlay h1{font-size:clamp(2.55rem,11vw,4rem)}
}

/* ============================================================
   REVISIONE V3 — HEADER CERTIFICAZIONI / HOME / MENU / EVENTI
   ============================================================ */

/* Certificazioni direttamente nell'header principale */
.brand-header{
  display:grid;
  grid-template-columns:minmax(360px,1fr) auto auto;
  align-items:center;
  column-gap:18px;
  padding-top:8px;
  padding-bottom:8px;
}
.brand-header .brand img{
  width:min(820px,58vw);
  max-height:104px;
}
.header-certifications{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
}
.header-cert-link{
  display:grid;
  place-items:center;
  width:88px;
  height:58px;
  padding:4px 6px;
  border-radius:10px;
  background:#fff;
  border:1px solid #d9e3ee;
  box-shadow:0 4px 13px rgba(6,43,98,.07);
  transition:transform .16s ease,box-shadow .16s ease;
}
.header-cert-link:hover{
  transform:translateY(-2px) scale(1.025);
  box-shadow:0 8px 18px rgba(6,43,98,.14);
}
.header-cert-link img{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:50px;
  object-fit:contain;
}
/* La vecchia striscia certificazioni è eliminata */
.cert-row,.cert-logo-row{display:none!important}

/* Popup certificazioni */
.cert-modal{
  position:fixed;
  inset:0;
  z-index:16000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(2,10,25,.86);
  backdrop-filter:blur(5px);
}
.cert-modal.open{display:flex}
.cert-modal-panel{
  position:relative;
  width:min(1000px,94vw);
  height:min(820px,90dvh);
  display:flex;
  flex-direction:column;
  border-radius:18px;
  background:#fff;
  box-shadow:0 28px 90px rgba(0,0,0,.48);
  overflow:hidden;
}
.cert-modal-title{
  flex:0 0 auto;
  min-height:54px;
  display:flex;
  align-items:center;
  padding:12px 66px 12px 18px;
  color:#073b91;
  font-weight:950;
  font-size:1rem;
  border-bottom:1px solid #dce5ee;
}
.cert-modal-close{
  position:absolute;
  z-index:3;
  top:9px;
  right:10px;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:0;
  border-radius:50%;
  background:#ed1c24;
  color:#fff;
  font-size:1.5rem;
  line-height:1;
  cursor:pointer;
}
.cert-modal-stage{
  flex:1 1 auto;
  min-height:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:12px;
  background:#edf2f7;
  overflow:auto;
}
.cert-modal-stage img{
  display:block;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  background:#fff;
}
.cert-modal-stage iframe{
  width:100%;
  height:100%;
  border:0;
  background:#fff;
}

/* Home: il banner grafico è protagonista, nessun testo sovrapposto */
.home-brand-hero{
  overflow:hidden;
  border-radius:26px;
  background:#fff;
  border:1px solid #d8e5ed;
  box-shadow:var(--shadow);
}
.home-brand-visual{
  height:clamp(300px,25vw,390px);
  background:#dbe9f7;
  overflow:hidden;
}
.home-brand-visual img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 49%;
}
.home-brand-actions{
  min-height:68px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:11px 18px;
  background:#fff;
}
.home-brand-actions>div:first-child{
  display:flex;
  flex-direction:column;
  gap:2px;
}
.home-brand-actions strong{
  font-size:.9rem;
  color:#173042;
}
.home-brand-buttons{
  display:flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
}

/* Menu più leggibile e senza duplicazione Servizi/Aree */
.sidebar nav{gap:4px}
.nav-item{
  min-height:45px;
  padding:9px 11px;
  font-size:.96rem;
  line-height:1.18;
}
.nav-group summary{
  font-size:.9rem;
  min-height:43px;
  display:flex;
  align-items:center;
}
.nav-group a{
  font-size:.84rem;
  line-height:1.2;
  padding:8px 10px 8px 15px;
}

/* EVENTI — regole grafiche direttamente dalla pagina eventi.php fornita */
.events-source-hero{
  padding:22px 24px 15px;
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:30px;
  background:transparent;
}
.events-source-hero h1{
  font-size:clamp(2.2rem,5vw,4rem);
  line-height:.95;
  margin:2px 0 10px;
  color:#07598a;
  letter-spacing:-.04em;
}
.events-source-hero p{
  max-width:800px;
  margin:0;
  color:#60717c;
}
.events-source-stat{
  background:#fff;
  border:1px solid #d8e5ed;
  border-radius:16px;
  padding:16px 20px;
  min-width:170px;
  box-shadow:0 7px 20px rgba(10,67,102,.05);
}
.events-source-stat b{
  display:block;
  font-size:2rem;
  color:#e5242a;
}
.events-source-stat span{
  font-size:.76rem;
  color:#60717c;
}
.events-source-wrap{padding:10px 22px 44px}
.events-source-filters{
  display:grid;
  grid-template-columns:1.4fr 1fr .7fr 1fr auto;
  gap:10px;
  background:#fff;
  border:1px solid #d8e5ed;
  border-radius:16px;
  padding:14px;
}
.events-source-field{display:flex;flex-direction:column;gap:5px}
.events-source-field label{
  font-size:.68rem;
  font-weight:900;
  text-transform:uppercase;
}
.events-source-field input,.events-source-field select{
  height:42px;
  border:1px solid #cbd9e3;
  border-radius:9px;
  padding:0 11px;
  background:#fff;
  color:#173042;
}
.events-source-reset{
  border:0;
  border-radius:9px;
  background:#07598a;
  color:#fff;
  font-weight:900;
  padding:0 15px;
  cursor:pointer;
}
.events-source-toolbar{
  display:flex;
  justify-content:space-between;
  margin:14px 2px;
  color:#60717c;
  font-size:.82rem;
}
.events-source-toolbar a{color:#07598a;font-weight:900}
.events-source-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.events-source-card{
  background:#fff;
  border:1px solid #d8e5ed;
  border-radius:15px;
  overflow:hidden;
  box-shadow:0 7px 20px rgba(10,67,102,.07);
}
.events-source-card.hidden{display:none}
.events-source-poster{
  display:block;
  width:100%;
  aspect-ratio:210/297;
  padding:0;
  border:0;
  background:#e9f0f4;
  overflow:hidden;
  cursor:zoom-in;
  position:relative;
}
.events-source-poster img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.events-source-year{
  position:absolute;
  top:9px;
  right:9px;
  background:rgba(0,0,0,.72);
  color:#fff;
  border-radius:999px;
  padding:5px 8px;
  font-size:.68rem;
  font-weight:900;
}
.events-source-info{padding:12px 13px 14px}
.events-source-info h2{
  font-size:.93rem;
  line-height:1.2;
  margin:0 0 7px;
}
.events-source-info .evento-nome-sub{font-size:.86em;font-weight:600}
.events-source-meta{
  display:flex;
  flex-wrap:wrap;
  gap:5px 10px;
  color:#60717c;
  font-size:.75rem;
}
.events-source-empty{
  display:none;
  background:#fff;
  border:1px dashed #d8e5ed;
  border-radius:14px;
  padding:35px;
  text-align:center;
}
.events-source-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.9);
  display:none;
  align-items:center;
  justify-content:center;
  z-index:17000;
  padding:12px;
}
.events-source-overlay.open{display:flex}
.events-source-stage img{
  display:block;
  max-width:96vw;
  max-height:96vh;
  object-fit:contain;
}
.events-source-close{
  position:fixed;
  right:20px;
  top:20px;
  width:42px;
  height:42px;
  border:0;
  border-radius:50%;
  background:#e5242a;
  color:#fff;
  font-size:26px;
  cursor:pointer;
}

@media(max-width:1220px){
  .brand-header{
    grid-template-columns:minmax(300px,1fr) auto auto;
    column-gap:10px;
  }
  .brand-header .brand img{width:min(650px,50vw)}
  .header-cert-link{width:75px;height:52px}
}
@media(max-width:1080px){
  .brand-header{grid-template-columns:minmax(0,1fr) auto}
  .header-certifications{
    grid-column:1/-1;
    order:3;
    justify-content:flex-start;
    padding-top:4px;
  }
  .header-cert-link{width:82px;height:48px}
  .home-brand-visual{height:330px}
  .events-source-filters{grid-template-columns:repeat(2,1fr)}
  .events-source-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:720px){
  .brand-header .brand img{width:min(560px,76vw)}
  .header-certifications{gap:6px}
  .header-cert-link{width:70px;height:43px}
  .home-brand-visual{height:275px}
  .home-brand-visual img{object-position:57% center}
  .home-brand-actions{align-items:flex-start;flex-direction:column;padding:12px 14px}
  .home-brand-buttons{width:100%;flex-wrap:wrap}
  .events-source-hero{flex-direction:column;align-items:flex-start;padding:20px 4px 12px}
  .events-source-wrap{padding:6px 0 35px}
  .events-source-filters{grid-template-columns:1fr}
  .events-source-grid{grid-template-columns:repeat(2,1fr);gap:12px}
}
@media(max-width:430px){
  .home-brand-visual{height:245px}
  .home-brand-visual img{object-position:61% center}
  .events-source-grid{grid-template-columns:1fr}
  .cert-modal{padding:8px}
  .cert-modal-panel{width:100%;height:92dvh;border-radius:13px}
}

/* ============================================================
   REVISIONE V4 — PROPORZIONI HEADER / CERTIFICAZIONI / HERO
   ============================================================ */

/* Header principale: meno spazio vuoto, logo più importante */
.brand-header{
  grid-template-columns:minmax(500px,620px) minmax(0,1fr) auto!important;
  min-height:108px!important;
  column-gap:18px!important;
  padding:7px clamp(20px,2.6vw,46px)!important;
}
.brand-header .brand{
  display:flex!important;
  align-items:center!important;
  min-width:0!important;
}
.brand-header .brand img{
  width:100%!important;
  max-width:610px!important;
  max-height:94px!important;
  object-fit:contain!important;
  object-position:left center!important;
}

/* Tutti i 10 loghi, grandi ma compatti */
.header-certifications{
  display:grid!important;
  grid-template-columns:repeat(5,64px)!important;
  grid-auto-rows:46px!important;
  gap:6px 7px!important;
  align-content:center!important;
  justify-content:end!important;
}
.header-cert-link{
  width:64px!important;
  height:46px!important;
  padding:2px 4px!important;
  border-radius:9px!important;
}
.header-cert-link img{
  max-width:100%!important;
  max-height:40px!important;
}

/* Pulsante contatti proporzionato */
.brand-actions .contact-btn{
  min-height:48px!important;
  padding:0 18px!important;
  font-size:.92rem!important;
}

/* Sidebar: corpo più leggibile */
.nav-item{
  min-height:45px!important;
  padding:9px 12px!important;
  font-size:.96rem!important;
}
.nav-group summary{
  font-size:.92rem!important;
}
.nav-group a{
  font-size:.86rem!important;
}

/* HERO standard: niente più "prima card" gigante */
.page-hero{
  min-height:0!important;
  padding:24px clamp(26px,3vw,42px)!important;
  border-radius:22px!important;
}
.page-hero h1{
  max-width:1120px!important;
  margin:.10em 0 .20em!important;
  font-size:clamp(2rem,3.05vw,3.35rem)!important;
  line-height:.98!important;
  letter-spacing:-.035em!important;
}
.page-hero p{
  max-width:1000px!important;
  font-size:clamp(.88rem,1.02vw,1rem)!important;
  line-height:1.42!important;
}
.page-hero .eyebrow{
  font-size:.64rem!important;
}

/* Anche le varianti "compact" sono ancora più contenute */
.page-hero.compact,
.page-hero.legal-hero{
  min-height:0!important;
  padding:16px 24px!important;
  border-radius:17px!important;
}
.page-hero.compact h1,
.page-hero.legal-hero h1{
  margin:.08em 0 .12em!important;
  font-size:clamp(1.65rem,2.25vw,2.45rem)!important;
  line-height:1!important;
}
.page-hero.compact p,
.page-hero.legal-hero p{
  font-size:.80rem!important;
  line-height:1.32!important;
}

/* Le pagine servizio usano una hero diversa: uniformata */
.service-hero{
  grid-template-columns:minmax(0,1fr) 150px!important;
  gap:18px!important;
  padding:24px clamp(26px,3vw,42px)!important;
  border-radius:22px!important;
}
.service-hero h1{
  margin:.10em 0 .20em!important;
  font-size:clamp(2rem,3.05vw,3.35rem)!important;
  line-height:.98!important;
  letter-spacing:-.035em!important;
}
.service-hero p{
  font-size:.94rem!important;
  line-height:1.4!important;
}
.service-hero-icon img{width:76px!important}

/* Enti/PA e simili: impedisce titoloni su 4 righe */
.pa-hero h1,
.method-hero h1,
.network-hero h1,
.training-hero h1,
.cases-hero h1,
.publications-hero h1,
.news-hero h1,
.contact-hero h1,
.observatory-hero h1{
  max-width:1050px!important;
}

/* Eventi: stessa gerarchia del file sorgente, ma coerente col sito */
.events-source-hero{
  min-height:0!important;
  padding:22px 28px!important;
  border-radius:20px!important;
}
.events-source-hero h1{
  margin:.08em 0 .18em!important;
  font-size:clamp(1.9rem,2.7vw,3rem)!important;
  line-height:1!important;
}
.events-source-hero p{
  font-size:.88rem!important;
  line-height:1.4!important;
}
.events-source-stat{
  min-width:140px!important;
  padding:13px 16px!important;
}
.events-source-stat b{font-size:1.55rem!important}

/* Tablet */
@media(max-width:1320px){
  .brand-header{
    grid-template-columns:minmax(390px,520px) minmax(0,1fr) auto!important;
  }
  .brand-header .brand img{max-width:510px!important}
  .header-certifications{
    grid-template-columns:repeat(5,56px)!important;
    grid-auto-rows:42px!important;
  }
  .header-cert-link{width:56px!important;height:42px!important}
  .header-cert-link img{max-height:36px!important}
}

/* Mobile / tablet stretto */
@media(max-width:1080px){
  .brand-header{
    grid-template-columns:minmax(0,1fr) auto!important;
    min-height:auto!important;
  }
  .brand-header .brand img{
    max-width:470px!important;
    max-height:82px!important;
  }
  .header-certifications{
    grid-column:1/-1!important;
    grid-template-columns:repeat(10,58px)!important;
    justify-content:start!important;
    overflow-x:auto!important;
    padding-top:4px!important;
  }
}
@media(max-width:760px){
  .brand-header{
    grid-template-columns:minmax(0,1fr) auto!important;
    padding:6px 10px!important;
  }
  .brand-header .brand img{
    max-width:360px!important;
    max-height:70px!important;
  }
  .header-certifications{
    grid-template-columns:repeat(10,52px)!important;
    grid-auto-rows:38px!important;
    gap:5px!important;
  }
  .header-cert-link{width:52px!important;height:38px!important}
  .header-cert-link img{max-height:32px!important}
  .page-hero,
  .service-hero,
  .events-source-hero{
    padding:18px 17px!important;
    border-radius:17px!important;
  }
  .page-hero h1,
  .service-hero h1,
  .events-source-hero h1{
    font-size:clamp(1.75rem,8vw,2.45rem)!important;
  }
}


/* ============================================================
   REVISIONE V5 — HEADER CERTIFICAZIONI / POPUP / NEWSWIRE
   ============================================================ */

/* Logo principale: asset ritagliato e più protagonista */
.brand-header{
  grid-template-columns:minmax(620px,760px) minmax(0,1fr) auto!important;
  min-height:112px!important;
  padding:5px clamp(18px,2.4vw,40px)!important;
}
.brand-header .brand img{
  width:100%!important;
  max-width:750px!important;
  max-height:104px!important;
}

/* Certificazioni: niente cornici, niente card, solo i loghi */
.header-certifications{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:7px 12px!important;
  padding:0!important;
}
.header-cert-link{
  width:82px!important;
  height:62px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
}
.header-cert-link:hover{
  transform:scale(1.08)!important;
  box-shadow:none!important;
}
.header-cert-link img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:82px!important;
  max-height:60px!important;
  object-fit:contain!important;
}

/* Popup certificazioni: proporzioni come il viewer mostrato nello screenshot */
.cert-modal{
  padding:8px!important;
  background:rgba(0,0,0,.88)!important;
  backdrop-filter:blur(2px)!important;
}
.cert-modal-panel{
  width:min(1280px,calc(100vw - 16px))!important;
  height:min(900px,calc(100dvh - 16px))!important;
  border:1px solid #53565a!important;
  border-radius:22px!important;
  background:#111318!important;
  box-shadow:0 24px 80px rgba(0,0,0,.72)!important;
}
.cert-modal-title{
  min-height:90px!important;
  padding:20px 82px 20px 30px!important;
  background:linear-gradient(180deg,#111318,#181a1e)!important;
  color:#fff!important;
  border-bottom:2px solid #6c4c2d!important;
  font-size:1.55rem!important;
  font-weight:950!important;
}
.cert-modal-close{
  top:19px!important;
  right:20px!important;
  width:50px!important;
  height:50px!important;
  border-radius:0!important;
  background:transparent!important;
  color:#fff!important;
  font-size:2.25rem!important;
  font-weight:300!important;
}
.cert-modal-close:hover{color:#ff2b34!important}
.cert-modal-stage{
  padding:0!important;
  background:#2d2f31!important;
  overflow:hidden!important;
}
.cert-modal-stage iframe{
  display:block!important;
  width:100%!important;
  height:100%!important;
  border:0!important;
  background:#2d2f31!important;
}
.cert-modal-stage img{
  max-width:100%!important;
  max-height:100%!important;
  margin:auto!important;
  background:#fff!important;
}

/* Base grafica usata dal Newswire VEROSOCIALE */
.paper{
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  box-shadow:var(--shadow2);
}

/* Ultime Notizie: impianto VEROSOCIALE */
.newswire-hero .paper{
  margin-top:12px;
  padding:12px 15px;
  background:rgba(255,255,255,.10);
  border-color:rgba(255,255,255,.18);
  box-shadow:none;
  color:#fff;
}
.newswire-note{margin:0 0 6px!important;color:#e3edf7!important;font-size:.75rem!important}
.newswire-live{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0!important;font-size:.72rem}
.newswire-live-dot{
  width:9px;height:9px;border-radius:50%;background:#ff2530;
  box-shadow:0 0 0 5px rgba(255,37,48,.15);
  animation:live 1.8s infinite
}
.newswire-loading{
  min-height:150px;
  margin-top:14px;
  padding:20px;
  display:flex;
  align-items:center;
  gap:18px;
}
.newswire-loading-spinner{
  flex:0 0 48px;
  width:48px;height:48px;
  border-radius:50%;
  border:5px solid #dbe9f7;
  border-top-color:var(--blue);
  animation:newsSpin .85s linear infinite;
}
.newswire-loading-copy h2{margin:.15rem 0 .25rem;font-size:1.2rem}
.newswire-loading-copy p{margin:0;color:var(--muted);font-size:.8rem}
.newswire-loading-time{margin-top:6px;color:var(--muted);font-size:.72rem}

.newswire-featured{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.newswire-featured-card,
.newswire-item{
  display:flex;
  flex-direction:column;
  min-width:0;
  height:100%;
  padding:17px;
}
.newswire-featured-card h2,
.newswire-item h2{
  margin:8px 0 7px;
  color:#143e70;
  font-size:1rem;
  line-height:1.23;
}
.newswire-featured-card p,
.newswire-item p{
  margin:0;
  color:#66788f;
  font-size:.73rem;
  line-height:1.48;
}
.newswire-meta{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
}
.newswire-meta time,
.newswire-source-inline{
  color:#7a8aa0;
  font-size:.64rem;
  font-weight:700;
}
.newswire-category{
  display:inline-flex;
  align-items:center;
  min-height:23px;
  padding:4px 8px;
  border:1px solid #cde3f7;
  border-radius:999px;
  background:#edf7ff;
  color:#0862ac;
  font-size:.58rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.newswire-read{
  display:inline-flex;
  align-items:center;
  margin-top:auto;
  padding-top:12px;
  color:#075fa9;
  font-size:.7rem;
  font-weight:900;
  text-decoration:none;
}
.newswire-toolbar{
  display:grid;
  grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);
  gap:22px;
  align-items:center;
  margin:20px 0 14px;
  padding:18px;
}
.newswire-toolbar h2{margin:0 0 4px;font-size:1.35rem}
.newswire-toolbar p{margin:0;color:#718198;font-size:.7rem}
.newswire-filters{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.newswire-filter{
  border:1px solid #cfe0f2;
  background:#fff;
  color:#315474;
  border-radius:999px;
  padding:7px 10px;
  font-size:.65rem;
  font-weight:800;
  cursor:pointer;
}
.newswire-filter:hover,
.newswire-filter.is-active{
  background:#075fa9;
  color:#fff;
  border-color:#075fa9;
}
.newswire-list{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.newswire-time{
  display:flex;
  align-items:center;
  gap:7px;
  padding:0 0 9px;
  margin:0 0 9px;
  border-bottom:1px solid #dbe7f5;
}
.newswire-time time{
  font-size:1.08rem;
  font-weight:950;
  color:#0a62ad;
  line-height:1;
}
.newswire-time span{color:#8795a7;font-size:.58rem;font-weight:700}
.newswire-empty{
  grid-column:1/-1;
  padding:30px;
  text-align:center;
}
.newswire-archive-row{margin-top:18px}
.newswire-archive-row>.paper{padding:20px}
.newswire-archive-row h2{margin:.2rem 0 .4rem;font-size:1.35rem}
.newswire-archive-row p{margin:0 0 12px;color:var(--muted);font-size:.8rem}

/* Archivio Newswire VEROSOCIALE */
.news-archive-kpi{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:9px;
  margin:12px 0;
}
.news-archive-kpi>div{
  padding:14px 16px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
}
.news-archive-kpi b{display:block;color:var(--blue);font-size:1.35rem}
.news-archive-kpi span{font-size:.68rem;color:var(--muted)}
.news-archive-filter-panel{padding:17px;margin-bottom:14px}
.news-archive-filter-head{margin:0 0 12px!important}
.news-archive-range{margin:0;color:var(--muted);font-size:.7rem}
.news-archive-filters{
  display:grid;
  grid-template-columns:1.4fr 1fr 1fr .65fr .65fr auto;
  gap:8px;
  align-items:end;
}
.news-archive-filters label{
  display:flex;
  flex-direction:column;
  gap:4px;
  color:#38546b;
  font-size:.63rem;
  font-weight:850;
}
.news-archive-filters input,
.news-archive-filters select{
  min-height:40px;
  padding:7px 9px;
  border:1px solid #ccdae8;
  border-radius:9px;
  background:#fff;
  color:var(--ink);
}
.news-archive-list{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.news-archive-item{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:16px;
}
.news-archive-date{
  display:flex;
  align-items:center;
  gap:7px;
  padding-bottom:8px;
  margin-bottom:8px;
  border-bottom:1px solid #dbe7f5;
}
.news-archive-date time{color:#0a62ad;font-size:.78rem;font-weight:900}
.news-archive-date span{color:#8795a7;font-size:.63rem}
.news-archive-body{display:flex;flex-direction:column;flex:1}
.news-archive-body h2{
  margin:8px 0 7px;
  color:#143e70;
  font-size:.94rem;
  line-height:1.24;
}
.news-archive-body p{margin:0;color:#66788f;font-size:.71rem;line-height:1.48}
.news-archive-pagination{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  margin:18px 0;
}
.news-archive-pagination>span{font-size:.75rem;color:var(--muted)}
.news-archive-empty,
.news-archive-disclaimer{padding:20px}
.news-archive-disclaimer{margin-top:15px}
.news-archive-disclaimer p{margin:.3rem 0 0;color:var(--muted);font-size:.73rem}

@keyframes newsSpin{to{transform:rotate(360deg)}}

@media(max-width:1380px){
  .brand-header{
    grid-template-columns:minmax(500px,650px) minmax(0,1fr) auto!important;
  }
  .brand-header .brand img{max-width:640px!important}
  .header-cert-link{width:72px!important;height:56px!important}
  .header-cert-link img{max-width:72px!important;max-height:54px!important}
}
@media(max-width:1250px){
  .newswire-featured,.newswire-list,.news-archive-list{grid-template-columns:repeat(3,minmax(0,1fr))}
  .news-archive-filters{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:1080px){
  .brand-header{
    grid-template-columns:minmax(0,1fr) auto!important;
  }
  .brand-header .brand img{max-width:560px!important}
  .header-certifications{
    grid-column:1/-1!important;
    justify-content:flex-start!important;
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    padding:4px 0!important;
  }
}
@media(max-width:900px){
  .newswire-featured,.newswire-list,.news-archive-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .newswire-toolbar{grid-template-columns:1fr}
  .newswire-filters{justify-content:flex-start}
}
@media(max-width:700px){
  .cert-modal-panel{
    width:calc(100vw - 10px)!important;
    height:calc(100dvh - 10px)!important;
    border-radius:13px!important;
  }
  .cert-modal-title{
    min-height:68px!important;
    padding:14px 65px 14px 18px!important;
    font-size:1.05rem!important;
  }
  .cert-modal-close{top:9px!important;right:10px!important}
  .news-archive-filters{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .brand-header .brand img{max-width:390px!important}
  .header-cert-link{width:64px!important;height:50px!important}
  .header-cert-link img{max-width:64px!important;max-height:48px!important}
  .newswire-featured,.newswire-list,.news-archive-list{grid-template-columns:1fr}
  .newswire-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}
  .newswire-filter{flex:0 0 auto}
  .news-archive-filters{grid-template-columns:1fr}
  .news-archive-kpi{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .newswire-live-dot,.newswire-loading-spinner{animation:none!important}
}


/* ============================================================
   V6 — POPUP CERTIFICAZIONI FLOTTANTE / RESPONSIVE
   Il viewer non occupa più quasi tutto lo schermo:
   si dimensiona sul rapporto A4 e sul viewport disponibile.
   ============================================================ */
.cert-modal{
  padding:clamp(8px,2vw,24px)!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(2,8,18,.80)!important;
}
.cert-modal-panel{
  /* A4 portrait + toolbar del visualizzatore PDF, limitato dal viewport */
  width:min(860px, calc(100vw - 32px), calc((100dvh - 120px) * .78))!important;
  height:auto!important;
  max-height:calc(100dvh - 24px)!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.20)!important;
  border-radius:18px!important;
  background:#15181d!important;
  box-shadow:0 24px 70px rgba(0,0,0,.55)!important;
}
.cert-modal-title{
  flex:0 0 auto!important;
  min-height:64px!important;
  padding:14px 68px 14px 22px!important;
  display:flex!important;
  align-items:center!important;
  font-size:clamp(1.05rem,1.5vw,1.35rem)!important;
  line-height:1.15!important;
  border-bottom:1px solid rgba(255,255,255,.14)!important;
}
.cert-modal-close{
  top:10px!important;
  right:12px!important;
  width:42px!important;
  height:42px!important;
  display:grid!important;
  place-items:center!important;
  font-size:2rem!important;
  line-height:1!important;
}
.cert-modal-stage{
  flex:0 1 auto!important;
  width:100%!important;
  height:min(calc(100dvh - 112px), 960px)!important;
  min-height:420px!important;
  overflow:hidden!important;
  background:#2d2f31!important;
}
.cert-modal-stage iframe{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
}
@media (orientation:landscape) and (max-height:720px){
  .cert-modal-panel{
    width:min(760px, calc(100vw - 24px), calc((100dvh - 92px) * 1.08))!important;
  }
  .cert-modal-title{min-height:52px!important;padding:9px 60px 9px 16px!important}
  .cert-modal-stage{height:calc(100dvh - 82px)!important;min-height:0!important}
  .cert-modal-close{top:5px!important;right:8px!important}
}
@media(max-width:600px){
  .cert-modal{padding:6px!important}
  .cert-modal-panel{
    width:calc(100vw - 12px)!important;
    max-height:calc(100dvh - 12px)!important;
    border-radius:13px!important;
  }
  .cert-modal-title{
    min-height:54px!important;
    padding:10px 58px 10px 14px!important;
    font-size:1rem!important;
  }
  .cert-modal-stage{
    height:calc(100dvh - 72px)!important;
    min-height:0!important;
  }
  .cert-modal-close{top:6px!important;right:7px!important;width:40px!important;height:40px!important}
}


/* ============================================================
   V7 — HOME INCLUSIONE / SERVICE CARDS / EVENTI BRAND
   ============================================================ */

/* HOME: banner approvato con presenza esplicita di persona in sedia a rotelle */
.home-brand-visual{
  background:#fff!important;
}
.home-brand-visual img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:2048 / 768!important;
  object-fit:cover!important;
  object-position:center!important;
}

/* Le decorazioni circolari non devono mai sovrapporsi a testi o CTA */
.service-tile:after{
  display:none!important;
}
.service-tile{
  position:relative!important;
  overflow:hidden!important;
  border-top:3px solid var(--blue)!important;
}
.service-tile::before{
  content:""!important;
  position:absolute!important;
  right:12px!important;
  top:12px!important;
  width:26px!important;
  height:26px!important;
  border:4px solid rgba(7,59,145,.08)!important;
  border-radius:50%!important;
  pointer-events:none!important;
  z-index:0!important;
}
.service-tile > *{
  position:relative!important;
  z-index:1!important;
}
.service-tile b{
  position:absolute!important;
  left:20px!important;
  right:20px!important;
  bottom:16px!important;
  z-index:2!important;
}

/* CTA PA: le tre frasi sono volutamente su tre righe */
.pa-callout h2{
  line-height:1.02!important;
}
.pa-callout h2 br{
  display:block!important;
}

/* EVENTI: stessa logica/carte della pagina fornita, nuova pelle CENTRO ETS */
.events-brand-hero{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:22px!important;
  margin-bottom:14px!important;
  padding:22px 28px!important;
  border-radius:22px!important;
  background:
    radial-gradient(circle at 88% 45%,rgba(255,255,255,.08) 0 80px,transparent 82px),
    radial-gradient(circle at 88% 45%,transparent 0 120px,rgba(255,255,255,.05) 122px 150px,transparent 152px),
    linear-gradient(135deg,var(--navy),var(--blue))!important;
  color:#fff!important;
  box-shadow:var(--shadow)!important;
}
.events-brand-hero .eyebrow{
  color:#b8dcff!important;
}
.events-brand-hero h1{
  margin:.08em 0 .18em!important;
  color:#fff!important;
  font-size:clamp(2rem,3vw,3.25rem)!important;
  line-height:.98!important;
  letter-spacing:-.04em!important;
}
.events-brand-hero p{
  max-width:820px!important;
  margin:0!important;
  color:#dbe9f8!important;
  font-size:.9rem!important;
  line-height:1.42!important;
}
.events-brand-hero .events-source-stat{
  flex:0 0 auto!important;
  min-width:145px!important;
  padding:13px 16px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:15px!important;
  background:rgba(255,255,255,.10)!important;
  box-shadow:none!important;
  backdrop-filter:blur(6px)!important;
}
.events-brand-hero .events-source-stat b{
  color:#fff!important;
  font-size:1.65rem!important;
}
.events-brand-hero .events-source-stat span{
  color:#cfe4f8!important;
  font-size:.7rem!important;
}

/* Filters */
.events-brand-wrap{
  padding:0 0 36px!important;
}
.events-source-filters{
  border:1px solid var(--line)!important;
  border-top:3px solid var(--blue)!important;
  background:#fff!important;
  box-shadow:var(--shadow2)!important;
}
.events-source-field label{
  color:var(--blue)!important;
  letter-spacing:.05em!important;
}
.events-source-field input,
.events-source-field select{
  border-color:#cfddec!important;
  color:var(--ink)!important;
  background:#fff!important;
}
.events-source-field input:focus,
.events-source-field select:focus{
  outline:2px solid rgba(7,59,145,.22)!important;
  border-color:var(--blue)!important;
}
.events-source-reset{
  background:var(--red)!important;
  color:#fff!important;
}
.events-source-toolbar{
  color:var(--muted)!important;
}
.events-source-toolbar a{
  color:var(--blue)!important;
}

/* Event cards */
.events-source-card{
  border:1px solid var(--line)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:var(--shadow2)!important;
  transition:transform .18s ease,box-shadow .18s ease!important;
}
.events-source-card:hover{
  transform:translateY(-3px)!important;
  box-shadow:var(--shadow)!important;
}
.events-source-poster{
  background:#edf3f9!important;
}
.events-source-year{
  background:var(--blue)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.35)!important;
}
.events-source-info{
  padding:11px 12px 13px!important;
  border-top:3px solid var(--red)!important;
}
.events-source-info h2{
  color:var(--ink)!important;
  font-weight:850!important;
}
.events-source-meta{
  color:var(--muted)!important;
}
.events-source-meta span:first-child{
  color:var(--blue)!important;
  font-weight:800!important;
}

/* Event overlay brand */
.events-source-overlay{
  background:rgba(3,12,30,.91)!important;
  backdrop-filter:blur(4px)!important;
}
.events-source-close{
  background:var(--red)!important;
  box-shadow:0 8px 22px rgba(0,0,0,.25)!important;
}

@media(max-width:760px){
  .events-brand-hero{
    align-items:flex-start!important;
    padding:18px!important;
  }
  .events-brand-hero .events-source-stat{
    min-width:110px!important;
  }
}


/* ============================================================
   V8 — BANNER HOME INTEGRO / POPUP CERTIFICAZIONI PULITO /
        UTILITY BAR E FOOTER
   ============================================================ */

/* Home banner: nessun taglio sopra/sotto. Mantiene il rapporto reale del file. */
.home-brand-visual{
  height:auto!important;
  aspect-ratio:2033 / 774!important;
  overflow:hidden!important;
  background:#eef5fb!important;
}
.home-brand-visual img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
}

/* La CTA resta separata dal banner e non lo copre. */
.home-brand-actions{
  position:relative!important;
  z-index:2!important;
}

/* Barra utility: indirizzo e telefono più leggibili senza ingrossare eccessivamente la fascia. */
.utility-bar{
  min-height:46px!important;
}
.utility-left{
  font-size:.88rem!important;
  line-height:1.15!important;
  font-weight:600!important;
  letter-spacing:.005em!important;
}
.utility-left > span{
  color:#a9bbcd!important;
}
.utility-phone{
  font-size:.9rem!important;
  font-weight:950!important;
}

/* Footer: claim su due righe, con più respiro e migliore leggibilità. */
.footer-brand .footer-claim{
  margin:.55rem 0 .3rem!important;
  color:#e7f0f8!important;
  font-size:.88rem!important;
  line-height:1.48!important;
  font-weight:650!important;
}

/* ------------------------------------------------------------
   Certificazioni: popup pulito, senza miniatura laterale.
   Il PDF viene aperto col viewer browser in modalità page-fit,
   con toolbar/navpane nascosti per lasciare protagonista il documento.
   ------------------------------------------------------------ */
.cert-modal{
  padding:clamp(8px,1.6vw,22px)!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(2,8,18,.80)!important;
}
.cert-modal-panel{
  width:min(900px, calc(100vw - 28px), calc((100dvh - 92px) * .77))!important;
  height:auto!important;
  max-height:calc(100dvh - 16px)!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.20)!important;
  border-radius:18px!important;
  background:#15181d!important;
  box-shadow:0 26px 80px rgba(0,0,0,.60)!important;
}
.cert-modal-title{
  flex:0 0 auto!important;
  min-height:56px!important;
  padding:11px 64px 11px 18px!important;
  display:flex!important;
  align-items:center!important;
  background:#111318!important;
  border-bottom:1px solid rgba(255,255,255,.14)!important;
  color:#fff!important;
  font-size:clamp(1rem,1.35vw,1.25rem)!important;
  line-height:1.1!important;
  font-weight:900!important;
}
.cert-modal-close{
  top:7px!important;
  right:9px!important;
  width:42px!important;
  height:42px!important;
  display:grid!important;
  place-items:center!important;
  border:0!important;
  border-radius:50%!important;
  background:transparent!important;
  color:#fff!important;
  font-size:2rem!important;
  line-height:1!important;
}
.cert-modal-close:hover{
  background:rgba(255,255,255,.10)!important;
  color:#ff2730!important;
}
.cert-modal-stage{
  flex:0 1 auto!important;
  width:100%!important;
  aspect-ratio:210 / 297!important;
  max-height:calc(100dvh - 82px)!important;
  min-height:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:#25282c!important;
}
.cert-modal-stage iframe,
.cert-modal-stage embed,
.cert-modal-stage object{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  border:0!important;
  background:#25282c!important;
}
.cert-modal-stage img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  background:#fff!important;
}

/* landscape basso: usa tutto lo spazio disponibile senza uscire dal viewport */
@media (orientation:landscape) and (max-height:720px){
  .cert-modal{
    padding:5px!important;
  }
  .cert-modal-panel{
    width:min(650px, calc(100vw - 10px), calc((100dvh - 64px) * .72))!important;
    max-height:calc(100dvh - 10px)!important;
    border-radius:13px!important;
  }
  .cert-modal-title{
    min-height:44px!important;
    padding:7px 54px 7px 13px!important;
    font-size:.92rem!important;
  }
  .cert-modal-stage{
    max-height:calc(100dvh - 54px)!important;
  }
  .cert-modal-close{
    top:2px!important;
    right:4px!important;
    width:38px!important;
    height:38px!important;
  }
}

@media(max-width:760px){
  .utility-left{
    font-size:.8rem!important;
  }
  .utility-phone{
    font-size:.82rem!important;
  }
  .home-brand-visual{
    aspect-ratio:2033 / 774!important;
    height:auto!important;
  }
  .cert-modal{
    padding:5px!important;
  }
  .cert-modal-panel{
    width:min(calc(100vw - 10px), calc((100dvh - 70px) * .72))!important;
    max-height:calc(100dvh - 10px)!important;
    border-radius:12px!important;
  }
  .cert-modal-title{
    min-height:48px!important;
    padding:8px 52px 8px 13px!important;
    font-size:.92rem!important;
  }
  .cert-modal-stage{
    max-height:calc(100dvh - 62px)!important;
  }
}


/* ============================================================
   V9 — HERO GLOBALE CENTRO ETS
   Usa la stessa identità visiva approvata per la pagina Eventi
   su tutte le prime card che non sono banner fotografici.
   ============================================================ */

/* Prima card standard di ogni pagina */
.page-hero:not(.home-brand-visual),
.service-hero{
  position:relative!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 88% 48%, rgba(255,255,255,.085) 0 76px, transparent 78px),
    radial-gradient(circle at 88% 48%, transparent 0 116px, rgba(255,255,255,.052) 118px 148px, transparent 150px),
    linear-gradient(135deg, #061a3d 0%, #073b91 62%, #0b4da4 100%)!important;
  color:#fff!important;
  border:1px solid rgba(7,59,145,.12)!important;
  box-shadow:var(--shadow)!important;
}

/* Secondo richiamo radar, molto discreto e sempre dietro al contenuto */
.page-hero:not(.home-brand-visual)::before,
.service-hero::before{
  content:""!important;
  position:absolute!important;
  right:-34px!important;
  bottom:-68px!important;
  width:245px!important;
  height:245px!important;
  border:26px solid rgba(255,255,255,.035)!important;
  border-radius:50%!important;
  pointer-events:none!important;
  z-index:0!important;
}

/* Mantiene tutti i contenuti sopra la decorazione */
.page-hero:not(.home-brand-visual) > *,
.service-hero > *{
  position:relative!important;
  z-index:1!important;
}

.page-hero:not(.home-brand-visual) h1,
.service-hero h1{
  color:#fff!important;
}

.page-hero:not(.home-brand-visual) p,
.service-hero p{
  color:#dceafa!important;
}

.page-hero:not(.home-brand-visual) .eyebrow,
.service-hero .eyebrow{
  color:#b9ddff!important;
}

/* La pagina Eventi era già il riferimento: evita differenze percettibili */
.events-brand-hero{
  background:
    radial-gradient(circle at 88% 48%, rgba(255,255,255,.085) 0 76px, transparent 78px),
    radial-gradient(circle at 88% 48%, transparent 0 116px, rgba(255,255,255,.052) 118px 148px, transparent 150px),
    linear-gradient(135deg, #061a3d 0%, #073b91 62%, #0b4da4 100%)!important;
}

/* Pagine servizio: il grande cerchio/icona laterale su fondo chiaro
   non serve più, ma l'icona resta come elemento di riconoscimento. */
.service-hero-icon{
  background:rgba(255,255,255,.10)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:none!important;
}
.service-hero-icon img{
  filter:brightness(0) invert(1)!important;
  opacity:.92!important;
}

/* ============================================================
   V9 — ARCHIVIO / NEWSWIRE
   Coerenza con il layout VEROSOCIALE, ma identità CENTRO ETS.
   ============================================================ */
.newswire-hero .paper{
  background:rgba(255,255,255,.10)!important;
  border:1px solid rgba(255,255,255,.18)!important;
}
.newswire-hero .newswire-note,
.newswire-hero .newswire-live{
  color:#e6f0fa!important;
}

/* Archivio: 4 card desktop, 24 risultati/pagina, filtri completi */
.news-archive-results-head{
  margin-top:18px!important;
  margin-bottom:12px!important;
}
.news-archive-list{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.news-archive-item{
  min-height:245px!important;
}
.news-archive-body h2{
  font-size:.98rem!important;
  line-height:1.22!important;
}
.news-archive-body p{
  font-size:.72rem!important;
  line-height:1.45!important;
}
.news-archive-filter-panel{
  border-top:3px solid var(--blue)!important;
}
.news-archive-filters .btn{
  min-height:40px!important;
}

@media(max-width:1280px){
  .news-archive-list{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:900px){
  .news-archive-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:560px){
  .news-archive-list{grid-template-columns:1fr!important}
}


/* ============================================================
   V10 — SERVICE CARDS: CTA MAI SOPRA IL TESTO
   ============================================================ */
.service-showcase{
  align-items:stretch!important;
}
.service-tile{
  display:flex!important;
  flex-direction:column!important;
  min-height:300px!important;
  padding:20px 20px 18px!important;
  overflow:hidden!important;
}
.service-tile .service-icon{
  flex:0 0 auto!important;
}
.service-tile span,
.service-tile h3,
.service-tile p{
  flex:0 0 auto!important;
}
.service-tile p{
  margin-bottom:14px!important;
}
.service-tile b{
  position:static!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  margin-top:auto!important;
  padding-top:10px!important;
  display:block!important;
  flex:0 0 auto!important;
  color:var(--blue)!important;
  font-size:.78rem!important;
  line-height:1.2!important;
}
.service-tile::before{
  width:24px!important;
  height:24px!important;
  right:14px!important;
  top:14px!important;
  opacity:.75!important;
}
@media(max-width:1380px){
  .service-tile{min-height:290px!important}
}
@media(max-width:760px){
  .service-tile{min-height:0!important}
}

/* ============================================================
   V10 — NEWS LOADER: SOLO BARRA SOTTILE NON BLOCCANTE
   ============================================================ */
.newswire-loading{
  position:relative!important;
  min-height:0!important;
  height:8px!important;
  margin:10px 0 14px!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  overflow:hidden!important;
  background:#dfe9f4!important;
  box-shadow:none!important;
}
.newswire-loading::before{
  content:""!important;
  position:absolute!important;
  inset:0 auto 0 0!important;
  width:38%!important;
  border-radius:inherit!important;
  background:linear-gradient(90deg,var(--blue),#2b8bff,var(--red))!important;
  animation:newsProgress 1.15s ease-in-out infinite!important;
}
.newswire-loading-spinner,
.newswire-loading-copy{
  display:none!important;
}
.newswire-loading[hidden]{
  display:none!important;
}
@keyframes newsProgress{
  0%{transform:translateX(-110%)}
  50%{transform:translateX(135%)}
  100%{transform:translateX(305%)}
}
@media(prefers-reduced-motion:reduce){
  .newswire-loading::before{
    animation:none!important;
    width:65%!important;
  }
}

/* ============================================================
   V11 — HOME: TUTTI I SERVIZI / PAGINE SERVIZIO COMPLETE / CARTE
   ============================================================ */
.service-showcase-all{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
}
.service-tile-compact{
  min-height:268px!important;
  padding:18px 18px 16px!important;
}
.service-tile-compact .service-icon{width:38px!important;height:38px!important}
.service-tile-compact h3{font-size:1.03rem!important;line-height:1.12!important;margin:.25rem 0 .4rem!important}
.service-tile-compact p{font-size:.76rem!important;line-height:1.42!important;color:var(--muted)!important}
.service-tile-compact b{font-size:.75rem!important}

.service-explain-grid{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr);
  gap:12px;
  margin-top:14px;
}
.service-explain-main,.service-audience-card{
  padding:clamp(20px,2.4vw,30px);
  border-radius:20px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow2);
}
.service-explain-main h2{margin:.22rem 0 .55rem;font-size:clamp(1.45rem,2.2vw,2.35rem);line-height:1.04;color:var(--ink)}
.service-explain-main p,.service-audience-card p{margin:0;color:#536b82;font-size:.93rem;line-height:1.68}
.service-audience-card{background:linear-gradient(145deg,#eef6ff,#fff);border-top:3px solid var(--blue)}
.service-audience-card p{margin-top:.45rem;font-weight:600}

.service-content-section{margin-top:18px}
.service-points-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.service-points-grid article{min-height:132px;padding:18px;border-radius:17px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow2)}
.service-points-grid b{display:block;color:#bdd7f4;font-size:1.55rem;line-height:1;font-weight:950}
.service-points-grid p{margin:.55rem 0 0;color:#405970;font-size:.82rem;line-height:1.48}

.service-method-panel{display:grid;grid-template-columns:.9fr 1.1fr;gap:20px;margin-top:18px;padding:clamp(22px,3vw,36px);border-radius:22px;background:linear-gradient(135deg,#061a3d,#073b91 62%,#0b4da4);color:#fff;box-shadow:var(--shadow)}
.service-method-panel h2{margin:.2rem 0 .45rem;font-size:clamp(1.6rem,2.6vw,2.8rem);line-height:1}
.service-method-panel p{margin:0;color:#d7e8f8;line-height:1.6}
.service-method-panel ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.service-method-panel li{display:grid;grid-template-columns:34px 1fr;gap:9px;align-items:start;padding:12px;border-radius:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}
.service-method-panel li b{color:#9dd3ff}.service-method-panel li span{font-size:.78rem;line-height:1.35}

.service-pa-panel{display:grid;grid-template-columns:.8fr 1.2fr;gap:22px;align-items:center;margin-top:14px;padding:22px 24px;border-radius:19px;background:#fff;border:1px solid var(--line);border-left:5px solid var(--red);box-shadow:var(--shadow2)}
.service-pa-panel h2{margin:.2rem 0 0;font-size:1.45rem;line-height:1.06}.service-pa-panel p{margin:0;color:#536b82;line-height:1.6}

.service-documents{margin-top:22px;padding:22px;border-radius:22px;background:linear-gradient(145deg,#edf5ff,#f9fcff);border:1px solid #d4e4f4}
.service-documents .section-head p{margin:.35rem 0 0;color:var(--muted);font-size:.84rem}
.service-doc-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.service-doc-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow2);transition:transform .18s ease,box-shadow .18s ease}
.service-doc-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.service-doc-cover{display:block;width:100%;aspect-ratio:210/297;padding:0;border:0;background:#edf3f9;overflow:hidden;cursor:zoom-in}
.service-doc-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.service-doc-card:hover .service-doc-cover img{transform:scale(1.015)}
.service-doc-info{display:flex;flex:1;flex-direction:column;padding:12px 13px 14px;border-top:3px solid var(--red)}
.service-doc-card h3{margin:.3rem 0 .9rem;font-size:.95rem;line-height:1.2;color:var(--ink)}
.doc-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto}.doc-actions .btn{min-width:0;min-height:42px;padding:0 10px;font-size:.75rem;cursor:pointer}

.flipbook-modal{position:fixed;inset:0;z-index:18000;display:none;align-items:center;justify-content:center;padding:clamp(10px,2vw,24px);background:rgba(2,12,29,.88);backdrop-filter:blur(8px)}
.flipbook-modal.open{display:flex}
.flipbook-modal-panel{position:relative;width:min(1500px,96vw);height:min(920px,94dvh);overflow:hidden;border:1px solid rgba(255,255,255,.25);border-radius:22px;background:#07111f;box-shadow:0 28px 90px rgba(0,0,0,.55)}
.flipbook-modal-stage,.flipbook-modal-stage iframe{display:block;width:100%;height:100%;border:0}
.flipbook-modal-close{position:absolute;z-index:3;right:max(12px,env(safe-area-inset-right));top:max(12px,env(safe-area-inset-top));display:grid;place-items:center;width:46px;height:46px;padding:0;border:2px solid rgba(255,255,255,.75);border-radius:50%;background:var(--red);color:#fff;font-size:1.85rem;line-height:1;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.32)}

.service-faq{margin-top:20px}.service-faq details{margin-top:7px;padding:14px 16px;border-radius:13px;background:#fff;border:1px solid var(--line)}
.service-faq summary{cursor:pointer;color:var(--blue);font-weight:900}.service-faq details p{margin:.55rem 0 0;color:var(--muted);line-height:1.55}

@media(max-width:1380px){.service-showcase-all{grid-template-columns:repeat(3,minmax(0,1fr))!important}.service-points-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-doc-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:980px){.service-explain-grid,.service-method-panel,.service-pa-panel{grid-template-columns:1fr}.service-showcase-all{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:760px){.service-doc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.flipbook-modal{padding:0}.flipbook-modal-panel{width:100%;height:100dvh;border:0;border-radius:0}.flipbook-modal-close{width:44px;height:44px}}
@media(max-width:650px){.service-showcase-all,.service-points-grid{grid-template-columns:1fr!important}.service-tile-compact{min-height:0!important}.service-method-panel ol{grid-template-columns:1fr}}
@media(max-width:430px){.service-doc-grid{grid-template-columns:1fr}.service-documents{padding:14px}.service-doc-card h3{font-size:1rem}}
@media(prefers-reduced-motion:reduce){.service-doc-card,.service-doc-cover img{transition:none}}

/* Carte dei Servizi: stessa struttura e proporzioni delle card locandina Eventi. */
.service-documents .service-doc-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(220px,255px))!important;gap:14px!important;align-items:stretch!important;justify-content:start!important}
.service-documents .service-doc-card.event-card{display:flex!important;flex-direction:column!important;width:100%!important;min-width:0!important;max-width:255px!important;padding:0!important;gap:0!important;overflow:hidden!important;border-radius:16px!important;background:#fff!important;border:1px solid var(--line)!important;box-shadow:var(--shadow2)!important}
.service-documents .service-doc-cover.event-poster{display:block!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:210/297!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;overflow:hidden!important;background:#eaf0f5!important}
.service-documents .service-doc-cover.event-poster img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;border-radius:0!important}
.service-documents .service-doc-info.event-info{display:flex!important;flex:1!important;flex-direction:column!important;width:100%!important;min-height:148px!important;padding:10px!important;border-top:3px solid var(--red)!important;background:#fff!important}
.service-documents .service-doc-info.event-info h3{margin:.3rem 0 .8rem!important;font-size:.86rem!important;line-height:1.15!important}
.service-documents .doc-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;width:100%!important;margin-top:auto!important}
.service-documents .doc-actions .btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-width:0!important;min-height:42px!important;padding:0 8px!important;border-radius:10px!important;font-size:.72rem!important;line-height:1!important;white-space:nowrap!important}
@media(max-width:900px){.service-documents .service-doc-grid{grid-template-columns:repeat(auto-fill,minmax(210px,255px))!important}}
@media(max-width:620px){.service-documents .service-doc-grid{grid-template-columns:1fr!important}.service-documents .service-doc-card.event-card{max-width:255px!important}}

/* ============================================================
   V8 — RICERCA GLOBALE / AZIONI HEADER RESPONSIVE
   ============================================================ */
.brand-actions .contact-btn,
.brand-actions .menu-toggle{
  width:118px!important;
  min-width:118px!important;
  height:50px!important;
  min-height:50px!important;
  padding:0 12px!important;
  border-radius:12px!important;
}
.brand-actions .menu-toggle{flex-direction:column;gap:0;line-height:1}
.brand-actions .menu-toggle strong{font-size:1rem;letter-spacing:.055em}
.brand-actions .menu-toggle small{display:block;margin-top:3px;font-size:.62rem;font-weight:750;letter-spacing:.035em;text-transform:lowercase;opacity:.88}

.global-search-form{margin-top:16px;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow2)}
.global-search-form label{display:block;margin-bottom:7px;color:var(--blue);font-size:.82rem;font-weight:900}
.global-search-form>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.global-search-form input{min-width:0;min-height:48px;padding:10px 13px;border:1px solid #cbd9e5;border-radius:11px;color:var(--ink);background:#fff;font-size:1rem}
.search-summary{margin:16px 0 10px;color:var(--muted);font-size:.86rem}.search-summary strong{color:var(--blue);font-size:1.15rem}
.global-search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.global-search-result{padding:20px;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:var(--shadow2)}
.global-search-result>span{color:var(--red);font-size:.64rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.global-search-result h2{margin:.3rem 0 .45rem;font-size:1.12rem;line-height:1.2}.global-search-result h2 a{text-decoration:none;color:var(--ink)}
.global-search-result p{margin:0 0 .75rem;color:var(--muted);font-size:.82rem;line-height:1.55}
.search-empty{margin-top:16px;padding:28px;border:1px dashed #c7d8e8;border-radius:18px;background:#fff;text-align:center}.search-empty h2{margin:.35rem 0}.search-empty p{margin:0;color:var(--muted)}

@media(max-width:1080px){
  .brand-actions .contact-btn,.brand-actions .menu-toggle{display:inline-flex!important;width:112px!important;min-width:112px!important;height:50px!important;min-height:50px!important}
}
@media(max-width:760px){
  .brand-actions{gap:5px!important}
  .brand-actions .contact-btn,.brand-actions .menu-toggle{width:90px!important;min-width:90px!important;height:46px!important;min-height:46px!important;padding:0 7px!important;font-size:.78rem!important}
  .brand-actions .menu-toggle strong{font-size:.88rem}.brand-actions .menu-toggle small{font-size:.56rem}
  .brand-header .brand img{max-width:min(330px,calc(100vw - 205px))!important}
  .global-search-results{grid-template-columns:1fr}.global-search-form{padding:14px}
}
@media(max-width:390px){
  .brand-header{grid-template-columns:1fr!important}
  .brand-header .brand img{width:min(100%,300px)!important;max-width:300px!important}
  .brand-actions{grid-column:1/-1;width:100%}
  .brand-actions .contact-btn,.brand-actions .menu-toggle{flex:1;width:auto!important;min-width:0!important}
  .global-search-form>div{grid-template-columns:1fr}.global-search-form .btn{width:100%}
}

/* Archivio pubblicazioni: card uniformi, copertine e loghi ufficiali */
.publication-section{margin-top:24px;padding:clamp(16px,2vw,24px);border:1px solid #d4e4f4;border-radius:22px;background:linear-gradient(145deg,#edf5ff,#fff)}
.publication-section .section-head{margin-bottom:15px}.publication-section .section-head h2{margin:.25rem 0 .3rem}.publication-section .section-head p{margin:0;color:var(--muted)}
.publication-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,204px));gap:16px;align-items:stretch;justify-content:start}
.publication-card{display:flex;min-width:0;width:100%;height:100%;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:var(--shadow2)}
.publication-cover{display:block;aspect-ratio:744/1052;overflow:hidden;background:#edf4fb}.publication-cover img{display:block;width:100%;height:100%;object-fit:cover}
.publication-info{display:flex;flex:1;flex-direction:column;padding:12px}.publication-info h3{margin:.35rem 0 .75rem;font-size:.94rem;line-height:1.25}.publication-info p{margin:.2rem 0 1rem;color:var(--muted);font-size:.75rem;line-height:1.45}
.publication-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:auto}.publication-actions.three{grid-template-columns:1fr 1fr}.publication-actions .official{grid-column:1/-1}.publication-actions .btn{display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:38px;padding:0 7px;border-radius:9px;font-size:.68rem;white-space:nowrap}
.publication-empty{grid-column:1/-1;margin:0;color:var(--muted)}.publication-pdf-placeholder{display:grid;width:100%;height:100%;place-items:center;color:var(--blue);font-size:2rem;font-weight:950}
.software-card{min-height:318px}.software-logo{display:grid;height:128px;place-items:center;padding:18px;background:#fff;border-bottom:1px solid var(--line)}.software-logo img{display:block;width:100%;height:100%;object-fit:contain}.software-card .publication-info{min-height:188px}.software-card .btn{margin-top:auto}
@media(max-width:520px){.publication-section{padding:12px}.publication-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.publication-info{padding:9px}.publication-actions{grid-template-columns:1fr}.publication-actions.three{grid-template-columns:1fr}.publication-actions .official{grid-column:auto}.publication-actions .btn{min-height:36px}.publication-info h3{font-size:.88rem}.software-card{min-height:300px}.software-logo{height:108px;padding:14px}}

/* Navigazione compatta e ordinata */
.sidebar{padding:10px 12px 18px}.sidebar nav{gap:1px}.nav-section-label{display:block;margin:9px 8px 3px;color:#6d8295;font-size:.56rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}.nav-section-label:first-child{margin-top:0}.nav-item{min-height:31px;padding:4px 8px;border-radius:8px;font-size:.75rem;line-height:1.15}.nav-item .live-badge{margin-left:auto}.sidebar-cta{margin-top:11px;padding:12px;border-radius:14px}.sidebar-cta strong{font-size:.9rem}.sidebar-cta span{font-size:.7rem}.network-mini{margin-top:11px;padding-top:10px}.network-mini img{max-height:34px}
.sidebar-access{margin-top:8px}.sidebar-access .nav-item{background:#eef5ff;color:var(--blue);font-weight:850}
@media(max-width:1080px){.sidebar{padding:12px}.nav-item{min-height:36px;font-size:.8rem}.nav-section-label{margin-top:12px}}

/* Enti che hanno dato fiducia */
.trust-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;margin-top:18px}.trust-card{display:flex;min-height:270px;flex-direction:column;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow2)}.trust-logo{display:grid;height:145px;place-items:center;padding:18px;border-radius:13px;background:#f7f9fc}.trust-logo img{display:block;width:100%;height:100%;object-fit:contain}.trust-card h2{margin:16px 0 14px;font-size:1.05rem;line-height:1.25}.trust-card .btn{width:100%;min-height:40px;margin-top:auto;padding:6px 10px;font-size:.76rem;text-align:center}.trust-empty{grid-column:1/-1;padding:24px;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--muted)}
/* Nomi ente su due righe: il blocco testuale resta sempre separato dal logo. */
.trust-card{overflow:hidden!important;min-height:280px!important}
.trust-logo{flex:0 0 145px!important;width:100%!important;box-sizing:border-box!important}
.trust-card h2{display:flex!important;flex:0 0 auto!important;flex-direction:column!important;min-height:52px!important;margin:14px 0 12px!important;padding:0 2px!important;position:static!important;background:#fff!important;z-index:1!important;font-size:.98rem!important;line-height:1.15!important}
.trust-card h2 span{display:block!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}

/* Candidatura online */
.career-application{display:grid;grid-template-columns:.72fr 1.28fr;gap:18px;margin-top:16px;padding:clamp(20px,3vw,34px);border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow2)}.career-intro h2{margin:.3rem 0;font-size:clamp(1.65rem,2.8vw,2.8rem);line-height:1.05}.career-intro>p{color:var(--muted)}.career-email{margin-top:18px}.career-email a{color:var(--blue);font-weight:900}.career-form-wrap{min-width:0}.career-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.career-form label{display:flex;min-width:0;flex-direction:column;gap:5px;color:var(--ink);font-size:.84rem;font-weight:850}.career-form input,.career-form select,.career-form textarea{width:100%;min-height:44px;border:1px solid #bdccda;border-radius:10px;padding:10px 11px;background:#fff;color:var(--ink)}.career-form textarea{resize:vertical;line-height:1.45}.career-form .full{grid-column:1/-1}.career-form .check{flex-direction:row;align-items:flex-start;font-weight:500;line-height:1.4}.career-form .check input{width:auto;min-height:0;margin-top:3px}.career-form .check a{color:var(--blue);font-weight:850}.file-field{padding:12px;border:1px dashed #9eb4c8;border-radius:12px;background:#f6f9fc}.file-field span{color:var(--muted);font-size:.72rem;font-weight:500}.file-field input{min-height:0;border:0;padding:5px 0;background:transparent}.form-status{margin:0 0 14px;padding:12px 14px;border-radius:11px;font-weight:800}.form-status.success{background:#e7f7ed;color:#17683a}.form-status.error{background:#fff0f0;color:#9d1d25}

/* Menu più leggibile e meno dispersivo */
.nav-section-label{margin-top:8px;padding-top:6px;border-top:1px solid #e7edf3}.nav-section-label:first-of-type{border-top:0}.nav-item{min-height:29px;padding-top:3px;padding-bottom:3px}.sidebar nav>.nav-item:first-child{min-height:35px;margin-bottom:2px;background:#eef5ff;color:var(--blue);font-weight:900}.sidebar nav>.nav-item:first-child.active{background:var(--blue);color:#fff}
@media(max-width:760px){.trust-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.trust-card{min-height:235px;padding:12px}.trust-logo{height:120px;padding:12px}.career-application,.career-form{grid-template-columns:1fr}.career-form .full{grid-column:auto}.career-application{padding:16px}.nav-item{min-height:36px}}
@media(max-width:420px){.trust-grid{grid-template-columns:1fr}.trust-card{min-height:0}}
.green-principle{border-top:4px solid #27835a!important}.green-principle>span{color:#27835a!important}
.institution-grid a{display:block!important;color:inherit!important;text-decoration:none!important}
.trust-card h2{text-align:center!important;gap:5px!important;margin-top:18px!important}
.institution-grid a{padding:22px!important;border-radius:19px!important;background:#fff!important;border:1px solid var(--line)!important;box-shadow:var(--shadow2)!important}
.institution-grid article,.institution-grid a{position:relative!important;min-height:190px!important;border-top:4px solid var(--blue)!important;transition:transform .18s ease,box-shadow .18s ease!important}
.institution-grid article:hover,.institution-grid a:hover{transform:translateY(-3px)!important;box-shadow:var(--shadow)!important}
.institution-grid article>span:first-child,.institution-grid a>span:first-child{display:block!important;margin-bottom:8px!important;color:var(--blue2)!important;font-size:.68rem!important;font-weight:950!important;letter-spacing:.1em!important;text-transform:uppercase!important}
.institution-grid article h2,.institution-grid a h2{color:var(--ink)!important;font-size:1.28rem!important;line-height:1.12!important}
.institution-grid article p,.institution-grid a p{margin:.55rem 0 0!important;font-size:.88rem!important;line-height:1.5!important}
.institution-grid article a,.institution-grid a a{display:inline-flex!important;margin-top:14px!important;color:var(--blue)!important;font-weight:900!important}
@media(max-width:760px){.institution-grid article,.institution-grid a{min-height:0!important;padding:18px!important}}

/* Revisione card e navigazione globale. */
.header-back-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  min-height:48px;padding:0 15px;border:1px solid var(--blue);border-radius:11px;
  background:#fff;color:var(--blue);font-weight:900;cursor:pointer
}
.back-to-top{
  display:inline-flex!important;align-items:center;justify-content:center;min-height:36px;
  margin:0!important;padding:5px 13px!important;border:1px solid rgba(255,255,255,.38)!important;
  border-radius:9px;background:rgba(255,255,255,.08)!important;color:#fff!important;
  font-weight:900;cursor:pointer
}
.restricted-area-card{background:linear-gradient(145deg,#eaf3ff,#fff)!important}
.restricted-area-card strong{display:block;margin-top:auto;padding-top:16px;color:var(--blue)}
.institution-grid>a{display:flex!important;flex-direction:column!important}
.institution-grid>a>strong{display:block;margin-top:auto;padding-top:16px;color:var(--blue)}
.institution-grid>article>a{
  display:inline-flex!important;min-height:0!important;margin-top:14px!important;padding:0!important;
  border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
  color:var(--blue)!important;font-weight:900!important;transform:none!important
}

/* Richiamo blu coerente sulle superfici-card dell'intero sito. */
.story-card,.institution-grid>a,.institution-grid>article,.support-grid>article,
.org-grid>article,.career-grid>article,.gallery-entry>a,.gallery-entry>article,
.reason-grid>article,.legal-principles>article,.role-grid>article,.history-path>article,
.university-card,.publication-card,.trust-card,.directory-card,.service-tile,
.story-lead,.story-panel,.service-detail-grid>article,.mini-service-grid>a,
.network-partners-large>article,.network-benefits>div,.pa-fast-grid>a,.pa-fast-grid>button,
.workflow-grid>article,.training-grid>a,.case-grid>article,.publication-grid>article,
.contact-cards>a,.resource-card,.event-card,.faq-list>details,.magazine-panel,
.observatory-feed,.news-placeholder,.archive-empty,.contact-form-panel,.career-application{
  border-top:4px solid var(--blue)!important
}
.reason-grid>article.green-principle{border-top-color:#27835a!important}

/* Certificazioni e accreditamenti: logo contenuto, card uniformi. */
.certification-grid{margin-top:18px}
.certification-grid .publication-card{min-height:260px}
.certification-grid .publication-cover{
  display:grid;height:142px;aspect-ratio:auto;place-items:center;padding:24px;background:#fff
}
.certification-grid .publication-cover img{
  width:auto;height:auto;max-width:112px;max-height:92px;object-fit:contain
}
.certification-grid .publication-info{min-height:112px;text-align:center}
.certification-grid .publication-info h3{margin-top:0}
.certification-grid .publication-info .btn{margin-top:auto}

/* Enti: area logo isolata e denominazione ancorata al fondo. */
.trust-card{height:304px!important;min-height:304px!important;padding:16px!important}
.trust-logo{flex:0 0 164px!important;height:164px!important;padding:20px!important}
.trust-card h2{
  min-height:58px!important;margin:auto 0 0!important;padding:18px 4px 0!important;
  justify-content:flex-end!important;text-align:center!important;font-size:.94rem!important;
  line-height:1.2!important
}
.trust-card h2 span{white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
.trust-card .btn{flex:0 0 auto;margin-top:12px!important}

@media(max-width:1080px){.header-back-btn{min-height:42px;padding:0 12px}}
@media(max-width:760px){
  .brand-header .brand img{max-width:min(330px,calc(100vw - 250px))!important}
  .header-back-btn{width:42px;min-height:42px;padding:0;font-size:1.1rem}
  .header-back-btn span{display:none}
  .footer-bottom{align-items:flex-start}
  .trust-card{height:274px!important;min-height:274px!important}
  .trust-logo{flex-basis:138px!important;height:138px!important;padding:15px!important}
}
@media(max-width:390px){
  .brand-header .brand img{width:min(100%,300px)!important;max-width:300px!important}
  .brand-actions{grid-column:1/-1;width:100%}
  .header-back-btn{flex:0 0 42px}
}

/* Header definitivo: due righe fisse di certificazioni e azioni allineate. */
.brand-header{
  display:grid!important;
  grid-template-columns:minmax(360px,520px) minmax(0,1fr) auto!important;
  min-height:122px!important;
  column-gap:22px!important;
  padding:7px clamp(18px,2.4vw,40px)!important
}
.brand-header .brand img{width:100%!important;max-width:500px!important;max-height:92px!important}
.header-certifications{
  display:grid!important;
  grid-template-columns:1fr!important;
  grid-auto-rows:52px!important;
  row-gap:7px!important;
  width:max-content!important;
  max-width:100%!important;
  justify-self:end!important;
  align-content:center!important;
  padding:0!important
}
.header-cert-row{
  display:grid!important;
  grid-template-columns:repeat(5,64px) 166px!important;
  align-items:center!important;
  gap:7px!important;
  min-width:0!important
}
.header-cert-row .header-cert-link{
  display:grid!important;
  width:64px!important;
  height:48px!important;
  place-items:center!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important
}
.header-cert-row .header-cert-link img{max-width:64px!important;max-height:46px!important;object-fit:contain!important}
.header-row-action{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:142px!important;
  min-width:142px!important;
  height:46px!important;
  min-height:46px!important;
  margin-left:17px!important;
  padding:0 12px!important;
  border-radius:11px!important;
  font-size:.88rem!important;
  line-height:1!important;
  font-weight:900!important;
  text-decoration:none!important;
  white-space:nowrap!important
}
.header-row-action.header-back-btn{border:1px solid var(--blue)!important;background:#fff!important;color:var(--blue)!important;cursor:pointer!important}
.header-row-action.header-contact-btn{border:1px solid var(--red)!important;background:var(--red)!important;color:#fff!important}

@media(max-width:1380px){
  .brand-header{grid-template-columns:minmax(320px,450px) minmax(0,1fr) auto!important;column-gap:14px!important}
  .brand-header .brand img{max-width:440px!important}
  .header-cert-row{grid-template-columns:repeat(5,56px) 150px!important;gap:5px!important}
  .header-cert-row .header-cert-link{width:56px!important;height:46px!important}
  .header-cert-row .header-cert-link img{max-width:56px!important;max-height:43px!important}
  .header-row-action{width:128px!important;min-width:128px!important;margin-left:12px!important}
}
@media(max-width:1080px){
  .brand-header{grid-template-columns:minmax(0,1fr) auto!important;min-height:auto!important}
  .brand-header .brand img{max-width:470px!important;max-height:78px!important}
  .header-certifications{grid-column:1/-1!important;width:100%!important;justify-self:stretch!important;overflow:visible!important}
  .header-cert-row{grid-template-columns:repeat(5,56px) 150px!important;justify-content:end!important}
}
@media(max-width:760px){
  .brand-header{grid-template-columns:minmax(0,1fr) auto!important;padding:6px 10px!important}
  .brand-header .brand img{width:100%!important;max-width:360px!important;max-height:66px!important}
  .brand-actions{grid-column:auto!important;width:auto!important}
  .header-certifications{grid-auto-rows:40px!important;row-gap:4px!important;padding-top:3px!important}
  .header-cert-row{grid-template-columns:repeat(5,minmax(38px,1fr)) 94px!important;gap:4px!important;width:100%!important;justify-content:stretch!important}
  .header-cert-row .header-cert-link{width:100%!important;height:38px!important}
  .header-cert-row .header-cert-link img{max-width:46px!important;max-height:35px!important}
  .header-row-action{width:88px!important;min-width:88px!important;height:38px!important;min-height:38px!important;margin-left:2px!important;padding:0 6px!important;font-size:.72rem!important}
  .header-row-action.header-back-btn span{display:inline!important}
}
@media(max-width:390px){
  .brand-header{grid-template-columns:minmax(0,1fr) auto!important}
  .brand-header .brand img{max-width:270px!important}
  .header-cert-row{grid-template-columns:repeat(5,minmax(32px,1fr)) 88px!important;gap:3px!important}
  .header-cert-row .header-cert-link img{max-width:40px!important;max-height:32px!important}
  .header-row-action{width:82px!important;min-width:82px!important;margin-left:0!important}
}

/* Enti: spazio certo per tutti i cambi riga controllati dal nome file. */
.trust-card{height:270px!important;min-height:270px!important}
.trust-logo{flex:0 0 158px!important;height:158px!important}
.trust-card h2{min-height:54px!important;margin:26px 0 0!important;padding:0 4px!important;justify-content:flex-start!important;font-size:.9rem!important;line-height:1.18!important}
.trust-card h2 span{display:block!important}
.trust-card h2 span:not(:first-child){text-transform:uppercase!important}
@media(max-width:760px){
  .trust-card{height:236px!important;min-height:236px!important;padding:12px!important}
  .trust-logo{flex-basis:132px!important;height:132px!important}
  .trust-card h2{min-height:54px!important;margin-top:26px!important;font-size:.84rem!important}
}

/* Enti: griglia leggibile su tablet e card orizzontali su smartphone. */
@media(min-width:761px) and (max-width:1080px){
  .trust-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
}
@media(max-width:600px){
  .trust-grid{grid-template-columns:1fr!important;gap:10px!important}
  .trust-card{
    display:flex!important;
    flex-direction:column!important;
    height:236px!important;
    min-height:236px!important;
    padding:12px!important
  }
  .trust-logo{
    width:100%!important;
    height:132px!important;
    min-width:0!important;
    padding:12px!important
  }
  .trust-card h2{
    min-width:0!important;
    min-height:54px!important;
    margin:26px 0 0!important;
    padding:0!important;
    justify-content:flex-start!important;
    text-align:center!important;
    font-size:.92rem!important;
    line-height:1.22!important
  }
  .trust-card h2 span{overflow-wrap:anywhere!important}
}

/* Header: ordine istituzionale fisso, loghi a sinistra e azioni sul margine destro. */
.brand-header{
  grid-template-columns:minmax(360px,520px) minmax(0,1fr) auto!important;
  column-gap:14px!important
}
.header-certifications{
  width:100%!important;
  justify-self:stretch!important;
  padding-left:clamp(46px,4vw,78px)!important
}
.header-cert-row{
  width:100%!important;
  grid-template-columns:repeat(5,64px) minmax(24px,1fr) 142px!important;
  gap:8px!important
}
.header-row-action{
  grid-column:7!important;
  justify-self:end!important;
  width:142px!important;
  min-width:142px!important;
  margin-left:0!important
}
@media(max-width:1380px){
  .brand-header{grid-template-columns:minmax(320px,450px) minmax(0,1fr) auto!important;column-gap:12px!important}
  .header-certifications{padding-left:30px!important}
  .header-cert-row{grid-template-columns:repeat(5,56px) minmax(18px,1fr) 128px!important;gap:6px!important}
  .header-row-action{width:128px!important;min-width:128px!important}
}
@media(max-width:1080px){
  .brand-header{grid-template-columns:minmax(0,1fr) auto!important}
  .header-certifications{grid-column:1/-1!important;padding-left:0!important}
  .header-cert-row{grid-template-columns:repeat(5,56px) minmax(18px,1fr) 124px!important;gap:5px!important}
  .header-row-action{width:124px!important;min-width:124px!important}
}
@media(max-width:760px){
  .header-cert-row{grid-template-columns:repeat(5,minmax(38px,1fr)) 7px 94px!important;gap:4px!important}
  .header-cert-row .header-cert-link{width:100%!important;height:38px!important}
  .header-cert-row .header-cert-link img{max-width:46px!important;max-height:35px!important}
  .header-row-action{width:88px!important;min-width:88px!important}
}
@media(max-width:390px){
  .header-cert-row{grid-template-columns:repeat(5,minmax(31px,1fr)) 4px 84px!important;gap:3px!important}
  .header-cert-row .header-cert-link img{max-width:39px!important;max-height:32px!important}
  .header-row-action{width:82px!important;min-width:82px!important}
}

/* Card enti definitive: flusso verticale reale, nessuna sovrapposizione possibile. */
.trust-card{
  display:flex!important;
  flex-direction:column!important;
  gap:14px!important;
  height:220px!important;
  min-height:220px!important;
  padding:10px!important;
  overflow:visible!important
}
.trust-logo{
  display:flex!important;
  flex:0 0 126px!important;
  width:100%!important;
  height:126px!important;
  min-width:0!important;
  min-height:126px!important;
  padding:6px!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important
}
.trust-card .trust-logo > img{
  position:static!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  flex:0 1 auto!important;
  transform:none!important
}
.trust-card h2{
  display:flex!important;
  flex:0 0 48px!important;
  flex-direction:column!important;
  min-width:0!important;
  width:100%!important;
  min-height:48px!important;
  margin:0!important;
  padding:0 3px!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  text-align:center!important;
  font-size:.86rem!important;
  line-height:1.18!important;
  overflow:visible!important
}

@media(min-width:761px) and (max-width:1080px){
  .trust-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
}
@media(max-width:760px){
  .trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
  .trust-card{
    gap:12px!important;
    height:190px!important;
    min-height:190px!important;
    padding:7px!important
  }
  .trust-logo{
    flex-basis:102px!important;
    width:100%!important;
    height:102px!important;
    min-height:102px!important;
    padding:6px!important
  }
  .trust-card h2{
    min-height:48px!important;
    margin:0!important;
    padding:0 2px!important;
    font-size:.74rem!important;
    line-height:1.18!important
  }
  .trust-card h2 span{white-space:normal!important;overflow-wrap:anywhere!important}
}
@media(max-width:360px){
  .trust-grid{gap:7px!important}
  .trust-card{padding:7px!important}
  .trust-card h2{font-size:.72rem!important}
}

/* Header definitivo: loghi certificazioni avvicinati alle azioni e allineati a destra. */
.header-certifications{padding-left:0!important}
.header-cert-row{
  grid-template-columns:repeat(5,64px) 34px 142px!important;
  justify-content:end!important;
  column-gap:8px!important
}
.header-row-action{grid-column:7!important;margin-left:0!important}
@media(max-width:1380px){
  .header-cert-row{grid-template-columns:repeat(5,56px) 28px 128px!important;column-gap:6px!important}
  .header-row-action{grid-column:7!important}
}
@media(max-width:1080px){
  .header-cert-row{grid-template-columns:repeat(5,56px) 16px 124px!important;column-gap:5px!important}
  .header-row-action{grid-column:7!important}
}
@media(max-width:760px){
  .header-cert-row{grid-template-columns:repeat(5,minmax(38px,1fr)) 6px 94px!important;column-gap:4px!important}
  .header-row-action{grid-column:7!important}
}
@media(max-width:390px){
  .header-cert-row{grid-template-columns:repeat(5,minmax(31px,1fr)) 4px 84px!important;column-gap:3px!important}
  .header-row-action{grid-column:7!important}
}

/* Revisione contenuti 12/09/2026: contatti, certificazioni e rassegna stampa. */
.utility-whatsapp{display:inline-flex;align-items:center;gap:5px;color:#56d98b;text-decoration:none;font-weight:950}
.utility-whatsapp img{width:17px;height:17px;object-fit:contain}
.resource-directory>a{min-height:230px}
.certification-intro,.press-intro,.press-updates{margin-top:18px;padding:24px;border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:18px;background:linear-gradient(145deg,#edf5ff,#fff);box-shadow:var(--shadow2)}
.certification-intro strong{display:block;color:var(--blue);font-size:1.35rem}
.certification-intro p,.press-intro p,.press-updates p{margin:.55rem 0 0;color:var(--muted)}
.certification-grid .publication-card{min-height:350px}
.certification-grid .publication-info{min-height:202px}
.certification-grid .publication-info p{margin:.45rem 0 1rem;color:var(--muted);font-size:.78rem;line-height:1.45}
.press-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}
.press-card{display:flex;min-height:180px;flex-direction:column;padding:22px;border:1px solid var(--line);border-top:4px solid var(--blue);border-radius:18px;background:#fff;box-shadow:var(--shadow2)}
.press-card span{color:var(--red);font-size:.68rem;font-weight:950;letter-spacing:.08em}
.press-card h3{margin:.55rem 0;color:var(--navy);font-size:1.15rem}
.press-card p{margin:auto 0 0;color:var(--muted);font-size:.83rem;line-height:1.45}
.press-updates{border-left-color:var(--red)}
.press-updates h2,.press-intro h2{margin:.35rem 0 0}
@media(max-width:900px){.press-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.utility-whatsapp{display:none}.certification-grid .publication-card{min-height:330px}.certification-grid .publication-info{min-height:190px}}
@media(max-width:520px){.press-grid{grid-template-columns:1fr}.press-card{min-height:150px}}

/* Reclami e segnalazioni: percorsi distinti e modulo online in finestra. */
.complaint-hero{margin-bottom:18px}
.form-notice{margin:0 0 16px;padding:14px 18px;border-radius:14px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow2)}
.form-notice.success{border-left:5px solid #16834b;color:#0c6035}.form-notice.error{border-left:5px solid var(--red);color:#8b1f25}
.complaint-intro{display:grid;grid-template-columns:minmax(280px,.8fr) 1.2fr;gap:28px;align-items:end;margin:22px 0 15px;padding:0 4px}
.complaint-intro h2{margin:.25rem 0 0;color:var(--navy);font-size:clamp(1.55rem,2.4vw,2.65rem);line-height:1.02;letter-spacing:-.035em}
.complaint-intro p{margin:0;color:var(--muted);font-size:.95rem}
.complaint-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.complaint-card{position:relative;display:flex;min-height:390px;flex-direction:column;padding:25px 23px 22px;overflow:hidden;border:1px solid var(--line);border-top:5px solid var(--blue);border-radius:21px;background:#fff;box-shadow:0 12px 34px rgba(5,42,80,.09)}
.complaint-card:after{content:"";position:absolute;right:-34px;top:-38px;width:112px;height:112px;border:18px solid rgba(5,89,160,.055);border-radius:50%;pointer-events:none}
.complaint-card-service{border-top-color:var(--red)}.complaint-card-privacy{border-top-color:var(--blue)}.complaint-card-whistleblowing{border-top-color:#16834b}
.complaint-card-head{position:relative;z-index:1;display:flex;align-items:center;gap:11px}
.complaint-icon{display:grid;place-items:center;width:45px;height:45px;flex:0 0 45px;border-radius:14px;background:#edf5ff;color:var(--blue);font-size:.78rem;font-weight:950}
.complaint-card-service .complaint-icon{background:#fff0f1;color:var(--red)}.complaint-card-whistleblowing .complaint-icon{background:#eaf8f0;color:#147342}
.complaint-card h2{margin:20px 0 9px;color:var(--navy);font-size:clamp(1.35rem,1.7vw,1.8rem);line-height:1.06;letter-spacing:-.025em}
.complaint-card>p{margin:0 0 22px;color:var(--muted);font-size:.88rem;line-height:1.55}
.complaint-actions{display:grid;gap:10px;margin-top:auto}
.complaint-actions .btn{width:100%;min-height:46px;padding:8px 13px;text-align:center;font-size:.82rem;line-height:1.15;cursor:pointer}
.complaint-actions .card-link{border-color:var(--blue);background:var(--blue);color:#fff}
.complaint-card-whistleblowing .complaint-actions .card-link{border-color:#16834b;background:#16834b}
.complaint-card small{display:block;margin-top:14px;color:#607286;font-size:.68rem;line-height:1.4}.complaint-card small a{color:var(--blue);font-weight:850}
.complaint-help{display:grid;grid-template-columns:.75fr 1.25fr;gap:24px;align-items:center;margin-top:18px;padding:22px 24px;border-radius:19px;background:linear-gradient(135deg,#061a3d,#084e9d);color:#fff;box-shadow:var(--shadow2)}
.complaint-help h2{margin:.25rem 0 0;font-size:1.4rem}.complaint-help ul{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:0;padding:0;list-style:none;counter-reset:complaint-help}
.complaint-help li{position:relative;min-height:58px;padding:12px 10px 10px 42px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:rgba(255,255,255,.08);font-size:.75rem;font-weight:800;counter-increment:complaint-help}
.complaint-help li:before{content:counter(complaint-help);position:absolute;left:12px;color:#9bcfff;font-weight:950}
.complaint-form-modal{position:fixed;inset:0;z-index:19000;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(2,12,29,.88);backdrop-filter:blur(8px)}
.complaint-form-modal.open{display:flex}
.complaint-modal-panel{position:relative;width:min(880px,96vw);max-height:94dvh;overflow:auto;padding:28px;border:1px solid rgba(255,255,255,.35);border-radius:22px;background:#fff;box-shadow:0 28px 90px rgba(0,0,0,.42)}
.complaint-modal-close{position:absolute;right:14px;top:14px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:var(--red);color:#fff;font-size:1.65rem;line-height:1;cursor:pointer}
.complaint-modal-header{padding:2px 56px 18px 0;border-bottom:1px solid var(--line);margin-bottom:18px}.complaint-modal-header h2{margin:.25rem 0 .4rem;color:var(--navy);font-size:clamp(1.6rem,3vw,2.5rem);line-height:1}.complaint-modal-header p{margin:0;color:var(--muted);font-size:.82rem}
.complaint-form input,.complaint-form textarea,.complaint-form select{width:100%;min-height:44px;border:1px solid #cbd9e7;border-radius:10px;padding:9px 11px;background:#fff;color:var(--ink)}
.complaint-form textarea{resize:vertical}.complaint-form .btn{min-height:48px;cursor:pointer}
@media(max-width:1050px){.complaint-paths{grid-template-columns:repeat(2,minmax(0,1fr))}.complaint-card-whistleblowing{grid-column:1/-1;min-height:300px}}
@media(max-width:760px){.complaint-intro,.complaint-help{grid-template-columns:1fr}.complaint-paths{grid-template-columns:1fr}.complaint-card,.complaint-card-whistleblowing{grid-column:auto;min-height:0}.complaint-help ul{grid-template-columns:1fr}.complaint-form-modal{padding:0}.complaint-modal-panel{width:100%;height:100dvh;max-height:none;border:0;border-radius:0;padding:24px 16px}.complaint-modal-header{padding-right:48px}}
@media(max-width:430px){.complaint-card{padding:21px 18px}.complaint-actions .btn{font-size:.78rem}.complaint-modal-panel{padding:20px 14px}.complaint-modal-close{right:10px;top:10px}}

/* Certificazioni: card descrittive, impegno green e lettore PDF flottante. */
.certification-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.certification-grid .certification-card{display:flex;min-height:365px;flex-direction:column;overflow:hidden;border-top:4px solid var(--blue)!important;border-radius:19px;background:#fff;box-shadow:0 12px 32px rgba(5,42,80,.09)}
.certification-grid .certification-card .publication-cover{height:145px;flex:0 0 145px;padding:21px;background:linear-gradient(145deg,#f5f9fd,#fff)}
.certification-grid .certification-card .publication-cover img{max-width:130px;max-height:100px}
.certification-grid .certification-card .publication-info{display:flex;min-height:216px;flex:1;flex-direction:column;padding:18px;text-align:left}
.certification-grid .certification-card .publication-info h3{margin:0;color:var(--navy);font-size:1.18rem}
.certification-grid .certification-card .publication-info p{margin:.55rem 0 1rem;color:var(--muted);font-size:.79rem;line-height:1.48}
.certification-grid .certification-card .publication-info .btn{width:100%;margin-top:auto;font-size:.76rem}
.green-commitment{margin-top:22px;padding:clamp(24px,3vw,38px);overflow:hidden;border-radius:24px;background:linear-gradient(135deg,#073c2a,#16834b 64%,#27945e);color:#fff;box-shadow:var(--shadow)}
.green-commitment>header{display:grid;grid-template-columns:.85fr 1.15fr;gap:20px;align-items:end}.green-commitment>header .eyebrow{grid-column:1/-1;color:#bff0d3}.green-commitment>header h2{margin:-12px 0 0;font-size:clamp(1.8rem,3vw,3.2rem);line-height:.98;letter-spacing:-.04em}.green-commitment>header p{margin:0;color:#ddf5e7;font-size:.9rem}
.green-commitment-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:24px}
.green-commitment-grid article{display:grid;grid-template-columns:72px 1fr;gap:17px;align-items:start;padding:20px;border:1px solid rgba(255,255,255,.22);border-radius:17px;background:rgba(255,255,255,.1);backdrop-filter:blur(5px)}
.green-badge{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:#fff;color:#16834b;font-size:1.02rem;font-weight:950;letter-spacing:-.04em;box-shadow:0 8px 20px rgba(0,0,0,.14)}.green-badge span{font-size:1.35em}.green-badge.eco{font-size:.9rem;letter-spacing:.04em}
.green-commitment-grid h3{margin:1px 0 6px;font-size:1.15rem}.green-commitment-grid p{margin:0;color:#e4f7ec;font-size:.78rem;line-height:1.5}
.certification-pdf-modal{padding:clamp(18px,3vw,46px);background:rgba(2,12,29,.78)}
.certification-pdf-modal .flipbook-modal-panel{width:min(1080px,90vw);height:min(780px,84dvh);border:4px solid var(--blue);border-top-color:var(--red);border-radius:22px;background:#fff;box-shadow:0 28px 85px rgba(0,0,0,.5)}
.certification-modal-bar{display:flex;height:68px;align-items:center;gap:14px;padding:0 78px 0 22px;border-bottom:1px solid #d8e4ef;background:linear-gradient(90deg,#f5f9fd,#fff);color:var(--navy)}
.certification-modal-bar span{font-size:.62rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}.certification-modal-bar strong{font-size:1rem}
.certification-pdf-modal .flipbook-modal-stage{height:calc(100% - 68px);padding:12px;background:#e8eef5}
.certification-pdf-modal .flipbook-modal-stage iframe{border-radius:10px;background:#fff}
.certification-pdf-modal .flipbook-modal-close{right:13px;top:11px;width:44px;height:44px;border:0;box-shadow:0 7px 18px rgba(139,17,28,.25)}
@media(max-width:1100px){.certification-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.certification-grid{grid-template-columns:1fr}.green-commitment>header,.green-commitment-grid{grid-template-columns:1fr}.green-commitment>header .eyebrow{grid-column:auto}.green-commitment>header h2{margin:0}.certification-pdf-modal{padding:12px}.certification-pdf-modal .flipbook-modal-panel{width:96vw;height:88dvh;border-radius:17px}.certification-modal-bar{height:60px;padding-left:15px}.certification-modal-bar span{display:none}.certification-pdf-modal .flipbook-modal-stage{height:calc(100% - 60px);padding:7px}}
@media(max-width:430px){.green-commitment-grid article{grid-template-columns:56px 1fr;padding:16px}.green-badge{width:56px;height:56px}.certification-pdf-modal{padding:7px}.certification-pdf-modal .flipbook-modal-panel{width:100%;height:92dvh}}

/* ============================================================
   POPUP GLOBALI — regola unica per tutto il sito
   Cornice CENTRO ETS, finestra centrale e contenuti a pagina intera.
   ============================================================ */
.flipbook-modal,.cert-modal,.events-source-overlay,.modal,.complaint-form-modal,.event-modal{
  position:fixed!important;inset:0!important;z-index:19000!important;align-items:center!important;justify-content:center!important;
  padding:clamp(8px,2vw,24px)!important;background:rgba(2,12,29,.84)!important;backdrop-filter:blur(8px)!important
}
.flipbook-modal-panel,.cert-modal-panel,.events-source-panel,.modal-panel,.complaint-modal-panel,.event-modal-box{
  position:relative!important;overflow:hidden!important;border:4px solid var(--blue)!important;border-top-color:var(--red)!important;
  border-radius:22px!important;background:#fff!important;box-shadow:0 28px 85px rgba(0,0,0,.50)!important
}
.flipbook-modal-panel,.cert-modal-panel{
  display:flex!important;width:min(1180px,94vw)!important;height:min(860px,92dvh)!important;max-width:94vw!important;max-height:92dvh!important;
  flex-direction:column!important;aspect-ratio:auto!important
}
.ce-modal-bar,.certification-modal-bar,.cert-modal-title{
  display:flex!important;min-height:68px!important;height:68px!important;flex:0 0 68px!important;align-items:center!important;gap:15px!important;
  padding:0 80px 0 23px!important;border-bottom:1px solid #d8e4ef!important;background:linear-gradient(90deg,#f4f8fc,#fff)!important;
  color:var(--navy)!important;font-size:1rem!important;line-height:1.15!important
}
.ce-modal-bar span,.certification-modal-bar span,.cert-modal-title:before{
  color:var(--blue)!important;font-size:.62rem!important;font-weight:950!important;letter-spacing:.09em!important;text-transform:uppercase!important
}
.cert-modal-title:before{content:"CENTRO ETS · DOCUMENTO";margin-right:15px}.ce-modal-bar strong,.certification-modal-bar strong{font-size:1rem;font-weight:950}
.flipbook-modal-stage,.cert-modal-stage{
  display:flex!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;flex:1 1 auto!important;
  align-items:center!important;justify-content:center!important;padding:10px!important;overflow:hidden!important;background:#e7edf4!important;aspect-ratio:auto!important
}
.flipbook-modal-stage iframe,.cert-modal-stage iframe{
  display:block!important;width:100%!important;height:100%!important;min-height:0!important;border:0!important;border-radius:9px!important;background:#fff!important
}
.flipbook-modal-close,.cert-modal-close,.events-source-close,.modal-close,.complaint-modal-close,.event-modal-box button{
  position:absolute!important;z-index:5!important;right:13px!important;top:11px!important;display:grid!important;place-items:center!important;
  width:44px!important;height:44px!important;padding:0!important;border:0!important;border-radius:50%!important;background:var(--red)!important;
  color:#fff!important;font-size:1.8rem!important;font-weight:500!important;line-height:1!important;cursor:pointer!important;box-shadow:0 7px 18px rgba(139,17,28,.28)!important
}
.modal-panel{width:min(800px,94vw)!important;max-height:90dvh!important;overflow:auto!important;padding:30px!important}
.complaint-modal-panel{width:min(900px,94vw)!important;max-height:92dvh!important;overflow:auto!important;padding:30px!important}
.events-source-panel{display:flex!important;width:min(980px,92vw)!important;height:min(880px,92dvh)!important;flex-direction:column!important}
.events-source-stage{display:flex!important;min-height:0!important;flex:1 1 auto!important;align-items:center!important;justify-content:center!important;padding:10px!important;background:#e7edf4!important;overflow:hidden!important}
.events-source-stage img{display:block!important;width:auto!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;border-radius:8px!important;box-shadow:0 7px 20px rgba(4,31,65,.18)!important}
.event-modal-box{max-width:92vw!important;max-height:92dvh!important;padding:10px!important}.event-modal-box img{width:auto!important;height:auto!important;max-width:100%!important;max-height:calc(92dvh - 20px)!important;object-fit:contain!important}

/* Home: impegno green visibile subito dopo i dati identitari. */
.home-green-band{display:grid;grid-template-columns:.78fr 1.22fr;gap:20px;align-items:center;margin:14px 0 4px;padding:22px 24px;border-radius:20px;background:linear-gradient(135deg,#eaf8f0,#fff);border:1px solid #c8e9d6;border-left:5px solid #16834b;box-shadow:var(--shadow2)}
.home-green-copy h2{margin:.25rem 0 .55rem;color:#074d30;font-size:clamp(1.35rem,2.2vw,2.25rem);line-height:1.04}.home-green-copy .eyebrow,.home-green-copy .text-link{color:#16834b}
.home-green-items{display:grid;grid-template-columns:1fr 1fr;gap:10px}.home-green-items article{display:grid;grid-template-columns:70px 1fr;gap:13px;align-items:center;min-height:94px;padding:11px 14px;border:1px solid #d5eadf;border-radius:16px;background:#fff}.home-green-items img{width:70px;height:70px}.home-green-items strong,.home-green-items span{display:block}.home-green-items strong{color:#075f39}.home-green-items span{margin-top:3px;color:var(--muted);font-size:.7rem;line-height:1.35}
.green-commitment-grid .green-badge{display:block;width:78px!important;height:78px!important;object-fit:contain;border-radius:50%;background:transparent;box-shadow:0 10px 24px rgba(0,0,0,.18)}

@media(max-width:760px){
 .flipbook-modal,.cert-modal,.events-source-overlay,.modal,.complaint-form-modal,.event-modal{padding:6px!important}
 .flipbook-modal-panel,.cert-modal-panel,.events-source-panel{width:calc(100vw - 12px)!important;height:calc(100dvh - 12px)!important;max-width:none!important;max-height:none!important;border-width:3px!important;border-radius:15px!important}
 .ce-modal-bar,.certification-modal-bar,.cert-modal-title{min-height:58px!important;height:58px!important;flex-basis:58px!important;padding:0 61px 0 14px!important;gap:8px!important}
 .ce-modal-bar span,.certification-modal-bar span,.cert-modal-title:before{display:none!important}.ce-modal-bar strong,.certification-modal-bar strong,.cert-modal-title{font-size:.92rem!important}
 .flipbook-modal-stage,.cert-modal-stage,.events-source-stage{padding:6px!important}
 .flipbook-modal-close,.cert-modal-close,.events-source-close,.modal-close,.complaint-modal-close,.event-modal-box button{top:7px!important;right:8px!important;width:40px!important;height:40px!important;font-size:1.65rem!important}
 .modal-panel,.complaint-modal-panel{width:calc(100vw - 12px)!important;max-height:calc(100dvh - 12px)!important;border-width:3px!important;border-radius:15px!important;padding:22px 15px!important}
 .home-green-band{grid-template-columns:1fr;padding:19px 17px}.home-green-items{grid-template-columns:1fr 1fr}.home-green-items article{grid-template-columns:56px 1fr;padding:9px}.home-green-items img{width:56px;height:56px}
}
@media(max-width:480px){.home-green-items{grid-template-columns:1fr}.events-source-panel{height:calc(100dvh - 12px)!important}.green-commitment-grid .green-badge{width:64px!important;height:64px!important}}

/* Popup documenti: proporzioni corrette sul foglio verticale, non sul monitor. */
.flipbook-modal-panel,.cert-modal-panel{
  width:min(900px,calc(100vw - 32px),calc((100dvh - 32px) * .82))!important;
  height:min(900px,calc(100dvh - 32px))!important
}
.events-source-panel{
  width:min(900px,calc(100vw - 32px),calc((100dvh - 32px) * .78))!important;
  height:min(900px,calc(100dvh - 32px))!important
}
.home-green-items img{
  padding:15px!important;border-radius:19px!important;background:linear-gradient(145deg,#20a765,#087446)!important;
  box-shadow:0 9px 20px rgba(8,116,70,.22)!important
}
.green-commitment-grid .green-badge{
  padding:14px!important;border:1px solid rgba(255,255,255,.25)!important;border-radius:20px!important;
  background:rgba(255,255,255,.12)!important;box-shadow:0 10px 22px rgba(0,0,0,.15)!important
}
@media(orientation:landscape) and (max-height:720px){
 .flipbook-modal-panel,.cert-modal-panel{width:min(760px,calc(100vw - 20px),calc((100dvh - 20px) * 1.25))!important;height:calc(100dvh - 20px)!important}
 .events-source-panel{width:min(760px,calc(100vw - 20px),calc((100dvh - 20px) * 1.1))!important;height:calc(100dvh - 20px)!important}
}
@media(max-width:760px) and (orientation:portrait){
 .flipbook-modal-panel,.cert-modal-panel,.events-source-panel{
   width:calc(100vw - 12px)!important;
   height:min(calc(100dvh - 12px),calc((100vw - 12px) * 1.28 + 150px))!important
 }
}

/* Loghi Green: immagini libere, grandi e senza cornici o sfondi aggiunti. */
.home-green-items article{grid-template-columns:112px 1fr;min-height:132px}
.home-green-items img{display:block!important;width:112px!important;height:112px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;object-fit:contain!important}
.green-commitment-grid article{grid-template-columns:126px 1fr;align-items:center}
.green-commitment-grid .green-badge{display:block!important;width:126px!important;height:126px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;object-fit:contain!important}
@media(max-width:760px){.home-green-items article{grid-template-columns:82px 1fr;min-height:104px}.home-green-items img{width:82px!important;height:82px!important}.green-commitment-grid article{grid-template-columns:92px 1fr}.green-commitment-grid .green-badge{width:92px!important;height:92px!important}}
@media(max-width:480px){.home-green-items article{grid-template-columns:92px 1fr}.home-green-items img{width:92px!important;height:92px!important}}

/* CENTRO ETS 22 - Green definitivo: nessuna cornice, nessun fondino, immagini a tutta altezza. */
.home-green-items article{
  grid-template-columns:150px 1fr!important;gap:16px!important;min-height:150px!important;padding:0!important;
  overflow:visible!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important
}
.home-green-items img{
  align-self:stretch!important;width:150px!important;height:150px!important;padding:0!important;border:0!important;
  border-radius:0!important;background:none!important;box-shadow:none!important;object-fit:contain!important
}
.green-commitment-grid article{
  grid-template-columns:160px 1fr!important;gap:18px!important;min-height:160px!important;padding:0!important;
  border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important
}
.green-commitment-grid .green-badge{
  align-self:stretch!important;width:160px!important;height:160px!important;padding:0!important;border:0!important;
  border-radius:0!important;background:none!important;box-shadow:none!important;object-fit:contain!important
}
@media(max-width:760px){
 .home-green-items article{grid-template-columns:110px 1fr!important;min-height:110px!important}.home-green-items img{width:110px!important;height:110px!important}
 .green-commitment-grid article{grid-template-columns:120px 1fr!important;min-height:120px!important}.green-commitment-grid .green-badge{width:120px!important;height:120px!important}
}
@media(max-width:480px){
 .home-green-items article{grid-template-columns:105px 1fr!important;min-height:105px!important}.home-green-items img{width:105px!important;height:105px!important}
}

/* CENTRO ETS 24 - Casa Nunu e Centro Antiviolenza Respiro Sicuro. */
.casa-nunu-feature{
  display:grid;grid-template-columns:minmax(180px,280px) minmax(0,1fr);gap:clamp(24px,4vw,58px);align-items:center;
  margin:18px 0;padding:clamp(24px,3.5vw,46px);overflow:hidden;border:1px solid #eadcf2;border-top:5px solid #8f4fba;
  border-radius:26px;background:linear-gradient(135deg,#fff 0%,#fff8fc 52%,#f1fbfc 100%);box-shadow:var(--shadow2)
}
.casa-nunu-feature-logo{display:flex;align-items:center;justify-content:center;min-height:250px}
.casa-nunu-feature-logo img{display:block;width:auto;max-width:100%;height:clamp(230px,24vw,360px);object-fit:contain;border:0;background:transparent;box-shadow:none}
.casa-nunu-feature-logos{display:grid;grid-template-columns:1fr 1fr;gap:12px}.casa-nunu-feature-logos img{width:100%;height:clamp(170px,17vw,250px)}
.casa-nunu-feature-copy .eyebrow{color:#8f4fba}
.casa-nunu-feature-copy h2{margin:.25rem 0 .55rem;font-size:clamp(1.75rem,3.2vw,3.6rem);line-height:.98;letter-spacing:-.045em;color:var(--navy)}
.casa-nunu-feature-copy p{max-width:920px;margin:0;color:var(--muted);font-size:clamp(.9rem,1.15vw,1.08rem)}
.casa-nunu-feature-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.casa-nunu-feature-actions .btn.outline{border-color:#8f4fba;color:#753a9e}
.directory-card-brand{grid-template-columns:76px 1fr 30px}.directory-card-brand>img{width:68px;height:76px;object-fit:contain}
.service-icon-brand{width:58px!important;height:68px!important;object-fit:contain!important}
.service-hero-icon.service-hero-brand{aspect-ratio:auto;min-height:330px;border-radius:24px;background:linear-gradient(145deg,#fff,#fff7fb)}
.service-hero-icon.service-hero-brand img{width:auto!important;height:290px;max-width:92%;object-fit:contain}
.legality-casa-nunu img{display:block;width:auto;height:150px;margin:0 auto 14px;object-fit:contain;border:0;background:transparent}
.legality-brand-pair{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important}.legality-brand-pair img{width:100%!important;height:140px!important;margin:0!important}
@media(max-width:760px){
 .casa-nunu-feature{grid-template-columns:120px minmax(0,1fr);gap:18px;padding:22px 18px;border-radius:21px}
 .casa-nunu-feature-logo{min-height:170px}.casa-nunu-feature-logo img{height:170px}
 .casa-nunu-feature-logos img{height:120px}
 .casa-nunu-feature-copy h2{font-size:clamp(1.45rem,6vw,2.35rem)}
 .service-hero-icon.service-hero-brand{display:flex;min-height:250px}.service-hero-icon.service-hero-brand img{height:225px}
}
@media(max-width:540px){
 .casa-nunu-feature{grid-template-columns:1fr;text-align:center}.casa-nunu-feature-logo{min-height:210px}.casa-nunu-feature-logo img{height:210px}
 .casa-nunu-feature-logos{grid-template-columns:1fr 1fr}.casa-nunu-feature-logos img{height:150px}
 .casa-nunu-feature-actions{justify-content:center}.casa-nunu-feature-actions .btn{width:100%}
}

/* CENTRO ETS 25 - loghi ufficiali delle comunità. */
.community-logo-section{margin-top:20px;padding:clamp(20px,3vw,34px);border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow2)}
.community-logo-section .section-head{margin-top:0}
.community-logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.community-logo-grid a{display:flex;min-width:0;min-height:225px;flex-direction:column;align-items:center;justify-content:center;padding:15px;text-align:center;text-decoration:none;border:1px solid #e1eaf3;border-radius:18px;background:linear-gradient(145deg,#fff,#f7faff);transition:transform .2s ease,box-shadow .2s ease}
.community-logo-grid a:hover{transform:translateY(-3px);box-shadow:var(--shadow2)}
.community-logo-grid img{display:block;width:100%;height:160px;object-fit:contain;border:0;background:transparent;box-shadow:none}
.community-logo-grid strong{display:block;margin-top:10px;color:var(--navy);font-size:.82rem;line-height:1.2}
.community-logo-grid a>span{display:block;margin-top:5px;color:var(--muted);font-size:.74rem;line-height:1.25}
.structure-brand-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(170px,270px);gap:26px;align-items:center}
.structure-brand-hero>img{position:relative;z-index:1;display:block;width:100%;height:210px;object-fit:contain;border:0;background:rgba(255,255,255,.94);border-radius:18px;padding:10px}
@media(max-width:1050px){.community-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.community-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.community-logo-grid a{min-height:190px}.community-logo-grid img{height:130px}.structure-brand-hero{grid-template-columns:1fr 150px}.structure-brand-hero>img{height:145px}}
@media(max-width:480px){.community-logo-grid{grid-template-columns:1fr 1fr;gap:8px}.community-logo-grid a{min-height:160px;padding:10px}.community-logo-grid img{height:105px}.community-logo-grid strong{font-size:.72rem}.structure-brand-hero{grid-template-columns:1fr}.structure-brand-hero>img{width:min(220px,75%);height:170px;margin:8px auto 0}}

/* CENTRO ETS 27 - pagine informative, comunità e contatti. */
.community-detail{display:grid;grid-template-columns:1.15fr .85fr;gap:14px;margin-top:18px}.community-detail article{padding:clamp(22px,3vw,34px);border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow2)}.community-detail h2{margin:.35rem 0 .65rem}.community-detail p,.community-detail li{color:var(--muted);line-height:1.65}.community-detail ul{display:grid;gap:9px;margin:0;padding-left:20px}.community-quality{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:14px;padding:clamp(25px,4vw,42px);border-radius:22px;background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff}.community-quality h2{margin:.3rem 0 0}.community-quality .eyebrow{color:#b9d8ff}
.network-partners-large>article{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(0,1.3fr);gap:24px;align-items:center;padding:26px}.network-partners-large>article>a:first-child{display:grid;place-items:center;min-height:210px}.network-partners-large img{display:block;width:100%;height:180px;object-fit:contain}.network-partners-large h2{margin:.3rem 0}.network-partners-large p{color:var(--muted)}
.faq-shell{display:grid;gap:16px;margin-top:18px}.faq-group{display:grid;grid-template-columns:minmax(190px,.32fr) minmax(0,1fr);gap:22px;padding:clamp(20px,3vw,32px);border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow2)}.faq-group h2{margin:.35rem 0;color:var(--navy)}.faq-group .faq-list{margin:0}.faq-list details{transition:border-color .2s ease,box-shadow .2s ease}.faq-list details[open]{border-color:#9fc1eb;box-shadow:0 8px 25px rgba(0,61,145,.08)}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{display:grid;width:28px;height:28px;flex:0 0 28px;place-items:center;border-radius:50%;background:#eaf3ff;color:var(--blue);font-size:1.2rem}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-contact{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:16px;padding:28px;border-radius:20px;background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff}.faq-contact h2{margin:.3rem 0}
.contact-page-layout{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:18px;margin-top:18px;align-items:start}.contact-channel-list{display:grid;gap:10px}.contact-channel-list>a{display:flex;min-height:112px;flex-direction:column;justify-content:center;padding:20px;border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:18px;background:#fff;text-decoration:none;box-shadow:var(--shadow2)}.contact-channel-list>a:last-child{border-left-color:var(--red)}.contact-channel-list span{color:var(--red);font-size:.62rem;font-weight:950;letter-spacing:.09em}.contact-channel-list strong{margin:.25rem 0;color:var(--navy);font-size:1rem;overflow-wrap:anywhere}.contact-channel-list small{color:var(--muted)}.contact-page-layout .contact-form-panel{display:block;padding:clamp(22px,3vw,34px);border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow2)}.contact-form-panel h2{margin:.35rem 0}.contact-form-panel>div>p{color:var(--muted)}.contact-form label{display:grid;gap:6px;color:var(--navy);font-size:.72rem;font-weight:850}.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:13px 14px;border:1px solid #bfd0e2;border-radius:10px;background:#fff;color:var(--navy);font:inherit}.contact-form textarea{resize:vertical}.contact-form .contact-privacy{display:flex;grid-column:1/-1;align-items:flex-start;gap:9px;font-weight:600;line-height:1.45}.contact-privacy input{width:auto;margin-top:3px}.contact-trap{position:absolute!important;left:-10000px!important}.contact-submit{display:flex;align-items:center;gap:16px}.contact-submit p{margin:0;color:var(--blue);font-weight:800}
@media(max-width:850px){.community-detail,.faq-group,.contact-page-layout{grid-template-columns:1fr}.faq-contact{align-items:flex-start;flex-direction:column}.network-partners-large>article{grid-template-columns:130px 1fr}.network-partners-large>article>a:first-child{min-height:150px}.network-partners-large img{height:130px}}
@media(max-width:540px){.network-partners-large>article{grid-template-columns:1fr;text-align:center}.network-partners-large img{height:150px}.community-quality{align-items:flex-start;flex-direction:column}.contact-submit{align-items:flex-start;flex-direction:column}}

/* CENTRO ETS 28 - loghi colorati e pagine complete delle realtà. */
.community-logo-grid img,
.collection-card .collection-cover img,
.structure-brand-hero>img,
.directory-card-brand>img,
.service-hero-icon.service-hero-brand img,
.casa-nunu-feature-logo img,
.legality-brand-pair img{
  filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
}
.community-logo-grid a,
.collection-card .collection-cover{
  background:#fff!important;
}
.structure-brand-hero>img{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.service-hero-icon.service-hero-brand{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.community-overview{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);
  gap:14px;
  margin-top:18px;
}
.community-building,
.community-facts{
  padding:clamp(22px,3vw,34px);
  border:1px solid var(--line);
  border-radius:22px;
  background:#fff;
  box-shadow:var(--shadow2);
}
.community-building h2{margin:.35rem 0 .65rem;color:var(--navy)}
.community-building p{margin:0;color:var(--muted);line-height:1.72;text-align:justify}
.community-building .community-note{margin-top:14px;padding:13px 15px;border-left:4px solid var(--blue);background:#eef5ff;color:var(--ink)}
.community-facts{display:grid;align-content:center;gap:12px;background:linear-gradient(145deg,#071d45,#0a58b5);color:#fff}
.community-facts div{padding:16px;border:1px solid rgba(255,255,255,.18);border-radius:15px;background:rgba(255,255,255,.08)}
.community-facts span,.community-facts strong{display:block}
.community-facts span{color:#b9ddff;font-size:.62rem;font-weight:950;letter-spacing:.09em}
.community-facts strong{margin-top:6px;font-size:.9rem;line-height:1.45}
.community-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.community-info-grid article{position:relative;padding:26px 24px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow2)}
.community-info-grid article:nth-child(2){border-top:4px solid var(--red)}
.community-info-grid article:nth-child(3){border-top:4px solid var(--blue)}
.community-info-grid h2{margin:.35rem 0 .8rem;color:var(--navy);font-size:1.35rem}
.community-info-grid ul{display:grid;gap:9px;margin:0;padding-left:1.15rem}
.community-info-grid li{color:var(--muted);font-size:.83rem;line-height:1.48}
.community-info-icon{display:grid;width:38px;height:38px;margin-bottom:13px;place-items:center;border-radius:50%;background:#eaf3ff;color:var(--blue);font-weight:950}
.community-info-grid article:nth-child(2) .community-info-icon{background:#fff0f1;color:var(--red)}
.community-privacy{margin:14px 0 0;padding:16px 18px;border-left:5px solid #8f4fba;border-radius:12px;background:#fff6fb;color:#613c64;font-weight:750}
.community-quality p{max-width:900px;margin:.55rem 0 0;color:#dceafa}
@media(max-width:980px){.community-info-grid{grid-template-columns:1fr 1fr}.community-info-grid article:last-child{grid-column:1/-1}}
@media(max-width:760px){.community-overview,.community-info-grid{grid-template-columns:1fr}.community-info-grid article:last-child{grid-column:auto}.community-building p{text-align:left}}
.community-standards{margin-top:18px;padding:clamp(22px,3vw,34px);border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow2)}
.community-standards .section-head{margin-top:0}.community-standards .section-head p{max-width:900px;color:var(--muted)}
.community-standard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.community-standard-grid article{padding:20px;border-radius:17px;background:#eef5ff}
.community-standard-grid b,.community-standard-grid strong,.community-standard-grid span{display:block}
.community-standard-grid b{color:var(--red);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase}
.community-standard-grid strong{margin-top:6px;color:var(--navy)}
.community-standard-grid span{margin-top:5px;color:var(--muted);font-size:.76rem;line-height:1.45}
.community-brand-strip{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}
.community-brand-strip a{display:grid;min-height:92px;place-items:center;padding:7px;border-radius:12px;background:#fff}
.community-brand-strip img{display:block;width:100%;height:78px;object-fit:contain;filter:none!important;opacity:1!important}
@media(max-width:1050px){.community-standard-grid{grid-template-columns:1fr 1fr}.community-brand-strip{grid-template-columns:repeat(4,1fr)}}
@media(max-width:540px){.community-standard-grid{grid-template-columns:1fr}.community-brand-strip{grid-template-columns:repeat(2,1fr)}}

/* CENTRO ETS 29 - uniformazione card, Plastic Free e loghi Green nell'header. */
.header-green-links{
  display:flex;align-items:center;justify-content:flex-end;gap:7px;min-height:50px;
  padding:3px var(--pad);border-top:1px solid #dce9e2;background:#f5faf7
}
.header-green-links>span{margin-right:6px;color:#167044;font-size:.6rem;font-weight:950;letter-spacing:.1em}
.header-green-links a{display:grid;width:64px;height:46px;place-items:center;text-decoration:none}
.header-green-links img{display:block;max-width:64px!important;max-height:46px!important;object-fit:contain!important;filter:none!important}

.home-green-items{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.green-commitment-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.green-commitment-grid article{
  grid-template-columns:112px minmax(0,1fr)!important;align-items:center!important;
  min-height:190px!important;background:#fff!important;border:0!important;backdrop-filter:none!important
}
.green-commitment-grid h3{color:#075f39!important}
.green-commitment-grid p{color:#385d4a!important}
.green-commitment-grid .green-badge{
  width:112px!important;height:112px!important;background:transparent!important;border:0!important;
  border-radius:0!important;box-shadow:none!important;object-fit:contain!important
}

/* Le testate con marchio mantengono la stessa altezza visiva delle altre card. */
.service-hero{min-height:300px!important;padding:30px clamp(28px,4vw,48px)!important}
.service-hero-icon.service-hero-brand{
  display:grid!important;width:250px!important;height:205px!important;min-height:205px!important;
  place-items:center!important;padding:12px!important;border-radius:20px!important;
  background:#fff!important;box-shadow:0 8px 24px rgba(3,28,67,.12)!important
}
.service-hero-icon.service-hero-brand img{width:100%!important;height:100%!important;max-width:226px!important;max-height:181px!important;object-fit:contain!important}
.structure-brand-hero>img{
  width:100%!important;height:190px!important;padding:10px!important;border-radius:18px!important;
  background:#fff!important;box-shadow:0 8px 24px rgba(1,15,38,.18)!important;object-fit:contain!important
}

@media(max-width:1100px){
  .home-green-items{grid-template-columns:1fr 1fr!important}
  .home-green-items article:last-child{grid-column:1/-1}
  .green-commitment-grid{grid-template-columns:1fr!important}
}
@media(max-width:760px){
  .header-green-links{justify-content:center;min-height:44px;padding:2px 10px}
  .header-green-links>span{display:none}
  .header-green-links a{width:54px;height:40px}.header-green-links img{max-width:54px!important;max-height:38px!important}
  .home-green-items{grid-template-columns:1fr!important}.home-green-items article:last-child{grid-column:auto}
  .service-hero{grid-template-columns:1fr!important;min-height:0!important;padding:24px 20px!important}
  .service-hero-icon.service-hero-brand{display:grid!important;width:min(250px,100%)!important;height:180px!important;min-height:180px!important;margin:0 auto!important}
  .structure-brand-hero>img{height:145px!important}
}

/* CENTRO ETS 30 - Green integrato nell'header e partner di rete protagonisti. */
.header-green-links{display:none!important}
.brand-header{
  grid-template-columns:minmax(360px,520px) 220px minmax(0,1fr) auto!important;
  column-gap:14px!important
}
.header-green-inline{
  display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
  min-width:0!important;height:100%!important;padding:0!important;background:transparent!important
}
.header-green-inline a{
  display:grid!important;width:62px!important;height:48px!important;place-items:center!important;
  padding:0!important;border:0!important;background:transparent!important;text-decoration:none!important
}
.header-green-inline img{
  display:block!important;max-width:62px!important;max-height:46px!important;object-fit:contain!important;
  filter:none!important;opacity:1!important
}
.header-certifications{padding-left:0!important}

/* Banner Green: tre card leggibili senza collisioni tra logo e testo. */
.home-green-band{
  grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr)!important;
  gap:22px!important;align-items:center!important
}
.home-green-items{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important;min-width:0!important
}
.home-green-items article,
.home-green-items article:last-child{
  display:grid!important;grid-template-columns:74px minmax(0,1fr)!important;grid-column:auto!important;
  gap:10px!important;align-items:center!important;min-width:0!important;min-height:98px!important;padding:10px!important
}
.home-green-items img{
  display:block!important;width:74px!important;height:74px!important;max-width:74px!important;object-fit:contain!important
}
.home-green-items article>div{min-width:0!important}
.home-green-items strong{font-size:.75rem!important;line-height:1.15!important;overflow-wrap:anywhere!important}
.home-green-items span{font-size:.63rem!important;line-height:1.35!important;overflow-wrap:anywhere!important}

/* Rete: logo grande sopra, contenuti e collegamento sotto. */
.network-partners-large{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important
}
.network-partners-large>article{
  display:grid!important;grid-template-columns:1fr!important;align-content:start!important;gap:8px!important;
  padding:14px 30px 24px!important;text-align:center!important
}
.network-partners-large>article>a:first-child{
  display:grid!important;min-height:178px!important;place-items:center!important;padding:4px!important;
  border-radius:18px!important;background:#f7faff!important
}
.network-partners-large img{
  display:block!important;width:min(470px,88%)!important;height:170px!important;max-width:none!important;
  object-fit:contain!important;filter:none!important
}
.network-partners-large>article>div{display:flex!important;align-items:center!important;flex-direction:column!important;min-width:0!important}
.network-partners-large h2{margin:.3rem 0 .45rem!important;font-size:1.5rem!important}
.network-partners-large p{max-width:620px!important;margin:.25rem auto 1rem!important}
.faq-answer .text-link{display:inline-block!important;margin-top:.55rem!important}

@media(max-width:1380px){
  .brand-header{grid-template-columns:minmax(300px,430px) 185px minmax(0,1fr) auto!important;column-gap:10px!important}
  .header-green-inline{gap:5px!important}.header-green-inline a{width:54px!important;height:44px!important}.header-green-inline img{max-width:54px!important;max-height:42px!important}
  .home-green-band{grid-template-columns:1fr!important}.home-green-items{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:1080px){
  .brand-header{grid-template-columns:minmax(0,1fr) 178px auto!important}
  .brand-header .brand{grid-column:1!important}.header-green-inline{grid-column:2!important}.brand-actions{grid-column:3!important}
  .header-certifications{grid-column:1/-1!important}
}
@media(max-width:760px){
  .brand-header{grid-template-columns:minmax(0,1fr) 138px auto!important}
  .header-green-inline{gap:3px!important}.header-green-inline a{width:42px!important;height:38px!important}.header-green-inline img{max-width:42px!important;max-height:36px!important}
  .home-green-items{grid-template-columns:1fr!important}
  .home-green-items article,.home-green-items article:last-child{grid-template-columns:78px minmax(0,1fr)!important}.home-green-items img{width:78px!important;height:78px!important;max-width:78px!important}
  .network-partners-large{grid-template-columns:1fr!important}.network-partners-large img{height:145px!important}
}
@media(max-width:480px){
  .brand-header{grid-template-columns:minmax(0,1fr) 108px auto!important}
  .header-green-inline a{width:34px!important;height:34px!important}.header-green-inline img{max-width:34px!important;max-height:32px!important}
  .network-partners-large>article{padding:11px 18px 20px!important}.network-partners-large>article>a:first-child{min-height:138px!important;padding:4px!important}.network-partners-large img{width:92%!important;height:130px!important}
}

/* CENTRO ETS 32 - Guida formativa alle tipologie di comunità. */
.community-guide-callout{
  position:relative;display:flex;align-items:center;justify-content:space-between;gap:28px;margin:18px 0 22px;
  padding:clamp(24px,3vw,36px);overflow:hidden;border:1px solid #c9d9ea;border-left:7px solid var(--red);
  border-radius:22px;background:linear-gradient(135deg,#fff 0%,#f7faff 68%,#edf4fb 100%);
  color:var(--navy);text-decoration:none;box-shadow:var(--shadow2)
}
.community-guide-callout:after{content:"";position:absolute;right:120px;top:-110px;width:250px;height:250px;border:32px solid rgba(0,61,145,.045);border-radius:50%;pointer-events:none}
.community-guide-callout>div{position:relative;z-index:1;max-width:980px}.community-guide-callout .eyebrow{color:var(--red)!important}.community-guide-callout h2{margin:.3rem 0 .55rem;font-size:clamp(1.55rem,2.3vw,2.45rem);line-height:1.04}
.community-guide-callout p{margin:0;color:var(--muted);line-height:1.62}.community-guide-callout>strong{position:relative;z-index:1;flex:0 0 auto;padding:13px 17px;border-radius:12px;background:var(--blue);color:#fff;font-size:.78rem;box-shadow:0 7px 18px rgba(0,61,145,.18)}
.community-types-intro{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.35fr);gap:clamp(28px,4vw,60px);align-items:center;margin-top:18px;padding:clamp(26px,3vw,40px);border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow2)}
.community-types-intro-heading{padding-right:clamp(20px,3vw,44px);border-right:1px solid var(--line)}
.community-types-intro h2{max-width:480px;margin:.4rem 0 0;font-size:clamp(1.65rem,2.25vw,2.35rem);line-height:1.08;letter-spacing:-.025em}
.community-types-intro-copy{display:grid;grid-template-columns:1fr 1fr;gap:clamp(22px,3vw,40px)}
.community-types-intro p{margin:0;color:var(--muted);font-size:clamp(.9rem,1.05vw,1.02rem);line-height:1.7}
.community-types-nav{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 4px;padding:12px;border:1px solid var(--line);border-radius:16px;background:#fff}
.community-types-nav a{padding:9px 12px;border-radius:9px;background:#edf4fb;color:var(--blue);font-size:.72rem;font-weight:900;text-decoration:none}
.community-types-nav a:hover{background:var(--blue);color:#fff}
.community-comparison{margin-top:20px}.community-comparison-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow2)}
.community-comparison table{width:100%;min-width:1040px;border-collapse:collapse}.community-comparison th,.community-comparison td{padding:15px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:.74rem;line-height:1.5}
.community-comparison thead th{background:#061a3d;color:#fff;font-size:.65rem;letter-spacing:.05em;text-transform:uppercase}.community-comparison tbody th{width:190px;color:var(--blue);font-size:.78rem}.community-comparison tbody tr:last-child>*{border-bottom:0}
.community-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px}.community-type-card{scroll-margin-top:170px;position:relative;overflow:hidden;padding:clamp(24px,3vw,36px);border:1px solid var(--line);border-top:5px solid var(--blue);border-radius:22px;background:#fff;box-shadow:var(--shadow2)}
.community-type-card--featured{border-top-color:var(--red)}.community-type-card--protected{grid-column:1/-1;border-top-color:#8b1e3f;background:linear-gradient(145deg,#fff,#fff5f7)}
.community-type-number{position:absolute;right:18px;top:12px;color:#e7eff8;font-size:3.4rem;font-weight:950;line-height:1}.community-type-card>div:first-of-type{position:relative;padding-right:60px}
.community-type-card h2{margin:.3rem 0 .65rem;color:var(--navy);font-size:clamp(1.35rem,2vw,2rem);line-height:1.08}.community-type-lead{color:#425d73;font-weight:650;line-height:1.65}
.community-type-card dl{display:grid;gap:8px;margin:18px 0 0}.community-type-card dl>div{padding:13px 14px;border-radius:13px;background:#f5f8fc}.community-type-card dt{color:var(--blue);font-size:.66rem;font-weight:950;letter-spacing:.07em;text-transform:uppercase}.community-type-card dd{margin:4px 0 0;color:var(--muted);font-size:.78rem;line-height:1.58}
.cav-distinction{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:30px;align-items:center;margin-top:16px;padding:clamp(26px,4vw,46px);border-radius:24px;background:linear-gradient(135deg,#4d1230,#8b1e3f);color:#fff}.cav-distinction h2{margin:.35rem 0;font-size:clamp(1.7rem,3vw,3rem);line-height:1}.cav-distinction p{margin:0;color:#ffe6ef;line-height:1.7}
.community-choice{margin-top:26px}.community-choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.community-choice-grid article{padding:21px;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:var(--shadow2)}.community-choice-grid b{color:var(--red);font-size:1.35rem}.community-choice-grid h3{margin:.5rem 0 .35rem;color:var(--navy)}.community-choice-grid p{margin:0;color:var(--muted);font-size:.76rem;line-height:1.55}
.community-sources{margin-top:18px;padding:clamp(24px,3.5vw,40px);border:1px solid var(--line);border-radius:22px;background:#fff}.community-sources h2{margin:.3rem 0}.community-sources p{max-width:1050px;color:var(--muted);line-height:1.65}.community-sources ul{display:grid;gap:8px;margin:18px 0 0;padding:0;list-style:none}.community-sources a{display:block;padding:12px 14px;border-radius:11px;background:#edf4fb;color:var(--blue);font-size:.76rem;font-weight:850;text-decoration:none}
.community-types-cta{margin-top:18px}
@media(max-width:1000px){.community-types-intro{grid-template-columns:1fr}.community-types-intro-heading{padding-right:0;padding-bottom:20px;border-right:0;border-bottom:1px solid var(--line)}.community-types-intro h2{max-width:none}.community-type-grid{grid-template-columns:1fr}.community-type-card--protected{grid-column:auto}.community-choice-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.community-guide-callout,.cav-distinction{grid-template-columns:1fr;flex-direction:column;align-items:flex-start}.community-types-intro{padding:22px 20px;gap:20px}.community-types-intro-copy{grid-template-columns:1fr;gap:12px}.community-types-intro h2{font-size:clamp(1.55rem,7vw,2rem)}.community-guide-callout>strong{width:100%;text-align:center}.community-types-nav{flex-wrap:nowrap;overflow-x:auto}.community-types-nav a{flex:0 0 auto}.community-choice-grid{grid-template-columns:1fr}.community-type-card{scroll-margin-top:110px}.community-type-card>div:first-of-type{padding-right:36px}.community-type-number{right:12px;font-size:2.5rem}}

/* CENTRO ETS 33 - HOME permanente e contenuto del menu scorrevole. */
.sidebar{display:flex!important;flex-direction:column!important;overflow:hidden!important}
.sidebar-home{position:relative;z-index:3;flex:0 0 auto;padding:0 0 7px;background:#fff;border-bottom:1px solid var(--line)}
.sidebar-home .nav-item{min-height:38px;background:#eef5ff;color:var(--blue);font-weight:950;text-transform:uppercase;letter-spacing:.035em}
.sidebar-home .nav-item:hover,.sidebar-home .nav-item.active{background:var(--blue);color:#fff}
.sidebar-scroll{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;padding-top:7px;padding-right:3px;overscroll-behavior:contain;scrollbar-gutter:stable}
.sidebar-scroll nav>.nav-item:first-child{min-height:31px;margin-bottom:0;background:transparent;color:#38546b;font-weight:780;text-transform:none;letter-spacing:normal}
.sidebar-scroll nav>.nav-item:first-child:hover,.sidebar-scroll nav>.nav-item:first-child.active{background:var(--blue);color:#fff}
.sidebar-scroll::-webkit-scrollbar{width:7px}.sidebar-scroll::-webkit-scrollbar-thumb{border-radius:10px;background:#b9cbe0}.sidebar-scroll::-webkit-scrollbar-track{background:transparent}

/* CENTRO ETS 33 - Card complete dei partner nella Home. */
.network-logos{align-items:stretch}
.network-logos .network-logo-card{display:flex;min-width:0;min-height:250px;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:16px;border:1px solid #e4edf6;text-align:left;transition:transform .2s ease,box-shadow .2s ease}
.network-logos .network-logo-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(5,42,80,.11)}
.network-logo-visual{display:grid;min-height:104px;place-items:center;padding:10px;border-radius:13px;background:#fff}
.network-logo-visual img{width:auto;max-width:92%;max-height:72px;object-fit:contain}
.network-logo-copy{display:flex;min-width:0;flex:1;flex-direction:column;padding:13px 4px 2px;color:var(--navy)}
.network-logo-copy strong{font-size:.92rem}.network-logo-copy span{margin-top:6px;color:var(--muted);font-size:.72rem;line-height:1.45}.network-logo-copy b{margin-top:auto;padding-top:11px;color:var(--blue);font-size:.7rem}

/* CENTRO ETS 33 - Archivio dinamico della rassegna stampa. */
.press-history-intro{margin-top:28px}.press-article-card{min-height:260px}.press-card-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.press-card-meta time{color:var(--muted);font-size:.7rem;font-weight:850;white-space:nowrap}.press-article-card>p{margin:.2rem 0 15px}.press-open{align-self:flex-start;margin-top:auto;min-height:40px;padding-inline:14px;font-size:.75rem}

@media(max-width:1080px){.sidebar{padding-top:90px!important}.sidebar-home{padding-top:0}.sidebar-scroll{padding-bottom:calc(18px + env(safe-area-inset-bottom))}}
@media(max-width:760px){.network-logos .network-logo-card{min-height:210px}.network-logo-copy span{font-size:.76rem}}
