@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url('/homepage-runtime/Inter.woff2') format('woff2')}
:root{--blue:#082B5A;--dark:#040F1E;--gold:#DFB943;--ink:#18324f;--muted:#52677d;--line:#d8e2ec;--pale:#f1f5fa;--white:#fff}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;color:var(--ink);font-family:Inter,Arial,sans-serif;font-size:13.2px;line-height:1.7;background:#fff}
a{color:var(--blue);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}
a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px;border-radius:3px}
img{max-width:100%;display:block}.wrap{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.skip{position:fixed;left:16px;top:-80px;z-index:100;padding:10px 16px;background:var(--gold);color:var(--blue)}.skip:focus{top:12px}
.site-header{background:rgba(6,35,75,.94);color:#fff;position:sticky;top:0;z-index:30;box-shadow:0 4px 20px #04102026}
.header-row{min-height:72px;display:flex;align-items:center;gap:20px}.brand{display:flex;align-items:center;gap:16px;flex-shrink:0}
.logo-main{width:185px;height:auto;object-fit:contain;filter:drop-shadow(0 0 1px #fff) drop-shadow(0 0 1px #fff) drop-shadow(0 0 7px rgba(255,255,255,1)) drop-shadow(0 0 18px rgba(255,255,255,.78)) drop-shadow(0 0 30px rgba(255,255,255,.36))}.logo-next{width:104px;height:auto;object-fit:contain;filter:drop-shadow(0 0 8px rgba(255,255,255,1)) drop-shadow(0 0 20px rgba(255,255,255,.55)) drop-shadow(0 0 32px rgba(255,255,255,.25))}
.desktop-nav{display:flex;gap:22px;margin-left:auto}.desktop-nav a{color:#fff;text-decoration:none;font-size:12px;font-weight:600}
.button{display:inline-flex;gap:10px;align-items:center;justify-content:center;min-height:40px;padding:10px 16px;border:1px solid var(--gold);border-radius:7px;background:var(--gold);color:var(--blue);font-size:12px;line-height:1.4;font-weight:750;text-decoration:none;text-align:center;transition:transform .15s,background .15s}
.button:hover{background:#ead18b;transform:translateY(-1px)}.button.small{padding:9px 14px;white-space:nowrap}.button.outline{background:transparent;color:#fff;border-color:#91aac6}.button.outline:hover{background:#ffffff12}.mobile-menu{display:none}
.hero{background:linear-gradient(125deg,var(--blue),#071b37);color:#fff;padding:24px 0 38px}
.breadcrumbs{font-size:11px;display:flex;gap:9px;flex-wrap:wrap;color:#b9cadd;line-height:1.5;margin-bottom:24px}.breadcrumbs a{color:#d8e5f3}.breadcrumbs [aria-current]{color:#fff}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(245px,1fr);align-items:start;gap:40px}
.eyebrow{font-size:10px;font-weight:750;letter-spacing:.16em;color:var(--gold);line-height:1.5;margin:0 0 12px;text-transform:uppercase}
h1{font-size:clamp(29px,3.25vw,42px);line-height:1.12;letter-spacing:-.035em;max-width:810px;margin:0 0 18px;font-weight:800}
h2{font-size:clamp(21px,2vw,24px);line-height:1.25;letter-spacing:-.025em;margin:0 0 16px}
h3{font-size:15.6px;line-height:1.4;letter-spacing:-.015em;margin:0 0 12px}
.lead{font-size:14.4px;line-height:1.7;color:#d4e0ee;max-width:720px;margin:0 0 22px}.actions{display:flex;gap:10px;flex-wrap:wrap}
.hero-card{border:1px solid #657b963f;border-top:3px solid var(--gold);border-radius:12px;background:#ffffff08;padding:21px 23px;box-shadow:0 15px 50px #0002}
.hero-card h2{font-size:17.6px;letter-spacing:-.02em;margin-bottom:6px}.hero-card p{font-size:12px;color:#c0d0e3;line-height:1.7;margin:7px 0 12px}.hero-card .eyebrow{font-size:9px;color:var(--gold);margin:0 0 14px}
.phone{display:block;color:var(--gold);font-size:18px;font-weight:750;line-height:1.5;text-decoration:none;white-space:nowrap}.mail{color:#fff;font-size:12.5px;overflow-wrap:anywhere}
.hero-card .hours{padding-top:12px;margin-top:14px;border-top:1px solid #ffffff20}.hero-card .hotline{margin:0}.hotline a{color:var(--gold);font-size:16px;font-weight:700}
/* Brand names use the same gold as the homepage, without highlight boxes. */
.brand-name{color:var(--gold);background:transparent;padding:0;border:0;border-radius:0;box-shadow:none}
.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:42px;align-items:start;padding-top:40px;padding-bottom:46px}.article{min-width:0}
.article>section{margin-bottom:32px}.article>section>h2{padding-top:12px;border-top:3px solid var(--gold)}.article p{margin:0 0 14px}.article li{margin-bottom:7px}.checks{padding-left:20px}.checks li::marker{color:#796019}
.side-card{background:var(--pale);border:1px solid var(--line);border-radius:11px;padding:20px;margin-bottom:20px}.side-card .eyebrow{color:#765b12;font-size:9px}.side-card h2{font-size:15.6px;line-height:1.4}
.related{list-style:none;padding:0;margin:0}.related li{margin:0 0 12px}.related a{font-size:12.5px;line-height:1.5;display:inline-block}.all-services{display:inline-block;margin-top:10px;font-weight:700;font-size:12.5px}
.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.service-card{display:flex;flex-direction:column;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:9px;padding:18px;text-decoration:none;background:#fff;transition:box-shadow .15s,transform .15s}.service-card:hover{box-shadow:0 10px 22px #082b5a12;transform:translateY(-2px)}
.service-card p{font-size:13.2px;line-height:1.7;color:var(--muted)}.card-link{font-weight:700;font-size:12px;margin-top:auto;padding-top:7px;display:flex;justify-content:space-between;gap:10px}
.faq details{border:1px solid var(--line);border-radius:8px;margin-bottom:10px;background:#fff}.faq summary{padding:15px 17px;font-size:14px;line-height:1.5;font-weight:650;cursor:pointer}.faq details p{padding:0 17px 17px;margin:0;font-size:13.2px}
.cta-panel{padding:24px;border-radius:10px;background:var(--blue);color:#fff}.article>.cta-panel>h2{border:0;padding:0;font-size:22px}.cta-panel p{color:#d4e0ee}
.site-footer{background:var(--dark);color:#bdccdd;padding:34px 0;font-size:12px}.footer-grid{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:38px}.site-footer strong{font-size:15.6px;color:#fff}.site-footer h2{font-size:12.5px;color:#fff;letter-spacing:0;margin-bottom:14px}.site-footer a{color:#bdccdd;display:block;margin:0 0 8px;font-size:12px;line-height:1.6}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer p{margin:10px 0 16px}
@media(max-width:1050px){.header-row{gap:16px}.desktop-nav{gap:16px}.brand{gap:12px}.hero-grid{gap:28px;grid-template-columns:minmax(0,1.5fr) minmax(245px,1fr)}.content-layout{gap:30px}.hero-card{padding:20px}.footer-grid{gap:28px}}
@media(max-width:820px){
 .desktop-nav{display:none}.header-row>.button{margin-left:auto}.hero-grid{grid-template-columns:1fr}
 .hero-card{max-width:none;display:grid;grid-template-columns:1fr 1fr;column-gap:22px;align-items:start}.hero-card .eyebrow,.hero-card h2,.hero-card>p:first-of-type{grid-column:1}.hero-card .phone,.hero-card .mail{grid-column:2}.hero-card .phone{grid-row:1/3;margin-top:10px}.hero-card .mail{grid-row:3}.hero-card .hours{grid-column:1;margin:6px 0 0}.hero-card .hotline{grid-column:2;grid-row:4;margin-top:6px;padding-top:12px;border-top:1px solid #ffffff20}
 .content-layout{grid-template-columns:1fr;padding-top:30px;gap:0}.sidebar{display:grid;grid-template-columns:1fr 1fr;gap:18px}.side-card{margin:0}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.hero{padding-bottom:30px}
 .mobile-menu{display:block;position:relative}.mobile-menu summary{cursor:pointer;color:#fff;font-size:14px;font-weight:650;min-height:44px;display:flex;align-items:center;padding:8px 5px;list-style:none}.mobile-menu summary:after{content:'☰';font-size:20px;margin-left:9px}.mobile-menu[open] summary:after{content:'×'}.mobile-menu nav{position:absolute;right:0;top:52px;width:min(360px,calc(100vw - 24px));max-height:65vh;overflow:auto;background:var(--blue);box-shadow:0 12px 30px #0004;border:1px solid #66829f;border-radius:8px;padding:15px 22px}.mobile-menu a{color:#fff;display:block;padding:9px 0;line-height:1.5;font-size:14px}.mobile-menu ul{list-style:none;margin:0;padding:0}.mobile-menu li{margin:0}
}
@media(max-width:600px){
 body{font-size:16px;line-height:1.65}.wrap{width:calc(100% - 32px)}.header-row{min-height:100px;gap:8px;flex-wrap:wrap;padding:8px 0}.brand{gap:12px;margin-right:auto}.logo-main{width:clamp(120px,36.4vw,142px);height:auto}.logo-next{width:clamp(70px,20.5vw,80px);height:auto}.header-row>.button{order:4;flex:1;min-height:44px;font-size:13.5px;margin:0}.mobile-menu{margin-left:auto}
 .hero{padding-top:20px}h1{font-size:29.25px;line-height:1.14}h2{font-size:24px}h3{font-size:17px}.lead{font-size:16.64px;line-height:1.65}.eyebrow{font-size:10px}.breadcrumbs{margin-bottom:20px;font-size:11px}.actions{flex-direction:column}.actions .button{width:100%;min-height:44px;font-size:14px}
 .hero-card{display:block;padding:20px}.hero-card h2{font-size:18px}.hero-card p{font-size:13px}.hero-card .phone{margin-top:10px;font-size:20px}.hero-card .mail{display:inline-block;margin-top:5px;font-size:14px}.hero-card .hours{margin-top:16px}.hero-card .hotline{margin-top:12px}.hotline a{font-size:18px}
 .content-layout{padding-bottom:32px}.article>section{margin-bottom:30px}.service-grid,.sidebar,.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.service-card{padding:20px}.service-card p{font-size:16px;line-height:1.65}.card-link{font-size:14px;min-height:32px}.cta-panel{padding:22px}.site-footer{padding:30px 0}.footer-grid{gap:24px}.faq summary{font-size:16px;min-height:44px}.faq details p{font-size:16px}.side-card{padding:20px}.related a,.all-services{font-size:14px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.service-card{transition:none}.button:hover,.service-card:hover{transform:none}}
.hero-grid>*,.hero-card,.service-card{min-width:0}h1,h2,h3{overflow-wrap:anywhere;hyphens:auto}
@media(max-width:360px){.logo-main{width:120px}.logo-next{width:70px}.brand{gap:10px}.header-row{gap:8px}.mobile-menu summary{font-size:13px}}

/* Context links retain the existing type scale and brand colors. */
.article a.context-link{color:inherit;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:.18em}.article a.context-link:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

/* Keep the current breadcrumb on a stable second row on small screens. */
@media(max-width:700px){.breadcrumbs [aria-current="page"]{flex-basis:100%}}

/* Accessible gold text on light content surfaces; primary brand gold is unchanged. */
.article .brand-name,.side-card .brand-name,.breadcrumbs .brand-name{color:#876500}.article .cta-panel .brand-name{color:var(--gold)}
