    /* ---- HOME PAGE STYLES ---- */

    /* Hero */
    .hero {
      background: var(--color-bg-dark);
      color: var(--color-text-inv);
      min-height: 90vh;
      display: flex;
      align-items: center;
      padding: calc(var(--nav-height) + var(--space-lg)) var(--page-padding) var(--space-lg);
    }

    .hero__inner {
      max-width: var(--max-width);
      margin: 0 auto;
      width: 100%;
      display: grid;
      grid-template-columns: 1.5fr 0.5fr;
      gap: var(--space-lg);
      align-items: center;
    }

    .hero__badge {
      background: var(--color-bg);
      padding: 28px;
      border-radius: 4px;
      box-shadow: 0 0 0 4px var(--color-accent-2);
    }
    .hero__badge img { width: 100%; height: auto; }

    .hero__eyebrow {
      font-family: var(--font-ui);
      font-size: 13px; letter-spacing: 5px; text-transform: uppercase;
      color: rgba(255,246,221,0.5);
      margin-bottom: 24px;
    }

    .hero__headline {
      font-size: clamp(64px, 9vw, 120px);
      color: var(--color-text-inv);
      line-height: 0.9;
      margin-bottom: 32px;
    }

    .hero__sub {
      font-size: 20px;
      color: rgba(255,246,221,0.65);
      max-width: 520px;
      line-height: 1.6;
      margin-bottom: 44px;
    }

    .hero__actions {
      display: flex; gap: 16px; align-items: center; flex-wrap: wrap;
    }

    /* Mission */
    .section-mission {
      padding: var(--space-xl) var(--page-padding);
      max-width: var(--max-width);
      margin: 0 auto;
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: var(--space-lg);
      align-items: center;
    }

    .mission__headline {
      font-size: clamp(36px, 4vw, 54px);
      margin-bottom: 24px;
    }

    .mission__body {
      font-size: 18px;
      color: var(--color-text-mid);
      line-height: 1.75;
      margin-bottom: 16px;
    }

    .mission__img {
      aspect-ratio: 4/5;
      background: var(--color-bg-alt);
    }

    /* Who it's for */
    .section-who {
      background: var(--color-bg-alt);
      padding: var(--space-xl) var(--page-padding);
    }

    .section-who__inner {
      max-width: 820px;
      margin: 0 auto;
      text-align: center;
    }

    .section-bold {
      font-family: var(--font-headline);
      font-size: clamp(28px, 4vw, 48px);
      line-height: 1.15;
      color: var(--color-text);
      margin-bottom: 24px;
    }

    .section-bold-sub {
      font-size: 19px;
      color: var(--color-text-mid);
      line-height: 1.75;
      max-width: 640px;
      margin: 0 auto;
    }

    /* Trips preview */
    .section-trips {
      padding: var(--space-xl) var(--page-padding);
      max-width: var(--max-width);
      margin: 0 auto;
    }

    .section-trips__header {
      display: flex;
      justify-content: space-between;
      align-items: baseline;
      margin-bottom: var(--space-md);
    }

    .section-trips__headline {
      font-size: clamp(32px, 4vw, 50px);
    }

    .section-trips__link {
      font-family: var(--font-ui);
      font-size: 13px; letter-spacing: 3px; text-transform: uppercase;
      color: var(--color-text-mid);
      transition: color var(--transition);
    }
    .section-trips__link:hover { color: var(--color-text); }

    .trip-card {
      display: grid;
      grid-template-columns: 1fr 1fr;
      border: 1px solid var(--color-rule);
    }

    .trip-card__img {
      min-height: 340px;
    }

    .trip-card__content {
      padding: var(--space-md);
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      border-left: 1px solid var(--color-rule);
    }

    .trip-card__tag {
      font-family: var(--font-ui);
      font-size: 12px; letter-spacing: 4px; text-transform: uppercase;
      color: var(--color-text-light);
      margin-bottom: 16px;
    }

    .trip-card__name {
      font-size: clamp(28px, 3vw, 42px);
      margin-bottom: 16px;
    }

    .trip-card__meta {
      font-family: var(--font-ui);
      font-size: 14px; letter-spacing: 2px; text-transform: uppercase;
      color: var(--color-text-mid);
      display: flex; gap: 24px; flex-wrap: wrap;
      margin-bottom: var(--space-md);
    }

    /* CTA */
    .section-cta {
      background: var(--color-bg-dark);
      color: var(--color-text-inv);
      padding: var(--space-xl) var(--page-padding);
      text-align: center;
    }

    .section-cta__headline {
      font-size: clamp(40px, 6vw, 72px);
      color: var(--color-text-inv);
      margin-bottom: 20px;
    }

    .section-cta__sub {
      font-size: 19px;
      color: rgba(255,246,221,0.6);
      max-width: 460px;
      margin: 0 auto 40px;
      line-height: 1.65;
    }

    /* Responsive */
    @media (max-width: 900px) {
      .section-mission {
        grid-template-columns: 1fr;
        padding: var(--space-lg) var(--page-padding-mob);
        gap: var(--space-md);
      }
      .mission__img { aspect-ratio: 16/9; }
      .who-grid { grid-template-columns: 1fr 1fr; }
      .section-who { padding: var(--space-lg) var(--page-padding-mob); }
      .section-trips { padding: var(--space-lg) var(--page-padding-mob); }
      .trip-card { grid-template-columns: 1fr; }
      .trip-card__content { border-left: none; border-top: 1px solid var(--color-rule); }
      .section-cta { padding: var(--space-lg) var(--page-padding-mob); }
    }

    @media (max-width: 560px) {
      .who-grid { grid-template-columns: 1fr; }
      .hero { padding: calc(var(--nav-height) + var(--space-md)) var(--page-padding-mob) var(--space-md); }
      .hero__actions { flex-direction: column; align-items: flex-start; }
      .hero__inner { grid-template-columns: 1fr; }
      .hero__badge { max-width: 220px; padding: 20px; }
    }
