.zonli-club-weekend {
  --zcw-bg: #f7f4ee;
  --zcw-fg: #2a3b2b;
  --zcw-btn-bg: #2a3b2b;
  --zcw-btn-fg: #ffffff;
  width: 100%;
  overflow: hidden;
  color: var(--zcw-fg);
  background: transparent;
  scroll-margin-top: 96px;
}

.zonli-club-weekend__inner {
  position: relative;
  display: grid;
  gap: 0;
  align-items: stretch;
  padding: 0;
  overflow: hidden;
  border-radius: var(--content-border-radius);
  background: var(--zcw-bg);
  color: var(--zcw-fg);
}

.zonli-club-weekend__media {
  position: relative;
  overflow: hidden;
  min-height: 220px;
  background: rgba(247, 244, 238, 0.08);
}

.zonli-club-weekend__content {
  max-width: 440px;
  padding: 32px 24px;
}

.zonli-club-weekend__media-img,
.zonli-club-weekend__media .empty-image-class {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 240px;
  object-fit: cover;
}

.zonli-club-weekend__eyebrow {
  display: inline-flex;
  margin: 0 0 12px;
  padding: 6px 12px;
  border: 0;
  border-radius: 999px;
  background: rgba(247, 244, 238, 0.18);
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.zonli-club-weekend__heading {
  margin: 0 0 8px;
}

.zonli-club-weekend__meta {
  margin: 0 0 8px;
  opacity: 0.9;
}

.zonli-club-weekend__text {
  margin: 0 0 24px;
  max-width: 44ch;
  opacity: 0.88;
}

.zonli-club-weekend :is(.zonli-club-weekend__text, .zonli-club-weekend__meta) {
  font-size: var(--zcw-copy-size, 16px);
  line-height: var(--zcw-copy-leading, 150%);
}

.zonli-club-weekend__text p {
  margin: 0;
}

a.button.zonli-club-weekend__cta,
span.button.zonli-club-weekend__cta {
  gap: 8px;
  border-radius: var(--button-border-radius);
  background-color: var(--zcw-btn-bg);
  color: var(--zcw-btn-fg);
  text-decoration: none;
  min-height: var(--zcw-btn-h, 40px);
  padding-inline: var(--zcw-btn-px, 18px);
}

a.button.zonli-club-weekend__cta::after,
span.button.zonli-club-weekend__cta::after {
  box-shadow: none;
}

a.button.zonli-club-weekend__cta:hover {
  background-color: var(--zcw-btn-bg);
  opacity: 0.92;
}

a.button.zonli-club-weekend__cta:focus-visible {
  outline: 2px solid var(--zcw-btn-fg);
  outline-offset: 3px;
}

@media screen and (min-width: 960px) {
  .zonli-club-weekend > .page-width {
    margin-inline: auto !important;
  }

  .zonli-club-weekend__inner {
    grid-template-columns: minmax(280px, 0.92fr) minmax(0, 1.08fr);
    gap: 0;
    padding: 0;
    min-height: var(--zcw-min-h, 320px);
  }

  .zonli-club-weekend--media-left .zonli-club-weekend__media {
    order: 1;
  }

  .zonli-club-weekend--media-left .zonli-club-weekend__content {
    order: 2;
    max-width: none;
    align-self: center;
    padding: 48px 48px 48px 40px;
  }

  .zonli-club-weekend--media-right .zonli-club-weekend__content {
    order: 1;
    max-width: none;
    align-self: center;
    padding: 48px 40px 48px 48px;
  }

  .zonli-club-weekend--media-right .zonli-club-weekend__media {
    order: 2;
  }

  .zonli-club-weekend__media {
    height: 100%;
  }

  .zonli-club-weekend__media,
  .zonli-club-weekend__media-img,
  .zonli-club-weekend__media .empty-image-class {
    min-height: var(--zcw-min-h, 320px);
  }
}

@media screen and (max-width: 749px) {
  .zonli-club-weekend__media,
  .zonli-club-weekend__media-img,
  .zonli-club-weekend__media .empty-image-class {
    min-height: var(--zcw-min-h-mobile, 200px);
  }

  .zonli-club-weekend__content { padding: 28px 22px 32px; }
}

/* Theme editor: align editable headings and copy without changing data/control alignment. */
.zonli-club-weekend[data-editable-text-align="left"] :is(h1, h2, h3, h4, h5, h6, p, .rte, .button) { text-align: left; }
.zonli-club-weekend[data-editable-text-align="center"] :is(h1, h2, h3, h4, h5, h6, p, .rte, .button) { text-align: center; }
.zonli-club-weekend[data-editable-text-align="right"] :is(h1, h2, h3, h4, h5, h6, p, .rte, .button) { text-align: right; }

/* Flex buttons need main-axis alignment in addition to text-align. */
.zonli-club-weekend[data-editable-text-align="left"] .button { justify-content: flex-start; }
.zonli-club-weekend[data-editable-text-align="center"] .button { justify-content: center; }
.zonli-club-weekend[data-editable-text-align="right"] .button { justify-content: flex-end; }
