/* Bray Hofman / Respond Forward — private review draft */
:root{--black:#0c0c0c;--ink:#171717;--charcoal:#202020;--cream:#f4f3ef;--paper:#fffefa;--muted:#686868;--line:#d4d2cd;--line-dark:#424242;--max:1240px;--site-font:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--site-font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #a3a3a3;outline-offset:4px}.skip-link{position:absolute;left:8px;top:-80px;padding:14px 18px;background:white;z-index:200}.skip-link:focus{top:8px}
.site-header{height:85px;position:sticky;top:0;z-index:100;background:rgba(12,12,12,.97);color:#fff;border-bottom:1px solid #414141}.header-inner{height:100%;max-width:var(--max);margin:auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between;gap:28px}.wordmark{display:flex;flex-direction:column;line-height:1;min-width:163px}.wordmark b{font-weight:900;letter-spacing:-.065em;font-size:23px}.wordmark small{margin-top:6px;font-size:8px;letter-spacing:.26em;color:#a5a5a5}.nav-links{display:flex;align-items:center;gap:26px}.nav-links a{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#c1c1c1;font-weight:700;transition:color .2s}.nav-links a:hover,.nav-links a[aria-current=page]{color:#fff}.nav-links .nav-contact{padding:13px 17px;background:#fff;color:#111!important;border:1px solid #fff}.nav-toggle{display:none;background:none;color:#fff;border:1px solid #606060;border-radius:0;padding:9px;font-size:12px;text-transform:uppercase;letter-spacing:.12em}
.container{max-width:var(--max);margin:0 auto;padding-left:32px;padding-right:32px}.eyebrow,.kicker{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.24em}.eyebrow{color:#bbb}.kicker{color:#666}.kicker::before{content:'—';margin-right:12px}.hero{background:var(--black);color:#fff;min-height:750px;position:relative;overflow:hidden}/* Homepage decorative circular ornament removed at owner request. */.hero-grid{min-height:750px;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(250px,.6fr);align-items:center;gap:55px;padding-top:50px;padding-bottom:95px;position:relative;z-index:1}.hero-title{font-family:var(--site-font);font-size:clamp(62px,8.1vw,132px);line-height:.88;letter-spacing:-.088em;text-transform:uppercase;margin:29px 0 32px;font-weight:900}.hero-title span{display:block}.hero-title .outline{-webkit-text-stroke:1px #fff;color:transparent}.hero-side{align-self:end;max-width:350px;padding-bottom:45px}.hero-side p{font-size:18px;line-height:1.6;color:#d7d7d7;margin:0 0 25px}.rule{height:1px;background:#5b5b5b;margin-bottom:22px}.tagline{font-size:13px;text-transform:uppercase;letter-spacing:.16em;font-weight:700;color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;padding:16px 22px;min-height:52px;border:1px solid var(--ink);background:var(--ink);color:#fff;font-size:11px;letter-spacing:.17em;font-weight:800;text-transform:uppercase;transition:transform .15s,background .15s,color .15s}.btn:hover{transform:translateY(-2px)}.btn-light{background:var(--cream);color:#111;border-color:var(--cream)}.btn-ghost{background:transparent;color:inherit;border-color:currentColor}.btn-ghost:hover{background:#fff;color:#111}.button-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.strip{background:#e3e0d9;border-bottom:1px solid #cfccc5}.strip-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:20px;padding-bottom:20px}.strip-inner span{font-size:10px;letter-spacing:.2em;text-transform:uppercase;font-weight:800}.strip-inner .sep{height:15px;width:1px;background:#999;border-radius:0;flex:0 0 1px}.section{padding:112px 0}.section.compact{padding:78px 0}.section.dark{background:#111;color:#f2f2f2}.section.white{background:#fffefa}.section-head{display:flex;gap:50px;justify-content:space-between;align-items:flex-start;margin-bottom:45px}.section-title{font-family:var(--site-font);font-size:clamp(44px,5.6vw,87px);font-weight:900;line-height:.95;letter-spacing:-.075em;text-transform:uppercase;max-width:980px;margin:19px 0 26px}.section-title.narrow{max-width:740px}.lead{font-size:clamp(18px,2vw,24px);line-height:1.5;letter-spacing:-.02em;max-width:690px}.body-copy{font-size:17px;line-height:1.76;color:#505050;max-width:700px}.dark .body-copy{color:#b7b7b7}.narrow-text{max-width:720px}.two-col{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(35px,8vw,140px);align-items:start}.three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.four-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.tile{border:1px solid var(--line);padding:36px;min-height:300px;display:flex;flex-direction:column}.tile.dark-tile{background:#202020;border-color:#343434;color:#fff}.tile-number{font-size:11px;letter-spacing:.2em;color:#8a8a8a;font-weight:700;margin-bottom:auto}.tile h3{font-family:var(--site-font);text-transform:uppercase;font-size:28px;letter-spacing:-.06em;line-height:1.06;margin:36px 0 18px}.tile p{font-size:15px;line-height:1.65;margin:0;color:#696969}.dark-tile p{color:#bebebe}.tile a.text-link{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;text-decoration:underline;text-underline-offset:5px;margin-top:24px}.statement{background:#111;color:#fff;padding:105px 0;overflow:hidden}.statement blockquote,.statement .display-quote{font-family:var(--site-font);font-style:normal;font-weight:700;font-size:clamp(37px,5vw,78px);line-height:1.15;letter-spacing:-.045em;max-width:1050px;margin:20px 0 30px}.statement p{color:#a9a9a9;letter-spacing:.15em;text-transform:uppercase;font-size:11px;font-weight:800}.big-index{font-size:clamp(120px,22vw,280px);font-family:var(--site-font);line-height:.75;letter-spacing:-.09em;color:#d9d6cf}.statement .big-index{color:#313131}.feature{display:grid;grid-template-columns:.8fr 1.2fr;gap:75px;padding:45px 0;border-top:1px solid var(--line)}.feature:last-child{border-bottom:1px solid var(--line)}.feature h3{font-family:var(--site-font);letter-spacing:-.05em;text-transform:uppercase;font-size:30px;line-height:1.05;margin:0}.feature p{font-size:17px;line-height:1.7;color:#575757;margin:0}.split-callout{background:#1a1a1a;color:#fff;padding:100px 0}.split-callout .two-col{align-items:center}.split-callout .body-copy{color:#c4c4c4}.page-hero{background:#0e0e0e;color:#fff;padding:105px 0 100px;border-bottom:1px solid #444}.page-hero h1{font-family:var(--site-font);text-transform:uppercase;font-size:clamp(64px,8.4vw,129px);line-height:.9;letter-spacing:-.082em;max-width:1160px;margin:26px 0 32px}.page-hero .page-lead{font-size:clamp(20px,2.3vw,30px);line-height:1.45;max-width:870px;color:#c9c9c9;margin:0}.display-line{border-top:1px solid #444;padding-top:20px;display:flex;justify-content:space-between;font-size:11px;text-transform:uppercase;letter-spacing:.15em;color:#999;gap:16px}.page-hero .display-line{margin-top:75px}.timeline{border-top:1px solid var(--line);margin-top:32px}.timeline-item{display:grid;grid-template-columns:180px 1fr;gap:45px;border-bottom:1px solid var(--line);padding:28px 0}.timeline-item .year{font-size:34px;font-weight:900;letter-spacing:-.07em}.timeline-item h3{font-size:19px;margin:2px 0 8px}.timeline-item p{font-size:15px;line-height:1.65;color:#666;max-width:700px;margin:0}.pill{display:inline-block;border:1px solid #999;padding:8px 11px;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;margin-right:7px;margin-bottom:9px}.a-list{list-style:none;padding:0;margin:25px 0}.a-list li{border-bottom:1px solid var(--line);padding:16px 0;font-size:18px;display:flex;gap:20px}.a-list li::before{content:'↗';font-weight:900}.light-card{padding:38px;border:1px solid var(--line);background:#fffefa}.light-card h3{font-family:var(--site-font);font-size:26px;letter-spacing:-.055em;text-transform:uppercase;margin:0 0 16px}.light-card p{font-size:15px;line-height:1.75;color:#666}.fact-line{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:45px}.fact{padding:30px 22px;border-right:1px solid var(--line)}.fact:first-child{padding-left:0}.fact:last-child{border-right:none}.fact b{display:block;font-size:35px;letter-spacing:-.07em}.fact span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#717171}.topic-row{display:grid;grid-template-columns:65px 1fr;gap:22px;padding:28px 0;border-bottom:1px solid var(--line)}.topic-row .num{font-size:11px;color:#777;letter-spacing:.15em}.topic-row h3{font-family:var(--site-font);text-transform:uppercase;letter-spacing:-.04em;font-size:25px;margin:0 0 9px}.topic-row p{margin:0;font-size:16px;line-height:1.6;color:#666}.note{border-left:3px solid #292929;padding:10px 0 10px 24px;font-size:16px;line-height:1.65;color:#555;max-width:760px}.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.contact-email{font-size:clamp(25px,3vw,48px);font-weight:900;letter-spacing:-.06em;word-break:break-word}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}.field label{font-size:10px;text-transform:uppercase;letter-spacing:.16em;font-weight:800}.field input,.field select,.field textarea{background:transparent;border:1px solid #c5c2bc;border-radius:0;padding:16px;color:#111;min-height:52px;width:100%}.field textarea{min-height:160px;resize:vertical}.form-note{font-size:12px;line-height:1.7;color:#666;margin-top:12px}.form-message{font-size:13px;color:#333;min-height:22px}.footer{background:#0b0b0b;color:#fff;padding:75px 0 28px}.footer-top{display:flex;justify-content:space-between;gap:50px;padding-bottom:75px}.footer-logo{font-family:var(--site-font);font-size:clamp(48px,7vw,100px);line-height:.88;font-weight:900;letter-spacing:-.09em;text-transform:uppercase}.footer-sub{font-family:var(--site-font);font-style:normal;font-weight:700;font-size:clamp(20px,3vw,35px);margin-top:18px;color:#a9a9a9}.footer-links{display:flex;flex-direction:column;gap:16px;font-size:11px;text-transform:uppercase;font-weight:800;letter-spacing:.12em;min-width:190px}.footer-links a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid #414141;padding-top:25px;display:flex;justify-content:space-between;gap:20px;color:#8b8b8b;font-size:11px;letter-spacing:.09em;text-transform:uppercase}.footer-bottom a{text-decoration:underline;text-underline-offset:3px}.micro-label{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:#777;font-weight:800}.overview-arrow{font-size:70px;line-height:1}
@media(max-width:1050px){.nav-links{gap:16px}.nav-links a{font-size:10px}.hero-grid{grid-template-columns:1fr .57fr}.hero-title{font-size:clamp(58px,8vw,90px)}.three-grid{grid-template-columns:repeat(2,1fr)}.four-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.site-header{height:72px}.header-inner{padding:0 20px}.wordmark b{font-size:21px}.nav-toggle{display:block}.nav-links{display:none;position:absolute;top:72px;left:0;right:0;background:#151515;padding:24px 20px 32px;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid #333;box-shadow:0 14px 20px #0006}.nav-links.open{display:flex}.nav-links a{font-size:13px;border-bottom:1px solid #333;padding:16px 4px}.nav-links .nav-contact{text-align:center;margin-top:20px;padding:16px}.container{padding-left:22px;padding-right:22px}.hero,.hero-grid{min-height:auto}.hero-grid{grid-template-columns:1fr;gap:40px;padding-top:90px;padding-bottom:95px}.hero-title{font-size:clamp(61px,12vw,110px)}.hero-side{max-width:630px;padding-bottom:0;align-self:auto}.hero-side p{font-size:17px}.section{padding:75px 0}.section.compact{padding:60px 0}.two-col,.feature,.contact-layout{grid-template-columns:1fr;gap:25px}.section-head{flex-direction:column;gap:0}.three-grid{grid-template-columns:1fr 1fr}.strip-inner{flex-wrap:wrap;justify-content:center;gap:14px}.strip-inner span{font-size:9px}.strip-inner .sep{display:none}.page-hero{padding:90px 0 85px}.page-hero h1{font-size:clamp(55px,11vw,90px)}.page-hero .display-line{margin-top:45px}.footer-top{flex-direction:column}.fact-line{grid-template-columns:1fr 1fr}.fact{border-bottom:1px solid var(--line)}.fact:nth-child(2){border-right:0}.fact:last-child{border-bottom:0}.split-callout{padding:76px 0}}
@media(max-width:540px){.hero-title{font-size:clamp(58px,12.3vw,79px)}.three-grid,.four-grid,.fact-line{grid-template-columns:1fr}.tile{min-height:260px;padding:30px}.fact{border-right:0!important;border-bottom:1px solid var(--line)!important;padding-left:0}.fact:last-child{border-bottom:none!important}.timeline-item{grid-template-columns:1fr;gap:5px}.timeline-item .year{font-size:28px}.form-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.section-title{font-size:clamp(42px,11vw,72px)}.feature h3{font-size:27px}.statement{padding:80px 0}.statement blockquote,.statement .display-quote{font-size:clamp(33px,9vw,56px)}.page-hero h1{font-size:clamp(56px,12vw,76px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}


/* My Story: approved text layout, October 2026 */
.story-intro{max-width:890px}
.story-intro .lead{font-size:clamp(23px,3vw,38px);font-weight:600;line-height:1.42;letter-spacing:-.035em;margin:0 0 28px}
.story-intro .body-copy{max-width:820px}
.story-body .lead{margin-top:0}
.story-body .body-copy{margin-top:22px}
.story-closing{font-family:var(--site-font);font-style:normal;text-transform:none!important;letter-spacing:-.02em!important;color:#f5f5f5!important;line-height:1.4!important;font-size:clamp(23px,3vw,40px)!important;max-width:960px;margin:0 0 26px!important;font-weight:700!important}
.story-closing:last-child{color:#c3c3c3!important;margin-bottom:0!important}
@media(max-width:820px){.story-body .lead{margin-top:0}.story-intro .lead{font-size:clamp(24px,5vw,34px)}}

/* Homepage 320px mobile-width correction; preserve readable type without sideways scrolling. */
@media(max-width:359px){.split-callout .section-title{font-size:36px;letter-spacing:-.08em}}
/* Mobile usability: comfortable navigation tap targets and legible brand caption. */
@media(max-width:820px){
 .nav-toggle{min-height:44px;min-width:60px;padding:11px 13px}
 .wordmark small{font-size:10px;letter-spacing:.16em}
 .footer-links{gap:0}
 .footer-links a{display:flex;align-items:center;min-height:44px;font-size:12px}
}
/* Mobile accessibility: make text-only content links easy to tap without changing their wording. */
@media (max-width:820px){
 .tile a.text-link{display:flex;align-items:center;min-height:44px;padding:10px 0}
}

/* Respond Forward / Page 3: approved copy, content-forward accessible layouts */
.rf-hero .display-line{max-width:100%}
.rf-prose .body-copy,.rf-prose .lead{max-width:720px}
.rf-prose p:first-child{margin-top:0}
.rf-prose p{margin-bottom:21px}
.rf-prose p:last-child{margin-bottom:0}
.rf-introduction .lead{font-weight:700}
.rf-idea-list{border-top:1px solid var(--line);margin-top:37px}
.rf-idea{display:grid;grid-template-columns:minmax(90px,.26fr) minmax(0,1fr);gap:28px;padding:30px 0 33px;border-bottom:1px solid var(--line);align-items:start}
.rf-idea-number{font-size:11px;letter-spacing:.15em;font-weight:800;color:#757575;padding-top:7px}
.rf-idea h3{font-family:var(--site-font);text-transform:uppercase;font-size:clamp(22px,2.9vw,36px);line-height:1.14;letter-spacing:-.06em;max-width:750px;margin:0 0 13px}
.rf-idea p{font-size:17px;line-height:1.75;max-width:850px;color:#505050;margin:0}
.rf-takeaways .kicker{color:#bbb}
.rf-takeaways .lead{color:#fff}
.rf-audience .rf-block-intro{margin:0 0 35px}
.rf-audience-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.rf-audience-card{border:1px solid var(--line);padding:36px;min-height:265px;display:flex;flex-direction:column;align-items:flex-start}
.rf-audience-card .tile-number{margin-bottom:42px}
.rf-audience-card h3{font-family:var(--site-font);text-transform:uppercase;font-size:clamp(22px,2.5vw,29px);line-height:1.1;letter-spacing:-.055em;margin:0 0 20px}
.rf-audience-card p{font-size:16px;color:#5c5c5c;line-height:1.7;margin:0}
.rf-experience .rf-experience-intro{margin-top:20px}
.rf-after-experience{margin-top:28px}
.rf-last-line{font-family:var(--site-font);font-style:normal;font-weight:700;font-size:clamp(23px,3vw,34px);color:#fff;line-height:1.3;margin:24px 0!important}
.rf-contact .btn{display:inline-flex;align-items:center;margin-top:12px}
@media(max-width:820px){
 .rf-hero .display-line{flex-wrap:wrap}
 .rf-idea{grid-template-columns:minmax(66px,.16fr) minmax(0,1fr);gap:18px}
 .rf-audience-card{padding:30px}
}
@media(max-width:540px){
 .rf-hero h1{font-size:clamp(52px,12vw,70px);overflow-wrap:normal}
 .rf-idea{grid-template-columns:1fr;gap:9px;padding:28px 0}
 .rf-idea h3{font-size:clamp(22px,6.7vw,31px)}
 .rf-idea p{font-size:16px}
 .rf-audience-grid{grid-template-columns:1fr}
 .rf-audience-card{min-height:0;padding:28px}
 .rf-audience-card .tile-number{margin-bottom:22px}
 .rf-hero .display-line{font-size:10px;line-height:1.7}
}
@media(max-width:359px){.rf-contact .section-title,.rf-audience .section-title{font-size:36px}}
/* Tiny-phone typography: long keynote heading must fit within 320px screens. */
@media(max-width:359px){.rf-ideas .section-title{font-size:36px;overflow-wrap:anywhere}}


/* Athlete / Page 4 — editorially verified October 2026 */
.at-hero .display-line{flex-wrap:wrap}
.at-prose p{margin:0 0 23px;max-width:745px}
.at-prose p:last-child{margin-bottom:0}
.at-prose .lead{font-weight:600}
.at-contact .body-copy{color:#d0d0d0;max-width:640px}
.at-contact .btn-ghost{border-color:#a5a5a5;color:#fff}
.at-contact .btn-ghost:hover{background:#fff;color:#151515}
.dark.at-section .kicker{color:#b5b5b5}
.dark.at-section .body-copy{color:#ccc}
.dark.at-section .lead{color:#fff}
@media(max-width:820px){.at-hero .page-lead{max-width:680px}.at-section .two-col{gap:16px}}
@media(max-width:359px){.at-hero h1{font-size:53px}.at-end .section-title,.at-contact .section-title{font-size:38px}}


/* Partnerships / Page 5 — approved authored wording; editorial layout */
.pt-hero .display-line{flex-wrap:wrap}
.pt-prose p{margin:0 0 23px;max-width:740px}
.pt-prose p:last-child{margin-bottom:0}
.pt-offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.pt-offer{min-height:255px;padding:36px}
.pt-offer h3{font-size:clamp(23px,2.75vw,34px);line-height:1.13;margin:42px 0 16px;max-width:420px}
.pt-offer .body-copy{font-size:16px;line-height:1.7;color:#575757;max-width:480px}
.pt-support .kicker{color:#b7b7b7}
.pt-support .body-copy{color:#d0d0d0}
.pt-support .pt-emphasis{font-family:var(--site-font);font-weight:700;font-size:clamp(28px,3.3vw,44px);font-style:normal;line-height:1.26;letter-spacing:-.03em;color:#fff;margin:25px 0}
.pt-close .pt-prose .body-copy{color:#d0d0d0}
.pt-close .pt-last-line{font-family:var(--site-font);font-style:normal;font-weight:700;color:#fff;font-size:clamp(23px,2.6vw,33px);line-height:1.4;margin:28px 0 26px}
.pt-close .button-row{margin-top:30px}
@media(max-width:820px){.pt-section .two-col,.pt-close .two-col{gap:20px}}
@media(max-width:540px){.pt-offer-grid{grid-template-columns:1fr}.pt-offer{padding:27px;min-height:auto}.pt-offer h3{margin:26px 0 15px}}
@media(max-width:359px){.pt-hero h1{font-size:52px}.pt-section .section-title,.pt-offers .section-title,.pt-close .section-title{font-size:38px}.pt-support .section-title{font-size:34px}}
/* Page 5 narrow-device headline: one long approved word must stay on screen. */
@media(max-width:820px){.pt-hero h1{font-size:clamp(38px,9vw,70px)}}
/* Page 5 offering labels: meet normal-text contrast on light backgrounds. */
.pt-offer .tile-number{color:#646464}

/* Contact / Page 7 — single accessible Netlify inquiry form, owner-confirmed Gmail test. */
.contact-layout .form-intro{grid-column:1/-1;color:#555;line-height:1.65;margin:0 0 4px}
.contact-layout .honeypot-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.contact-layout .inquiry-submit:disabled{background:#444;color:#f5f5f5;border-color:#444;cursor:not-allowed;transform:none}
.contact-layout .form-message{display:block;margin:15px 0 0;line-height:1.55}
.contact-layout .form-success{font-weight:700;color:#21613c}
.contact-layout .form-error{font-weight:700;color:#a43131}
@media(max-width:359px){.page-hero h1{font-size:clamp(51px,15vw,62px)}}


/* The Book / Page 6 — author-approved content; minimal typography and fluid layouts. */
.bk-hero h1{font-size:clamp(53px,8.5vw,126px);max-width:100%;margin:24px 0 30px}
.bk-hero h1 span{display:block}
.bk-subtitle{font-family:var(--site-font);font-style:normal;font-weight:700;font-size:clamp(23px,3.4vw,43px);line-height:1.26;letter-spacing:-.025em;color:#ececec;max-width:870px;margin:12px 0 26px}
.bk-hero .display-line{flex-wrap:wrap}
.bk-section .kicker{color:#606060}
.bk-section.dark .kicker{color:#bababa}
.bk-section .two-col{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.bk-section .section-title{font-size:clamp(42px,4.7vw,73px);overflow-wrap:normal}
.bk-prose p{max-width:720px;margin:0 0 23px}
.bk-prose p:last-child{margin-bottom:0}
.bk-section .lead{font-weight:600}
.bk-section.dark .body-copy{color:#d1d1d1}
@media(max-width:820px){.bk-section .two-col{grid-template-columns:1fr;gap:17px}}
@media(max-width:540px){.bk-hero h1{font-size:clamp(42px,11.3vw,60px);letter-spacing:-.09em}.bk-subtitle{font-size:clamp(23px,7vw,31px)}.bk-section .section-title{font-size:clamp(37px,11vw,52px)}.bk-prose .body-copy{font-size:17px}}
@media(max-width:359px){.bk-hero h1{font-size:43px}.bk-section .section-title{font-size:38px}}

/* Site-wide audit 2026-10-16: preserve Partnerships hero wording while
   correcting measured sideways scrolling at 320px and 344px. */
@media (max-width:359px){
  .page-hero.pt-hero h1{font-size:clamp(37px,12vw,41px)}
}

/* Site-wide audit 2026-10-16: small labels on light panels must meet
   normal-text contrast without changing approved copy. */
.tile:not(.dark-tile) .tile-number,
.rf-audience-card .tile-number{color:#5f5f5f}
.rf-idea-number{color:#646464}

/* Website social links: concise, text-first, accessible; added after the two-pass audit. */
.footer-socials{display:flex;flex-direction:column;gap:14px;padding-top:15px;margin-top:5px;border-top:1px solid #4a4a4a}
.footer-social-label{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#bfbfbf;font-weight:800}
.footer-socials .social-note{font-size:9px;font-weight:500;text-transform:none;letter-spacing:0;color:#c4c4c4}
.contact-socials{margin-top:42px;max-width:440px}
.contact-social-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;margin-top:13px;border-top:1px solid #d0d0d0}
.contact-social-links a{display:inline-flex;align-items:baseline;gap:5px;border-bottom:1px solid #d0d0d0;padding:15px 0;font-size:12px;text-transform:uppercase;letter-spacing:.045em;font-weight:800;white-space:normal;overflow-wrap:anywhere}
.contact-social-links a:hover{text-decoration:underline;text-underline-offset:3px}
.contact-social-links .social-note{font-size:10px;font-weight:500;letter-spacing:0;text-transform:none;color:#555}
.footer-socials a:focus-visible,.contact-social-links a:focus-visible{outline:3px solid currentColor;outline-offset:4px}
@media(max-width:360px){.contact-social-links{grid-template-columns:1fr}}

/* October 16: Owner-approved text-only buttons throughout the site.
   Give the mobile homepage headline and introduction more breathing room below the sticky menu. */
@media(max-width:820px){
  .hero-grid{padding-top:112px}
  .hero-title{margin-top:25px}
}
@media(max-width:540px){
  .hero-grid{padding-top:106px;gap:36px}
  .hero .button-row{gap:13px;margin-top:27px}
  .hero .btn{min-height:54px}
}

/* Owner-approved homepage typography correction: match the existing sans-serif
   display/headline system. Preserve the exact quote and its sentence case. */
.statement .display-quote {
  font-family:var(--site-font);
  font-style: normal;
  font-weight: 900;
  font-size: clamp(34px, 4.75vw, 70px);
  line-height: 1.14;
  letter-spacing: -.052em;
  overflow-wrap: break-word;
}
@media (max-width: 540px) {
  .statement .display-quote { font-size: clamp(32px, 9vw, 49px); }
}

/* Owner-approved 2026-10-17 typography + decorative graphics cleanup.
   Arial is the *only* font family; variations are size and weight, not typeface.
   No italic text is introduced by HTML emphasis or browser defaults.
   The homepage must have no decorative ring, ellipse or radial overlay. */
em{font-style:normal;font-weight:700}
.hero::before,.hero::after{content:none!important;display:none!important;background:none!important}

/* Stronger red colour review — preserves all HTML, wording, links, typography, layout and forms.
   Inspired by the red treatment the owner preferred in a concept image.
   Concept imagery, photographs, mock content and other design elements are NOT used. */
:root{--accent-red:#b52834;--accent-red-on-dark:#f23f51;--accent-button:#d82032;--accent-button-hover:#ba182a}
/* Emphasis without introducing decorative shapes or new imagery. */
.hero-title .outline{color:var(--accent-red-on-dark);-webkit-text-stroke:0}
.hero .eyebrow,.page-hero .eyebrow,.split-callout .eyebrow,.statement .eyebrow{color:var(--accent-red-on-dark)}
.kicker{color:var(--accent-red)}
.dark .kicker,.split-callout .kicker,.pt-support .kicker,.rf-takeaways .kicker,.dark.at-section .kicker,.bk-section.dark .kicker{color:var(--accent-red-on-dark)}
.kicker::before{color:var(--accent-red)}
.dark .kicker::before,.statement .kicker::before,.split-callout .kicker::before{color:var(--accent-red-on-dark)}
.footer-social-label{color:var(--accent-red-on-dark)}
.hero .rule{background:var(--accent-red-on-dark)}
.nav-links a[aria-current="page"]{text-decoration:underline;text-decoration-color:var(--accent-red-on-dark);text-decoration-thickness:2px;text-underline-offset:7px}
.nav-links .nav-contact{background:transparent;color:var(--accent-red-on-dark)!important;border-color:var(--accent-red-on-dark)}
.nav-links .nav-contact:hover{background:var(--accent-button);border-color:var(--accent-button);color:#fff!important}
/* Primary actions are red. Outlined secondary actions stay black/white. */
.btn:not(.btn-ghost){background:var(--accent-button);border-color:var(--accent-button);color:#fff}
.btn:not(.btn-ghost):hover{background:var(--accent-button-hover);border-color:var(--accent-button-hover);color:#fff}
.contact-layout .inquiry-submit:disabled{background:#444!important;border-color:#444!important;color:#f5f5f5!important}
/* Additional existing small lines and labels, not new graphics. */
.tile:not(.dark-tile) .tile-number,.rf-audience-card .tile-number,.rf-idea-number,.pt-offer .tile-number{color:var(--accent-red)}
.dark-tile .tile-number{color:var(--accent-red-on-dark)}
.note{border-left-color:var(--accent-red)}
.footer-links a:hover{color:var(--accent-red-on-dark)}
.contact-social-links a:hover{color:var(--accent-red)}
@media(max-width:820px){.nav-toggle{border-left:3px solid var(--accent-red-on-dark)}}

/* Owner-requested readability refinement (October 17, 2026).
   Small typography on dark backgrounds returns to high-contrast off-white.
   Keep the red emphasis on MATTERS., primary calls to action, fine lines,
   and readable dark-red accents on light backgrounds. No layout/content edits. */
.hero .eyebrow,
.page-hero .eyebrow,
.split-callout .eyebrow,
.statement .eyebrow,
.dark .kicker,
.split-callout .kicker,
.pt-support .kicker,
.rf-takeaways .kicker,
.dark.at-section .kicker,
.bk-section.dark .kicker,
.dark-tile .tile-number,
.footer-social-label { color:#f1f1ee; }



/* Owner-requested photo composition: unique, smaller, alternately left/right.
   Original photo pixels only. No AI, face/body edits, images of third parties, or ornamental circles. */
.bh-stage-hero{margin:0 0 21px;max-width:285px;width:100%}
.bh-stage-hero img{display:block;width:100%;height:auto;max-height:315px;object-fit:contain;object-position:center;background:transparent}
.bh-stagger{padding:24px 0 47px;overflow:hidden}
.bh-stagger-light{background:var(--cream);color:#111}
.bh-stagger-white{background:#fffefa;color:#111}
.bh-stagger-dark{background:#111;color:#fff}
.bh-stagger-inner{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:start}
.bh-stagger-figure{margin:0;min-width:0;grid-column:1/span 5;max-width:100%}
.bh-stagger.bh-side-right .bh-stagger-figure{grid-column:8/span 5;justify-self:end}
.bh-stagger.bh-size-small .bh-stagger-figure{width:min(100%,315px)}
.bh-stagger.bh-size-medium .bh-stagger-figure{width:min(100%,415px)}
.bh-stagger-figure img{display:block;width:100%;height:auto;max-width:100%;max-height:510px;object-fit:contain;object-position:center}
.bh-stagger-figure img[src$="pro-card-crop.jpg"]{max-height:520px}
@media(max-width:820px){
 .bh-stage-hero{max-width:265px;margin-top:15px;margin-bottom:22px}
 .bh-stage-hero img{max-height:285px}
 .bh-stagger{padding:18px 0 36px}
 .bh-stagger-figure{grid-column:1/span 8}
 .bh-stagger.bh-side-right .bh-stagger-figure{grid-column:5/span 8}
 .bh-stagger.bh-size-small .bh-stagger-figure{width:min(100%,310px)}
 .bh-stagger.bh-size-medium .bh-stagger-figure{width:min(100%,375px)}
 .bh-stagger-figure img{max-height:410px}
}
@media(max-width:540px){
 .bh-stage-hero{max-width:245px}
 .bh-stagger{padding:16px 0 31px}
 .bh-stagger-figure{grid-column:1/span 10}
 .bh-stagger.bh-side-right .bh-stagger-figure{grid-column:3/span 10}
 .bh-stagger.bh-size-small .bh-stagger-figure{width:min(100%,235px)}
 .bh-stagger.bh-size-medium .bh-stagger-figure{width:min(100%,285px)}
 .bh-stagger-figure img{max-height:375px}
}

/* Photo-only adjustments, Oct 17: image framing, no wording or typography changed. */
.bh-stage-hero{max-width:305px}
.bh-stage-hero img{max-height:420px}
.bh-stagger.bh-size-small .bh-stagger-figure{width:min(100%,300px)}
.bh-stagger.bh-size-medium .bh-stagger-figure{width:min(100%,395px)}
@media(max-width:820px){.bh-stage-hero{max-width:260px}.bh-stagger.bh-size-small .bh-stagger-figure{width:min(100%,280px)}.bh-stagger.bh-size-medium .bh-stagger-figure{width:min(100%,350px)}}
@media(max-width:540px){.bh-stage-hero{max-width:235px}.bh-stagger.bh-size-small .bh-stagger-figure{width:min(100%,225px)}.bh-stagger.bh-size-medium .bh-stagger-figure{width:min(100%,270px)}}

/* One original Olympia stage photograph, added without moving existing approved photo placements. */
.bh-olympia-wide{margin-top:54px}
.bh-olympia-lineup{margin:0;max-width:760px}
.bh-olympia-lineup img{display:block;width:100%;height:auto;object-fit:contain}
@media(max-width:820px){.bh-olympia-wide{margin-top:32px}.bh-olympia-lineup{max-width:100%}}


/* Owner-approved focused refinement: small copy is neutral, not red;
   red remains on the large MATTERS. emphasis, primary buttons, active underline,
   red borders and small rules. No other graphic or layout changes. */
.kicker, .kicker::before,
.tile:not(.dark-tile) .tile-number,
.rf-audience-card .tile-number,
.rf-idea-number,
.pt-offer .tile-number {color:#545454}
.dark .kicker, .dark .kicker::before,
.split-callout .kicker, .split-callout .kicker::before,
.pt-support .kicker, .rf-takeaways .kicker,
.dark.at-section .kicker, .bk-section.dark .kicker,
.dark-tile .tile-number, .footer-social-label {color:#f1f1ee}
.nav-links .nav-contact {color:#fff!important}
.contact-social-links a:hover {color:#222;text-decoration-color:var(--accent-red)}
/* Slightly reduce only the two owner-selected supporting photos. */
.bh-stagger-figure img[src$="medal-portrait-original.png"] {width:auto;max-width:100%;max-height:245px}
.bh-olympia-lineup{max-width:680px}
@media(max-width:820px){.bh-olympia-lineup{max-width:min(100%,620px)}}
@media(max-width:540px){.bh-stagger-figure img[src$="medal-portrait-original.png"]{max-height:210px}}
/* Approved cutouts: transparency; never crop faces, medals or wheelchairs. */
.bh-stage-hero img[src$="approved-cutout.png"],
.bh-stagger-figure img[src$="approved-cutout.png"]{background:transparent;object-fit:contain}


/* Photo distribution update – only: stronger early athlete visual, contextual media story.
   Existing photos, buttons, typography, form and palette remain untouched. */
.at-hero .at-hero-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:20px 55px;align-items:center}
.at-hero .at-hero-copy{grid-column:1;grid-row:1;min-width:0}
.at-hero .at-hero-photo{grid-column:2;grid-row:1;margin:0;display:flex;justify-content:center;align-items:end;min-width:0;max-width:100%}
.at-hero .at-hero-photo img{width:100%;height:auto;max-width:470px;max-height:520px;object-fit:contain;display:block}
.at-hero .display-line{grid-column:1/-1;grid-row:2;margin-top:15px}
.bh-podcast-feature{background:var(--cream);color:#141414;padding:68px 0 72px}
.bh-podcast-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,340px);gap:clamp(26px,5vw,82px);align-items:center}
.bh-podcast-copy{min-width:0}
.bh-podcast-copy h2{font-family:var(--site-font);font-size:clamp(33px,4vw,60px);letter-spacing:-.065em;line-height:1.05;margin:20px 0 28px}
.bh-podcast-copy .body-copy{font-size:16px;line-height:1.8;max-width:550px}
.bh-podcast-photo{margin:0;max-width:340px;justify-self:end;min-width:0}
.bh-podcast-photo img{display:block;width:100%;height:auto;max-height:460px;object-fit:contain}
@media(max-width:820px){
  .at-hero .at-hero-layout{grid-template-columns:minmax(0,1fr) minmax(180px,.78fr);gap:14px 20px}
  .at-hero .at-hero-photo img{max-height:420px}
  .bh-podcast-layout{grid-template-columns:minmax(0,1fr) minmax(0,290px);gap:20px}
  .bh-podcast-feature{padding:52px 0}
}
@media(max-width:620px){
  .at-hero .at-hero-layout{grid-template-columns:minmax(0,1fr);gap:0}
  .at-hero .at-hero-copy{grid-column:1;grid-row:1}
  .at-hero .at-hero-photo{grid-column:1;grid-row:2;justify-content:center;margin:10px 0 0}
  .at-hero .at-hero-photo img{width:min(76%,300px);max-height:330px}
  .at-hero .display-line{grid-column:1;grid-row:3;margin-top:20px}
  .bh-podcast-layout{grid-template-columns:minmax(0,1fr);gap:24px}
  .bh-podcast-photo{width:min(74%,270px);justify-self:end}
  .bh-podcast-feature{padding:47px 0 52px}
}


/* Prelaunch editorial cleanup: selective labels, consistent hierarchy and clearer routes.
   No photography edited, no form field/Netlify behavior changed, no publishing performed. */
/* Small informational text remains neutral; red is retained for meaningful CTAs and accents. */
.kicker,.kicker::before,.tile-number,.rf-idea-number,.micro-label{color:#5b5b5b}
.dark .kicker,.dark .kicker::before,.split-callout .kicker,.split-callout .kicker::before{color:#e6e6e6}
.tile .tile-number{letter-spacing:.13em}
.three-grid .tile{min-height:300px}
.three-grid .tile .text-link{display:inline-flex;min-height:36px;align-items:center;margin-top:auto;padding-top:18px;text-underline-offset:5px}
.three-grid .tile .text-link:hover{text-decoration-thickness:2px}
.three-grid .tile .text-link:focus-visible{outline:3px solid currentColor;outline-offset:5px}
/* The My Story closing now has a single headline and two regular-weight supporting thoughts. */
.statement .story-closing-lead{font-family:var(--site-font);font-style:normal;font-weight:800!important;font-size:clamp(27px,3.3vw,42px)!important;line-height:1.35!important;letter-spacing:-.035em!important;max-width:880px;color:#f7f7f5!important;margin:0 0 28px!important}
.statement .story-closing-support,.statement .story-closing-support:last-child{font-family:var(--site-font);font-weight:400!important;font-size:clamp(19px,2.05vw,24px)!important;line-height:1.6!important;letter-spacing:0!important;max-width:830px;color:#d3d3d1!important;margin:0 0 16px!important;text-transform:none!important}
.statement .story-closing-support:last-child{margin-bottom:0!important}
/* Cards with no numerical sequence start immediately with their descriptive headings. */
.rf-audience-card h3{margin-top:0}
.pt-offer h3{margin-top:0}
/* Contact priority: inquiry first; alternate email + social links visible but secondary. */
.contact-layout{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:clamp(36px,5vw,78px);align-items:start}
.contact-primary,.contact-secondary{min-width:0}
.contact-primary .section-title{font-size:clamp(39px,4vw,60px)}
.contact-secondary .section-title{font-size:clamp(31px,3.5vw,52px);overflow-wrap:normal}
.contact-secondary .contact-email{display:inline-block;font-size:clamp(20px,2.3vw,31px);margin-top:15px;line-height:1.3;letter-spacing:-.04em}
.contact-socials{margin-top:42px}
.contact-social-heading{font-family:var(--site-font);font-size:17px;line-height:1.3;font-weight:800;letter-spacing:-.02em;margin:0}
.contact-social-links{margin-top:16px}
.contact-layout .form-note{margin:6px 0 17px;max-width:620px}
.contact-layout .form-message:empty{display:none;min-height:0;margin:0}
.contact-layout .inquiry-submit{margin-top:0}
/* Respect the user's preference for a more compact footer and less empty space. */
.footer{padding-top:59px}
.footer-top{padding-bottom:48px}
@media(max-width:820px){
 .contact-layout{grid-template-columns:minmax(0,1fr);gap:48px}
 .contact-primary{grid-row:1}
 .contact-secondary{grid-row:2;border-top:1px solid #d4d2cd;padding-top:39px}
 .contact-socials{margin-top:34px}
 .contact-layout .form-note{margin:4px 0 15px}
 .footer{padding-top:49px}
 .footer-top{padding-bottom:38px}
 .nav-links{max-height:calc(100dvh - 72px);overflow-y:auto;overscroll-behavior:contain}
}
@media(max-width:540px){
 .contact-layout{gap:39px}
 .contact-primary .section-title{font-size:clamp(37px,10vw,52px)}
 .contact-secondary .section-title{font-size:clamp(31px,9vw,43px)}
 .footer-logo{font-size:clamp(47px,13vw,65px)}
 .footer-sub{font-size:clamp(20px,6vw,26px)}
 .footer{padding-top:43px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.nav-links a{transition:none}}

/* Opaque header keeps scrolled page text from ghosting underneath on mobile. */
.site-header{background:#0c0c0c}

/* Final approved October 2026 updates — concise support resources and partnerships flow. */
.pt-support .pt-emphasis:first-child{margin-top:0}
.pt-support .pt-support-subtitle{font-family:var(--site-font);font-weight:800;font-size:clamp(21px,2.6vw,29px);letter-spacing:-.035em;line-height:1.22;color:#fff;margin:35px 0 19px}
.pt-support .pt-support-subtitle + .body-copy{margin-top:0}
.rf-support{background:#f3f2ee;color:#171717;padding:58px 0 54px;border-top:1px solid #dfddd8}
.rf-support-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(26px,7vw,106px);align-items:start}
.rf-support-heading h2{font-family:var(--site-font);font-size:clamp(29px,3vw,43px);line-height:1.04;letter-spacing:-.052em;font-weight:900;max-width:470px;margin:0 0 17px}
.rf-support-heading p{font-size:16px;line-height:1.7;color:#525252;max-width:490px;margin:0}
.rf-support-list{padding:0;margin:0;list-style:none}
.rf-support-list li{display:flex;flex-direction:column;gap:3px;padding:12px 0;border-bottom:1px solid #cecbc4}
.rf-support-list li:first-child{padding-top:0}
.rf-support-list a{font-size:15px;font-weight:800;line-height:1.55;color:#171717;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#797777}
.rf-support-list a:hover{text-decoration-color:#a31f29}
.rf-support-list a:focus-visible{outline:3px solid #a31f29;outline-offset:4px}
.rf-support-list a span{font-size:14px;margin-left:3px}
.rf-support-list li>span{font-size:13px;line-height:1.55;color:#4d4d4d}
.rf-support-disclaimer{font-size:12px;line-height:1.65;color:#555;margin:17px 0 0;max-width:650px}
@media(max-width:820px){.rf-support{padding:46px 0 43px}.rf-support-layout{grid-template-columns:1fr;gap:24px}.rf-support-heading h2{max-width:680px}}
@media(max-width:540px){.rf-support-heading h2{font-size:clamp(28px,8vw,37px)}.rf-support-layout{gap:20px}}

/* Final photo placement review: put the actual stage moment within the
   preparation text instead of isolating it in a mostly empty section. */
.at-preparation-photo{margin:20px 0 27px;max-width:295px;}
.at-preparation-photo img{display:block;width:100%;height:auto;object-fit:contain;max-height:380px;}
@media(max-width:820px){.at-preparation-photo{max-width:265px;margin:19px 0 27px;}}
@media(max-width:540px){.at-preparation-photo{max-width:min(235px,80vw);margin:16px 0 24px;}}
