/* Network Giovani: calm, readable, local assets. Emergency colours remain separate. */
:root{--ng-blue:#126899;--ng-blue-dark:#0c476b;--ng-teal:#08676f;--ng-ink:#173848;--ng-muted:#476270;--ng-light:#edf6fa;--ng-line:#c4dce5;--ng-gold:#f3c74e;--ng-white:#fff;--primary:#126899;--primary-dark:#0c476b;--ink:#173848;--muted:#476270;--brand:#126899;--mint:#e5f4f2;--green:#126899}
body.ng-site{background:#f8fbfd;color:var(--ng-ink)}.ng-site .container{max-width:1180px}.ng-site a{color:var(--ng-blue-dark)}.ng-site .button,.ng-site button.button{background:var(--ng-blue);border-color:var(--ng-blue);color:#fff}.ng-site .button:hover{background:var(--ng-blue-dark)}.ng-site .button.secondary{color:var(--ng-blue-dark);background:#fff;border:1px solid #82aebf}.ng-site .button.secondary:hover{background:#edf6fa}.ng-site :focus-visible{outline:3px solid #126899;outline-offset:3px}.ng-site .eyebrow{color:var(--ng-teal)}.ng-site h1,.ng-site h2,.ng-site h3{color:var(--ng-ink)}.ng-site .lede{color:var(--ng-muted)}
.ng-site .site-header{background:#fff;border-bottom:1px solid var(--ng-line)}.ng-site .header-inner{gap:1.3rem;min-height:92px}.ng-site .brand{gap:.75rem;min-width:0}.ng-site .brand-mark{width:64px;height:64px;flex:0 0 64px;background:transparent;box-shadow:none;border-radius:50%;overflow:hidden}.ng-site .brand-mark img{width:64px;height:64px;object-fit:contain}.ng-site .brand>span:last-child{color:var(--ng-ink);font-size:1.03rem;line-height:1.35}.ng-site .brand small{font-size:.73rem;font-weight:500;display:block;max-width:245px}.ng-site .nav-primary{gap:.2rem}.ng-site .nav-primary>li>a,.ng-site .nav-more>details>summary{font-size:.9rem;color:var(--ng-ink);padding:.65rem .65rem}.ng-site .nav-primary a[aria-current=page]{background:#e5f2f8;color:var(--ng-blue-dark);border-color:#9ac4d8}.ng-site .nav-more-panel{border-color:var(--ng-line)}.ng-site .nav-toggle{border-color:var(--ng-line);color:var(--ng-blue-dark);background:#fff}
.ng-site .emergency-strip{background:#fff0ec;color:#642e24;border-bottom-color:#efd2c9}.ng-site .emergency-strip a{color:#642e24}.ng-site .site-footer{background:#e9f3f7;color:var(--ng-ink);border-top:1px solid var(--ng-line)}.ng-site .footer-note{color:var(--ng-muted)}.ng-site .ux-footer-label{color:var(--ng-blue-dark)}
.ng-site .ux-hero,.ng-hero{background:linear-gradient(115deg,#edf5ff 0%,#f1fbfa 90%);border:1px solid var(--ng-line);border-radius:24px;box-shadow:none;margin:1.6rem 0;padding:2rem}.ng-site .ux-hero{grid-template-columns:minmax(0,1fr) 180px;gap:1.2rem}.ng-site .ux-hero h1{font-size:clamp(2.05rem,4vw,3.5rem);line-height:1.1;letter-spacing:-.035em}.ng-site .ux-hero h1 em{color:var(--ng-blue);font-style:normal}.ng-site .ux-mascot-frame{max-width:180px;justify-self:center}.ng-site .ux-mascot-frame .menta-figure{max-width:160px}.ng-site .ux-mascot-caption{color:var(--ng-muted);font-size:.82rem}.ng-site .ux-choice-grid{gap:1rem}.ng-site .ux-choice-card{border:1px solid var(--ng-line);box-shadow:none;background:#fff;padding:1.3rem;border-radius:18px}.ng-site .ux-choice-label{color:var(--ng-blue)}.ng-site .ux-choice-card h2{font-size:1.28rem}.ng-site .ux-choice-card p{color:var(--ng-muted)}.ng-map-entry{grid-column:1/-1;margin:.2rem 0 0;font-size:1rem}.ng-map-entry a{font-weight:700}.ng-site .ux-route-grid{gap:1rem}.ng-site .ux-route-card{background:#fff!important;border:1px solid var(--ng-line);box-shadow:none;border-radius:16px}.ng-site .ux-route-card:hover{border-color:var(--ng-blue);box-shadow:0 6px 18px #174c6612}.ng-site .ux-route-icon{color:var(--ng-blue);background:#edf6fa}.ng-site .ux-trust{background:#f0f6f8;border-color:var(--ng-line)}
.ng-site .svc-search,.ng-site .svc-card,.ng-site .directory-card,.ng-site .support-card,.ng-site .support-path,.ng-site .map-side-card{border-color:var(--ng-line);background:#fff;box-shadow:none}.ng-site .svc-search{border-radius:20px}.ng-site .svc-tag,.ng-site .pill{background:#e9f3f8;color:var(--ng-blue-dark);border-color:var(--ng-line)}.ng-site .svc-tag.private{background:#f0ebf7;color:#514164}.ng-site .svc-chip{background:#e8f3f8;color:var(--ng-blue-dark);border-color:var(--ng-line)}.ng-site .svc-advanced,.ng-site .svc-coverage-fold{background:#f5f9fb;border-color:var(--ng-line)}.ng-site .service-view-switch{background:#eef5f8;border-color:var(--ng-line)}.ng-site .service-view-switch a[aria-current=page]{background:#fff;color:var(--ng-blue-dark)}.ng-site .svc-intro h1 span{color:var(--ng-blue)}.ng-site .svc-intro{padding-bottom:1rem}.ng-site .svc-card-footer a{color:var(--ng-blue-dark)}.ng-site .svc-card-footer a.button{color:var(--ng-blue-dark)}
.ng-site .search-map-unified{background:#fff;border-color:var(--ng-line);box-shadow:none}.ng-site .map-view-choice button,.ng-site .map-hierarchy-toolbar button,.ng-site .map-choice-list button,.ng-site .map-breadcrumb button{color:var(--ng-blue-dark);border-color:#91b7c9}.ng-site .map-view-choice button[aria-pressed=true]{background:var(--ng-blue);color:#fff}.ng-site .map-choice-list button[aria-pressed=true]{border-color:var(--ng-blue);background:#e8f3f8;color:var(--ng-blue-dark)}.ng-site .map-breadcrumb,.ng-site .search-map-selected{background:#f0f6f9;border-color:var(--ng-line)}.ng-site .map-canvas.hierarchy-canvas{background:#f2f7f9;border-color:#9cbcc9}.ng-site .hierarchy-balloon>span{border-color:#126899;color:#123b51}.ng-site .hierarchy-pin span{background:#126899}.ng-site .hierarchy-pin.non-asl span{background:#675181}.ng-site .hierarchy-pin.unknown span{background:#766024}.ng-site .hierarchy-pin.group span{background:#0b5365}.ng-site .hierarchy-popup a{color:var(--ng-blue-dark)!important}.ng-site .map-mode-help,.ng-site .map-hierarchy-note,.ng-site .map-choice-help{color:var(--ng-muted)}
.ng-section{margin:2.2rem 0}.ng-section-header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap}.ng-section-header h2{font-size:1.6rem;margin:.2rem 0}.ng-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1rem}.ng-card{background:#fff;border:1px solid var(--ng-line);border-radius:18px;padding:1.2rem;display:flex;flex-direction:column;gap:.55rem;overflow-wrap:anywhere}.ng-card h2,.ng-card h3{font-size:1.18rem;margin:0}.ng-card p{margin:0;line-height:1.65}.ng-card img{width:100%;height:180px;object-fit:contain;background:#f1f7f9;border-radius:10px}.ng-card time{font-size:.83rem;color:var(--ng-muted)}.ng-card .button{align-self:flex-start;margin-top:auto}.ng-kicker{color:var(--ng-teal);font-size:.8rem;letter-spacing:.05em;font-weight:750;text-transform:uppercase}.ng-empty{padding:1.2rem;border:1px dashed var(--ng-line);border-radius:14px;background:#fff;color:var(--ng-muted);line-height:1.6}.ng-teaser{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.5rem;align-items:center;border:1px solid var(--ng-line);background:#fff;border-radius:18px;padding:1.6rem}.ng-teaser p{max-width:70ch}.ng-hero p{max-width:70ch}.ng-hero h1{font-size:clamp(2rem,4vw,3.2rem);margin:.35rem 0}.ng-hero-logo{float:right;width:110px;height:110px;margin:0 0 1rem 1.3rem;border-radius:50%}.ng-note{border-left:4px solid #e4bc43;background:#fff9e8;padding:1rem 1.1rem;line-height:1.65;border-radius:0 12px 12px 0}.ng-article{max-width:780px;margin:2rem auto;line-height:1.75}.ng-article>img{max-width:100%;max-height:500px;object-fit:contain;display:block;margin:1rem auto}.ng-article h1{line-height:1.2}.ng-article a{overflow-wrap:anywhere}.ng-article p{white-space:normal}.ng-page-links{display:flex;gap:1rem;flex-wrap:wrap}
.ng-banner{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;margin:1.5rem 0;padding:1rem 3.2rem 1rem 1.2rem;background:#eef8fa;border:1px solid #a7cedb;border-left:5px solid var(--ng-gold);border-radius:14px}.ng-banner img{width:100px;max-height:100px;object-fit:contain;border-radius:8px}.ng-banner h2{font-size:1.12rem;margin:.2rem 0}.ng-banner p{margin:.2rem 0;max-width:65ch;font-size:.95rem}.ng-banner .ng-dismiss{position:absolute;right:.35rem;top:.35rem;min-height:44px;min-width:44px;color:var(--ng-blue-dark);background:transparent;border:0;cursor:pointer;font-size:1.4rem}.ng-banner[hidden],.ng-site [hidden]{display:none!important}
.ng-freshness{display:flex;align-items:flex-start;gap:.4rem;font-size:.8rem!important;color:var(--ng-muted);line-height:1.5;margin:.8rem 0 0}.ng-freshness svg{width:16px;height:16px;min-width:16px;margin-top:2px;color:var(--ng-blue)}.ng-public-sources{font-size:.85rem;border-top:1px solid var(--ng-line);padding-top:.6rem}.ng-public-sources summary{cursor:pointer;min-height:44px;display:flex;align-items:center}.ng-public-sources a{overflow-wrap:anywhere}.ng-meta-muted{color:var(--ng-muted);font-size:.85rem}.ng-site .support-kicker{gap:.5rem}.ng-site .support-hero .eyebrow{font-size:.8rem}
.ng-admin{max-width:1120px;margin:0 auto;padding:1.2rem}.ng-admin-top{display:flex;justify-content:space-between;gap:1rem;align-items:center;flex-wrap:wrap}.ng-admin-nav{display:flex;gap:.6rem;flex-wrap:wrap;margin:1rem 0}.ng-admin-nav button{padding:.65rem 1rem;min-height:44px;border-radius:10px;border:1px solid var(--ng-line);background:#fff;color:var(--ng-blue-dark);font:inherit;cursor:pointer}.ng-admin-nav button[aria-pressed=true]{background:var(--ng-blue);color:#fff}.ng-admin-panel{background:#fff;border:1px solid var(--ng-line);padding:1.4rem;border-radius:18px;margin:1rem 0}.ng-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.ng-form-grid .wide{grid-column:1/-1}.ng-admin label{display:block;font-weight:650;margin:.3rem 0}.ng-admin input:not([type=checkbox]),.ng-admin select,.ng-admin textarea{width:100%;box-sizing:border-box;min-height:44px;padding:.7rem;border:1px solid #93b4c3;border-radius:8px;font:inherit;color:var(--ng-ink);background:#fff}.ng-admin textarea{min-height:100px}.ng-admin input[type=checkbox]{width:20px;height:20px;vertical-align:middle;margin-right:.5rem}.ng-admin button{cursor:pointer}.ng-admin .actions{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1rem}.ng-admin .ng-message{padding:1rem;background:#eaf5f8;border-radius:10px;line-height:1.55}.ng-admin .ng-message.error{background:#fff2ee;color:#742e20}.ng-admin-table{overflow:auto;max-width:100%}.ng-admin table{border-collapse:collapse;width:100%;font-size:.9rem}.ng-admin th,.ng-admin td{padding:.75rem;text-align:left;border-bottom:1px solid var(--ng-line);vertical-align:top;overflow-wrap:anywhere}.ng-admin th{background:#edf6fa}.ng-admin pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:500px;overflow:auto;font-size:.8rem}.ng-editor-toolbar{display:flex;gap:.4rem;flex-wrap:wrap;margin:.5rem 0}.ng-editor-toolbar button{min-height:40px;min-width:40px;border:1px solid var(--ng-line);border-radius:8px;background:#f3f8fa;color:var(--ng-blue-dark);padding:.4rem .7rem}.ng-preview{border:1px dashed #91b7c9;padding:1rem;border-radius:12px;background:#fafcfd}.ng-admin .ng-checkbox{display:flex;align-items:center;font-weight:400}.ng-fields{display:grid;gap:1rem}.ng-field{border:1px solid var(--ng-line);border-radius:12px;padding:1rem}.ng-field .ng-before{white-space:pre-wrap;color:var(--ng-muted);font-size:.9rem}.ng-admin .ng-role{font-size:.78rem;background:#edf6fa;border-radius:20px;padding:.25rem .6rem}.ng-admin .ng-small{font-size:.85rem;line-height:1.6;color:var(--ng-muted)}.ng-admin .ng-pick{max-height:440px;overflow:auto;border:1px solid var(--ng-line);border-radius:10px}.ng-admin .ng-pick button{display:block;width:100%;padding:.75rem;text-align:left;background:#fff;border:0;border-bottom:1px solid var(--ng-line);font:inherit;color:var(--ng-blue-dark)}.ng-admin .ng-pick button:hover{background:#edf6fa}.ng-admin img{max-width:100%}.ng-admin button:disabled{opacity:.6;cursor:wait}
@media(max-width:1040px){.ng-site .header-inner{flex-wrap:wrap;min-height:82px}.ng-site .nav-toggle{margin-left:auto}.ng-site.nav-enhanced #site-navigation,.nav-enhanced .ng-site #site-navigation{flex-basis:100%;width:100%}.nav-enhanced .ng-site #site-navigation[data-open=false]{display:none!important}.nav-enhanced .ng-site #site-navigation[data-open=true]{display:block}.ng-site .nav-primary{display:flex;flex-direction:column;align-items:stretch;width:100%}.ng-site .nav-primary>li{width:100%}.ng-site .nav-primary>li>a{display:block}.ng-site .nav-more-panel{position:static;max-width:100%;width:100%;box-shadow:none}.ng-site .brand-mark,.ng-site .brand-mark img{width:52px;height:52px}.ng-site .brand-mark{flex-basis:52px}}
@media(max-width:720px){.ng-site .ux-hero{grid-template-columns:minmax(0,1fr) 92px;padding:1.15rem;gap:.8rem}.ng-site .ux-hero h1{font-size:2.15rem}.ng-site .ux-hero .lede{font-size:1rem}.ng-site .ux-mascot-frame{width:92px;align-self:center}.ng-site .ux-mascot-frame .menta-figure{width:85px}.ng-site .ux-mascot-caption{font-size:.7rem}.ng-site .ux-choice-grid{grid-template-columns:1fr;grid-column:1/-1}.ng-site .ux-choice-card{padding:1.1rem}.ng-site .ux-route-grid,.ng-grid{grid-template-columns:1fr}.ng-teaser{grid-template-columns:1fr;padding:1.1rem}.ng-banner{grid-template-columns:minmax(0,1fr);padding:1rem 3.2rem 1rem 1rem}.ng-banner img{display:none}.ng-banner .button{justify-self:start}.ng-hero{padding:1.2rem}.ng-hero-logo{width:76px;height:76px}.ng-admin{padding:1rem .7rem}.ng-admin-panel{padding:1rem}.ng-form-grid{grid-template-columns:1fr}.ng-admin-nav button{flex:1}.ng-site .brand>span:last-child{font-size:.92rem}.ng-site .brand small{max-width:210px;font-size:.66rem}}
@media(prefers-reduced-motion:reduce){.ng-site *{scroll-behavior:auto!important}.ng-site .ng-card,.ng-site .ux-route-card{transition:none!important}}
@media print{.ng-admin-nav,.ng-banner,.ng-site .site-header,.ng-site .site-footer{display:none!important}.ng-site{background:#fff}.ng-admin-panel,.ng-card{break-inside:avoid;box-shadow:none}}

.ng-banner:not(:has(>img)){grid-template-columns:minmax(0,1fr) auto}.ng-freshness[data-state=warning] svg{color:#80600b}.ng-site .ng-admin-panel pre{white-space:pre-wrap;overflow-wrap:anywhere}.ng-site .ng-admin-panel select,.ng-site .ng-admin-panel input,.ng-site .ng-admin-panel textarea{max-width:100%}@media(max-width:650px){.ng-banner:not(:has(>img)){grid-template-columns:1fr}}
