/* Anderson’s own history, told through generous photography and dated chapters. */
.story-page #main { padding-top:var(--top-offset); }
.story-page main section { padding-block:0; }
.story-page figure { margin:0; }
.story-eyebrow { font-size:.74rem; letter-spacing:.16em; text-transform:uppercase; color:var(--brass-ink); line-height:1.8; }
.story-opening { display:grid; grid-template-columns: .9fr 1.1fr; min-height:650px; width:min(1440px,100%); margin:auto; }
.story-opening__words { padding:clamp(3rem,6vw,6rem) clamp(1.5rem,5vw,5.5rem); align-self:center; }
.story-opening h1 { font-size:clamp(3.2rem,5.5vw,5.7rem); line-height:1.06; letter-spacing:-.035em; margin:1.5rem 0 2rem; }
.story-opening__words > p:not(.story-eyebrow) { color:var(--ink-soft); max-width:36ch; margin-bottom:2rem; font-size:1.02rem; }
.story-opening__image { position:relative; overflow:hidden; background:#f5f5f1; }
.story-opening__image img { width:100%; height:100%; object-fit:cover; object-position:51% center; }
.story-opening__image figcaption { position:absolute; bottom:0; inset-inline:0; padding:1rem; text-align:center; background:rgba(255,255,255,.85); font-size:.65rem; text-transform:uppercase; letter-spacing:.1em; }
.story-page .story-intro { padding-block:clamp(4rem,8vw,8rem); background:var(--blush); margin-top:1.5rem; }
.story-intro__grid { display:grid; grid-template-columns:1fr 2fr; gap:3rem; }
.story-intro h2 { font-size:clamp(2.3rem,3.7vw,3.8rem); line-height:1.17; margin-bottom:2rem; }
.story-intro__grid > div { max-width:680px; }
.story-intro__grid > div p { color:var(--ink-soft); max-width:57ch; margin-top:1rem; }
.story-page .story-journey { padding-block:clamp(4rem,6vw,6rem); }
.story-journey__heading { display:flex; align-items:center; justify-content:space-between; gap:2rem; border-bottom:1px solid var(--brass-soft); padding-bottom:2.5rem; }
.story-journey__heading h2 { font-size:clamp(2.2rem,3.2vw,3.4rem); }
.story-years { display:flex; flex-wrap:wrap; gap:.8rem 1.4rem; }
.story-years a { font-size:.85rem; padding:.5rem 0; text-decoration:none; border-bottom:1px solid var(--brass-soft); }
.story-years a:hover { border-color:var(--ink); }
.story-chapter { display:grid; grid-template-columns:1fr 1.15fr; gap:clamp(2rem,7vw,7rem); align-items:center; padding-block:clamp(3rem,6vw,6rem); border-bottom:1px solid var(--brass-soft); scroll-margin-top:calc(var(--top-offset) + 2rem); }
.story-chapter:nth-of-type(even) { grid-template-columns:1.15fr 1fr; }
.story-chapter:nth-of-type(even) .story-chapter__photo { order:-1; }
.story-year { font-family:var(--serif); font-size:clamp(3.8rem,6.5vw,6.5rem); color:var(--brass-ink); line-height:1.05; margin-bottom:1.6rem; }
.story-chapter h3 { font-size:clamp(1.9rem,2.8vw,2.8rem); line-height:1.15; margin-bottom:1.4rem; max-width:17ch; }
.story-chapter__copy > p:not(.story-year) { color:var(--ink-soft); margin-top:1rem; max-width:48ch; }
.story-chapter__photo img { width:100%; aspect-ratio:1.08; object-fit:cover; }
.story-chapter__photo figcaption { font-size:.66rem; text-transform:uppercase; letter-spacing:.12em; color:var(--ink-soft); padding-top:.8rem; }
.story-page .story-award { padding-block:clamp(4rem,7vw,7rem); background:var(--ink); color:var(--linen); scroll-margin-top:var(--top-offset); }
.story-award__grid { display:grid; grid-template-columns:1.2fr 1fr; gap:clamp(2rem,6vw,6rem); align-items:center; }
.story-award .story-eyebrow, .story-award .story-year { color:var(--linen); }
.story-award .story-year { margin:1.8rem 0; font-size:clamp(5rem,9vw,9rem); }
.story-award h2 { font-size:clamp(2.3rem,3.7vw,3.7rem); line-height:1.12; }
.story-award__copy p { margin-bottom:1.5rem; }
.story-award .text-link { color:inherit; }
.story-page .story-today { padding-block:clamp(4rem,7vw,7rem); }
.story-today__grid { display:grid; grid-template-columns:1.15fr 1fr; gap:clamp(2rem,6vw,6rem); align-items:center; }
.story-today img { width:100%; aspect-ratio: .95; object-fit:cover; }
.story-today h2 { font-size:clamp(2.5rem,4.1vw,4.1rem); line-height:1.12; margin:1.5rem 0; }
.story-today p:not(.story-eyebrow) { color:var(--ink-soft); margin-bottom:1.3rem; }
.story-related { display:flex; flex-direction:column; align-items:flex-start; gap:.8rem; margin-top:2.2rem; padding-top:1.5rem; border-top:1px solid var(--brass-soft); font-size:.86rem; }
.story-page .story-invitation { text-align:center; background:var(--blush); padding:clamp(4rem,6vw,6rem) 1.5rem; }
.story-invitation h2 { font-size:clamp(2.6rem,4.4vw,4.5rem); line-height:1.15; margin:1.5rem 0 2rem; }
#our-journey { scroll-margin-top:var(--top-offset); }
@media(max-width:900px) {
 .story-opening { min-height:0; grid-template-columns:1fr 1fr; }
 .story-opening__words { padding:3rem 1.5rem; }
 .story-opening h1 { font-size:3.1rem; }
 .story-intro__grid { grid-template-columns:1fr; gap:1.5rem; }
 .story-journey__heading { flex-direction:column; align-items:flex-start; }
 .story-chapter,.story-chapter:nth-of-type(even),.story-today__grid { gap:2rem; }
}
@media(max-width:600px) {
 .story-opening { grid-template-columns:1fr; }
 .story-opening__words { padding:2.8rem 1.5rem; }
 .story-opening h1 { font-size:clamp(3rem,12vw,4.1rem); }
 .story-opening__image { height:350px; }
 .story-opening__image img { object-position:center; }
 .story-opening__image figcaption { font-size:.58rem; }
 .story-intro__grid { gap:1rem; }
 .story-chapter,.story-chapter:nth-of-type(even),.story-award__grid,.story-today__grid { grid-template-columns:1fr; }
 .story-chapter:nth-of-type(even) .story-chapter__photo { order:0; }
 .story-chapter__photo img { aspect-ratio:1.2; }
 .story-chapter h3 { max-width:100%; }
 .story-years { gap:.5rem 1.2rem; }
 .story-today img { aspect-ratio:1.15; }
}

.story-monster { background:var(--blush); padding:clamp(2rem,4vw,4rem); }
.story-monster h4 { font-family:var(--serif); font-size:clamp(2rem,3vw,3rem); line-height:1.15; font-weight:400; margin:1.4rem 0 2rem; }
.story-monster dl { margin:0 0 1.7rem; }
.story-monster dl > div { display:flex; flex-direction:column; padding:1rem 0; border-top:1px solid var(--brass-soft); }
.story-monster dt { font-size:.72rem; text-transform:uppercase; letter-spacing:.12em; color:var(--ink-soft); }
.story-monster dd { margin:0; font-family:var(--serif); font-size:clamp(3rem,5vw,4.8rem); line-height:1.15; }
.story-monster dd span { font-family:var(--sans); font-size:.85rem; margin-left:.5rem; }
.story-monster > p:last-child { font-size:.9rem; color:var(--ink-soft); }
@media(min-width:601px) { .story-chapter--monster .story-monster { order:-1; } }

/* A quieter introduction, with Caroline’s page-two gallery selection. */
.story-opening { display:block; min-height:0; width:min(1400px,calc(100% - 2 * var(--frame))); }
.story-opening__words { padding:clamp(2rem,3.5vw,3.5rem) 1rem 2.2rem; text-align:center; }
.story-opening h1 { font-size:clamp(3.2rem,5.4vw,5.2rem); line-height:1.1; margin: .65rem 0 1rem; }
.story-opening__words > p:not(.story-eyebrow) { max-width:52ch; margin:0 auto; }
.story-opening__photographs { display:grid; grid-template-columns:1fr 2.25fr 1fr; gap:1rem; align-items:stretch; }
.story-opening__photographs figure { min-width:0; }
.story-opening__photographs img { display:block; width:100%; height:100%; aspect-ratio:2 / 3; object-fit:cover; }
.story-opening__photographs figure:nth-child(2) img { aspect-ratio:3 / 2; }
.story-opening__foot { display:flex; justify-content:space-between; flex-wrap:wrap; gap:1rem; padding:1.1rem 0; font-size:.75rem; color:var(--ink-soft); }
.story-opening__foot p { margin:0; }
.story-opening__foot a { text-underline-offset:.3em; }
.story-page .story-intro { margin-top:1rem; }
.story-chapter__photo img { aspect-ratio:4 / 5; object-position:center; }
#year-2019 .story-chapter__photo img { aspect-ratio: 1.08; }
.story-today img { aspect-ratio: 4 / 5; object-position:center; }
@media(max-width:600px) {
 .story-opening__words { padding:2rem .4rem 1.7rem; }
 .story-opening h1 { font-size:3.4rem; }
 .story-opening__photographs { grid-template-columns:1fr 1fr; gap:.7rem; }
 .story-opening__photographs figure:nth-child(2) { grid-column:1 / -1; grid-row:1; }
 .story-opening__photographs img { aspect-ratio:4 / 5; }
 .story-opening__photographs figure:nth-child(2) img { aspect-ratio:3 / 2; }
 .story-opening__foot { font-size:.68rem; gap:.6rem; }
 .story-chapter__photo img { aspect-ratio:4 / 5; }
}
.story-opening__words .story-eyebrow { max-width:none; margin-inline:auto; text-align:center; }

.story-chapter--paul .text-link { display:inline-block; margin-top:1.5rem; }

.story-chapter--paul .story-chapter__photo img { aspect-ratio:2 / 3; height:auto; object-fit:contain; }

#year-2019 .story-chapter__photo img { aspect-ratio:2 / 3; height:auto; object-fit:contain; }

/* Owner-supplied 2026 awards photograph, kept in its original portrait proportions. */
.story-award__words .story-award__copy { margin-top:2rem; max-width:48ch; }
.story-award__photo { margin:0; width:100%; max-width:390px; justify-self:center; }
.story-award__photo img { display:block; width:100%; height:auto; border-radius:6px; }
