:root{--ink:#071e2c;--muted:#405969;--cyan:#02b6f1;--light:#f0f8fb;--line:#d4e4eb;--white:#fff;--body:"Avenir Next",Avenir,"Trebuchet MS",sans-serif;--heading:"Avenir Next",Avenir,"Trebuchet MS",sans-serif}
*{box-sizing:border-box}
body{margin:0;font:500 1rem/1.65 var(--body);color:var(--ink);background:#fff}
a{color:#075c7b;text-underline-offset:.24em}
a:hover{color:#00384b}
a:focus-visible,summary:focus-visible{outline:3px solid #087f9d;outline-offset:4px}
img{max-width:100%;display:block}
.wrap{width:min(1180px,calc(100% - 64px));margin-inline:auto}
.skip{position:absolute;top:0;left:12px;padding:12px;background:white;transform:translateY(-110%);z-index:2}
.skip:focus{transform:none}
header{background:#fff;border-bottom:1px solid var(--line)}
.bar,.foot{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 0}
.brand{display:flex;align-items:center;gap:15px;text-decoration:none}
.brand img{width:122px;height:auto}
.brand span{border-left:1px solid var(--line);padding-left:14px;color:var(--muted);font-size:.8rem;line-height:1.3;max-width:115px}
nav,.actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
nav a,.phone{font-weight:750;text-decoration:none}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:13px;padding:12px 20px;min-height:48px;background:var(--cyan);color:#041d2b;text-decoration:none;font-weight:800;border-radius:5px}
.btn:hover{background:#8ce6ff;color:#041d2b}
.hero{background:#071e2c;color:white;padding:clamp(48px,8vw,105px) 0 58px}
.hero-grid,.split,.map-grid{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:clamp(30px,6vw,80px)}
.kicker{font:750 .75rem/1.5 ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase;color:#076280;margin:0 0 16px}
.hero .kicker,.end .kicker{color:#81dfff}
h1,h2,h3{font-family:var(--heading);line-height:1.09;margin:0 0 16px;font-weight:800;letter-spacing:-.045em}
h1{font-size:clamp(2.65rem,6.25vw,5.55rem);letter-spacing:-.069em;line-height:.99}
h1 em{font-style:normal;color:#61defe}
h2{font-size:clamp(1.9rem,4vw,3.3rem)}
h3{font-size:clamp(1.17rem,2.3vw,1.55rem);letter-spacing:-.025em}
p{margin:0 0 18px}
.lede{font-size:clamp(1.06rem,2vw,1.22rem);max-width:58ch}
.hero .lede,.end p:not(.kicker){color:#d1e4ed}
.hero .phone,.end .phone{color:white}
.hero figure{margin:0;overflow:hidden;border:1px solid #285164;border-radius:12px;box-shadow:0 18px 45px #0003}
.hero figure img{width:100%;height:auto}
.trail{border-bottom:1px solid var(--line);background:var(--light)}
.trail nav{padding:13px 0;gap:12px 28px;font-size:.9rem}
.section{padding:clamp(43px,7vw,89px) 0}
.tinted{background:var(--light)}
.heading{max-width:720px;margin-bottom:27px}
.heading p,.tile p,.copy p,.reading p{color:var(--muted)}
.signals{margin:0;border-top:1px solid var(--line)}
.signals div{padding:17px 0;border-bottom:1px solid var(--line)}
.signals dt{font-weight:800}
.signals dd{margin:3px 0 0;color:var(--muted)}
.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.tile{padding:25px 23px;background:white;border:1px solid var(--line);border-radius:9px}
.tile p:last-child{margin:0}
.tile .kicker{margin-bottom:22px}
.path{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:0;list-style:none;margin:26px 0}
.path li{border-top:3px solid var(--cyan);padding-top:15px}
.path strong{display:block;margin-bottom:5px}
.map-grid{grid-template-columns:.78fr 1.22fr}
.map-grid iframe{width:100%;height:360px;border:1px solid var(--line);border-radius:12px;background:#e2eff4;display:block}
.end{background:var(--ink);color:white;padding:clamp(40px,7vw,80px) 0}
.end .actions{margin-top:23px}
.foot{font-size:.9rem;flex-wrap:wrap}
.foot p{margin:0}
.article-hero{padding:clamp(44px,7vw,85px) 0}
.article-hero h1{max-width:17ch;font-size:clamp(2.5rem,6.4vw,5.1rem);margin-bottom:21px}
.article-hero .crumb{color:#a1e7ff;display:inline-block;margin-bottom:23px}
.article-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(245px,1fr);gap:clamp(24px,6vw,80px);align-items:start}
.reading{max-width:69ch}
.reading h2{font-size:clamp(1.6rem,3vw,2.25rem);margin-top:34px}
.reading h2:first-child{margin-top:0}
.reading li{margin:0 0 9px}
.related ul{padding-left:18px;margin-bottom:0}
.related li+li{margin-top:10px}
details{border-top:1px solid var(--line);padding:15px 0}
details:last-child{border-bottom:1px solid var(--line)}
summary{cursor:pointer;font-weight:800}
details p{margin:10px 0 0;max-width:66ch}
@media(max-width:820px){.hero-grid,.split,.map-grid,.article-layout{grid-template-columns:1fr}.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.hero figure{max-width:630px}.brand span{display:none}}
@media(max-width:540px){.wrap{width:calc(100% - 36px)}.bar{gap:8px}.bar nav{gap:10px}.bar nav>a:not(.btn){display:none}.brand img{width:105px}.tiles,.path{grid-template-columns:1fr}.map-grid iframe{height:300px}.actions{gap:14px 18px}.hero{padding-bottom:36px}}
.brand img{width:auto;height:64px}
@media(max-width:540px){.brand img{height:55px}}
