
:root{--green:#082d59;--green2:#6f7882;--ink:#0d1b2c;--muted:#5f6872;--light:#f4f6f8;--line:#d8dee5;--max:1180px;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.55;background:#fff}a{color:inherit}.topbar{background:#071d38;color:#fff;padding:9px 5%;display:flex;justify-content:space-between;font-size:12px;font-weight:800;letter-spacing:.35px}.nav{position:sticky;top:0;z-index:50;background:#fff;box-shadow:0 3px 20px #0001}.navin{max-width:var(--max);margin:auto;display:flex;align-items:center;gap:22px;min-height:92px;padding:0 22px}.brand img{width:245px;display:block}.navlinks{margin-left:auto;display:flex;gap:18px;align-items:center}.navlinks a{text-decoration:none;text-transform:uppercase;font-size:11px;font-weight:900}.navlinks a:hover{color:var(--green)}.hamb{display:none;background:none;border:0;font-size:26px}.btn{display:inline-block;background:var(--green);border:1px solid var(--green);color:#fff;padding:14px 21px;text-decoration:none;text-transform:uppercase;font-size:12px;font-weight:900;letter-spacing:.5px;cursor:pointer}.btn:hover{background:#061f3e}.btn.outline{background:transparent;color:var(--green)}.wrap{max-width:var(--max);margin:auto;padding:0 22px}.hero{min-height:630px;color:#fff;background:radial-gradient(circle at 78% 25%,#316d4a80,transparent 30%),linear-gradient(110deg,#08110cea 0%,#0d1912dd 50%,#163422a8 100%);position:relative;overflow:hidden}.hero:after{content:"";position:absolute;right:-120px;top:60px;width:500px;height:500px;border:70px solid #ffffff0c;transform:rotate(45deg)}.hero .wrap{padding-top:120px;position:relative;z-index:2}.kicker,.eyebrow{color:#1d5f9f;text-transform:uppercase;letter-spacing:2px;font-size:13px;font-weight:900}.hero h1{font-size:68px;line-height:.98;letter-spacing:-2.5px;margin:10px 0 24px}.hero h1 span{color:#c0cad5}.hero p{font-size:20px;max-width:690px;color:#e2e8e4}.actions{display:flex;gap:12px;margin-top:28px}.actions .outline{color:#fff;border-color:#fff}.badge{display:inline-block;margin-top:48px;border-left:4px solid #91a6bb;background:#080c09aa;padding:16px 25px}.badge strong{font-size:20px}.section{padding:82px 0}.gray{background:var(--light)}.dark{background:#07192f;color:#fff}.two{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.title{font-size:44px;line-height:1.03;letter-spacing:-1.3px;margin:10px 0 20px}.lead{font-size:18px;color:var(--muted)}.dark .lead,.dark p{color:#cad1cc}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:#fff;border:1px solid var(--line);padding:30px}.card h3{font-size:20px;margin:10px 0}.card p{color:var(--muted)}.num{font-weight:900;color:var(--green)}.shield-panel{min-height:440px;background:linear-gradient(145deg,#071d38,#123f70);display:grid;place-items:center;padding:50px;position:relative;overflow:hidden}.shield-panel img{background:#fff;max-width:92%;box-shadow:0 20px 50px #0004}.checks{list-style:none;padding:0}.checks li{position:relative;padding-left:28px;margin:10px 0}.checks li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:900}.servicehero{background:linear-gradient(125deg,#07192f,#0c3765);color:#fff;padding:82px 0}.servicehero p{color:#d8dfda;max-width:760px}.servicehero .title{font-size:52px;max-width:850px}.band{background:var(--green);color:#fff;padding:50px 0}.bandin{display:flex;justify-content:space-between;align-items:center;gap:35px}.band .title{margin:0}.band .btn{background:#fff;color:var(--green);border-color:#fff}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.statrow{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#ffffff26;margin-top:45px}.stat{padding:22px;background:#07192fd9}.stat b{display:block;color:#aebdca;font-size:14px}.reviews .stars{font-size:21px;color:#b28328;letter-spacing:3px}.review-note{font-size:12px;color:#737b76}.estimate-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.step{border-top:4px solid var(--green);padding:22px;background:#fff}.step b{display:block;color:var(--green);font-size:13px}.formwrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:50px}.form{background:#fff;border:1px solid var(--line);padding:30px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}input,select,textarea{width:100%;padding:14px;border:1px solid #cbd3ce;margin-bottom:12px;font:inherit}textarea{min-height:130px;resize:vertical}.filebox{border:1px dashed #9ca8a0;padding:18px;margin-bottom:12px;background:#fafcfa}.small{font-size:12px;color:#6b746e}.contactlinks a{font-weight:900;color:var(--green);text-decoration:none}.property-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.property-grid .card{padding:24px}.cta-phone{font-size:27px;font-weight:900;color:var(--green);text-decoration:none}.disclaimer{font-size:12px;color:#717a74;border-left:3px solid #b28a32;padding-left:12px;margin-top:20px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery .tile{min-height:260px;background:linear-gradient(145deg,#07192f,#38536c);color:#fff;display:flex;align-items:end;padding:25px;font-size:20px;font-weight:900}.faq details{border-bottom:1px solid var(--line);padding:16px 0}.faq summary{font-weight:900;cursor:pointer}.faq p{color:var(--muted)}footer{background:#06172c;color:#fff;padding:55px 0}.footgrid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:36px}.footlogo{width:230px;background:#fff}.footgrid a{display:block;text-decoration:none;color:#bec7c0;margin:7px 0;font-size:14px}.footgrid b{display:block;color:#b8c6d4;text-transform:uppercase;font-size:12px;margin-bottom:9px}.copy{background:#030d18;color:#777;text-align:center;padding:13px;font-size:12px}
@media(max-width:1000px){.navlinks{gap:11px}.brand img{width:210px}.cards,.property-grid{grid-template-columns:1fr 1fr}.estimate-steps{grid-template-columns:1fr 1fr}.hero h1{font-size:56px}}
@media(max-width:820px){.hamb{display:block;margin-left:auto}.navlinks{display:none;position:absolute;top:92px;left:0;right:0;background:#fff;flex-direction:column;align-items:flex-start;padding:22px;box-shadow:0 15px 25px #0002}.navlinks.open{display:flex}.navin>.btn{display:none}.two,.formwrap{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr}.statrow{grid-template-columns:1fr 1fr}.servicehero .title{font-size:44px}.footgrid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.topbar span:last-child{display:none}.navin{min-height:76px}.navlinks{top:76px}.brand img{width:190px}.hero{min-height:650px}.hero .wrap{padding-top:85px}.hero h1{font-size:41px}.actions{flex-direction:column;align-items:flex-start}.title{font-size:34px}.servicehero .title{font-size:38px}.section{padding:62px 0}.cards,.property-grid,.estimate-steps,.gallery,.formgrid{grid-template-columns:1fr}.bandin{align-items:flex-start;flex-direction:column}.footgrid{grid-template-columns:1fr}}

/* SolidShield navy brand refresh */
.brand img{width:245px;max-height:82px;object-fit:contain}
.hero{min-height:600px;background:linear-gradient(90deg,rgba(3,13,24,.96) 0%,rgba(3,13,24,.88) 38%,rgba(3,13,24,.36) 68%,rgba(3,13,24,.12) 100%),url('hero-house.jpg') center/cover no-repeat;}
.hero:after{display:none}.hero .wrap{padding-top:105px}.hero h1 span{color:#aeb5bc}.hero p{max-width:560px}.badge{background:rgba(7,29,56,.90);border-left-color:#9ba8b5}.topbar{background:#061b35}.navlinks a:hover{color:#0b4f8a}.btn{background:#082d59;border-color:#082d59}.btn:hover{background:#061f3e}.btn.outline{color:#082d59}.section .eyebrow,.kicker{color:#174f86}.band{background:#082d59}.band .btn{color:#082d59}.num,.checks li:before,.contactlinks a,.cta-phone,.step b{color:#082d59}.step{border-top-color:#082d59}.footlogo{background:#fff;padding:5px}.shield-panel{background:linear-gradient(145deg,#07192f,#123f70)}
@media(max-width:560px){.brand img{width:175px}.hero{background-position:62% center}.hero .wrap{padding-top:78px}}

/* HOMEPAGE REFERENCE MATCH */
.home-reference{margin:0;background:#fff;color:#0b1b31;font-family:Arial,Helvetica,sans-serif}
.home-reference .ref-topbar{height:40px;background:#061b35;color:#fff;padding:0 5.2%;display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:800;letter-spacing:.2px}
.ref-header{background:#fff;height:150px}
.ref-header-inner{max-width:1450px;height:100%;margin:auto;padding:0 42px;display:grid;grid-template-columns:330px 1fr 215px;align-items:center;gap:22px}
.ref-logo img{width:280px;height:128px;object-fit:contain;display:block}
.ref-nav{display:flex;align-items:center;justify-content:center;gap:25px;white-space:nowrap}
.ref-nav a{text-decoration:none;text-transform:uppercase;color:#0b1b31;font-size:11px;font-weight:900;padding:16px 0 10px;border-bottom:2px solid transparent}
.ref-nav a.active{border-bottom-color:#082d59}
.ref-contact{display:flex;flex-direction:column;align-items:stretch;gap:14px}
.ref-phone{text-decoration:none;color:#082d59;font-size:25px;font-weight:900;text-align:center}
.ref-quote{text-decoration:none;background:#082d59;color:#fff;text-align:center;padding:15px 16px;font-size:12px;font-weight:900;text-transform:uppercase;border-radius:2px}
.ref-hamb{display:none}

.ref-hero{height:350px;position:relative;overflow:hidden;color:#fff;background:url('hero-house.jpg') right center/cover no-repeat}
.ref-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,9,17,.98) 0%,rgba(2,9,17,.92) 28%,rgba(2,9,17,.58) 52%,rgba(2,9,17,.08) 82%)}
.ref-hero-copy{position:absolute;left:6.8%;top:35px;z-index:2}
.ref-hero h1{color:#fff;font-size:58px;line-height:.94;letter-spacing:-2.6px;margin:0 0 20px;font-weight:1000;text-shadow:0 2px 6px #0008}
.ref-hero h1 span{color:#aab1b8}
.ref-hero-copy p{font-size:17px;line-height:1.5;margin:0 0 22px;color:#fff;font-weight:600}
.ref-actions{display:flex;gap:16px}
.ref-btn{display:inline-block;min-width:155px;text-align:center;text-decoration:none;text-transform:uppercase;background:#082d59;color:#fff;padding:14px 18px;border:1px solid #082d59;font-size:12px;font-weight:900}
.ref-btn-outline{background:rgba(4,13,23,.4);border-color:#fff}
.ref-region{position:absolute;right:5.8%;bottom:0;z-index:3;width:420px;height:143px;background:linear-gradient(135deg,#071b35,#0d3766);color:#fff;clip-path:polygon(12% 0,93% 0,100% 100%,0 100%);display:flex;align-items:center;justify-content:center;gap:25px;padding:22px 32px 15px 42px;border-top:1px solid #fff}
.ref-region .ref-map{width:86px;height:86px;border:2px solid #fff;border-radius:50%;display:grid;place-items:center;font-size:44px;font-weight:900}
.ref-region .ref-serving{display:block;color:#aab4bd;font-weight:900;font-size:13px}
.ref-region strong{display:block;font-size:31px;letter-spacing:.3px;line-height:1.1;margin:3px 0 7px}
.ref-region small{font-size:12px;font-weight:900;line-height:1.35}

.ref-about{min-height:335px;display:grid;grid-template-columns:31% 36% 33%;background:#fff}
.ref-about-left{padding:30px 36px 25px 6.8%}
.ref-eyebrow{font-size:12px;color:#082d59;font-weight:900;letter-spacing:.4px}
.ref-about-left h2{font-size:31px;line-height:1.02;margin:8px 0 12px;letter-spacing:-1px}
.ref-rule{width:35px;border-top:2px solid #082d59;margin-bottom:13px}
.ref-about-left p{font-size:12px;line-height:1.45;margin:7px 0;color:#111}
.ref-small-btn{display:inline-block;background:#082d59;color:#fff;text-decoration:none;text-transform:uppercase;font-size:10px;font-weight:900;padding:11px 16px;margin-top:8px}
.ref-values{padding:30px 26px 20px 10px;display:grid;grid-template-columns:1fr 1fr;gap:28px 28px}
.ref-values article{display:grid;grid-template-columns:64px 1fr;gap:13px;align-items:start}
.ref-icon{width:54px;height:54px;border-radius:50%;background:#082d59;color:#fff;display:grid;place-items:center;font-size:27px;font-weight:900}
.ref-values h3{font-size:12px;margin:5px 0 7px;line-height:1.2}
.ref-values p{font-size:11px;line-height:1.45;margin:0;color:#111}
.ref-values i{display:block;width:35px;border-top:2px solid #082d59;margin-top:12px}
.ref-team{background:#082d59;color:#fff;display:flex;flex-direction:column;overflow:hidden}
.ref-team img{display:block;width:100%;height:157px;object-fit:cover;object-position:center 45%}
.ref-team-quote{background:linear-gradient(90deg,#0d4b24,#082d59);padding:12px 40px 15px;height:178px;position:relative}
.ref-team-quote>span{font-size:44px;font-family:Georgia,serif;line-height:.7;font-weight:bold}
.ref-team-quote p{font-size:14px;line-height:1.45;margin:3px 0 9px}
.ref-team-quote small{font-size:11px}

.ref-services{min-height:130px;background:linear-gradient(90deg,#071d38,#071523);color:#fff;display:grid;grid-template-columns:repeat(6,1fr);padding:18px 4%}
.ref-services>a{color:#fff;text-decoration:none;display:grid;grid-template-columns:58px 1fr;gap:10px;padding:0 18px;border-right:1px solid #ffffff44;align-items:start}
.ref-services>a:last-child{border-right:0}
.ref-services b{font-size:42px;line-height:1;color:#a9b6c4;font-weight:400}
.ref-services h3{font-size:12px;margin:0 0 6px}
.ref-services p{font-size:10px;line-height:1.55;margin:0;color:#fff}

.ref-promos{display:grid;grid-template-columns:repeat(4,1fr);margin:0 3.1%;height:125px;background:#fff}
.ref-promo{padding:13px 20px;color:#fff;text-decoration:none;border-right:2px solid #fff;position:relative;overflow:hidden}
.ref-promo h3{font-size:18px;line-height:1.03;margin:0 0 8px}
.ref-promo p{font-size:11px;line-height:1.4;margin:0 0 8px;max-width:78%}
.ref-promo span{display:inline-block;background:#fff;color:#082d59;padding:7px 12px;font-size:9px;font-weight:900}
.ref-promo.emergency{background:linear-gradient(120deg,#082d59,#123d70)}
.ref-promo.finance{background:linear-gradient(120deg,#6e747c,#8e9399)}
.ref-promo.reviews{background:#082d59}
.ref-promo.estimate{background:#f2f3f5;color:#082d59}
.ref-promo.estimate span{border:1px solid #082d59}
.ref-stars{color:#ffc400;letter-spacing:1px;font-size:20px;margin-top:-3px}

.ref-footer{min-height:145px;background:#082d59;color:#fff;display:grid;grid-template-columns:250px 1.1fr 1fr .8fr 1fr;gap:24px;padding:18px 4.5% 10px}
.ref-footer-logo img{width:215px;height:110px;object-fit:contain;background:#fff}
.ref-footer h4{font-size:11px;margin:4px 0 7px}
.ref-footer p,.ref-footer a{font-size:10px;line-height:1.4;color:#fff;text-decoration:none;margin:4px 0;display:block}
.ref-footer .ref-social{font-size:19px;letter-spacing:5px}
.ref-copy{background:#082d59;color:#fff;padding:2px 4.5% 10px;font-size:9px;display:flex;justify-content:space-between}

@media(max-width:1150px){
  .ref-header-inner{grid-template-columns:250px 1fr 190px;padding:0 20px}
  .ref-logo img{width:225px}
  .ref-nav{gap:14px}.ref-nav a{font-size:10px}
  .ref-phone{font-size:21px}
  .ref-about{grid-template-columns:34% 36% 30%}
  .ref-services{grid-template-columns:repeat(3,1fr);row-gap:20px}
  .ref-services>a:nth-child(3){border-right:0}
  .ref-promos{height:auto}
}
@media(max-width:850px){
  .ref-topbar{font-size:9px}
  .ref-header{height:92px}.ref-header-inner{grid-template-columns:210px 1fr auto}
  .ref-logo img{width:190px;height:82px}
  .ref-hamb{display:block;justify-self:end;background:none;border:0;font-size:26px;color:#082d59}
  .ref-nav{display:none;position:absolute;left:0;right:0;top:132px;background:#fff;z-index:99;padding:20px;flex-direction:column;box-shadow:0 12px 25px #0002}
  .ref-nav.open{display:flex}
  .ref-contact{display:none}
  .ref-hero{height:500px}.ref-hero-copy{left:7%;right:7%;top:65px}
  .ref-hero h1{font-size:48px}
  .ref-region{right:0;width:370px}
  .ref-about{grid-template-columns:1fr}
  .ref-about-left{padding:35px 7%}
  .ref-values{padding:25px 7% 35px}
  .ref-team{min-height:330px}.ref-team img{height:190px}.ref-team-quote{height:auto}
  .ref-services{grid-template-columns:repeat(2,1fr)}
  .ref-services>a:nth-child(2n){border-right:0}
  .ref-promos{grid-template-columns:1fr 1fr;margin:0}
  .ref-promo{min-height:130px}
  .ref-footer{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .ref-topbar{height:32px;padding:0 4%;font-size:8px}.ref-topbar span:last-child{display:none}
  .ref-header-inner{grid-template-columns:180px 1fr;padding:0 14px}
  .ref-logo img{width:170px}
  .ref-nav{top:124px}
  .ref-hero{height:560px;background-position:68% center}
  .ref-hero h1{font-size:42px}.desktop-br{display:none}
  .ref-hero-copy p{font-size:15px}
  .ref-actions{flex-direction:column;width:180px}
  .ref-region{width:310px;height:125px;padding-left:35px}
  .ref-region .ref-map{width:60px;height:60px;font-size:30px}
  .ref-region strong{font-size:24px}
  .ref-values{grid-template-columns:1fr}
  .ref-services{grid-template-columns:1fr}
  .ref-services>a{border-right:0;border-bottom:1px solid #ffffff33;padding:15px 8%}
  .ref-promos{grid-template-columns:1fr}
  .ref-footer{grid-template-columns:1fr;padding:25px 7%}
  .ref-copy{display:block;padding:8px 7% 15px}.ref-copy span{display:block;margin-top:4px}
}
