
:root{--ink:#081e36;--gold:#c29d4c;--muted:#596a78}
header{background:#071c34;color:#f9f4e8;border-bottom:1px solid #c6a65e66;gap:25px}
header .brand-logo{width:65px;height:65px}header .brand-wordmark{font-size:21px}
header nav{flex-wrap:wrap;justify-content:flex-end;gap:18px}
header nav a{font-size:12px}header nav .btn{background:#d5b46c;color:#071c34;border-color:#d5b46c}
.nav-resources{position:relative;font-size:12px;padding:0;border:0;z-index:20}
.nav-resources summary{list-style:none;padding:8px 0;cursor:pointer}
.nav-resources summary:after{content:" +";color:#dfc380}
.nav-resources[open] summary:after{content:" −"}
.resource-dropdown{position:absolute;right:0;top:38px;min-width:190px;background:#fffdf8;color:#081e36;border:1px solid #d3bc85;padding:10px;box-shadow:0 10px 25px #0002}
.resource-dropdown a{display:block;padding:10px;text-decoration:none}
.resource-dropdown a:hover{background:#eee6d5}
.visual-banner{max-width:1200px;margin:35px auto 0;background:linear-gradient(115deg,#071c34,#143956);border-bottom:3px solid #c8a659;display:grid;grid-template-columns:1fr 220px;align-items:center;gap:30px;padding:38px 6%;min-height:235px;color:#fff7e5}
.visual-banner .eyebrow{color:#dabe79}.visual-banner h2{font-size:clamp(27px,3vw,39px);margin:13px 0 10px;max-width:650px}
.visual-banner p{color:#c3ced9;font-size:14px;margin:0;max-width:620px}
.banner-image{height:165px;display:grid;place-items:center;overflow:hidden}
.banner-image img{width:100%;height:100%;object-fit:contain;display:block}
.banner-image.icon img{max-width:140px;max-height:140px;filter:brightness(0) saturate(100%) invert(80%) sepia(36%) saturate(477%) hue-rotate(356deg) brightness(92%) contrast(88%)}
.banner-image.wide{height:auto}.banner-image.wide img{height:auto;max-height:180px}
.journey-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;margin-top:40px}
.route-card{background:#fffdf8;border:1px solid #dfd4bd;border-top:3px solid #c29d4c;padding:30px}
.route-card h2{font-size:29px;margin:15px 0}.route-card p{font-size:15px}
.route-card li{font-size:14px}.stage-band{background:#eee9dc;padding:35px;margin:45px 0}
.faq-search{background:#eee9dc;padding:25px;margin:35px 0;max-width:800px}
.faq-search label{display:block;font-size:13px;margin-bottom:8px}
.faq-search input{width:100%;max-width:600px;background:white;border:1px solid #a69b80;padding:14px;font:inherit;color:#081e36}
.faq-list{max-width:850px}.faq-list details[hidden]{display:none}
.service-finder{background:#071c34;color:#fff8e8;padding:45px;margin:40px 0}
.service-finder p{color:#c3ced9}.service-finder .eyebrow{color:#dfc380}
.service-finder label{display:block;margin:18px 0 8px}.service-finder select{max-width:100%;width:100%;padding:15px;font:inherit;background:#fffdf8;color:#081e36;border:1px solid #d5b46c}
.finder-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}
.finder-results a{padding:13px 15px;border:1px solid #c7a45f66;text-decoration:none;color:#fff3d2;font-size:14px}
.finder-results a:hover{background:#163b59}
.feature-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:28px}
.feature-links article{padding:25px;border:1px solid #d9cba8;background:#fffdf8}
.feature-links img{width:48px;height:48px;object-fit:contain}.feature-links h3{font-size:26px}
.footer-resources{padding-top:15px;display:flex;gap:18px;flex-wrap:wrap}footer{background:#06182c;color:#eee5d3}footer p{color:#b5c2d0}
@media(max-width:900px){header{align-items:flex-start}header nav{gap:12px}.visual-banner{margin-top:0}.feature-links{grid-template-columns:1fr}}
@media(max-width:650px){.visual-banner{grid-template-columns:1fr 95px;padding:28px 6%;gap:15px;min-height:180px}.visual-banner h2{font-size:27px}.banner-image{height:95px}.banner-image.icon img{max-width:85px;max-height:85px}.visual-banner p{font-size:12px}.journey-grid,.finder-results{grid-template-columns:1fr}.service-finder{padding:25px}.stage-band{padding:24px}.resource-dropdown{right:0;min-width:165px}header .brand-logo{width:50px;height:50px}header .brand-wordmark{font-size:17px}header nav{max-width:58%}}
@media print{header,footer,.visual-banner,.actions,.nav-resources{display:none!important}.journey-grid{display:block}.route-card{break-inside:avoid;margin:10px 0}}
