/* NezHost homepage v8: project-led editorial direction. */

body.home-page {
  --v8-black: #050505;
  --v8-ink: #0a0a0a;
  --v8-paper: #f1eee8;
  --v8-orange: #ff741d;
  --v8-line: rgba(244, 242, 238, 0.16);
  --v8-ease: cubic-bezier(0.22, 1, 0.36, 1);
}

body.home-page .home-v3-section {
  padding: 5.75rem 0;
}

body.home-page .home-v3-section-head {
  padding-bottom: 2.8rem;
}

body.home-page .home-v3-section h2 {
  max-width: 980px;
  font-size: 5rem;
  line-height: 0.94;
}

/* Hero */
body.home-page #home.home-v3-hero {
  min-height: 720px;
  height: min(82svh, 860px);
  max-height: 860px;
}

body.home-page .home-v3-hero__shade {
  background:
    linear-gradient(90deg, rgba(5, 5, 5, 0.98) 0%, rgba(5, 5, 5, 0.9) 30%, rgba(5, 5, 5, 0.2) 65%, rgba(5, 5, 5, 0.04) 100%),
    linear-gradient(0deg, rgba(5, 5, 5, 0.45) 0%, transparent 32%);
}

body.home-page .home-v3-hero__inner {
  padding-top: 10.25rem;
  padding-bottom: 0;
}

body.home-page .home-v3-hero__copy {
  width: min(820px, 66%);
}

body.home-page .home-v3-hero h1 {
  font-size: 7rem;
  line-height: 0.88;
}

body.home-page .home-v3-hero__copy > p {
  max-width: 590px;
  margin: 1.6rem 0 1.65rem;
}

body.home-page .home-v8-hero-reel {
  position: relative;
  width: 100%;
  margin-top: auto;
  overflow: hidden;
  border-top: 1px solid rgba(244, 242, 238, 0.28);
  border-bottom: 1px solid var(--v8-line);
  background: rgba(5, 5, 5, 0.84);
}

body.home-page .home-v8-hero-reel__track {
  display: flex;
  width: max-content;
  animation: homeV8HeroReel 28s linear infinite;
  animation-play-state: paused;
}

body.home-page .home-v3-hero.is-v7-live .home-v8-hero-reel__track {
  animation-play-state: running;
}

body.home-page .home-v8-hero-reel__group {
  display: flex;
  flex: none;
  align-items: center;
}

body.home-page .home-v8-hero-reel__group span {
  display: inline-flex;
  min-height: 5.8rem;
  align-items: center;
  gap: 1.1rem;
  padding: 0 2.5rem;
  border-right: 1px solid var(--v8-line);
  color: #f4f2ee;
  font-size: 1.45rem;
  font-weight: 600;
  white-space: nowrap;
}

body.home-page .home-v8-hero-reel__group b {
  color: var(--v8-orange);
  font-size: 0.66rem;
  font-weight: 700;
}

@keyframes homeV8HeroReel {
  to { transform: translate3d(-50%, 0, 0); }
}

/* Work */
body.home-page .home-v3-projects {
  padding-top: 2.75rem;
  padding-bottom: 6.5rem;
}

body.home-page .home-v3-section-head--projects {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
}

body.home-page .home-v7-projects__layout {
  display: block;
}

body.home-page .home-v7-projects__tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(244, 242, 238, 0.3);
  border-bottom: 1px solid var(--v8-line);
}

body.home-page .home-v7-projects__tabs button {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  width: 100%;
  min-height: 6.2rem;
  align-content: center;
  gap: 0.25rem 0.85rem;
  padding: 1.15rem 1.25rem;
  border: 0;
  border-left: 1px solid var(--v8-line);
  background: transparent;
  color: rgba(244, 242, 238, 0.52);
  transition: background-color 0.55s ease, color 0.55s ease;
}

body.home-page .home-v7-projects__tabs button:first-child {
  border-left: 0;
}

body.home-page .home-v7-projects__tabs button::before {
  top: auto;
  right: 1.25rem;
  bottom: -1px;
  left: 1.25rem;
  width: auto;
  height: 2px;
  transform: scaleX(0);
  transform-origin: left center;
}

body.home-page .home-v7-projects__tabs button span {
  grid-row: 1 / span 2;
}

body.home-page .home-v7-projects__tabs button strong {
  font-size: 1rem;
}

body.home-page .home-v7-projects__tabs button em {
  font-size: 0.68rem;
}

body.home-page .home-v7-projects__tabs button[aria-selected="true"] {
  padding-left: 1.25rem;
  background: rgba(255, 116, 29, 0.07);
  color: #f4f2ee;
}

body.home-page .home-v7-projects__tabs button[aria-selected="true"]::before {
  transform: scaleX(1);
}

body.home-page .home-v3-projects__list {
  min-height: 690px;
  border: 0;
}

body.home-page .home-v3-project {
  grid-template-columns: 1fr;
  grid-template-rows: 530px auto;
  min-height: 690px;
  clip-path: inset(6% 0 0 0);
  transform: translate3d(0, 26px, 0);
  transition:
    opacity 0.16s ease,
    clip-path 0s linear 0.18s,
    transform 0s linear 0.18s;
}

body.home-page .home-v3-project.is-active {
  clip-path: inset(0);
  transform: translate3d(0, 0, 0);
  transition:
    opacity 0.38s ease 0.16s,
    clip-path 0.72s var(--v8-ease) 0.12s,
    transform 0.72s var(--v8-ease) 0.12s;
}

body.home-page .home-v3-project__media {
  min-height: 530px;
  border: 0;
  border-bottom: 1px solid var(--v8-line);
  background: #0b0b0b;
}

body.home-page .home-v3-project__media img {
  object-fit: contain;
  transform: none;
  animation: none;
  will-change: auto;
}

body.home-page .home-v3-project__body {
  display: grid;
  grid-template-columns: minmax(16rem, 0.85fr) minmax(18rem, 1fr) auto;
  grid-template-areas:
    "title summary button"
    "meta summary button";
  gap: 0.8rem 3rem;
  align-items: center;
  padding: 1.7rem 0;
  border-bottom: 1px solid var(--v8-line);
  background: transparent;
}

body.home-page .home-v3-project__meta {
  grid-area: meta;
  justify-content: flex-start;
  gap: 1rem;
  padding: 0;
  border: 0;
}

body.home-page .home-v3-project__title {
  grid-area: title;
  margin: 0;
}

body.home-page .home-v3-project__title h3 {
  font-size: 2rem;
}

body.home-page .home-v3-project__summary {
  grid-area: summary;
  margin: 0;
  -webkit-line-clamp: 3;
}

body.home-page .home-v3-project__body .home-v3-button {
  grid-area: button;
  width: auto;
  min-width: 10.5rem;
  margin: 0;
}

body.home-page .home-v7-marquee {
  display: none;
}

/* Manifesto */
body.home-page .home-v3-about {
  border-top: 0;
  background: var(--v8-paper);
  color: var(--v8-ink);
}

body.home-page .home-v3-about .home-v3-eyebrow {
  color: #d95000;
}

body.home-page .home-v3-about h2,
body.home-page .home-v3-about .home-v3-section-intro > p,
body.home-page .home-v3-about .home-v3-text-link {
  color: var(--v8-ink);
}

body.home-page .home-v3-about .home-v3-section-intro > p {
  opacity: 0.68;
}

body.home-page .home-v3-about .home-v3-text-link::before {
  background: #d95000;
}

body.home-page .home-v8-manifesto {
  display: flex;
  flex-wrap: wrap;
  gap: 0 0.24em;
  margin: 1rem 0 0;
  color: var(--v8-ink);
  font-size: 8rem;
  font-weight: 620;
  line-height: 0.88;
}

body.home-page .home-v8-manifesto span:nth-child(2) {
  color: #e95b08;
}

/* React Bits Flowing Menu direction */
body.home-page .home-v3-fit {
  background: var(--v8-black);
}

body.home-page .home-v3-fit__head {
  padding-bottom: 3rem;
}

body.home-page .home-v8-flow-menu {
  margin: 0;
  padding: 0;
  border-bottom: 1px solid rgba(244, 242, 238, 0.3);
  list-style: none;
}

body.home-page .home-v8-flow-menu > li {
  position: relative;
  min-height: 9rem;
  overflow: hidden;
  border-top: 1px solid rgba(244, 242, 238, 0.3);
  outline: none;
}

body.home-page .home-v8-flow-menu__link {
  display: block;
  min-height: inherit;
  color: inherit;
  text-decoration: none;
  outline: none;
}

body.home-page .home-v8-flow-menu > li:focus-within {
  outline: 2px solid var(--v8-orange);
  outline-offset: -2px;
}

body.home-page .home-v8-flow-menu__base {
  display: grid;
  grid-template-columns: 3rem 4rem minmax(0, 1fr) minmax(19rem, 0.55fr);
  min-height: 9rem;
  align-items: center;
  gap: 1.1rem;
  padding: 1rem 1.25rem;
}

body.home-page .home-v8-flow-menu__number {
  color: var(--v8-orange);
  font-size: 0.7rem;
}

body.home-page .home-v8-flow-menu__icon,
body.home-page .home-v8-flow-menu__icon svg {
  width: 2.6rem;
  height: 2.6rem;
}

body.home-page .home-v8-flow-menu__icon svg {
  fill: none;
  stroke: var(--v8-orange);
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.45;
}

body.home-page .home-v8-flow-menu__base small {
  display: block;
  margin-bottom: 0.45rem;
  color: rgba(244, 242, 238, 0.42);
  font-size: 0.64rem;
  text-transform: uppercase;
}

body.home-page .home-v8-flow-menu__base h3 {
  margin: 0;
  font-size: 2.5rem;
  line-height: 1;
}

body.home-page .home-v8-flow-menu__base p {
  max-width: 29rem;
  margin: 0;
  color: rgba(244, 242, 238, 0.56);
  font-size: 0.9rem;
  line-height: 1.55;
}

body.home-page .home-v8-flow-menu__link-label {
  display: flex;
  width: max-content;
  align-items: center;
  gap: 0.55rem;
  margin-top: 0.8rem;
  color: rgba(244, 242, 238, 0.76);
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1;
  text-transform: uppercase;
  transition: color 220ms ease;
}

body.home-page .home-v8-flow-menu__link-label i {
  color: var(--v8-orange);
  font-size: 0.95rem;
  font-style: normal;
  transition: transform 220ms ease;
}

body.home-page .home-v8-flow-menu__link:is(:hover, :focus-visible) .home-v8-flow-menu__link-label {
  color: var(--v8-orange);
}

body.home-page .home-v8-flow-menu__link:is(:hover, :focus-visible) .home-v8-flow-menu__link-label i {
  transform: translateX(0.25rem);
}

body.home-page .home-v8-flow-menu__overlay {
  position: absolute;
  z-index: 2;
  inset: 0;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: var(--v8-orange);
  color: var(--v8-ink);
  pointer-events: none;
  transform: translate3d(0, 102%, 0);
  transition: transform 0.72s var(--v8-ease);
}

body.home-page .home-v8-flow-menu > li:is(.is-flow-active, :hover, :focus-within) .home-v8-flow-menu__overlay {
  transform: translate3d(0, 0, 0);
}

body.home-page .home-v8-flow-menu__track {
  display: flex;
  width: max-content;
  animation: homeV8Flow 18s linear infinite;
}

body.home-page .home-v3-fit:not(.is-v7-live) .home-v8-flow-menu__track {
  animation-play-state: paused;
}

body.home-page .home-v8-flow-menu__group {
  display: flex;
  flex: none;
  align-items: center;
  gap: 1.6rem;
  padding-right: 1.6rem;
}

body.home-page .home-v8-flow-menu__group strong {
  font-size: 4rem;
  font-weight: 620;
  line-height: 1;
  white-space: nowrap;
}

body.home-page .home-v8-flow-menu__group img {
  width: 9.5rem;
  height: 5.3rem;
  flex: none;
  object-fit: cover;
}

@keyframes homeV8Flow {
  to { transform: translate3d(-50%, 0, 0); }
}

/* Process */
body.home-page .home-v3-process {
  background: #090909;
}

body.home-page .home-v7-process {
  border: 0;
}

body.home-page .home-v7-process__tabs {
  border-top: 1px solid rgba(244, 242, 238, 0.28);
  border-bottom: 1px solid var(--v8-line);
}

body.home-page .home-v7-process__tabs button {
  min-height: 5rem;
  border-left: 0;
  color: rgba(244, 242, 238, 0.42);
}

body.home-page .home-v7-process__tabs button[aria-selected="true"] {
  background: transparent;
  color: #f4f2ee;
}

body.home-page .home-v3-process__steps {
  min-height: 320px;
  margin-top: 1.5rem;
}

body.home-page .home-v3-process__steps li {
  grid-template-columns: 110px minmax(0, 1fr) minmax(18rem, 0.58fr);
  min-height: 320px;
  padding: 2.5rem 2.7rem;
  background: var(--v8-paper);
  color: var(--v8-ink);
  clip-path: inset(0 0 12% 0);
  transform: translate3d(0, 22px, 0);
}

body.home-page .home-v3-process__steps li.is-process-current {
  clip-path: inset(0);
  transform: translate3d(0, 0, 0);
}

body.home-page .home-v7-process__icon svg {
  stroke: #e95b08;
}

body.home-page .home-v3-process__index span,
body.home-page .home-v3-process__index small,
body.home-page .home-v3-process__steps li > p,
body.home-page .home-v3-process__output span {
  color: rgba(10, 10, 10, 0.6);
}

body.home-page .home-v3-process__steps h3 {
  font-size: 3rem;
}

body.home-page .home-v3-process__output {
  border-left-color: rgba(10, 10, 10, 0.2);
}

/* Pricing */
body.home-page #pricing.home-v3-pricing {
  border-top: 0;
  background: var(--v8-paper) !important;
  color: var(--v8-ink);
}

body.home-page #pricing .home-v3-eyebrow {
  color: #d95000;
}

body.home-page #pricing h2,
body.home-page #pricing .home-v3-text-link {
  color: var(--v8-ink);
}

body.home-page #pricing .home-v3-text-link::before {
  background: #d95000;
}

body.home-page .home-v3-pricing__grid {
  border-top-color: rgba(10, 10, 10, 0.35);
  border-bottom-color: rgba(10, 10, 10, 0.22);
}

body.home-page .home-v3-price {
  min-height: 510px;
  padding: 1.8rem;
  border-left-color: rgba(10, 10, 10, 0.18);
  color: var(--v8-ink);
}

body.home-page .home-v3-price:hover {
  background: rgba(10, 10, 10, 0.025);
}

body.home-page .home-v3-price--primary,
body.home-page .home-v3-price--primary:hover {
  outline: 0;
  background: var(--v8-ink);
  color: #f4f2ee;
}

body.home-page #pricing .home-v3-price:not(.home-v3-price--primary) header small,
body.home-page #pricing .home-v3-price:not(.home-v3-price--primary) .home-v3-price__title p,
body.home-page #pricing .home-v3-price:not(.home-v3-price--primary) .home-v3-price__amount span,
body.home-page #pricing .home-v3-price:not(.home-v3-price--primary) .home-v3-price__meta span,
body.home-page #pricing .home-v3-price:not(.home-v3-price--primary) li {
  color: rgba(10, 10, 10, 0.62);
}

body.home-page #pricing .home-v3-price:not(.home-v3-price--primary) .home-v3-price__meta {
  border-color: rgba(10, 10, 10, 0.18);
}

body.home-page #pricing .home-v3-price--primary header small,
body.home-page #pricing .home-v3-price--primary .home-v3-price__title p,
body.home-page #pricing .home-v3-price--primary .home-v3-price__amount span,
body.home-page #pricing .home-v3-price--primary .home-v3-price__meta span,
body.home-page #pricing .home-v3-price--primary li {
  color: rgba(244, 242, 238, 0.68);
}

body.home-page #pricing .home-v3-price--primary .home-v3-price__meta {
  border-color: rgba(244, 242, 238, 0.18);
}

body.home-page .home-v3-price ul {
  counter-reset: home-v8-price-feature;
}

body.home-page .home-v3-price li {
  padding-left: 2rem;
}

body.home-page .home-v3-price li::before {
  color: #d95000;
  content: "0" counter(home-v8-price-feature);
  counter-increment: home-v8-price-feature;
  font-size: 0.62rem;
}

body.home-page #pricing .home-v3-price:not(.home-v3-price--primary) .home-v3-button {
  border-color: rgba(10, 10, 10, 0.36);
  color: var(--v8-ink);
}

/* Portal */
body.home-page .home-v3-portal__panel {
  overflow: hidden;
  border: 0;
  border-radius: 0;
}

body.home-page .home-v3-portal__panel > header {
  display: none;
}

body.home-page .home-v3-portal__panel ol {
  border-bottom: 1px solid var(--v8-line);
}

body.home-page .home-v3-portal__panel li {
  min-height: 7rem;
  padding: 1.25rem 1.5rem;
  border-top: 1px solid rgba(244, 242, 238, 0.27);
  border-bottom: 0;
  transition: background-color 0.7s var(--v8-ease), color 0.7s ease;
}

body.home-page .home-v3-portal__panel li::before {
  display: none;
}

body.home-page .home-v3-portal__panel li.is-portal-active {
  background: var(--v8-orange);
  color: var(--v8-ink);
}

body.home-page .home-v3-portal__panel li.is-portal-active em,
body.home-page .home-v3-portal__panel li.is-portal-active b {
  color: rgba(10, 10, 10, 0.62);
}

body.home-page .home-v3-portal__panel li.is-portal-active b::before {
  background: var(--v8-ink);
}

/* Reviews */
body.home-page .home-v3-reviews {
  padding-bottom: 6rem;
}

body.home-page .home-v3-review__track {
  min-height: 540px;
}

body.home-page .home-v7-review__media {
  min-height: 540px;
}

body.home-page .home-v7-review__media img {
  transform: none;
  animation: none;
}

body.home-page .home-v3-review blockquote {
  font-size: 2.35rem;
}

body.home-page .home-v3-review__tabs button[aria-selected="true"] {
  background: rgba(255, 116, 29, 0.06);
}

/* Contact */
body.home-page #contact.home-v3-contact {
  padding-bottom: 4.75rem;
}

body.home-page .home-v3-contact__layout {
  grid-template-columns: 300px minmax(0, 1fr);
  gap: 5rem;
}

body.home-page .home-v3-contact__steps {
  display: flex;
  gap: 1.5rem;
}

body.home-page .home-v3-contact__steps li {
  min-height: 0;
  flex: 1;
  align-items: flex-start;
  flex-direction: column;
  justify-content: flex-start;
  gap: 0.35rem;
  padding-top: 1rem;
  border-top: 1px solid var(--v8-line);
  border-bottom: 0;
}

@media (max-width: 1180px) {
  body.home-page .home-v3-hero h1 {
    font-size: 5.8rem;
  }

  body.home-page .home-v3-section h2 {
    font-size: 4.25rem;
  }

  body.home-page .home-v8-manifesto {
    font-size: 6rem;
  }

  body.home-page .home-v3-project__body {
    grid-template-columns: minmax(14rem, 0.8fr) minmax(16rem, 1fr) auto;
    gap: 0.8rem 2rem;
  }

  body.home-page .home-v8-flow-menu__base {
    grid-template-columns: 2.5rem 3.5rem minmax(0, 1fr) minmax(16rem, 0.58fr);
  }
}

@media (max-width: 820px) {
  body.home-page .home-v3-section {
    padding: 4.5rem 0;
  }

  body.home-page .home-v3-section h2 {
    font-size: 3.25rem;
  }

  body.home-page .home-v3-section-head--projects {
    grid-template-columns: 1fr;
    align-items: start;
    gap: 1.4rem;
  }

  body.home-page .home-v3-section-head--projects .home-v3-text-link {
    justify-self: start;
  }

  body.home-page #home.home-v3-hero {
    min-height: 700px;
    height: calc(100svh - 72px);
    max-height: 760px;
  }

  body.home-page .home-v3-hero__inner {
    padding-top: 8.5rem;
  }

  body.home-page .home-v3-hero__copy {
    width: 100%;
  }

  body.home-page .home-v3-hero h1 {
    font-size: 3.75rem;
  }

  body.home-page .home-v8-hero-reel__group span {
    min-height: 4.7rem;
    padding: 0 1.5rem;
    font-size: 1.05rem;
  }

  body.home-page .home-v3-projects {
    padding-top: 2.25rem;
  }

  body.home-page .home-v7-projects__tabs {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }

  body.home-page .home-v7-projects__tabs::-webkit-scrollbar {
    display: none;
  }

  body.home-page .home-v7-projects__tabs button {
    min-width: 72%;
    min-height: 5.2rem;
    flex: 0 0 72%;
    scroll-snap-align: start;
  }

  body.home-page .home-v3-projects__list,
  body.home-page .home-v3-project {
    min-height: 650px;
  }

  body.home-page .home-v3-project {
    grid-template-rows: 360px auto;
  }

  body.home-page .home-v3-project__media {
    min-height: 360px;
  }

  body.home-page .home-v3-project__body {
    grid-template-columns: 1fr auto;
    grid-template-areas:
      "title button"
      "summary summary"
      "meta meta";
    gap: 1rem 1.5rem;
  }

  body.home-page .home-v8-manifesto {
    font-size: 4.2rem;
  }

  body.home-page .home-v8-flow-menu > li,
  body.home-page .home-v8-flow-menu__base {
    min-height: 8rem;
  }

  body.home-page .home-v8-flow-menu__base {
    grid-template-columns: 2.2rem 3rem minmax(0, 1fr);
    gap: 0.8rem;
  }

  body.home-page .home-v8-flow-menu__base p {
    display: none;
  }

  body.home-page .home-v8-flow-menu__base h3 {
    font-size: 1.9rem;
  }

  body.home-page .home-v8-flow-menu__group strong {
    font-size: 3rem;
  }

  body.home-page .home-v8-flow-menu__group img {
    width: 7.2rem;
    height: 4rem;
  }

  body.home-page .home-v3-process__steps {
    min-height: 440px;
  }

  body.home-page .home-v3-process__steps li {
    grid-template-columns: 4rem 1fr;
    grid-template-rows: auto auto auto 1fr;
    min-height: 440px;
    padding: 2rem 1.5rem;
  }

  body.home-page .home-v7-process__icon {
    grid-row: 1 / span 3;
  }

  body.home-page .home-v3-process__index,
  body.home-page .home-v3-process__steps h3,
  body.home-page .home-v3-process__steps li > p {
    grid-column: 2;
  }

  body.home-page .home-v3-process__steps h3 {
    font-size: 2.35rem;
  }

  body.home-page .home-v3-process__output {
    grid-column: 1 / -1;
    grid-row: 4;
    min-height: auto;
    padding: 1.25rem 0 0;
    border-top: 1px solid rgba(10, 10, 10, 0.2);
    border-left: 0;
  }

  body.home-page .home-v3-portal__panel li {
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem 1rem;
  }

  body.home-page .home-v3-review__track {
    min-height: 590px;
  }

  body.home-page .home-v3-review__card {
    grid-template-rows: 250px minmax(0, 1fr);
  }

  body.home-page .home-v7-review__media {
    min-height: 0;
  }

  body.home-page .home-v3-contact__layout {
    grid-template-columns: 1fr;
    gap: 0;
  }
}

@media (max-width: 480px) {
  body.home-page .home-v3-section {
    padding: 3.8rem 0;
  }

  body.home-page .home-v3-section h2 {
    font-size: 2.7rem;
  }

  body.home-page .home-v3-hero h1 {
    font-size: 2.92rem;
  }

  body.home-page .home-v3-section-head--projects h2,
  body.home-page .home-v3-fit__head h2,
  body.home-page .home-v3-process h2 {
    font-size: 2.45rem;
  }

  body.home-page .home-v3-section-head--projects h2 > span,
  body.home-page .home-v3-fit__head h2 > span,
  body.home-page .home-v3-process h2 > span {
    white-space: nowrap;
  }

  body.home-page .home-v8-hero-reel__group span {
    min-height: 4.2rem;
    font-size: 0.94rem;
  }

  body.home-page .home-v3-projects__list,
  body.home-page .home-v3-project {
    min-height: 610px;
  }

  body.home-page .home-v3-project {
    grid-template-rows: 300px auto;
  }

  body.home-page .home-v3-project__media {
    min-height: 300px;
  }

  body.home-page .home-v3-project__body {
    grid-template-columns: 1fr;
    grid-template-areas:
      "title"
      "summary"
      "meta"
      "button";
  }

  body.home-page .home-v3-project__body .home-v3-button {
    width: 100%;
  }

  body.home-page .home-v8-manifesto {
    display: grid;
    font-size: 3.75rem;
  }

  body.home-page .home-v8-flow-menu__base {
    grid-template-columns: 2rem 2.6rem minmax(0, 1fr);
    padding-inline: 0.5rem;
  }

  body.home-page .home-v8-flow-menu__base h3 {
    font-size: 1.55rem;
  }

  body.home-page .home-v8-flow-menu__base small {
    font-size: 0.56rem;
  }

  body.home-page .home-v8-flow-menu__group strong {
    font-size: 2.5rem;
  }

  body.home-page .home-v3-review__track {
    min-height: 600px;
  }

  body.home-page .home-v3-review__card {
    grid-template-rows: 180px minmax(0, 1fr);
  }

  body.home-page .home-v3-review blockquote {
    margin-bottom: 1rem;
    font-size: 1.18rem;
    line-height: 1.28;
  }

  body.home-page .home-v7-review__copy {
    padding: 1.25rem 0;
  }

  body.home-page .home-v3-contact__steps {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.home-page .home-v8-hero-reel__track,
  body.home-page .home-v8-flow-menu__track {
    animation: none !important;
  }
}

@media (hover: none), (pointer: coarse) {
  body.home-page .home-v8-flow-menu__overlay {
    display: none;
  }
}
