.home-page {
  background: var(--color-ink-950);
}

.home-page .section {
  padding-block: var(--space-10);
}

.home-page h1,
.home-page h2,
.home-page h3 {
  text-wrap: balance;
}

.home-page a:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 3px;
}

.home-hero {
  position: relative;
  overflow: hidden;
  padding-block: clamp(3.5rem, 8vw, 7rem);
}

.home-hero::before {
  position: absolute;
  inset: 0 auto auto 0;
  width: min(70vw, 58rem);
  height: 100%;
  background: radial-gradient(circle at 26% 42%, rgba(36, 50, 47, 0.35), transparent 66%);
  content: "";
  pointer-events: none;
}

.home-hero__grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 52fr) minmax(0, 48fr);
  gap: var(--space-8);
  align-items: center;
}

.home-hero__grid > * { min-width: 0; width: 100%; }
.home-hero__copy { max-width: 36.875rem; }
.home-hero__lead { max-width: 36.875rem; color: var(--color-text-secondary); font-size: var(--font-size-18); line-height: var(--line-height-18); }
.home-hero__meta { max-width: 35rem; }
.home-hero__scope { display: flex; max-width: 30rem; align-items: center; gap: var(--space-3); margin-bottom: var(--space-6); padding: var(--space-3) 0; border-block: 1px solid var(--color-line-subtle); color: var(--color-text-secondary); font-size: var(--font-size-14); line-height: var(--line-height-14); }
.home-hero__scope strong { color: var(--color-success-herb); font-family: var(--font-heading); font-size: 2.75rem; line-height: 1; }
.home-hero__actions { display: flex; width: fit-content; max-width: 100%; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
.home-hero__actions small { color: var(--color-text-secondary); }
.home-hero__download { min-height: 3rem; }
.home-hero__media { width: 100%; margin: 0; padding: var(--space-3); border: 1px solid var(--color-line-subtle); border-radius: var(--radius-feature); background: var(--color-surface-800); }
.home-hero__media img { width: 100%; aspect-ratio: 16 / 10; border: 1px solid var(--color-line-subtle); object-fit: cover; }

.home-text-link { display: inline-flex; min-height: 2.75rem; align-items: center; color: var(--color-accent-saffron-hover); font-weight: 700; text-underline-offset: 0.18em; }
.home-text-link:hover { color: var(--color-accent-saffron); text-decoration-thickness: 2px; }

.home-loop__intro { max-width: 40.625rem; }
.home-loop__intro p:last-child, .home-review__intro p:last-child, .home-kitchen__intro p:last-child, .home-floor__intro p:last-child, .home-strategy__intro p:last-child, .home-topics__intro p:last-child { color: var(--color-text-secondary); }
.home-loop__steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-7); }
.home-loop__steps > * { min-width: 0; width: 100%; }
.home-loop__step { padding-top: var(--space-4); border-top: 1px solid var(--color-line-subtle); }
.home-step__number, .home-card__number { display: block; margin-bottom: var(--space-3); color: var(--color-accent-saffron); font-family: var(--font-heading); font-size: var(--font-size-36); font-weight: 700; line-height: 1; }
.home-loop__step h3 { font-size: var(--font-size-22); }
.home-loop__step p { color: var(--color-text-secondary); font-size: var(--font-size-14); line-height: var(--line-height-body); }
.home-loop__callout { width: 100%; margin-top: var(--space-7); }
.home-loop__callout ul { margin-bottom: 0; }

.home-review { background: var(--color-ink-900); }
.home-review__intro { max-width: 40rem; }
.home-review__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-7); }
.home-review__cards > * { min-width: 0; width: 100%; }
.home-review__card { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.home-review__card > * { min-width: 0; }
.home-review__card h3, .home-floor__card h3 { margin-bottom: 0; }
.home-review__card p, .home-floor__card p { margin-bottom: 0; color: var(--color-text-secondary); }
.home-review__links { display: flex; width: 100%; flex-direction: column; align-items: flex-start; gap: var(--space-2); }
.home-review__links a { display: inline-flex; min-height: 2.75rem; align-items: center; }
.home-review__audience { max-width: 47.5rem; margin-top: var(--space-6); }

.home-kitchen__intro { max-width: 40.625rem; }
.home-kitchen__grid { display: grid; grid-template-columns: minmax(0, 42fr) minmax(0, 58fr); gap: var(--space-8); align-items: start; margin-top: var(--space-7); }
.home-kitchen__grid > * { min-width: 0; width: 100%; }
.home-kitchen__media { margin: 0; }
.home-kitchen__media img { width: 100%; aspect-ratio: 4 / 3; border: 1px solid var(--color-line-subtle); object-fit: cover; }
.home-kitchen__copy { display: flex; max-width: 40.625rem; flex-direction: column; align-items: stretch; gap: var(--space-5); }
.home-kitchen__copy > * { min-width: 0; width: 100%; }
.home-kitchen__copy article { padding-bottom: var(--space-5); border-bottom: 1px solid var(--color-line-subtle); }
.home-kitchen__copy article:last-child { padding-bottom: 0; border-bottom: 0; }
.home-kitchen__copy article > :last-child { margin-bottom: 0; }
.home-kitchen__copy p { color: var(--color-text-secondary); }

.home-floor__intro { max-width: 38.75rem; }
.home-floor__cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-7); }
.home-floor__cards > * { min-width: 0; width: 100%; }
.home-floor__card { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.home-floor__card > * { min-width: 0; }
.home-floor__note { max-width: 47.5rem; margin-top: var(--space-6); }
.home-floor__note p { color: var(--color-text-secondary); }
.home-floor__note ul { margin-bottom: 0; }

.home-vip { background: var(--color-ink-900); }
.home-vip__grid { display: grid; grid-template-columns: minmax(0, 55fr) minmax(0, 45fr); gap: var(--space-8); align-items: start; }
.home-vip__grid > * { min-width: 0; width: 100%; }
.home-vip__copy { max-width: 35rem; }
.home-vip__copy p { color: var(--color-text-secondary); }
.home-vip__media { margin: 0; }
.home-vip__media img, .home-vip__mobile-media img { width: 100%; aspect-ratio: 16 / 10; border: 1px solid var(--color-line-subtle); object-fit: cover; }
.home-vip__mobile-media { display: none; width: 100%; margin-bottom: var(--space-5); }

.home-strategy__intro { max-width: 40.625rem; }
.home-strategy__steps { display: flex; max-width: 44.75rem; flex-direction: column; align-items: stretch; gap: var(--space-6); margin-top: var(--space-7); }
.home-strategy__steps > * { min-width: 0; width: 100%; }
.home-strategy__step { display: grid; grid-template-columns: 6rem minmax(0, 1fr); gap: var(--space-4); }
.home-strategy__step > * { min-width: 0; }
.home-strategy__step > span { color: var(--color-accent-saffron); font-family: var(--font-heading); font-size: var(--font-size-36); font-weight: 700; line-height: 1; }
.home-strategy__step h3 { margin-bottom: var(--space-3); }
.home-strategy__step p { margin-bottom: 0; color: var(--color-text-secondary); }
.home-strategy__warning { max-width: 43.75rem; margin-top: var(--space-7); }
.home-strategy__warning h3 { margin-bottom: var(--space-3); }
.home-strategy__warning p:last-child { margin-bottom: 0; color: var(--color-text-secondary); }
.home-warning__label { margin-bottom: var(--space-2); color: var(--color-alert-coral); font-size: var(--font-size-12); font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; }

.home-topics { background: var(--color-ink-900); }
.home-topics__intro { max-width: 40.625rem; }
.home-topics__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-7); }
.home-topics__grid > * { min-width: 0; width: 100%; }
.home-topic { display: flex; min-height: 15rem; flex-direction: column; align-items: flex-start; gap: var(--space-3); color: var(--color-text-primary); text-decoration: none; }
.home-topic > * { min-width: 0; }
.home-topic:hover { color: var(--color-text-primary); }
.home-topic span { color: var(--color-accent-saffron); font-size: var(--font-size-12); font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; }
.home-topic h3, .home-topic p { margin-bottom: 0; }
.home-topic p { color: var(--color-text-secondary); }
.home-topic b { margin-top: auto; color: var(--color-accent-saffron-hover); text-decoration: underline; text-underline-offset: 0.18em; }
.home-topic:hover b { color: var(--color-accent-saffron); text-decoration-thickness: 2px; }

.home-note { padding-block: var(--space-7); }
.home-note__panel { display: flex; max-width: 47.5rem; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.home-note__panel > * { min-width: 0; }
.home-note__panel h2, .home-note__panel p { margin-bottom: 0; }
.home-note__panel p { max-width: 38.75rem; color: var(--color-text-secondary); }

.home-final { padding-top: var(--space-7); }
.home-final__panel { padding: clamp(3rem, 5vw, 4rem); border-top: 3px solid var(--color-accent-saffron); border-radius: var(--radius-feature); background: var(--color-ink-900); }
.home-final__content { display: flex; max-width: 37.5rem; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.home-final__content > * { min-width: 0; }
.home-final__content h2, .home-final__content p { margin-bottom: 0; }
.home-final__content p { color: var(--color-text-secondary); }
.home-final__actions { display: flex; width: 100%; flex-direction: column; align-items: flex-start; gap: var(--space-3); margin-top: var(--space-2); }
.home-final__actions > * { min-width: 0; }
.home-final__actions small { color: var(--color-text-secondary); }
.home-final__download { min-width: 17.5rem; min-height: 3rem; }

@media (max-width: 1099px) {
  .home-loop__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-topics__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 1023px) {
  .home-kitchen__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
  .home-kitchen__copy { max-width: 40.625rem; }
  .home-vip__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
  .home-vip__copy { max-width: 35rem; }
  .home-vip__media { display: none; }
  .home-vip__mobile-media { display: block; }
}

@media (max-width: 999px) {
  .home-review__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-review__cards > :nth-child(3) { grid-column: 1 / -1; }
}

@media (max-width: 959px) {
  .home-hero__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
  .home-hero__copy { max-width: 36.875rem; }
  .home-hero__media { max-width: 48rem; }
}

@media (max-width: 899px) {
  .home-strategy__step { grid-template-columns: minmax(0, 1fr); gap: var(--space-3); }
}

@media (max-width: 799px) {
  .home-floor__cards { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 767px) {
  .home-page .section { padding-block: var(--space-8); }
  .home-hero { padding-block: clamp(3.5rem, 12vw, 4.5rem); }
  .home-hero__lead { font-size: var(--font-size-16); line-height: var(--line-height-body); }
  .home-hero__scope { margin-bottom: var(--space-5); }
  .home-hero__download, .home-final__download { width: 100%; min-width: 0; }
  .home-loop__steps { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); }
  .home-loop__callout { margin-top: var(--space-6); }
  .home-review__cards { grid-template-columns: minmax(0, 1fr); }
  .home-review__cards > :nth-child(3) { grid-column: auto; }
  .home-review__card, .home-floor__card { gap: var(--space-3); }
  .home-kitchen__grid, .home-vip__grid { gap: var(--space-5); }
  .home-strategy__steps { margin-top: var(--space-6); }
  .home-topic { min-height: auto; }
  .home-final__panel { padding: var(--space-5); }
}

@media (max-width: 639px) {
  .home-topics__grid { grid-template-columns: minmax(0, 1fr); }
}
