#project.is-duolife { background: #fff; }
#project.is-duolife .proj-topbar, #project.is-duolife #projHeaderEl { display: none; }
.duo-study { background: #fff; color: #111; font-family: Arial, sans-serif; padding-bottom: 70px; }
.duo-study :where(section) { display: block; width: auto; min-height: 0; }
.duo-study figure { margin: 0; min-width: 0; }
.duo-study img { display: block; width: 100%; height: auto; }
.duo-study p { font-size: clamp(13px, 1vw, 18px); line-height: 1.65; margin: 0; }
.duo-study p + p { margin-top: 24px; }
.duo-study h1, .duo-study h2 { font-size: clamp(27px, 3.05vw, 60px); line-height: 1.03; letter-spacing: -.015em; font-weight: 700; text-transform: uppercase; margin: 0 0 30px; }
.duo-study h3 { font-size: clamp(15px, 1.5vw, 27px); line-height: 1.15; font-weight: 700; text-transform: uppercase; margin: 0 0 28px; }
.duo-contained { width: 80%; max-width: 1620px; margin-inline: auto; }
.duo-hero { aspect-ratio: 2020 / 738; }
.duo-hero img { height: 100%; object-fit: cover; }
.duo-intro { padding-block: clamp(48px, 5vw, 110px) clamp(54px, 5vw, 100px); }
.duo-about { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 5vw; margin-left: 10%; }
.duo-about > figure { align-self: start; }
.duo-about > figure img { aspect-ratio: 1; object-fit: cover; }
.duo-scope-intro { margin-top: clamp(48px, 6vw, 115px); }
.duo-services { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(16px, 1.5vw, 32px); margin-top: clamp(60px, 8vw, 160px); }
.duo-service { display: flex; flex-direction: column; min-width: 0; }
.duo-service figure { padding-top: 32px; margin-top: auto; }
.duo-event { text-align: center; margin-block: clamp(64px, 8vw, 160px); }
.duo-banner { width: 100%; }
.duo-partnership { margin-top: clamp(55px, 7vw, 140px); }
.duo-gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(12px, 1.5vw, 32px); margin-top: clamp(40px, 5vw, 100px); }
.duo-gallery > div { display: flex; flex-direction: column; gap: clamp(12px, 1.5vw, 32px); }
.duo-tools { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4vw; margin-top: clamp(64px, 8vw, 160px); }
.duo-tools > figure { align-self: start; }
.duo-finish { width: min(420px, 40%); margin: clamp(70px, 9vw, 180px) auto 60px !important; }
.duo-signoff { display: flex; align-items: center; flex-direction: column; gap: 30px; font-size: 13px; }
.duo-signoff .logo { color: #111; }
@media (max-width: 760px) {
  .duo-contained { width: calc(100% - 40px); }
  .duo-study h1, .duo-study h2 { font-size: clamp(27px, 5.4vw, 40px); line-height: 1.1; margin-bottom: 24px; }
  .duo-study h3 { font-size: 18px; margin-bottom: 20px; }
  .duo-study h1 br, .duo-study h2 br, .duo-study h3 br { display: none; }
  .duo-about { grid-template-columns: 1fr; margin-left: 0; gap: 40px; }
  .duo-about-copy { padding-inline: 20px; }
  .duo-services { grid-template-columns: 1fr; gap: 50px; }
  .duo-service figure { padding-top: 24px; }
  .duo-event { text-align: left; }
  .duo-gallery { grid-template-columns: 1fr; gap: 20px; }
  .duo-gallery > div { gap: 20px; }
  .duo-tools { grid-template-columns: 1fr; gap: 40px; }
  .duo-finish { width: min(300px, 65%); }
}


/* Keep the white layout clear of the shared dark viewport overlay. */
body:has(#project.is-duolife.active) .foggy-footer { display: none; }
