
:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;color:#142a3d;background:#f5f7f8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{color:inherit}button,input,select{font:inherit}button{cursor:pointer}.wrap{max-width:1160px;margin:auto;padding:0 26px}.top{background:#10273c;color:#fff}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{text-decoration:none;display:flex;gap:11px;align-items:center;font-family:Georgia,serif;font-size:1.4rem;font-weight:700}.brandmark{background:#e8b86a;color:#10273c;border-radius:50%;width:35px;height:35px;display:grid;place-items:center}.navlinks{display:flex;align-items:center;gap:20px}.nav .small{color:#ccdae2;font-size:.9rem}.nav .small:hover{text-decoration:none}.intro{padding:42px 0 48px;border-top:1px solid #ffffff27}.kicker{font-weight:700;letter-spacing:.15em;text-transform:uppercase;font-size:.76rem;color:#e8b86a;margin:0 0 12px}h1,h2,h3{font-family:Georgia,serif;font-weight:400;letter-spacing:-.024em}h1{font-size:clamp(2.45rem,5vw,4.4rem);line-height:1.1;margin:0 0 13px}h2{font-size:1.8rem;margin:0 0 18px}h3{font-size:1.3rem;margin:0}.intro p:last-child{max-width:730px;color:#d7e2e9;line-height:1.58;font-size:1.05rem;margin:0}.main{padding:38px 0 68px}.toolbar{display:grid;grid-template-columns:1fr 235px;gap:11px;margin:0 0 17px}.toolbar input,.toolbar select{height:53px;width:100%;border:1px solid #cdd9df;border-radius:7px;background:white;color:#142a3d;padding:0 16px;outline:none}.toolbar :focus{border-color:#267298;box-shadow:0 0 0 3px #88bfd044}.toolbar input{padding-left:43px}.searchbox{position:relative}.searchbox:before{content:'';position:absolute;left:16px;top:17px;width:16px;height:16px;border:2px solid #657b88;border-radius:50%}.searchbox:after{content:'';position:absolute;left:30px;top:33px;width:7px;height:2px;background:#657b88;transform:rotate(45deg)}.summary{color:#526b7b;font-size:.9rem;margin:0 0 20px}.directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.entry{background:#fff;border:1px solid #dce4e8;border-radius:8px;padding:18px 20px;display:flex;justify-content:space-between;align-items:center;gap:15px;text-decoration:none;min-height:98px}.entry:hover,.entry:focus-visible,.resource:hover,.resource:focus-visible{border-color:#497f9e}.entry .region{color:#637b8b;text-transform:uppercase;font-size:.75rem;letter-spacing:.1em;font-weight:700;margin:0 0 6px}.entry strong{font-family:Georgia,serif;font-size:1.3rem;font-weight:400}.entry .name{display:block;color:#536b7a;font-size:.86rem;margin-top:4px;line-height:1.3}.entry .go{font-size:1.35rem;color:#316882}.hidden{display:none!important}.empty{border:1px solid #dce4e8;border-radius:8px;background:white;padding:24px;color:#536b7a}.sourcebar{background:#e8eef1;padding:25px 0;color:#405a6b;line-height:1.55;font-size:.9rem}.sourcebar a,.foot a{color:#a36828}.sourcebar p{margin:0}.foot{background:#10273c;color:#c5d6e0;padding:28px 0;font-size:.85rem;line-height:1.5}.foot p{margin:0}.contact-line{margin:0 0 10px!important}.contact-email{background:none;border:0;padding:0;color:#f2c880;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.contact-email:focus-visible{outline:2px solid #f2c880;outline-offset:3px}.back{display:inline-block;margin:0 0 24px;color:#436d85;text-decoration:none;font-size:.9rem}.back:hover{text-decoration:underline}.detail{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start}.detail h1{font-size:clamp(2.1rem,4vw,3.6rem);margin-bottom:9px}.detail .subtitle{font-size:1.08rem;color:#526b7b;line-height:1.5;margin:0 0 27px}.panel{background:white;border:1px solid #dbe4e8;border-radius:9px;padding:26px;margin-bottom:18px}.panel h2{font-size:1.5rem}.facts{display:grid;grid-template-columns:1fr 1fr;gap:22px 26px;margin:0}.fact dt{font-size:.76rem;text-transform:uppercase;letter-spacing:.095em;color:#667c8a;font-weight:700;margin-bottom:6px}.fact dd{margin:0;line-height:1.5;overflow-wrap:anywhere}.fact a,.linkrow a{color:#17618b;text-underline-offset:3px}.muted{color:#657b89}.linkrow{display:flex;justify-content:space-between;gap:20px;align-items:baseline;border-top:1px solid #e2e9ed;padding:15px 0}.linkrow:first-of-type{border-top:0}.linkrow strong{font-weight:600}.linkrow span{font-size:.87rem;color:#697d8b}.linkrow a{text-align:right;max-width:52%}.note{font-size:.85rem;line-height:1.5;color:#597081;margin:15px 0 0}.asidecard{background:#10273c;border-radius:9px;padding:25px;color:#fff;position:sticky;top:20px}.asidecard h2{font-size:1.55rem}.asidecard p{line-height:1.55;color:#d6e2e9;font-size:.9rem}.asidecard a{display:block;margin-top:14px;color:#f2c880;text-underline-offset:3px;font-size:.9rem;overflow-wrap:anywhere}.breadcrumb{color:#a8c1d1;font-size:.85rem;margin:0 0 9px}.breadcrumb a{text-decoration:none}.breadcrumb a:hover{text-decoration:underline}@media(max-width:760px){.wrap{padding:0 18px}.nav{height:69px}.brand{font-size:1.1rem}.nav .small{font-size:.8rem}.intro{padding:35px 0}.toolbar,.directory,.detail{grid-template-columns:1fr}.main{padding:27px 0 50px}.asidecard{position:static}.facts{grid-template-columns:1fr}.linkrow{display:block}.linkrow a{display:block;text-align:left;max-width:none;margin-top:6px}.panel{padding:21px}}

.news-intro{padding:46px 0 42px}.news-intro p:last-child{color:#d7e2e9;line-height:1.55;max-width:750px;margin:0}.news-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:18px}.news-head h2{margin:0}.news-head a,.news-more{color:#17618b;text-underline-offset:3px}.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.news-card{background:white;border:1px solid #dce4e8;border-radius:9px;padding:20px;display:flex;flex-direction:column;gap:13px;min-height:190px}.news-card:hover{border-color:#497f9e}.news-meta{display:flex;gap:9px;flex-wrap:wrap;color:#587081;font-size:.82rem}.news-category{color:#905b20;font-weight:700}.news-card h3{font-size:1.28rem;line-height:1.28;margin:0}.news-card h3 a{color:#142a3d;text-decoration:none}.news-card h3 a:hover{text-decoration:underline}.news-actions{margin-top:auto;display:flex;gap:15px;flex-wrap:wrap;font-size:.89rem}.news-actions a{color:#17618b;text-underline-offset:3px}.news-section{padding:36px 0;background:#eef3f5}.news-section .news-note,.news-note{color:#5b7380;font-size:.89rem;line-height:1.5;margin:17px 0 0}.section-heading{margin:0 0 22px}.section-heading h2{margin:0 0 7px}.section-heading p{color:#5b7380;margin:0;line-height:1.5}.news-page{padding:37px 0 65px}.news-page h1{font-size:clamp(2.2rem,4vw,3.6rem)}.news-controls{display:grid;grid-template-columns:minmax(0,1fr) 220px 220px;gap:10px;margin:23px 0 14px}.news-controls input,.news-controls select{width:100%;border:1px solid #cdd9df;border-radius:7px;background:white;padding:13px;color:#142a3d;min-height:50px}.news-feed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.detail-news{margin-top:18px}.detail-news .news-card{min-height:auto;margin-bottom:10px}.detail-news .news-card:last-child{margin-bottom:0}@media(max-width:850px){.news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.news-controls{grid-template-columns:1fr 1fr}.news-controls input{grid-column:1/-1}}@media(max-width:600px){.news-grid,.news-feed,.news-controls{grid-template-columns:1fr}.news-controls input{grid-column:auto}.news-head{align-items:start;flex-direction:column}.news-intro{padding:35px 0}}

.top,.foot{background:#182a3c}header.top{background:#000}.nav{min-height:86px;height:auto}.brand{gap:10px;min-width:0;flex-shrink:1}.brand-logo{display:block;width:56px;height:56px;object-fit:contain;flex:none}.brand-wordmark{display:block;width:min(36vw,352px);height:auto;min-width:0}.brand:focus-visible{outline:2px solid #ffe53d;outline-offset:4px}
@media(max-width:760px){.nav{min-height:0;padding:9px 0 11px;flex-wrap:wrap;gap:7px}.brand{width:100%;justify-content:center}.brand-logo{width:43px;height:43px}.brand-wordmark{width:min(72vw,314px)}.navlinks{width:100%;justify-content:center;gap:23px}}

.news-controls{grid-template-columns:minmax(0,1fr) repeat(4,minmax(135px,175px))}
@media(max-width:950px){.news-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.news-controls input{grid-column:1/-1}}
@media(max-width:600px){.news-controls{grid-template-columns:1fr}.news-controls input{grid-column:auto}}

.nav{position:relative}.navlinks{gap:5px}.navlinks a,.mobile-menu a{color:#e2e9ee;text-decoration:none;border-radius:6px;padding:10px 13px;font-size:.91rem}.navlinks a:hover,.navlinks a:focus-visible,.mobile-menu a:hover,.mobile-menu a:focus-visible{background:#fff2;color:white}.navlinks a[aria-current="page"],.mobile-menu a[aria-current="page"]{background:#fff2;color:white}.mobile-menu{display:none}
@media(max-width:1120px){.nav{flex-wrap:nowrap;justify-content:space-between;padding:10px 0;gap:8px}.brand{width:auto;justify-content:flex-start}.brand-logo{width:43px;height:43px}.brand-wordmark{width:min(44vw,250px)}.navlinks{display:none}.mobile-menu{display:block;flex:none}.mobile-menu summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:7px;border:1px solid #ffffff80;border-radius:7px;padding:9px 11px;font-size:.9rem}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary:focus-visible{outline:2px solid #f2c880;outline-offset:3px}.mobile-menu[open] summary{background:#fff2}.mobile-menu-links{position:absolute;right:0;top:calc(100% - 4px);z-index:50;width:min(270px,calc(100vw - 36px));background:#182a3c;border:1px solid #536676;border-radius:9px;box-shadow:0 12px 25px #0005;padding:8px;display:grid}.mobile-menu a{display:block}}

.law-intro{padding:40px 0 34px}.law-intro h1{font-size:clamp(2.2rem,4vw,3.6rem)}.law-intro p:last-child{max-width:780px}.law-page{padding-top:30px}.law-spotlight{background:#fff;border:1px solid #cfdae1;border-left:5px solid #b77c34;border-radius:8px;padding:25px 28px;margin-bottom:35px}.law-spotlight h2{margin:10px 0;font-size:1.8rem}.law-spotlight p{line-height:1.6;max-width:850px;margin:0 0 12px}.law-status{display:inline-block;color:#7b4b18;background:#fff0d9;border-radius:4px;padding:5px 9px;font-size:.85rem;font-weight:700}.law-links{display:flex;gap:12px 24px;flex-wrap:wrap;margin-top:17px}.law-links a,.law-entry a{color:#17618b;text-underline-offset:3px}.law-group{margin:0 0 39px}.law-group h2{font-size:1.65rem;margin-bottom:14px}.law-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.law-entry{background:white;border:1px solid #dce4e8;border-radius:8px;padding:20px 22px}.law-entry h3{font-size:1.2rem;line-height:1.3;margin:0 0 10px}.law-entry p{margin:0 0 14px;line-height:1.55;color:#405a6b}.law-entry a{font-size:.92rem}.law-caveat{border-top:1px solid #dce4e8;padding-top:19px;line-height:1.55;color:#536b7a;font-size:.92rem}@media(max-width:650px){.law-list{grid-template-columns:1fr}.law-spotlight{padding:20px}.law-intro{padding:34px 0}}

.about-intro{padding:42px 0 38px}.about-intro h1{font-size:clamp(2.4rem,4vw,3.8rem)}.about-intro p{max-width:820px;color:#d7e2e9;line-height:1.65;font-size:1.05rem}.about-intro p:last-child{margin:0}.about-page{max-width:880px;padding-top:42px}.about-section{margin:0 0 43px}.about-section h2{font-size:1.82rem;line-height:1.22;margin:0 0 19px}.about-section p{line-height:1.75;margin:0 0 17px;color:#344d5e;font-size:1.025rem}.about-section p:last-child{margin-bottom:0}.about-ending{border-top:1px solid #cbd8df;padding-top:26px;margin:12px 0 0;font-family:Georgia,serif;font-size:1.35rem;line-height:1.5;color:#142a3d}.about-ending strong{display:block;font-weight:400;font-size:1.75rem}@media(max-width:650px){.about-intro{padding:34px 0}.about-page{padding-top:32px}.about-section{margin-bottom:36px}.about-section h2{font-size:1.55rem}}

.home-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:900px}.home-choice{display:block;background:white;border:1px solid #dce4e8;border-radius:9px;padding:25px;text-decoration:none}.home-choice:hover,.home-choice:focus-visible{border-color:#497f9e;box-shadow:0 3px 14px #10273c13}.home-choice strong{display:block;font:400 1.55rem Georgia,serif;margin-bottom:8px}.home-choice span{display:block;line-height:1.55;color:#526b7b}@media(max-width:600px){.home-choices{grid-template-columns:1fr}.home-choice{padding:21px}}

.home-search{max-width:900px;margin:0 0 27px;position:relative}.home-search label{display:block;font-weight:700;margin-bottom:9px}.home-search input{width:100%;height:56px;padding:0 18px;border:1px solid #b9cbd5;border-radius:8px;background:#fff;color:#142a3d}.home-search input:focus-visible{outline:3px solid #88bfd0;outline-offset:2px}.search-results{position:absolute;z-index:20;top:100%;left:0;right:0;background:#fff;border:1px solid #cbd8df;border-radius:8px;box-shadow:0 12px 28px #10273c26;max-height:400px;overflow:auto;margin-top:5px}.search-results a{display:block;padding:12px 16px;text-decoration:none;border-bottom:1px solid #e7ecef}.search-results a:last-child{border-bottom:0}.search-results a:hover,.search-results a:focus-visible{background:#eef5f8;outline:none}.search-results small{display:block;color:#587081;margin-bottom:3px}.search-results strong{display:block;line-height:1.35}.search-results p{margin:0;padding:15px;color:#526b7b}.pagination{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap;margin:24px 0}.pagination button,.pagination span{min-width:42px;padding:9px 12px;border:1px solid #cbd8df;background:#fff;border-radius:6px;text-align:center;color:#17618b}.pagination button[aria-current=page]{background:#182a3c;color:#fff;border-color:#182a3c}.pagination button:disabled{opacity:.45;cursor:default}.pagination .ellipsis{border:0;background:transparent;min-width:0}
@media(max-width:1120px){.wrap{padding-left:34px;padding-right:34px}.intro h1,.detail h1,.news-page h1,.law-intro h1,.about-intro h1{overflow-wrap:anywhere}}
@media(max-width:600px){.wrap{padding-left:24px;padding-right:24px}.intro h1{font-size:clamp(2rem,10vw,3.1rem)}.panel{padding:18px}.mobile-menu-links{width:min(270px,calc(100vw - 48px))}}

/* Normativa: navigazione e filtro tematico */
.law-jump{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 22px}.law-jump a{padding:9px 14px;border:1px solid #dce4e8;background:#fff;border-radius:6px;color:#17618b;text-decoration:none}.law-jump a:hover,.law-jump a:focus-visible{border-color:#17618b;text-decoration:underline}.law-filter{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#eaf0f3;border:1px solid #d5e0e5;border-radius:8px;padding:14px 18px;margin-bottom:28px}.law-filter label{font-weight:700}.law-filter select{min-width:230px;max-width:100%;padding:9px 12px;border:1px solid #aebfc8;border-radius:5px;background:#fff;color:#173248;font:inherit}.law-filter p{margin:0;color:#526b7a;font-size:.9rem}.law-section-heading{font-size:1.8rem;margin:10px 0 20px;scroll-margin-top:24px}.law-parliament{border-top:1px solid #dce4e8;padding-top:26px;scroll-margin-top:24px}.law-section-intro{color:#405a6b;line-height:1.6;max-width:850px;margin:0 0 20px}.law-bill-tag{display:inline-block;font-weight:700;font-size:.82rem;letter-spacing:.03em;color:#7b4b18;background:#fff0d9;padding:5px 8px;border-radius:4px;margin-bottom:12px}.law-bill .law-bill-state{font-size:.93rem;color:#263f50;border-top:1px solid #e3e9ec;padding-top:10px}.law-page [hidden]{display:none!important}@media(max-width:650px){.law-filter{align-items:stretch;flex-direction:column}.law-filter select{width:100%}}

/* News: narrow screens and long official titles */
.news-page .news-controls input,.news-page .news-controls select{min-width:0}
.news-page .news-card{min-width:0}
.news-page .news-card h3,.news-page .news-meta a{overflow-wrap:anywhere}
@media(max-width:600px){.news-page .news-controls,.news-page .news-feed{grid-template-columns:minmax(0,1fr)}}

.school-news a{overflow-wrap:anywhere}

/* Official institutional social profiles */
.social-panel .note{margin:0 0 16px}.social-links{display:flex;flex-wrap:wrap;gap:10px}.social-links a{display:inline-flex;align-items:center;justify-content:center;gap:8px;max-width:100%;min-height:44px;padding:10px 15px;border:1px solid #cdd9df;border-radius:7px;background:#f5f7f8;color:#17618b;text-decoration:none;overflow-wrap:anywhere}.social-links a:hover{border-color:#17618b;background:#eaf0f3}.social-links a:focus-visible{outline:2px solid #17618b;outline-offset:3px}

/* Social ufficiali: icone e nomi, 6 ottobre 2026 */
.social-links .social-icon{display:block;flex:0 0 21px;width:21px;height:21px;fill:currentColor}
.social-links .social-name{white-space:nowrap}
.social-links .social-external{font-size:14px}
@media(max-width:440px){.social-links a{flex:1 1 calc(50% - 10px);min-width:0;padding:10px 8px}}

/* Keep long imported news titles within narrow screens. */
.panel li,.panel li a{overflow-wrap:anywhere;word-break:normal}
