/* Compact company headers. Badge artwork keeps its proportions at every size. */
html body.skyline .header-badge-row .review-badge-1 { transform:none !important; }
html body > header[data-compact-header] .site-utility-row input::placeholder { color:#536d7b !important; opacity:1 !important; }
html body > .review-ribbon.review-ribbon,
html body[data-mobile-hero] > .review-ribbon.review-ribbon {
  display:flex !important; flex-wrap:nowrap !important; align-items:center !important;
  justify-content:space-between !important; width:100% !important;
  height:64px !important; min-height:64px !important; max-height:64px !important;
  padding:2px 4% !important; gap:0 !important; box-sizing:border-box !important;
}
html body .review-ribbon .header-badge-row {
  display:flex !important; align-items:center !important; justify-content:space-between !important;
  flex-wrap:nowrap !important; width:100% !important; max-width:none !important;
  min-width:0 !important; gap:8px !important;
}
html body .review-ribbon .header-badge-row > * {
  flex:0 0 auto !important; margin:0 !important; padding:0 !important;
}
html body .review-ribbon .header-badge-row .review-badge.review-badge {
  display:block !important; width:100px !important; height:60px !important;
  flex:0 0 auto !important; margin:0 !important; background-size:400% 100% !important;
}
html body .header-social-title { display:none !important; }
html body > header[data-compact-header] .header-meta-row {
  display:flex !important; align-items:center !important; justify-content:flex-end !important;
  gap:16px !important; width:100%; min-width:0; margin:0 !important; padding:0 !important;
}
html body > header[data-compact-header] .header-meta-row .license-assurance {
  flex:0 1 auto !important; order:0 !important; align-self:center !important;
  text-align:left !important; font-size:9px !important; line-height:1.3 !important;
  margin:0 !important;
}
html body > header[data-compact-header] .header-meta-row .header-social-links {
  position:static !important; inset:auto !important; transform:none !important;
  display:flex !important; flex:0 0 auto !important; width:auto !important;
  background:none !important; color:inherit !important; padding:0 !important; margin:0 !important;
}
html body > header[data-compact-header] .header-social-icons { display:flex !important; align-items:center !important; gap:6px !important; }
html body > header[data-compact-header] .header-social-link {
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  width:26px !important; height:26px !important; min-height:26px !important;
  box-sizing:border-box; border:1px solid currentColor !important; border-radius:50% !important;
  color:inherit !important; background:transparent !important; padding:4px !important;
}
html body > header[data-compact-header] .header-social-link svg { width:16px !important; height:16px !important; }
html body > header[data-compact-header] .compact-brand-row > a {
  display:block !important; width:220px !important; max-width:100% !important;
  margin:0 !important; padding:0 !important; background:transparent !important;
  box-shadow:none !important; border:0 !important;
}
html body > header[data-compact-header] .compact-brand-row img.brand {
  display:block !important; width:100% !important; max-width:100% !important;
  height:80px !important; object-fit:contain !important; background:transparent !important;
  border:0 !important; box-shadow:none !important; filter:none !important;
}
@media(min-width:1001px) {
  html body > header[data-compact-header], html body[data-mobile-hero] > header[data-compact-header] {
    display:grid !important; grid-template-columns:220px minmax(0,1fr) !important;
    grid-template-rows:22px auto auto !important; gap:2px 24px !important;
    padding:4px 4% 8px !important; align-items:center !important;
  }
  html body > header[data-compact-header] :is(.nav.wrap,.pp-header-inner) { display:contents !important; }
  html body > header[data-compact-header] :is(.nav.wrap > .brand,.pp-header-inner > .pp-brand,.compact-brand-row) {
    grid-column:1 !important; grid-row:1 / 4 !important; align-self:center !important;
    justify-self:start !important; width:220px !important; max-width:100% !important;
  }
  html body > header[data-compact-header] .header-meta-row { grid-column:2; grid-row:1; }
  html body > header[data-compact-header] :is(#nav-links.nav-links,#navigation,#pp-navigation.pp-site-nav) {
    grid-column:2 !important; grid-row:2 !important; justify-content:flex-end !important;
    gap:4px 18px !important; padding:0 !important; min-height:34px !important;
  }
  html body > header[data-compact-header] .site-utility-row {
    grid-column:2 !important; grid-row:3 !important; justify-self:end !important;
    width:min(760px,100%) !important; margin:0 !important;
  }
}
@media(max-width:1000px) {
  html body > .review-ribbon.review-ribbon,
  html body[data-mobile-hero] > .review-ribbon.review-ribbon {
    height:42px !important; min-height:42px !important; max-height:42px !important;
    padding:2px 12px !important;
  }
  html body .review-ribbon .header-badge-row { gap:6px !important; }
  html body .review-ribbon .header-badge-row .review-badge.review-badge {
    width:64px !important; height:38px !important; flex-basis:auto !important;
  }
  html body > header[data-compact-header], html body[data-mobile-hero] > header[data-compact-header] {
    display:flex !important; flex-direction:column !important; gap:2px !important;
    padding:3px 12px 7px !important;
  }
  html body > header[data-compact-header] .header-meta-row { order:-2 !important; justify-content:space-between !important; min-height:14px !important; }
  html body > header[data-compact-header] .header-meta-row:has(.header-social-links) { min-height:22px !important; }
  html body > header[data-compact-header] :is(.nav.wrap,.pp-header-inner,.compact-brand-row) {
    display:flex !important; flex-direction:row !important; flex-wrap:wrap !important;
    align-items:center !important; justify-content:space-between !important;
    width:100% !important; min-height:44px !important; height:auto !important;
    margin:0 !important; padding:0 !important; gap:2px 10px !important;
  }
  html body > header[data-compact-header] :is(.brand,.pp-brand),
  html body > header[data-compact-header] .compact-brand-row > a {
    flex:0 1 175px !important; width:175px !important; max-width:60% !important;
    margin:0 !important; padding:0 !important;
  }
  html body > header[data-compact-header] :is(.brand,.pp-brand) img,
  html body > header[data-compact-header] .compact-brand-row img.brand {
    width:100% !important; height:44px !important; max-width:100% !important; object-fit:contain !important;
  }
  html body > header[data-compact-header] :is(.mobile-toggle,.menu-toggle,.pp-mobile-menu) {
    min-height:40px !important; height:40px !important; margin:0 0 0 auto !important;
    padding:8px 14px !important; font-size:12px !important; align-self:center !important;
  }
  html body > header[data-compact-header] .site-utility-row { margin:0 !important; width:100% !important; gap:8px !important; }
  html body > header[data-compact-header] .site-utility-row .site-service-search,
  html body > header[data-compact-header] .site-utility-row .header-estimate { height:38px !important; min-height:38px !important; }
  html body > header[data-compact-header] .site-utility-row .header-estimate { padding:8px 12px !important; }
  html body > header[data-compact-header] :is(#nav-links.nav-links,#navigation,#pp-navigation.pp-site-nav) { margin:2px 0 !important; padding:8px !important; gap:4px !important; }
  html body > header[data-compact-header] .family-company-list { position:static !important; width:100% !important; box-sizing:border-box; }
  html body footer .company-connect h2 { display:none !important; }
  html body footer .company-connect { padding:14px 12px !important; gap:0 !important; }
}
html body > header[data-compact-header] :is(#navigation#navigation,#nav-links#nav-links,#pp-navigation#pp-navigation) > a.pp-menu-link {
  background:none !important; background-image:none !important; border:0 !important;
  border-radius:0 !important; box-shadow:none !important; filter:none !important;
  padding:0 !important; min-height:30px !important; line-height:1.1 !important;
}
html body > header[data-compact-header] a.pp-menu-link .pp-wordmark {
  background-image:var(--pp-rainbow-vivid,var(--pp-rainbow,linear-gradient(110deg,#ff2f6d,#ff7b22,#ffe21a,#35e878,#10d9ff,#3c73ff,#c23cff))) !important;
  background-size:100% 100% !important; background-clip:text !important; -webkit-background-clip:text !important;
  color:transparent !important; -webkit-text-fill-color:transparent !important; text-shadow:none !important;
}
html body > header[data-compact-header] :is(#nav-links,#navigation,#pp-navigation) > :is(a,details,summary) { line-height:1.1 !important; }
html body > header[data-compact-header] .site-utility-row .site-service-search,
html body > header[data-compact-header] .site-utility-row .header-estimate { min-height:40px !important; height:40px !important; }
html body.painting a.pp-launch:has(> .pp-hero-button-label),
html body.skyline a.pp-launch:has(> .pp-hero-button-label),
html body.pp-preview-page[data-brand="painting"] a.pp-launch:has(> .pp-hero-button-label),
html body.pp-preview-page[data-brand="skyline"] a.pp-launch:has(> .pp-hero-button-label) {
  background:transparent !important; border:0 !important; box-shadow:none !important;
  padding:0 !important; backdrop-filter:none !important; -webkit-backdrop-filter:none !important;
}
@media(max-width:1000px) {
  html body > header[data-compact-header] .header-social-link { width:22px !important; height:22px !important; min-height:22px !important; padding:3px !important; }
  html body > header[data-compact-header] .site-utility-row .site-service-search,
  html body > header[data-compact-header] .site-utility-row .header-estimate { min-height:38px !important; height:38px !important; }
  html body > header[data-compact-header] .site-utility-row input { height:30px !important; }
  html body > header[data-compact-header] .site-utility-row form button { height:30px !important; min-height:30px !important; line-height:30px !important; }
}
html body [data-preview-hero] { position:relative !important; }
html body [data-preview-hero][data-preview-hero] > a.pp-bottom-right.pp-bottom-right {
  position:absolute !important; left:auto !important; top:auto !important;
  right:calc(var(--preview-photo-right,0px) + 24px) !important;
  bottom:calc(var(--preview-photo-bottom,0px) + 24px) !important;
  inset-inline-start:auto !important; margin:0 !important; transform:none !important;
  z-index:15 !important; display:flex !important; flex-direction:column !important;
  align-items:flex-end !important; justify-content:flex-end !important;
  gap:8px !important; width:max-content !important; min-width:0 !important;
  max-width:calc(100% - 48px) !important; text-align:right !important;
}
html body [data-preview-hero] > a.pp-bottom-right > .pp-hero-prompt {
  position:static !important; inset:auto !important; width:auto !important;
  max-width:100% !important; margin:0 !important; padding:0 !important;
  white-space:normal !important; font-size:22px !important; line-height:1.2 !important;
  text-align:right !important;
}
html body [data-preview-hero].coupon-hero .coupon-hero-inner { padding-bottom:140px !important; }
html body [data-preview-hero].onsite-intro { min-height:300px !important; padding-bottom:140px !important; box-sizing:border-box; }
@media(max-width:1000px) {
  html body[data-mobile-hero] .hero[data-hero-motion][data-preview-hero]:has(> .pp-hero-link) { padding-bottom:132px !important; }
  html body [data-preview-hero][data-preview-hero] > a.pp-bottom-right.pp-bottom-right {
    right:calc(var(--preview-photo-right,0px) + 16px) !important;
    bottom:calc(var(--preview-photo-bottom,0px) + 18px) !important;
    max-width:calc(100% - 32px) !important;
  }
  html body [data-preview-hero] > a.pp-bottom-right > .pp-hero-prompt { font-size:20px !important; }
}
/* See the hero through the entire header, while reserving measured space for its text. */
html body[data-header-overlay] > .review-ribbon.review-ribbon.review-ribbon {
  position:absolute !important; inset:0 0 auto !important; z-index:51 !important;
  background:rgba(8,38,73,.52) !important;
  backdrop-filter:blur(7px) !important; -webkit-backdrop-filter:blur(7px) !important;
}
html body[data-header-overlay] > header[data-compact-header] {
  position:absolute !important; inset:var(--header-ribbon-height,0px) 0 auto !important;
  background:rgba(247,251,253,.62) !important; z-index:50 !important;
  backdrop-filter:blur(9px) !important; -webkit-backdrop-filter:blur(9px) !important;
  row-gap:4px !important; padding-top:6px !important; padding-bottom:10px !important;
}
html body.skyline[data-header-overlay] > header[data-compact-header],
html body[data-brand="skyline"][data-header-overlay] > header[data-compact-header] {
  background:rgba(8,38,73,.58) !important;
}
html body[data-header-overlay] > header[data-compact-header] .site-utility-row .site-service-search {
  background:rgba(255,255,255,.72) !important;
}
html body[data-header-overlay] > header[data-compact-header] :is(.mobile-toggle,.menu-toggle,.pp-mobile-menu) {
  background:rgba(255,255,255,.75) !important;
}
html body[data-header-overlay] > header[data-compact-header] .site-utility-row .header-estimate {
  background:rgba(8,38,73,.9) !important;
}
html body[data-header-overlay] [data-preview-hero].hero {
  height:auto !important; min-height:calc(var(--header-chrome-height,0px) + 620px) !important;
  padding-top:calc(var(--header-chrome-height,0px) + 40px) !important;
  padding-bottom:132px !important; box-sizing:border-box !important;
}
html body[data-header-overlay] [data-preview-hero].hero > :is(.hero-content,.hero-inner) {
  padding-top:0 !important; padding-bottom:0 !important; margin-top:0 !important;
}
html body[data-header-overlay] [data-preview-hero].inner-head {
  height:auto !important; min-height:calc(var(--header-chrome-height,0px) + 420px) !important;
}
html body[data-header-overlay] [data-preview-hero].inner-head .head-copy {
  padding-top:calc(var(--header-chrome-height,0px) + 40px) !important;
  padding-bottom:132px !important; box-sizing:border-box !important;
}
html body[data-header-overlay] [data-preview-hero].coupon-hero .coupon-hero-inner {
  padding-top:calc(var(--header-chrome-height,0px) + 40px) !important;
}
html body[data-header-overlay] [data-preview-hero]:is(.page-hero,.onsite-intro) {
  padding-top:calc(var(--header-chrome-height,0px) + 40px) !important;
  padding-bottom:132px !important; box-sizing:border-box !important;
}
html body[data-header-overlay] [data-preview-hero].pp-top-hero {
  min-height:calc(var(--header-chrome-height,0px) + 160px) !important;
}
@media(max-width:1000px) {
  html body[data-header-overlay] > header[data-compact-header] { padding-top:5px !important; padding-bottom:9px !important; }
  html body[data-header-overlay] > header[data-compact-header] :is(.nav.wrap,.pp-header-inner,.compact-brand-row) { row-gap:4px !important; }
  html body[data-header-overlay] > header[data-compact-header] :is(#nav-links.open,#navigation.open,#pp-navigation.pp-open) {
    background:rgba(255,255,255,.94) !important;
  }
  html body[data-mobile-hero][data-header-overlay] .hero[data-hero-motion][data-preview-hero]:has(> .pp-hero-link) {
    height:auto !important; min-height:calc(var(--header-chrome-height,0px) + 520px) !important;
    padding-top:calc(var(--header-chrome-height,0px) + 32px) !important;
    padding-bottom:132px !important;
  }
}
