@font-face{font-family:'DM Sans';src:url('/assets/fonts/dm-sans-latin.woff2') format('woff2');font-display:swap;font-weight:400 800}@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-latin.woff2') format('woff2');font-display:swap;font-weight:400 800}
:root{--ink:#102a33;--muted:#4a6268;--paper:#f8f8f3;--white:#fff;--blue:#0d6474;--sky:#caeff0;--coral:#f47f63;--line:#d9e5e3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 'DM Sans',sans-serif}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.12;letter-spacing:-.025em;margin:0 0 .7em}h1{font-size:clamp(2.5rem,5vw,4.6rem);max-width:12ch}h2{font-size:clamp(2rem,3.3vw,3rem);max-width:17ch}h3{font-size:1.22rem}p{margin:0 0 1.25em}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}a:hover{color:var(--blue)}img{max-width:100%;display:block}.shell{width:min(1180px,calc(100% - 48px));margin-inline:auto}.skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:10px;z-index:20}.skip:focus{left:10px}.site-header{position:relative;z-index:10;background:#fff;border-bottom:1px solid var(--line)}.head-row{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{text-decoration:none;font:800 1.25rem/1 Manrope,sans-serif;display:flex;align-items:center;gap:10px;white-space:nowrap}.brand small{display:block;font:700 .54rem/1.8 'DM Sans',sans-serif;letter-spacing:.15em;color:var(--blue)}.brand-mark{width:44px;height:44px;border-radius:13px;background:var(--blue);color:#fff;display:grid;place-items:center;position:relative}.brand-mark span{position:absolute;font-size:10px;right:6px;top:6px;color:var(--coral)}nav{display:flex;align-items:center;gap:24px;font-size:.88rem;font-weight:700}nav>a,.nav-services>a{text-decoration:none}nav a:hover{color:var(--blue)}.nav-services{display:flex;align-items:center;position:relative;gap:3px}.services-toggle{border:0;background:transparent;cursor:pointer;font-size:1.3rem;color:var(--ink);padding:2px 6px}.services-menu{display:none;position:absolute;top:100%;left:0;min-width:235px;background:#fff;box-shadow:0 14px 30px rgba(16,42,51,.12);border-radius:14px;padding:10px}.services-menu a{display:block;padding:9px 12px;text-decoration:none;border-radius:8px}.services-menu a:hover{background:var(--sky)}.nav-services:hover .services-menu,.nav-services:focus-within .services-menu,.nav-services.open .services-menu{display:block}.nav-cta{background:var(--ink);color:white;border-radius:999px;padding:10px 17px}.nav-cta:hover{color:white;background:var(--blue)}.menu-button{display:none}.hero{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:5%;padding-block:74px 84px}.hero-copy{padding-block:20px}.local-line{font-size:.73rem;letter-spacing:.18em;font-weight:800;color:var(--blue);margin-bottom:21px}.lead{font-size:clamp(1.08rem,1.5vw,1.3rem);line-height:1.55;color:var(--muted);max-width:48ch}.hero-actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:32px}.button{display:inline-flex;gap:16px;align-items:center;justify-content:center;padding:14px 22px;background:var(--coral);border-radius:999px;color:var(--ink);font-weight:800;text-decoration:none;box-shadow:0 9px 19px rgba(16,42,51,.13)}.button:hover{background:#ffad91;color:var(--ink)}.text-link{font-weight:700}.hero-media{position:relative;aspect-ratio:1.18;overflow:hidden;border-radius:28px 28px 120px 28px;background:var(--sky)}.hero-media img{height:100%;width:100%;object-fit:cover}.hero-media span{position:absolute;bottom:15px;left:18px;background:#ffffffdf;border-radius:999px;padding:4px 12px;font-size:.7rem}.section{padding-block:75px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:26px}.section-heading p{max-width:44ch;color:var(--muted)}.measure{max-width:70ch;color:var(--muted);font-size:1.1rem}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{min-height:210px;padding:28px;background:#fff;border-radius:16px;position:relative;text-decoration:none;box-shadow:0 12px 32px rgba(14,61,67,.06);transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(14,61,67,.12)}.card h3{max-width:15ch;margin-top:34px}.card p{color:var(--muted);font-size:.94rem}.card-arrow{position:absolute;right:22px;top:16px;font-size:1.3rem;color:var(--blue)}.band{background:var(--blue);color:#fff;padding-block:74px}.band-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%}.band-grid p{font-size:1.12rem;max-width:50ch;color:#e2f2f3}.button.light{background:#fff;color:var(--blue)}.split{display:grid;grid-template-columns:1fr 1fr;gap:12%}.split>div:first-child p{max-width:52ch;color:var(--muted);font-size:1.08rem}.note,.article-note{background:#e4f1ee;border-radius:18px;padding:32px}.note h3{margin-bottom:15px}.note ul{padding-left:20px;margin:0}.note li{margin-bottom:9px}.city-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.city-grid a{display:flex;justify-content:space-between;padding:16px 20px;background:#fff;border-radius:12px;text-decoration:none;font-weight:700}details{border-bottom:1px solid var(--line);padding:15px 0;max-width:800px}summary{cursor:pointer;font-weight:700;font-size:1.1rem}details p{padding-top:12px;color:var(--muted)}.article{padding-block:58px 100px}.article header{max-width:850px;margin:30px auto 52px}.article h1{max-width:17ch}.article-body{max-width:740px;margin:auto;font-size:1.07rem}.article-body h2{font-size:1.7rem;margin-top:2.4em}.article-body p{line-height:1.75}.byline{font-size:.84rem;color:var(--muted)}.back{font-weight:700;font-size:.9rem}footer{background:var(--ink);color:#e6f3f2;padding-top:70px}footer a:hover{color:var(--coral)}.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:35px}.footer-grid>div{display:flex;flex-direction:column;align-items:start;gap:8px}.footer-grid h2{font-size:.9rem;color:#a7d4d5;margin-bottom:8px}.footer-grid a{font-size:.88rem;text-decoration:none}.footer-brand{font-size:1.4rem!important;color:#fff}.footer-grid p{max-width:24ch;font-size:.88rem;color:#b8c9c9}.foot-bottom{border-top:1px solid #31505a;margin-top:60px;padding:20px 0;font-size:.8rem;color:#b8c9c9}::selection{background:var(--coral);color:var(--ink)}:focus-visible{outline:3px solid var(--coral);outline-offset:3px}button{font:inherit}
@media(max-width:980px){nav{gap:12px;font-size:.8rem}.brand{font-size:1rem}.hero{gap:4%}.footer-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.shell{width:min(100% - 32px,1180px)}.head-row{min-height:72px}.menu-button{display:block;background:var(--ink);color:#fff;border:0;border-radius:10px;padding:8px 14px;font-weight:700}nav{display:none;position:absolute;left:0;right:0;top:72px;background:#fff;padding:18px 16px 24px;box-shadow:0 15px 25px #102a3322;align-items:stretch;flex-direction:column;font-size:1rem}nav.open{display:flex}.nav-services{display:block}.nav-services>a{display:inline-block}.services-menu{position:static;box-shadow:none;background:#eef6f4;margin-top:8px}.nav-services:hover .services-menu{display:none}.nav-services.open .services-menu{display:block}.nav-cta{text-align:center}.hero{grid-template-columns:1fr;padding-block:45px 55px;gap:30px}.hero-media{aspect-ratio:1.25;border-radius:20px 20px 75px 20px}.section{padding-block:52px}.section-heading,.band-grid,.split{display:block}.card-grid{grid-template-columns:1fr}.card{min-height:150px}.card h3{margin-top:24px}.band{padding-block:56px}.band-grid h2{margin-bottom:24px}.note{margin-top:28px}.city-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.article{padding-block:40px 65px}}@media(max-width:430px){.footer-grid{grid-template-columns:1fr}.brand-mark{width:38px;height:38px}.brand{font-size:1rem}.hero-actions{align-items:stretch;flex-direction:column}.hero-actions .button{text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card{transition:none}}
.header-phone,.footer-phone{font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.header-phone{color:var(--blue)}.footer-phone{color:#fff;font-size:1.14rem!important}.mobile-phone{display:none}@media(max-width:1120px){nav{gap:10px}.header-phone{font-size:.78rem}}@media(max-width:700px){.mobile-phone{display:block;margin-left:auto;font-size:.82rem;font-weight:800;color:var(--blue);white-space:nowrap}.header-phone{display:none}}@media(max-width:390px){.mobile-phone{font-size:.73rem}.brand{font-size:.9rem}.brand-mark{width:33px;height:33px}}

