:root{color-scheme:light;--navy:#15394b;--ink:#173b4e;--muted:#647985;--line:#dce5e9;--paper:#f4f7f8;--teal:#087f80;--gold:#d5af6c}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;min-width:0;background:var(--paper);color:var(--ink);font-family:"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}button,input{font:inherit}[hidden]{display:none!important}.shell{width:calc(100% - 64px);max-width:1280px;margin:auto}.skip-link{position:absolute;left:16px;top:-100px;z-index:20;padding:12px;background:white;color:var(--navy)}.skip-link:focus{top:8px}
.site-header{background:white;border-bottom:1px solid var(--line);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}.header-inner{display:flex;align-items:center;gap:20px;min-height:88px}.brand{display:inline-flex;flex-shrink:0;text-decoration:none}.brand-logo{display:block;width:166px;height:76px;overflow:hidden}.brand-logo img{display:block;width:166px;height:166px;margin-top:-47px}.brand-divider{height:28px;width:1px;background:#d5dfe4}.header-label{font-size:10px;font-weight:650;line-height:1.5;letter-spacing:1.9px;color:#667d8a}.header-nav{display:flex;gap:24px;margin-left:auto;align-items:center}.header-nav a{font-size:13px;font-weight:600;color:#526b7b;text-decoration:none;min-height:44px;display:flex;align-items:center}.header-nav a:hover{color:var(--teal)}.portal-header-actions{display:flex;align-items:center;margin-left:12px;flex:none}.portal-account form{margin:0}.portal-account-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 20px;border:1px solid #cbd9df;border-radius:7px;background:white;color:var(--navy);font-size:13px;font-weight:650;text-decoration:none;cursor:pointer;white-space:nowrap}.portal-account-button:hover{background:#eef5f6;border-color:#95b5bf}
.hero{position:relative;overflow:hidden;background:linear-gradient(112deg,#143346 0%,#174550 77%,#1c5059 100%);color:white}.hero-pattern{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 49.8%,#ffffff04 50%,transparent 50.2%),linear-gradient(0deg,transparent 49.8%,#ffffff04 50%,transparent 50.2%);background-size:94px 94px;opacity:.8}.hero:after{content:"";position:absolute;right:14%;top:-220px;width:650px;height:650px;border:1px solid #ffffff0c;border-radius:50%;pointer-events:none}.hero-inner{position:relative;z-index:1;padding:48px 0 52px;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(290px,.8fr);gap:70px;align-items:center}.eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 18px;color:#e4c38e;font-size:10px;font-weight:700;letter-spacing:2px}.eyebrow>span{display:block;width:22px;height:2px;background:var(--gold)}h1{font-size:clamp(35px,4.3vw,59px);font-weight:600;line-height:1.08;letter-spacing:-2px;margin:0}h1>span{color:#afd9d4}.hero-description{max-width:580px;font-size:15px;line-height:1.75;color:#d0e0e4;margin:20px 0 22px}.hero-button{display:inline-flex;align-items:center;gap:24px;padding:12px 18px;border:1px solid #ffffff3b;border-radius:7px;color:white;font-weight:600;font-size:13px;text-decoration:none;min-height:44px}.hero-button:hover{background:#ffffff12}.hero-access{padding:24px;border:1px solid #ffffff20;border-radius:13px;background:#ffffff08;box-shadow:0 12px 32px #06253213}.panel-kicker{font-size:9px;letter-spacing:1.7px;color:#c0d7dc;margin:0 0 9px;font-weight:650}.hero-access h2{font-size:24px;font-weight:600;letter-spacing:-.5px;margin:0 0 14px}.hero-access>a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;border-top:1px solid #ffffff16;text-decoration:none;min-height:67px}.hero-access>a:last-child{padding-bottom:0}.hero-access>a:hover{color:#e5cb9b}.hero-access strong{font-size:13px;font-weight:600;display:block}.hero-access small{display:block;color:#bdd2d8;font-size:11px;margin-top:5px}.hero-access>a>span:last-child{font-size:22px;color:#bddbd8}
.portal-content{padding-top:34px;padding-bottom:30px}.browse-heading{display:flex;justify-content:space-between;gap:28px;align-items:center;padding-bottom:28px;border-bottom:1px solid var(--line)}.overline{margin:0 0 7px;color:#82939c;font-size:9px;font-weight:750;letter-spacing:1.8px}.browse-heading h2{font-size:23px;font-weight:600;letter-spacing:-.6px;margin:0}.tool-search{width:360px;max-width:100%;flex:none}.tool-search label{font-size:11px;color:var(--muted);font-weight:600;display:block;margin-bottom:7px}.search-input{display:flex;gap:10px;align-items:center;border:1px solid #d6e1e7;border-radius:8px;padding:0 12px;background:white;min-height:44px}.search-input>svg{width:17px;height:17px;flex:none;color:#8a9ba5}.search-input input{min-width:0;width:100%;border:0;background:transparent;outline:0;min-height:44px;font-size:12px;color:var(--ink)}.search-input:focus-within{outline:3px solid #79b1b8;outline-offset:2px}.search-input button{border:0;background:transparent;font-size:11px;color:var(--teal);cursor:pointer;min-height:44px;padding:0 3px}.search-status{color:var(--muted);font-size:13px;margin:20px 0 0}.search-empty{padding:36px;border:1px dashed #bfd0da;border-radius:10px;text-align:center;background:white;margin-top:24px}.search-empty h3{margin:0 0 10px}.search-empty p{font-size:14px;color:var(--muted)}
.tool-section{padding-top:30px;scroll-margin-top:22px}.section-heading{margin-bottom:17px;display:flex;justify-content:space-between;align-items:center}.section-title{display:flex;gap:13px;align-items:center}.section-number{font-size:11px;font-weight:700;color:#8ca0ac;width:26px;height:32px;border-right:1px solid #d4dfe5;display:flex;align-items:center;flex:none}.section-title h2{font-size:21px;font-weight:650;letter-spacing:-.5px;line-height:1.3;margin:0}.section-title p{font-size:12px;line-height:1.5;color:var(--muted);margin:5px 0 0}.cards{display:grid;gap:16px;align-items:stretch}.operations-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.safety-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.card{--accent:#087f80;--soft:#eaf5f3;display:flex;flex-direction:column;position:relative;min-width:0;padding:22px 20px 16px;border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:10px;background:white;text-decoration:none;box-shadow:0 3px 12px #14334603;min-height:242px}.tone-teal{--accent:#087f80;--soft:#e8f5f2}.tone-amber{--accent:#ad7a35;--soft:#fcf3e6}.tone-blue{--accent:#3d6994;--soft:#edf3f9}.tone-slate{--accent:#537084;--soft:#edf2f5}.tone-red{--accent:#a9514b;--soft:#fcf0ee}.tone-green{--accent:#3b7d60;--soft:#eaf5ee}.card-logo{width:42px;height:42px;display:grid;place-items:center;background:var(--soft,#edf3f5);color:var(--accent,var(--teal));border-radius:10px;flex:none}.card-logo svg{width:26px;height:26px}.card-kicker{display:block;color:#7a8c97;font-size:9px;font-weight:700;letter-spacing:1.1px;text-transform:uppercase;margin:19px 0 6px;line-height:1.5}.card h3{font-size:18px;font-weight:650;letter-spacing:-.4px;line-height:1.35;margin:0;overflow-wrap:break-word}.card-copy{font-size:12px;line-height:1.7;color:#667d8a;margin:10px 0 18px}.card-action{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;border-top:1px solid #e9eff3;padding-top:11px;color:var(--accent,var(--teal));font-size:12px;font-weight:650;min-height:40px}.arrow{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:var(--soft,#edf3f5);flex:none}.arrow svg{width:15px;height:15px}.portal-resource-badges{display:flex;flex-wrap:wrap;gap:5px}.card>.portal-static-badges{position:absolute;right:17px;top:20px;max-width:calc(100% - 92px)}.portal-feature-badge{display:inline-block;padding:5px 8px;background:#eaf1f8;color:#446886;border:1px solid #dfE9f2;border-radius:5px;font-size:9px;font-weight:650;line-height:1.3;white-space:normal}
.feature-list{display:flex;flex-direction:column;gap:11px}.safety-grid+.feature-list{margin-top:15px}.gallery-feature{display:flex;align-items:center;gap:18px;padding:18px 22px;border:1px solid var(--line);border-radius:10px;background:white;min-width:0}.gallery-feature .card-logo{width:44px;height:44px}.gallery-feature-copy{min-width:0;flex:1}.gallery-feature .card-kicker{margin:0 0 4px;font-size:9px}.gallery-feature h3{font-size:17px;letter-spacing:-.3px;margin:0;font-weight:650;line-height:1.4;overflow-wrap:break-word}.gallery-feature .card-copy{margin:4px 0 0;font-size:12px}.gallery-feature-status{display:inline-flex;gap:18px;align-items:center;justify-content:space-between;flex:none;min-width:155px;min-height:42px;padding:10px 14px;border:1px solid #d4e0e6;border-radius:6px;color:var(--accent,var(--teal));background:#fff;text-decoration:none;font-size:12px;font-weight:650}.gallery-feature-status:hover{background:var(--soft,#f3f7f8)}.gallery-status-icon{width:16px;height:16px;flex:none}.gallery-status-icon svg{display:block;width:16px;height:16px}.tone-green.gallery-feature{background:#f0f7f3;border-color:#d6e7dd}.training-feature{border-left:3px solid #7399b8}
.quick-links-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.quick-link{display:grid;grid-template-columns:minmax(0,1fr) 20px;grid-auto-flow:row;align-items:center;align-content:center;gap:9px 14px;min-width:0;min-height:100px;background:white;border:1px solid var(--line);border-radius:9px;padding:18px 20px;text-decoration:none}.resource-text{grid-column:1;grid-row:1;min-width:0}.resource-name{font-size:13px;font-weight:650;line-height:1.5;display:block;overflow-wrap:break-word;word-break:normal}.resource-description{display:block;font-size:11px;font-weight:400;line-height:1.6;color:#738793;margin-top:5px}.quick-link>svg{grid-column:2;grid-row:1;display:block;width:17px;height:17px;flex:none;color:#72909f;justify-self:end}.quick-link>.portal-resource-badges{grid-column:1/-1;grid-row:2}.quick-link-static{background:#edf2f5;border-style:dashed}.quick-link-static>.resource-text{grid-column:1/-1}.resource-unavailable{grid-column:1/-1;font-size:10px;color:#7c909d}.quick-link:hover{border-color:#9fbec8}.quick-link-static:hover{border-color:var(--line)}.portal-note{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);margin-top:30px;padding-top:20px;font-size:11px;line-height:1.6;color:#7c909c}.portal-note>span{background:#e7eef3;width:28px;height:28px;border-radius:6px;display:grid;place-items:center;color:#637f92;flex:none}.portal-note p{margin:0}.portal-note strong{font-weight:600;color:#577384}.portal-note a{margin-left:auto;white-space:nowrap;min-height:40px;display:flex;align-items:center;text-decoration:none;color:#557487;font-weight:600}
footer{background:white;border-top:1px solid var(--line)}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0 max(24px,env(safe-area-inset-bottom,0px));font-size:11px;color:#8799a2}.footer-inner strong{display:block;font-size:12px;color:#5c7787;font-weight:600;margin-bottom:5px}.footer-credit{text-decoration:none;color:#8497a3}a,button{-webkit-tap-highlight-color:#087f8018;touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #79b1b8;outline-offset:4px}
@media(hover:hover) and (pointer:fine){.card:hover{border-color:#a9c3cb;box-shadow:0 8px 22px #1433460a;transform:translateY(-3px)}.card{transition:border-color .18s,box-shadow .18s,transform .18s}.quick-link{transition:border-color .18s}}
@media(max-width:1100px){.header-inner{gap:14px}.header-nav{gap:18px}.header-label,.brand-divider{display:none}.hero-inner{gap:36px;grid-template-columns:minmax(0,1.2fr) minmax(270px,.8fr)}.operations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card{min-height:225px}.hero-inner{padding:40px 0}.safety-grid{gap:12px}.safety-grid .card{padding-left:17px;padding-right:17px}.browse-heading h2{font-size:21px}}
@media(max-width:780px){.shell{width:calc(100% - 40px)}.header-inner{flex-wrap:wrap;gap:0 18px;padding-bottom:8px}.header-nav{order:3;width:100%;justify-content:space-between;margin:0;border-top:1px solid #eef2f5}.header-nav a{font-size:12px;min-height:38px}.portal-header-actions{margin-left:auto}.hero-inner{grid-template-columns:1fr;gap:28px;padding:35px 0}.hero-access{padding:20px}.hero-access>a{min-height:60px}.hero-copy{max-width:580px}h1{font-size:44px}.hero-description{font-size:14px;max-width:550px}.browse-heading{align-items:flex-start;flex-direction:column;gap:20px}.tool-search{width:100%}.safety-grid{grid-template-columns:1fr 1fr}.safety-grid>.card:last-child{grid-column:1/-1}.quick-links-row{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-feature{flex-wrap:wrap;gap:14px;padding:18px}.gallery-feature-copy{flex:1 1 calc(100% - 60px)}.gallery-feature-status{margin-left:58px;min-width:175px}.section-title h2{font-size:20px}.portal-note{flex-wrap:wrap}.portal-note p{flex:1;min-width:200px}.portal-note a{margin-left:40px}.portal-content{padding-top:28px}}
@media(max-width:480px){.shell{width:calc(100% - 32px)}.brand-logo{width:150px;height:72px}.brand-logo img{width:150px;height:150px;margin-top:-41px}.portal-account-button{min-height:44px;padding:10px 15px}.header-nav a{min-height:44px;font-size:11px}.hero-inner{padding:30px 0 32px;gap:25px}h1{font-size:39px;letter-spacing:-1.5px}.eyebrow{font-size:9px;letter-spacing:1.6px}.hero-description{font-size:14px}.hero-access{padding:20px}.hero-access strong{font-size:13px}.hero-access h2{font-size:22px}.operations-grid,.safety-grid{grid-template-columns:minmax(0,1fr)}.safety-grid>.card:last-child{grid-column:auto}.card{padding:20px;min-height:0}.card h3{font-size:20px}.card-copy{font-size:13px}.card-action{min-height:44px;font-size:13px}.card-kicker{margin-top:14px}.card>.portal-static-badges{top:22px}.portal-feature-badge{font-size:10px}.section-title h2{font-size:19px}.section-title p{font-size:12px}.browse-heading h2{font-size:21px}.tool-section{padding-top:27px}.gallery-feature h3{font-size:17px}.gallery-feature .card-copy{font-size:12px}.gallery-feature-status{width:100%;min-height:44px;margin-left:0;min-width:0;font-size:13px}.quick-links-row{grid-template-columns:minmax(0,1fr)}.quick-link{padding:17px 18px;min-height:95px}.resource-name{font-size:14px}.resource-description{font-size:12px}.footer-inner{align-items:flex-start;flex-direction:column;gap:14px}.portal-note p{min-width:0}.portal-note a{margin-left:0;flex-basis:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card,.quick-link{transition:none!important}.card:hover{transform:none}}

/* Learning matches Safety cards, with a distinct accent for each resource. */
.learning-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.tone-purple{--accent:#7754b2;--soft:#f1ecfa}
.tone-gold{--accent:#a37b24;--soft:#fbf4e2}
@media(max-width:1100px){.learning-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.learning-grid{grid-template-columns:minmax(0,1fr)}}

/* Clear section markers, with consistent geometry across all four groups. */
.section-number{width:44px;height:44px;border:1px solid #204d60;border-radius:10px;background:var(--navy);color:#fff;font-size:17px;line-height:1;font-weight:750;letter-spacing:.5px;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 8px #15394b12;flex:none}
.section-title{gap:15px}
@media(max-width:480px){.section-number{width:38px;height:38px;border-radius:9px;font-size:15px}.section-title{gap:12px}}
