/* =========================================================================
   NOTE ON ORGANIZATION
   This file consolidates three former locations:
     1. Customizer > Additional CSS (439 lines)
     2. WPCode snippet 859 "animation_css" (non-slider rules only)
     3. WPCode snippet 1300 "Cinematic Styles" (CSS portion)
   All Smart Slider (n2-* / .ss-slide) rules were REMOVED — the plugin and the
   only page using it (Inspiring Greatness) were deleted 2026-06-01, so that
   CSS was dead. Duplicate declarations, dead overrides, and a cross-location
   box-shadow conflict were resolved (see inline notes).
   ========================================================================= */


/* === Site container & global chrome ===================================== */
.site-container {
    max-width: 1440px !important;
}
.kadence-svg-iconset svg {
    height: 0.8em;
    width: 0.8em;
}
.content-area {
    margin-bottom: -1px !important;
}
main#inner-wrap {
    margin-bottom: 272px;
    background: #fff;
    z-index: 2;
}
footer.site-footer {
    bottom: 0;
    left: 0;
    position: fixed;
    width: 100%;
    padding-bottom: 36px;
}
.wp-block-spacer {
    background: #e2e2e2 !important;
}
.wp-block-column {
    border-left: 1px solid #dddddd;
}
/* === end global chrome === */



/* === Header scroll-hide behavior (driven by JS: header-scroll.js) =======
   Class toggles `menu-hidden` / `is-sticky` are applied on scroll by JS that
   watches the homepage video container (.kb-blocks-bg-video-container).
   CONFLICT RESOLVED: snippet 859 set box-shadow: 0 2px 8px on .is-sticky while
   the Customizer set box-shadow: none !important. The Customizer value won
   live, so the no-shadow result is preserved here as the single intended rule.
   ======================================================================== */
.site-main-header-wrap {
    transition: all 0.4s ease;
}
.site-main-header-wrap.menu-hidden {
    transform: translateY(-100%);
    opacity: 0;
    transition: all 0.4s ease;
}
.site-bottom-header-wrap.is-sticky {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 999;
    box-shadow: none;
    transition: top 0.4s ease, opacity 0.4s ease;
}
body.home .site-bottom-header-wrap {
    display: none !important;
}
/* === end header scroll-hide === */


/* === Navigation & menu items ============================================ */
span.kt-svg-icon-list-text {
    font-size: 12px;
    text-decoration: none;
    transition: opacity .4s;
    color: #fff;
}

.widget-toggle-open-container .widget-toggle-open {
    display: flex;
    flex-direction: row-reverse;
    column-gap: 10px;
}
.search-toggle-open {
    flex-direction: row-reverse;
    column-gap: 10px;
}
.kt-svg-icon-list-single {
    display: none !important;
}
.site-footer-row-container .site-container {
    padding-left: 0 !important;   /* was declared twice; de-duplicated */
}
.wp-block-kadence-listitem:hover {
    cursor: pointer;
    opacity: 0.8;
}
/* === end drawer / mobile menu === */


/* === Headings & text ==================================================== */
p.has-small-font-size {
    padding: 0 15px;
}
h2.wp-block-heading.has-small-font-size {
    padding: 0 15px;
    text-transform: uppercase;
}/* === end hero row centering === */


/* === Footer logo + body scroll behavior (from snippet 1300) ============= */
/* Native scroll — no wheel hijacking, no section snapping */
/* === Global typography base: rendering refinements (site-wide) === */
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  font-kerning: normal;
}
/* === end global typography base === */

html, body {
    scroll-behavior: auto;
    overscroll-behavior-y: auto;
    scroll-snap-type: none;
}
#colophon .wp-block-kadence-image img {
    width: 180px;
    padding: 5px 0 12px;
}
/* === end footer logo + scroll behavior === */


/* === Logo crossfade: wordmark -> turtle (scroll-linked, JS-driven) === */
/* Opacity + turtle scale are driven by js/logo-scroll-crossfade.js via GSAP
   ScrollTrigger. CSS here only establishes layout. Do NOT add opacity/transition
   or a scale here -- that fights the scroll-scrubbed animation.

   IMPORTANT: Kadence's native sticky logo-swap must be turned OFF in
   Customize -> Header -> Sticky settings, or Kadence sets opacity:0 inline on the
   wordmark in the stuck state and the GSAP fade can't win without !important. */
.brand.has-sticky-logo {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
/* Turtle stacked over the wordmark, centered. Base box is the ENLARGED size
   (75 x 47.5); GSAP scales it DOWN to the resting 60 x 38 (scale 0.8), which
   keeps the raster crisp. JS sets opacity (0 at top), transform, and scale. */
.brand.has-sticky-logo img.kadence-sticky-logo {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 75px;
  height: 47.5px;
  object-fit: contain;
  opacity: 0;
  pointer-events: none;
  /* transform (centering translate + scale) and opacity are set by GSAP */
}
/* === end logo crossfade === */


/* === Responsive / breakpoints =========================================== */
@media screen and (max-width: 1024px) {
    main#inner-wrap {
        margin-bottom: 392px;
    }
}    
@media screen and (max-width: 768px) {
    main#inner-wrap {
        margin-bottom: 592px;
    }
    .site-footer-middle-section-1.site-footer-section.footer-section-inner-items-5 {
        display: grid;
        min-height: 36px;
        grid-template-columns: 1fr 1fr;
        margin-bottom: 30px;
    }
}
/* === end responsive === */

/* === Land & Sea: image-switch overlapping pair (2026-06-15, rev7 larger) === */
.ls-image-switch {
  position: relative;
  width: 100vw;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  /* overlay top (36vw) + overlay height (92vw * 10/16 = 57.5vw) ≈ 93.5vw + gap */
  padding-bottom: 77vw;
  overflow: visible;
}
.ls-image-switch__base,
.ls-image-switch__overlay {
  display: block;
  position: absolute;
  width: 85vw;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}
.ls-image-switch__base {
  top: 0;
  left: -12vw;            /* bleeds further off the left */
  z-index: 1;
}
.ls-image-switch__overlay {
  top: 20vw;              /* larger vertical stagger */
  left: 25vw;             /* right edge ~112vw, bleeds off the right */
  z-index: 2;
}

/* Tablet */
@media (max-width: 1024px) {
  .ls-image-switch { padding-bottom: 105vw; }
  .ls-image-switch__base,
  .ls-image-switch__overlay { width: 100vw; }
  .ls-image-switch__base    { left: -10vw; top: 0; }
  .ls-image-switch__overlay { left: 14vw; top: 40vw; }
}

/* Mobile: stack vertically */
@media (max-width: 600px) {
  .ls-image-switch {
    padding-bottom: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-left: 16px;
    padding-right: 16px;
  }
  .ls-image-switch__base,
  .ls-image-switch__overlay {
    position: static;
    width: 100%;
    top: auto; left: auto;
  }
}
/* === end image-switch === */

/* === Land & Sea: hover-play video feature (2026-06-15) === */
.ls-video-feature {
  text-align: center;
  max-width: 1440px;
  margin: 0 auto;
  padding: 60px 20px;
}
.ls-video-feature__eyebrow {
  font-size: 13px;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-weight: 500;
  margin: 0 0 12px;
}
.ls-video-feature__headline {
  font-size: 2.5rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 300;
  margin: 0 0 20px;
}
.ls-video-feature__text {
  max-width: 600px;
  margin: 0 auto 28px;
  line-height: 1.7;
}
.ls-video-feature__video-wrap {
  position: relative;
  width: 100%;
  margin-top: 40px;
  overflow: hidden;
  cursor: pointer;
}
.ls-video-feature__video {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}
@media (max-width: 768px) {
  .ls-video-feature__headline { font-size: 30px; }
}
/* === end hover-play video feature === */
/* === Land & Sea: neighborhood carousel (2026-06-17) ===========================
   Full-width horizontal scroller for the "Neighborhood Carousel" block pattern
   (kadence-child/neighborhood-carousel). Scoped to .ls-hood-carousel so it can't
   touch the existing static neighborhood grid. Card visuals mirror that grid:
   Josefin Sans uppercase title, square image, body copy in #2d3748.
   Scroll logic: js/neighborhood-carousel.js
   --------------------------------------------------------------------------- */
.ls-hood-carousel {
  position: relative;
  width: 100vw;
  max-width: 100vw;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  margin-top: 0;
  margin-bottom: 40px;
  padding-top: 7.5rem;
  overflow: hidden;
}
.ls-hood-carousel__head {
  position: relative;
  max-width: 1328px;
  margin: 0 auto 40px;
  padding: 0 24px;
}
.ls-hood-carousel__intro {
  max-width: 840px;
  margin: 0 auto;
  text-align: center;
}
.ls-hood-carousel__title {
  font-family: 'Inter', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 300;
  font-size: 2.5rem;
  color: #151515;
  margin: 0 0 16px;
}
.ls-hood-carousel__lead {
  font-size: 1rem;
  line-height: 1.6;
  color: #151515;
  margin: 0 0 40px;
}
.ls-hood-carousel__nav {
  position: absolute;
  top: 0;
  right: 24px;
  display: flex;
  gap: 10px;
}
.ls-hood-carousel__arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: #8A919A;
  color: #FFFFFF;
  cursor: pointer;
  transition: background-color 0.25s ease, color 0.25s ease, opacity 0.25s ease, border-color 0.25s ease;
}
.ls-hood-carousel__arrow:hover:not(:disabled) {
  background: #52575C;
  color: #fff;
}
.ls-hood-carousel__arrow:disabled {
  opacity: 0.3;
  cursor: default;
}
.ls-hood-carousel__arrow svg { display: block; }

/* Track: full bleed; left padding aligns first card with the page content
   gutter PLUS a small aesthetic offset; right edge runs off screen so the
   trailing card is clipped (the "there's more" cue). */
.ls-hood-carousel__track {
  display: flex;
  gap: 34px;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  padding: 4px 0;
  padding-left: 34px;
  scroll-padding-left: 34px;
  scrollbar-width: none;
}
.ls-hood-carousel__track::-webkit-scrollbar { display: none; }

.ls-hood-card {
  flex: 0 0 auto;
  width: 440px;
  border-left: 1px solid #ddd;
  scroll-snap-align: start;
}
.ls-hood-card__link {
  display: block;
  color: inherit;
  text-decoration: none;
}
.ls-hood-card__link:hover,
.ls-hood-card__link:focus { color: inherit; }
.ls-hood-card__media {
  margin: 0 0 32px;
  overflow: hidden;
  aspect-ratio: 1 / 1;
}
.ls-hood-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}
.ls-hood-card:hover .ls-hood-card__media img { transform: scale(1.05); }
.ls-hood-card__name {
  font-family: 'Inter', sans-serif;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 2.3px;
  text-transform: uppercase;
  color: #151515;
  margin: 0 0 7px;
  padding-left: 16px;
}
.ls-hood-card__text {
  font-size: 0.9rem;
  line-height: 1.6;
  color: #151515;
  margin: 0;
  padding-left: 16px;
}

/* "More Neighborhoods" card — same footprint, link-style treatment */
.ls-hood-card--more .ls-hood-card__more-link {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1 / 1;
  background: #151515;
  color: #fff;
  text-decoration: none;
  transition: background-color 0.3s ease;
}
.ls-hood-card--more .ls-hood-card__more-link:hover { background: #2d3748; }
.ls-hood-card__more-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  text-align: center;
}
.ls-hood-card__more-label {
  font-family: 'Inter', sans-serif;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.167rem;
  text-transform: uppercase;
  line-height: 1.3;
}
.ls-hood-card__more-arrow { display: inline-flex; }

@media (max-width: 768px) {
  .ls-hood-card { width: clamp(220px, 72vw, 280px); }
  .ls-hood-carousel__head { padding: 0 18px; }
  .ls-hood-carousel__nav { right: 18px; }
  .ls-hood-carousel__track { padding-left: 18px; scroll-padding-left: 18px; }
}
/* === end neighborhood carousel === */
/* === Land & Sea: Centered CTA pattern (ls-cta) — added 2026-06-17 === */
.ls-cta {
  width: 100%;
  padding: 96px 24px;
  text-align: center;
}
.ls-cta__inner {
  max-width: 720px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.ls-cta__eyebrow {
  margin: 0 0 24px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.167em;
  text-transform: uppercase;
  color: #151515;
}
.ls-cta__heading {
  margin: 0;
  font-size: 2.5rem;
  font-weight: 300;
  letter-spacing: 0.15em;
  line-height: 1.1;
  color: #151515;
}
.ls-cta__divider {
  display: block;
  width: 40px;
  height: 1px;
  margin: 28px auto 32px;
  background: #1a1a1a;
}
.ls-cta__body {
  margin: 0 0 40px;
  max-width: 620px;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.85;
  color: #4a4a4a;
}
.ls-cta__button,
.ls-pinnacle__cta .wp-block-button__link {
  display: inline-block;
  padding: 16px 40px;
  border-radius: 999px;
  background: #8A919A;
  color: #ffffff;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background 0.3s ease, transform 0.3s ease;
}
.ls-cta__button:hover,
.ls-cta__button:focus,
.ls-pinnacle__cta .wp-block-button__link:hover,
.ls-pinnacle__cta .wp-block-button__link:focus {
  background: #757d86;
  color: #ffffff;
  transform: translateY(-1px);
}

@media (max-width: 768px) {
  .ls-cta { padding: 64px 20px; }
  .ls-cta__heading { font-size: 34px; }
  .ls-cta__body { font-size: 15px; }
}
/* === end Centered CTA pattern === */

/* === Land & Sea: two-column parallax patterns (ls-parallax) — added 2026-06-17 === */
.ls-parallax {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: stretch;
  position: relative;
  width: 100vw;
  max-width: 100vw;
  margin-inline: calc(50% - 50vw);
  margin-top: 0;
  margin-bottom: 0;
  overflow-x: clip;
}
.ls-parallax__media {
  position: relative;
  aspect-ratio: 2000 / 1320;
  align-self: start;
  overflow: visible;
}
.ls-parallax__media img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 2000 / 1320;
  max-width: none;
  display: block;
  will-change: transform;
}
.ls-parallax__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-block: 80px;
  padding-inline: clamp(2rem, 6vw, 8rem);
  will-change: transform;
}
.ls-parallax:not(.ls-parallax--image-right) .ls-parallax__content {
  align-items: flex-start;
  text-align: left;
}
.ls-parallax--image-right .ls-parallax__content {
  align-items: flex-end;
  text-align: right;
}
.ls-parallax__heading {
  margin: 0 0 24px;
  font-weight: 300;
  letter-spacing: 0.16em;
  line-height: 1.45;
  text-transform: uppercase;
  color: #151515;
}
.ls-parallax__body {
  margin: 0 0 36px;
  max-width: 80ch;
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1.95;
  color: #151515;
}
.ls-parallax__links {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, max-content);
  grid-template-rows: repeat(5, auto);
  grid-auto-flow: column;
  column-gap: 3rem;
}

/* Override Kadence .single-content ul padding-left (2em) — keep link grid flush */
.ls-parallax .ls-parallax__links {
  padding-left: 0;
}
.ls-parallax__links li {
  margin: 0 0 12px;
}
.ls-parallax__links a {
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1.6;
  color: #151515;
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: color 0.25s ease;
}
.ls-parallax__links a:hover,
.ls-parallax__links a:focus {
  color: #8A919A;
}
.ls-parallax--image-right .ls-parallax__media {
  order: 2;
}
.ls-parallax--image-right .ls-parallax__content {
  order: 1;
}
@media (max-width: 768px) {
  .ls-parallax {
    grid-template-columns: 1fr;
    margin-top: 0;
    margin-bottom: 0;
  }
  .ls-parallax__media {
    aspect-ratio: 2000 / 1320;
    order: 1;
    overflow: hidden;
  }
  .ls-parallax__media img,
  .ls-parallax:not(.ls-parallax--image-right) .ls-parallax__media img,
  .ls-parallax--image-right .ls-parallax__media img {
    position: absolute;
    top: 0;
    left: 0;
    right: auto;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: none !important;
  }
  .ls-parallax__content,
  .ls-parallax:not(.ls-parallax--image-right) .ls-parallax__content,
  .ls-parallax--image-right .ls-parallax__content {
    order: 2;
    padding: 56px 24px;
    align-items: flex-start;
    transform: none !important;
  }
  .ls-parallax--image-right .ls-parallax__media { order: 1; }
  .ls-parallax--image-right .ls-parallax__content { order: 2; }
}
/* === end two-column parallax patterns === */

/* === LS Testimonials — video bg slider (2026-06-18) === */
/* Facsimile of michaellawler.com "FROM OUR CLIENTS".
   Typography intentionally omitted — global Kadence font styles control
   family/weight on .ls-testimonials__heading, __quote, __author.
   After editing this file, bump the Version: line in style.css header so
   functions.php's wp_get_theme()->get('Version') cache-busts the enqueue. */

.ls-testimonials {
	position: relative;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	width: 100vw;
	min-height: 548px;
	display: flex;
	align-items: center;
	overflow: hidden;
	isolation: isolate;
	color: #fff;
}

.ls-testimonials__video {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.ls-testimonials__video-el {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.ls-testimonials__overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	background: rgba(0, 0, 0, 0.5); /* matches reference scrim */
}

.ls-testimonials__inner {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 1328px; /* matches .site-container width */
	margin: 0 auto;
	padding: 5rem 2rem;
	display: flex;
	align-items: center;
	gap: 3rem;
}

.ls-testimonials__left {
	flex: 0 0 30%;
	max-width: 30%;
	display: flex;
	align-items: center;
	gap: 1.5rem;
}

.ls-testimonials__heading {
	margin: 0;
	color: #fff;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.ls-testimonials__arrows {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

/* Rotate chevrons to vertical: prev = up, next = down */
.ls-testimonials__arrow--prev svg { transform: rotate(90deg); }
.ls-testimonials__arrow--next svg { transform: rotate(90deg); }


.ls-testimonials__arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	padding: 0;
	border: 1px solid rgba(255, 255, 255, 0.6);
	border-radius: 50%;
	background: transparent;
	color: #fff;
	cursor: pointer;
	transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease;
}

.ls-testimonials__arrow:hover,
.ls-testimonials__arrow:focus-visible {
	background: #fff;
	border-color: #fff;
	color: #111;
	outline: none;
}

.ls-testimonials__right {
	flex: 1 1 auto;
	min-width: 0;
}

.ls-testimonials__track {
	position: relative;
	min-height: 180px; /* JS sets this from the tallest slide; fallback here */
}

.ls-testimonials__slide {
	transition: opacity 0.5s ease, transform 0.5s ease, visibility 0.5s ease;
	position: absolute;
	inset: 0;
	margin: 0;
	opacity: 0;
	visibility: hidden;
	transform: translateY(40px);
	display: flex;
	flex-direction: column;
	justify-content: center;
	border-left: 2px solid #ffffff;
	padding-left: 1.25rem;
}

/* First-paint state before GSAP initializes (no-JS / pre-hydration safety) */
.ls-testimonials__slide.is-active {
	opacity: 1;
	visibility: visible;
	position: relative;
	transform: translateY(0);
}

/* Outgoing slide: rises up and out the top while the incoming one rises in from below */
.ls-testimonials__slide.is-leaving {
	opacity: 0;
	visibility: visible;
	position: absolute;
	transform: translateY(-40px);
}

/* Reverse direction (down arrow): incoming drops from above, outgoing exits below */
.ls-testimonials.is-reverse .ls-testimonials__slide {
	transform: translateY(-40px);
}
.ls-testimonials.is-reverse .ls-testimonials__slide.is-active {
	transform: translateY(0);
}
.ls-testimonials.is-reverse .ls-testimonials__slide.is-leaving {
	transform: translateY(40px);
}

.ls-testimonials__quote {
	margin: 0 0 1rem;
	color: #fff;
	font-style: normal;
	line-height: 1.6;
	border-left: 0;
	padding-left: 0;
}

.ls-testimonials__quote::before { content: "\201C"; }
.ls-testimonials__quote::after  { content: "\201D"; }

.ls-testimonials__author {
	color: rgba(255, 255, 255, 0.85);
	letter-spacing: 0.04em;
}

/* ---- Tablet / mobile ---- */
@media (max-width: 991.99px) {
	.ls-testimonials__inner {
		flex-direction: column;
		align-items: flex-start;
		gap: 2rem;
		padding: 4rem 1.5rem;
	}
	.ls-testimonials__left {
		flex: 1 1 auto;
		max-width: 100%;
	}
}

/* Respect reduced-motion: video still loops, but no autoplay shimmer reliance */
@media (prefers-reduced-motion: reduce) {
	.ls-testimonials__video-el { display: none; }
	.ls-testimonials { background: #14202b; }
}
/* === end LS Testimonials === */


/* === Land & Sea: parallax responsive refinements (2026-06-19) === */

@media (max-width: 768px) {
  .ls-parallax__links {
    grid-template-columns: 1fr;
    grid-template-rows: none;
    grid-auto-flow: row;
    column-gap: 0;
  }
  .ls-parallax__links li {
    margin: 0 0 20px;
  }
  .ls-parallax__links a {
    display: inline-block;
    padding: 4px 0;
  }
  .ls-parallax__body {
    max-width: 100%;
  }
  .ls-parallax__content,
  .ls-parallax:not(.ls-parallax--image-right) .ls-parallax__content,
  .ls-parallax--image-right .ls-parallax__content {
    align-items: center;
    text-align: center;
  }
  .ls-parallax__links {
    justify-items: center;
    text-align: center;
  }
}
/* === end parallax responsive refinements === */

/* === Header nav: Rolls-Royce treatment + sub-nav row === */
/* Existing nav (MENU toggle + CONTACT) restyled to match: small, uppercase,
   wide tracking, white. Font: Inter (set globally in Kadence). */
.site-header-main-section-left .widget-toggle-label,
.site-header-main-section-right a {
  font-family: 'Inter', sans-serif;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: #fff;
}

/* --- Sub-nav row (injected by js/header-subnav.js) ---------------------- */
.ls-subnav {
  width: 100%;
  position: relative;
  isolation: isolate;
}
/* Centered container; max-width matches the site container (1440px) so the
   row's right edge aligns under CONTACT and left edge under MENU at any width. */
.ls-subnav-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding-right: 1rem;
  box-sizing: border-box;
}
/* Links right-aligned, like the RR section row. */
.ls-subnav-links {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 32px;
  min-height: 60px;
}
.ls-subnav-link {
  font-family: 'Inter', sans-serif;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: #fff;
  text-decoration: none;
  white-space: nowrap;
  transition: opacity 0.25s ease;
  opacity: 1;
}
.ls-subnav-link:hover,
.ls-subnav-link:focus {
  opacity: 0.8;
  color: #fff;
}

/* Responsive: let the links wrap / tighten on small screens. */
@media (max-width: 768px) {
  .ls-subnav-inner { padding: 0 16px; }
  .ls-subnav-links { gap: 18px; justify-content: center; flex-wrap: wrap; }
  .ls-subnav-link { font-size: 13px; letter-spacing: 1px; }
}
/* === Land & Sea: single responsive header (mobile uses desktop layout) === */

/* Hide Kadence's mobile header entirely — we use the desktop header at all widths */
#mobile-header {
  display: none !important;
}

/* Keep the desktop header visible at all widths (override Kadence's mobile-breakpoint hide) */
@media (max-width: 1024px) {
  .site-header-wrap,
  .site-header-inner-wrap,
  .site-header-upper-wrap,
  .site-header-upper-inner-wrap,
  .site-main-header-wrap {
    display: block !important;
  }
}

/* Narrow viewport: shrink wordmark and hide sub-nav (drawer menu covers those links) */
/* Wordmark + band shrink: at ≤768px */
@media (max-width: 768px) {
  .ls-logo-wordmark { width: 180px !important; }
  .site-main-header-inner-wrap { min-height: 110px !important; }
}

/* Sub-nav hidden ≤1024px (desktop & laptop only) */
@media (max-width: 1024px) {
  .ls-subnav { display: none !important; }
}

/* === end hero LQIP === */

/* === Land & Sea: sub-nav backdrop === */
.ls-subnav::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(20, 20, 20, 0.3);
  -webkit-backdrop-filter: blur(calc(var(--subnav-backdrop-opacity, 0) * 20px));
  backdrop-filter: blur(calc(var(--subnav-backdrop-opacity, 0) * 20px));
  opacity: var(--subnav-backdrop-opacity, 0);
  z-index: -1;
  pointer-events: none;
}
/* === end sub-nav backdrop === */

/* === Land & Sea: keep Kadence sticky header chrome transparent at all scroll states === */
.transparent-header #masthead .kadence-sticky-header,
.transparent-header #masthead .kadence-sticky-header .site-header-row-container-inner,
.transparent-header #masthead .site-main-header-wrap,
.transparent-header #masthead .site-main-header-wrap .site-header-row-container-inner {
  background-color: transparent !important;
  background-image: none !important;
}
/* === end === */

/* === Land & Sea: header geometry (size + shrink) === */
/* Restore padding/border overrides (originally bundled with the bad backdrop rules removed in v1.0.93) */
.kadence-sticky-header.item-is-fixed.item-at-start {
  padding: 0;
}
.site-header .site-container {
  padding: 0;
}
.site-main-header-wrap .site-header-row-container-inner > .site-container {
  padding: 0 !important;
  border-bottom: 1px solid #dddddd70;
  transition: padding 0.3s ease;
}

/* Band shrink-on-scroll: scroll handler in hero-lqip.js drives --band-shrink-progress 0→1 */
.site-main-header-inner-wrap {
  min-height: calc(120px - var(--band-shrink-progress, 0) * 45px) !important;
}
/* === end header geometry === */
/* === Land & Sea: wordmark padding-top (band height held by .site-main-header-inner-wrap min-height) === */
.ls-logo-wordmark {
  padding-top: 5px;
}
/* === end === */
/* === Land & Sea: primary nav hover dim (matches sub-nav 0.8) === */
.site-header .drawer-toggle,
.site-header .header-html-inner a {
  transition: opacity 0.25s;
  padding: 1rem;
}
.site-header .drawer-toggle:hover,
.site-header .drawer-toggle:focus,
.site-header .header-html-inner a:hover,
.site-header .header-html-inner a:focus {
  opacity: 0.8;
}
/* === end load-in choreography === */
/* === end === */

/* === Land & Sea: Pinnacle Feature pattern (2026-06-24, rev 2026-06-25 RR-faithful) === */
.ls-pinnacle {
	background: #fff;
	padding: 120px 0 0px;
}
.ls-pinnacle__intro {
	padding: 0 24px;
}
.ls-eyebrow,
.ls-pinnacle__eyebrow {
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.167em;
	text-transform: uppercase;
	margin: 0 0 24px;
	opacity: 0.7;
}
.ls-pinnacle__heading {
	margin: 0 0 32px;
}
.ls-pinnacle__body {
	font-size: 16px;
	line-height: 1.6;
	margin: 0 0 48px;
}
.ls-pinnacle .ls-pinnacle__gallery {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	gap: 0;
	align-items: start;
	padding: 96px 24px 0px;
	width: 100vw;
	max-width: 100vw;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
	box-sizing: border-box;
}
.ls-pinnacle .ls-pinnacle__gallery > .wp-block-group__inner-container {
	display: contents;
}
.ls-pinnacle .ls-pinnacle__gallery .ls-pinnacle__img {
	margin: 0;
}
.ls-pinnacle .ls-pinnacle__gallery .ls-pinnacle__img img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
}
.ls-pinnacle .ls-pinnacle__gallery .ls-pinnacle__img:nth-child(1) {
	grid-column: 1 / 4;
	grid-row: 1;
	transform: translate(8.3vw, 11.5vw);
}
.ls-pinnacle .ls-pinnacle__gallery .ls-pinnacle__img:nth-child(1) img {
	aspect-ratio: 3 / 4;
}
.ls-pinnacle .ls-pinnacle__gallery .ls-pinnacle__img:nth-child(2) {
	grid-column: 4 / 8;
	grid-row: 1;
	transform: translate(6.8vw, -1.7vw);
}
.ls-pinnacle .ls-pinnacle__gallery .ls-pinnacle__img:nth-child(2) img {
	aspect-ratio: 5 / 8;
}
.ls-pinnacle .ls-pinnacle__gallery .ls-pinnacle__img:nth-child(3) {
	grid-column: 7 / 10;
	grid-row: 1;
	transform: translate(6.8vw, 13vw);
}
.ls-pinnacle .ls-pinnacle__gallery .ls-pinnacle__img:nth-child(3) img {
	aspect-ratio: 3 / 4;
}
.ls-pinnacle .ls-pinnacle__gallery .ls-pinnacle__img:nth-child(4) {
	grid-column: 9 / 13;
	grid-row: 1;
	transform: translate(-1vw, -2.1vw) scale(0.648);
}
.ls-pinnacle .ls-pinnacle__gallery .ls-pinnacle__img:nth-child(4) img {
	aspect-ratio: 2 / 3;
}
@media (max-width: 768px) {
	.ls-pinnacle { padding: 64px 0 56px; }
	.ls-pinnacle .ls-pinnacle__gallery {
		grid-template-columns: 1fr 1fr;
		gap: 16px;
		padding: 48px 24px 64px;
	}
	.ls-pinnacle .ls-pinnacle__gallery .ls-pinnacle__img:nth-child(1),
	.ls-pinnacle .ls-pinnacle__gallery .ls-pinnacle__img:nth-child(2),
	.ls-pinnacle .ls-pinnacle__gallery .ls-pinnacle__img:nth-child(3),
	.ls-pinnacle .ls-pinnacle__gallery .ls-pinnacle__img:nth-child(4) {
		grid-column: auto;
		transform: none;
		z-index: auto;
	}
	.ls-pinnacle .ls-pinnacle__gallery .ls-pinnacle__img img {
		aspect-ratio: 3 / 4;
	}
}
/* Large H2s (Neighborhoods, Services, Bespoke) — fluid 24 → 40 */
.ls-hood-carousel__title,
.ls-cta__heading,
.ls-pinnacle__heading {
  font-size: clamp(1.5rem, 3.5vw, 2.5rem);
  line-height: 1.2;
  text-wrap: balance;
}

/* Medium H2s (Parallax, Visit Our Blog) — fluid 22 → 32 */
.ls-parallax__heading,
.kt-adv-heading1231_08928b-cd {
  font-size: clamp(1.375rem, 3vw, 2rem);
  line-height: 1.3;
  text-wrap: balance;
}

/* Generic H1/H2 fallback for any heading without a custom class */
h1 { font-size: clamp(2rem, 5vw, 3.75rem); line-height: 1.15; }
h2 { font-size: clamp(1.5rem, 3.5vw, 2.5rem); line-height: 1.2; }

/* === end responsive headings === */
/* === Land & Sea: drawer menu redesign (Robin Kencel-inspired) === */

/* Drawer panel: narrower (420px), dark bg preserved */
#widget-drawer.popup-drawer-layout-sidepanel .drawer-inner {
  max-width: 700px !important;
  padding: 36px 100px !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Drawer header: flex row — wordmark left, X close right */
#widget-drawer .drawer-header {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 0 !important;
  margin-bottom: 86px !important;
}

/* Wordmark injected as ::before pseudo-element on the left */
#widget-drawer .drawer-header::before {
  content: '';
  display: block;
  width: 140px;
  height: 26px;
  background-image: url('https://landandsearealty.com/wp-content/uploads/2025/10/Land-Sea-Logo-no-padding.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left center;
  margin-top: 8px;
}

/* Close button: hide "CLOSE" text, keep X icon, large + right */
#widget-drawer .widget-toggle-close .widget-toggle-label,
#widget-drawer .widget-toggle-close > span:not(.kadence-svg-iconset) {
  display: none !important;
}
#widget-drawer .widget-toggle-close {
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  color: #fff !important;
  transition: color 0.25s !important;
  opacity: 1 !important;
}
#widget-drawer .widget-toggle-close .kadence-svg-icon {
  width: 28px !important;
  height: 28px !important;
}
#widget-drawer .widget-toggle-close:hover {
  opacity: 0.7 !important;
}

/* Menu items: left-aligned, larger font, thin bottom dividers */
#widget-drawer .drawer-content .menu {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
#widget-drawer .drawer-content .menu-item {
  border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
}
#widget-drawer .drawer-content .menu-item a {
  display: block !important;
  text-align: left !important;
  padding: 5px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  color: #fff !important;
  text-decoration: none !important;
  transition: opacity 0.25s !important;
}
#widget-drawer .drawer-content .menu-item a:hover {
  opacity: 0.7 !important;
}
/* Content area takes all available vertical space so contact info sits at the bottom */
#widget-drawer .drawer-content {
  flex: 1;
}

/* Contact info at bottom of drawer */
#widget-drawer .drawer-inner::after {
  content: 'T: (239) 970-1000  |  E: admin@landandsearealty.com';
  margin-top: 24px;
  font-family: 'Inter', sans-serif;
  font-size: 12px;
  letter-spacing: 0.5px;
  color: rgba(255, 255, 255, 0.85);
}
/* === end drawer redesign === */

/* === Land & Sea: INQUIRE drawer (left-side slide-out, Robin Kencel-inspired) === */
#ls-inquire-drawer {
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 9998;
}
#ls-inquire-drawer.is-open { pointer-events: auto; }

.ls-inquire-drawer__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
  opacity: 0;
  transition: opacity 400ms ease;
  cursor: pointer;
}
#ls-inquire-drawer.is-open .ls-inquire-drawer__overlay { opacity: 1; }

.ls-inquire-drawer__panel {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 700px;
  max-width: 100vw;
  background: #ededed;
  transform: translateX(-100%);
  transition: transform 400ms ease;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  padding: 36px 100px;
  box-sizing: border-box;
}
#ls-inquire-drawer.is-open .ls-inquire-drawer__panel { transform: translateX(0); }

.ls-inquire-drawer__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 86px;
}
.ls-inquire-drawer__logo {
  width: auto;
  height: 26px;
  display: block;
  margin-top: 8px;
}
.ls-inquire-drawer__close {
  background: none;
  border: none;
  padding: 0;
  font-size: 32px;
  line-height: 1;
  color: #1a1a1a;
  cursor: pointer;
  transition: opacity 0.25s;
}
.ls-inquire-drawer__close:hover { opacity: 0.7; }

.ls-inquire-drawer__heading {
  font-family: 'Inter', sans-serif;
  font-size: clamp(2rem, 4vw, 2.75rem);
  font-weight: 300;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #1a1a1a;
  margin: 0 0 32px;
  line-height: 1.1;
}

.ls-inquire-drawer__form {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.ls-inquire-drawer__field {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.ls-inquire-drawer__field-label {
  font-family: 'Inter', sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: #1a1a1a;
}
.ls-inquire-drawer__field input,
.ls-inquire-drawer__field textarea {
  font-family: 'Inter', sans-serif;
  font-size: 15px;
  color: #1a1a1a;
  background: transparent;
  border: none;
  border-bottom: 1px solid #1a1a1a;
  padding: 6px 0;
  width: 100%;
  box-sizing: border-box;
}

/* === Land & Sea: kill Kadence's default border-radius on drawer form fields
   (causes the bottom border to "curl up" at the ends) === */
.ls-inquire-drawer__field input,
.ls-inquire-drawer__field textarea {
  border-radius: 0;
}
/* === end === */
.ls-inquire-drawer__field textarea {
  border: 1px solid #1a1a1a;
  padding: 8px;
  resize: vertical;
  min-height: 90px;
}
.ls-inquire-drawer__field input:focus,
.ls-inquire-drawer__field textarea:focus {
  outline: none;
  border-color: #000;
}

.ls-inquire-drawer__consent {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-family: 'Inter', sans-serif;
  font-size: 12px;
  line-height: 1.5;
  color: #1a1a1a;
  cursor: pointer;
}
.ls-inquire-drawer__consent input { margin-top: 3px; flex-shrink: 0; }

.ls-inquire-drawer__submit {
  display: inline-block;
  background: transparent;
  border: 2px solid #1a1a1a;
  color: #1a1a1a;
  font-family: 'Inter', sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 14px 32px;
  cursor: pointer;
  align-self: flex-start;
  transition: background 0.25s, color 0.25s;
  margin-top: 8px;
}
.ls-inquire-drawer__submit:hover {
  background: #1a1a1a;
  color: #ededed;
}

.ls-inquire-drawer__success {
  display: none;
  padding: 32px 0;
  font-family: 'Inter', sans-serif;
  font-size: 15px;
  color: #1a1a1a;
}
#ls-inquire-drawer.is-success .ls-inquire-drawer__form { display: none; }
#ls-inquire-drawer.is-success .ls-inquire-drawer__success { display: block; }

.ls-inquire-drawer__contact {
  margin-top: auto;
  padding-top: 24px;
  font-family: 'Inter', sans-serif;
  font-size: 12px;
  letter-spacing: 0.5px;
  color: rgba(0, 0, 0, 0.7);
}

body.ls-inquire-open { overflow: hidden; }

@media (max-width: 600px) {
  .ls-inquire-drawer__panel { width: 100vw; padding: 24px; }
  .ls-inquire-drawer__heading { font-size: 2rem; }

  /* Right drawer: match left drawer's mobile padding so logo + X sit at
     equivalent insets on both panels, and menu links align with the logo edge */
  #widget-drawer.popup-drawer-layout-sidepanel .drawer-inner {
    padding: 24px !important;
  }
  #widget-drawer .drawer-content .menu-item a {
    padding: 5px 0 !important;
  }
}
/* === end INQUIRE drawer === */

/* === Land & Sea: mobile primary header layout — wordmark on top row, INQUIRE/MENU below === */
@media (max-width: 768px) {
  /* Re-shape the Kadence header grid into 2 rows: logo on top, left/right beneath */
  .site-main-header-inner-wrap {
    grid-template-columns: 1fr 1fr !important;
    grid-template-rows: auto auto !important;
    grid-template-areas:
      "logo logo"
      "left right" !important;
    row-gap: 0 !important;
    align-items: stretch !important;
  }

  /* Top row: wordmark, centered, hugging the top to leave room below */
  .site-header-main-section-center {
    grid-area: logo !important;
    justify-content: center !important;
    align-items: flex-start !important;
    padding-top: 6px !important;
    padding-bottom: 0 !important;
  }

  /* Bottom-left cell: INQUIRE NOW */
  .site-header-main-section-left {
    grid-area: left !important;
    justify-content: flex-start !important;
    align-items: center !important;
    padding-left: 16px !important;
  }

  /* Bottom-right cell: MENU */
  .site-header-main-section-right {
    grid-area: right !important;
    justify-content: flex-end !important;
    align-items: center !important;
    padding-right: 16px !important;
  }

  /* Let the header auto-size to fit the two stacked rows */
  .site-header-inner-wrap.kadence-sticky-header {
    height: auto !important;
    min-height: 0 !important;
  }
  .site-main-header-wrap,
  .site-main-header-inner-wrap {
    height: auto !important;
  }

  /* The INQUIRE NOW and MENU items themselves — give them clean touch targets */
  .site-header-main-section-left .header-html-inner a,
  .site-header-main-section-right .header-menu-container .menu-toggle-open,
  .site-header-main-section-right .drawer-toggle {
    padding: 8px 4px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
  }
}
/* === end mobile primary header layout === */

/* === Land & Sea: Hero (full-bleed picture + headline + CTAs) =================
   Replaces the old Kadence rowlayout-with-bg-image hero. Single <section> with
   a <picture> (desktop + mobile srcset), a subtle overlay for legibility, and
   a centered H1 + two pill buttons. No JS hooks, no LQIP, no scroll-scrub —
   modern browsers handle <img fetchpriority="high"> + <link rel="preload">. */

.ls-hero {
  position: relative;
  width: 100vw;
  margin-left: calc((100% - 100vw) / 2);
  height: 100vh;
  min-height: 600px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.ls-hero__media {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.ls-hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.ls-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0.22);
  pointer-events: none;
}

.ls-hero__content {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 1500px;
  padding: 0 24px;
  text-align: center;
}

.ls-hero__title {
  margin: 0 0 48px;
  font-family: 'Inter', system-ui, sans-serif;
  font-weight: 300;
  color: #fff;
  text-shadow: 2px 3px 5px rgba(0, 0, 0, 0.5);
  display: flex;
  flex-direction: column;
  gap: 14px;
  line-height: 1;
}

.ls-hero__title-main {
  font-size: clamp(1.75rem, 4vw, 4rem);
  letter-spacing: 0.15em;
}

.ls-hero__title-sub {
  font-size: clamp(1rem, 1.8vw, 1.75rem);
  letter-spacing: 0.08em;
}

.ls-hero__buttons {
  display: flex;
  justify-content: center;
  gap: 16px;
  flex-wrap: wrap;
}

.ls-hero__btn {
  display: inline-block;
  padding: 14px 40px;
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  text-decoration: none;
  color: #fff;
  background: transparent;
  border-radius: 30px;
  transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease;
  border: 1px solid #fff;
  -webkit-tap-highlight-color: transparent;
  width: 200px;
}

.ls-hero__btn--fill {
  border-width: 0;
  padding: 17px 40px;
}

.ls-hero__btn:hover,
.ls-hero__btn:focus-visible {
  background-color: #dddddd20;
  color: #fff;
}

.ls-hero__btn--fill:hover,
.ls-hero__btn--fill:focus-visible {
  border: 1px solid #fff;
  padding: 14px 40px;
}

@media (max-width: 768px) {
  .ls-hero { min-height: 500px; }
  .ls-hero__title { margin-bottom: 32px; gap: 10px; }
}

/* === end Hero === */

/* === Land & Sea: Hero choreography (PORTED from v1.0.127, remapped to .ls-hero) ===
   Restored verbatim from the proven pre-rebuild stylesheet. Selector remap only:
   .ls-scene-1 -> .ls-hero ; .kt-inside-inner-col -> .ls-hero__content ;
   LQIP ::before retargeted to .ls-hero__media::before so it overlays the hero image.
   Drives --lqip-opacity, --hero-content-opacity, --primary-slide-px,
   --subnav-backdrop-opacity, --band-shrink-progress. Paired with hero-effects.js. */
/* === Land & Sea: hero LQIP (RR coachbuild parity, 2026-06-23) === */
/* Low-quality placeholder image shown on first paint while the real hero loads.
   Mirrors rolls-roycemotorcars.com .rrmc-preload-blur — a 32px upscaled JPEG,
   blurry by virtue of upscaling, ~1.4KB inline. Painted at z-index 1,
   between Kadence's bg-slider (z-auto = 0) and column-wrap (z-1, DOM-later).
   Faded out by hero-lqip.js once the real image is decoded. */
.ls-hero {
  --lqip-opacity: 1;
}
.ls-hero.lqip-loaded {
  --lqip-opacity: 0;
}
.ls-hero__media::before {
  content: '';
  display: block; /* override Kadence's clearfix .kb-row-layout-wrap::before { display: table; } so the LQIP can render full-size */
  position: absolute;
  inset: 0;
  background-image: url('data:image/jpeg;base64,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a5+24C5zGucM2XfO7mbiYmAzm6Su8wNTGR7rGUt5xRO85yG85oV5rJOqzQbmIG6zSeqzQaqqHqZies0LPXodPzD3L6Xa2sbDofVHjOx4mpjODSEiWtOS7CDSGldMbxzo4nRuVOS+TC468dzMRqVd51rbWmQeiXodOWnMa1MLMCEvhgctejZFndac61imbzWB6znKV5zSWpjLCZzlGqzQrrNI1WaDVZoNZqkrqqDUzQaqqHqqpPUzEamYixbFFikzzdj3W82yt/Ua5fTNtRnfNryDmOJfb8zfPT7vOefMlI9GBbU7Uvc7M6svnuT5iRaKS4CY7O2AX9Ob5WxnVvWawyYmAmLwlWZSLrNC3WKDecZDWc5S1WKDec5Fus0jUxSe85oepiBrNUjVVQXMxF1VJ6qqHqqiLmYGpmIsexxY6vPP1SS1RurxnHfqneL1Z6RjbXisApXmUUXHeWqFtprtct3DX0c5k6Z4OOuP1vI5hHraXNrdLZc6taqshec5C8Vlq8VlK81kNVmkXVUEzMomaoV1URKuh1JE6q8pypBVJScqREqUnJKRJIOpKTkkCSREkgTG8piyTOO+LuRpo4NUdB3imeneL5yK/Rj4rON0odTKJGK0z6XSU9J5Pfzo3Nz/xAAhEAACAgMBAQEBAQEBAAAAAAABAgMRAAQSExQQIDBQBf/aAAgBAQABAgAgggiqqqqqqqqqqqqqqqqqqqqq/wCJdjCOeeeeeOeOOOOOOOOOOOOOOOOOeeeeeeeeeeeeeeeeeeeeea5qqqqqqqqqqqqqqrKoA/lVVVVVXPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPNVVVVVVVVVVVVVVVVV+VWAE3d3f+dVVVVVVc8881zVVVVVVVVVVVVVV+1+VX+VYMLdddddddddddd9ddddXd3/pX7X/DGF+++++++/T09DL7CcTCX09PT09PT0777777776666L+nV3d3d3d3d3d3d3d/wCwwv3333333320kmy26N6PbSXvvvv09PT07777777777kmfbXcim77777766666L+vp3111113311d3d3d3d2D6ddddddddXKdhpZFl13gbrrvvvvvvvv09PT09PT0MmxJNJHLqyBy5kM3t7enp6ejSvO+1HtJL336dvK2ymwJO+++++uuu+++ulK7A2Pf19PX19fX1eWdpih1zHMJ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');
  background-size: cover;
  background-position: center;
  opacity: var(--lqip-opacity);
  transition: opacity 800ms ease-out;
  z-index: 1;
  pointer-events: none;
}
.ls-hero.scroll-scrub .ls-hero__media::before {
  transition: none;
}


/* === end hero LQIP === */

/* === Land & Sea: header slide-away === */
/* --- Sub-nav decouple: wrapper slides up, subnav counter-translates to stay pinned (2026-06-29) --- */
.site-header-inner-wrap {
  transform: translateY(calc(-1 * var(--primary-slide-px, 0px)));
}
/* ls-subnav: no transform needed — rides the wrapper translate to y=0 naturally */
.ls-subnav::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  background: rgba(20, 20, 20, 0.85);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  opacity: var(--subnav-backdrop-opacity, 0);
  pointer-events: none;
}
/* --- end sub-nav decouple --- */
/* === end === */
/* === Land & Sea: sub-nav backdrop === */
.ls-subnav {
  position: relative;
  isolation: isolate;
}
.ls-subnav::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(20, 20, 20, 0.3);
  -webkit-backdrop-filter: blur(calc(var(--subnav-backdrop-opacity, 0) * 20px));
  backdrop-filter: blur(calc(var(--subnav-backdrop-opacity, 0) * 20px));
  opacity: var(--subnav-backdrop-opacity, 0);
  z-index: -1;
  pointer-events: none;
}
/* === end === */

/* === Land & Sea: keep Kadence sticky header chrome transparent at all scroll states === */
.transparent-header #masthead .kadence-sticky-header,
.transparent-header #masthead .kadence-sticky-header .site-header-row-container-inner,
.transparent-header #masthead .site-main-header-wrap,
.transparent-header #masthead .site-main-header-wrap .site-header-row-container-inner {
  background-color: transparent !important;
  background-image: none !important;
}
/* === end === */

/* === Land & Sea: header geometry (size + shrink) === */
/* Restore padding/border overrides (originally bundled with the bad backdrop rules removed in v1.0.93) */
.kadence-sticky-header.item-is-fixed.item-at-start {
  padding: 0;
}
.site-header .site-container {
  padding: 0;
}
.site-main-header-wrap .site-header-row-container-inner > .site-container {
  padding: 0 !important;
  border-bottom: 1px solid #dddddd70;
  transition: padding 0.3s ease;
}

/* Band shrink-on-scroll: scroll handler in hero-lqip.js drives --band-shrink-progress 0→1 */
.site-main-header-inner-wrap {
  min-height: calc(120px - var(--band-shrink-progress, 0) * 45px) !important;
}
/* === end header geometry === */
/* === Land & Sea: wordmark padding-top (band height held by .site-main-header-inner-wrap min-height) === */
.ls-logo-wordmark {
  padding-top: 5px;
}
/* === end === */
/* === Land & Sea: primary nav hover dim (matches sub-nav 0.8) === */
.site-header .drawer-toggle,
.site-header .header-html-inner a {
  transition: opacity 0.25s;
}
.site-header .drawer-toggle:hover,
.site-header .drawer-toggle:focus,
.site-header .header-html-inner a:hover,
.site-header .header-html-inner a:focus {
  opacity: 0.8;
}
/* === Land & Sea: load-in choreography (header band + hero content) === */
/* Header band fades in 800ms once .ls-header-ready is set 600ms after paint */
.site-header-inner-wrap {
  opacity: 0;
  transition: opacity 400ms ease;
}
body.ls-header-ready .site-header-inner-wrap {
  opacity: 1;
}
/* Hero content starts hidden; fades in with sharp image (.lqip-loaded); */
/* scroll JS overrides via --hero-content-opacity (no transition during scrub) */
.ls-hero .ls-hero__content {
  opacity: 0;
  transition: opacity 800ms ease-out;
}
.ls-hero.lqip-loaded .ls-hero__content {
  opacity: 1;
}
body.ls-scrolling .ls-hero.lqip-loaded .ls-hero__content {
  opacity: var(--hero-content-opacity, 1);
  transition: none;
}
/* === end load-in choreography === */
/* === end Hero choreography (ported) === */

/* === Kadence drawer: match left inquire-drawer timing (2026-06-29) === */
.drawer-inner {
  transition: transform 0.4s ease, opacity 0.4s ease !important;
}
.drawer-overlay {
  transition: opacity 0.4s ease !important;
}
.popup-drawer {
  transition: opacity 0.4s ease, left 0s 0.4s, right 0s 0.4s !important;
}
.popup-drawer.show-drawer {
  transition: opacity 0.4s ease, left 0s 0s, right 0s 0s !important;
}
/* === end Kadence drawer timing === */