@keyframes engine-page-in {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes engine-plate-in {
  from {
    opacity: 0;
    transform: translateY(18px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes engine-signal-pulse {
  0%,
  100% {
    opacity: 0.42;
    transform: scale(1);
  }
  50% {
    opacity: 0.85;
    transform: scale(1.035);
  }
}

@keyframes engine-trace-sweep {
  from {
    transform: translateX(-105%);
  }
  to {
    transform: translateX(105%);
  }
}

@keyframes engine-bus-scan {
  from {
    transform: translateX(-120%);
  }
  to {
    transform: translateX(220%);
  }
}

@keyframes engine-module-settle {
  from {
    opacity: 0.72;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes engine-field-breathe {
  0%,
  100% {
    opacity: 0.62;
  }
  50% {
    opacity: 0.92;
  }
}

@keyframes engine-row-review {
  0%,
  72%,
  100% {
    background-color: transparent;
  }
  12%,
  24% {
    background-color: rgba(91, 143, 156, 0.12);
  }
}

@keyframes engine-event-glow {
  0%,
  100% {
    box-shadow: inset 0 0 0 999px rgba(91, 143, 156, 0);
  }
  50% {
    box-shadow: inset 0 0 0 999px rgba(91, 143, 156, 0.09);
  }
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: 78px;
}

.engine-page {
  animation: engine-page-in 620ms ease-out both;
}

.engine-nav,
.engine-subnav {
  backdrop-filter: blur(18px);
  transition: border-color 180ms ease, background-color 180ms ease, box-shadow 180ms ease;
}

.engine-mark,
.engine-subnav__brand,
.engine-nav nav a,
.engine-subnav nav a {
  transition: color 170ms ease, opacity 170ms ease, transform 170ms ease;
}

.engine-mark:hover,
.engine-subnav__brand:hover {
  transform: translateY(-1px);
}

.engine-nav nav a,
.engine-subnav nav a {
  position: relative;
}

.engine-nav nav a::after,
.engine-subnav nav a::after {
  position: absolute;
  right: 0;
  bottom: -0.38rem;
  left: 0;
  height: 1px;
  content: "";
  background: currentColor;
  opacity: 0;
  transform: scaleX(0.45);
  transition: opacity 170ms ease, transform 170ms ease;
}

.engine-nav nav a:hover::after,
.engine-subnav nav a:hover::after {
  opacity: 0.62;
  transform: scaleX(1);
}

.engine-cta-row a,
.engine-document-list__action a,
.engine-inquiry-card a,
.engine-subpage-cta a,
.engine-blue-copy__link {
  transition: transform 170ms ease, border-color 170ms ease, background-color 170ms ease, box-shadow 170ms ease;
}

.engine-cta-row a:hover,
.engine-document-list__action a:hover,
.engine-inquiry-card a:hover,
.engine-subpage-cta a:hover,
.engine-blue-copy__link:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 38px rgba(14, 30, 33, 0.16);
}

.engine-system-steps > div,
.engine-architecture-grid article,
.engine-occlusion-card,
.engine-constraint-card,
.engine-document-list article,
.engine-document-ledger article,
.engine-inquiry-tracks article,
.engine-application-list article,
.engine-brief-grid article {
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease, background-color 180ms ease;
}

.engine-system-steps > div:hover,
.engine-architecture-grid article:hover,
.engine-occlusion-card:hover,
.engine-constraint-card:hover,
.engine-document-list article:hover,
.engine-document-ledger article:hover,
.engine-inquiry-tracks article:hover,
.engine-application-list article:hover,
.engine-brief-grid article:hover {
  transform: translateY(-3px);
  border-color: rgba(73, 103, 92, 0.38);
  box-shadow: 0 18px 42px rgba(21, 33, 30, 0.1);
}

.engine-plate {
  animation: engine-plate-in 560ms ease-out both;
}

.engine-hero-figure img,
.engine-application-figure img,
.engine-blue-figure img {
  transition: transform 420ms ease, filter 420ms ease;
}

.engine-blue-figure a {
  display: block;
  height: 100%;
  color: inherit;
}

.engine-blue-figure a:focus-visible {
  outline: 2px solid rgba(91, 143, 156, 0.85);
  outline-offset: -5px;
}

.engine-application-list article:hover img,
.engine-blue-link:hover img {
  transform: scale(1.018);
  filter: saturate(1.04) contrast(1.02);
}

.engine-hero-figure {
  transition: border-color 180ms ease, box-shadow 180ms ease;
}

.engine-hero-figure:hover {
  border-color: rgba(91, 143, 156, 0.56);
  box-shadow: 0 22px 64px rgba(30, 38, 35, 0.12);
}

.engine-hero-figure:hover img {
  transform: none;
  filter: contrast(1.03) brightness(0.96);
}

.engine-architecture-map,
.engine-occlusion-grid,
.engine-constraint-grid {
  position: relative;
  overflow: hidden;
}

.engine-architecture-map::after,
.engine-constraint-grid::after {
  position: absolute;
  inset: 0 auto 0 0;
  width: 34%;
  content: "";
  pointer-events: none;
  background: linear-gradient(90deg, transparent, rgba(91, 143, 156, 0.1), transparent);
  animation: engine-bus-scan 7.8s ease-in-out infinite;
}

.engine-flow article,
.engine-occlusion-ledger article,
.engine-constraint-stack article,
.engine-lookback-frames article,
.engine-replay-ledger article {
  animation: engine-module-settle 620ms ease both;
  transition: transform 180ms ease, border-color 180ms ease, background-color 180ms ease, box-shadow 180ms ease;
}

.engine-flow article:nth-child(2),
.engine-occlusion-ledger article:nth-child(2),
.engine-constraint-stack article:nth-child(2),
.engine-lookback-frames article:nth-child(2),
.engine-replay-ledger article:nth-child(2) {
  animation-delay: 80ms;
}

.engine-flow article:nth-child(3),
.engine-occlusion-ledger article:nth-child(3),
.engine-constraint-stack article:nth-child(3),
.engine-lookback-frames article:nth-child(3),
.engine-replay-ledger article:nth-child(3) {
  animation-delay: 160ms;
}

.engine-flow article:nth-child(4),
.engine-occlusion-ledger article:nth-child(4),
.engine-constraint-stack article:nth-child(4),
.engine-lookback-frames article:nth-child(4),
.engine-replay-ledger article:nth-child(4) {
  animation-delay: 240ms;
}

.engine-flow article:nth-child(5) {
  animation-delay: 320ms;
}

.engine-flow article:nth-child(6) {
  animation-delay: 400ms;
}

.engine-flow article:hover,
.engine-occlusion-ledger article:hover,
.engine-constraint-stack article:hover,
.engine-lookback-frames article:hover,
.engine-replay-ledger article:hover {
  transform: translateY(-2px);
  background-color: #fffefa;
  box-shadow: inset 0 0 0 999px rgba(91, 143, 156, 0.055);
}

.engine-lookback-frames article.is-event:hover {
  background-color: #0d0d0d;
  box-shadow: inset 0 0 0 999px rgba(91, 143, 156, 0.14);
}

.engine-occlusion-figure::after {
  animation: engine-field-breathe 5.4s ease-in-out infinite;
}

.engine-candidate-ledger tbody tr {
  animation: engine-row-review 8.4s ease-in-out infinite;
}

.engine-candidate-ledger tbody tr:nth-child(2) {
  animation-delay: 1.4s;
}

.engine-candidate-ledger tbody tr:nth-child(3) {
  animation-delay: 2.8s;
}

.engine-lookback-trace {
  overflow: hidden;
}

.engine-lookback-trace span {
  position: relative;
}

.engine-lookback-trace span::after {
  position: absolute;
  inset: -3px auto -3px 0;
  width: 38%;
  content: "";
  background: linear-gradient(90deg, transparent, rgba(126, 190, 169, 0.72), transparent);
  animation: engine-trace-sweep 4.8s ease-in-out infinite;
}

.engine-lookback-trace .is-event,
.engine-lookback-trace .is-event {
  animation: engine-signal-pulse 2.9s ease-in-out infinite;
}

.engine-lookback-frames article.is-event {
  animation:
    engine-module-settle 620ms ease both,
    engine-event-glow 2.9s 700ms ease-in-out infinite;
}

@media (min-width: 1120px) {
  .engine-nav {
    min-height: 63px;
    padding-block: 0.56rem;
  }

  .engine-mark__icon {
    width: 2.08rem;
    height: 2.08rem;
  }

  .engine-nav nav {
    gap: clamp(0.72rem, 1.4vw, 1.35rem);
  }

  .engine-hero {
    min-height: calc(100svh - 63px);
    grid-template-columns: minmax(0, 0.92fr) minmax(420px, 0.78fr);
    gap: clamp(1.35rem, 3vw, 3.4rem);
    align-items: center;
    padding-top: clamp(1rem, 2.4vh, 2rem);
    padding-bottom: clamp(1.1rem, 3vh, 2.35rem);
  }

  .engine-hero__copy {
    max-width: 690px;
  }

  .engine-hero h1 {
    max-width: 10.5em;
    margin-top: 0.28em;
    font-size: clamp(3.85rem, 6vw, 6.2rem);
    line-height: 0.86;
  }

  .engine-hero__intro {
    max-width: 39rem;
    margin-top: clamp(1rem, 1.7vh, 1.35rem);
    font-size: clamp(1.03rem, 1.23vw, 1.24rem);
    line-height: 1.5;
  }

  .engine-hero__bridge {
    max-width: 40rem;
    margin-top: 0.78rem;
    line-height: 1.48;
  }

  .engine-cta-row {
    gap: 0.72rem;
    margin-top: clamp(1rem, 2vh, 1.45rem);
  }

  .engine-cta-row a {
    min-height: 2.72rem;
    padding: 0.76rem 0.96rem;
    white-space: nowrap;
  }

  .engine-system-steps {
    gap: 0.72rem;
    margin-top: clamp(1rem, 2vh, 1.35rem);
  }

  .engine-system-steps > div {
    padding: 0.74rem 0.8rem;
  }

  .engine-hero__ledger {
    margin-top: clamp(0.82rem, 1.7vh, 1.2rem);
  }

  .engine-hero-figure {
    max-height: calc(100svh - 132px);
    overflow: hidden;
  }

  .engine-hero-figure img {
    max-height: clamp(330px, 52svh, 510px);
    object-fit: cover;
  }
}

/* Second-pass public-site composition. Keeps live copy intact while reducing
   the internal-document feel. */
@media (min-width: 1120px) {
  .engine-page {
    scroll-snap-type: none;
  }

  .engine-hero,
  .engine-plate {
    scroll-snap-align: none;
    scroll-margin-top: 0;
  }

  .engine-nav {
    padding-inline: clamp(3rem, 5vw, 5.5rem);
  }

  .engine-nav nav a[href="#constraints"],
  .engine-nav nav a[href="#lookback"],
  .engine-nav nav a[href="#provenance"] {
    display: none;
  }

  .engine-nav nav {
    gap: clamp(1.05rem, 1.8vw, 1.7rem);
  }

  .engine-hero {
    grid-template-columns: minmax(0, 0.9fr) minmax(390px, 0.72fr);
    gap: clamp(2rem, 4vw, 5rem);
    padding-inline: clamp(3.6rem, 5vw, 6rem);
  }

  .engine-hero h1 {
    max-width: 9.4em;
    font-size: clamp(3.65rem, 5.25vw, 5.65rem);
    letter-spacing: 0;
  }

  .engine-hero__intro {
    max-width: 37rem;
    font-size: clamp(1rem, 1.1vw, 1.16rem);
  }

  .engine-hero__bridge {
    max-width: 35.5rem;
  }

  .engine-hero-figure {
    box-shadow: 0 24px 70px rgba(30, 38, 35, 0.1);
  }

  .engine-hero-figure h2 {
    font-size: clamp(1.95rem, 2.45vw, 2.75rem);
    line-height: 0.98;
  }

  .engine-system-steps,
  .engine-hero__ledger {
    max-width: 42.5rem;
  }

  .engine-blue-link {
    grid-template-columns: minmax(420px, 0.43fr) minmax(0, 0.57fr);
    align-items: stretch;
    max-width: 1280px;
    padding: 0;
    overflow: hidden;
  }

  .engine-blue-figure {
    align-self: stretch;
    display: block;
    position: relative;
  }

  .engine-blue-figure img {
    width: 100%;
    height: 100%;
    min-height: 100%;
    object-fit: cover;
  }

  .engine-blue-figure figcaption {
    display: none;
  }

  .engine-blue-copy {
    align-content: center;
    gap: 1.25rem;
    padding: clamp(2.3rem, 4.2vw, 4.4rem);
  }

  .engine-blue-copy h2 {
    max-width: 10.5em;
    font-size: clamp(2.45rem, 3vw, 3.45rem);
    line-height: 0.98;
  }

  .engine-blue-copy p {
    max-width: 42rem;
    font-size: clamp(1rem, 1.08vw, 1.14rem);
    line-height: 1.65;
  }

  .engine-plate,
  .engine-subpage {
    padding-inline: clamp(3.6rem, 5vw, 6rem);
  }

  .engine-plate:not(.engine-blue-link) {
    display: block;
    height: auto;
    min-height: 0;
    max-height: none;
    margin-top: clamp(1.2rem, 2vw, 2rem);
    margin-bottom: clamp(1.2rem, 2vw, 2rem);
    padding-block: clamp(2rem, 3.2vw, 3.4rem);
    overflow: visible;
  }

  .engine-blue-link {
    height: auto;
    max-height: none;
    margin-top: clamp(1.2rem, 2vw, 2rem);
    margin-bottom: clamp(1.2rem, 2vw, 2rem);
    padding: 0;
    overflow: hidden;
  }

  .engine-plate__ref {
    margin-bottom: clamp(0.75rem, 1.4vw, 1.25rem);
  }

  .engine-plate__caption {
    margin-bottom: clamp(1rem, 1.8vw, 1.55rem);
  }

  .engine-plate__caption h2 {
    font-size: clamp(2.15rem, 3vw, 3.35rem);
    line-height: 1;
  }

  .engine-plate__caption p {
    max-width: 56rem;
    font-size: clamp(0.96rem, 1.05vw, 1.08rem);
    line-height: 1.55;
  }

  .engine-architecture-map,
  .engine-occlusion-grid,
  .engine-constraint-grid,
  .engine-timeline,
  .engine-application-list,
  .engine-document-list {
    min-height: 0;
  }

  .engine-flow article {
    min-height: 0;
    padding: clamp(0.85rem, 1.3vw, 1.2rem);
  }

  #occlusion .engine-occlusion-grid {
    grid-template-columns: minmax(0, 0.58fr) minmax(360px, 0.42fr);
  }

  #occlusion .engine-occlusion-figure img {
    height: clamp(320px, 42svh, 430px);
    object-fit: cover;
  }

  #occlusion .engine-occlusion-ledger {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #occlusion .engine-occlusion-ledger article {
    padding: clamp(0.9rem, 1.5vw, 1.3rem);
  }

  #constraints .engine-constraint-grid {
    grid-template-columns: minmax(280px, 0.31fr) minmax(0, 0.69fr);
  }

  #constraints .engine-constraint-stack article {
    gap: 0.6rem;
    padding: clamp(0.72rem, 1.05vw, 1rem);
  }

  #constraints .engine-constraint-stack p {
    font-size: clamp(0.76rem, 0.9vw, 0.82rem);
    line-height: 1.48;
  }

  #constraints .engine-candidate-ledger__head {
    gap: 0.55rem;
    padding: clamp(0.85rem, 1.25vw, 1.15rem);
  }

  #constraints .engine-candidate-ledger__head strong {
    font-size: clamp(1.7rem, 2.45vw, 2.45rem);
    line-height: 1;
  }

  #constraints .engine-candidate-ledger th,
  #constraints .engine-candidate-ledger td {
    padding: clamp(0.48rem, 0.8vw, 0.7rem);
  }

  #constraints .engine-candidate-ledger p {
    padding: clamp(0.85rem, 1.25vw, 1.12rem);
    line-height: 1.5;
  }

  #lookback .engine-lookback-frames article {
    min-height: 0;
  }

  #lookback .engine-lookback-trace {
    height: clamp(4.5rem, 10svh, 7rem);
  }

  #lookback .engine-lookback-trace span {
    top: 50%;
  }

  #lookback .engine-lookback-trace i {
    top: calc(50% - 6px);
  }

  #lookback .engine-lookback-trace i.is-event {
    top: calc(50% - 9px);
  }

  #applications .engine-application-list article {
    min-height: 0;
  }

  #applications .engine-application-figure img {
    height: clamp(150px, 19svh, 220px);
    object-fit: cover;
  }

  #applications .engine-application-copy {
    gap: clamp(0.55rem, 1vw, 0.95rem);
    padding: clamp(0.85rem, 1.35vw, 1.15rem);
  }

  #applications .engine-application-meta {
    display: none;
  }

  #applications .engine-application-list {
    align-items: stretch;
  }

  #applications .engine-application-list article {
    min-height: 0;
  }

  #applications .engine-application-copy {
    gap: 0.75rem;
  }

  #applications .engine-application-list p {
    max-width: 26rem;
  }

  #documents .engine-document-list article {
    min-height: 0;
    padding: clamp(1rem, 1.65vw, 1.45rem);
  }
}

@media (min-width: 1120px) and (max-height: 760px) {
  .engine-nav {
    min-height: 58px;
    padding-block: 0.42rem;
  }

  .engine-hero {
    min-height: calc(100svh - 58px);
    gap: 1.25rem;
    padding-top: 0.72rem;
    padding-bottom: 0.86rem;
  }

  .engine-hero h1 {
    font-size: clamp(3.35rem, 5.35vw, 5.25rem);
  }

  .engine-hero__intro {
    margin-top: 0.72rem;
    font-size: 1rem;
    line-height: 1.42;
  }

  .engine-hero__bridge {
    margin-top: 0.52rem;
    line-height: 1.4;
  }

  .engine-cta-row,
  .engine-system-steps,
  .engine-hero__ledger {
    margin-top: 0.72rem;
  }

  .engine-system-steps > div {
    padding: 0.62rem 0.72rem;
  }

  .engine-hero-figure {
    max-height: calc(100svh - 112px);
  }

  .engine-hero-figure img {
    max-height: 45svh;
  }

  .engine-plate:not(.engine-blue-link),
  .engine-blue-link {
    height: auto;
    max-height: none;
    margin-top: 0.9rem;
    margin-bottom: 0.9rem;
    padding-top: 0.95rem;
    padding-bottom: 0.95rem;
  }

  .engine-blue-link {
    padding: 0;
    padding-top: 0;
    padding-bottom: 0;
  }

  .engine-plate__ref {
    margin-bottom: 0.55rem;
  }

  .engine-plate__caption {
    gap: 1rem;
    margin-bottom: 0.75rem;
  }

  .engine-plate__caption h2,
  .engine-blue-link h2 {
    font-size: clamp(1.85rem, 3.2vw, 2.55rem);
    line-height: 0.98;
  }

  .engine-plate__caption p,
  .engine-blue-copy p,
  .engine-candidate-ledger p {
    font-size: 0.82rem;
    line-height: 1.45;
  }

  .engine-flow article {
    gap: 0.45rem;
    padding: 0.65rem;
  }

  .engine-flow p,
  .engine-occlusion-ledger p,
  .engine-constraint-stack p,
  .engine-lookback-frames p,
  .engine-replay-ledger p,
  .engine-application-list p,
  .engine-document-list p {
    font-size: 0.68rem;
    line-height: 1.35;
  }

  #occlusion .engine-occlusion-figure img {
    height: 100%;
    min-height: 0;
    object-fit: cover;
  }

  #occlusion .engine-occlusion-figure figcaption {
    display: none;
  }

  #occlusion .engine-occlusion-ledger article {
    gap: 0.45rem;
    padding: 0.65rem;
  }

  #constraints .engine-constraint-stack article {
    gap: 0.45rem;
    padding: 0.65rem;
  }

  #constraints .engine-candidate-ledger__head {
    gap: 0.45rem;
    padding: 0.7rem;
  }

  #constraints .engine-candidate-ledger__head strong {
    font-size: 1.35rem;
  }

  #constraints .engine-candidate-ledger th,
  #constraints .engine-candidate-ledger td {
    font-size: 0.62rem;
    line-height: 1.28;
    padding: 0.45rem;
  }

  #constraints .engine-candidate-ledger p {
    padding: 0.7rem;
  }

  #lookback .engine-lookback-frames article {
    gap: 0.45rem;
    padding: 0.65rem;
  }

  #lookback .engine-lookback-trace {
    height: 3.5rem;
  }

  #lookback .engine-replay-ledger article {
    gap: 0.4rem;
    padding: 0.6rem;
  }

  #applications .engine-application-figure img {
    height: 118px;
  }

  #applications .engine-application-copy {
    gap: 0.45rem;
    padding: 0.65rem;
  }

  #applications .engine-application-meta {
    display: none;
  }

  .engine-blue-figure img {
    height: 100%;
    min-height: 0;
    object-fit: cover;
  }

  .engine-blue-figure figcaption {
    display: none;
  }

  .engine-blue-copy {
    gap: 0.8rem;
    padding: 1.25rem;
  }

  #documents .engine-document-list article {
    gap: 0.55rem;
    padding: 0.75rem;
  }

  #documents .engine-document-list small {
    display: none;
  }
}

@media (max-width: 760px) {
  .engine-nav {
    min-height: 76px;
    align-items: center;
    gap: 0.55rem;
    padding: 0.82rem 1.18rem;
  }

  .engine-mark {
    width: 100%;
  }

  .engine-mark__icon {
    width: 1.7rem;
    height: 1.7rem;
  }

  .engine-mark__text {
    font-size: 1.08rem;
  }

  .engine-nav nav {
    display: flex;
    width: 100%;
    justify-content: flex-start;
    gap: 1rem;
  }

  .engine-nav nav a {
    font-size: 0.62rem;
    letter-spacing: 0.1em;
  }

  .engine-nav nav a[href="#occlusion"],
  .engine-nav nav a[href="#constraints"],
  .engine-nav nav a[href="#lookback"],
  .engine-nav nav a[href="#haint-blue"],
  .engine-nav nav a[href="#provenance"] {
    display: none;
  }

  .engine-hero {
    min-height: auto;
    padding: 2rem 1.35rem 2.25rem;
  }

  .engine-hero h1 {
    max-width: 8.4em;
    font-size: clamp(3.05rem, 16vw, 4.05rem);
    line-height: 0.93;
  }

  .engine-hero__intro {
    margin-top: 1.1rem;
    font-size: 1.02rem;
    line-height: 1.48;
  }

  .engine-hero__bridge {
    display: none;
  }

  .engine-cta-row {
    gap: 0.7rem;
    margin-top: 1.35rem;
  }

  .engine-cta-row a {
    min-height: 2.78rem;
    padding: 0.78rem 0.92rem;
  }

  .engine-system-steps {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    margin-top: 1.05rem;
  }

  .engine-system-steps > div {
    min-width: 0;
    padding: 0.68rem 0.55rem;
  }

  .engine-system-steps span {
    font-size: 0.6rem;
    letter-spacing: 0.11em;
  }

  .engine-system-steps p {
    display: none;
  }

  .engine-hero__ledger {
    display: none;
  }

  .engine-hero-figure {
    margin-top: 1.25rem;
  }

  .engine-hero-figure h2 {
    font-size: 1.55rem;
    line-height: 1.02;
  }

  .engine-hero-figure img {
    max-height: 285px;
    object-fit: cover;
  }

  .engine-hero-figure dl {
    display: none;
  }

  .engine-blue-link {
    margin-inline: 0.85rem;
    padding: 0;
  }

  .engine-blue-figure img {
    min-height: 0;
    max-height: 260px;
    object-fit: cover;
  }

  .engine-blue-figure figcaption {
    gap: 0.85rem;
    padding: 1rem;
  }

  .engine-blue-figure figcaption dl {
    display: none;
  }

  .engine-blue-copy {
    gap: 1rem;
    padding: 1.45rem 1.15rem 1.65rem;
  }

  .engine-blue-copy h2 {
    font-size: clamp(2.2rem, 10.5vw, 3rem);
    line-height: 1;
  }

  .engine-blue-copy p {
    font-size: 1rem;
    line-height: 1.55;
  }

  .engine-plate {
    padding-top: 3.2rem;
    padding-bottom: 3.4rem;
  }

  .engine-plate__caption {
    grid-template-columns: minmax(0, 1fr);
  }

  .engine-plate__caption > * {
    grid-column: 1 / -1;
    max-width: 100%;
  }

  .engine-plate__caption h2,
  .engine-subpage h1 {
    font-size: clamp(2.55rem, 13vw, 3.55rem);
    line-height: 0.98;
  }

  .engine-subnav {
    min-height: 64px;
    padding: 1rem 1.35rem;
  }

  .engine-subpage {
    padding: 3.1rem 1.35rem 3.5rem;
  }

  .engine-document-ledger,
  .engine-inquiry-grid {
    margin-top: 2rem;
  }

  .engine-system-steps > div:hover,
  .engine-architecture-grid article:hover,
  .engine-occlusion-card:hover,
  .engine-constraint-card:hover,
  .engine-document-list article:hover,
  .engine-document-ledger article:hover,
  .engine-inquiry-tracks article:hover,
  .engine-application-list article:hover {
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 1ms !important;
  }
}
