.story-eyebrow {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 17px;
    color: #ff6b00;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 2.3px;
    line-height: 1.5;
}

.story-eyebrow::before {
    width: 25px;
    height: 1px;
    flex: 0 0 25px;
    background: #ff6b00;
    content: "";
}

.story-origin,
.story-timeline,
.story-thinking,
.story-founder {
    padding: clamp(70px, 8vw, 108px) 0;
}

.story-origin { background: #101010; }

.story-origin-inner,
.story-founder-inner {
    display: grid;
    width: min(90%, 1280px);
    grid-template-columns: minmax(0, .9fr) minmax(0, 1fr);
    align-items: center;
    gap: clamp(38px, 7vw, 96px);
    margin-inline: auto;
}

.story-origin-visual,
.story-founder-visual {
    position: relative;
    min-height: 410px;
    margin: 0;
    overflow: hidden;
    background: #171310;
}

.story-origin-visual img,
.story-founder-visual img {
    width: 100%;
    height: 100%;
    min-height: 410px;
    object-fit: cover;
}

.story-origin-visual::after,
.story-founder-visual::after {
    position: absolute;
    inset: 55% 0 0;
    background: linear-gradient(transparent, rgba(0,0,0,.62));
    content: "";
    pointer-events: none;
}

.story-origin-visual figcaption,
.story-founder-visual figcaption {
    position: absolute;
    z-index: 1;
    right: 18px;
    bottom: 18px;
    left: 18px;
    color: #fff;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: 1.5px;
}

.story-origin-copy h2,
.story-thinking-heading h2,
.story-timeline-heading h2,
.story-founder-copy h2 {
    color: #fff;
    font-size: clamp(38px, 5vw, 64px);
    font-weight: 900;
    letter-spacing: -.065em;
    line-height: .94;
}

.story-origin-copy h2 span,
.story-thinking-heading h2 span,
.story-timeline-heading h2 span,
.story-founder-copy h2 span { color: #ff6b00; }

.story-origin-copy > p:not(.story-eyebrow) {
    max-width: 54ch;
    margin-top: 22px;
    color: #aaa;
    font-size: 13px;
    line-height: 1.8;
}

.story-origin-fact {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 8px 16px;
    margin-top: 29px;
    padding-top: 17px;
    border-top: 1px solid rgba(255,255,255,.2);
}

.story-origin-fact strong { color: #ff6b00; font-size: 10px; letter-spacing: 1.1px; }
.story-origin-fact span { color: #999; font-size: 9px; font-weight: 800; letter-spacing: 1px; }

.story-timeline { background: #080808; }

.story-timeline-inner {
    display: grid;
    width: min(90%, 1280px);
    grid-template-columns: minmax(230px, .68fr) minmax(0, 1.32fr);
    align-items: end;
    gap: clamp(38px, 6vw, 78px);
    margin-inline: auto;
}

.story-timeline-heading h2 { font-size: clamp(36px, 4.2vw, 54px); }
.story-timeline-heading > p:last-child { max-width: 39ch; margin-top: 19px; color: #929292; font-size: 12px; line-height: 1.7; }

.story-milestones {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 0;
    padding: 0;
    list-style: none;
}

.story-milestones li {
    display: flex;
    min-height: 150px;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    gap: 9px;
    padding: 16px 13px 0;
    border-top: 1px solid rgba(255,255,255,.25);
    border-left: 1px solid rgba(255,255,255,.13);
}

.story-milestones li:first-child { border-left: 0; padding-left: 0; }
.story-milestone-value { color: #ff6b00; font-size: clamp(22px, 2.8vw, 36px); font-weight: 900; letter-spacing: -.05em; line-height: 1; }
.story-milestone-label { color: #eee; font-size: 8px; font-weight: 900; letter-spacing: .75px; line-height: 1.5; }
.story-market-note { color: #888; font-size: 8px; font-weight: 800; letter-spacing: 1px; }

.story-thinking { background: #101010; }

.story-thinking-inner {
    display: grid;
    width: min(90%, 1280px);
    grid-template-columns: minmax(230px, .72fr) minmax(0, 1.28fr);
    align-items: start;
    gap: clamp(36px, 7vw, 94px);
    margin-inline: auto;
}

.story-thinking-heading h2 { font-size: clamp(37px, 4.5vw, 58px); }

.story-thinking-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.story-thinking-grid article {
    min-height: 128px;
    padding: 18px 20px 21px;
    border-top: 1px solid rgba(255,255,255,.2);
}

.story-thinking-grid article:nth-child(even) { border-left: 1px solid rgba(255,255,255,.14); }
.story-thinking-grid article > span { color: #ff6b00; font-size: 9px; font-weight: 900; letter-spacing: 1px; }
.story-thinking-grid h3 { margin-top: 13px; color: #fff; font-size: 14px; font-weight: 900; letter-spacing: .02em; }
.story-thinking-grid p { margin-top: 7px; color: #929292; font-size: 11px; line-height: 1.65; }

.story-food-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 4px;
    padding: 4px;
    background: #080808;
}

.story-food-strip img {
    width: 100%;
    height: clamp(120px, 17vw, 230px);
    object-fit: cover;
}

.story-founder { background: #0a0a0a; }

.story-founder-visual img { object-position: center 32%; }
.story-founder-copy h2 { font-size: clamp(34px, 4.3vw, 58px); }
.story-founder-copy > p:not(.story-eyebrow) { max-width: 55ch; margin-top: 22px; color: #a3a3a3; font-size: 13px; line-height: 1.8; }
.story-founder-copy .story-founder-name { display: flex; flex-direction: column; gap: 6px; margin-top: 23px; color: #fff; font-size: 10px; font-weight: 900; letter-spacing: 1.3px; }
.story-founder-name span { color: #ff6b00; font-size: 8px; letter-spacing: 1.1px; }

.story-growth {
    position: relative;
    display: flex;
    min-height: 340px;
    align-items: center;
    overflow: hidden;
    padding: 74px 0;
    background: linear-gradient(90deg, rgba(0,0,0,.9), rgba(0,0,0,.48)), url("images/outlets/master.jpeg") center 52% / cover no-repeat;
}

.story-growth-inner { width: min(90%, 1280px); margin-inline: auto; }
.story-growth h2 { color: #fff; font-size: clamp(44px, 7vw, 88px); font-weight: 900; letter-spacing: -.075em; line-height: .9; }
.story-growth h2 span { color: #ff6b00; }
.story-growth-inner > p:not(.story-eyebrow) { margin-top: 17px; color: #ddd; font-size: 13px; }
.story-growth-inner > a { display: inline-flex; align-items: center; gap: 12px; margin-top: 25px; padding-bottom: 7px; border-bottom: 1px solid #ff6b00; color: #fff; font-size: 9px; font-weight: 900; letter-spacing: 1.1px; }
.story-growth-inner > a span { color: #ff6b00; font-size: 15px; }
.story-growth-inner > a:focus-visible { outline: 2px solid #ff6b00; outline-offset: 4px; }

@media (max-width: 900px) {
    .story-timeline-inner,
    .story-thinking-inner { grid-template-columns: minmax(0, 1fr); gap: 34px; }
    .story-timeline-heading h2 br { display: none; }
    .story-origin-inner,
    .story-founder-inner { gap: 34px; }
}

@media (max-width: 640px) {
    .story-origin,
    .story-timeline,
    .story-thinking,
    .story-founder { padding: 66px 0; }

    .story-origin-inner,
    .story-founder-inner { width: min(90%, 560px); grid-template-columns: minmax(0, 1fr); gap: 28px; }
    .story-origin-visual,
    .story-origin-visual img { min-height: 0; height: min(78vw, 360px); }
    .story-origin-copy h2,
    .story-thinking-heading h2,
    .story-founder-copy h2 { font-size: clamp(35px, 9.6vw, 50px); }
    .story-origin-copy > p:not(.story-eyebrow),
    .story-founder-copy > p:not(.story-eyebrow) { font-size: 13px; }

    .story-timeline-inner,
    .story-thinking-inner { width: min(90%, 560px); gap: 30px; }
    .story-timeline-heading h2 { font-size: clamp(34px, 8vw, 46px); }
    .story-timeline-heading h2 br { display: initial; }
    .story-milestones { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .story-milestones li { min-height: 118px; padding: 14px 12px; border-top: 1px solid rgba(255,255,255,.22); }
    .story-milestones li:first-child { padding-left: 12px; border-left: 0; }
    .story-milestones li:nth-child(odd) { border-left: 0; }
    .story-milestones li:nth-child(even) { border-left: 1px solid rgba(255,255,255,.14); }
    .story-milestone-value { font-size: 28px; }

    .story-thinking-grid { grid-template-columns: minmax(0, 1fr); }
    .story-thinking-grid article,
    .story-thinking-grid article:nth-child(even) { min-height: 0; padding: 16px 0 18px; border-left: 0; }
    .story-thinking-grid h3 { margin-top: 9px; font-size: 14px; }
    .story-thinking-grid p { font-size: 12px; }

    .story-food-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .story-food-strip img { height: clamp(125px, 37vw, 195px); }
    .story-founder-visual,
    .story-founder-visual img { min-height: 0; height: min(90vw, 420px); }
    .story-growth { min-height: 300px; }
    .story-growth-inner { width: min(90%, 560px); }
    .story-growth h2 { font-size: clamp(43px, 11vw, 60px); }
}
