/* Homepage visual rhythm and contrast refresh. */
[data-page="index"] main > section { position: relative; }

/* 1. Light founder introduction. */
[data-page="index"] .meet-richard {
  background: #fff;
  color: #13283b;
}

/* 2. Dark interactive starting point. */
[data-page="index"] .journey-finder {
  background: linear-gradient(135deg, #245f85 0%, #245f85 100%);
  color: #fff;
}
[data-page="index"] .journey-finder h2,
[data-page="index"] .journey-finder .finder-question { color: #fff; }
[data-page="index"] .journey-finder .finder-intro > p { color: #d6e5ed; }
[data-page="index"] .journey-finder .text-link { color: #8ed8f4; }
[data-page="index"] .journey-finder .eyebrow.red { color: #ff7c87; }
[data-page="index"] .journey-finder .finder-card { color: #13283b; }
[data-page="index"] .journey-finder .finder-card .finder-question { color: #072744; }

/* 4. Dark video chapter with a visual preview. */
[data-page="index"] .home-video-invite {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 470px);
  gap: clamp(45px, 7vw, 100px);
  align-items: center;
  padding: clamp(76px, 8vw, 106px) max(24px, calc((100vw - 1180px) / 2));
  background: linear-gradient(135deg, #041b30 0%, #0b416b 100%);
  color: #fff;
}
[data-page="index"] .home-video-copy { max-width: 680px; }
[data-page="index"] .home-video-invite h2 { color: #fff; }
[data-page="index"] .home-video-invite .eyebrow { color: #8ed8f4; }
[data-page="index"] .home-video-invite p:not(.eyebrow) {
  max-width: 640px;
  color: #d6e5ed;
  line-height: 1.7;
}
[data-page="index"] .home-video-invite .btn.light {
  margin-top: 1.35rem;
  background: #fff;
  color: #072744;
}
.home-learning-visual {
  position: relative;
  display: block;
  min-height: 330px;
  overflow: hidden;
  border: 8px solid rgba(255,255,255,.96);
  background: #072744;
  color: #fff;
  text-decoration: none;
  box-shadow: 0 24px 55px rgba(0,0,0,.34);
}
.home-learning-visual img {
  width: 100%;
  height: 100%;
  min-height: 330px;
  object-fit: cover;
  object-position: center;
}
.home-learning-visual::after {
  content: "";
  position: absolute;
  inset: 40% 0 0;
  background: linear-gradient(transparent, rgba(3,20,35,.96));
}
.home-learning-play {
  position: absolute;
  z-index: 2;
  left: 50%;
  top: 45%;
  width: 64px;
  height: 64px;
  display: grid;
  place-items: center;
  transform: translate(-50%,-50%);
  border-radius: 50%;
  background: #fff;
  color: #d7192d;
  font-size: 1.35rem;
  box-shadow: 0 10px 28px rgba(0,0,0,.28);
}
.home-learning-caption {
  position: absolute;
  z-index: 2;
  left: 24px;
  right: 24px;
  bottom: 22px;
  color: #fff;
  font-size: 1.18rem;
  font-weight: 800;
  line-height: 1.25;
}
.home-learning-caption strong {
  display: block;
  margin-bottom: 5px;
  color: #8ed8f4;
  font-size: .72rem;
  letter-spacing: .14em;
  text-transform: uppercase;
}

/* 5. Light workshop promotion. */
[data-page="index"] .home-workshop-feature {
  grid-template-columns: minmax(0, 1fr) 240px;
  padding: clamp(76px, 8vw, 106px) max(24px, calc((100vw - 1120px) / 2));
  background: #f2f7fa;
  color: #243f52;
}
[data-page="index"] .home-workshop-feature h2 { color: #072744; }
[data-page="index"] .home-workshop-feature p:not(.eyebrow) { color: #405f73; }

/* 6. Dark workshop story. */
[data-page="index"] .workshop-story {
  background: linear-gradient(145deg, #245f85, #245f85);
  color: #fff;
}
[data-page="index"] .workshop-story h2 { color: #fff; }
[data-page="index"] .workshop-story-copy > p:not(.eyebrow) { color: #d6e5ed; }

/* 7. Light community chapter. */
[data-page="index"] .gta-home-preview {
  background: #fff;
  color: #243f52;
}
[data-page="index"] .gta-home-preview h2 { color: #072744; }
[data-page="index"] .gta-home-preview p:not(.eyebrow) { color: #405f73; }

/* 8. Dark closing/contact chapter. Form remains a high-contrast white surface. */
[data-page="index"] .contact.page-inquiry {
  background: linear-gradient(135deg, #245f85 0%, #245f85 100%);
  color: #fff;
}
[data-page="index"] .contact.page-inquiry h2 { color: #fff; }
[data-page="index"] .contact.page-inquiry .eyebrow.red { color: #ff7c87; }
[data-page="index"] .contact.page-inquiry .contact-copy > p:not(.eyebrow),
[data-page="index"] .contact.page-inquiry .agent-card span { color: #d6e5ed; }
[data-page="index"] .contact.page-inquiry .agent-card {
  border-top-color: rgba(255,255,255,.24);
}
[data-page="index"] .contact.page-inquiry .agent-card a { color: #8ed8f4; }
[data-page="index"] .contact.page-inquiry form {
  background: #f2f7fa;
  color: #13283b;
}
[data-page="index"] .contact.page-inquiry form label { color: #072744; }
[data-page="index"] .contact.page-inquiry .home-location-link { color: #405f73; }

@media (max-width: 850px) {
  [data-page="index"] .home-video-invite { grid-template-columns: 1fr; }
  .home-learning-visual { min-height: 280px; }
  .home-learning-visual img { min-height: 280px; }
}
@media (max-width: 700px) {
  [data-page="index"] .home-video-invite { padding: 70px 20px; }
  [data-page="index"] .home-video-invite .btn.light { width: auto; }
  [data-page="index"] .home-workshop-feature { padding: 70px 20px; }
}

/* Richard guides attention to the existing homepage search input. */
[data-page="index"] .home-search .search-richard {
  display: block;
  width: min(100%, 280px);
  height: auto;
  justify-self: end;
  pointer-events: none;
}
@media (min-width: 960px) {
  [data-page="index"] .home-search .search-inner {
    --portrait-width: 340px;
    max-width: 1180px;
    padding-right: 340px;
  }
  [data-page="index"] .home-search .search-input-row {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }
  [data-page="index"] .home-search .search-input-row button {
    justify-self: start;
  }
  [data-page="index"] .home-search .search-richard {
    position: absolute;
    width: var(--portrait-width);
    max-width: none;
    left: calc(100% - var(--portrait-width) * .024 + 16px);
    top: 28px;
    transform: translateY(-32.4%);
  }
}
@media (max-width: 959px) {
  [data-page="index"] .home-search .search-input-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
  }
  [data-page="index"] .home-search .search-richard {
    grid-column: 1 / -1;
    margin-top: .5rem;
  }
}
@media (max-width: 640px) {
  [data-page="index"] .home-search .search-input-row {
    grid-template-columns: minmax(0, 1fr);
  }
  [data-page="index"] .home-search .search-richard {
    width: min(100%, 240px);
  }
}

/* One workshop chapter combines the invitation and real conversations. */
[data-page="index"] .home-workshop-combined {
  grid-template-columns: minmax(0, 1.3fr) minmax(0, .7fr);
  gap: 32px;
  align-items: center;
}
[data-page="index"] .home-workshop-combined h3 { color: #072744; font-size: 1.35rem; margin-top: 24px; }
.home-workshop-combined .home-workshop-copy,.home-workshop-combined .home-workshop-video { min-width: 0; }
.home-workshop-combined .home-workshop-video { width: 100%; max-width: 280px; justify-self: center; }
.home-workshop-moments { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-top: 12px; }
.home-workshop-moments figure { margin: 0; min-width: 0; }
.home-workshop-moments img { display: block; width: 100%; height: 280px; object-fit: cover; border-radius: 10px; }
.home-workshop-moments figcaption { font-size: .875rem; line-height: 1.5; color: #405f73; margin-top: 10px; }
@media(max-width: 800px) {
  [data-page="index"] .home-workshop-combined { grid-template-columns: minmax(0, 1fr); }
  .home-workshop-moments { grid-template-columns: minmax(0, 1fr); }
  .home-workshop-moments img { height: auto; }
}

/* Upcoming events: local collage styles; existing homepage chapters stay unchanged. */
[data-page="index"] .home-workshop-upcoming { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,4vw,56px);align-items:center; }
.home-workshop-upcoming .home-event-gallery { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-width:0; }
.home-workshop-upcoming .home-event-gallery figure { position:relative;margin:0;min-width:0;overflow:hidden;border-radius:12px;background:#dce8ef; }
.home-workshop-upcoming .home-event-gallery img { display:block;width:100%;height:100%;aspect-ratio:4/3;object-fit:cover; }
.home-workshop-upcoming .home-event-featured { grid-column:1/-1; }
.home-workshop-upcoming .home-event-featured img { aspect-ratio:16/10;object-position:left 45%; }
.home-workshop-upcoming .home-event-featured figcaption { position:absolute;bottom:0;left:0;right:0;padding:36px 20px 16px;background:linear-gradient(transparent,rgba(7,39,68,.88));color:#fff;font-size:.9rem;font-weight:700; }
.home-workshop-upcoming .home-event-gallery-note { grid-column:1/-1;font-size:.85rem!important;margin:0; }
@media(max-width:800px) { [data-page="index"] .home-workshop-upcoming { grid-template-columns:minmax(0,1fr);gap:28px; }.home-workshop-upcoming .home-event-gallery{gap:10px;} }
@media(max-width:420px) { .home-workshop-upcoming .home-event-featured figcaption{font-size:.8rem;padding:28px 12px 12px;} }
