:root{--color-primary:#1d2f55;--color-secondary:#294b42;--color-accent:#b7c69b;--color-background:#f6f3ec;--color-surface:#fff;--color-text:#1f2925;--color-muted:#61706a;--color-border:#d8d9ce;--stone:#d9d0bf;--max:1180px;--serif:Georgia,'Times New Roman',serif;--sans:Inter,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--color-background);color:var(--color-text);font-family:var(--sans);font-size:16px;line-height:1.65}img{display:block;max-width:100%;height:auto}a{color:inherit}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #e0ad62;outline-offset:3px}.skip{position:absolute;left:-9999px;top:1rem;background:#fff;padding:.75rem;z-index:100}.skip:focus{left:1rem}.wrap{width:min(calc(100% - 2rem),var(--max));margin-inline:auto}.topline{background:var(--color-primary);color:#fff;font-size:.84rem}.topline .wrap{display:flex;justify-content:center;gap:1rem;padding:.45rem 0}.topline a{text-decoration:none}.site-head{background:rgba(246,243,236,.97);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:20}.navrow{display:flex;align-items:center;justify-content:space-between;min-height:78px;gap:1rem}.brand{display:flex;align-items:center;text-decoration:none;min-width:0}.brand img{width:58px;height:58px;object-fit:contain}.brand span{font-family:var(--serif);font-size:1.08rem;color:var(--color-primary);line-height:1.1}.menu{display:none;border:1px solid var(--color-primary);background:transparent;padding:.65rem .8rem;color:var(--color-primary);font-weight:700}.nav{display:flex;align-items:center;gap:1.25rem}.nav a{text-decoration:none;font-size:.9rem;font-weight:700}.nav a[aria-current=page]{border-bottom:2px solid var(--color-secondary)}.call{display:inline-flex;align-items:center;justify-content:center;background:var(--color-primary);color:#fff;text-decoration:none;padding:.85rem 1.15rem;font-weight:800;letter-spacing:.01em}.call.light{background:#fff;color:var(--color-primary)}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-weight:800;font-size:.76rem;color:var(--color-secondary)}h1,h2,h3{font-family:var(--serif);line-height:1.08;color:var(--color-primary);font-weight:500;margin:0 0 1rem}h1{font-size:clamp(2.8rem,8vw,6.7rem);letter-spacing:-.055em}h2{font-size:clamp(2rem,5vw,4.25rem);letter-spacing:-.035em}h3{font-size:1.45rem}p{margin:0 0 1.2rem}.lead{font-size:clamp(1.1rem,2vw,1.35rem);max-width:43rem;color:#47534e}.hero{position:relative;overflow:hidden;padding:clamp(2.5rem,7vw,6.5rem) 0 4rem}.hero-grid{display:grid;gap:2rem}.hero-copy{position:relative;z-index:2}.hero-copy h1 span{display:block;color:var(--color-secondary);margin-left:clamp(1rem,6vw,5rem)}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.8rem}.text-link{display:inline-flex;padding:.82rem 1rem;border-bottom:2px solid var(--color-primary);font-weight:800;text-decoration:none}.hero-image{position:relative;min-height:430px}.hero-image:before{content:"";position:absolute;inset:-22px 25% 40% -30px;border:1px solid var(--color-secondary);z-index:-1}.hero-image img{width:100%;height:100%;min-height:430px;object-fit:cover}.plan-tag{position:absolute;left:-1rem;bottom:1.25rem;background:var(--color-primary);color:#fff;padding:1rem 1.2rem;max-width:220px;font-family:var(--serif);font-size:1.05rem}.section{padding:clamp(4rem,9vw,8rem) 0}.section.white{background:#fff}.section.navy{background:var(--color-primary);color:#fff}.section.navy h2,.section.navy h3{color:#fff}.section.navy .eyebrow{color:#cdd8b6}.intro-grid,.split{display:grid;gap:2.5rem}.rule-title{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1.2rem;margin-bottom:2.2rem}.rule-title:after{content:"";height:1px;background:var(--color-border)}.service-list{border-top:1px solid var(--color-border)}.service-row{display:grid;grid-template-columns:2.5rem 1fr auto;gap:1rem;padding:1.3rem 0;border-bottom:1px solid var(--color-border);align-items:start}.service-row strong{font-family:var(--serif);font-size:1.35rem;color:var(--color-primary);font-weight:500}.service-row span:first-child{color:var(--color-secondary);font-weight:800}.service-row p{margin:0;color:var(--color-muted);max-width:34rem}.mosaic{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:250px 180px;gap:.65rem}.mosaic img{width:100%;height:100%;object-fit:cover}.mosaic img:first-child{grid-row:1/3}.caption{font-size:.78rem;color:var(--color-muted);margin-top:.65rem}.needs{counter-reset:item}.need{display:grid;grid-template-columns:3rem 1fr;gap:1rem;padding:1.6rem 0;border-top:1px solid rgba(255,255,255,.25)}.need:before{counter-increment:item;content:"0" counter(item);color:#cdd8b6;font-weight:800}.need h3{margin-bottom:.4rem}.need p{color:#d7dce2;margin:0}.process{display:grid;gap:1rem}.step{padding:1.5rem 0;border-top:4px solid var(--stone)}.step b{display:block;color:var(--color-secondary);font-size:.8rem;letter-spacing:.15em;margin-bottom:.7rem}.trust-grid{display:grid;gap:1.5rem}.trust-item{padding-left:1.1rem;border-left:3px solid var(--color-accent)}.trust-item p{color:var(--color-muted)}.coverage-band{background:var(--color-secondary);color:#fff;padding:3rem 0}.coverage-band .wrap{display:grid;gap:2rem;align-items:center}.coverage-band h2{color:#fff;font-size:clamp(2rem,5vw,3.6rem)}.area-list{display:flex;flex-wrap:wrap;gap:.55rem}.area-list span{border:1px solid rgba(255,255,255,.35);padding:.45rem .7rem}.faq{max-width:850px}.faq details{border-top:1px solid var(--color-border);padding:1rem 0}.faq details:last-child{border-bottom:1px solid var(--color-border)}.faq summary{cursor:pointer;font-family:var(--serif);font-size:1.2rem;color:var(--color-primary);list-style:none;display:flex;justify-content:space-between;gap:1rem}.faq summary:after{content:"+";font-family:var(--sans)}.faq details[open] summary:after{content:"–"}.faq details p{padding-top:.8rem;color:var(--color-muted)}.cta{background:var(--color-primary);color:#fff;padding:clamp(3rem,7vw,5rem) 0}.cta .wrap{display:grid;gap:1.5rem;align-items:end}.cta h2{color:#fff}.cta .big-phone{font-size:clamp(1.6rem,5vw,3.3rem);font-family:var(--serif);text-decoration:none;border-bottom:1px solid rgba(255,255,255,.4)}.footer{background:#13213d;color:#dbe0e8;padding:3rem 0 6rem}.footer-grid{display:grid;gap:2rem}.footer h3{color:#fff;font-family:var(--sans);font-size:.9rem;text-transform:uppercase;letter-spacing:.12em}.footer a{display:block;color:#dbe0e8;text-decoration:none;margin:.3rem 0}.footer .legal{border-top:1px solid rgba(255,255,255,.15);padding-top:1.5rem;margin-top:2rem;color:#aeb8c8;font-size:.8rem}.page-hero{padding:4.5rem 0 3.5rem;background:linear-gradient(90deg,var(--color-background) 65%,#e6e2d8 65%)}.page-hero h1{font-size:clamp(2.7rem,7vw,5.6rem)}.page-hero p{max-width:48rem}.gallery-strip{display:grid;grid-template-columns:1.2fr .8fr;gap:.7rem;height:440px}.gallery-strip img{width:100%;height:100%;object-fit:cover}.contact-grid{display:grid;gap:2rem}.contact-box{background:var(--color-primary);color:#fff;padding:clamp(1.5rem,5vw,3rem)}.contact-box h2{color:#fff}.contact-method{display:block;color:#fff;font-family:var(--serif);font-size:clamp(1.3rem,4vw,2.4rem);margin:1rem 0}.map{border:0;width:100%;min-height:430px}.mobile-call{position:fixed;bottom:.65rem;left:.75rem;right:.75rem;z-index:30;background:#fff;color:var(--color-primary);border:2px solid var(--color-primary);padding:.8rem;text-align:center;text-decoration:none;font-weight:900;box-shadow:0 8px 30px rgba(0,0,0,.18)}
@media(max-width:820px){.menu{display:block}.nav{position:absolute;left:0;right:0;top:78px;background:var(--color-background);border-bottom:1px solid var(--color-border);padding:1rem;display:none;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav .call{width:100%}.site-head{top:0}.topline{display:none}.hero-image{margin-left:1rem}.service-row{grid-template-columns:2.5rem 1fr}.service-row p{grid-column:2}.brand span{display:none}}
@media(min-width:821px){.hero-grid{grid-template-columns:1.05fr .95fr;align-items:center}.intro-grid{grid-template-columns:.85fr 1.15fr}.split{grid-template-columns:1fr 1fr;align-items:center}.process{grid-template-columns:repeat(3,1fr)}.trust-grid{grid-template-columns:repeat(2,1fr)}.coverage-band .wrap{grid-template-columns:1fr 1.2fr}.cta .wrap{grid-template-columns:1.1fr .9fr}.footer-grid{grid-template-columns:1.7fr 1fr 1fr 1.2fr}.contact-grid{grid-template-columns:.85fr 1.15fr}.mobile-call{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}

/* Refined editorial scale and alignment */
h1,h2,h3{text-align:left}
h1,.page-hero h1{font-size:clamp(2.5rem,5vw,3.75rem);letter-spacing:-.04em;max-width:18ch}
h2,.coverage-band h2{font-size:clamp(1.9rem,3.5vw,2.5rem);letter-spacing:-.025em;max-width:24ch}
.hero-copy h1 span{margin-left:0}
.section{padding:clamp(4rem,7vw,6.5rem) 0}
.content-note{padding:1.4rem 0 0;margin-top:1.4rem;border-top:1px solid var(--color-border);color:var(--color-muted)}
.content-note strong{color:var(--color-primary)}
.service-feature{align-items:start}
.service-feature>div:first-child{min-width:0}
.service-feature .service-list{margin-top:1.75rem}
.service-feature .service-row{grid-template-columns:2.4rem minmax(145px,.72fr) minmax(220px,1.28fr);gap:1.35rem;padding:1.55rem 0}
.service-feature .service-row p{max-width:none}
.service-feature .mosaic{position:sticky;top:110px;grid-template-rows:310px 220px}

@media(min-width:821px){
  .service-feature{grid-template-columns:minmax(0,1.3fr) minmax(330px,.7fr);gap:clamp(3rem,6vw,6rem)}
}
@media(max-width:820px){
  .service-feature .service-row{grid-template-columns:2.25rem 1fr;gap:.8rem 1rem}
  .service-feature .service-row p{grid-column:2}
  .service-feature .mosaic{position:static;grid-template-rows:220px 150px}
}
