@media (max-width: 700px) {
  .aoi-hero {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: auto;
    min-height: 0;
    margin: 0;
    background: #fff;
  }
  .aoi-hero .hero-content { order: 0; width: 100%; max-width: none; height: auto; margin: 0; padding: 52px 12% 60px; }
  .aoi-hero .hero-title { position: static; width: 100%; }
  .aoi-hero .hero-title::before { width: 31px; height: 1px; margin-bottom: 14px; background: #888; }
  .aoi-hero .hero-title .eyebrow { font-size: 11px; line-height: 17px; letter-spacing: .12em; font-weight: 400; margin-bottom: 20px; }
  .aoi-hero .hero-title h1 { font-size: 22px; line-height: 31px; font-weight: 600; letter-spacing: -.035em; }
  .aoi-hero .hero-title .english { margin-top: 7px; font-size: 14px; line-height: 22px; font-style: normal; color: #7189b2; }
  .aoi-hero .hero-project-description { margin-top: 26px; font-size: 12px; line-height: 20px; font-weight: 400; color: #888; word-break: keep-all; }
  .aoi-hero .aoi-desktop-description { display: none; }
  .aoi-hero .aoi-mobile-description[hidden] { display: inline; }
  .aoi-hero .hero-background {
    order: 1;
    position: relative;
    inset: auto;
    width: 100%;
    height: 88.3vw;
    background-size: auto 100%;
    background-position: 74% center;
    background-color: #e4e6e8;
  }

  .overview { height: auto; min-height: 0; padding: 0; background: #f8f8f8; }
  .overview > .wrap { display: contents; }
  .overview .section-title { align-items: baseline; gap: 12px; margin: 0; padding: 44px 9% 0; font-size: 16px; line-height: 24px; color: #929292; }
  .overview .section-title > span { font-size: 40px; line-height: 40px; color: #111; }
  .overview-grid { display: contents; }
  .overview-grid > div:first-child { padding: 20px 9% 56px; }
  .overview-grid > div:first-child h3 { margin: 0 0 18px; font-size: 20px; line-height: 28px; font-weight: 600; }
  .overview-grid > div:first-child p { font-size: 13px; line-height: 20px; color: #888; word-break: keep-all; }
  .overview .aoi-mobile-overview-break[hidden] { display: initial; }
  .overview .roles { padding: 36px 9%; border: 0; background: #fff; text-align: center; }
  .overview .roles h3 { margin: 0; font-size: 18px; line-height: 25px; font-weight: 500; }
  .overview .roles h3::after { content: ''; display: block; width: 173px; max-width: 100%; height: 1px; background: #ccc; margin: 14px auto 20px; }
  .overview .roles ul { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 0; margin: 0; }
  .overview .roles li { justify-content: center; gap: 6px; margin: 0; font-size: 14px; line-height: 22px; }
  .overview .roles .role-icon { width: 18px; height: 18px; }

  .process { --process-card-height: calc(100vw * 1.625); width: 100%; margin: 0; }
  .process-stage { height: calc(var(--process-card-height) + 64px); aspect-ratio: auto; background: #fff; }
  .process-stage::before { content: ''; position: absolute; inset: 0 0 64px; background: linear-gradient(to bottom, rgb(255 255 255 / 48%) 0%, rgb(255 255 255 / 35%) 30%, transparent 52%), url('../images/projects/inspection/process-background.png') 26% center / auto 100% no-repeat; }
  .process-inner { width: 100%; height: 100%; padding: 0; margin: 0; max-width: none; }
  .process .section-title { position: absolute; left: 9%; top: 30px; margin: 0; align-items: baseline; gap: 12px; font-size: 16px; line-height: 24px; color: #555; visibility: hidden; }
  .process:has(.process-slide[data-step='0'].is-active) .section-title { visibility: visible; }
  .process .section-title > span { font-size: 44px; line-height: 48px; color: #111; }
  .process-slides { inset: 0 0 64px; width: 100%; margin: 0; }
  .process-slide { height: 100%; }
  .process .step-copy { top: 100px; left: 13%; width: 75%; padding: 0; background: transparent; }
  .process .step-number { display: none; }
  .process .step-eyebrow { font-size: 11px; line-height: 18px; color: #444; }
  .process .step-copy h3 { margin: 4px 0 0; font-size: 16px; line-height: 24px; font-weight: 500; word-break: keep-all; }
  .process .step-description { margin-top: 18px; font-size: 13px; line-height: 21px; color: #444; word-break: keep-all; }
  .process .step-description br { display: none; }
  .process-slide > img { position: absolute; top: auto; bottom: 4%; width: 235%; height: auto; left: -103%; max-width: none; object-fit: contain; mix-blend-mode: normal; }
  .process-slide[data-step='0'] > img { top: auto; bottom: 4%; left: -2%; width: 100%; height: auto; object-fit: contain; }
  .process-slide[data-step='2'] > img { width: 250%; left: -112%; bottom: 3%; }
  .process .process-controls { inset: auto 0 0; height: 64px; display: flex; justify-content: center; align-items: center; gap: 0; background: #fff; }
  .process .scroll-hint { display: none; }
  .process .step-buttons { position: static; inset: auto; transform: none; gap: 12px; align-items: center; }
  .process .step-buttons::before,
  .process .step-buttons::after { font-size: 11px; line-height: 20px; color: #aaa; font-weight: 300; }
  .process .step-buttons::before { content: '01'; margin-right: 2px; }
  .process .step-buttons::after { content: '03'; margin-left: 2px; }
  .process .step-buttons button { width: 36px; height: 2px; }
  .process .slide-bar { border-radius: 0; }

  .manufacturing.wrap { width: 100%; max-width: none; padding: 30px 5.5% 46px; border-top: 1px solid #ccc; background: #fff; }
  .manufacturing .section-title { margin: 0 18px 30px; align-items: baseline; gap: 12px; font-size: 16px; line-height: 24px; color: #929292; white-space: nowrap; letter-spacing: .025em; }
  .manufacturing .section-title > span { font-size: 40px; line-height: 40px; color: #111; }
  .manufacturing .assembly-grid { height: auto; max-height: none; grid-template-columns: 1fr 1fr; grid-template-rows: auto auto auto; gap: 12px; }
  .manufacturing .assembly-main { display: contents; }
  .manufacturing .assembly-main .assembly-caption { position: static; grid-area: 1 / 1 / 2 / 3; width: auto; max-width: none; height: auto; padding: 0 4px; background: none; font-size: 14px; line-height: 20px; font-weight: 600; }
  .manufacturing .assembly-main > img { grid-area: 2 / 1 / 3 / 3; aspect-ratio: 2.1; width: 100%; height: auto; object-fit: cover; border-radius: 0; }
  .manufacturing .assembly-top { grid-area: 3 / 1; height: auto; aspect-ratio: 1.22; margin: 0; }
  .manufacturing .assembly-bottom { grid-area: 3 / 2; height: auto; aspect-ratio: 1.22; margin: 0; }
  .manufacturing .assembly-grid img { border-radius: 0; }
  .manufacturing .assembly-photo { border-radius: 0; overflow: hidden; }

  .design-points { padding: 30px 0 36px; background: #e7e7eb; }
  .design-points > .wrap { width: 86%; max-width: none; }
  .design-points .section-title { align-items: baseline; gap: 10px; margin: 0 10px; font-size: 16px; line-height: 24px; letter-spacing: .025em; }
  .design-points .section-title > span { font-size: 40px; line-height: 40px; }
  .design-points .points-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; margin-top: 50px; }
  .design-points .points-grid article { padding: 20px 6px 24px; border-top: 1px solid #c5c5ca; }
  .design-points .points-grid article + article { padding-top: 32px; }
  .design-points .point-number { display: none; }
  .design-points .points-grid h3 { min-height: 0; margin: 0 4px 8px; font-size: 16px; line-height: 24px; font-weight: 400; }
  .design-points .points-grid p { min-height: 0; margin: 0 4px; font-size: 13px; line-height: 18px; word-break: keep-all; }
  .design-points .point-image { width: 100%; height: auto; aspect-ratio: 2 / 1; margin: 26px 0 0; border-radius: 8px; overflow: hidden; }
  .design-points .corner-bloom,
  .design-points .corner-highlight { display: none; }
}
