.brand-story-page { background: #fff; }
.brand-story-page .site-header { background: #fff; }
.brand-story-page .site-header.is-past-hero { border-bottom-color: rgba(29, 29, 31, .14); }
.brand-story-page .nav-item > a[aria-current="page"] { font-weight: 700; }
.story-main { overflow: hidden; background: #fff; }
.story-shell { width: min(1320px, calc(100% - 48px)); margin: 0 auto; }
.story-kicker, .story-section-index { margin: 0; font-size: .75rem; font-weight: 750; letter-spacing: .14em; text-transform: uppercase; }
.story-hero { display: flex; min-height: calc(100svh - 50px); align-items: center; background: #fff; }
.story-hero-copy { padding: 11vw 0 9vw; text-align: center; }
.story-hero h1 { margin: 28px 0 0; font-size: clamp(4.8rem, 11.4vw, 10.6rem); font-weight: 760; line-height: .78; letter-spacing: -.085em; text-wrap: balance; }
.story-hero h1 span { display: inline-block; margin-top: .18em; color: #fe4937; font-size: .47em; letter-spacing: .02em; }
.story-lead { margin: 54px auto 0; font-size: clamp(1.2rem, 2vw, 1.75rem); font-weight: 540; letter-spacing: -.035em; }
.story-scroll-link { display: inline-flex; align-items: center; gap: 28px; margin-top: 42px; padding-bottom: 8px; border-bottom: 1px solid currentColor; font-size: .875rem; font-weight: 700; }
.story-scroll-link:hover, .story-scroll-link:focus-visible { color: #fe4937; outline: none; }
.story-hero-media { width: calc(100% - 48px); height: min(80vw, 900px); margin: 0 auto; overflow: hidden; background: #efaaa0; }
.story-hero-media img { width: 100%; height: 100%; object-fit: cover; }
.story-mission { padding: clamp(110px, 13vw, 190px) 0; }
.story-mission-grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(300px, .72fr); gap: clamp(60px, 10vw, 160px); align-items: start; }
.story-mission h2, .story-heading-row h2 { margin: 34px 0 0; font-size: clamp(3.3rem, 6.3vw, 6rem); line-height: .92; letter-spacing: -.072em; text-wrap: balance; }
.story-mission-copy { padding-top: 49px; }
.story-mission-copy p { margin: 0; font-size: clamp(1.25rem, 2vw, 1.8rem); line-height: 1.48; letter-spacing: -.035em; }
.story-mission-copy p + p { margin-top: 34px; color: #6e6e73; }
.story-editorial { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(380px, .75fr); min-height: 820px; background: #f1d1ef; }
.story-editorial-image { min-height: 680px; margin: 0; overflow: hidden; }
.story-editorial-image img { width: 100%; height: 100%; object-fit: cover; }
.story-editorial-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(64px, 8vw, 126px); }
.story-editorial-copy h2 { margin: 34px 0 0; font-size: clamp(3.2rem, 5.6vw, 5.8rem); line-height: .9; letter-spacing: -.07em; }
.story-editorial-copy > p:last-child { margin: 44px 0 0; font-size: 1.15rem; line-height: 1.7; letter-spacing: -.02em; }
.story-manifesto { padding: clamp(120px, 17vw, 250px) 0; color: #fff; background: #111; }
.story-manifesto h2 { max-width: 1130px; margin: 48px 0 0; color: #f5d328; font-size: clamp(4.2rem, 9vw, 9rem); line-height: .84; letter-spacing: -.082em; }
.story-manifesto .story-shell > p:last-child { max-width: 730px; margin: 66px 0 0 auto; color: #c7c7cc; font-size: clamp(1.2rem, 2vw, 1.7rem); line-height: 1.55; letter-spacing: -.03em; }
.story-capabilities { padding: clamp(110px, 13vw, 190px) 0; background: #f5f5f7; }
.story-heading-row { display: grid; grid-template-columns: .62fr 1.38fr; gap: 50px; align-items: start; }
.story-heading-row h2 { margin-top: 0; }
.story-capability-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: 82px; }
.story-capability-grid article { overflow: hidden; background: #fff; }
.story-capability-grid figure { aspect-ratio: 4 / 5; margin: 0; overflow: hidden; }
.story-capability-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s cubic-bezier(.2, .6, .2, 1); }
.story-capability-grid article:hover img { transform: scale(1.025); }
.story-capability-grid article > div { min-height: 270px; padding: 28px 30px 36px; }
.story-capability-grid span { color: #86868b; font-size: .75rem; font-weight: 700; }
.story-capability-grid h3 { margin: 42px 0 0; font-size: clamp(2rem, 3vw, 3.2rem); line-height: .96; letter-spacing: -.06em; }
.story-capability-grid p { margin: 24px 0 0; color: #6e6e73; font-size: 1rem; line-height: 1.65; }
.story-for-everyone { padding: clamp(110px, 13vw, 190px) 0; background: #fff; }
.story-for-everyone h2 { max-width: 970px; margin: 38px 0 86px; font-size: clamp(3.8rem, 7.4vw, 7rem); line-height: .88; letter-spacing: -.078em; }
.story-for-everyone ul { margin: 0; padding: 0; border-top: 1px solid #1d1d1f; list-style: none; }
.story-for-everyone li { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: center; min-height: 112px; padding: 24px 0; border-bottom: 1px solid rgba(29, 29, 31, .24); }
.story-for-everyone li span { font-size: clamp(1.75rem, 3.2vw, 3rem); font-weight: 720; letter-spacing: -.055em; }
.story-for-everyone li em { color: #6e6e73; font-size: 1.05rem; font-style: normal; }
.story-closing { padding: clamp(130px, 18vw, 270px) 0; color: #111; background: #f5d328; text-align: center; }
.story-closing h2 { max-width: 1100px; margin: 42px auto 0; font-size: clamp(4.3rem, 9.4vw, 9.5rem); line-height: .82; letter-spacing: -.085em; }
.story-closing-actions { display: flex; justify-content: center; gap: 14px; margin-top: 62px; }
.story-primary-action, .story-secondary-action { display: inline-flex; align-items: center; justify-content: space-between; min-width: 172px; padding: 16px 21px; border: 1px solid #111; border-radius: 999px; font-size: .9rem; font-weight: 720; transition: color .2s ease, background .2s ease, transform .2s ease; }
.story-primary-action { color: #fff; background: #111; }
.story-primary-action span, .story-secondary-action span { margin-left: 34px; }
.story-secondary-action { background: transparent; }
.story-primary-action:hover, .story-primary-action:focus-visible, .story-secondary-action:hover, .story-secondary-action:focus-visible { color: #111; background: #fff; outline: none; transform: translateY(-2px); }
@media (max-width: 1040px) {
    .brand-story-page .primary-navigation { background: #fff; }
    .story-mission-grid { grid-template-columns: 1fr; gap: 24px; }
    .story-mission-copy { max-width: 720px; margin-left: auto; padding-top: 20px; }
    .story-editorial { grid-template-columns: 1fr; }
    .story-editorial-image { aspect-ratio: 16 / 10; min-height: 0; }
    .story-editorial-copy { min-height: 600px; }
    .story-heading-row { grid-template-columns: 1fr; }
    .story-capability-grid { grid-template-columns: 1fr 1fr; }
    .story-capability-grid article:last-child { grid-column: 1 / -1; }
    .story-capability-grid article:last-child figure { aspect-ratio: 16 / 9; }
}
@media (max-width: 720px) {
    .story-shell { width: calc(100% - 40px); }
    .story-hero { min-height: calc(100svh - 50px); }
    .story-hero-copy { padding: 120px 0 90px; }
    .story-hero h1 { margin-top: 22px; font-size: clamp(4rem, 21vw, 6.5rem); line-height: .82; }
    .story-lead { max-width: 290px; margin-top: 40px; font-size: 1.15rem; line-height: 1.45; }
    .story-scroll-link { margin-top: 34px; }
    .story-hero-media { width: calc(100% - 24px); height: 118vw; max-height: 680px; }
    .story-hero-media img { object-position: 64% center; }
    .story-mission { padding: 92px 0 100px; }
    .story-mission h2 { font-size: clamp(3rem, 15vw, 4.5rem); }
    .story-heading-row h2 { font-size: 2.65rem; line-height: .93; }
    .story-mission-copy { padding-top: 26px; }
    .story-mission-copy p { font-size: 1.16rem; }
    .story-editorial-image { aspect-ratio: 4 / 5; }
    .story-editorial-image img { object-position: 58% center; }
    .story-editorial-copy { min-height: 580px; padding: 72px 20px 82px; }
    .story-editorial-copy h2 { font-size: clamp(3.15rem, 15vw, 4.6rem); }
    .story-editorial-copy > p:last-child { margin-top: 34px; font-size: 1rem; }
    .story-manifesto { padding: 110px 0 120px; }
    .story-manifesto h2 { margin-top: 40px; font-size: clamp(4rem, 19vw, 6rem); }
    .story-manifesto .story-shell > p:last-child { margin-top: 48px; font-size: 1.1rem; }
    .story-capabilities { padding: 100px 0; }
    .story-capability-grid { grid-template-columns: 1fr; gap: 14px; margin-top: 58px; }
    .story-capability-grid article:last-child { grid-column: auto; }
    .story-capability-grid article:last-child figure, .story-capability-grid figure { aspect-ratio: 4 / 5; }
    .story-capability-grid article > div { min-height: 230px; padding: 24px 24px 30px; }
    .story-for-everyone { padding: 100px 0 110px; }
    .story-for-everyone h2 { margin: 32px 0 58px; font-size: clamp(3.55rem, 17vw, 5.4rem); }
    .story-for-everyone li { grid-template-columns: 1fr; gap: 9px; min-height: 120px; }
    .story-for-everyone li span { font-size: 2rem; }
    .story-for-everyone li em { font-size: .95rem; }
    .story-closing { padding: 120px 0 130px; }
    .story-closing h2 { font-size: 3.1rem; line-height: .88; }
    .story-closing-actions { flex-direction: column; align-items: stretch; margin-top: 50px; }
    .story-primary-action, .story-secondary-action { width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .story-capability-grid img { transition: none; } }
