/* GlassQuote v508 — global header consistency, saved quote access, secondary-page polish. */

/* Estimator brand is a real home control on every estimator screen. */
body .quote-head>strong{min-width:0!important}
body .quote-head .gq-estimator-home{
  display:inline-flex!important;
  align-items:center!important;
  min-width:0!important;
  gap:7px!important;
  color:#071d35!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
body .quote-head .gq-estimator-home img{
  display:block!important;
  width:28px!important;
  height:28px!important;
  flex:0 0 28px!important;
  border-radius:9px!important;
  object-fit:cover!important;
}
body .quote-head .gq-estimator-home>span{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  font-family:Fraunces,Georgia,serif!important;
  font-size:1.04rem!important;
  font-weight:650!important;
  letter-spacing:-.035em!important;
}
body .quote-head .gq-estimator-tld{color:#2d79bd!important}

/* Exact completed quote remains available when the customer exits to the main screen. */
.gq-saved-quote-card{
  display:none;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  width:min(100%,520px);
  margin:8px auto 0;
  padding:8px 10px 8px 12px;
  border:1px solid rgba(150,186,211,.54);
  border-radius:16px;
  background:rgba(255,255,255,.92);
  box-shadow:0 12px 28px rgba(4,25,44,.12);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  text-align:left;
}
.gq-saved-quote-card.is-visible{display:grid}
.gq-saved-quote-copy{display:grid;min-width:0;gap:2px}
.gq-saved-quote-kicker{
  color:#327cb7;
  font:900 .56rem/1 Inter,Arial,sans-serif;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.gq-saved-quote-range{
  min-width:0;
  color:#087a64;
  font:950 0.96rem/1.08 Inter,Arial,sans-serif;
  letter-spacing:-.035em;
}
.gq-saved-quote-ref{
  overflow:hidden;
  color:#607489;
  font:750 .58rem/1.2 Inter,Arial,sans-serif;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.gq-saved-quote-open{
  min-height:38px;
  padding:7px 11px;
  border:0;
  border-radius:12px;
  background:#0b355a;
  color:#fff;
  font:850 .68rem/1.05 Inter,Arial,sans-serif;
  box-shadow:0 7px 16px rgba(11,53,90,.18);
  white-space:nowrap;
}
body.estimator-mode:not(.site-browse-mode) .gq-saved-quote-card{display:none!important}

/* Consistent standard header treatment across every secondary page. */
body.gq-header-standardized .gq-standard-header.landing-top-controls.unified-header{
  border-color:rgba(171,198,217,.66)!important;
  background:rgba(248,251,254,.94)!important;
  box-shadow:0 10px 34px rgba(5,29,50,.09)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
}
body.gq-header-standardized .gq-standard-header .landing-brand{
  border-radius:14px!important;
}
body.gq-header-standardized .gq-standard-header .call-floater{
  border-color:rgba(255,169,34,.34)!important;
  background:linear-gradient(135deg,#ff9f13,#ffb634)!important;
  box-shadow:0 7px 18px rgba(236,141,11,.17)!important;
}
body.gq-header-standardized .gq-standard-header .hot-menu-fab{
  border-color:#c8dae8!important;
  background:#f5f9fc!important;
  box-shadow:0 5px 15px rgba(7,29,53,.05)!important;
}

/* Service Areas: compact, cleaner and much easier to scan on a phone. */
body.location-index-page .hero{
  position:relative!important;
  overflow:hidden!important;
  padding:48px 0 52px!important;
  background:
    radial-gradient(circle at 80% 15%,rgba(69,148,172,.23),transparent 38%),
    radial-gradient(circle at 22% 90%,rgba(17,78,122,.42),transparent 46%),
    linear-gradient(145deg,#17393c 0%,#0a2d45 56%,#071f38 100%)!important;
}
body.location-index-page .hero::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;
  height:3px;
  background:linear-gradient(90deg,#2c82c8 0%,#6ac4d3 55%,#ffa817 100%);
}
body.location-index-page .landing-hero-grid{
  grid-template-columns:minmax(0,1fr) minmax(360px,.82fr)!important;
  gap:34px!important;
  align-items:center!important;
}
body.location-index-page .landing-hero-copy{max-width:710px!important}
body.location-index-page .crumbs{
  margin:0 0 24px!important;
  color:rgba(219,235,245,.65)!important;
  font-size:.78rem!important;
  font-weight:720!important;
}
body.location-index-page .crumbs a{color:#8cd8ff!important;text-decoration:none!important}
body.location-index-page .eyebrow{
  color:#90ddff!important;
  font-size:.72rem!important;
  letter-spacing:.12em!important;
}
body.location-index-page .hero h1{
  max-width:13ch!important;
  margin:12px 0 0!important;
  color:#fff!important;
  font-size:clamp(3.15rem,6vw,5.15rem)!important;
  line-height:.92!important;
  letter-spacing:-.055em!important;
  text-wrap:balance!important;
}
body.location-index-page .hero h1 em{
  display:block!important;
  margin-top:5px!important;
  color:#82d4ff!important;
  font-weight:500!important;
}
body.location-index-page .hero-lead{
  max-width:58ch!important;
  margin:22px 0 0!important;
  color:rgba(229,239,246,.84)!important;
  font-size:1rem!important;
  font-weight:560!important;
  line-height:1.58!important;
}
body.location-index-page .hero-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  margin-top:24px!important;
}
body.location-index-page .hero-actions .btn{
  min-height:54px!important;
  padding:13px 20px!important;
  border-radius:15px!important;
  font-size:.82rem!important;
  font-weight:900!important;
}
body.location-index-page .hero-actions .btn-primary{
  background:linear-gradient(135deg,#ff9d12,#ffb536)!important;
  color:#2b1800!important;
  border:0!important;
  box-shadow:0 12px 24px rgba(255,158,18,.2)!important;
}
body.location-index-page .hero-actions .btn-secondary{
  border:1px solid rgba(194,221,238,.28)!important;
  background:rgba(255,255,255,.09)!important;
  color:#eef8ff!important;
  backdrop-filter:blur(10px)!important;
}
body.location-index-page .hero-trust-row{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  margin-top:18px!important;
}
body.location-index-page .hero-trust-pill{
  padding:7px 9px!important;
  border:1px solid rgba(191,221,239,.17)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.06)!important;
  color:rgba(227,241,250,.78)!important;
  font-size:.62rem!important;
  font-weight:780!important;
}
body.location-index-page .landing-hero-media{
  min-height:390px!important;
  border-radius:30px 30px 30px 8px!important;
  border:1px solid rgba(255,255,255,.13)!important;
  box-shadow:0 28px 68px rgba(0,0,0,.3)!important;
}
body.location-index-page .landing-hero-media img{min-height:390px!important}
body.location-index-page .gq-coverage-note-v345{
  width:min(calc(100% - 32px),1120px)!important;
  margin:22px auto!important;
  padding:13px 16px!important;
  border:1px solid #dbe8f0!important;
  border-radius:14px!important;
  background:#f7fafc!important;
  color:#4e6679!important;
  box-shadow:0 8px 22px rgba(7,29,53,.04)!important;
  font-size:.76rem!important;
  line-height:1.45!important;
}
body.location-index-page .area-card,
body.location-index-page .value-card,
body.location-index-page .image-card,
body.location-index-page .process-photo{
  border-radius:20px!important;
  border-color:#dce8f0!important;
  box-shadow:0 10px 26px rgba(7,29,53,.055)!important;
}

/* Sticky mobile actions: still useful, but no longer a giant box covering content. */
body.gq-header-standardized .mobile-actions{
  left:12px!important;
  right:12px!important;
  bottom:max(10px,env(safe-area-inset-bottom,0px))!important;
  width:auto!important;
  min-height:58px!important;
  padding:6px!important;
  border:1px solid rgba(175,201,219,.76)!important;
  border-radius:18px!important;
  background:rgba(249,252,254,.94)!important;
  box-shadow:0 14px 36px rgba(4,25,44,.16)!important;
  backdrop-filter:blur(15px)!important;
  -webkit-backdrop-filter:blur(15px)!important;
}
body.gq-header-standardized .mobile-actions a{
  min-height:46px!important;
  border-radius:13px!important;
  font-size:.73rem!important;
  font-weight:900!important;
}
body.gq-header-standardized .mobile-actions .estimate{
  background:linear-gradient(135deg,#0b355a,#0d5a8a)!important;
  color:#fff!important;
}
body.gq-header-standardized .mobile-actions .call{
  background:#fff7e9!important;
  color:#5a3100!important;
}

@media(max-width:760px){
  .gq-saved-quote-card{width:100%;margin-top:9px}
  body .quote-head .gq-estimator-home{gap:5px!important}
  body .quote-head .gq-estimator-home img{width:24px!important;height:24px!important;flex-basis:24px!important;border-radius:8px!important}
  body .quote-head .gq-estimator-home>span{font-size:.92rem!important}

  body.location-index-page{padding-bottom:82px!important}
  body.location-index-page .hero{padding:30px 0 36px!important}
  body.location-index-page .landing-hero-grid{grid-template-columns:1fr!important;gap:22px!important}
  body.location-index-page .crumbs{margin-bottom:18px!important;font-size:.7rem!important}
  body.location-index-page .eyebrow{font-size:.64rem!important}
  body.location-index-page .hero h1{
    max-width:12ch!important;
    font-size:clamp(2.65rem,12vw,3.65rem)!important;
    line-height:.92!important;
  }
  body.location-index-page .hero-lead{margin-top:17px!important;font-size:.9rem!important;line-height:1.48!important}
  body.location-index-page .hero-actions{display:grid!important;grid-template-columns:1fr!important;margin-top:19px!important}
  body.location-index-page .hero-actions .btn{min-height:52px!important;width:100%!important}
  body.location-index-page .hero-actions .btn-secondary{display:none!important}
  body.location-index-page .hero-trust-row{margin-top:13px!important;gap:6px!important}
  body.location-index-page .hero-trust-pill{font-size:.57rem!important;padding:6px 8px!important}
  body.location-index-page .landing-hero-media{min-height:235px!important;border-radius:22px 22px 22px 7px!important}
  body.location-index-page .landing-hero-media img{min-height:235px!important}
  body.location-index-page .landing-hero-caption{left:10px!important;right:10px!important;bottom:10px!important;padding:10px 11px!important;border-radius:12px!important}
  body.location-index-page .gq-coverage-note-v345{width:calc(100% - 24px)!important;margin:14px auto!important;font-size:.7rem!important}
}

@media(max-width:390px){
  .gq-saved-quote-card{grid-template-columns:1fr!important}
  .gq-saved-quote-open{width:100%!important;min-height:40px!important}
  body.location-index-page .hero h1{font-size:2.55rem!important}
  body.location-index-page .hero-trust-row{display:grid!important;grid-template-columns:1fr 1fr!important}
  body.location-index-page .hero-trust-pill:last-child{grid-column:1/-1!important}
}


@media(max-width:420px){
  .gq-saved-quote-card{grid-template-columns:minmax(0,1fr) auto;gap:8px;width:min(100%,500px);padding:8px 10px 8px 12px}
  .gq-saved-quote-range{font-size:.92rem}
  .gq-saved-quote-open{min-width:148px;font-size:.66rem}
}
