/* Fluid layout and admin-managed navigation/widget surfaces. */
.standards-portal{--border:#d9e3f3;--pale:#e9f0ff;background:linear-gradient(135deg,#edf3ff 0%,#f2f0fb 48%,#e8f4f5 100%)}
.standards-portal .portal-container{width:100%;max-width:none;padding-inline:clamp(14px,2vw,36px);margin-inline:0}
.top-contact-bar{background:#0E29CD;color:#fff}
.top-contact-bar .utility-bar{color:#fff;min-height:38px;gap:20px;padding-block:8px;font-size:.72rem}
.top-contact-links{display:flex;flex-wrap:wrap;gap:20px;min-width:0}.top-contact-links a{display:flex;align-items:center;gap:8px;overflow-wrap:anywhere}.top-contact-bar a:hover{color:#fff;text-decoration:underline}.top-contact-bar .utility-links{gap:0}.top-contact-bar .utility-links>time{padding-right:16px}.top-contact-bar .utility-links>a,.top-contact-bar .utility-links>button,.top-contact-bar .language-label{border-color:#ffffff40;color:#fff}
.standards-portal .identity-row{padding-block:24px;gap:28px;min-height:114px;background:linear-gradient(100deg,#fff 45%,#f0f5ff 100%)}
.standards-portal .brand{max-width:54%;gap:17px}.standards-portal .brand strong{font-size:clamp(1rem,1.6vw,1.5rem);color:#000;line-height:1.3;letter-spacing:-.025em}.standards-portal .institution-name{color:#000;font-size:.74rem;margin-bottom:6px}.standards-portal .identity-contact{max-width:360px;font-size:.76rem}.standards-portal .integrity-commitment{background:#fff;border:1px solid #dce4f6;padding:12px 18px;border-radius:12px}
.standards-portal .main-navigation{background:#0E29CD;box-shadow:0 4px 18px #0d24721a}
.main-navigation .admin-menu{justify-content:flex-start;gap:5px;flex-wrap:wrap}.admin-menu,.menu-children{list-style:none;margin:0;padding:0}.menu-item{position:relative;min-width:0}.menu-row{display:flex;align-items:stretch;min-width:0}.menu-row .menu-link{flex:1;min-width:0}.main-navigation .menu-link.nav-link{padding:17px 13px!important;font-size:.85rem!important;line-height:1.4;min-height:52px;white-space:normal;font-weight:550}.main-navigation .menu-link.nav-link:before{background:#f7b538;left:13px;right:13px;height:3px;bottom:6px;border-radius:6px}.main-navigation .menu-row:hover,.main-navigation .menu-depth-0.is-open>.menu-row{background:#ffffff10}.main-navigation .menu-depth-0.is-open>.menu-row .nav-link{color:#ffcc70}.main-navigation .menu-depth-0.is-open>.menu-row .nav-link:before{transform:scaleX(1)}
.menu-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;background:transparent;color:inherit;font:inherit}.menu-toggle i{font-size:.65rem;transition:transform .2s}.menu-toggle[aria-expanded=true]>i{transform:rotate(180deg)}.menu-arrow{flex-shrink:0;justify-content:center;width:38px;padding:0;color:#f1f4ff}.menu-toggle.menu-link{width:100%;text-align:left}.menu-label{cursor:default}.menu-children[hidden]{display:none!important}
.menu-level-1{position:absolute;left:0;top:100%;width:330px;max-width:calc(100vw - 28px);max-height:calc(100dvh - 100px);overflow-y:auto;border:1px solid #dce4f2;background:#fff;border-radius:0 0 13px 13px;box-shadow:0 16px 40px #081a4c24;padding:13px 8px;z-index:1040;animation:menuEnter .18s ease-out}.menu-align-end>.menu-level-1{left:auto;right:0}.menu-children .menu-link{font-size:.86rem;line-height:1.6;padding:10px 12px;white-space:normal;color:#222e44;border-radius:7px;background:transparent;display:flex;align-items:center;gap:7px;overflow-wrap:anywhere}.menu-children .menu-arrow{color:#475773;width:38px}.menu-children .menu-row{border-radius:7px}.menu-children .menu-row:hover{background:#eaf0ff}.menu-children .menu-link.active{color:#0E29CD;font-weight:650;background:#eef2ff}.menu-children .is-open>.menu-row{background:#edf2ff}.menu-children .is-open>.menu-row .menu-link{color:#142cac}.menu-level-2,.menu-level-3,.menu-children .menu-children{position:static;margin:2px 5px 7px 18px;border-left:2px solid #a8bae9;padding:3px 0 3px 5px;background:#f5f8ff;border-radius:0 7px 7px 0}.menu-level-2 .menu-link{font-size:.8rem}.menu-level-3 .menu-link{font-size:.77rem}.menu-empty{padding:16px 0;color:#fff;font-size:.85rem}
.standards-portal .homepage{padding-top:24px;padding-bottom:28px}.standards-portal .homepage-columns{grid-template-columns:minmax(0,1fr) minmax(290px,350px);gap:24px}.hero-widget-zone:empty{display:none}.hero-widget-zone .cms-widget{margin:0;padding:0;border:0;background:none;box-shadow:none}.hero-widget-zone .cms-widget-title{background:#11256b;color:#fff;padding:14px 25px;margin:0;border-radius:12px 12px 0 0}.portal-hero-carousel{border-radius:12px;min-height:410px;box-shadow:0 8px 30px #133d8614}.portal-hero-carousel .hero-copy{max-width:780px}.portal-hero-carousel .hero-copy h1,.portal-hero-carousel .hero-copy h2{font-size:clamp(1.8rem,2.6vw,3rem);line-height:1.28;max-width:720px;color:#fff}.portal-hero-carousel .hero-copy p{font-size:.95rem;max-width:570px}.portal-hero-carousel .hero-image{width:58%;object-position:center 22%}.portal-hero-carousel .hero-shade{background:linear-gradient(90deg,#176CEA 0%,#176CEAf5 32%,#176CEAb8 53%,#176CEA10 90%)}
.widget-zone{min-width:0}.widget-zone .cms-widget,.portal-widget{border:1px solid #d8e3f2;border-radius:13px;padding:22px;box-shadow:0 6px 20px #22387607;overflow-wrap:anywhere;min-width:0;background:linear-gradient(120deg,#e6edff,#f0f4ff)}.widget-zone .cms-widget{margin-bottom:0}.widget-zone .cms-widget-title,.portal-widget>.section-heading h2{font-size:1.12rem;line-height:1.5;font-weight:700;color:#172967;margin:0 0 18px;letter-spacing:-.02em}.widget-zone .cms-widget-title:before{content:'';display:inline-block;width:5px;height:20px;background:#244bd4;border-radius:4px;vertical-align:middle;margin-right:10px}.widget-zone .cms-widget a{color:inherit}.widget-zone .cms-widget a:hover{color:var(--blue)}
.widget-zone--main{display:flex;flex-direction:column;gap:22px}.widget-zone--main>section:nth-child(4n+2),.widget-zone--main>.widget-position:nth-child(4n+2) .cms-widget{background:linear-gradient(130deg,#e1f1f1,#f1f9f7);border-color:#c8e1e1}.widget-zone--main>section:nth-child(4n+3),.widget-zone--main>.widget-position:nth-child(4n+3) .cms-widget{background:linear-gradient(120deg,#ece5ff,#f5f1fe);border-color:#dcd0f2}.widget-zone--main>section:nth-child(4n+4),.widget-zone--main>.widget-position:nth-child(4n+4) .cms-widget{background:linear-gradient(120deg,#fff0d8,#fff8ec);border-color:#edddbb}.widget-zone--main .cms-widget:nth-child(4n+2){background:linear-gradient(130deg,#e1f1f1,#f1f9f7);border-color:#c8e1e1}.widget-zone--main .cms-widget:nth-child(4n+3){background:linear-gradient(120deg,#ece5ff,#f5f1fe);border-color:#dcd0f2}.widget-zone--main .cms-widget:nth-child(4n+4){background:linear-gradient(120deg,#fff0d8,#fff8ec);border-color:#edddbb}
.widget-position{display:flex;flex-direction:column;gap:22px;min-width:0}.widget-zone--sidebar{display:flex;flex-direction:column;gap:20px}.widget-zone--sidebar .cms-widget,.widget-zone--sidebar .portal-widget{background:#e5ecff;padding:21px;border-color:#cedaf4}.widget-zone--sidebar .cms-widget-title{font-size:1.02rem}.widget-zone--sidebar .widget-position:nth-child(even) .cms-widget{background:#e1f1ed;border-color:#cbe1db}.widget-zone--sidebar .public-index{border-color:#bcd0ed}.widget-zone .cms-link-item{background:#ffffffa8;border-color:#cddbf2;border-radius:10px}.widget-zone .cms-link-icon{background:#dfe8ff}.widget-zone .cms-link-items{gap:13px}.widget-zone .cms-link-item strong{font-size:.86rem}.widget-zone .cms-link-description{font-size:.76rem;line-height:1.65;color:#4a5c78}.widget-zone--main .cms-links--cards .cms-link-items{grid-template-columns:repeat(4,minmax(0,1fr))}.widget-zone--main .cms-links--cards .cms-link-item{padding:18px 12px;align-items:flex-start;text-align:left}.widget-zone--sidebar .cms-link-items{grid-template-columns:1fr}.widget-zone--sidebar .cms-link-item{padding:13px;align-items:center;text-align:left;flex-direction:row;min-height:70px}.widget-zone--sidebar .cms-link-icon{width:40px;height:40px;font-size:1.3rem}.widget-zone .cms-news-item{min-width:0}.widget-zone .cms-news-item h3,.widget-zone .cms-news-item p{overflow-wrap:anywhere}.widget-zone .cms-news-item p{font-size:.83rem;color:#485d76}.widget-zone .cms-news-item time{color:#4a5c78}.widget-zone .cms-news-featured img{height:auto;aspect-ratio:2/1;object-fit:cover}.widget-zone .cms-news-grid{gap:20px}.widget-zone .cms-rich-content>p:last-child{margin-bottom:0}.widget-zone .cms-empty{padding:12px 15px;background:#ffffff9c;border-radius:9px;color:#425777;font-size:.82rem}
.standards-portal .inner-page{padding-block:24px}.standards-portal .inner-layout{grid-template-columns:minmax(0,1fr) minmax(290px,350px);gap:24px}.inner-layout--no-sidebar{grid-template-columns:1fr!important}.standards-portal .article-page,.standards-portal .standard-catalog-card,.standards-portal .collection-page{background:linear-gradient(135deg,#f6f8ff,#edf4fc)}.standards-portal .standard-children a{background:#e5edff;border-color:#c8d6f1}
.standards-portal .site-footer{background:linear-gradient(110deg,#1135b7,#176CEA);margin-top:0}.widget-zone--footer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;padding-block:36px}.widget-zone--footer .cms-widget,.widget-zone--footer .portal-widget{background:#ffffff0e;border-color:#ffffff30;color:#fff;padding:24px;box-shadow:none}.widget-zone--footer .cms-widget-title{color:#fff;font-size:1.08rem}.widget-zone--footer .cms-widget-title:before{background:#ffce76}.widget-zone--footer .cms-rich-content a,.widget-zone--footer .cms-widget a,.widget-zone--footer .cms-rich-content p{color:#fff}.widget-zone--footer .cms-widget a:hover{color:#fff}.widget-zone--footer .footer-contact{font-size:.83rem;line-height:1.8}.widget-zone--footer .footer-map{height:210px}.widget-zone--footer .cms-widget .footer-social-list a{color:#fff}.widget-zone--footer .cms-widget .source-note{color:#edf2ff}.copyright{background:#092b9f}.high-contrast .widget-zone .cms-widget,.high-contrast .portal-widget{background:#fff;border-color:#333}.high-contrast .widget-zone--footer .cms-widget{color:#111}.high-contrast .widget-zone--footer .cms-widget a,.high-contrast .widget-zone--footer .cms-widget-title{color:#111}
@keyframes menuEnter{from{opacity:0}to{opacity:1}}
.widget-zone .section-heading .cms-widget-title{margin:0}.widget-zone .standard-access-card{background:linear-gradient(135deg,#ffffffd9,#ffffff85);border-color:#c6d5ed}.widget-zone .standard-access-card:hover{background:#fff;border-color:#819be0;box-shadow:0 5px 18px #1734660c}.widget-zone .standard-access-card .icon-box{background:#dce7ff;color:var(--link-accent,var(--blue))}.widget-zone--main>[data-widget-position="home"]>.cms-widget:nth-child(4n+1){background:linear-gradient(120deg,#e6edff,#f0f4ff);border-color:#d8e3f2}.widget-zone--main>[data-widget-position="home"]>.cms-widget:nth-child(4n+2){background:linear-gradient(130deg,#e1f1f1,#f1f9f7);border-color:#c8e1e1}.widget-zone--main>[data-widget-position="home"]>.cms-widget:nth-child(4n+3){background:linear-gradient(120deg,#ece5ff,#f5f1fe);border-color:#dcd0f2}.widget-zone--main>[data-widget-position="home"]>.cms-widget:nth-child(4n+4){background:linear-gradient(120deg,#fff0d8,#fff8ec);border-color:#edddbb}.portal-list-link .portal-link-body{display:flex;flex:1;flex-direction:column;gap:3px;min-width:0}.portal-list-link strong{font-size:.82rem}.portal-list-link small{font-size:.72rem;color:#4a5c78}.portal-list-link .icon-box{width:37px;height:37px;background:#d7e3ff}.portal-list-link .service-arrow{position:static;flex-shrink:0}.portal-block-more{display:flex;justify-content:flex-end;margin-top:16px;color:#1239b9;font-size:.78rem;font-weight:600}.sitemap-tree,.sitemap-tree ul{list-style:none;padding-left:0;margin:0}.sitemap-tree ul{padding-left:18px;border-left:2px solid #d8e3f7;margin-left:8px}.sitemap-tree a{display:block;padding:8px 12px;font-size:.86rem;color:#142cac}.sitemap-tree a:hover{background:#edf2ff}.sitemap-tree>li>a{font-weight:650}.sitemap-links{max-height:70vh;overflow:auto}
@media(min-width:1600px){.standards-portal .homepage-columns,.standards-portal .inner-layout{grid-template-columns:minmax(0,1fr) 380px}.widget-zone .cms-widget{padding:26px}.portal-hero-carousel .hero-copy{padding-left:58px}}
@media(max-width:1199.98px){.top-contact-bar .utility-links>time{display:none}.standards-portal .brand{max-width:50%}.standards-portal .identity-contact{max-width:300px}.main-navigation .menu-link.nav-link{font-size:.79rem!important;padding-inline:10px!important}.menu-arrow{width:30px}.widget-zone--main .cms-links--cards .cms-link-items{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:991.98px){.standards-portal .brand{max-width:60%}.standards-portal .identity-row{gap:20px}.main-navigation .admin-menu{flex-direction:column;gap:3px;padding-block:8px}.main-navigation .menu-row{width:100%}.menu-level-1{position:static;width:100%;max-width:100%;max-height:none;border-radius:8px;box-shadow:none;margin-bottom:5px}.menu-arrow{width:45px}.main-navigation .menu-link.nav-link{padding:14px!important;font-size:.9rem!important}.standards-portal .homepage-columns,.standards-portal .inner-layout{grid-template-columns:minmax(0,1fr) 290px;gap:18px}.widget-zone--main .cms-links--cards .cms-link-items{grid-template-columns:repeat(2,minmax(0,1fr))}.widget-zone .cms-news-grid{grid-template-columns:1fr}.cms-news-featured{grid-row:auto}.widget-zone--footer{gap:18px;grid-template-columns:1fr 1fr}.widget-zone--footer>.cms-widget:last-child{grid-column:1/-1}}
@media(max-width:767.98px){.standards-portal .portal-container{padding-inline:14px}.top-contact-bar .utility-bar{flex-wrap:wrap;gap:8px;font-size:.68rem;padding-block:9px;justify-content:space-between}.top-contact-links{gap:6px 16px;flex-wrap:wrap}.top-contact-bar .utility-links{width:100%;justify-content:flex-end}.top-contact-bar .utility-links>button{padding-left:0;border-left:0}.top-contact-bar .language-label{font-size:.62rem}.standards-portal .identity-row{padding-block:20px;flex-wrap:wrap;gap:12px}.standards-portal .brand{max-width:100%}.standards-portal .brand strong{font-size:1.05rem}.standards-portal .institution-name{font-size:.59rem}.standards-portal .identity-contact{max-width:100%;font-size:.69rem}.standards-portal .identity-contact>div{display:none}.standards-portal .homepage{padding-top:16px}.standards-portal .homepage-columns,.standards-portal .inner-layout{grid-template-columns:1fr;gap:20px}.portal-hero-carousel .hero-image{width:100%;opacity:.45}.portal-hero-carousel .hero-shade{background:linear-gradient(90deg,#176CEAf5,#176CEAc0)}.portal-hero-carousel .hero-copy h1,.portal-hero-carousel .hero-copy h2{font-size:1.8rem}.portal-hero-carousel .hero-copy p{font-size:.86rem}.portal-hero-carousel .hero-copy{padding:30px 24px 80px}.widget-zone .cms-widget,.portal-widget{padding:19px 16px}.widget-zone .cms-widget-title{font-size:1.04rem}.widget-zone--main .cms-links--cards .cms-link-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.widget-zone--main .cms-links--cards .cms-link-item{padding:14px 10px}.widget-zone .cms-link-icon{width:42px;height:42px;font-size:1.5rem}.widget-zone .cms-link-description{font-size:.73rem}.widget-zone--footer{grid-template-columns:1fr;gap:18px;padding-block:26px}.widget-zone--footer>.cms-widget:last-child{grid-column:auto}.menu-children .menu-link{font-size:.87rem;padding-block:12px}.menu-level-2,.menu-children .menu-children{margin-left:12px}.widget-zone .cms-news-item img{flex-shrink:0}.widget-zone .cms-news-item>div{min-width:0}.widget-zone .video-small{min-width:0}}
.large-text .standards-portal .brand{max-width:100%}.large-text .homepage-columns,.large-text .inner-layout{grid-template-columns:1fr}.large-text .admin-menu{flex-direction:column}.large-text .menu-row{width:100%}.large-text .menu-level-1{position:static;width:100%;max-width:100%;max-height:none;box-shadow:none;margin-bottom:8px}.large-text .menu-link.nav-link{white-space:normal}.large-text .widget-zone--footer{grid-template-columns:1fr}.large-text .widget-zone--main .cms-links--cards .cms-link-items{grid-template-columns:repeat(2,minmax(0,1fr))}.large-text .widget-zone .cms-news-grid{grid-template-columns:1fr}.large-text .widget-zone .cms-news-item img{width:80px;height:70px}.large-text .widget-zone .cms-news-featured img{width:100%;height:auto}.large-text .utility-bar{flex-wrap:wrap}.large-text .top-contact-links{flex-wrap:wrap}.large-text .brand{max-width:100%}
@media(max-width:767.98px){.large-text .widget-zone--main .cms-links--cards .cms-link-items{grid-template-columns:1fr}.large-text .top-contact-links a{max-width:100%;overflow-wrap:anywhere}.large-text .cms-news-item{flex-wrap:wrap}.large-text .portal-hero-carousel .hero-copy h1,.large-text .portal-hero-carousel .hero-copy h2{font-size:1.5rem}.large-text .widget-zone--sidebar{display:flex}}
@media(prefers-reduced-motion:reduce){.menu-level-1{animation:none}}
.reduce-motion .menu-level-1{animation:none}
.homepage-columns--no-sidebar{grid-template-columns:minmax(0,1fr)!important}
.inner-layout>div>.content-panel{background:linear-gradient(135deg,#edf2ff,#f0f8fa);border-color:#d0def1}.inner-layout .page-title{color:#172967}.menu-level-1{border-radius:12px}
.widget-zone--footer .portal-widget>.section-heading h2{color:#fff}.high-contrast .widget-zone--footer .portal-widget>.section-heading h2{color:#111}

/* Fixed desktop flyouts remain visible outside a scrollable parent dropdown. */
@media(min-width:992px){
  body:not(.large-text) .admin-menu .menu-children .menu-children{position:fixed;left:0;top:0;width:314px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow-y:auto;margin:0;padding:8px;border:1px solid #dce4f2;border-radius:12px;background:#fff;box-shadow:0 16px 40px #081a4c24;z-index:1041;animation:menuEnter .18s ease-out}
  body:not(.large-text) .menu-children .menu-toggle>i{transform:rotate(-90deg)}
  body:not(.large-text) .menu-children .menu-flyout-left>.menu-row .menu-toggle>i{transform:rotate(90deg)}
}
@media(prefers-reduced-motion:reduce){.admin-menu .menu-children .menu-children{animation:none!important}}
.reduce-motion .admin-menu .menu-children .menu-children{animation:none!important}

/* Image-only banners follow the legacy slider's full-width presentation. */
.portal-hero-carousel .hero-slide--image-only .hero-image{width:100%;opacity:1;object-position:center}
.portal-hero-carousel .hero-image-link{position:absolute;inset:0;display:block}
.portal-hero-carousel .hero-image-link:focus-visible{outline:3px solid #ffc857;outline-offset:-3px;z-index:1}

/* Full-width welcome slider and CMS services above the footer. */
.standards-portal .dynamic-homepage{padding-top:0}
.dynamic-homepage .hero-widget-zone{margin-inline:calc(-1 * clamp(14px,2vw,36px))}
.dynamic-homepage .portal-hero-carousel{border-radius:0;box-shadow:none;background:#1429ce}
.dynamic-homepage .portal-hero-carousel,.dynamic-homepage .portal-hero-carousel .carousel-inner,.dynamic-homepage .portal-hero-carousel .carousel-item{min-height:520px}
.dynamic-homepage .portal-hero-carousel .hero-image{width:100%;opacity:1;object-fit:cover;object-position:center}
.dynamic-homepage .portal-hero-carousel .hero-shade{background:linear-gradient(90deg,#1429cef5 0%,#1429cedb 36%,#1429ce8c 68%,#1429ce33 100%)}
.dynamic-homepage .portal-hero-carousel .hero-copy{max-width:1050px;padding:88px clamp(32px,3vw,58px) 120px;pointer-events:none}
.dynamic-homepage .portal-hero-carousel .hero-copy h1{font-size:clamp(2rem,2.6vw,3rem);line-height:1.25;max-width:920px;margin:16px 0 20px;font-weight:800;letter-spacing:-.025em}
.dynamic-homepage .portal-hero-carousel .hero-copy p{max-width:860px;font-size:1rem;line-height:1.75;margin-bottom:28px;color:#e7ebff}
.dynamic-homepage .portal-hero-carousel .eyebrow{display:inline-flex;align-items:center;gap:8px;background:#ffffff20;border:1px solid #ffcc4059;border-radius:30px;padding:6px 14px;color:#ffce32;font-size:.75rem;letter-spacing:.05em;margin:0}
.hero-slide-link{position:absolute;inset:0;z-index:1}
.hero-actions{display:flex;flex-wrap:wrap;gap:16px;pointer-events:auto}
.hero-action{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:50px;min-height:54px;padding:14px 24px;font-weight:700;font-size:.88rem;transition:background .2s,transform .2s}
.hero-action--primary{background:#ffca05;color:#171d33;border:1px solid #ffca05}.hero-action--primary:hover{background:#ffda45;color:#171d33;transform:translateY(-2px)}
.hero-action--outline{color:#fff;border:1px solid #fff;background:transparent}.hero-action--outline:hover{background:#ffffff20;color:#fff;transform:translateY(-2px)}
.dynamic-homepage .portal-hero-carousel .hero-controls{left:50%;right:auto;bottom:76px;transform:translateX(-50%);z-index:4}
.dynamic-homepage .hero-controls .carousel-indicators button,.dynamic-homepage .hero-controls .carousel-indicators button.active{width:16px;height:16px;border-radius:50%;margin:8px 4px}
.hero-step{position:absolute;z-index:4;top:50%;transform:translateY(-50%);width:36px;height:48px;border:1px solid #ffffff40;border-radius:30px;background:#0c1d8540;color:#fff;opacity:0;transition:opacity .2s,background .2s}
.hero-step--previous{left:8px}.hero-step--next{right:8px}.portal-hero-carousel:hover .hero-step,.portal-hero-carousel:focus-within .hero-step{opacity:1}.hero-step:hover{background:#0c1d8599}
.hero-action:focus-visible,.hero-step:focus-visible,.portal-links--carousel .standard-access-card:focus-visible{outline:3px solid #ffcf3a;outline-offset:4px}
.home-bottom-widget-zone{position:relative;width:100%;max-width:none;margin:0;padding:36px clamp(14px,2vw,36px);background:#eef2ff;gap:18px;min-width:0}
.home-bottom-widget-zone .cms-widget{padding:0;border:0;background:transparent;box-shadow:none}
.portal-links--carousel .standard-access-grid{--service-count:4;--service-gap:24px;display:flex;gap:var(--service-gap);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-block:6px 14px}
.portal-links--carousel .standard-access-grid::-webkit-scrollbar{display:none}
.portal-links--carousel .standard-access-card{display:flex;flex:0 0 calc((100% - (var(--service-count) - 1) * var(--service-gap)) / var(--service-count));scroll-snap-align:start;flex-direction:column;align-items:center;justify-content:center;gap:18px;min-height:182px;padding:24px 16px;border:1px solid #ffffff90;border-radius:14px;background:linear-gradient(180deg,#ffffffb8,#fffffff5);backdrop-filter:blur(12px);color:#172033;text-align:center;box-shadow:0 5px 14px #1228870c;transition:background .2s,box-shadow .2s}
.portal-links--carousel .standard-access-card:hover{background:#fff;color:#172033;border-color:#dce3f5;box-shadow:0 7px 18px #12288718}
.portal-links--carousel .standard-access-card .icon-box{background:#fff4e3;color:var(--secondary);border-radius:14px;width:60px;height:60px;display:flex;align-items:center;justify-content:center}
.portal-links--carousel .standard-access-card .icon-box i{font-size:1.75rem}
.portal-links--carousel .portal-link-body{display:flex;flex-direction:column;gap:5px}
.portal-links--carousel .standard-access-card strong{color:#172033;font-size:1rem;font-weight:750}
.portal-links--carousel .standard-access-card small{color:#63666d;font-size:.82rem;line-height:1.5;max-width:230px}
.portal-links--carousel .service-arrow{display:none}
.portal-links--carousel .section-heading{margin-bottom:16px}
.portal-links--carousel .reveal-ready{opacity:1;transform:none}
.service-carousel-controls{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:0}.service-carousel-controls[hidden]{display:none}
.service-carousel-controls button{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid var(--secondary);background:var(--secondary);color:#172033}.service-carousel-controls button:hover:not(:disabled){background:#fff4e3}.service-carousel-controls button:disabled{opacity:.45;cursor:default}.service-carousel-controls button:focus-visible{outline:3px solid var(--secondary);outline-offset:3px}
.high-contrast .portal-links--carousel .standard-access-card{background:#fff;border-color:#111}
.large-text .portal-links--carousel .standard-access-grid{--service-count:2}
@media(max-width:991.98px){.dynamic-homepage .portal-hero-carousel .hero-copy{padding-top:65px;max-width:850px}.hero-step{opacity:1}.portal-links--carousel .standard-access-card{padding:20px 12px}}
@media(max-width:767.98px){
  .dynamic-homepage .hero-widget-zone{margin-inline:-14px}
  .dynamic-homepage .portal-hero-carousel,.dynamic-homepage .portal-hero-carousel .carousel-inner,.dynamic-homepage .portal-hero-carousel .carousel-item{min-height:490px}
  .dynamic-homepage .portal-hero-carousel .hero-copy{padding:48px 28px 120px}
  .dynamic-homepage .portal-hero-carousel .hero-copy h1{font-size:1.85rem;line-height:1.3}
  .dynamic-homepage .portal-hero-carousel .hero-copy p{font-size:.9rem}
  .dynamic-homepage .portal-hero-carousel .hero-shade{background:linear-gradient(90deg,#1429cef0,#1429ce9c)}
  .hero-actions{gap:12px}.hero-action{padding:12px 18px;min-height:48px;font-size:.8rem}
  .hero-step{width:24px;height:40px}.hero-step--previous{left:2px}.hero-step--next{right:2px}
  .portal-links--carousel .standard-access-grid{--service-count:2;--service-gap:12px}
  .portal-links--carousel .standard-access-card{padding:18px 10px;min-height:150px}
  .portal-links--carousel .standard-access-card strong{font-size:.78rem}.portal-links--carousel .standard-access-card small{font-size:.69rem}
  .large-text .portal-links--carousel .standard-access-grid{--service-count:1}
}
@media(prefers-reduced-motion:reduce){.hero-action,.hero-step,.portal-links--carousel .standard-access-card{transition:none}}
.reduce-motion .hero-action,.reduce-motion .hero-step,.reduce-motion .portal-links--carousel .standard-access-card{transition:none}

/* The schedule occupies the full viewport width, independently of the sidebar. */
.dynamic-homepage .home-top-widget-zone{width:auto;max-width:none;margin-inline:calc(-1 * clamp(14px,2vw,36px));padding:42px clamp(14px,2vw,36px) 38px;background:#0e29cd;gap:26px;margin-bottom:28px}
.portal-schedule{min-width:0;scroll-margin-top:90px}
.schedule-heading{text-align:center;color:#fff;margin-bottom:28px}.schedule-heading h2{color:#fff;font-size:clamp(1.6rem,2vw,2rem);font-weight:800;letter-spacing:-.02em;margin:0 0 14px}.schedule-heading p{color:#e4eaff;font-size:.96rem;line-height:1.7;margin:0}
.schedule-panel{background:#fff;border-radius:12px;padding:28px;box-shadow:0 8px 28px #07177420;color:#202735}
.schedule-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:20px 24px;margin-bottom:24px}.schedule-filters label{display:block;font-size:.9rem;font-weight:650;margin-bottom:10px;color:#252c37}.schedule-search{flex:0 1 310px;min-width:0}.schedule-date-filter{flex:0 1 210px;min-width:0}.schedule-filter-actions{display:flex;flex-wrap:wrap;gap:10px;margin-left:auto}.schedule-filters .form-control,.schedule-filters .input-group-text{min-height:40px;border-color:#d9e0ed;font-size:.88rem}.schedule-filter-actions .btn{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:.85rem}.schedule-filter-actions .btn-primary{background:#0e29cd;border-color:#0e29cd}.schedule-filter-actions .btn-outline-primary{color:#0e29cd;border-color:#0e29cd}.schedule-filter-actions .btn-outline-primary:hover{background:#0e29cd;color:#fff}
.schedule-table{font-size:.9rem;--bs-table-border-color:#dce2ed;--bs-table-hover-bg:#f4f7ff}.schedule-table>thead>tr>th{background:#d2e2ff;color:#182338;font-weight:700;padding:13px 16px;white-space:nowrap;border-bottom:1px solid #a7c1f1}.schedule-table>tbody>tr>td{padding:13px 16px;vertical-align:middle}.schedule-table th:first-child{width:64px}.schedule-table th:last-child{width:92px}.schedule-table td:nth-child(2),.schedule-table td:nth-child(3){white-space:nowrap}.schedule-table .portal-schedule-empty{text-align:center;padding:38px 16px;color:#5e6b80}.portal-schedule-empty>i{display:block;font-size:2rem;color:#0e29cd;margin-bottom:12px}.portal-schedule-empty p{margin:0 0 14px}.portal-schedule-empty a{display:inline-flex;gap:7px;align-items:center;font-size:.85rem;color:#0e29cd;font-weight:600}
.schedule-pagination{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:18px;border-top:1px solid #dce2ed;color:#6b7280;font-size:.82rem}.schedule-pagination .page-link{color:#0e29cd;min-width:36px;text-align:center}.schedule-pagination .active>.page-link{color:#fff;background:#0e29cd;border-color:#0e29cd}.schedule-pagination .disabled>.page-link{color:#8792a3}.schedule-detail-button{background:transparent;border:0;color:#0e29cd;font-weight:600;padding:4px 0}.schedule-detail-button:hover{text-decoration:underline}.schedule-detail-button:focus-visible{outline:2px solid #0e29cd;outline-offset:3px}
.high-contrast .home-top-widget-zone{background:#111}.high-contrast .schedule-table>thead>tr>th{background:#eee;color:#111}
@media(max-width:767.98px){.dynamic-homepage .home-top-widget-zone{margin-inline:-14px;padding:30px 14px}.schedule-panel{padding:20px 16px}.schedule-heading{margin-bottom:22px}.schedule-heading p{font-size:.86rem}.schedule-filters{gap:16px;margin-bottom:20px}.schedule-search{flex-basis:100%}.schedule-date-filter{flex:1 1 100%}.schedule-filter-actions{margin-left:0;width:100%}.schedule-filter-actions .btn{flex:1}.schedule-table{min-width:790px;font-size:.85rem}.schedule-pagination{flex-wrap:wrap}.schedule-pagination nav{margin-left:auto}.schedule-table .portal-schedule-empty p{white-space:normal;max-width:310px;margin-inline:auto}.schedule-table .portal-schedule-empty{text-align:left}.portal-schedule-empty>i,.portal-schedule-empty>a,.portal-schedule-empty>p{max-width:310px;text-align:center}.portal-schedule-empty>a{justify-content:center}}
.large-text .schedule-filters>div{flex:1 1 100%;margin-left:0}.large-text .schedule-table-wrap{overflow-x:auto}
.schedule-table-wrap{overflow-x:auto;overflow-y:hidden}

/* Reveal image carousel arrows on hover or keyboard focus; keep touch controls visible. */
@media(hover:hover) and (pointer:fine){
  .carousel[data-widget-id] > .carousel-inner > [data-portal-slide]{opacity:0;pointer-events:none}
  .carousel[data-widget-id]:hover > .carousel-inner > [data-portal-slide],.carousel[data-widget-id]:focus-within > .carousel-inner > [data-portal-slide]{opacity:1;pointer-events:auto}
}
