/* Prototype: eight still-photo phases on one clock, no video/reset scene. */
.hero[data-hero-preview] .hero__slide { transition:opacity 600ms cubic-bezier(.4,0,.2,1); }
.hero[data-hero-preview] .hero__slide picture[data-hero-cat] { transition:opacity 600ms cubic-bezier(.4,0,.2,1); }
.proposal--grid .hero[data-hero-preview] .hero__slide[data-hero-slide="curry-first"] img { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 45%;mask-image:none; }
.proposal--grid .hero[data-hero-preview] .hero__slide[data-hero-slide="interior"] img { object-position:50% 50%;filter:none; }
@media(max-width:959px){
 .proposal--grid[data-delivery-page] .site-header.is-scrolled .brand { display:block; }
 .proposal--grid[data-delivery-page] .site-header.is-scrolled .brand span { font-size:30px; }
 .proposal--grid[data-delivery-page] .site-header.is-scrolled .brand small { margin-top:9px;font-size:10px; }
 .proposal--grid .hero[data-hero-preview] .hero__slide[data-hero-slide="interior"] img { object-position:35% 50%; }
 /* Keep the delivery hero's copy shade constant through interior crossfades. */
 .proposal--grid[data-delivery-page] .hero[data-hero-preview]::after {
  background:linear-gradient(90deg,rgb(12 18 13 / .52),rgb(12 18 13 / .08) 55%,transparent);
 }
}
@media(max-width:767px){
 /* Add 3px above the name and keep the hero/scroll brand positions identical. */
 .proposal--grid[data-delivery-page] .site-header,
 .proposal--grid[data-delivery-page] .site-header.is-scrolled { height:84px;padding:19px 12px 0;align-items:flex-start; }
 .proposal--grid[data-delivery-page] .site-header .brand,
 .proposal--grid[data-delivery-page] .site-header.is-scrolled .brand { padding:0 8px; }
}
@media(min-width:768px) and (max-width:959px){
 /* Preserve the tablet's existing hero name size and position after scrolling. */
 .proposal--grid[data-delivery-page] .site-header.is-scrolled { height:101px;padding:24px 12px 0;align-items:flex-start; }
 .proposal--grid[data-delivery-page] .site-header.is-scrolled .brand { padding:0 8px; }
 .proposal--grid[data-delivery-page] .site-header.is-scrolled .brand span { font-size:34px; }
}
@media(prefers-reduced-motion:reduce){
 .hero[data-hero-preview] .hero__slide,.hero[data-hero-preview] .hero__slide picture[data-hero-cat] { transition:none; }
}

/* Keep the upper clay bowl readable in the portrait photograph on desktop. */
@media(min-width:960px){
 /* Preserve the hero's stacked brand and control positions after scrolling. */
 .proposal--grid[data-delivery-page] .site-header.is-scrolled { height:96px;padding:24px 24px 0;align-items:flex-start; }
 .proposal--grid[data-delivery-page] .site-header.is-scrolled .brand { display:block; }
 .proposal--grid[data-delivery-page] .site-header.is-scrolled .brand small { margin-top:9px; }
 .proposal--grid .hero[data-hero-preview] .hero__slide[data-hero-slide="curry"] img { object-position:50% 10%; }
}

/* Candidate: reduced motion keeps timed photographs without camera motion. */
@media(prefers-reduced-motion:reduce){
 .hero[data-hero-preview][data-hero-playback-state="photos-only"] .hero__media { display:block; }
 .js .proposal--grid .hero[data-hero-preview][data-hero-playback-state="photos-only"] .hero__fallback { opacity:0; }
}

/* Keep the existing first-photo fallback visible until a decoded slide is available. */
.js .proposal--grid .hero[data-hero-preview]:not([data-hero-photo-scene]) .hero__fallback { opacity:1; }
