/* ── Reveal animation (legacy) ──────────────────────────────────────────────── */

.reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity .9s cubic-bezier(.2,.6,.2,1), transform .9s cubic-bezier(.2,.6,.2,1);
}
.reveal.in {
    opacity: 1 !important;
    transform: none !important;
}


/* ── Vertical stripes ───────────────────────────────────────────────────────── */
.stripes {
    display: flex;
    overflow: hidden;
}

.stripes .vstripe,
.stripes .seam-gold {
    flex: 1;
    clip-path: inset(0 100% 0 0);
    transition: clip-path 0.65s cubic-bezier(0.4, 0, 0.2, 1);
    transition-delay: calc(var(--i, 0) * 75ms);
}

.stripes .seam-gold {
    flex: 0 0 2px;
}

.stripes.animate .vstripe,
.stripes.animate .seam-gold {
    clip-path: inset(0 0% 0 0);
}

/* Sticky header: transparent over the hero, solid once the page scrolls.
   Without this the navigation sits on top of body copy on light pages
   such as the Journal. */
#brx-header .header-nav {
    transition: background-color .35s ease, padding .35s ease, box-shadow .35s ease;
}
#brx-header .header-nav .nav-logo,
#brx-header .header-nav .nav-logo svg {
    transition: width .35s ease, height .35s ease;
}
#brx-header.is-sticky .header-nav {
    background: var(--bgs-navy-deep);
    box-shadow: 0 1px 0 rgba(236, 230, 215, 0.14);
    padding-top: 0.6rem;
    padding-bottom: 0.6rem;
}
#brx-header.is-sticky .header-nav .nav-logo,
#brx-header.is-sticky .header-nav .nav-logo svg {
    width: 104px;
}
@media (prefers-reduced-motion: reduce) {
    #brx-header .header-nav,
    #brx-header .header-nav .nav-logo,
    #brx-header .header-nav .nav-logo svg { transition: none; }
}
