/* Each idea gets its own reading space; scrolling remains entirely native. */
html[data-page="home"] .scroll-scene {
  min-height: 100svh;
  display: flex;
  align-items: center;
  padding-block: clamp(64px, 10svh, 120px);
  position: relative;
}
.scene-content:not(.shell) { width: 100%; }
html[data-page="home"] #work { padding-block: 0; }
html[data-page="home"] .offer-line { margin-bottom: 0; }
html[data-page="home"] #work .arial-areas { border: 0; }
html[data-page="home"] #work .arial-area { border: 0; padding-block: 0; width: 100%; }
html[data-page="home"] #work .service-scene { padding-block: clamp(72px, 10svh, 120px); }
html[data-page="home"] #work .services-scene .arial-area { width: min(1440px, calc(100% - 96px)); margin-inline: auto; padding-block: 0; gap: clamp(48px, 6vw, 96px); }
html[data-page="home"] #work .services-scene .arial-copy h3 { font-size: clamp(34px, 3.5vw, 46px); margin: 16px 0 20px; }
html[data-page="home"] #work .services-scene .arial-copy > p:last-child { font-size: 16px; line-height: 1.75; max-width: 540px; }
html[data-page="home"] #work .services-scene .expertise-illustration { max-width: 580px; margin-inline: auto; }

/* Native sticky panels retain earlier titles while the next panel rises. */
html[data-page="home"] #work .service-stack-layout { isolation: isolate; }
html[data-page="home"] #work .service-stack-layout::after { content: ''; display: block; height: clamp(180px, 40svh, 440px); }
html[data-page="home"] #work .service-stack-layout .service-scene { min-height: calc(100svh - var(--service-stack-top, 16px)); padding-block: 0; align-items: flex-start; background: var(--bg); border-top: 1px solid var(--line); }
html[data-page="home"] #work .service-stack-enabled .service-scene { position: sticky; top: var(--service-stack-top, 16px); }
html[data-page="home"] #work .service-stack-layout .service-scene:nth-child(1) { z-index: 1; }
html[data-page="home"] #work .service-stack-layout .service-scene:nth-child(2) { z-index: 2; }
html[data-page="home"] #work .service-stack-layout .service-scene:nth-child(3) { z-index: 3; }
html[data-page="home"] #work .service-stack-layout .arial-area { row-gap: 28px; padding-bottom: 48px; opacity: 1; transform: none; }
html[data-page="home"] #work .service-stack-layout .arial-copy { display: contents; }
html[data-page="home"] #work .service-stack-layout .service-heading { grid-column: 1 / -1; grid-row: 1; padding-block: 24px; min-width: 0; }
html[data-page="home"] #work .service-stack-layout .service-heading h3 { margin: 8px 0 0; }
html[data-page="home"] #work .service-stack-layout .service-heading h3 br { display: none; }
html[data-page="home"] #work .service-stack-layout .arial-copy > p:last-child { grid-column: 1; grid-row: 2; }
html[data-page="home"] #work .service-stack-layout .arial-example { grid-column: 2; grid-row: 2; }
@media (min-width: 801px) and (max-height: 800px) {
  html[data-page="home"] #work .service-stack-layout .service-heading { padding-block: 16px; }
  html[data-page="home"] #work .service-stack-layout .service-heading h3 { font-size: clamp(28px, 3vw, 38px); }
  html[data-page="home"] #work .service-stack-layout .arial-area { row-gap: 24px; padding-bottom: 32px; }
  html[data-page="home"] #work .service-stack-layout .expertise-illustration { max-width: 480px; }
}
html[data-page="home"] #studio { padding-block: 0; }
html[data-page="home"] .studio-entry { margin-block: 0; }
html[data-page="home"] .scroll-scene.contact-scene { min-height: calc(100svh - 100px); align-items: flex-end; padding: clamp(48px, 8svh, 96px) 0 24px; }
html[data-page="home"] .contact-scene #start,
html[data-page="home"] .contact-scene #start.is-open { padding: 0 0 24px; }
html[data-page="home"] .contact-scene .studio-entry { padding-block: 24px; border-bottom: 0; }

/* Enhancement is armed only after the controller is ready. No hidden HTML fallback. */
.scroll-scenes-enabled .scene-content,
.scroll-scenes-enabled [data-scene-self] {
  opacity: var(--scene-opacity, 1);
}
.scroll-scenes-enabled .scene-content { transform: translateY(var(--scene-shift, 0px)); }
.scroll-scenes-enabled .scroll-scene:focus-within > .scene-content,
.scroll-scenes-enabled [data-scene-self]:focus-within { opacity: 1; transform: none; }
.scroll-scenes-enabled #work .arial-area[data-flow] .arial-copy > * {
  opacity: 1; transform: none; transition: none;
}
.scroll-scenes-enabled #work .arial-area[data-flow]::before { display: none; }

@media (max-width: 800px) {
  html[data-page="home"] .scroll-scene { padding-block: 64px; }
  html[data-page="home"] #studio .delivery-grid { margin-top: 48px; }
  html[data-page="home"] #work .service-scene { min-height: 0; padding-block: 72px; }
  html[data-page="home"] #work .services-scene .arial-area { width: calc(100% - 48px); gap: 32px; }
  html[data-page="home"] #work .service-stack-layout .arial-area { grid-template-columns: minmax(0, 1fr); row-gap: 24px; padding-bottom: 32px; }
  html[data-page="home"] #work .service-stack-layout .service-heading { padding-block: 16px; }
  html[data-page="home"] #work .service-stack-layout .service-heading h3 { font-size: 22px; line-height: 1.15; }
  html[data-page="home"] #work .service-stack-layout .arial-example { grid-column: 1; grid-row: 3; }
}
@media (max-width: 380px) {
  html[data-page="home"] #work .services-scene .arial-area { width: calc(100% - 40px); }
}
@media (prefers-reduced-motion: reduce) {
  .scroll-scenes-enabled .scene-content,
  .scroll-scenes-enabled [data-scene-self] { opacity: 1; transform: none; }
  html[data-page="home"] #work .service-stack-enabled .service-scene { position: relative; top: auto; min-height: 0; }
}
@media print {
  html[data-page="home"] .scroll-scene,
  html[data-page="home"] .scroll-scene.contact-scene { min-height: 0; padding-block: 32px; }
  html[data-page="home"] #work .service-scene { padding-block: 32px; }
  html[data-page="home"] #work .service-stack-layout::after { display: none; }
  html[data-page="home"] #work .service-stack-enabled .service-scene { position: relative; top: auto; min-height: 0; padding-block: 32px; }
  .scene-content, [data-scene-self] { opacity: 1 !important; transform: none !important; }
}
