﻿/* Responsive project showcase safeguards. */
.project-heading,
.theseus-header {
  height: auto !important;
  min-height: 0;
}

.project-heading > div {
  min-width: 0;
}

.project-heading h2 {
  text-wrap: balance;
}

.jenna-stage .project-heading {
  grid-template-columns: minmax(0, 7fr) minmax(280px, 5fr);
}

.jenna-stage .project-heading h2 {
  max-width: 14ch;
  font-size: clamp(46px, 4.6vw, 74px);
  line-height: .98;
}

.project-interface,
.jenna-opening,
.theseus-grid,
.service-browser {
  min-width: 0;
}
/* Restore the established desktop hero: headline and planner side by side.
   Scoped to 1051px+ so it doesn't fight the tablet 2-row stacked grid
   (homepage.css, 761-1050px) which needs its own grid-template-rows. */
@media (min-width: 1051px) {
  .hero {
    grid-template-columns: 5.8vw minmax(0, 61vw) 1fr !important;
  }

  .hero-copy {
    grid-column: 2 !important;
    padding-right: 4.7vw;
  }

  .hero > .planner {
    display: block;
    grid-column: 3 !important;
  }

  .hero h1,
  .hero-foot {
    max-width: none;
  }
}

@media (max-width: 1100px) {
  .jenna-stage .project-heading {
    grid-template-columns: 1fr;
  }

  .jenna-stage .project-heading h2 {
    max-width: 15ch;
  }
}

@media (max-width: 760px) {
  .project-heading h2 br {
    display: none;
  }

  .jenna-stage .project-heading h2 {
    max-width: none;
    font-size: clamp(40px, 12vw, 58px);
    line-height: .98;
  }

  .project-heading > p {
    max-width: 34ch;
  }

  .interface-window,
  .interface-window img {
    max-width: 100%;
  }

  .route-selector,
  .browser-note {
    min-width: 0;
  }
}



.possibilities-invite{padding:clamp(72px,8vw,138px) clamp(24px,7.2vw,138px);background:#f2efe8;color:#090908;border-block:1px solid rgba(9,9,8,.16)}.possibilities-invite>div{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:8vw;align-items:end;margin-top:clamp(44px,7vw,110px)}.possibilities-invite h2{margin:0;font-size:clamp(54px,7vw,126px);line-height:.9;letter-spacing:-.06em}.possibilities-invite h2 em{font-family:var(--serif);font-weight:400}.possibilities-invite>div>div p{margin:0 0 32px;color:#77736c;line-height:1.7}.possibilities-invite a{display:flex;justify-content:space-between;padding:16px 0;border-bottom:1px solid;text-decoration:none;text-transform:uppercase;letter-spacing:.14em;font-size:11px}@media(max-width:760px){.possibilities-invite>div{grid-template-columns:1fr;gap:36px}.possibilities-invite h2{font-size:clamp(48px,15vw,72px)}}
