:root{--bg:#F4F6F8;--surface:#E7EDF2;--ink:#16242F;--primary:#0B5394;--accent:#D97706;--secondary:#54687A;--line:#C9D5DE;--dark:#0C2D48;--font-head:"Avenir Next","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-body:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Liberation Sans",sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:18px;line-height:1.62}
img{max-width:100%;height:auto;display:block}
a{color:var(--primary)}
a:hover{color:var(--accent)}
.skip-link{position:absolute;left:-999px;top:0;background:var(--dark);color:#fff;padding:8px 12px;z-index:60}
.skip-link:focus{left:8px;top:8px}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.topbar{background:var(--dark);color:#CFDEEA;font-size:15px}
.topbar-in{display:flex;justify-content:space-between;gap:16px;padding-top:7px;padding-bottom:7px;flex-wrap:wrap}
.site-header{background:#fff;border-bottom:3px solid var(--primary);position:relative}
.header-in{display:flex;align-items:center;gap:18px;padding-top:12px;padding-bottom:12px}
.brand{text-decoration:none;color:var(--ink);flex:0 0 auto}
.wordmark{font-family:var(--font-head);font-size:clamp(23px,2.4vw,29px);font-weight:700;letter-spacing:.18em;color:var(--dark);display:block;line-height:1.05}
.wordmark::after{content:"";display:block;height:3px;width:64px;background:var(--accent);margin-top:4px}
.tagline{font-size:13.5px;color:var(--secondary);letter-spacing:.04em}
.site-nav{margin-left:auto;min-width:0}
.nav-list{list-style:none;margin:0;padding:0;display:flex;gap:2px;flex-wrap:nowrap}
.nav-item{position:relative}
.nav-item>a{display:block;padding:8px 9px;text-decoration:none;font-family:var(--font-head);font-size:16px;font-weight:600;color:var(--ink);white-space:nowrap}
.nav-item>a:hover,.nav-item>a:focus{color:var(--accent)}
.nav-dropdown{list-style:none;margin:0;padding:6px 0;position:absolute;left:0;top:100%;min-width:250px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 20px rgba(12,45,72,.16);visibility:hidden;opacity:0;z-index:30}
.nav-item:hover .nav-dropdown,.nav-item:focus-within .nav-dropdown{visibility:visible;opacity:1}
.nav-dropdown a{display:block;padding:7px 14px;text-decoration:none;color:var(--ink);font-size:15px}
.nav-dropdown a:hover{background:var(--surface);color:var(--accent)}
.btn{display:inline-block;background:var(--accent);color:#fff;text-decoration:none;padding:11px 20px;font-family:var(--font-head);font-weight:600;font-size:18px;border:2px solid var(--accent)}
.btn:hover{background:var(--primary);border-color:var(--primary);color:#fff}
.btn.ghost{background:transparent;color:var(--primary);border-color:var(--primary)}
.btn.ghost:hover{background:var(--primary);color:#fff}
.header-cta{margin-left:6px;padding:9px 16px;font-size:16px;white-space:nowrap}
.navmenu{display:none}
.burger{list-style:none;cursor:pointer;font-family:var(--font-head);font-weight:700;font-size:16px;color:var(--dark);padding:9px 12px;border:2px solid var(--primary)}
.burger::-webkit-details-marker{display:none}
.mobile-panel{display:none}
.hero{background:var(--dark);color:#EAF2F8;padding:34px 0 30px}
.hero-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:28px;align-items:center}
.hero h1{font-family:var(--font-head);font-size:clamp(27px,3.6vw,42px);line-height:1.16;margin:0 0 12px;color:#fff}
.hero .standfirst{font-size:19px;color:#C9DCEC;margin:0 0 18px;max-width:56ch}
.hero .cta-row{display:flex;gap:12px;flex-wrap:wrap}
.hero-img{border:3px solid rgba(255,255,255,.25)}
.img-slot{aspect-ratio:16/9;overflow:hidden;background:var(--surface)}
.img-slot img{width:100%;height:100%;object-fit:cover}
main{display:block}
.page-head{padding:30px 0 6px}
.page-head h1{font-family:var(--font-head);font-size:clamp(26px,3.2vw,38px);line-height:1.2;margin:0 0 10px;color:var(--dark)}
.crumb{font-size:14.5px;color:var(--secondary);margin:0 0 8px}
.crumb a{color:var(--secondary)}
.lede{font-size:19px;max-width:72ch}
section.block{padding:16px 0}
h2{font-family:var(--font-head);font-size:clamp(21px,2.4vw,28px);color:var(--dark);margin:14px 0 10px;line-height:1.25}
h2::after{content:"";display:block;height:3px;width:52px;background:var(--accent);margin-top:6px}
h3{font-family:var(--font-head);font-size:19px;margin:16px 0 6px;color:var(--dark)}
p{margin:0 0 12px;max-width:76ch}
ul.tight{margin:0 0 14px;padding-left:22px}
ul.tight li{margin-bottom:6px}
.page-img{margin:18px 0 6px}
.grid{display:grid;gap:16px}
.grid.cats{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.card{background:#fff;border:1px solid var(--line);padding:0 0 14px;text-decoration:none;color:var(--ink);display:block}
.card:hover{border-color:var(--primary)}
.card .img-slot{border-bottom:3px solid var(--primary)}
.card h3{margin:12px 16px 4px}
.card p{margin:0 16px;font-size:16px;color:var(--secondary)}
.tile{background:#fff;border:1px solid var(--line);padding:14px 16px;text-decoration:none;color:var(--ink);display:block}
.tile:hover{border-color:var(--primary)}
.tile strong{font-family:var(--font-head);color:var(--dark);display:block;font-size:17.5px;margin-bottom:3px}
.tile span{font-size:15.5px;color:var(--secondary)}
.chips{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.chips li{font-family:var(--font-mono);font-size:15px;background:var(--surface);border:1px solid var(--line);padding:5px 10px}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;list-style:none;margin:0;padding:0}
.steps li{background:#fff;border:1px solid var(--line);padding:14px 16px}
.steps b{font-family:var(--font-head);color:var(--primary);display:block;margin-bottom:4px}
.steps span{font-size:16px;color:var(--secondary)}
.cta-band{background:var(--dark);color:#EAF2F8;padding:24px 0;margin:26px 0 0}
.cta-band h2{color:#fff;margin-top:0}
.cta-band p{color:#C9DCEC}
.faq{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line);padding:10px 0}
.faq summary{font-family:var(--font-head);font-weight:600;cursor:pointer;color:var(--dark)}
.faq p{margin-top:8px}
.related{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.related a{background:#fff;border:1px solid var(--line);padding:7px 12px;text-decoration:none;font-size:16px}
.related a:hover{border-color:var(--primary)}
form.inquiry{background:#fff;border:1px solid var(--line);padding:22px;max-width:760px}
form.inquiry label{display:block;font-family:var(--font-head);font-weight:600;margin:14px 0 5px}
form.inquiry label:first-child{margin-top:0}
form.inquiry input[type=text],form.inquiry input[type=email],form.inquiry textarea{width:100%;padding:10px 12px;border:1px solid var(--line);font:inherit;background:#FDFEFE}
form.inquiry textarea{min-height:130px}
form.inquiry button{margin-top:18px}
.botcheck{position:absolute;left:-9999px;opacity:0;height:0;width:0}
.site-footer{background:var(--dark);color:#CFDEEA;margin-top:34px;padding:28px 0 22px;font-size:15.5px}
.site-footer a{color:#fff}
.foot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.foot-grid h3{color:#fff;margin-top:0}
.foot-grid ul{list-style:none;margin:0;padding:0}
.foot-grid li{margin-bottom:5px}
.foot-grid a{text-decoration:none}
.foot-grid a:hover{color:var(--accent)}
.tm{border-top:1px solid rgba(255,255,255,.22);margin-top:20px;padding-top:14px;font-size:14.5px;color:#A9C2D4}
.blog-body p{max-width:74ch}
.post-meta{color:var(--secondary);font-size:15px}
.page-img .img-slot{aspect-ratio:21/9}
section.block.band{background:var(--dark);padding:20px 22px 8px;margin-top:12px}
section.block.band h2{color:#fff}
section.block.band .steps li{background:transparent;border-color:#2A4A66}
section.block.band .steps b{color:#fff}
section.block.band .steps span{color:#C9DCEC}
.grid.two.brands .tile{border:none;border-top:3px solid var(--accent);background:var(--surface)}
@media (max-width:1020px){.grid.cats{grid-template-columns:repeat(2,minmax(0,1fr))}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:820px){
.site-nav{display:none}
.navmenu{display:block;margin-left:auto}
.header-in{flex-wrap:nowrap}
.header-cta{display:none}
.mobile-panel{border-top:1px solid var(--line);background:#fff;max-height:calc(100vh - 118px);overflow-y:auto}
.mobile-panel a{display:block;padding:11px 20px;text-decoration:none;color:var(--ink);font-family:var(--font-head);font-weight:600;border-bottom:1px solid var(--surface)}
.nav:has(.navmenu[open]) .mobile-panel{display:block}
.hero{padding:22px 0}
.hero-grid{grid-template-columns:minmax(0,1fr)}
.hero-img{display:none}
.grid.cats,.grid.two{grid-template-columns:minmax(0,1fr)}
.steps{grid-template-columns:minmax(0,1fr)}
.foot-grid{grid-template-columns:minmax(0,1fr)}
body{font-size:17px}
}
