/* Real product images and the people behind the data. */
.story-heading { display:grid; grid-template-columns:1.1fr .9fr; align-items:end; gap:80px; margin-bottom:46px }
.story-heading h2 { max-width:780px; margin:0 }
.story-heading p { max-width:42ch; margin:0; color:var(--muted) }
.product-shot { margin:0; min-width:0 }
.product-shot>a { display:block; overflow:hidden; border-radius:12px; border:1px solid #BBC7B8; background:var(--paper) }
.product-shot img { display:block; width:100%; height:auto }
.product-shot figcaption { padding-top:18px; max-width:75ch; line-height:1.65; font-size:.9rem; color:var(--muted) }
.product-shot figcaption strong { color:var(--ink); font-weight:600 }
.product-shot-wide { margin-bottom:90px }
.source-story { display:grid; grid-template-columns:.7fr 1.3fr; gap:64px; align-items:center }
.source-story h3 { font:500 clamp(2rem,3.6vw,3.6rem)/1.1 var(--display); letter-spacing:-.03em; margin:0 0 25px }
.source-story p { max-width:40ch; color:var(--muted) }
.source-story .text-link { display:inline-block; margin-top:16px }
.practice-proof { background:#102E28; color:var(--paper); padding:84px 0 }
.practice-grid { display:grid; grid-template-columns:.65fr 1.35fr; gap:100px }
.practice-grid h2 { font-size:clamp(2.2rem,4vw,4rem); max-width:650px }
.practice-grid p { color:#BDCEBD; max-width:65ch }
.practice-grid .text-link { display:inline-block; margin-top:12px }
.flintlead-wordmark { display:flex; align-items:center; gap:15px; font:600 2rem/1 var(--display); text-decoration:none; margin-bottom:20px }
.flintlead-wordmark img { display:block; object-fit:contain }
.founder-story { display:grid; grid-template-columns:1fr 1fr; gap:90px; border-top:1px solid #CFD7CB }
.founder-story h1,.founder-story h2 { font-size:clamp(2.5rem,4.8vw,4.8rem); line-height:1.06; max-width:640px; margin:0 0 34px }
.founder-name { font-weight:600; font-size:1.1rem }
.founder-name span { display:block; color:var(--muted); font-weight:400; font-size:.85rem; margin-top:6px }
.founder-story p { max-width:60ch }
.founder-links { display:flex; flex-wrap:wrap; gap:22px; margin-top:28px; font-size:.9rem }
.video-story video { display:block; width:100%; height:auto; background:var(--pine); border-radius:12px }
.video-transcript { margin-top:24px; border-block:1px solid #CFD7CB; padding:20px 0 }
.video-transcript summary { cursor:pointer; font-weight:500; min-height:24px }
.video-transcript>div { max-width:70ch; padding-top:20px }
@media(max-width:760px) {
 .story-heading,.source-story,.practice-grid,.founder-story { grid-template-columns:1fr; gap:28px }
 .story-heading { margin-bottom:28px }
 .story-heading h2 { font-size:2.5rem }
 .product-shot-wide { margin-bottom:54px }
 .product-shot figcaption { font-size:.83rem }
 .practice-proof { padding:55px 0 }
 .practice-grid { gap:32px }
 .founder-story h1,.founder-story h2 { margin-bottom:24px }
 .founder-story { padding-top:55px; padding-bottom:55px }
}

.video-story video::cue { font-size: clamp(14px, 1.4vw, 20px); }
