/* ============================================================
   SOUTHEAST STONEWORKS — OUTDOOR LIVING PAGE CSS v1.6.7
   Scope: loaded only on /outdoor-living/ by southeast-stoneworks-core.
   Purpose: replace the legacy Elementor gray hero stack with a plugin-controlled
   full-bleed real fireplace patio hero. v1.6.7 removes duplicate legacy hotfix layers, keeps the global header model untouched, prevents repeated hero image resets, and leaves only the intended Outdoor Project Inquiry image treatment.
   ============================================================ */

body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-clean,
body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-clean * {
  transition: none !important;
}

body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-body-wrap {
  background: #0f1211 !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-body-wrap > .stone-divider {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  visibility: hidden !important;
}


body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-body-wrap > .section.texture:first-of-type,
body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-body-wrap > .section.texture:first-child,
body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-body-wrap > .stone-divider + .section.texture {
  margin-top: 0 !important;
  padding-top: clamp(18px, 2vw, 26px) !important;
  background-color: #0f1211 !important;
  background-image: none !important;
  background-size: auto !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  border-top: 0 !important;
}

body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .hub-inquiry--outdoor .wrap {
  display: grid !important;
  grid-template-columns: minmax(0, 0.92fr) minmax(360px, 1.08fr) !important;
  align-items: stretch !important;
  gap: clamp(32px, 5vw, 72px) !important;
}

body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .hub-inquiry--outdoor .wrap::after {
  content: "" !important;
  display: block !important;
  min-height: 430px !important;
  border-radius: clamp(24px, 3vw, 42px) !important;
  background-image: linear-gradient(180deg, rgba(17, 20, 19, 0.04), rgba(17, 20, 19, 0.36)), url('../images/ses-outdoor-living-real-patio-hero.webp') !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  box-shadow: 0 34px 90px rgba(0, 0, 0, 0.34) !important;
  border: 1px solid rgba(255, 248, 238, 0.12) !important;
  overflow: hidden !important;
}

body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .hub-inquiry--outdoor .hub-fade {
  align-self: center !important;
}

body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof {
  position: relative !important;
  z-index: 0 !important;
  min-height: clamp(440px, 56vh, 560px) !important;
  padding-top: clamp(98px, 7.6vw, 122px) !important;
  padding-bottom: clamp(28px, 3.6vw, 42px) !important;
  padding-left: clamp(22px, 5vw, 76px) !important;
  padding-right: clamp(22px, 5vw, 76px) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  overflow: hidden !important;
  isolation: isolate !important;
  contain: none !important;
  color: #fff8ee !important;
  background-color: #111413 !important;
  background-image: linear-gradient(90deg, rgba(7, 8, 7, 0.24) 0%, rgba(7, 8, 7, 0.09) 42%, rgba(7, 8, 7, 0.01) 78%, rgba(7, 8, 7, 0) 100%), var(--ses-outdoor-hero-bg) !important;
  background-size: cover, cover !important;
  background-position: center top, center top !important;
  background-repeat: no-repeat, no-repeat !important;
  background-blend-mode: normal, normal !important;
  border: 0 !important;
  box-shadow: none !important;
  filter: none !important;
  mix-blend-mode: normal !important;
}

body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof--image-layer,
body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof--portal-layer {
  z-index: 90002 !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  background-image: none !important;
  background-color: transparent !important;
}

body.ses-outdoor-bgproof-v167 #ses-outdoor-hero-portal,
body.ses-outdoor-bgproof-v167 #ses-outdoor-hero-portal-shade {
  pointer-events: none !important;
  display: block !important;
  visibility: visible !important;
  filter: none !important;
  transform: none !important;
  mix-blend-mode: normal !important;
  max-width: none !important;
}

body.ses-outdoor-bgproof-v167 #ses-outdoor-hero-portal {
  object-fit: cover !important;
  object-position: center top !important;
  background: #111413 !important;
  z-index: 90000 !important;
}

body.ses-outdoor-bgproof-v167 #ses-outdoor-hero-portal-shade {
  z-index: 90001 !important;
}

body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof__image {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center top !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  filter: none !important;
  transform: none !important;
  mix-blend-mode: normal !important;
}

body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof__shade {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  display: block !important;
  background: linear-gradient(90deg, rgba(7, 8, 7, 0.16) 0%, rgba(7, 8, 7, 0.06) 42%, rgba(7, 8, 7, 0.01) 78%, rgba(7, 8, 7, 0) 100%) !important;
  pointer-events: none !important;
}

body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof::before,
body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof::after {
  content: none !important;
  display: none !important;
}

body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof__inner {
  position: relative !important;
  z-index: 90003 !important;
  width: min(660px, 100%) !important;
  max-width: 660px !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  color: #fff8ee !important;
  text-align: left !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  transform: none !important;
  filter: none !important;
  clip-path: none !important;
  overflow: visible !important;
}

body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof__inner h1 {
  position: static !important;
  max-width: 680px !important;
  margin: 0 !important;
  color: #fff8ee !important;
  -webkit-text-fill-color: #fff8ee !important;
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: clamp(3.65rem, 6.4vw, 5.55rem) !important;
  line-height: 0.96 !important;
  letter-spacing: -0.055em !important;
  text-shadow: 0 8px 28px rgba(0, 0, 0, 0.72), 0 2px 8px rgba(0, 0, 0, 0.55) !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof__inner p {
  position: static !important;
  max-width: 620px !important;
  margin: clamp(18px, 2vw, 24px) 0 0 !important;
  color: rgba(255, 248, 238, 0.98) !important;
  -webkit-text-fill-color: rgba(255, 248, 238, 0.98) !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: clamp(1.02rem, 1.35vw, 1.18rem) !important;
  line-height: 1.58 !important;
  text-shadow: 0 5px 18px rgba(0, 0, 0, 0.74), 0 1px 4px rgba(0, 0, 0, 0.54) !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof__actions {
  position: static !important;
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-start !important;
  align-items: center !important;
  gap: 14px !important;
  margin-top: clamp(24px, 2.8vw, 34px) !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof__actions a {
  position: static !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 50px !important;
  padding: 0 24px !important;
  border-radius: 999px !important;
  white-space: nowrap !important;
  text-decoration: none !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof__primary {
  background: #d4c06a !important;
  color: #111413 !important;
  -webkit-text-fill-color: #111413 !important;
  border: 1px solid rgba(212, 192, 106, 0.82) !important;
  box-shadow: 0 20px 48px rgba(0, 0, 0, 0.24) !important;
}

body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof__secondary {
  border: 1px solid rgba(255, 248, 238, 0.50) !important;
  background: rgba(0, 0, 0, 0.18) !important;
  color: #fff8ee !important;
  -webkit-text-fill-color: #fff8ee !important;
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.18) !important;
}

@media (max-width: 900px) {
  body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .hub-inquiry--outdoor .wrap {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }

  body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .hub-inquiry--outdoor .wrap::after {
    min-height: 340px !important;
    order: -1 !important;
  }

  body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof {
    min-height: clamp(500px, 62vh, 610px) !important;
    padding-top: clamp(104px, 13vw, 122px) !important;
    padding-bottom: clamp(34px, 6vw, 52px) !important;
    padding-left: clamp(20px, 5vw, 44px) !important;
    padding-right: clamp(20px, 5vw, 44px) !important;
    background-position: center top, 62% top !important;
  }

  body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof__image {
    object-position: 62% top !important;
  }

  body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof__inner {
    width: min(610px, 100%) !important;
    max-width: 610px !important;
  }
}

@media (max-width: 480px) {
  body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .hub-inquiry--outdoor .wrap::after {
    min-height: 260px !important;
    border-radius: 22px !important;
  }

  body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof {
    min-height: 540px !important;
    padding-top: 104px !important;
    padding-bottom: 34px !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    align-items: center !important;
    justify-content: flex-start !important;
    background-image: linear-gradient(90deg, rgba(7, 8, 7, 0.40) 0%, rgba(7, 8, 7, 0.22) 58%, rgba(7, 8, 7, 0.06) 100%), var(--ses-outdoor-hero-bg) !important;
    background-position: center top, 58% top !important;
  }

  body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof__image {
    object-position: 58% top !important;
  }

  body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof__shade {
    background: linear-gradient(90deg, rgba(7, 8, 7, 0.36) 0%, rgba(7, 8, 7, 0.18) 58%, rgba(7, 8, 7, 0.04) 100%) !important;
  }

  body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof__inner {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    text-align: left !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof__inner h1 {
    font-size: clamp(2.78rem, 13vw, 3.7rem) !important;
    line-height: 0.96 !important;
  }

  body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof__inner p {
    margin-top: 14px !important;
    font-size: 0.96rem !important;
    line-height: 1.5 !important;
  }

  body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof__actions {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
    margin-top: 20px !important;
  }

  body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof__actions a {
    width: 100% !important;
    min-height: 48px !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}


body.ses-outdoor-bgproof-v167 .ses-outdoor-body-wrap > .section.texture:first-of-type::before,
body.ses-outdoor-bgproof-v167 .ses-outdoor-body-wrap > .section.texture:first-child::before {
  background: transparent !important;
  opacity: 0 !important;
}


/* v1.6.7 final Outdoor Living root cleanup
   Root cause: Elementor/WP inserted an empty paragraph between the hidden stone divider
   and the first visible texture section, so adjacent-sibling cleanup rules missed the real
   first content section. The texture pseudo-element then rendered as a gray band below
   the hero. This release targets the first visible texture section by section order and
   keeps the global header fixed and visible on this page without touching other pages. */
body.ses-page-outdoor-living .ses-site-header,
body.ses-outdoor-page .ses-site-header,
body.ses-outdoor-bgproof-v167 .ses-site-header {
  position: fixed !important;
  top: var(--wp-admin--admin-bar--height, 0px) !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 9000 !important;
  transform: none !important;
  visibility: visible !important;
  opacity: 1 !important;
}
body.ses-page-outdoor-living .ses-site-header.ses-hidden,
body.ses-outdoor-page .ses-site-header.ses-hidden,
body.ses-outdoor-bgproof-v167 .ses-site-header.ses-hidden {
  transform: none !important;
}
body.ses-page-outdoor-living.admin-bar .ses-site-header,
body.ses-outdoor-page.admin-bar .ses-site-header,
body.ses-outdoor-bgproof-v167.admin-bar .ses-site-header {
  top: 32px !important;
}
@media (max-width: 782px) {
  body.ses-page-outdoor-living.admin-bar .ses-site-header,
  body.ses-outdoor-page.admin-bar .ses-site-header,
  body.ses-outdoor-bgproof-v167.admin-bar .ses-site-header {
    top: 46px !important;
  }
}
body.ses-page-outdoor-living .ses-outdoor-body-wrap > p:empty,
body.ses-outdoor-page .ses-outdoor-body-wrap > p:empty,
body.ses-outdoor-bgproof-v167 .ses-outdoor-body-wrap > p:empty {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.ses-page-outdoor-living .ses-outdoor-body-wrap > section.section.texture:nth-of-type(2),
body.ses-outdoor-page .ses-outdoor-body-wrap > section.section.texture:nth-of-type(2),
body.ses-outdoor-bgproof-v167 .ses-outdoor-body-wrap > section.section.texture:nth-of-type(2) {
  margin-top: 0 !important;
  padding-top: clamp(18px, 2vw, 26px) !important;
  background: #0f1211 !important;
  background-image: none !important;
  border-top: 0 !important;
}
body.ses-page-outdoor-living .ses-outdoor-body-wrap > section.section.texture:nth-of-type(2)::before,
body.ses-outdoor-page .ses-outdoor-body-wrap > section.section.texture:nth-of-type(2)::before,
body.ses-outdoor-bgproof-v167 .ses-outdoor-body-wrap > section.section.texture:nth-of-type(2)::before,
body.ses-page-outdoor-living .stone-divider ~ section.section.texture:first-of-type::before,
body.ses-outdoor-page .stone-divider ~ section.section.texture:first-of-type::before,
body.ses-outdoor-bgproof-v167 .stone-divider ~ section.section.texture:first-of-type::before {
  content: none !important;
  display: none !important;
  background: none !important;
  opacity: 0 !important;
}
body.ses-page-outdoor-living .ses-outdoor-hero-bgproof,
body.ses-outdoor-page .ses-outdoor-hero-bgproof,
body.ses-outdoor-bgproof-v167 .ses-outdoor-hero-bgproof {
  margin-bottom: 0 !important;
  border-bottom: 0 !important;
}


/* v1.6.7 visual root finish
   The remaining gray appearance was not a sticky-header issue. It was the lower part of the fireplace image plus the first visible texture section beginning as a large blank field. This crops the hero to the intended fireplace composition and darkens/tightens the immediate post-hero transition. */
body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-hero-bgproof__image {
  object-position: center top !important;
}
body.ses-page-outdoor-living .ses-outdoor-body-wrap > section.section.texture:nth-of-type(2),
body.ses-outdoor-page .ses-outdoor-body-wrap > section.section.texture:nth-of-type(2),
body.ses-outdoor-bgproof-v167 .ses-outdoor-body-wrap > section.section.texture:nth-of-type(2),
body.ses-page-owned.ses-page-outdoor-living.ses-outdoor-page .ses-outdoor-body-wrap > .stone-divider + .section.texture {
  background-color: #0f1211 !important;
  background-image: none !important;
  padding-top: clamp(18px, 2vw, 26px) !important;
}
