/* ==========================================================================
   VASTORE — CROSS-PAGE REFINEMENTS
   Loaded on every page, after /theme.css. Everything that used to live here
   as an override has been folded back into the stylesheet that owns the
   component; what remains are genuinely global touches.
   ========================================================================== */

/* Brand lockup — the logo is a fixed asset, so size it once, everywhere. */
.vastore-logo{width:clamp(168px,15vw,224px);height:auto;max-width:none}
.brand{gap:0}

.studio-brand img{display:block;width:clamp(170px,15vw,211px);height:auto}
.gate-symbol{margin:0 auto var(--s-6)}
.gate-wordmark img{display:block}

/* Touch targets — anything interactive clears 44px on every page. */
.project-links a,.project-links button,.reel-bottom a,.watch-film,
.growth-ribbon a,.footer-col a{min-height:44px;display:inline-flex;align-items:center}

/* Long-form text behaviour */
.next-copy h1,.section-heading h2,.growth-heading h2{max-width:22ch}
.growth-heading h2,.section-heading h2{max-width:26ch}
.section-intro,.project-info p,.capability>p{text-wrap:pretty}

/* Focus rings stay visible on both grounds, whatever the component. */
.promo-card:focus-visible,.story-card:focus-visible,.film-card:focus-visible,
.project-preview:focus-visible{outline:3px solid var(--ember-500);outline-offset:5px}
.growth-button:focus-visible,.growth-outline:focus-visible{outline:2px solid var(--brand-deep);outline-offset:3px}

/* The footer sits above the fixed assistant launcher on small screens. */
@media (max-width:700px){
 .footer-bottom{padding-bottom:var(--s-9)}
}
