/* Local draft: a full-frame film and a brief, stationary reveal.
   The original entrance remains available at ?intro=original. */
.quiet-intro.film-opening .hero .media{animation:quiet-film 1.2s ease-out both;clip-path:none;transform:none}
.quiet-intro.film-opening .hero .shade{animation:none;opacity:1}
.quiet-intro.film-opening .hero .nav{animation:none;background:linear-gradient(180deg,#10181188,transparent)}
.quiet-intro.film-opening .signature-brand{left:var(--page-edge);top:24px;transform:none;animation:quiet-reveal .8s ease-out .15s both}
.quiet-intro.film-opening .signature-art{mask:none}
.quiet-intro.film-opening .signature-reveal path{animation:none;stroke-dashoffset:0}
.quiet-intro.film-opening .hero .navlinks{animation:quiet-reveal .8s ease-out .25s both}
.quiet-intro.film-opening .hero .hero-copy{animation:quiet-reveal 1.1s ease-out .65s both;transform:none;clip-path:none}
.quiet-intro.film-opening .hero .hero-meta{animation:quiet-reveal .8s ease-out 1s both}
.quiet-intro.film-opening .skip-entrance{background:#222a2480;color:var(--paper);border-color:#f0f0e860;bottom:96px}
@keyframes quiet-film{from{opacity:.3}to{opacity:1}}
@keyframes quiet-reveal{from{opacity:0}to{opacity:1}}
.signature-portal{position:fixed;inset:0;width:100%;height:100%;z-index:50;pointer-events:none}
.portal-intro.film-opening .hero .media{animation:none;transform:none;clip-path:none;opacity:1}
.portal-intro.film-opening .signature-art{mask:none}
.portal-intro.film-opening .signature-reveal path{animation:none;stroke-dashoffset:0}
.portal-intro.film-opening .signature-brand{animation:none;left:var(--page-edge);top:24px;transform:none;opacity:0}
.portal-intro.film-opening .hero .nav{animation:none;background:none}
.portal-intro.film-opening .hero .shade,
.portal-intro.film-opening .hero .navlinks,
.portal-intro.film-opening .hero .hero-copy,
.portal-intro.film-opening .hero .hero-meta{animation:none;opacity:0;transform:none;clip-path:none}
.portal-intro.portal-running.film-opening .hero .shade{animation:quiet-reveal 1s ease 3.8s both}
.portal-intro.portal-running.film-opening .signature-brand,
.portal-intro.portal-running.film-opening .hero .navlinks{animation:quiet-reveal .8s ease 4.4s both}
.portal-intro.portal-running.film-opening .hero .hero-copy,
.portal-intro.portal-running.film-opening .hero .hero-meta{animation:quiet-reveal .85s ease 4.5s both}
.portal-intro.film-opening .skip-entrance{position:fixed;z-index:51;bottom:28px;background:transparent;color:var(--paper);border-color:#bdc5a466}
@media(prefers-reduced-motion:reduce){
 .signature-portal{display:none}
 .quiet-intro.film-opening .hero .media,
 .quiet-intro.film-opening .signature-brand,
 .quiet-intro.film-opening .hero .navlinks,
 .quiet-intro.film-opening .hero .hero-copy,
 .quiet-intro.film-opening .hero .hero-meta{animation:none;opacity:1}
}

/* Lens defocus follows the signature bloom, then clears as the site appears. */
.portal-intro.film-opening[data-portal-transition="light"] .hero > :not(.signature-portal):not(.skip-entrance){filter:blur(var(--intro-defocus,0px))}
/* Give the film a brief solo moment before the stationary content fades in. */
.portal-intro.film-opening[data-portal-transition="fade"] .hero .shade{animation:none;opacity:1}
.portal-intro.film-opening[data-portal-transition="fade"] .signature-brand,
.portal-intro.film-opening[data-portal-transition="fade"] .hero .navlinks,
.portal-intro.film-opening[data-portal-transition="fade"] .hero .hero-copy,
.portal-intro.film-opening[data-portal-transition="fade"] .hero .hero-meta{animation:none;opacity:var(--intro-content-opacity,0);transform:none;clip-path:none}

/* Restrained stagger: six pixels of rise, with 90ms between text groups. */
.portal-intro.film-opening[data-portal-transition="fade"] .hero .hero-copy{opacity:1;animation:none;transform:none}
.portal-intro.film-opening[data-portal-transition="fade"] .hero h1{opacity:var(--intro-title,0);transform:translateY(var(--intro-title-y,6px))}
.portal-intro.film-opening[data-portal-transition="fade"] .practice-byline{opacity:var(--intro-byline,0);transform:translateY(var(--intro-byline-y,6px))}
.portal-intro.film-opening[data-portal-transition="fade"] .hero-description>.hero-lead{opacity:var(--intro-lead,0);transform:translateY(var(--intro-lead-y,6px))}
.portal-intro.film-opening[data-portal-transition="fade"] .hero-description>p:not(.hero-lead){opacity:var(--intro-body,0);transform:translateY(var(--intro-body-y,6px))}
.portal-intro.film-opening[data-portal-transition="fade"] .hero-actions{opacity:var(--intro-actions,0);transform:translateY(var(--intro-actions-y,6px))}
.portal-intro.film-opening[data-portal-transition="fade"] .hero .nav{animation:none;background:linear-gradient(180deg,#10181188,transparent);opacity:var(--intro-chrome,0);transform:none}
.portal-intro.film-opening[data-portal-transition="fade"] .hero .navlinks{animation:none;opacity:1;transform:none}
.portal-intro.film-opening[data-portal-transition="fade"] .signature-brand,
.portal-intro.film-opening[data-portal-transition="fade"] .hero .hero-meta{animation:none;opacity:var(--intro-chrome,0);transform:none}
@media(prefers-reduced-motion:reduce){
 .portal-intro.film-opening[data-portal-transition="fade"] .hero h1,
 .portal-intro.film-opening[data-portal-transition="fade"] .practice-byline,
 .portal-intro.film-opening[data-portal-transition="fade"] .hero-description>p,
 .portal-intro.film-opening[data-portal-transition="fade"] .hero-actions,
 .portal-intro.film-opening[data-portal-transition="fade"] .hero .nav,
 .portal-intro.film-opening[data-portal-transition="fade"] .hero .hero-meta,
 .portal-intro.film-opening[data-portal-transition="fade"] .signature-brand{opacity:1;transform:none}
}
