/*
 * Editorial refinement for the matching LVE child theme only.
 * The plugin owns body.lve-design-v1. No reset, content, image or planner rules.
 */

/* Preserve the theme's 900px drawer boundary and its open-menu presentation. */
@media (min-width: 901px) {
  body.lve-design-v1 .lve2-navigation .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation-item__content {
    min-height: 44px;
    min-width: 44px;
    display: inline-flex;
    align-items: center;
    padding-block: 10px;
    font-size: max(14px, .875rem);
    line-height: 1.4;
  }

  body.lve-design-v1 .lve2-header-action .wp-block-button__link {
    min-height: 46px;
    font-size: max(14px, .875rem);
    line-height: 1.4;
  }
}

/* A legible footer, including long email addresses and inline legal links. */
body.lve-design-v1 .lve2-footer {
  color: #d5dde4;
}

body.lve-design-v1 .lve2-footer .lve2-footer-brand > p,
body.lve-design-v1 .lve2-footer .wp-block-column > p {
  color: #d5dde4;
  font-size: max(15px, .9375rem);
  line-height: 1.65;
}

body.lve-design-v1 .lve2-footer .lve2-brand-copy > p,
body.lve-design-v1 .lve2-footer h3 {
  font-size: max(14px, .875rem);
  line-height: 1.5;
  letter-spacing: .1em;
}

body.lve-design-v1 .lve2-footer h3 {
  margin-bottom: 12px;
}

body.lve-design-v1 .lve2-footer li {
  margin-block: 0;
  font-size: max(15px, .9375rem);
  line-height: 1.5;
}

body.lve-design-v1 .lve2-footer li a,
body.lve-design-v1 .lve2-footer .wp-block-column > p > a,
body.lve-design-v1 .lve2-footer-bottom a {
  min-height: 44px;
  min-width: 44px;
  max-width: 100%;
  display: inline-flex;
  align-items: center;
  padding-block: 8px;
  overflow-wrap: anywhere;
}

body.lve-design-v1 .lve2-footer-bottom {
  gap: 16px 28px;
  color: #c7d0d8;
  font-size: max(14px, .875rem);
  line-height: 1.65;
}

body.lve-design-v1 .lve2-footer-bottom p {
  max-width: 72ch;
}

/* Page, archive and article headings share a quieter editorial scale. */
body.lve-design-v1 .lve2-page-hero,
body.lve-design-v1 .lve2-article-hero {
  padding-block: clamp(48px, 6vw, 88px);
}

body.lve-design-v1 .lve2-page-hero h1,
body.lve-design-v1 .lve2-page-hero .wp-block-query-title,
body.lve-design-v1 .lve2-article-hero h1 {
  max-width: 24ch;
  font-size: clamp(2.6rem, 5.5vw, 5rem);
  line-height: 1.04;
  letter-spacing: -.045em;
  text-wrap: balance;
  overflow-wrap: anywhere;
}

body.lve-design-v1 .lve2-page-hero > .wp-block-group > p:not(.lve2-kicker),
body.lve-design-v1 .lve2-page-hero .wp-block-post-excerpt,
body.lve-design-v1 .lve2-page-hero .wp-block-term-description,
body.lve-design-v1 .lve2-article-hero .wp-block-post-excerpt {
  max-width: 65ch;
  margin-top: 22px;
  color: #d5dde4;
  font-size: max(18px, 1.125rem);
  line-height: 1.65;
}

body.lve-design-v1 .lve2-page-hero .lve2-kicker,
body.lve-design-v1 .lve2-article-hero .lve2-kicker {
  margin-bottom: 18px;
  color: var(--lve2-yellow);
  font-size: max(14px, .875rem);
  line-height: 1.5;
  letter-spacing: .12em;
}

body.lve-design-v1 .lve2-article-meta {
  margin-top: 22px;
  gap: 8px 16px;
  color: #c7d0d8;
  font-size: max(14px, .875rem);
  line-height: 1.6;
}

/* Consistent card edges without changing their images, grids or link targets. */
body.lve-design-v1 .lve2-experience-card,
body.lve-design-v1 .lve2-guide-card,
body.lve-design-v1 .lve2-post-card,
body.lve-design-v1 .lve2-catalog-card {
  border-radius: 20px;
  border-color: rgba(7, 17, 29, .18);
}

body.lve-design-v1 .lve2-catalog-card {
  box-shadow: 0 8px 24px rgba(3, 9, 18, .045);
}

body.lve-design-v1 .lve2-experience-card {
  border-bottom-color: var(--lve2-accent, #d87848);
}

body.lve-design-v1 .lve2-experience-copy > p,
body.lve-design-v1 .lve2-guide-card .wp-block-post-excerpt,
body.lve-design-v1 .lve2-post-card > .wp-block-post-excerpt,
body.lve-design-v1 .lve2-post-card__body > .wp-block-post-excerpt,
body.lve-design-v1 .lve2-catalog-card-body > p,
body.lve-design-v1 .lve2-fallback-catalog .lve2-post-card__body p {
  color: var(--lve2-muted);
  font-size: max(16px, 1rem);
  line-height: 1.65;
}

body.lve-design-v1 .lve2-experience-copy > small,
body.lve-design-v1 .lve2-experience-meta,
body.lve-design-v1 .lve2-guide-card .wp-block-post-date,
body.lve-design-v1 .lve2-post-card > .wp-block-post-date,
body.lve-design-v1 .lve2-post-card__body > .wp-block-post-date,
body.lve-design-v1 .lve2-catalog-meta,
body.lve-design-v1 .lve2-catalog-meta small,
body.lve-design-v1 .lve2-fallback-catalog .lve2-post-card__body time {
  font-size: max(14px, .875rem);
  line-height: 1.5;
  letter-spacing: .035em;
}

body.lve-design-v1 .lve2-catalog-meta {
  flex-wrap: wrap;
  gap: 8px 12px;
}

body.lve-design-v1 .lve2-catalog-card h3,
body.lve-design-v1 .lve2-guide-card h3,
body.lve-design-v1 .lve2-experience-copy h3,
body.lve-design-v1 .lve2-post-card > .wp-block-post-title,
body.lve-design-v1 .lve2-post-card__body > .wp-block-post-title {
  line-height: 1.12;
  letter-spacing: -.035em;
}

/* Let existing excerpts and titles remain readable instead of line-clipping. */
body.lve-design-v1 .lve2-post-card > .wp-block-post-title,
body.lve-design-v1 .lve2-post-card .wp-block-post-excerpt__excerpt {
  min-height: 0;
  display: block;
  overflow: visible;
  -webkit-line-clamp: unset;
}

body.lve-design-v1 .lve2-experience-copy,
body.lve-design-v1 .lve2-catalog-card-body {
  padding: clamp(22px, 2.4vw, 30px);
}

body.lve-design-v1 .lve2-experience-card.is-featured .lve2-experience-copy {
  padding: clamp(26px, 3vw, 42px);
}

/* Only the homepage hero is shortened; the desktop cinematic hero stays intact. */
@media (max-width: 900px) {
  body.lve-design-v1 .lve2-front .lve2-hero {
    /* The source Cover block also has an inline 760px minimum. */
    min-height: auto !important;
  }

  body.lve-design-v1 .lve2-front .lve2-hero > .wp-block-cover__inner-container {
    padding-block: clamp(40px, 7vw, 64px);
  }

  body.lve-design-v1 .lve2-front .lve2-hero h1 {
    font-size: clamp(3.4rem, 14vw, 4.5rem);
    line-height: .96;
    letter-spacing: -.055em;
  }

  body.lve-design-v1 .lve2-front .lve2-hero .lve2-kicker {
    margin-bottom: 18px;
  }

  body.lve-design-v1 .lve2-front .lve2-hero-lede {
    margin-top: 22px;
    color: #e1e7eb;
    font-size: max(18px, 1.125rem);
    line-height: 1.6;
  }

  body.lve-design-v1 .lve2-front .lve2-hero-actions {
    margin-top: 24px;
    gap: 10px;
  }
}

@media (max-width: 640px) {
  /* Collapse three nested block gutters into one readable phone column. */
  body.lve-design-v1 .lve2-front .lve2-hero {
    padding: 0;
  }

  body.lve-design-v1 .lve2-front .lve2-hero > .wp-block-cover__inner-container {
    width: 100%;
    margin-inline: 0;
    padding: 44px 24px 48px;
  }

  body.lve-design-v1 .lve2-front .lve2-hero .lve2-hero-layout {
    width: 100%;
    margin-inline: 0;
  }

  body.lve-design-v1 .lve2-front .lve2-hero-layout > .wp-block-group:not(.lve2-hero-pass) {
    padding-inline: 0;
  }

  body.lve-design-v1 .lve2-footer .lve2-footer-brand > p,
  body.lve-design-v1 .lve2-footer .wp-block-column > p,
  body.lve-design-v1 .lve2-footer li {
    font-size: max(16px, 1rem);
  }

  body.lve-design-v1 .lve2-footer-bottom {
    gap: 14px;
  }

  body.lve-design-v1 .lve2-experience-card.is-featured .lve2-experience-copy {
    padding: 24px 22px;
  }
}

/* Respect motion preferences only on the cards refined in this stylesheet. */
@media (prefers-reduced-motion: reduce) {
  body.lve-design-v1 .lve2-experience-card,
  body.lve-design-v1 .lve2-experience-image img,
  body.lve-design-v1 .lve2-guide-card,
  body.lve-design-v1 .lve2-post-card,
  body.lve-design-v1 .lve2-catalog-card,
  body.lve-design-v1 .lve2-catalog-image > img {
    transition: none;
  }

  body.lve-design-v1 .lve2-experience-card:hover,
  body.lve-design-v1 .lve2-experience-card:hover img,
  body.lve-design-v1 .lve2-guide-card:hover,
  body.lve-design-v1 .lve2-post-card:hover,
  body.lve-design-v1 .lve2-catalog-card:hover,
  body.lve-design-v1 .lve2-catalog-card:hover .lve2-catalog-image > img {
    transform: none;
  }
}
