/* V24 SHARED entrance. Load on home + service/category pages after reference.css.
   Supplied logo image/crop geometry remains unchanged; only lockup layout and motion gates differ. */
.home-entrance[hidden]{display:none!important}
.home-entrance .intro-symbol,.home-entrance .intro-name,.home-entrance .intro-descriptor{opacity:1}
.home-entrance .intro-symbol{transform-origin:center}
.home-entrance .intro-lockup{width:min(calc(100vw - 40px),620px);grid-template-columns:clamp(64px,12vw,126px) minmax(0,1fr);column-gap:clamp(18px,3vw,30px);row-gap:20px;clip-path:none;transform:none}
.home-entrance .intro-copy{display:contents}
.home-entrance .intro-name{grid-column:2;grid-row:1;clip-path:none;transform:none}
.home-entrance .intro-descriptor{grid-column:1/-1;grid-row:2;justify-self:center;width:100%;max-width:100%;margin:0;font-size:clamp(14px,1.6vw,17px);line-height:1.5;letter-spacing:.015em;text-align:center;white-space:nowrap;clip-path:none;transform:none}
.home-entrance .intro-descriptor>span{white-space:normal}
html.unified-intro-active .home-entrance:not([hidden]){overflow:hidden;will-change:transform}
/* Every hidden hero state requires the running JS owner. Baseline content is fully visible. */
html.unified-intro-active:not(.intro-phones-ready) [data-category-reveal="phone"],
html.unified-intro-active:not(.intro-copy-ready) .recording-hero-copy,
html.unified-intro-active:not(.intro-copy-ready) .portfolio-orbit,
html.unified-intro-active:not(.intro-copy-ready) [data-category-reveal]:not([data-category-reveal="phone"]),
html.unified-intro-active:not(.intro-copy-ready) .category-availability{opacity:0}
html.unified-intro-active.intro-hero-ready:before{display:none}
.home-entrance [data-intro-skip]:focus-visible{outline:2px solid var(--orange);outline-offset:4px}
/* Never shrink the full descriptor into microtype: narrow layouts get readable natural lines. */
@media(max-width:480px){
  .home-entrance .intro-lockup{row-gap:18px}
  .home-entrance .intro-descriptor{white-space:normal;text-wrap:balance;font-size:14px;letter-spacing:0}
}
@media(prefers-reduced-motion:reduce){
  html.unified-intro-active:before,.home-entrance{display:none!important}
  html.unified-intro-active .recording-hero-copy,html.unified-intro-active .portfolio-orbit,
  html.unified-intro-active [data-category-reveal],html.unified-intro-active .category-availability{opacity:1!important}
}
