.crossfit-case .case-detail-hero { min-height:700px; }
.crossfit-case .case-detail-hero-media img { object-position:center 43%; }
.cf-tags { display:flex; flex-wrap:wrap; gap:10px; margin-top:28px; }
.cf-tags span { padding:8px 13px; border:1px solid #ffffff55; border-radius:30px; font-size:14px; }
.cf-draft { padding:13px 24px; text-align:center; background:#e5e4d9; color:#42483f; font-size:12px; letter-spacing:.13em; }
.cf-section { padding:90px max(24px,calc((100vw - 1200px)/2)); }
.cf-tour,.cf-photos { background:#f7f4ef; }
.cf-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:32px; margin-bottom:32px; }
.cf-heading h2 { font-family:var(--serif); font-size:clamp(36px,4.5vw,60px); line-height:1.05; font-weight:500; letter-spacing:-.025em; max-width:780px; margin:14px 0 0; }
.cf-heading p { max-width:240px; font-size:16px; line-height:1.6; color:var(--body); margin:0; }
.cf-link { white-space:nowrap; font-size:14px; border-bottom:1px solid; padding-bottom:5px; }
.cf-tour-frame { width:100%; aspect-ratio:16/9; border:0; border-radius:18px; display:block; background:#e4e3dc; }
.cf-video { display:block; width:min(100%,820px); margin:0 auto; aspect-ratio:16/9; object-fit:cover; border-radius:18px; background:#161b18; }
.cf-photos-intro { padding-bottom:64px; background:#f7f4ef; }
.cf-photos-intro .cf-heading { margin-bottom:0; }
.cf-photo-gallery { background:#f7f4ef; }
.cf-back { display:block; width:fit-content; margin:30px auto 0; font-size:14px; }
@media(max-width:700px) { .crossfit-case .case-detail-hero { min-height:620px; } .crossfit-case .case-detail-hero-copy h1 { font-size:clamp(48px,12vw,70px); } .cf-heading { flex-direction:column; align-items:flex-start; gap:24px; } .cf-section { padding:64px 24px; } .cf-tour-frame { aspect-ratio:4/3; } .cf-photos-intro { padding-bottom:48px; } }
/* This case uses an opaque header at every scroll position. */
.crossfit-case .nav .brand-dark { display:block; }
