/* Supplied branding and responsive full-width mountain hero. */
.site-header,footer{background:#020e1a}
.header-inner{min-height:110px;gap:24px}
.brand{width:112px;flex-shrink:0;padding:8px 0}
.brand img,.footer-brand img{width:100%;height:auto;object-fit:contain}
.footer-brand{display:block;width:112px;flex-shrink:0}
.hero{background:#041321;color:#fff}
.hero-inner{max-width:1380px;padding:64px 36px;min-height:440px;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);gap:40px}
.hero-copy{max-width:490px;min-width:0}
.hero h1{font-size:clamp(36px,3.6vw,52px);line-height:1.12}
.hero p{font-size:17px}
.front-card-image{width:100%;height:auto;display:block;object-fit:contain;box-shadow:0 20px 48px #0006}
.hero-actions{flex-wrap:wrap;gap:20px}
@media(max-width:1000px){.header-inner{gap:18px}.header-inner nav{gap:18px}.hero-inner{grid-template-columns:1fr;gap:36px;padding:42px 28px}.hero-copy{max-width:720px}.front-card-image{max-width:1020px}.hero h1{font-size:44px}}
@media(max-width:700px){.header-inner{min-height:90px;padding:6px 20px}.brand{width:88px}.hero-inner{padding:32px 20px 40px;gap:30px}.hero h1{font-size:36px}.hero .eyebrow{font-size:13px;margin-bottom:14px}.hero p{margin:18px 0 22px}.footer-brand{width:100px}}
.header-inner .brand{width:112px}
.hero{position:relative;isolation:isolate;overflow:hidden}
.hero-inner{position:static;display:flex;max-width:1232px;min-height:clamp(480px,40vw,680px);padding:72px 36px;margin:auto}
.hero .front-card-image{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;z-index:-2;box-shadow:none}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,10,25,.86),rgba(0,10,25,.58) 42%,rgba(0,10,25,.08) 78%);z-index:-1}
.hero-copy{max-width:650px;position:relative}
.hero h1{font-size:clamp(40px,4.3vw,64px);text-shadow:0 2px 12px #0008}
.hero p{font-size:18px;text-shadow:0 1px 5px #000}
@media(max-width:700px){.header-inner .brand{width:88px}.hero-inner{min-height:520px;padding:52px 24px}.hero h1{font-size:clamp(36px,8vw,48px)}.hero::before{background:linear-gradient(90deg,rgba(0,10,25,.85),rgba(0,10,25,.45))}.hero .front-card-image{object-position:62% center}.hero p{font-size:17px}}

/* Outline logo proportions, shared across every page. */
.header-inner .brand{width:210px;max-width:45vw;padding:8px 0}
.footer-brand{width:200px;max-width:70vw}
.brand img,.footer-brand img{display:block;border-radius:0}
@media(max-width:700px){.header-inner .brand{width:160px}.footer-brand{width:180px}}

/* Allow the expanded navigation to wrap without crowding the logo. */
@media(min-width:701px){.header-inner nav{flex:1;min-width:0;flex-wrap:wrap;gap:10px 20px}.header-call{flex-shrink:0}.header-inner{padding-top:12px;padding-bottom:12px}}

/* White menu header — October 2026 update. */
.site-header{background:#fff;color:#111820;border-bottom:3px solid #4b9cd3}
.site-header .header-inner nav a{color:#253746}
.site-header .header-inner nav a:hover,.site-header .header-inner nav a.active{color:#205f8a}
.site-header .header-inner nav a.active:after{background:#4b9cd3}
.site-header .header-call{color:#205f8a}
.site-header .header-call:hover{color:#103f61}
.site-header .menu-toggle{color:#253746;border-color:#a9bdcb;background:#fff}

/* Larger logo and a visible contact button. */
.site-header .header-inner .brand{width:252px}
.site-header .header-call{display:inline-flex;align-items:center;justify-content:center;background:#4b9cd3;color:#111820;border:1px solid #4b9cd3;border-radius:8px;padding:12px 18px;min-height:48px;line-height:1.35;font-weight:700;white-space:nowrap;text-decoration:none}
.site-header .header-call:hover{background:#358bc4;border-color:#358bc4;color:#111820}
@media(max-width:700px){.site-header .header-inner .brand{width:192px;max-width:calc(100% - 90px)}.site-header .header-call{order:2;width:100%;margin:0}.site-header .header-inner nav{order:3}}
@media(max-width:700px){.site-header .header-inner nav.open{flex-wrap:wrap;justify-content:flex-start;gap:4px 18px}.site-header .header-inner nav a{padding:10px 0}}
