.lifestyle-main {
  padding-bottom: var(--space-64);
}

.lifestyle-hero {
  padding-top: var(--space-64);
  padding-bottom: var(--space-48);
}

.lifestyle-hero__inner {
  display: grid;
  gap: var(--space-32);
}

.lifestyle-hero__content p {
  max-width: 40rem;
}

.lifestyle-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-16);
  margin-top: var(--space-24);
}

.lifestyle-hero__summary {
  display: flex;
  align-items: stretch;
}

.lifestyle-hero__card {
  width: 100%;
}

.lifestyle-hero__card-title {
  font-family: var(--font-serif);
  font-size: var(--font-size-2xl);
  margin-bottom: var(--space-16);
}

.lifestyle-hero__link {
  font-size: var(--font-size-sm);
  font-weight: 500;
}

.lifestyle-section {
  padding-top: var(--space-48);
  padding-bottom: var(--space-48);
}

.lifestyle-section__header {
  max-width: 44rem;
  margin-bottom: var(--space-32);
}

.lifestyle-section__header p {
  margin-bottom: 0;
}

.lifestyle-trends__grid {
  display: grid;
  gap: var(--space-24);
}

.lifestyle-trend .lifestyle-link {
  margin-top: var(--space-12);
  display: inline-flex;
}

.lifestyle-curated__inner,
.lifestyle-essentials__inner,
.lifestyle-seasonal__inner,
.lifestyle-shop-look__inner,
.lifestyle-sustainable__inner,
.lifestyle-cta__inner {
  display: grid;
  gap: var(--space-32);
  align-items: center;
}

.lifestyle-curated__media,
.lifestyle-essentials__media,
.lifestyle-seasonal__media,
.lifestyle-shop-look__media {
  box-shadow: var(--shadow-md);
}

.lifestyle-curated__highlights {
  display: grid;
  gap: var(--space-16);
  margin-top: var(--space-16);
  margin-bottom: var(--space-24);
}

.lifestyle-curated__item h3 {
  font-family: var(--font-serif);
  font-size: var(--font-size-lg);
  margin-bottom: var(--space-8);
}

.lifestyle-curated__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-16);
}

.lifestyle-essentials__list,
.lifestyle-sustainable__list {
  display: grid;
  gap: var(--space-8);
  margin-bottom: var(--space-24);
}

.lifestyle-essentials__list li,
.lifestyle-sustainable__list li {
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
}

.lifestyle-wellness__grid,
.lifestyle-stories__grid,
.lifestyle-expert__grid {
  display: grid;
  gap: var(--space-24);
}

.lifestyle-seasonal__details {
  display: grid;
  gap: var(--space-16);
  margin-top: var(--space-16);
  margin-bottom: var(--space-24);
}

.lifestyle-seasonal__details h3 {
  font-family: var(--font-serif);
  font-size: var(--font-size-lg);
  margin-bottom: var(--space-8);
}

.lifestyle-story .text-muted {
  margin-bottom: var(--space-8);
}

.lifestyle-link {
  font-size: var(--font-size-sm);
  font-weight: 500;
}

.lifestyle-shop-look__columns {
  display: grid;
  gap: var(--space-16);
  margin-top: var(--space-16);
  margin-bottom: var(--space-24);
}

.lifestyle-shop-look__actions,
.lifestyle-cta__links {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-16);
}

.lifestyle-cta__block {
  max-width: 32rem;
}

@media (min-width: 768px) {
  .lifestyle-hero__inner {
    grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
    align-items: center;
  }

  .lifestyle-trends__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .lifestyle-curated__inner,
  .lifestyle-essentials__inner,
  .lifestyle-seasonal__inner,
  .lifestyle-shop-look__inner {
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.2fr);
  }

  .lifestyle-essentials__inner,
  .lifestyle-shop-look__inner {
    grid-auto-flow: column;
  }

  .lifestyle-wellness__grid,
  .lifestyle-expert__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .lifestyle-stories__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .lifestyle-shop-look__columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .lifestyle-cta__inner {
    grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
  }
}

@media (min-width: 1024px) {
  .lifestyle-hero {
    padding-top: var(--space-80);
    padding-bottom: var(--space-64);
  }

  .lifestyle-section {
    padding-top: var(--space-64);
    padding-bottom: var(--space-64);
  }
}
