.land-hero.is-hero-poster,
.land-hero.is-hero-poster.is-image,
.land-hero.is-hero-poster.is-accent,
.land-hero.is-hero-editorial,
.land-hero.is-hero-editorial.is-image,
.land-hero.is-hero-editorial.is-accent,
.land-hero.is-hero-diptych,
.land-hero.is-hero-diptych.is-image,
.land-hero.is-hero-diptych.is-accent,
.land-hero.is-hero-float,
.land-hero.is-hero-float.is-image,
.land-hero.is-hero-float.is-accent,
.land-hero.is-hero-strip,
.land-hero.is-hero-strip.is-image,
.land-hero.is-hero-strip.is-accent,
.land-hero.is-hero-cinema,
.land-hero.is-hero-cinema.is-image,
.land-hero.is-hero-cinema.is-accent {
  background: transparent;
  color: inherit;
}

.land-hero.is-hero-poster.is-image::after,
.land-hero.is-hero-editorial.is-image::after,
.land-hero.is-hero-diptych.is-image::after,
.land-hero.is-hero-float.is-image::after,
.land-hero.is-hero-strip.is-image::after,
.land-hero.is-hero-cinema.is-image::after {
  content: none;
}

.land-hero.is-hero-poster {
  display: grid;
  align-items: end;
  min-height: min(46rem, 92vh);
  padding: 0;
  background: #141414;
}

.land-hero.is-hero-poster .land-hero__frame {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: left;
  padding-bottom: clamp(1.4rem, 4vw, 2.6rem);
  pointer-events: none;
}

.land-hero.is-hero-poster .land-hero__copy,
.land-hero.is-hero-poster .land-actions {
  pointer-events: auto;
}

.land[dir="rtl"] .land-hero.is-hero-poster:not([class*="is-text-"]) .land-hero__frame,
html[dir="rtl"] .land:not([dir]) .land-hero.is-hero-poster:not([class*="is-text-"]) .land-hero__frame,
.land-hero.is-hero-poster.is-text-right .land-hero__frame,
.land-hero.is-hero-poster.is-flip .land-hero__frame {
  justify-content: right;
}

.land[dir="ltr"] .land-hero.is-hero-poster:not([class*="is-text-"]) .land-hero__frame,
html[dir="ltr"] .land:not([dir]) .land-hero.is-hero-poster:not([class*="is-text-"]) .land-hero__frame,
.land-hero.is-hero-poster.is-text-left .land-hero__frame {
  justify-content: left;
}

.land-hero.is-hero-poster.is-text-center .land-hero__frame {
  justify-content: center;
}

.land-hero.is-hero-poster .land-hero__copy {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  max-width: min(28rem, 100%);
  padding: 1.45rem 1.5rem 1.3rem;
  background: var(--land-surface);
  color: var(--land-text);
  border-inline-start: 0.55rem solid var(--land-accent);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.22);
}

.land-hero.is-hero-poster .land-actions {
  margin-top: 0.15rem;
  padding-top: 0.15rem;
}

.land-hero.is-hero-poster .land-hero__title {
  --land-fs-base: clamp(2.3rem, 4.2vw, 3.6rem);
  line-height: 1.02;
}

.land-hero.is-hero-editorial,
.land-hero.is-hero-cinema,
.land-hero.is-hero-float,
.land-hero.is-hero-strip {
  display: block;
  min-height: 0;
}

.land-hero.is-hero-editorial {
  padding: clamp(3.2rem, 7vw, 5.5rem) 0 clamp(2.2rem, 5vw, 3.4rem);
}

.land-hero.is-hero-editorial .land-hero__frame,
.land-hero.is-hero-cinema .land-hero__frame {
  display: grid;
  align-items: end;
  text-align: start;
}

.land-hero.is-hero-editorial .land-hero__frame {
  grid-template-columns: minmax(0, 1.4fr) minmax(15rem, 0.72fr);
  grid-template-areas:
    "title meta"
    "media lede"
    "media actions";
  column-gap: clamp(1.4rem, 4vw, 3.4rem);
  row-gap: 0.85rem;
}

.land-hero.is-hero-editorial .land-hero__title {
  grid-area: title;
  align-self: end;
  --land-fs-base: clamp(3.3rem, 7.4vw, 6.8rem);
  line-height: 0.96;
  text-align: start;
}

.land-hero.is-hero-editorial .land-eyebrow {
  grid-area: meta;
  align-self: end;
  padding-bottom: 0.7rem;
  border-bottom: 2px solid var(--land-accent);
  text-align: start;
}

.land-hero.is-hero-editorial .land-lede {
  grid-area: lede;
  max-width: none;
  text-align: start;
}

.land-hero.is-hero-editorial .land-actions {
  grid-area: actions;
  justify-content: start;
}

.land-hero.is-hero-editorial .land-hero__media {
  grid-area: media;
  margin: 0;
}

.land-hero.is-hero-editorial .land-hero__media img {
  width: 100%;
  height: clamp(16rem, 32vw, 22rem);
  aspect-ratio: auto;
  object-fit: cover;
}

.land-hero.is-hero-diptych {
  display: block;
  min-height: min(40rem, 88vh);
  padding: 0;
}

.land-hero.is-hero-diptych .land-hero__frame {
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 100%;
  min-height: min(40rem, 88vh);
  margin: 0;
}

.land-hero.is-hero-diptych:not(:has(.land-hero__media)) .land-hero__frame {
  grid-template-columns: 1fr;
}

.land-hero.is-hero-diptych .land-hero__copy {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 1rem;
  max-width: none;
  padding: clamp(2rem, 5vw, 4.2rem);
  background: var(--land-accent);
  color: var(--land-accent-text);
}

.land-hero.is-hero-diptych .land-hero__title {
  --land-fs-base: clamp(2.7rem, 4.8vw, 4.8rem);
  line-height: 0.94;
}

.land-hero.is-hero-diptych .land-lede {
  max-width: 28rem;
}

.land-hero.is-hero-diptych .land-btn:not(.land-btn--ghost):not([data-button-colors]) {
  background: var(--land-accent-text);
  color: var(--land-accent);
  border-color: var(--land-accent-text);
}

.land-hero.is-hero-diptych .land-hero__media {
  margin: 0;
  min-height: 16rem;
}

.land-hero.is-hero-diptych .land-hero__media img {
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
  object-fit: cover;
}

.land-hero.is-hero-diptych.is-flip .land-hero__copy {
  order: 2;
}

.land-hero.is-hero-diptych.is-flip .land-hero__media {
  order: 1;
}

.land-hero.is-hero-float {
  overflow: visible;
  padding: clamp(1.2rem, 3vw, 2rem) 0 4.8rem;
}

.land-hero.is-hero-float .land-hero__frame {
  display: grid;
}

.land-hero.is-hero-float .land-hero__media,
.land-hero.is-hero-float .land-hero__copy {
  grid-column: 1;
  grid-row: 1;
}

.land-hero.is-hero-float .land-hero__media {
  margin: 0;
}

.land-hero.is-hero-float .land-hero__media img {
  width: 100%;
  height: min(34rem, 64vh);
  aspect-ratio: auto;
  object-fit: cover;
}

.land-hero.is-hero-float .land-hero__copy {
  align-self: end;
  justify-self: left;
  z-index: 1;
  max-width: min(32rem, 88%);
  margin-top: 0;
  margin-bottom: 0;
  margin-left: clamp(0.8rem, 3vw, 2.4rem);
  margin-right: auto;
  padding: 1.45rem 1.5rem 1.3rem;
  background: var(--land-surface);
  color: var(--land-text);
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.14);
  transform: translateY(2.3rem);
}

.land-hero.is-hero-float.is-flip .land-hero__copy {
  justify-self: right;
  margin-left: auto;
  margin-right: clamp(0.8rem, 3vw, 2.4rem);
}

.land-hero.is-hero-float.is-text-center .land-hero__copy,
.land-hero.is-hero-float.is-text-center.is-flip .land-hero__copy {
  justify-self: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.land-hero.is-hero-float.is-text-left .land-hero__copy,
.land-hero.is-hero-float.is-text-left.is-flip .land-hero__copy {
  justify-self: left !important;
  margin-left: clamp(0.8rem, 3vw, 2.4rem) !important;
  margin-right: auto !important;
}

.land-hero.is-hero-float.is-text-right .land-hero__copy,
.land-hero.is-hero-float.is-text-right.is-flip .land-hero__copy {
  justify-self: right !important;
  margin-left: auto !important;
  margin-right: clamp(0.8rem, 3vw, 2.4rem) !important;
}

.land-hero.is-hero-strip {
  padding: 0;
  background: var(--land-surface);
  color: var(--land-text);
  border-bottom: 1px solid color-mix(in srgb, var(--land-text) 14%, transparent);
}

.land-hero.is-hero-strip .land-hero__frame {
  display: flex;
  align-items: center;
  gap: 1.15rem;
  min-height: 6.6rem;
  padding-block: 0.85rem;
}

.land-hero.is-hero-strip .land-hero__media {
  flex: 0 0 auto;
  margin: 0;
}

.land-hero.is-hero-strip .land-hero__media img {
  width: 4.6rem;
  height: 4.6rem;
  aspect-ratio: 1;
  object-fit: cover;
}

.land-hero.is-hero-strip .land-hero__copy {
  flex: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.15rem 1.4rem;
  align-items: center;
  max-width: none;
}

.land-hero.is-hero-strip .land-eyebrow,
.land-hero.is-hero-strip .land-hero__title,
.land-hero.is-hero-strip .land-lede {
  grid-column: 1;
}

.land-hero.is-hero-strip .land-hero__title {
  --land-fs-base: clamp(1.25rem, 2vw, 1.75rem);
  line-height: 1.15;
}

.land-hero.is-hero-strip .land-lede {
  --land-fs-base: 0.95rem;
}

.land-hero.is-hero-strip .land-actions {
  grid-column: 2;
  grid-row: 1 / span 3;
  margin-top: 0;
}

.land-hero.is-hero-cinema {
  padding: clamp(2.4rem, 6vw, 4.2rem) 0 clamp(2rem, 5vw, 3.2rem);
}

.land-hero.is-hero-cinema .land-hero__frame {
  grid-template-columns: minmax(0, 1.35fr) minmax(12rem, 0.55fr);
  grid-template-areas:
    "eyebrow eyebrow"
    "title title"
    "media media"
    "lede actions";
  row-gap: 0.85rem;
  column-gap: 1.6rem;
}

.land-hero.is-hero-cinema .land-eyebrow {
  grid-area: eyebrow;
  text-align: start;
}

.land-hero.is-hero-cinema .land-hero__title {
  grid-area: title;
  --land-fs-base: clamp(3.1rem, 8vw, 7.2rem);
  line-height: 0.9;
  text-align: start;
}

.land-hero.is-hero-cinema .land-hero__media {
  grid-area: media;
  margin: 0.15rem 0 0.1rem;
}

.land-hero.is-hero-cinema .land-hero__media img {
  width: 100%;
  height: min(28rem, 50vh);
  aspect-ratio: auto;
  object-fit: cover;
}

.land-hero.is-hero-cinema .land-lede {
  grid-area: lede;
  max-width: 38rem;
  text-align: start;
}

.land-hero.is-hero-cinema .land-actions {
  grid-area: actions;
  justify-content: end;
  align-self: end;
  margin-top: 0;
}

html[dir="rtl"] .land-hero.is-hero-editorial .land-hero__title,
html[dir="rtl"] .land-hero.is-hero-cinema .land-hero__title,
.land[dir="rtl"] .land-hero.is-hero-editorial .land-hero__title,
.land[dir="rtl"] .land-hero.is-hero-cinema .land-hero__title {
  letter-spacing: 0;
}

.land-titleband.is-model-heading:not([class*="is-text-"]),
.land-titleband.is-model-intro:not([class*="is-text-"]) {
  text-align: center;
}

.land-titleband.is-model-heading .land-title {
  --land-fs-base: clamp(1.7rem, 3vw, 2.35rem);
}

.land-titleband.is-model-intro .land-lede {
  max-width: 40rem;
}

.land-titleband.is-model-intro:not([class*="is-text-"]) .land-lede,
.land-titleband.is-model-intro.is-text-center .land-lede {
  margin-left: auto;
  margin-right: auto;
}

.land-titleband.is-model-intro.is-text-left .land-lede {
  margin-left: 0;
  margin-right: auto;
}

.land-titleband.is-model-intro.is-text-right .land-lede {
  margin-left: auto;
  margin-right: 0;
}

.land-block.is-model-points .land-card {
  background: transparent;
  border: 0;
  padding: 0.35rem 0.5rem 0.2rem;
  text-align: center;
}

.land-block.is-model-points .land-card img {
  display: none;
}

.land-block.is-model-points .land-card__body {
  justify-items: center;
  padding-inline: 0.15rem;
}

.land-block.is-model-points .land-card p {
  font-weight: 700;
}

.land-block.is-model-benefits .land-card {
  padding: 0 0 1.15rem;
}

.land-block.is-model-benefits .land-card h3 {
  --land-fs-base: 1.02rem;
}

.land-block.is-model-list .land-cards,
.land-block.is-cols-2.is-model-list .land-cards,
.land-block.is-cols-3.is-model-list .land-cards,
.land-block.is-cols-4.is-model-list .land-cards {
  grid-template-columns: 1fr;
}

.land-block.is-model-list .land-card {
  background: transparent;
  border: 0;
  border-top: 1px solid color-mix(in srgb, var(--land-text) 14%, transparent);
  padding: 0.15rem 0 0.2rem;
}

.land-block.is-model-list .land-card img {
  display: none;
}

.land-faq-block.is-model-cards .land-faq {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.9rem;
  margin-top: 1.8rem;
}

.land-faq-block.is-model-cards .land-faq__item {
  margin: 0;
  padding: 0;
  border: 1px solid color-mix(in srgb, var(--land-text) 12%, transparent);
  background: var(--land-surface);
  border-radius: 1.1rem;
  overflow: hidden;
}

.land-faq-block.is-model-cards .land-faq__item:last-child {
  border-bottom: 1px solid color-mix(in srgb, var(--land-text) 12%, transparent);
}

.land-faq-block.is-model-cards summary {
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 1rem 1.05rem;
  align-items: start;
}

.land-faq-block.is-model-cards .land-faq__mark {
  display: none;
}

.land-faq-block.is-model-cards .land-faq__answer {
  padding: 0 1.05rem 1.05rem;
  padding-inline-start: 1.05rem;
}

.land-faq-block.is-model-cards .land-faq__item[open] {
  border-color: color-mix(in srgb, var(--land-accent) 45%, transparent);
  box-shadow: 0 12px 28px rgba(20, 16, 12, 0.06);
}

.land-faq-block.is-model-split .land-faq__intro .land-title {
  --land-fs-base: clamp(1.9rem, 3.4vw, 2.8rem);
}

.land-faq-block.is-model-soft .land-faq {
  gap: 0.75rem;
}

.land-faq-block.is-model-soft .land-faq__item,
.land-faq-block.is-model-soft .land-faq__item:last-child {
  border: 0;
  border-radius: 1.15rem;
  background: color-mix(in srgb, var(--land-text) 4.5%, var(--land-bg));
  overflow: hidden;
}

.land-faq-block.is-model-soft summary {
  padding: 1.05rem 1.15rem;
}

.land-faq-block.is-model-soft .land-faq__answer {
  padding: 0 1.15rem 1.15rem;
  padding-inline-start: calc(0.78rem + 1rem + 1.15rem);
}

.land-faq-block.is-model-soft .land-faq__item[open] {
  background: var(--land-surface);
  box-shadow: 0 14px 34px rgba(20, 16, 12, 0.07);
}

.land-faq-block.is-model-open .land-faq__icon {
  display: none;
}

.land-faq-block.is-model-open summary {
  grid-template-columns: auto minmax(0, 1fr);
  pointer-events: none;
  cursor: default;
  padding-bottom: 0.35rem;
}

.land-faq-block.is-model-open .land-faq__item {
  padding-block: 1.05rem;
}

.land-faq-block.is-model-open .land-faq__answer {
  padding-bottom: 0.2rem;
}

.land-faq-block.is-model-accordion .land-faq__item[open] .land-faq__question {
  color: var(--land-accent);
}

.land-block.is-model-stages .land-steps {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 10.5rem), 1fr));
  gap: 1.35rem 1rem;
}

.land-block.is-model-stages .land-steps li {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.35rem;
  padding: 0;
  border: 0;
  text-align: center;
}

.land-block.is-model-stages .land-steps li::before {
  grid-row: auto;
  font-size: 0.78rem;
  letter-spacing: 0.04em;
}

/* --------------------------------------------------------------------------
   Stats — pulse / rail / cards / ledger / banner / orbit
   -------------------------------------------------------------------------- */

/* Pulse — oversized centered figures */
.land-stats-block.is-model-pulse .land-stats,
.land-stats.is-stats-pulse {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 8.5rem), 1fr));
  gap: 1.25rem 1rem;
  justify-items: center;
  text-align: center;
}

.land-stats-block.is-model-pulse .land-stat {
  justify-items: center;
  gap: 0.55rem;
  padding: 0.35rem 0.5rem;
}

.land-stats-block.is-model-pulse .land-stat__value,
.land-stats-block.is-model-pulse .land-stat dt {
  --land-fs-base: clamp(2.4rem, 5vw, 3.8rem);
}

/* Rail — divided horizontal band */
.land-stats-block.is-model-rail .land-stats,
.land-stats.is-stats-rail {
  grid-template-columns: repeat(var(--stat-cols, 4), minmax(0, 1fr));
  gap: 0;
}

.land-stats-block.is-model-rail .land-stat {
  gap: 0.5rem;
  padding: 0.35rem 1.15rem;
  border-inline-start: 1px solid color-mix(in srgb, currentColor 18%, transparent);
}

.land-stats-block.is-model-rail .land-stat:first-child {
  padding-inline-start: 0;
  border-inline-start: 0;
}

.land-stats-block.is-model-rail .land-stat__value,
.land-stats-block.is-model-rail .land-stat dt {
  --land-fs-base: clamp(1.9rem, 3.2vw, 2.9rem);
}

/* Cards — each number in a surface tile */
.land-stats-block.is-model-cards .land-stats,
.land-stats.is-stats-cards {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 10.5rem), 1fr));
  gap: 0.9rem;
}

.land-stats-block.is-model-cards .land-stat {
  gap: 0.65rem;
  padding: 1.25rem 1.15rem 1.3rem;
  background: var(--land-surface);
  border: 1px solid color-mix(in srgb, var(--land-text) 12%, transparent);
}

.land-stats-block.is-model-cards .land-stat__value,
.land-stats-block.is-model-cards .land-stat dt {
  --land-fs-base: clamp(2rem, 3.5vw, 2.8rem);
}

/* Ledger — stacked number + label rows */
.land-stats-block.is-model-ledger .land-stats,
.land-stats.is-stats-ledger {
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  max-width: 36rem;
}

.land-stats-block.is-model-ledger .land-stat {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: baseline;
  column-gap: 1.15rem;
  padding: 0.95rem 0;
  border-bottom: 1px solid color-mix(in srgb, currentColor 14%, transparent);
}

.land-stats-block.is-model-ledger .land-stat:first-child {
  border-top: 1px solid color-mix(in srgb, currentColor 14%, transparent);
}

.land-stats-block.is-model-ledger .land-stat__value,
.land-stats-block.is-model-ledger .land-stat dt {
  --land-fs-base: clamp(1.7rem, 3vw, 2.3rem);
  min-width: 3.5rem;
}

/* Banner — full-width accent strip of numbers */
.land-stats-block.is-model-banner .land-stats,
.land-stats.is-stats-banner {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 9rem), 1fr));
  gap: 0.85rem;
  padding: clamp(1.2rem, 3vw, 1.8rem);
  background: color-mix(in srgb, var(--land-text) 92%, var(--land-bg));
  color: var(--land-bg);
}

.land-stats-block.is-model-banner .land-stat {
  gap: 0.45rem;
  padding: 0.35rem 0.5rem;
}

.land-stats-block.is-model-banner .land-stat__value,
.land-stats-block.is-model-banner .land-stat dt {
  color: inherit;
  --land-fs-base: clamp(2rem, 4vw, 3rem);
}

.land-stats-block.is-model-banner .land-stat__label,
.land-stats-block.is-model-banner .land-stat dd {
  color: color-mix(in srgb, var(--land-bg) 78%, transparent);
}

.land-stats-block.is-bg-accent.is-model-banner .land-stats {
  background: color-mix(in srgb, var(--land-accent-text) 12%, transparent);
  color: inherit;
}

.land-stats-block.is-bg-accent.is-model-banner .land-stat__label,
.land-stats-block.is-bg-accent.is-model-banner .land-stat dd {
  color: inherit;
  opacity: 0.8;
}

/* Orbit — one featured figure + companions */
.land-stats-block.is-model-orbit .land-stats,
.land-stats.is-stats-orbit {
  grid-template-columns: minmax(0, 1.2fr) repeat(auto-fit, minmax(min(100%, 7.5rem), 0.7fr));
  gap: 1rem;
  align-items: stretch;
}

.land-stats-block.is-model-orbit .land-stat.is-featured {
  grid-row: span 2;
  align-content: center;
  justify-items: start;
  gap: 0.75rem;
  padding: clamp(1.4rem, 3vw, 2rem);
  background: var(--land-surface);
  border: 1px solid color-mix(in srgb, var(--land-text) 12%, transparent);
}

.land-stats-block.is-model-orbit .land-stat.is-featured .land-stat__value,
.land-stats-block.is-model-orbit .land-stat.is-featured dt {
  --land-fs-base: clamp(3rem, 7vw, 5rem);
}

.land-stats-block.is-model-orbit .land-stat:not(.is-featured) {
  gap: 0.4rem;
  padding: 1rem 1.05rem;
  background: color-mix(in srgb, var(--land-text) 4%, var(--land-bg));
  border: 1px solid color-mix(in srgb, var(--land-text) 10%, transparent);
}

.land-stats-block.is-model-orbit .land-stat:not(.is-featured) .land-stat__value,
.land-stats-block.is-model-orbit .land-stat:not(.is-featured) dt {
  --land-fs-base: clamp(1.6rem, 2.8vw, 2.2rem);
}

.land-stats-block.is-model-orbit .land-stats[data-stat-count="1"],
.land-stats-block.is-model-orbit .land-stats[data-stat-count="2"] {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 10rem), 1fr));
}

.land-stats-block.is-model-orbit .land-stats[data-stat-count="1"] .land-stat.is-featured,
.land-stats-block.is-model-orbit .land-stats[data-stat-count="2"] .land-stat.is-featured {
  grid-row: auto;
}

@media (max-width: 900px) {
  .land-stats-block.is-model-rail .land-stats,
  .land-stats.is-stats-rail {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
  }

  .land-stats-block.is-model-rail .land-stat {
    padding: 0.85rem 0.9rem;
  }

  .land-stats-block.is-model-rail .land-stat:nth-child(odd) {
    padding-inline-start: 0;
    border-inline-start: 0;
  }

  .land-stats-block.is-model-rail .land-stat:nth-child(n + 3) {
    border-top: 1px solid color-mix(in srgb, currentColor 18%, transparent);
  }

  .land-stats-block.is-model-orbit .land-stats,
  .land-stats.is-stats-orbit {
    grid-template-columns: 1fr 1fr;
  }

  .land-stats-block.is-model-orbit .land-stat.is-featured {
    grid-column: 1 / -1;
    grid-row: auto;
  }

  .land-stats-block.is-model-ledger .land-stats,
  .land-stats.is-stats-ledger {
    max-width: none;
  }
}

@media (max-width: 560px) {
  .land-stats-block.is-model-pulse .land-stats,
  .land-stats.is-stats-pulse,
  .land-stats-block.is-model-cards .land-stats,
  .land-stats.is-stats-cards,
  .land-stats-block.is-model-banner .land-stats,
  .land-stats.is-stats-banner {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .land-stats-block.is-model-rail .land-stats,
  .land-stats.is-stats-rail,
  .land-stats-block.is-model-orbit .land-stats,
  .land-stats.is-stats-orbit {
    grid-template-columns: 1fr;
  }

  .land-stats-block.is-model-rail .land-stat {
    padding-inline: 0;
    border-inline-start: 0;
    border-top: 1px solid color-mix(in srgb, currentColor 18%, transparent);
  }

  .land-stats-block.is-model-rail .land-stat:first-child {
    border-top: 0;
    padding-top: 0;
  }

  .land-stats-block.is-model-ledger .land-stat {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 0.25rem;
  }
}

/* --------------------------------------------------------------------------
   Pricing models — deck / ladder / pass / spotlight / slab / pillar
   -------------------------------------------------------------------------- */

/* Deck — equal cards; featured plan picks up the accent */
.land-prices-block.is-model-deck .land-prices,
.land-prices-block.is-cols-2.is-model-deck .land-prices,
.land-prices-block.is-cols-3.is-model-deck .land-prices,
.land-prices-block.is-cols-4.is-model-deck .land-prices,
.land-block.is-cols-2.is-model-deck .land-prices,
.land-block.is-cols-3.is-model-deck .land-prices,
.land-block.is-cols-4.is-model-deck .land-prices {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 15.5rem), 1fr));
  align-items: stretch;
}

.land-prices-block.is-model-deck .land-price.is-featured {
  background: var(--land-accent);
  color: var(--land-accent-text);
  border-color: var(--land-accent);
  transform: translateY(-0.35rem);
}

.land-prices-block.is-model-deck .land-price.is-featured .land-price__value,
.land-prices-block.is-model-deck .land-price.is-featured .land-item-title,
.land-prices-block.is-model-deck .land-price.is-featured .land-item-text {
  color: inherit;
}

.land-prices-block.is-model-deck .land-price.is-featured .land-btn:not([data-button-colors]) {
  background: var(--land-accent-text);
  color: var(--land-accent);
  border-color: var(--land-accent-text);
}

/* Ladder — stacked comparison rows */
.land-prices-block.is-model-ladder .land-prices,
.land-prices-block.is-cols-2.is-model-ladder .land-prices,
.land-prices-block.is-cols-3.is-model-ladder .land-prices,
.land-prices-block.is-cols-4.is-model-ladder .land-prices {
  grid-template-columns: minmax(0, 1fr);
  gap: 0.75rem;
  max-width: 52rem;
}

.land-prices-block.is-model-ladder .land-price {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas:
    "main value"
    "main action";
  column-gap: 1.25rem;
  row-gap: 0.65rem;
  align-items: center;
  padding: 1.15rem 1.25rem;
}

.land-prices-block.is-model-ladder .land-price__main { grid-area: main; }
.land-prices-block.is-model-ladder .land-price__value {
  grid-area: value;
  justify-self: start;
  text-align: start;
  --land-fs-base: clamp(1.25rem, 2.4vw, 1.65rem);
}
.land-prices-block.is-model-ladder .land-action {
  grid-area: action;
  margin-top: 0;
  padding-top: 0;
  justify-self: start;
}

/* Pass — compact ticket / event pass */
.land-prices-block.is-model-pass .land-prices,
.land-prices-block.is-cols-2.is-model-pass .land-prices,
.land-prices-block.is-cols-3.is-model-pass .land-prices,
.land-prices-block.is-cols-4.is-model-pass .land-prices {
  grid-template-columns: minmax(0, 1fr);
  max-width: 36rem;
  margin-inline: auto;
  gap: 0.85rem;
}

.land-prices-block.is-model-pass .land-price {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
  padding: 1.5rem 1.4rem 1.35rem;
  border-style: dashed;
}

.land-prices-block.is-model-pass .land-price__value {
  --land-fs-base: clamp(1.6rem, 4vw, 2.2rem);
}

.land-prices-block.is-model-pass .land-price.has-action {
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas:
    "main main"
    "value action";
  align-items: end;
  column-gap: 1rem;
}

.land-prices-block.is-model-pass .land-price.has-action .land-price__main { grid-area: main; }
.land-prices-block.is-model-pass .land-price.has-action .land-price__value { grid-area: value; }
.land-prices-block.is-model-pass .land-price.has-action .land-action {
  grid-area: action;
  margin-top: 0;
  padding-top: 0;
}

/* Spotlight — one featured plan + companions */
.land-prices-block.is-model-spotlight .land-prices,
.land-prices-block.is-cols-2.is-model-spotlight .land-prices,
.land-prices-block.is-cols-3.is-model-spotlight .land-prices,
.land-prices-block.is-cols-4.is-model-spotlight .land-prices {
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
  gap: 1rem;
}

.land-prices-block.is-model-spotlight .land-price.is-featured {
  grid-row: span 2;
  min-height: 100%;
  padding: clamp(1.6rem, 3vw, 2.2rem);
  background: color-mix(in srgb, var(--land-text) 92%, var(--land-bg));
  color: var(--land-bg);
  border-color: transparent;
}

.land-prices-block.is-model-spotlight .land-price.is-featured .land-price__value {
  --land-fs-base: clamp(2rem, 4.5vw, 3rem);
  color: inherit;
}

.land-prices-block.is-model-spotlight .land-price.is-featured .land-item-title,
.land-prices-block.is-model-spotlight .land-price.is-featured .land-item-text {
  color: inherit;
}

.land-prices-block.is-model-spotlight .land-price.is-featured .land-btn:not([data-button-colors]) {
  background: var(--land-accent);
  color: var(--land-accent-text);
  border-color: var(--land-accent);
}

.land-prices-block.is-model-spotlight .land-prices[data-price-count="1"],
.land-prices-block.is-model-spotlight .land-prices[data-price-count="2"] {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
}

.land-prices-block.is-model-spotlight .land-prices[data-price-count="1"] .land-price.is-featured,
.land-prices-block.is-model-spotlight .land-prices[data-price-count="2"] .land-price.is-featured {
  grid-row: auto;
}

/* Slab — full-width horizontal bars */
.land-prices-block.is-model-slab .land-prices,
.land-prices-block.is-cols-2.is-model-slab .land-prices,
.land-prices-block.is-cols-3.is-model-slab .land-prices,
.land-prices-block.is-cols-4.is-model-slab .land-prices {
  grid-template-columns: minmax(0, 1fr);
  gap: 0.65rem;
}

.land-prices-block.is-model-slab .land-price {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) auto auto;
  align-items: center;
  gap: 0.85rem 1.25rem;
  padding: 1rem 1.2rem;
}

.land-prices-block.is-model-slab .land-price__main {
  flex: none;
}

.land-prices-block.is-model-slab .land-price__main .land-item-text {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.land-prices-block.is-model-slab .land-price__value {
  white-space: nowrap;
  --land-fs-base: clamp(1.2rem, 2.2vw, 1.55rem);
}

.land-prices-block.is-model-slab .land-action {
  margin-top: 0;
  padding-top: 0;
}

/* Pillar — tall cards with oversized price */
.land-prices-block.is-model-pillar .land-prices,
.land-prices-block.is-cols-2.is-model-pillar .land-prices,
.land-prices-block.is-cols-3.is-model-pillar .land-prices,
.land-prices-block.is-cols-4.is-model-pillar .land-prices {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
  gap: 1rem;
  align-items: stretch;
}

.land-prices-block.is-model-pillar .land-price {
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: 1rem;
  padding: 1.6rem 1.2rem 1.35rem;
  text-align: center;
  justify-items: center;
}

.land-prices-block.is-model-pillar .land-price__value {
  order: -1;
  --land-fs-base: clamp(2rem, 5vw, 3.1rem);
  letter-spacing: -0.02em;
}

.land-prices-block.is-model-pillar .land-price__main {
  justify-items: center;
}

.land-prices-block.is-model-pillar .land-price__main .land-item-text {
  max-width: 18rem;
}

.land-prices-block.is-model-pillar .land-action {
  margin-top: 0;
  width: 100%;
  justify-content: center;
}

.land-prices-block.is-model-pillar .land-price.is-featured {
  border-color: var(--land-accent);
  box-shadow: inset 0 0 0 1px var(--land-accent);
}

.land-prices-block.is-model-pillar .land-price.is-featured .land-price__value {
  color: var(--land-accent);
}

.land-cta.is-model-invite,
.land-cta.is-model-invite.is-accent {
  min-height: 0;
  padding: clamp(2.6rem, 6vw, 3.8rem) 0;
  background: var(--land-accent);
  color: var(--land-accent-text);
}

.land-cta.is-model-invite:not([class*="is-text-"]),
.land-cta.is-model-invite.is-accent:not([class*="is-text-"]) {
  text-align: center;
}

.land-cta.is-model-invite .land-wrap,
.land-cta.is-model-close .land-wrap,
.land-cta.is-model-note .land-wrap {
  display: grid;
  justify-items: stretch;
}

.land-cta.is-model-invite:not([class*="is-text-"]) .land-wrap,
.land-cta.is-model-close:not([class*="is-text-"]) .land-wrap,
.land-cta.is-model-note:not([class*="is-text-"]) .land-wrap {
  justify-items: center;
}

.land-cta.is-model-invite:not([class*="is-text-"]) .land-wrap > :not(.land-actions),
.land-cta.is-model-close:not([class*="is-text-"]) .land-wrap > :not(.land-actions),
.land-cta.is-model-note:not([class*="is-text-"]) .land-wrap > :not(.land-actions) {
  text-align: center;
  justify-self: center;
}

.land-cta.is-model-invite:not([class*="is-text-"]) .land-actions,
.land-cta.is-model-close:not([class*="is-text-"]) .land-actions,
.land-cta.is-model-note:not([class*="is-text-"]) .land-actions {
  justify-content: center;
}

.land-cta.is-model-invite .land-btn:not([data-button-colors]) {
  background: var(--land-accent-text);
  color: var(--land-accent);
  border-color: var(--land-accent-text);
}

.land-cta.is-model-close {
  min-height: 0;
  padding: clamp(4rem, 8vw, 6rem) 0;
  background: transparent;
  color: inherit;
}

.land-cta.is-model-close:not([class*="is-text-"]) {
  text-align: center;
}

.land-cta.is-model-close .land-title {
  --land-fs-base: clamp(2rem, 4vw, 3.15rem);
}

.land-cta.is-model-note {
  min-height: 0;
  padding: 2.2rem 0;
  background: color-mix(in srgb, var(--land-accent) 8%, var(--land-bg));
  color: inherit;
  text-align: center;
}

.land-form.is-model-card .land-form__grid {
  grid-template-columns: minmax(0, 34rem);
  justify-content: center;
}

.land-form.is-model-card .land-form__grid > :first-child {
  text-align: center;
}

/* --------------------------------------------------------------------------
   Slider models — cinema / duo / lane / column / frame / band
   Contained to .land-wrap (bleed models keep media edge-to-edge; copy/chrome use wrap)
   -------------------------------------------------------------------------- */

/* Cinema — full-bleed fade, caption docked in the page column */
.land-slider-block.is-model-cinema {
  padding-inline: 0;
}

.land-slider-block.is-model-cinema .land-slider__slide {
  min-height: min(40rem, 86vh);
  align-items: end;
}

.land-slider-block.is-model-cinema .land-slider__slide::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(180deg, transparent 35%, color-mix(in srgb, var(--land-text) 62%, transparent) 100%);
  pointer-events: none;
}

.land-slider-block.is-model-cinema .land-slider__dock {
  margin-block: 0 5rem;
  z-index: 1;
}

.land-slider-block.is-model-cinema .land-slider__copy {
  width: min(38rem, 100%);
  margin: 0;
  padding: 0;
  background: transparent;
  color: #fff7f0;
  gap: 0.75rem;
}

.land-slider-block.is-model-cinema .land-slider__mark {
  color: color-mix(in srgb, #fff7f0 70%, transparent);
}

.land-slider-block.is-model-cinema .land-slider__copy .land-item-title {
  --land-fs-base: clamp(2rem, 5vw, 3.6rem);
}

.land-slider-block.is-model-cinema .land-slider__copy .land-btn:not([data-button-colors]) {
  background: #fff7f0;
  color: var(--land-text);
  border-color: #fff7f0;
}

.land-slider-block.is-model-cinema .land-slider__nav,
.land-slider-block.is-model-cinema .land-slider__meta {
  background: color-mix(in srgb, #14110f 55%, transparent);
  color: #fff7f0;
  border-color: color-mix(in srgb, #fff7f0 22%, transparent);
  backdrop-filter: blur(8px);
}

.land-slider-block.is-model-cinema .land-slider__dots button.is-active {
  background: #fff7f0;
}

/* Duo — photograph beside a solid copy panel (inside land-wrap) */
.land-slider-block.is-model-duo .land-slider__slide {
  min-height: min(34rem, 74vh);
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.9fr);
  align-items: stretch;
}

.land-slider-block.is-model-duo .land-slider__media {
  position: relative;
  inset: auto;
  min-height: min(18rem, 46vh);
  min-width: 0;
}

.land-slider-block.is-model-duo .land-slider__copy {
  width: 100%;
  max-width: none;
  height: 100%;
  margin: 0;
  padding: clamp(1.5rem, 3.5vw, 2.6rem);
  background: var(--land-surface);
  justify-content: center;
  gap: 0.85rem;
}

.land-slider-block.is-model-duo .land-slider__bar {
  justify-content: flex-start;
}

html[dir="rtl"] .land-slider-block.is-model-duo .land-slider__slide,
.land[dir="rtl"] .land-slider-block.is-model-duo .land-slider__slide {
  direction: rtl;
}

html[dir="rtl"] .land-slider-block.is-model-duo .land-slider__media,
.land[dir="rtl"] .land-slider-block.is-model-duo .land-slider__media,
html[dir="rtl"] .land-slider-block.is-model-duo .land-slider__copy,
.land[dir="rtl"] .land-slider-block.is-model-duo .land-slider__copy {
  direction: inherit;
}

/* Lane — landscape peek carousel (scroll contained in wrap) */
.land-slider-block.is-model-lane .land-slider__viewport,
.land-slider-block.is-model-column .land-slider__viewport {
  container-type: inline-size;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

.land-slider-block.is-model-lane .land-slider__viewport::-webkit-scrollbar,
.land-slider-block.is-model-column .land-slider__viewport::-webkit-scrollbar {
  display: none;
}

.land-slider-block.is-model-lane .land-slider__track,
.land-slider-block.is-model-column .land-slider__track {
  display: flex;
  gap: var(--land-slider-gap, 1rem);
  padding-block: 0.15rem 0.35rem;
  width: max-content;
  max-width: none;
}

.land-slider-block.is-model-lane .land-slider__slide,
.land-slider-block.is-model-lane .land-slider__slide.is-active,
.land-slider-block.is-model-column .land-slider__slide,
.land-slider-block.is-model-column .land-slider__slide.is-active {
  display: grid;
  grid-area: auto;
  grid-template-rows: auto 1fr;
  width: auto;
  max-width: none;
  min-height: 0;
  opacity: 1;
  visibility: visible;
  align-content: start;
  scroll-snap-align: start;
  overflow: hidden;
  background: var(--land-surface);
  border: 1px solid color-mix(in srgb, var(--land-text) 12%, transparent);
  transition: border-color 0.2s ease;
}

.land-slider-block.is-model-lane .land-slider__slide,
.land-slider-block.is-model-lane .land-slider__slide.is-active {
  flex: 0 0 min(26rem, 85cqi);
  width: min(26rem, 85cqi);
  max-width: min(26rem, 85cqi);
}

.land-slider-block.is-model-lane .land-slider__slide.is-active {
  border-color: color-mix(in srgb, var(--land-accent) 55%, var(--land-text) 20%);
}

.land-slider-block.is-model-lane .land-slider__media,
.land-slider-block.is-model-column .land-slider__media {
  position: relative;
  inset: auto;
}

.land-slider-block.is-model-lane .land-slider__media {
  aspect-ratio: 16 / 10;
}

.land-slider-block.is-model-lane .land-slider__copy,
.land-slider-block.is-model-column .land-slider__copy {
  width: 100%;
  margin: 0;
  padding: 1.05rem 1.15rem 1.2rem;
  background: transparent;
  gap: 0.55rem;
}

.land-slider-block.is-model-lane .land-slider__copy .land-item-title,
.land-slider-block.is-model-column .land-slider__copy .land-item-title {
  --land-fs-base: clamp(1.15rem, 2vw, 1.45rem);
}

.land-slider-block.is-model-lane .land-slider__bar,
.land-slider-block.is-model-column .land-slider__bar {
  justify-content: flex-start;
}

/* Column — tall portrait cards */
.land-slider-block.is-model-column .land-slider__slide,
.land-slider-block.is-model-column .land-slider__slide.is-active {
  flex: 0 0 min(17.5rem, 72cqi);
  width: min(17.5rem, 72cqi);
  max-width: min(17.5rem, 72cqi);
  scroll-snap-align: start;
}

.land-slider-block.is-model-column .land-slider__media {
  aspect-ratio: 3 / 4;
}

.land-slider-block.is-model-column .land-slider__slide.is-active {
  border-color: color-mix(in srgb, var(--land-accent) 55%, var(--land-text) 20%);
}

/* Frame — centred type over a vignette photograph */
.land-slider-block.is-model-frame {
  padding-inline: 0;
}

.land-slider-block.is-model-frame .land-slider__slide {
  min-height: min(38rem, 84vh);
  align-items: center;
  justify-items: center;
  text-align: center;
}

.land-slider-block.is-model-frame .land-slider__slide::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    radial-gradient(ellipse at center, color-mix(in srgb, var(--land-text) 12%, transparent) 0%, color-mix(in srgb, var(--land-text) 58%, transparent) 100%);
  pointer-events: none;
}

.land-slider-block.is-model-frame .land-slider__dock {
  align-self: center;
  display: flex;
  justify-content: center;
  z-index: 1;
}

.land-slider-block.is-model-frame .land-slider__copy {
  width: min(42rem, 100%);
  margin: 0;
  padding: 1.4rem 0;
  background: transparent;
  color: #fff7f0;
  align-items: center;
  text-align: center;
  gap: 0.85rem;
}

.land-slider-block.is-model-frame .land-slider__mark {
  color: color-mix(in srgb, #fff7f0 72%, transparent);
}

.land-slider-block.is-model-frame .land-slider__copy .land-item-title {
  --land-fs-base: clamp(2rem, 5.5vw, 3.8rem);
}

.land-slider-block.is-model-frame .land-action {
  justify-content: center;
}

.land-slider-block.is-model-frame .land-slider__copy .land-btn:not([data-button-colors]) {
  background: #fff7f0;
  color: var(--land-text);
  border-color: #fff7f0;
}

.land-slider-block.is-model-frame .land-slider__bar {
  justify-content: center;
}

.land-slider-block.is-model-frame .land-slider__nav,
.land-slider-block.is-model-frame .land-slider__meta {
  background: color-mix(in srgb, #14110f 55%, transparent);
  color: #fff7f0;
  border-color: color-mix(in srgb, #fff7f0 22%, transparent);
  backdrop-filter: blur(8px);
}

/* Band — photograph on top, content strip underneath (inside land-wrap) */
.land-slider-block.is-model-band .land-slider__slide {
  min-height: 0;
  align-items: stretch;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: minmax(15rem, 48vh) auto;
}

.land-slider-block.is-model-band .land-slider__media {
  position: relative;
  inset: auto;
  min-height: min(15rem, 40vh);
  min-width: 0;
}

.land-slider-block.is-model-band .land-slider__copy {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 1.45rem 1.25rem 1.5rem;
  background: var(--land-surface);
  gap: 0.75rem;
}

.land-slider-block.is-model-band .land-slider__bar {
  justify-content: flex-start;
}

/* Section align — keep slider shells intact; only shift copy inside the page column */
.land-slider-block.is-text-left .land-slider__dock .land-slider__copy,
.land-slider-block.is-text-left .land-slider__copy {
  margin-left: 0;
  margin-right: auto;
}

.land-slider-block.is-text-center .land-slider__dock .land-slider__copy,
.land-slider-block.is-text-center .land-slider__copy {
  margin-left: auto;
  margin-right: auto;
}

.land-slider-block.is-text-right .land-slider__dock .land-slider__copy,
.land-slider-block.is-text-right .land-slider__copy {
  margin-left: auto;
  margin-right: 0;
}

.land-slider-block.is-model-frame[class*="is-text-"] .land-slider__copy,
.land-slider-block.is-model-duo[class*="is-text-"] .land-slider__copy,
.land-slider-block.is-model-band[class*="is-text-"] .land-slider__copy,
.land-slider-block.is-model-lane[class*="is-text-"] .land-slider__copy,
.land-slider-block.is-model-column[class*="is-text-"] .land-slider__copy {
  margin-left: 0;
  margin-right: 0;
  width: 100%;
}

.land-slider-block.is-model-frame.is-text-left .land-slider__dock,
.land-slider-block.is-model-frame.is-text-right .land-slider__dock {
  justify-content: var(--land-section-justify, center);
}

.land-slider-block.is-model-frame.is-text-left .land-slider__copy {
  align-items: left;
  text-align: left;
  margin-left: 0;
  margin-right: auto;
  width: min(42rem, 100%);
}

.land-slider-block.is-model-frame.is-text-right .land-slider__copy {
  align-items: right;
  text-align: right;
  margin-left: auto;
  margin-right: 0;
  width: min(42rem, 100%);
}

.land-slider-block.is-model-duo[class*="is-text-"] .land-slider__slide,
.land-slider-block.is-model-band[class*="is-text-"] .land-slider__slide,
.land-slider-block.is-model-lane[class*="is-text-"] .land-slider__track,
.land-slider-block.is-model-column[class*="is-text-"] .land-slider__track {
  justify-content: unset;
}

.land-block.is-model-strip .land-gallery {
  display: flex;
  flex-wrap: nowrap;
  gap: 0.85rem;
  overflow-x: auto;
  padding-block: 0.15rem 0.35rem;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}

.land-block.is-model-strip .land-gallery figure {
  flex: 0 0 min(16rem, 72vw);
  scroll-snap-align: start;
}

.land-block.is-model-strip .land-gallery__media img {
  aspect-ratio: 4 / 5;
  object-fit: cover;
}

.land-block.is-model-strip .land-gallery__caption {
  padding-top: 0.55rem;
}

.land-block.is-model-names .land-team img,
.land-block.is-model-names .land-logos img {
  display: none;
}

/* CTA boxes · Tiles */
.land-ctas-block.is-model-tiles .land-cta-box {
  background: color-mix(in srgb, var(--land-accent) 92%, #000);
  color: var(--land-accent-text);
  border: 0;
}

.land-ctas-block.is-model-tiles .land-action .land-btn:not([data-button-colors]) {
  background: transparent;
  color: var(--land-accent-text);
  border-color: color-mix(in srgb, var(--land-accent-text) 55%, transparent);
}

/* CTA boxes · Ribbon */
.land-ctas-block.is-model-ribbon .land-ctas,
.land-ctas-block.is-cols-2.is-model-ribbon .land-ctas,
.land-ctas-block.is-cols-3.is-model-ribbon .land-ctas,
.land-ctas-block.is-cols-4.is-model-ribbon .land-ctas,
.land-ctas.is-ctas-ribbon {
  grid-template-columns: 1fr;
  gap: 0.7rem;
}

.land-ctas-block.is-model-ribbon .land-cta-box {
  flex-direction: row;
  align-items: center;
  gap: 1.25rem 1.75rem;
  min-height: 0;
  padding: 1.1rem 1.25rem;
  border-inline-start: 3px solid var(--land-accent);
}

.land-ctas-block.is-model-ribbon .land-cta-box__copy {
  flex: 1 1 auto;
}

.land-ctas-block.is-model-ribbon .land-action {
  flex: 0 0 auto;
  margin-top: 0;
  padding-top: 0;
}

/* CTA boxes · Pillars */
.land-ctas-block.is-model-pillars .land-cta-box {
  min-height: 16rem;
  padding: 1.4rem 1.25rem 1.35rem;
  background: var(--land-bg);
  border: 0;
  border-top: 3px solid var(--land-accent);
}

.land-ctas-block.is-model-pillars .land-cta-box__title {
  --land-fs-base: 1.25rem;
}

/* CTA boxes · Stack */
.land-ctas-block.is-model-stack .land-ctas,
.land-ctas-block.is-cols-2.is-model-stack .land-ctas,
.land-ctas-block.is-cols-3.is-model-stack .land-ctas,
.land-ctas-block.is-cols-4.is-model-stack .land-ctas,
.land-ctas.is-ctas-stack {
  grid-template-columns: 1fr;
  max-width: 40rem;
  gap: 0.85rem;
}

.land-ctas-block.is-model-stack .land-cta-box {
  min-height: 0;
  padding: 1.15rem 1.2rem;
}

/* CTA boxes · Mosaic */
.land-ctas-block.is-model-mosaic .land-ctas,
.land-ctas-block.is-cols-2.is-model-mosaic .land-ctas,
.land-ctas-block.is-cols-3.is-model-mosaic .land-ctas,
.land-ctas-block.is-cols-4.is-model-mosaic .land-ctas,
.land-ctas.is-ctas-mosaic {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.9rem;
}

.land-ctas-block.is-model-mosaic .land-cta-box.is-wide {
  grid-column: 1 / -1;
  flex-direction: row;
  align-items: end;
  gap: 1.25rem 1.75rem;
  min-height: 10rem;
  background: var(--land-accent);
  color: var(--land-accent-text);
  border: 0;
}

.land-ctas-block.is-model-mosaic .land-cta-box.is-wide .land-cta-box__copy {
  flex: 1 1 auto;
}

.land-ctas-block.is-model-mosaic .land-cta-box.is-wide .land-action {
  flex: 0 0 auto;
  margin-top: 0;
  padding-top: 0;
}

.land-ctas-block.is-model-mosaic .land-cta-box.is-wide .land-action .land-btn:not([data-button-colors]) {
  background: #fff;
  color: var(--land-text);
  border-color: #fff;
}

/* --------------------------------------------------------------------------
   Products — catalog / sheet / booth / feature / aisle / tile
   -------------------------------------------------------------------------- */

/* Catalog — responsive product cards */
.land-products-block.is-model-catalog .land-products,
.land-products-block.is-cols-2.is-model-catalog .land-products,
.land-products-block.is-cols-3.is-model-catalog .land-products,
.land-products-block.is-cols-4.is-model-catalog .land-products,
.land-block.is-cols-2.is-model-catalog .land-products,
.land-block.is-cols-3.is-model-catalog .land-products,
.land-block.is-cols-4.is-model-catalog .land-products,
.land-products.is-products-catalog {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 15.5rem), 1fr));
  gap: 1.5rem 1.2rem;
}

.land-products-block.is-model-catalog .land-product {
  background: var(--land-surface);
  border: 1px solid color-mix(in srgb, var(--land-text) 10%, transparent);
  overflow: hidden;
}

.land-products-block.is-model-catalog .land-product__body {
  padding: 1rem 1.05rem 1.15rem;
}

.land-products-block.is-model-catalog .land-product__media img {
  aspect-ratio: 4 / 3;
}

.land-products-block.is-model-catalog .land-product__meta {
  padding-top: 0.15rem;
  border-top: 1px solid color-mix(in srgb, var(--land-text) 10%, transparent);
}

/* Sheet — menu / price-list rows */
.land-products-block.is-model-sheet .land-products,
.land-products-block.is-cols-2.is-model-sheet .land-products,
.land-products-block.is-cols-3.is-model-sheet .land-products,
.land-products-block.is-cols-4.is-model-sheet .land-products,
.land-products.is-products-sheet {
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  max-width: 44rem;
}

.land-products-block.is-model-sheet .land-product {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.9rem 1.1rem;
  align-items: center;
  height: auto;
  padding: 1.05rem 0;
  border-bottom: 1px solid color-mix(in srgb, var(--land-text) 12%, transparent);
}

.land-products-block.is-model-sheet .land-product:first-child {
  border-top: 1px solid color-mix(in srgb, var(--land-text) 12%, transparent);
}

.land-products-block.is-model-sheet .land-product.no-media {
  grid-template-columns: minmax(0, 1fr);
}

.land-products-block.is-model-sheet .land-product__media {
  width: 4.75rem;
}

.land-products-block.is-model-sheet .land-product__media img {
  aspect-ratio: 1;
}

.land-products-block.is-model-sheet .land-product__body {
  padding-top: 0;
  gap: 0.55rem;
}

.land-products-block.is-model-sheet .land-product__meta {
  justify-content: space-between;
}

.land-products-block.is-model-sheet .land-product__price {
  --land-fs-base: 1.05rem;
}

/* Booth — photograph beside product copy */
.land-products-block.is-model-booth .land-products,
.land-products-block.is-cols-2.is-model-booth .land-products,
.land-products-block.is-cols-3.is-model-booth .land-products,
.land-products-block.is-cols-4.is-model-booth .land-products,
.land-products.is-products-booth {
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
}

.land-products-block.is-model-booth .land-product {
  display: grid;
  grid-template-columns: minmax(8rem, 13rem) minmax(0, 1fr);
  gap: 1rem 1.25rem;
  align-items: stretch;
  height: auto;
  padding: 0;
  overflow: hidden;
  background: var(--land-surface);
  border: 1px solid color-mix(in srgb, var(--land-text) 10%, transparent);
}

.land-products-block.is-model-booth .land-product.no-media {
  grid-template-columns: minmax(0, 1fr);
}

.land-products-block.is-model-booth .land-product__media img {
  aspect-ratio: 1;
  min-height: 100%;
}

.land-products-block.is-model-booth .land-product__body {
  padding: 1.15rem 1.2rem 1.2rem 0;
  gap: 0.85rem;
}

html[dir="rtl"] .land-products-block.is-model-booth .land-product__body,
.land[dir="rtl"] .land-products-block.is-model-booth .land-product__body {
  padding: 1.15rem 0 1.2rem 1.2rem;
}

/* Feature — first product large, companions compact */
.land-products-block.is-model-feature .land-products,
.land-products-block.is-cols-2.is-model-feature .land-products,
.land-products-block.is-cols-3.is-model-feature .land-products,
.land-products-block.is-cols-4.is-model-feature .land-products,
.land-products.is-products-feature {
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: 1rem;
}

.land-products-block.is-model-feature .land-product.is-featured {
  grid-row: span 8;
  background: var(--land-surface);
  border: 1px solid color-mix(in srgb, var(--land-text) 10%, transparent);
  overflow: hidden;
}

.land-products-block.is-model-feature .land-product.is-featured .land-product__media img {
  aspect-ratio: 4 / 5;
}

.land-products-block.is-model-feature .land-product.is-featured .land-product__body {
  padding: 1.2rem 1.25rem 1.35rem;
}

.land-products-block.is-model-feature .land-product.is-featured .land-product__title {
  --land-fs-base: clamp(1.25rem, 2.4vw, 1.7rem);
}

.land-products-block.is-model-feature .land-product.is-featured .land-product__price {
  --land-fs-base: clamp(1.15rem, 2vw, 1.45rem);
}

.land-products-block.is-model-feature .land-product:not(.is-featured) {
  display: grid;
  grid-template-columns: 5.75rem minmax(0, 1fr);
  gap: 0.8rem 0.9rem;
  align-items: center;
  height: auto;
  padding: 0.85rem 0;
  border-bottom: 1px solid color-mix(in srgb, var(--land-text) 10%, transparent);
}

.land-products-block.is-model-feature .land-product:not(.is-featured).no-media {
  grid-template-columns: minmax(0, 1fr);
}

.land-products-block.is-model-feature .land-product:not(.is-featured) .land-product__body {
  padding-top: 0;
  gap: 0.45rem;
}

.land-products-block.is-model-feature .land-product:not(.is-featured) .land-product__media img {
  aspect-ratio: 1;
}

.land-products-block.is-model-feature .land-product:not(.is-featured) .land-product__text {
  display: none;
}

.land-products-block.is-model-feature .land-products[data-product-count="1"],
.land-products-block.is-model-feature .land-products[data-product-count="2"] {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
}

.land-products-block.is-model-feature .land-products[data-product-count="1"] .land-product.is-featured,
.land-products-block.is-model-feature .land-products[data-product-count="2"] .land-product.is-featured {
  grid-row: auto;
}

/* Aisle — sideways product browse */
.land-products-block.is-model-aisle .land-products,
.land-products-block.is-cols-2.is-model-aisle .land-products,
.land-products-block.is-cols-3.is-model-aisle .land-products,
.land-products-block.is-cols-4.is-model-aisle .land-products,
.land-products.is-products-aisle {
  display: flex;
  gap: 1rem;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  padding-bottom: 0.35rem;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  container-type: inline-size;
}

.land-products-block.is-model-aisle .land-products::-webkit-scrollbar {
  display: none;
}

.land-products-block.is-model-aisle .land-product {
  flex: 0 0 min(16.5rem, 78cqi);
  width: min(16.5rem, 78cqi);
  max-width: min(16.5rem, 78cqi);
  scroll-snap-align: start;
  background: var(--land-surface);
  border: 1px solid color-mix(in srgb, var(--land-text) 10%, transparent);
  overflow: hidden;
}

.land-products-block.is-model-aisle .land-product__body {
  padding: 0.95rem 1rem 1.1rem;
}

.land-products-block.is-model-aisle .land-product__media img {
  aspect-ratio: 1;
}

/* Tile — image-forward catalogue tiles */
.land-products-block.is-model-tile .land-products,
.land-products-block.is-cols-2.is-model-tile .land-products,
.land-products-block.is-cols-3.is-model-tile .land-products,
.land-products-block.is-cols-4.is-model-tile .land-products,
.land-products.is-products-tile {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr));
  gap: 0.9rem;
}

.land-products-block.is-model-tile .land-product {
  position: relative;
  min-height: 18rem;
  overflow: hidden;
  background: #141414;
  color: #fff7f0;
}

.land-products-block.is-model-tile .land-product__media {
  position: absolute;
  inset: 0;
  background: #141414;
}

.land-products-block.is-model-tile .land-product__media img {
  aspect-ratio: auto;
  height: 100%;
}

.land-products-block.is-model-tile .land-product__body {
  position: relative;
  z-index: 1;
  margin-top: auto;
  padding: 4.5rem 1.05rem 1.15rem;
  gap: 0.7rem;
  background: linear-gradient(180deg, transparent 0%, color-mix(in srgb, #14110f 82%, transparent) 55%, #14110f 100%);
  color: #fff7f0;
}

.land-products-block.is-model-tile .land-product__price,
.land-products-block.is-model-tile .land-product__text {
  color: color-mix(in srgb, #fff7f0 86%, transparent);
}

.land-products-block.is-model-tile .land-product__price {
  color: #fff7f0;
}

.land-products-block.is-model-tile .land-action .land-btn:not([data-button-colors]) {
  background: #fff7f0;
  color: var(--land-text);
  border-color: #fff7f0;
}

.land-products-block.is-model-tile .land-product.no-media {
  background: var(--land-surface);
  color: var(--land-text);
  min-height: 0;
}

.land-products-block.is-model-tile .land-product.no-media .land-product__body {
  margin-top: 0;
  padding: 1.15rem;
  background: transparent;
  color: inherit;
}

/* Quote · Mark — short quote with a leading rule */
.land-quote-block.is-model-mark .land-quote {
  max-width: 40rem;
}

.land-quote-block.is-model-mark .land-quote__text {
  padding-inline-start: 1rem;
  border-inline-start: 3px solid var(--land-accent);
}

.land-quote-block.is-model-mark .land-quote__media {
  display: none;
}

.land-quote-block.is-model-mark .land-quote.has-media {
  grid-template-columns: minmax(0, 1fr);
}

/* Quote · Portrait — photo beside the words */
.land-quote-block.is-model-portrait .land-quote.has-media {
  grid-template-columns: 7.5rem minmax(0, 1fr);
  gap: 1.25rem 1.4rem;
  max-width: 48rem;
}

.land-quote-block.is-model-portrait .land-quote__media img {
  max-height: 10rem;
}

/* Quote · Card — panel on the surface */
.land-quote-block.is-model-card .land-quote {
  max-width: 44rem;
  padding: 1.35rem 1.4rem;
  background: var(--land-surface);
  border: 1px solid color-mix(in srgb, var(--land-text) 12%, transparent);
}

.land-quote-block.is-model-card .land-quote.has-media {
  padding: 1.1rem;
  gap: 1rem 1.15rem;
}

/* Quote · Band — tinted strip across the page */
.land-quote-block.is-model-band {
  padding-block: clamp(2.6rem, 5vw, 3.8rem);
  background: color-mix(in srgb, var(--land-accent) 8%, var(--land-bg));
}

.land-quote-block.is-model-band .land-quote {
  max-width: 42rem;
  margin-inline: auto;
  text-align: center;
  justify-items: center;
}

.land-quote-block.is-model-band .land-quote.has-media {
  grid-template-columns: minmax(0, 1fr);
}

.land-quote-block.is-model-band .land-quote__media {
  width: 4.5rem;
  margin-inline: auto;
  border-radius: 50%;
  overflow: hidden;
}

.land-quote-block.is-model-band .land-quote__media img {
  aspect-ratio: 1;
  max-height: 4.5rem;
}

.land-quote-block.is-model-band .land-quote__text {
  max-width: 34rem;
}

.land-quote-block.is-model-band .land-quote__by {
  justify-items: center;
}

/* Quote · Pull — centred large pull-quote */
.land-quote-block.is-model-pull {
  padding-block: clamp(2.8rem, 6vw, 4.2rem);
}

.land-quote-block.is-model-pull .land-quote {
  max-width: 36rem;
  margin-inline: auto;
  text-align: center;
  justify-items: center;
}

.land-quote-block.is-model-pull .land-quote.has-media {
  grid-template-columns: minmax(0, 1fr);
}

.land-quote-block.is-model-pull .land-quote__media {
  display: none;
}

.land-quote-block.is-model-pull .land-quote__text {
  --land-fs-base: clamp(1.45rem, 3vw, 2.1rem);
  --land-fw-base: 700;
  line-height: 1.35;
  max-width: 28rem;
}

.land-quote-block.is-model-pull .land-quote__by {
  justify-items: center;
  margin-top: 0.2rem;
}

/* Quote · Split — quote and attribution on opposite sides */
.land-quote-block.is-model-split .land-quote {
  max-width: 56rem;
  grid-template-columns: minmax(0, 1.4fr) minmax(10rem, 0.7fr);
  gap: 1.5rem 2.5rem;
  align-items: end;
}

.land-quote-block.is-model-split .land-quote.has-media {
  grid-template-columns: 5.5rem minmax(0, 1.3fr) minmax(9rem, 0.7fr);
}

.land-quote-block.is-model-split .land-quote__body {
  display: contents;
}

.land-quote-block.is-model-split .land-quote__text {
  max-width: none;
  --land-fs-base: clamp(1.25rem, 2.4vw, 1.85rem);
}

.land-quote-block.is-model-split .land-quote__by {
  justify-items: start;
  padding-inline-start: 1rem;
  border-inline-start: 1px solid color-mix(in srgb, var(--land-text) 14%, transparent);
}

html[dir="rtl"] .land-quote-block.is-model-split .land-quote__by,
.land[dir="rtl"] .land-quote-block.is-model-split .land-quote__by {
  justify-items: start;
}

.land-block.is-model-wide .land-video {
  aspect-ratio: 21 / 9;
}

.land-block.is-model-stack .land-map,
.land-block.is-model-stack .land-split {
  grid-template-columns: 1fr;
  gap: clamp(1.2rem, 3vw, 2rem);
  max-width: 40rem;
  margin-inline: auto;
}

.land-block.is-model-stack .land-split__copy,
.land-block.is-model-stack .land-split__media,
.land-block.is-model-stack.is-flip .land-split__copy,
.land-block.is-model-stack.is-flip .land-split__media {
  grid-column: auto;
}

.land-block.is-model-beside .land-split__copy {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  justify-content: center;
}

.land-block.is-model-beside .land-split__media img {
  aspect-ratio: 4 / 5;
  object-fit: cover;
}

.land-block.is-model-cards .land-contact {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
  gap: 0.8rem;
}

.land-block.is-model-cards .land-contact > * {
  margin: 0;
  padding: 1rem;
  background: var(--land-surface);
  border: 1px solid color-mix(in srgb, var(--land-text) 12%, transparent);
}

.land-head.is-head-island,
.land-head.is-head-pill,
.land-head.is-head-wordmark,
.land-head.is-head-rail {
  background: transparent !important;
  border-bottom: 0 !important;
  backdrop-filter: none !important;
  box-shadow: none;
}

/* Island: floating pill over the page, not a full-width bar */
.land-head.is-head-island {
  --land-head-bg: color-mix(in srgb, var(--land-surface) 90%, transparent);
  --land-head-border: color-mix(in srgb, var(--land-text) 10%, transparent);
  --land-head-blur: blur(18px);
  left: 0;
  right: 0;
  width: 100%;
  padding: 0.85rem 0 0;
  margin: 0;
  z-index: 50;
  pointer-events: none;
}

.land-head.is-head-island:not(.is-sticky) {
  position: absolute;
  top: 0;
}

.land-head.is-head-island.is-sticky {
  position: sticky;
  top: 0.75rem;
  margin-bottom: -4.8rem;
}

body.is-bare-form .land-head.is-head-island.is-sticky {
  top: 0.75rem;
}

body:not(.is-bare-form) .land-head.is-head-island.is-sticky {
  top: calc(var(--header-height, 80px) + 12px);
}

.land-head.is-head-island .land-head__row {
  pointer-events: auto;
  width: min(980px, calc(100% - 1.5rem));
  min-height: 3.7rem;
  margin-inline: auto;
  padding: 0.4rem 0.45rem 0.4rem 1.15rem;
  background: var(--land-head-bg);
  color: var(--land-head-text, inherit);
  border: 1px solid var(--land-head-border);
  border-radius: 999px;
  box-shadow: 0 14px 36px rgba(20, 16, 12, 0.1);
  backdrop-filter: var(--land-head-blur);
}

.land-head.is-head-island.is-clear {
  --land-head-bg: transparent;
  --land-head-border: color-mix(in srgb, var(--land-head-text, var(--land-text)) 14%, transparent);
  --land-head-blur: none;
}

.land-head.is-head-island.is-clear .land-head__row {
  box-shadow: none;
  backdrop-filter: none;
}

.land-head.is-head-island .land-head__nav a {
  font-size: 0.88rem;
  font-weight: 600;
  opacity: 0.78;
}

.land-head.is-head-island .land-btn,
.land-head.is-head-pill .land-btn,
.land-head.is-head-invert .land-btn {
  min-height: 2.45rem;
  padding-inline: 1rem;
  border-radius: 999px;
}

.land-head.is-head-pill .land-head__row {
  min-height: 4.6rem;
}

.land-head.is-head-pill .land-head__nav {
  justify-content: center;
  gap: 0.15rem;
  padding: 0.22rem;
  background: color-mix(in srgb, var(--land-text) 7%, var(--land-bg));
  border-radius: 999px;
}

.land-head.is-head-pill .land-head__nav a {
  padding: 0.42rem 0.85rem;
  border-radius: 999px;
  font-size: 0.88rem;
  font-weight: 600;
}

.land-head.is-head-wordmark .land-head__row {
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  min-height: 4.6rem;
  padding-block: 0.85rem;
}

.land-head.is-head-wordmark .land-head__brand {
  font-size: clamp(1.35rem, 2.4vw, 1.9rem);
  line-height: 1.1;
}

.land-head.is-head-wordmark .land-head__logo {
  width: 2.35rem;
  height: 2.35rem;
}

.land-head.is-head-wordmark .land-head__nav {
  gap: 1.15rem;
}

.land-head.is-head-wordmark .land-head__nav a {
  font-size: 0.84rem;
  font-weight: 600;
  opacity: 0.72;
}

.land-head.is-head-invert {
  --land-head-bg: var(--land-accent);
  --land-head-text: var(--land-accent-text);
  --land-head-border: transparent;
  --land-head-blur: none;
  background: var(--land-head-bg);
  color: var(--land-head-text);
  border-bottom: 0;
}

.land-head.is-head-invert .land-btn:not([data-button-colors]) {
  background: var(--land-accent-text);
  color: var(--land-accent);
  border-color: var(--land-accent-text);
}

.land-head.is-head-rail .land-head__row {
  min-height: 5.1rem;
  border-bottom: 3px solid var(--land-accent);
}

.land-head.is-head-rail .land-head__brand {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  font-size: 1.2rem;
}

.land-head.is-head-rail .land-head__brand::before {
  content: "";
  width: 0.55rem;
  height: 0.55rem;
  border-radius: 50%;
  background: var(--land-accent);
  flex: 0 0 auto;
}

.land-head.is-head-rail .land-head__brand:has(.land-head__logo)::before {
  display: none;
}

.land-head.is-head-rail .land-head__nav {
  gap: 1.35rem;
}

.land-head.is-head-rail .land-head__nav a {
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.land-head.is-head-rail .land-btn:not([data-button-colors]) {
  background: transparent;
  color: inherit;
  border-color: currentColor;
}

[dir="rtl"] .land-head.is-head-rail .land-head__nav a,
[dir="rtl"] .land-head.is-head-wordmark .land-head__brand {
  letter-spacing: 0;
  text-transform: none;
}

/* Footer · Columns — classic three-part site footer */
.land-foot.is-foot-columns .land-foot__contacts,
.land-foot.is-foot-columns .land-foot__links {
  padding-inline-start: 1rem;
  border-inline-start: 1px solid color-mix(in srgb, var(--land-text) 12%, transparent);
}

/* Footer · Band — full-width strip with note + links in one row */
.land-foot.is-foot-band {
  background: color-mix(in srgb, var(--land-text) 92%, var(--land-bg));
  color: color-mix(in srgb, var(--land-bg) 92%, #fff);
  border-top: 0;
}

.land-foot.is-foot-band .land-foot__main {
  grid-template-columns: minmax(0, 1.2fr) auto;
  align-items: end;
  gap: 0.75rem 2rem;
  padding: 1.8rem 0 1.2rem;
}

.land-foot.is-foot-band .land-foot__brand {
  grid-row: 1 / span 2;
}

.land-foot.is-foot-band .land-foot__contacts,
.land-foot.is-foot-band .land-foot__links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem 1.15rem;
  justify-content: end;
  grid-column: 2;
}

.land-foot.is-foot-band .land-foot__contacts {
  grid-row: 1;
}

.land-foot.is-foot-band .land-foot__links {
  grid-row: 2;
}

.land-foot.is-foot-band .land-foot__label {
  display: none;
}

.land-foot.is-foot-band .land-foot__note {
  max-width: 34rem;
  color: inherit;
}

.land-foot.is-foot-band .land-foot__bar {
  border-top-color: color-mix(in srgb, currentColor 18%, transparent);
}

.land-foot.is-foot-band a:hover {
  color: inherit;
  opacity: 0.75;
}

/* Footer · Dock — compact bottom bar */
.land-foot.is-foot-dock {
  background: var(--land-bg);
  border-top: 1px solid color-mix(in srgb, var(--land-text) 14%, transparent);
}

.land-foot.is-foot-dock .land-foot__main {
  display: none;
}

.land-foot.is-foot-dock .land-foot__bar {
  display: flex;
  border-top: 0;
  padding: 1rem 0;
}

.land-foot.is-foot-dock .land-foot__bar-links {
  display: flex;
}

/* Footer · Panel — contained footer inside the page width */
.land-foot.is-foot-panel {
  width: min(1120px, calc(100% - 2rem));
  margin-inline: auto;
  margin-bottom: 1.5rem;
  border: 1px solid color-mix(in srgb, var(--land-text) 12%, transparent);
  background: var(--land-surface);
}

.land-foot.is-foot-panel .land-foot__inner {
  width: min(100% - 2.2rem, 1040px);
}

.land-foot.is-foot-panel .land-foot__main {
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 0.9fr);
  padding-top: 1.8rem;
}

.land-foot.is-foot-panel .land-foot__brand,
.land-foot.is-foot-panel .land-foot__contacts {
  grid-column: 1;
}

.land-foot.is-foot-panel .land-foot__links {
  grid-column: 2;
  grid-row: 1 / span 3;
  justify-self: end;
  text-align: end;
  justify-items: end;
}

/* Footer · Ink — accent footer with normal footer scale */
.land-foot.is-foot-ink {
  background: var(--land-accent);
  color: var(--land-accent-text);
  border-top: 0;
}

.land-foot.is-foot-ink .land-foot__label {
  opacity: 0.7;
}

.land-foot.is-foot-ink .land-foot__contacts,
.land-foot.is-foot-ink .land-foot__links {
  padding-inline-start: 1rem;
  border-inline-start: 1px solid color-mix(in srgb, var(--land-accent-text) 28%, transparent);
}

.land-foot.is-foot-ink .land-foot__bar {
  border-top-color: color-mix(in srgb, var(--land-accent-text) 24%, transparent);
}

.land-foot.is-foot-ink a,
.land-foot.is-foot-ink a:hover {
  color: inherit;
}

.land-foot.is-foot-ink a:hover {
  opacity: 0.8;
}

/* Footer · Folio — quiet editorial close */
.land-foot.is-foot-folio {
  background: transparent;
  border-top: 0;
  padding-top: 1.5rem;
}

.land-foot.is-foot-folio .land-foot__main {
  grid-template-columns: minmax(0, 1.4fr) auto;
  gap: 1.2rem 2.5rem;
  padding-top: 1.2rem;
  border-top: 1px solid color-mix(in srgb, var(--land-text) 14%, transparent);
}

.land-foot.is-foot-folio .land-foot__contacts {
  display: none;
}

.land-foot.is-foot-folio .land-foot__note {
  max-width: 36rem;
  --land-fs-base: 1.05rem;
}

.land-foot.is-foot-folio .land-foot__links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1.1rem;
  justify-content: end;
}

.land-foot.is-foot-folio .land-foot__label {
  display: none;
}

.land-foot.is-foot-folio .land-foot__bar {
  border-top: 0;
  padding-top: 0.4rem;
}

@media (max-width: 1100px) {
  .land-hero.is-hero-editorial .land-hero__frame,
  .land-hero.is-hero-cinema .land-hero__frame {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    grid-template-columns: none;
    grid-template-areas: none;
    text-align: start;
  }

  .land-hero.is-hero-editorial .land-hero__title,
  .land-hero.is-hero-editorial .land-eyebrow,
  .land-hero.is-hero-editorial .land-lede,
  .land-hero.is-hero-editorial .land-actions,
  .land-hero.is-hero-editorial .land-hero__media,
  .land-hero.is-hero-cinema .land-eyebrow,
  .land-hero.is-hero-cinema .land-hero__title,
  .land-hero.is-hero-cinema .land-hero__media,
  .land-hero.is-hero-cinema .land-lede,
  .land-hero.is-hero-cinema .land-actions {
    grid-area: auto;
    width: 100%;
    max-width: none;
    text-align: start;
  }

  .land-hero.is-hero-editorial .land-hero__title { order: 1; }
  .land-hero.is-hero-editorial .land-eyebrow { order: 2; }
  .land-hero.is-hero-editorial .land-lede { order: 3; }
  .land-hero.is-hero-editorial .land-actions { order: 4; }
  .land-hero.is-hero-editorial .land-hero__media { order: 5; }

  .land-hero.is-hero-cinema .land-eyebrow { order: 1; }
  .land-hero.is-hero-cinema .land-hero__title { order: 2; }
  .land-hero.is-hero-cinema .land-hero__media { order: 3; }
  .land-hero.is-hero-cinema .land-lede { order: 4; }
  .land-hero.is-hero-cinema .land-actions { order: 5; }

  .land-hero.is-hero-editorial .land-hero__title,
  .land-hero.is-hero-cinema .land-hero__title {
    --land-fs-base: clamp(2.4rem, 8vw, 4rem);
  }

  .land-hero.is-hero-editorial .land-hero__media img {
    height: auto;
    aspect-ratio: 16 / 9;
  }

  .land-hero.is-hero-diptych .land-hero__frame {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .land-hero.is-hero-diptych .land-hero__media img {
    height: min(20rem, 48vh);
  }

  .land-hero.is-hero-cinema:not([class*="is-text-"]) .land-actions,
  .land-hero.is-hero-editorial:not([class*="is-text-"]) .land-actions {
    justify-content: start;
  }

  .land-hero.is-hero-poster:not([class*="is-text-"]) .land-hero__frame,
  .land-hero.is-hero-float:not([class*="is-text-"]) .land-hero__copy,
  .land-hero.is-hero-diptych:not([class*="is-text-"]) .land-hero__copy,
  .land-hero.is-hero-strip:not([class*="is-text-"]) .land-hero__copy {
    text-align: start;
    justify-items: start;
  }

  .land-hero.is-hero-float:not([class*="is-text-"]) .land-hero__copy {
    justify-self: start;
    margin-inline: clamp(0.8rem, 3vw, 2.4rem) 0;
  }

  .land-hero.is-hero-float.is-flip:not([class*="is-text-"]) .land-hero__copy {
    justify-self: end;
    margin-inline: 0 clamp(0.8rem, 3vw, 2.4rem);
  }

  .land-hero.is-hero-strip .land-hero__frame {
    flex-wrap: wrap;
  }

  .land-hero.is-hero-strip .land-hero__copy {
    grid-template-columns: 1fr;
  }

  .land-hero.is-hero-strip:not([class*="is-text-"]) .land-actions {
    grid-column: 1;
    grid-row: auto;
    justify-content: start;
  }

  .land-block.is-model-stages .land-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }


  .land-prices-block.is-model-spotlight .land-prices,
  .land-prices-block.is-cols-2.is-model-spotlight .land-prices,
  .land-prices-block.is-cols-3.is-model-spotlight .land-prices,
  .land-prices-block.is-cols-4.is-model-spotlight .land-prices {
    grid-template-columns: minmax(0, 1fr);
  }

  .land-prices-block.is-model-spotlight .land-price.is-featured {
    grid-row: auto;
  }

  .land-prices-block.is-model-ladder .land-price {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "main"
      "value"
      "action";
  }

  .land-prices-block.is-model-ladder .land-price__value,
  .land-prices-block.is-model-ladder .land-action {
    justify-self: start;
    text-align: start;
  }

  .land-prices-block.is-model-slab .land-price {
    grid-template-columns: minmax(0, 1fr);
  }

  .land-prices-block.is-model-slab .land-price__value {
    white-space: normal;
  }

  .land-prices-block.is-model-pass .land-price.has-action {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "main"
      "value"
      "action";
  }

  .land-prices-block.is-model-deck .land-price.is-featured {
    transform: none;
  }

  .land-form.is-model-card .land-form__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .land-faq-block.is-model-cards .land-faq {
    grid-template-columns: 1fr;
  }

  .land-faq-block.is-model-split .land-faq__layout,
  .land-faq__layout {
    grid-template-columns: 1fr;
  }

  .land-slider-block.is-model-duo .land-slider__slide {
    grid-template-columns: minmax(0, 1fr);
  }

  .land-slider-block.is-model-lane .land-slider__slide,
  .land-slider-block.is-model-lane .land-slider__slide.is-active {
    flex: 0 0 min(20rem, 88cqi);
    width: min(20rem, 88cqi);
    max-width: min(20rem, 88cqi);
  }

  .land-products-block.is-model-feature .land-products,
  .land-products-block.is-cols-2.is-model-feature .land-products,
  .land-products-block.is-cols-3.is-model-feature .land-products,
  .land-products-block.is-cols-4.is-model-feature .land-products,
  .land-products.is-products-feature {
    grid-template-columns: minmax(0, 1fr);
  }

  .land-products-block.is-model-feature .land-product.is-featured {
    grid-row: auto;
  }

  .land-products-block.is-model-feature .land-product.is-featured .land-product__media img {
    aspect-ratio: 16 / 10;
  }

  .land-products-block.is-model-booth .land-product {
    grid-template-columns: 7rem minmax(0, 1fr);
  }

  .land-products-block.is-model-booth .land-product__body,
  html[dir="rtl"] .land-products-block.is-model-booth .land-product__body,
  .land[dir="rtl"] .land-products-block.is-model-booth .land-product__body {
    padding: 1rem 1rem 1.05rem;
  }

  .land-foot.is-foot-columns .land-foot__main,
  .land-foot.is-foot-panel .land-foot__main,
  .land-foot.is-foot-ink .land-foot__main,
  .land-foot.is-foot-band .land-foot__main,
  .land-foot.is-foot-folio .land-foot__main {
    grid-template-columns: 1fr;
  }

  .land-foot.is-foot-columns .land-foot__contacts,
  .land-foot.is-foot-columns .land-foot__links,
  .land-foot.is-foot-ink .land-foot__contacts,
  .land-foot.is-foot-ink .land-foot__links {
    border-inline-start: 0;
    padding-inline-start: 0;
    padding-top: 0.85rem;
    border-top: 1px solid color-mix(in srgb, currentColor 14%, transparent);
  }

  .land-foot.is-foot-band .land-foot__links,
  .land-foot.is-foot-folio .land-foot__links,
  .land-foot.is-foot-panel .land-foot__links {
    justify-content: start;
    justify-items: start;
    text-align: start;
  }
}

@media (max-width: 720px) {
  .land-head.is-head-island.has-drawer .land-head__row,
  .land-head.is-head-pill.has-drawer .land-head__row,
  .land-head.is-head-invert.has-drawer .land-head__row,
  .land-head.is-head-rail.has-drawer .land-head__row,
  .land-head.is-head-wordmark.has-drawer .land-head__row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.55rem 0.75rem;
  }

  .land-head.is-head-island {
    padding-top: 0.65rem;
  }

  .land-head.is-head-island.is-sticky {
    top: 0.55rem;
    margin-bottom: -5.2rem;
  }

  body:not(.is-bare-form) .land-head.is-head-island.is-sticky {
    top: calc(var(--header-height, 60px) + 8px);
  }

  .land-head.is-head-island .land-head__row {
    width: min(980px, calc(100% - 1rem));
    border-radius: 1.35rem;
    padding: 0.55rem 0.65rem;
  }

  .land-head.is-head-wordmark .land-head__brand {
    font-size: clamp(1.15rem, 4.5vw, 1.45rem);
  }

  .land-head.is-head-wordmark .land-head__row {
    flex-wrap: nowrap;
  }

  .land-head.is-head-pill .land-head__nav,
  .land-head.is-head-rail .land-head__nav {
    display: none;
  }

  .land-hero.is-hero-poster {
    min-height: min(32rem, 78vh);
  }

  .land-hero.is-hero-poster .land-hero__copy {
    max-width: 100%;
  }

  .land-hero.is-hero-float {
    padding-bottom: 5.5rem;
  }

  .land-hero.is-hero-float .land-hero__copy {
    max-width: calc(100% - 1.2rem);
    margin-inline: 0.6rem;
    transform: translateY(2.6rem);
  }

  .land-hero.is-hero-cinema .land-hero__media img {
    height: min(16rem, 42vh);
  }

  .land-block.is-model-stages .land-steps {
    grid-template-columns: 1fr;
  }

  .land-slider-block.is-model-lane .land-slider__slide,
  .land-slider-block.is-model-lane .land-slider__slide.is-active {
    flex: 0 0 min(17rem, 90cqi);
    width: min(17rem, 90cqi);
    max-width: min(17rem, 90cqi);
  }

  .land-slider-block.is-model-column .land-slider__slide,
  .land-slider-block.is-model-column .land-slider__slide.is-active {
    flex: 0 0 min(14.5rem, 78cqi);
    width: min(14.5rem, 78cqi);
    max-width: min(14.5rem, 78cqi);
  }

  .land-slider-block.is-model-cinema .land-slider__dock,
  .land-slider-block.is-model-frame .land-slider__dock {
    width: min(1120px, calc(100% - 1.5rem));
  }

  .land-slider-block.is-model-cinema .land-slider__copy,
  .land-slider-block.is-model-frame .land-slider__copy {
    width: 100%;
  }

  .land-products-block.is-model-booth .land-product,
  .land-products-block.is-model-feature .land-product:not(.is-featured) {
    grid-template-columns: minmax(0, 1fr);
  }

  .land-products-block.is-model-sheet .land-product {
    grid-template-columns: 4.25rem minmax(0, 1fr);
  }

  .land-products-block.is-model-booth .land-product__media img {
    aspect-ratio: 16 / 10;
  }

  .land-products-block.is-model-aisle .land-product {
    flex-basis: min(14.5rem, 82cqi);
    width: min(14.5rem, 82cqi);
    max-width: min(14.5rem, 82cqi);
  }

  .land-products-block.is-model-tile .land-product {
    min-height: 16rem;
  }

  .land-quote.has-media,
  .land-quote-block.is-model-portrait .land-quote.has-media,
  .land-quote-block.is-model-card .land-quote.has-media {
    grid-template-columns: minmax(0, 1fr);
  }

  .land-quote__media {
    width: min(8rem, 40%);
  }

  .land-quote-block.is-model-band .land-quote__media {
    width: 4.5rem;
  }

  .land-block.is-model-stages .land-steps li {
    align-items: start;
    text-align: start;
  }

  .land-ctas-block.is-model-ribbon .land-cta-box,
  .land-ctas-block.is-model-mosaic .land-cta-box.is-wide {
    grid-template-columns: 1fr;
  }

  .land-ctas-block.is-model-mosaic .land-ctas,
  .land-ctas.is-ctas-mosaic {
    grid-template-columns: 1fr;
  }

  .land-foot.is-foot-panel {
    width: calc(100% - 1rem);
  }

  .land-foot.is-foot-band .land-foot__brand,
  .land-foot.is-foot-band .land-foot__contacts,
  .land-foot.is-foot-band .land-foot__links,
  .land-foot.is-foot-panel .land-foot__brand,
  .land-foot.is-foot-panel .land-foot__contacts,
  .land-foot.is-foot-panel .land-foot__links {
    grid-column: auto;
    grid-row: auto;
  }

  .land-foot.is-foot-dock .land-foot__bar-links {
    width: 100%;
  }
}

/* --------------------------------------------------------------------------
   Section Text align — physical left | center | right in LTR and RTL
   (do not use margin-inline / flex-start for these — they flip in Persian)
   -------------------------------------------------------------------------- */
.land :is(.land-block, .land-hero, .land-cta).is-text-left {
  --land-section-ta: left;
  --land-section-justify: left;
  --land-section-items: left;
  --land-section-self: left;
  text-align: left;
}

.land :is(.land-block, .land-hero, .land-cta).is-text-center {
  --land-section-ta: center;
  --land-section-justify: center;
  --land-section-items: center;
  --land-section-self: center;
  text-align: center;
}

.land :is(.land-block, .land-hero, .land-cta).is-text-right {
  --land-section-ta: right;
  --land-section-justify: right;
  --land-section-items: right;
  --land-section-self: right;
  text-align: right;
}

/* Copy / intro shells — flex column for text + button placement */
.land :is(.land-block, .land-hero:not(.is-hero-strip), .land-cta)[class*="is-text-"] :is(
  .land-hero__copy,
  .land-split__copy,
  .land-map__copy,
  .land-countdown__inner,
  .land-form__copy,
  .land-stats__intro,
  .land-faq__intro,
  .land-cta-box:not(.is-wide),
  .land-quote__body,
  .land-slider__copy,
  .land-price__main
) {
  display: flex !important;
  flex-direction: column !important;
  align-items: var(--land-section-items, left) !important;
  text-align: var(--land-section-ta, left) !important;
}

/* Slider shells stay page-width; section align only nudges copy, never the track */
.land-slider-block[class*="is-text-"] :is(.land-slider, .land-slider__viewport, .land-slider__track) {
  width: 100%;
  max-width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.land-slider-block[class*="is-text-"] .land-slider__slide {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.land-slider-block:not(.is-model-lane):not(.is-model-column)[class*="is-text-"] .land-slider__slide {
  width: 100%;
  max-width: 100%;
}

.land-slider-block.is-model-duo[class*="is-text-"] .land-slider__slide {
  display: grid !important;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.9fr) !important;
}

@media (max-width: 900px) {
  .land-slider-block.is-model-duo[class*="is-text-"] .land-slider__slide {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* Card / product / price / caption: text-align only (keep model grids) */
.land :is(.land-block, .land-hero, .land-cta)[class*="is-text-"] :is(
  .land-price__copy,
  .land-price__main,
  .land-product__copy,
  .land-gallery__caption,
  .land-card__body,
  .land-cta-box__copy
) {
  text-align: var(--land-section-ta, left) !important;
}

.land-block.is-model-points[class*="is-text-"] .land-card__body {
  display: grid !important;
  justify-items: var(--land-section-self, left) !important;
}

/* Typography */
.land :is(.land-block, .land-hero, .land-cta)[class*="is-text-"] :is(
  h1, h2, h3, h4, p, li, dt, dd, figcaption, cite, label,
  .land-eyebrow, .land-hero__title, .land-title, .land-form__title,
  .land-quote__text, .land-quote__name, .land-quote__role,
  .land-lede, .land-prose, .land-faq__question, .land-faq__answer,
  .land-place, .land-role, .land-price__value, .land-stat dd, .land-stat dt,
  .land-item-title, .land-item-text, .land-product__title, .land-product__price,
  .land-product__text, .land-cta-box__title, .land-cta-box__text,
  .land-gallery__title, .land-logos span, .land-slider__text,
  .land-contact a, .land-map__text, .land-steps h3, .land-steps p,
  .land-features h3, .land-features p, .land-team h3, .land-team p
):not([class*="is-align-"]):not(.land-btn) {
  text-align: var(--land-section-ta, left) !important;
}

.land :is(.land-block, .land-hero, .land-cta)[class*="is-text-"] :is(
  .land-eyebrow, .land-hero__title, .land-title, .land-form__title,
  .land-lede, .land-prose, .land-item-title, .land-item-text,
  .land-cta-box__copy, .land-product__copy, .land-price__copy, .land-price__main,
  .land-gallery__copy, .land-slider__text, .land-quote__text
) {
  align-self: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box;
}

/* Buttons — hug + physical justify */
.land :is(.land-block, .land-hero, .land-cta)[class*="is-text-"] :is(.land-action, .land-actions) {
  display: flex !important;
  flex-wrap: wrap !important;
  width: auto !important;
  max-width: 100% !important;
  align-self: var(--land-section-items, left) !important;
  justify-content: var(--land-section-justify, left) !important;
  align-items: center !important;
}

.land-ctas-block.is-model-ribbon[class*="is-text-"] .land-action,
.land-ctas-block.is-model-mosaic[class*="is-text-"] .land-cta-box.is-wide .land-action {
  flex: 0 0 auto !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
  align-self: center !important;
}

/* —— Hero models —— */
.land-hero.is-text-left :is(.land-hero__frame, .land-hero__frame.land-wrap),
.land-hero.is-text-left.is-hero-poster .land-hero__frame,
.land-hero.is-text-left.is-hero-poster.is-flip .land-hero__frame {
  justify-content: left !important;
}

.land-hero.is-text-center :is(.land-hero__frame, .land-hero__frame.land-wrap),
.land-hero.is-text-center.is-hero-poster .land-hero__frame,
.land-hero.is-text-center.is-hero-poster.is-flip .land-hero__frame {
  justify-content: center !important;
}

.land-hero.is-text-right :is(.land-hero__frame, .land-hero__frame.land-wrap),
.land-hero.is-text-right.is-hero-poster .land-hero__frame,
.land-hero.is-text-right.is-hero-poster.is-flip .land-hero__frame {
  justify-content: right !important;
}

.land-hero.is-text-left .land-hero__copy {
  margin-left: 0 !important;
  margin-right: auto !important;
}
.land-hero.is-text-center .land-hero__copy {
  margin-left: auto !important;
  margin-right: auto !important;
}
.land-hero.is-text-right .land-hero__copy {
  margin-left: auto !important;
  margin-right: 0 !important;
}

/* Strip: stack text + button so align is one unit */
.land-hero.is-hero-strip[class*="is-text-"] .land-hero__copy {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0.55rem !important;
  text-align: var(--land-section-ta, left) !important;
  justify-items: var(--land-section-self, left) !important;
}

.land-hero.is-hero-strip[class*="is-text-"] .land-actions {
  grid-column: 1 !important;
  grid-row: auto !important;
  justify-self: var(--land-section-self, left) !important;
  margin-top: 0.35rem !important;
}

.land-hero.is-hero-strip.is-text-center .land-hero__frame {
  justify-content: center !important;
}

/* Editorial / cinema: align text nodes; keep media full-bleed */
.land-hero.is-hero-cinema[class*="is-text-"] .land-hero__frame,
.land-hero.is-hero-editorial[class*="is-text-"] .land-hero__frame {
  text-align: var(--land-section-ta, left) !important;
}

.land-hero.is-hero-cinema[class*="is-text-"] .land-hero__frame > :is(.land-eyebrow, .land-hero__title, .land-lede, .land-actions),
.land-hero.is-hero-editorial[class*="is-text-"] .land-hero__frame > :is(.land-eyebrow, .land-hero__title, .land-lede, .land-actions) {
  justify-self: var(--land-section-self, left) !important;
  text-align: var(--land-section-ta, left) !important;
}

.land-hero.is-hero-cinema.is-text-center .land-hero__frame > :is(.land-eyebrow, .land-hero__title, .land-lede, .land-actions),
.land-hero.is-hero-editorial.is-text-center .land-hero__frame > :is(.land-eyebrow, .land-hero__title, .land-lede, .land-actions) {
  width: min(100%, 40rem);
}

.land-hero.is-hero-cinema[class*="is-text-"] .land-hero__media,
.land-hero.is-hero-editorial[class*="is-text-"] .land-hero__media {
  justify-self: stretch !important;
  width: 100% !important;
}

.land-hero.is-hero-cinema[class*="is-text-"] .land-actions,
.land-hero.is-hero-editorial[class*="is-text-"] .land-actions {
  justify-content: var(--land-section-justify, left) !important;
}

/* —— CTA / title / countdown / form intros —— */
.land-cta[class*="is-text-"] .land-wrap {
  display: grid !important;
  justify-items: var(--land-section-self, left) !important;
  text-align: var(--land-section-ta, left) !important;
}

.land-block.is-text-left :is(.land-split__copy, .land-map__copy, .land-countdown__inner, .land-stats__intro, .land-faq__intro, .land-form__copy),
.land-cta.is-text-left .land-wrap {
  justify-items: left !important;
}

.land-block.is-text-center :is(.land-split__copy, .land-map__copy, .land-countdown__inner, .land-stats__intro, .land-faq__intro, .land-form__copy),
.land-cta.is-text-center .land-wrap {
  justify-items: center !important;
}

.land-block.is-text-right :is(.land-split__copy, .land-map__copy, .land-countdown__inner, .land-stats__intro, .land-faq__intro, .land-form__copy),
.land-cta.is-text-right .land-wrap {
  justify-items: right !important;
}

.land-titleband[class*="is-text-"] .land-wrap,
.land-block.land-titleband[class*="is-text-"] {
  text-align: var(--land-section-ta, left) !important;
}

/* —— Pricing —— */
.land-prices-block[class*="is-text-"] .land-prices {
  width: 100%;
  max-width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
  justify-items: stretch;
}

.land-prices-block[class*="is-text-"] .land-price {
  width: 100%;
  max-width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: var(--land-section-ta, left) !important;
}

.land-prices-block[class*="is-text-"] .land-price__main,
.land-prices-block[class*="is-text-"] .land-price__value {
  text-align: var(--land-section-ta, left) !important;
}

.land-prices-block[class*="is-text-"] .land-action {
  align-self: var(--land-section-items, left) !important;
  justify-content: var(--land-section-justify, left) !important;
}

.land-prices-block.is-model-ladder[class*="is-text-"] .land-price,
.land-prices-block.is-model-slab[class*="is-text-"] .land-price,
.land-prices-block.is-model-pass[class*="is-text-"] .land-price {
  display: grid !important;
}

/* Pass/ticket keeps a compact card and places it by section align */
.land-prices-block.is-model-pass.is-text-center .land-prices,
.land-prices-block.is-model-pass.is-text-left .land-prices,
.land-prices-block.is-model-pass.is-text-right .land-prices {
  max-width: 36rem !important;
  width: 100%;
}

.land-prices-block.is-model-pass.is-text-center .land-prices {
  margin-left: auto !important;
  margin-right: auto !important;
}

.land-prices-block.is-model-pass.is-text-left .land-prices {
  margin-left: 0 !important;
  margin-right: auto !important;
}

.land-prices-block.is-model-pass.is-text-right .land-prices {
  margin-left: auto !important;
  margin-right: 0 !important;
}

.land-prices-block.is-model-pass.is-text-center .land-price.has-action {
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-areas:
    "main"
    "value"
    "action" !important;
  justify-items: center;
  align-items: center;
}

.land-prices-block.is-model-ladder.is-text-left .land-price__value,
.land-prices-block.is-model-ladder.is-text-left .land-action,
.land-prices-block.is-model-pass.is-text-left .land-price__value,
.land-prices-block.is-model-pass.is-text-left .land-action {
  justify-self: left;
  text-align: left;
}

.land-prices-block.is-model-ladder.is-text-center .land-price__value,
.land-prices-block.is-model-ladder.is-text-center .land-action,
.land-prices-block.is-model-pass.is-text-center .land-price__value,
.land-prices-block.is-model-pass.is-text-center .land-action {
  justify-self: center;
  text-align: center;
}

.land-prices-block.is-model-pass.is-text-center .land-price__main,
.land-prices-block.is-model-pass.is-text-center .land-price__value,
.land-prices-block.is-model-pass.is-text-center .land-action {
  width: 100%;
  justify-items: center;
  justify-content: center !important;
  align-self: center !important;
}

.land-prices-block.is-model-ladder.is-text-right .land-price__value,
.land-prices-block.is-model-ladder.is-text-right .land-action,
.land-prices-block.is-model-pass.is-text-right .land-price__value,
.land-prices-block.is-model-pass.is-text-right .land-action {
  justify-self: right;
  text-align: right;
}

.land-prices-block.is-model-pillar[class*="is-text-"] .land-price,
.land-prices-block.is-model-pillar[class*="is-text-"] .land-price__main,
.land-prices-block.is-model-pillar[class*="is-text-"] .land-price__value {
  text-align: center !important;
  justify-items: center;
}

.land-prices-block.is-model-pillar[class*="is-text-"] .land-action {
  align-self: center !important;
  justify-content: center !important;
}

.land-prices-block.is-model-pass .land-prices,
.land-prices-block.is-model-ladder .land-prices {
  margin-left: 0;
  margin-right: 0;
}

.land-prices-block.is-text-center.is-model-pass .land-prices,
.land-prices-block.is-text-center.is-model-ladder .land-prices {
  margin-left: auto;
  margin-right: auto;
}

/* —— Gallery strip / grid —— */
.land-gallery-block.is-model-strip.is-text-center .land-gallery {
  justify-content: center;
}

.land-gallery-block.is-model-strip.is-text-right .land-gallery {
  justify-content: right;
}

.land-gallery-block.is-model-strip.is-text-left .land-gallery {
  justify-content: left;
}

.land-gallery-block[class*="is-text-"] .land-gallery__caption {
  align-items: var(--land-section-items, left);
  display: flex;
  flex-direction: column;
}

/* —— Products: keep card grids; align copy + meta —— */
.land-products-block[class*="is-text-"] .land-products {
  width: 100%;
  max-width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.land-products-block[class*="is-text-"] .land-product {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.land-products-block[class*="is-text-"] .land-product__copy,
.land-products-block[class*="is-text-"] .land-product__title,
.land-products-block[class*="is-text-"] .land-product__text,
.land-products-block[class*="is-text-"] .land-product__price {
  text-align: var(--land-section-ta, left) !important;
}

.land-products-block[class*="is-text-"] .land-product__meta {
  justify-content: space-between;
}

.land-products-block.is-text-left .land-product__meta {
  justify-content: space-between;
}

.land-products-block.is-text-center .land-product__meta {
  justify-content: center;
}

.land-products-block.is-text-right .land-product__meta {
  justify-content: space-between;
}

.land-products-block[class*="is-text-"] .land-product__body .land-action {
  align-self: var(--land-section-items, left) !important;
  justify-content: var(--land-section-justify, left) !important;
}

.land-products-block.is-model-sheet.is-text-center .land-products,
.land-products-block.is-text-center.is-model-sheet .land-products {
  margin-left: auto;
  margin-right: auto;
}

.land-products-block.is-model-booth[class*="is-text-"] .land-product,
.land-products-block.is-model-feature[class*="is-text-"] .land-product:not(.is-featured),
.land-products-block.is-model-sheet[class*="is-text-"] .land-product {
  display: grid !important;
}

.land-products-block.is-model-aisle[class*="is-text-"] .land-products {
  display: flex !important;
}

/* —— Stats / logos / quotes —— */
.land-stats-block[class*="is-text-"]:not(.is-model-pulse):not(.is-model-banner) .land-stat,
.land-block[class*="is-text-"] .land-logo {
  justify-items: var(--land-section-self, left) !important;
  text-align: var(--land-section-ta, left) !important;
}

.land-stats-block.is-model-pulse[class*="is-text-"] .land-stats,
.land-stats-block.is-model-banner[class*="is-text-"] .land-stats {
  justify-items: center !important;
  text-align: center !important;
}

.land-stats-block.is-model-pulse[class*="is-text-"] .land-stat,
.land-stats-block.is-model-banner[class*="is-text-"] .land-stat {
  justify-items: center !important;
  text-align: center !important;
}

.land-stats-block.is-model-ledger.is-text-left .land-stats {
  margin-left: 0;
  margin-right: auto;
}

.land-stats-block.is-model-ledger.is-text-center .land-stats {
  margin-left: auto;
  margin-right: auto;
}

.land-stats-block.is-model-ledger.is-text-right .land-stats {
  margin-left: auto;
  margin-right: 0;
}

.land-stats-block.is-model-orbit[class*="is-text-"] .land-stat.is-featured {
  justify-items: var(--land-section-self, left) !important;
  text-align: var(--land-section-ta, left) !important;
}

.land-quote-block[class*="is-text-"] .land-quote__by {
  justify-content: var(--land-section-justify, left) !important;
}

/* —— Contact / map —— */
.land-block[class*="is-text-"] .land-contact {
  justify-content: var(--land-section-justify, left) !important;
}

/* Per-field Align — physical left/center/right for FA and EN */
.land :is(h1, h2, h3, h4, p, div, dt, dd, figcaption, span, cite, label)[class*="is-align-"] {
  display: block;
  box-sizing: border-box;
  width: 100%;
  justify-self: stretch;
  align-self: stretch;
}

.land[dir="rtl"] .is-align-fa-left,
html[dir="rtl"] .land:not([dir]) .is-align-fa-left,
.land[dir="ltr"] .is-align-en-left,
html[dir="ltr"] .land:not([dir]) .is-align-en-left,
.land .is-align-d-left {
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}

.land[dir="rtl"] .is-align-fa-center,
html[dir="rtl"] .land:not([dir]) .is-align-fa-center,
.land[dir="ltr"] .is-align-en-center,
html[dir="ltr"] .land:not([dir]) .is-align-en-center,
.land .is-align-d-center {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.land[dir="rtl"] .is-align-fa-right,
html[dir="rtl"] .land:not([dir]) .is-align-fa-right,
.land[dir="ltr"] .is-align-en-right,
html[dir="ltr"] .land:not([dir]) .is-align-en-right,
.land .is-align-d-right {
  text-align: right !important;
  margin-left: auto !important;
  margin-right: 0 !important;
}

@media (max-width: 1100px) {
  .land .is-align-t-left {
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: auto !important;
  }

  .land .is-align-t-center {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .land .is-align-t-right {
    text-align: right !important;
    margin-left: auto !important;
    margin-right: 0 !important;
  }

  .land-hero.is-hero-cinema[class*="is-text-"] .land-hero__frame,
  .land-hero.is-hero-editorial[class*="is-text-"] .land-hero__frame {
    align-items: var(--land-section-items, left) !important;
  }
}

@media (max-width: 720px) {
  .land .is-align-m-left {
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: auto !important;
  }

  .land .is-align-m-center {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .land .is-align-m-right {
    text-align: right !important;
    margin-left: auto !important;
    margin-right: 0 !important;
  }
}
