
/* Project Blue approved visual redesign — white / navy / teal / black */
:root{
 --pb-navy:#06355a;--pb-navy-dark:#021f38;--pb-teal:#078eab;--pb-teal-bright:#20b9d3;
 --pb-ink:#111827;--pb-muted:#526173;--pb-line:#d7e1ea;--pb-bg:#f5f8fb;--pb-white:#fff;
 --pb-shadow:0 10px 28px rgba(2,31,56,.12);--pb-radius:12px;
}
html{scroll-behavior:smooth} body{background:var(--pb-bg)!important;color:var(--pb-ink)!important;font-family:Arial,Helvetica,sans-serif!important}
a{transition:.2s ease}.container{max-width:1220px!important}
.topstrip{background:linear-gradient(90deg,var(--pb-navy-dark),var(--pb-teal))!important;color:#fff!important;border-bottom:2px solid var(--pb-teal-bright)!important}
.topstrip a{color:#fff!important;font-weight:800!important}
.nav{background:#fff!important;border-bottom:1px solid var(--pb-line)!important;box-shadow:0 3px 14px rgba(2,31,56,.08)!important;position:sticky!important;top:0!important;z-index:100!important}
.nav .inner{padding:10px 18px!important;align-items:center!important}.brand{display:flex!important;flex-direction:column!important;align-items:center!important;min-width:170px!important}.brand img{height:82px!important;width:auto!important;object-fit:contain!important}.brand-slogan{color:var(--pb-navy)!important;font-size:12px!important;line-height:1.2!important;max-width:180px!important}
.navlinks{gap:8px!important}.navlinks>a:not(.btn){font-weight:800!important;color:var(--pb-ink)!important;text-transform:uppercase!important;font-size:12px!important;padding:8px 6px!important}.navlinks>a:not(.btn):hover{color:var(--pb-teal)!important}
.btn,.hcp-button,button{border-radius:6px!important;text-transform:uppercase!important;letter-spacing:.02em!important;font-weight:900!important;min-height:42px!important}.btn.primary,.hcp-button,button[type=submit],.calculate-btn{background:linear-gradient(135deg,var(--pb-navy),var(--pb-teal))!important;color:#fff!important;border:1px solid var(--pb-teal)!important;box-shadow:0 5px 14px rgba(7,142,171,.22)!important}.btn.primary:hover,.hcp-button:hover,button[type=submit]:hover{transform:translateY(-1px)!important;filter:brightness(1.07)!important}.btn.phone{background:#fff!important;color:var(--pb-navy)!important;border:2px solid var(--pb-navy)!important}
main.container{background:#fff!important;padding-bottom:26px!important;box-shadow:0 0 30px rgba(2,31,56,.06)!important}
.hero{padding:18px 0!important}.hero-card{border-radius:var(--pb-radius)!important;border:1px solid var(--pb-line)!important;box-shadow:var(--pb-shadow)!important;min-height:520px!important;background-position:center!important}.hero-overlay{background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.92) 38%,rgba(255,255,255,.18) 70%,rgba(2,31,56,.08) 100%)!important}.hero-content{color:var(--pb-ink)!important;max-width:620px!important;padding:42px 38px!important}.hero-content h1,h1{font-size:clamp(38px,5vw,66px)!important;line-height:.98!important;text-transform:uppercase!important;color:var(--pb-ink)!important;margin:14px 0!important}.hero-content h1 strong,.hero-content h1 em,.section-head h2{color:var(--pb-navy)!important}.hero-content .lede{color:var(--pb-ink)!important;font-size:19px!important;font-weight:600!important}.kicker{background:var(--pb-navy)!important;color:#fff!important;border:none!important;border-radius:4px!important;text-transform:uppercase!important}.hero-actions{margin:24px 0 18px!important}.pills{display:grid!important;grid-template-columns:repeat(4,minmax(115px,1fr))!important;gap:10px!important}.pills span,.pills a{background:#fff!important;color:var(--pb-navy)!important;border:1px solid var(--pb-teal)!important;border-radius:8px!important;padding:12px 8px!important;text-align:center!important;font-size:12px!important;box-shadow:0 4px 12px rgba(2,31,56,.08)!important}.warranty{right:20px!important;top:auto!important;bottom:18px!important;width:190px!important}
.section{padding:32px 0!important}.section-head{text-align:center!important;margin-bottom:20px!important}.section-head h2{font-size:clamp(28px,3.4vw,42px)!important;text-transform:uppercase!important;line-height:1.05!important}.section-head p{color:var(--pb-muted)!important;max-width:800px!important;margin:0 auto!important}
.grid{gap:18px!important}.services{grid-template-columns:repeat(4,1fr)!important}.card,.service-area-card,.step,.feature-card,.nearby-city-tile{background:#fff!important;border:1px solid var(--pb-line)!important;border-radius:var(--pb-radius)!important;box-shadow:var(--pb-shadow)!important}.service-card img,.city-card img,.service-area-card img{height:210px!important;object-fit:cover!important}.service-card .copy,.city-card .copy,.service-area-card .copy{padding:16px!important}.service-card h3,.city-card h3,.service-area-card h3{color:var(--pb-ink)!important;text-transform:uppercase!important}.service-card .link,.city-card .mini,.service-area-card .mini{color:var(--pb-navy)!important;font-weight:900!important}.service-card:hover,.city-card:hover,.service-area-card:hover{transform:translateY(-3px)!important;box-shadow:0 16px 32px rgba(2,31,56,.17)!important}
.cta-panel{background:linear-gradient(110deg,var(--pb-navy-dark),var(--pb-navy),var(--pb-teal))!important;border-radius:var(--pb-radius)!important;padding:24px 28px!important}.cta-panel h2{color:#fff!important;text-transform:uppercase!important}.cta-panel p{color:#eaf9fc!important}
input,select,textarea{border:1px solid #c9d7e3!important;border-radius:6px!important;padding:12px!important;background:#fff!important;color:var(--pb-ink)!important;box-shadow:inset 0 1px 2px rgba(2,31,56,.04)!important}label{font-weight:800!important;color:var(--pb-navy)!important;text-transform:uppercase!important;font-size:12px!important}
.footer{background:var(--pb-navy-dark)!important;color:#fff!important;padding:28px!important;margin-top:30px!important;border-top:5px solid var(--pb-teal)!important}.footer a{color:#fff!important}
.gallery img{border-radius:var(--pb-radius)!important}
@media(max-width:980px){.services{grid-template-columns:repeat(2,1fr)!important}.nav .inner{flex-wrap:wrap!important}.navlinks{justify-content:center!important}.pills{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:700px){.brand img{height:64px!important}.navlinks{display:grid!important;grid-template-columns:repeat(2,1fr)!important;width:100%!important}.navlinks .btn{width:100%!important}.hero-card{min-height:680px!important;background-position:65% center!important}.hero-content{padding:28px 20px!important}.hero-overlay{background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.9) 62%,rgba(255,255,255,.28) 100%)!important}.warranty{position:relative!important;right:auto!important;bottom:auto!important;margin:16px auto 0!important;width:150px!important}.services{grid-template-columns:1fr!important}.pills{grid-template-columns:1fr 1fr!important}.cta-panel{padding:20px!important}}


/* v1.6 warranty seal placement */
.hero-card{position:relative!important}
.hero-warranty-seal{
  position:absolute!important;
  right:18px!important;
  bottom:18px!important;
  width:150px!important;
  max-width:24vw!important;
  z-index:3!important;
  display:block!important;
}
.hero-warranty-seal img{
  width:100%!important;
  height:auto!important;
  display:block!important;
  object-fit:contain!important;
  filter:drop-shadow(0 8px 16px rgba(0,0,0,.28))!important;
}
.warranty{
  right:18px!important;
  left:auto!important;
  top:auto!important;
  bottom:18px!important;
  width:110px!important;
  max-width:22vw!important;
  z-index:2!important;
}
.warranty-badge{
  position:relative!important;
  right:auto!important;
  left:auto!important;
  top:auto!important;
  bottom:auto!important;
  display:block!important;
  width:min(180px,100%)!important;
  height:auto!important;
  margin:18px auto!important;
  object-fit:contain!important;
}
@media(max-width:700px){
  .hero-warranty-seal{
    position:relative!important;
    right:auto!important;
    bottom:auto!important;
    width:120px!important;
    max-width:100%!important;
    margin:16px 20px 20px auto!important;
  }
  .warranty{
    position:relative!important;
    right:auto!important;
    bottom:auto!important;
    width:100px!important;
    margin:16px 0 0 auto!important;
  }
}


/* v1.7: place 5-year warranty seals to the right of hero imagery */
.hero-card{position:relative!important}
.hero-card .warranty,
.hero-warranty-seal{
  position:absolute!important;
  right:18px!important;
  left:auto!important;
  top:50%!important;
  bottom:auto!important;
  transform:translateY(-50%)!important;
  width:130px!important;
  max-width:20vw!important;
  margin:0!important;
  z-index:4!important;
  display:block!important;
}
.hero-card .warranty img,
.hero-warranty-seal img,
.hero-card img.warranty{
  width:100%!important;
  height:auto!important;
  max-height:180px!important;
  object-fit:contain!important;
  display:block!important;
  filter:drop-shadow(0 8px 16px rgba(0,0,0,.28))!important;
}
@media(max-width:700px){
  .hero-card .warranty,
  .hero-warranty-seal{
    right:10px!important;
    top:auto!important;
    bottom:12px!important;
    transform:none!important;
    width:92px!important;
    max-width:26vw!important;
  }
}


/* v1.8 homepage/city-card/warranty-seal layout */
#areas .cities{
  grid-template-columns:repeat(4,1fr)!important;
  gap:18px!important;
}
#areas .city-card{
  display:block!important;
  overflow:hidden!important;
  min-height:100%!important;
}
#areas .city-card img{
  width:100%!important;
  height:210px!important;
  object-fit:cover!important;
}
#areas .city-card .copy{
  padding:16px!important;
}
.hero-card .warranty,
.hero-card img.warranty{
  position:absolute!important;
  right:18px!important;
  left:auto!important;
  top:auto!important;
  bottom:18px!important;
  transform:none!important;
  width:110px!important;
  max-width:20vw!important;
  margin:0!important;
  z-index:4!important;
}
.hero-warranty-seal{
  position:absolute!important;
  right:18px!important;
  left:auto!important;
  top:auto!important;
  bottom:18px!important;
  transform:none!important;
  width:130px!important;
  max-width:20vw!important;
  margin:0!important;
  z-index:4!important;
}
@media(max-width:1000px){
  #areas .cities{grid-template-columns:repeat(2,1fr)!important;}
}
@media(max-width:700px){
  #areas .cities{grid-template-columns:1fr!important;}
  .hero-card .warranty,
  .hero-card img.warranty,
  .hero-warranty-seal{
    right:10px!important;
    bottom:10px!important;
    width:88px!important;
    max-width:24vw!important;
  }
}


/* v1.9: keep 5-year workmanship warranty button at the far right */
.hero .pills{
  display:flex!important;
  align-items:center!important;
  width:100%!important;
}
.hero .pills a[href*="warranty"],
.hero .pills [title*="Warranty"]{
  margin-left:auto!important;
  order:99!important;
}
@media(max-width:700px){
  .hero .pills a[href*="warranty"],
  .hero .pills [title*="Warranty"]{
    margin-left:0!important;
    width:100%!important;
    text-align:center!important;
  }
}


/* v2.0 requested launch refinements */
.hero .pills{display:flex!important;align-items:center!important;width:100%!important}
.hero .pills a[href*="warranty"],
.hero .pills [title*="Warranty"],
.hero .pills [class*="warranty"]{margin-left:auto!important;order:999!important}
#areas .cities{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important}
.warranty-document-wrap{max-width:1024px;margin:0 auto}
.warranty-document-wrap img{display:block;width:100%;height:auto}
@media(max-width:1000px){#areas .cities{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:700px){
 #areas .cities{grid-template-columns:1fr!important}
 .hero .pills a[href*="warranty"],
 .hero .pills [title*="Warranty"],
 .hero .pills [class*="warranty"]{margin-left:0!important;width:100%!important}
}


/* v2.1: Serving the Greater Tulsa Area — four boxed city cards across */
#service-areas .service-area-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:18px!important;
  align-items:stretch!important;
}
#service-areas .service-area-card{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid var(--pb-line)!important;
  border-radius:var(--pb-radius)!important;
  box-shadow:var(--pb-shadow)!important;
}
#service-areas .service-area-card img{
  width:100%!important;
  height:210px!important;
  object-fit:cover!important;
  display:block!important;
}
#service-areas .service-area-card .copy{
  display:flex!important;
  flex-direction:column!important;
  flex:1!important;
  padding:16px!important;
}
#service-areas .service-area-card .mini{
  margin-top:auto!important;
}
@media(max-width:1100px){
  #service-areas .service-area-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:700px){
  #service-areas .service-area-grid{
    grid-template-columns:1fr!important;
  }
}


/* v2.2: permanent full-width page-top header; not floating or sticky */
.topstrip,
.nav{
  position:static!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  width:100%!important;
  transform:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.nav{
  border-radius:0!important;
  margin:0!important;
}
@media(max-width:700px){
  .topstrip,
  .nav{
    position:static!important;
    top:auto!important;
    width:100%!important;
  }
}

/* v2.3 sitewide warranty badge */
.hero-card{position:relative!important}
.hero-card .warranty,.hero-card img.warranty,.hero-warranty-seal,
.hero-card a[href*="warranty"] img[src*="warranty-seal"],
.hero-card img[src*="warranty-seal"]{
position:absolute!important;right:0!important;left:auto!important;top:auto!important;
bottom:18px!important;transform:none!important;margin:0!important;z-index:8!important;
width:150px!important;max-width:22vw!important;height:auto!important;object-fit:contain!important}
@media(max-width:700px){
.hero-card .warranty,.hero-card img.warranty,.hero-warranty-seal,
.hero-card a[href*="warranty"] img[src*="warranty-seal"],
.hero-card img[src*="warranty-seal"]{right:0!important;bottom:10px!important;width:100px!important;max-width:28vw!important}}


/* v2.4: synchronized city photos, far-right warranty badges, slogan beside logo */
.hero-card{position:relative!important}
.hero-card .warranty,
.hero-card img.warranty,
.hero-warranty-seal,
.hero-card a[href*="warranty"] img[src*="warranty-seal"],
.hero-card img[src*="warranty-seal"]{
  position:absolute!important;
  right:0!important;
  left:auto!important;
  top:auto!important;
  bottom:18px!important;
  transform:none!important;
  margin:0!important;
  z-index:9!important;
}
.brand-slogan{
  display:inline-block!important;
  margin-left:12px!important;
  max-width:260px!important;
  color:var(--pb-navy)!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1.2!important;
  vertical-align:middle!important;
  text-align:left!important;
}
.nav .inner{
  display:flex!important;
  align-items:center!important;
}
@media(max-width:700px){
  .brand-slogan{
    display:block!important;
    margin:6px 0 0!important;
    max-width:100%!important;
    text-align:center!important;
  }
  .hero-card .warranty,
  .hero-card img.warranty,
  .hero-warranty-seal,
  .hero-card a[href*="warranty"] img[src*="warranty-seal"],
  .hero-card img[src*="warranty-seal"]{
    right:0!important;
    bottom:10px!important;
  }
}


.global-brand-slogan{
  width:100%!important;
  text-align:center!important;
  margin:0!important;
  padding:8px 12px!important;
  background:#fff!important;
  border-bottom:1px solid var(--pb-line)!important;
}
