/* TWM editorial athletic presentation. Existing business and app flows retained. */
:root{--ink:#102e24;--muted:#435e51;--line:#cbdad1;--deep:#082e22;--green:#06432e;--accent:#c5f06b}
body{background:#f3f7f4 url('twm-background.svg?v=25ceed5e6d') center top/cover fixed;font-size:1rem}
main{overflow:clip}h1,h2,h3,p,li{overflow-wrap:break-word}h1,h2{letter-spacing:-.018em}h1 em{color:var(--green)}
.site-header{background:#fff;border-bottom:2px solid var(--green);backdrop-filter:none;padding-block:18px}
.desktop-nav a{font-size:.9375rem}.button,.button.small{border-radius:2px;min-height:48px}.button:hover{background:#0c5a40}.button.secondary{background:transparent;color:var(--green)}
a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid #5c7900;outline-offset:4px}.skip{z-index:100}
.hero{max-width:1440px;grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);align-items:center;gap:5%;padding:64px 6% 72px;min-height:0}
.hero-copy{padding:0;background:transparent;border:0;border-radius:0;overflow:visible}.hero-copy:after,.hero-brand:before{display:none}
.hero h1{font-size:clamp(3.5rem,6.7vw,6.25rem);line-height:1.02}.hero .lead{font-size:1.2rem;margin-block:28px;max-width:31ch}.hero-foot{border-top:1px solid var(--line);padding-top:20px;max-width:430px}
.hero-brand{display:flex;align-items:center;width:100%;max-width:440px;justify-self:center;border:0;border-radius:2px;background:var(--deep);padding:20px;color:#fff;box-shadow:12px 12px 0 #c5f06b}
.brand-top,.brand-bottom{width:100%;padding:0;font-size:.75rem;letter-spacing:.06em}.brand-top{padding-bottom:14px;align-items:center}.brand-bottom{display:flex;flex-wrap:wrap;padding-top:14px;margin:0;gap:8px;border-color:#ffffff45}
.hero-coach-photo{margin:0;width:100%;max-width:360px;position:relative}.hero-coach-photo img{width:100%;height:auto;aspect-ratio:2/3;object-fit:contain;object-position:50% 50%;background:#101915;display:block}.hero-coach-photo figcaption{margin:0;padding:14px 0;font-size:.875rem;letter-spacing:.035em;border-bottom:1px solid #ffffff45;border-top:0;display:flex;justify-content:space-between;gap:8px}.hero-coach-photo figcaption span{font-size:.75rem;color:#e6eee8}
.principles{border-top:1px solid #ffffff35;gap:20px;padding:22px 6%;font-size:.9375rem;letter-spacing:0;background:var(--deep)}
.section{max-width:1440px;padding:80px 6%;background:transparent}.section h2{font-size:clamp(2.75rem,4.5vw,4.5rem);line-height:1.06}.eyebrow{font-size:.8125rem;letter-spacing:.12em}.eyebrow:before{width:32px;background:#55750e;transform:none}
.approach{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:8%;border-block:0}.approach-items article{padding:24px 0}.approach-items article>span{font:700 2rem/1 'Barlow Condensed',Impact,sans-serif;min-width:35px}.approach-items h3{font-size:1.25rem}
.coaching{max-width:none;background:#fff;border-block:1px solid var(--line)}.coaching>.section-head,.coaching>.package-context,.coaching>.offers,.coaching>.choice-help,.coaching>.other-options,.coaching>.billing{max-width:1268px;margin-inline:auto}
.section-head{gap:32px;align-items:end}.section-head>p{font-size:1.0625rem;line-height:1.7}.offers{gap:0}.offer,.offer-card{border-radius:0;box-shadow:none;border:1px solid var(--line);border-top:4px solid var(--green);padding:30px 26px}.offer+.offer{border-left:0}.offer.featured{background:var(--deep);border-top-color:var(--accent)}.offer h3{font-size:1.5rem}.offer .price{font-family:'Barlow Condensed',Impact,sans-serif;font-size:3.5rem;letter-spacing:-.015em}.offer .price small{font-family:Inter,Arial,sans-serif;font-size:.875rem}.offer .button{font-size:1rem}.offer-badge{font-size:.8125rem}.offer.featured .button:hover{background:#e6f6ce}
.choice-help{border-radius:0;border-left:4px solid var(--green);background:#f3f7f4;padding:26px}.billing{border-radius:0;box-shadow:none;background:transparent;grid-template-columns:1fr 3fr;padding:26px 0 0;border:0;border-top:1px solid var(--line)}
.process-grid{gap:0}.process-grid article{border:0;border-radius:0;background:transparent;box-shadow:none;padding:0 28px;border-left:1px solid var(--line)}.process-grid article:first-child{padding-left:0;border:0}.process-grid article>span{font:700 3rem/1 'Barlow Condensed',Impact,sans-serif;padding:0 0 24px}.process-grid h3{font-size:1.25rem}
.enroll{max-width:1268px;margin:0 auto 60px;border-radius:2px;padding:56px 6%;background:var(--deep);color:#fff;text-align:left;position:relative;border-left:8px solid var(--accent)}.enroll h2{font-size:clamp(2.75rem,5vw,4.5rem)}.enroll>p:not(.eyebrow){margin:24px 0;color:#e6eee8}.enroll .eyebrow:before{background:var(--accent)}.enroll .button{background:var(--accent);color:var(--deep);border-color:var(--accent)}.enroll .button:hover{background:#ddf8a7}.enroll a{color:var(--accent)}
.about-hero{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:7%;align-items:center;padding-block:64px 80px}.about-intro{padding:0}.about-intro h1{font-size:clamp(3.5rem,6.4vw,6rem);line-height:1.03}.about-intro .lead{max-width:35ch;font-size:1.125rem}.about-signature{border-left:3px solid var(--green);padding-left:18px}
.about-brand{width:100%;max-width:390px;justify-self:center;margin:0;padding:18px;border:0;border-radius:2px;background:var(--deep);box-shadow:12px 12px 0 var(--accent)}.about-brand img{width:100%;height:auto;aspect-ratio:2/3;object-fit:contain;object-position:center center;background:#101915}.about-brand figcaption{padding:14px 0 0;border:0;font-size:.8125rem;line-height:1.65;letter-spacing:.055em}
.about-credentials{max-width:none;background:#fff;border-block:1px solid var(--line)}.about-credentials>.section-head,.about-credentials>.credential-list,.about-credentials>.competition-record,.show-gallery{max-width:1268px;margin-inline:auto}.credential-list{gap:32px}.credential-list li{border-top:3px solid var(--green)}.credential-list span{font-size:.875rem}.competition-record{gap:6%;margin-top:44px;padding-top:36px}.competition-placings dd{font-size:5rem}.competition-placings dt{font-size:1rem}.competition-event>p:not(.eyebrow){font-size:1rem}
.show-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:36px!important;padding-top:32px;border-top:1px solid var(--line)}.show-gallery figure{margin:0;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:20px;align-items:center;background:#f3f7f4;padding:20px;border-bottom:3px solid var(--green)}.show-gallery img{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:contain;object-position:center;background:var(--deep)}.show-gallery figcaption{font-size:.9375rem;line-height:1.7;color:var(--ink)}.show-gallery figcaption span{display:block;color:var(--muted);font-size:.875rem}.show-gallery figcaption strong{display:block;font-family:'Barlow Condensed',Impact,sans-serif;font-size:1.6rem;text-transform:uppercase;line-height:1.2;margin-bottom:12px}
.about-story{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:8%;border:0}.about-prose{font-size:1.125rem;line-height:1.8}.about-quote{margin-top:28px;border-color:var(--green);font-size:2rem}.about-learning{max-width:none;background:var(--deep);color:#fff}.about-learning .section-head>p,.about-disciplines p{color:#e2ece5}.about-learning .eyebrow:before{background:var(--accent)}.about-disciplines{gap:32px}.about-disciplines article{border-color:#ffffff50}.about-disciplines article>span{color:var(--accent);font-size:1rem}.about-disciplines h3{font-size:1.25rem}
.movement-strip{max-width:1268px;margin:0 auto 64px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;background:transparent}.movement-strip figure{margin:0;background:var(--deep);padding:14px 14px 0;border:0;border-radius:2px}.movement-strip img{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:contain;object-position:center;background:var(--deep)}.movement-strip figcaption{position:static;padding:16px 0;color:#fff;background:none;font-size:.875rem;font-weight:700;letter-spacing:.08em;text-align:center}.about-motto{padding:54px 6%;background:var(--deep);border-top:1px solid #ffffff40}.about-motto h2{font-size:clamp(3rem,5vw,5rem)}
.client-page-intro{padding-bottom:44px;background:transparent}.client-page-intro h1{max-width:850px;line-height:1.04}.client-start{max-width:1268px;border-radius:0;border:0;border-top:4px solid var(--green);background:#fff;padding-top:42px;padding-bottom:48px;margin-bottom:64px}.client-start h2{max-width:760px}.client-short-steps{list-style-position:outside;max-width:800px}.client-short-steps li{padding:14px 0;border-bottom:1px solid var(--line)}.client-start .intake-note{color:var(--ink)}
footer{max-width:1440px;margin:auto;border-top:2px solid var(--green);padding:48px 6%;background:transparent;column-gap:7%}.social-follow nav{gap:12px;flex-wrap:wrap}.social-follow nav a{border-radius:2px}.social-follow .eyebrow{margin-bottom:12px}footer .scope{color:var(--muted)}
@media(max-width:1100px){.site-header .desktop-nav{gap:8px}.desktop-nav a{font-size:.875rem}.hero{gap:5%}.offer{padding:26px 20px}.show-gallery figure{grid-template-columns:1fr;gap:16px}.show-gallery img{max-width:260px;justify-self:center}.show-gallery figcaption{text-align:center}.about-hero{gap:5%}}
@media(max-width:850px){.hero,.about-hero{grid-template-columns:1fr;gap:36px;padding:40px 6% 52px}.hero-copy{padding:0}.hero h1,.about-intro h1{font-size:clamp(3rem,9vw,4.75rem)}.hero-brand{margin:auto;max-width:360px;padding:18px;min-height:0}.hero .lead{max-width:38ch}.hero-coach-photo{width:100%;max-width:none}.hero .actions .button{flex:0 1 auto}.hero .eyebrow{font-size:.8125rem;letter-spacing:.08em}.brand-bottom{font-size:.75rem}.section{padding:52px 6%}.section h2{font-size:clamp(2.5rem,6vw,3.5rem)}.approach{grid-template-columns:1fr;gap:28px}.section-head{display:block}.section-head>p{margin-top:24px}.core-offers{grid-template-columns:1fr}.offer+.offer{border-left:1px solid var(--line);border-top:1px solid var(--line)}.offer.featured{border-top:4px solid var(--accent)}.process-grid{grid-template-columns:1fr;gap:26px}.process-grid article,.process-grid article:first-child{padding:26px 0 0;border-left:0;border-top:1px solid var(--line)}.process-grid article>span{padding-bottom:18px}.enroll{margin:0 6% 40px;padding:36px 6%}.billing{grid-template-columns:1fr;gap:12px}.about-brand{max-width:360px;padding:18px}.credential-list{grid-template-columns:1fr;gap:24px}.competition-record{grid-template-columns:1fr;gap:24px}.competition-placings{gap:24px}.show-gallery{gap:20px;margin-top:28px!important}.show-gallery figure{padding:14px}.about-story{grid-template-columns:1fr;gap:24px}.about-disciplines{grid-template-columns:1fr;gap:28px}.movement-strip{margin:0 6% 40px;gap:16px}.movement-strip figure{padding:10px 10px 0}.movement-strip figcaption{font-size:.75rem;letter-spacing:.04em}.client-start{margin:0 6% 40px}.client-start p,.client-short-steps{font-size:1.0625rem}.client-page-intro h1{font-size:clamp(2.75rem,8vw,4rem)}footer{padding:36px 6%;grid-template-columns:1fr}}
@media(max-width:540px){.show-gallery{grid-template-columns:1fr;gap:16px}.show-gallery figure{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:16px}.show-gallery figcaption{text-align:left}.show-gallery figcaption strong{font-size:1.375rem}.movement-strip{grid-template-columns:1fr;gap:20px}.movement-strip figure{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.75fr);gap:16px;padding:14px;align-items:center}.movement-strip img{width:100%;height:auto;max-height:none}.movement-strip figcaption{font-size:.875rem;letter-spacing:.035em;text-align:left;overflow-wrap:normal}.hero .actions{gap:12px}.hero .actions .button{flex:1 1 100%}.hero h1,.about-intro h1{font-size:clamp(2.75rem,11.5vw,3.5rem)}.hero-brand,.about-brand{box-shadow:8px 8px 0 var(--accent)}.hero-coach-photo figcaption{flex-wrap:wrap}.brand-top{flex-wrap:wrap}.hero .lead{font-size:1.0625rem}.competition-placings dd{font-size:4rem}.hero-foot{font-size:.9375rem}.show-gallery figcaption span{font-size:.875rem}.about-prose{font-size:1.0625rem}.principles{flex-direction:column;align-items:flex-start;font-size:.875rem}}
.movement-strip figure{max-width:none}.core-offers{gap:0}.core-offers .offer .button{font-size:1rem}.core-offers .price{font-size:3.5rem}.core-offers .offer h3{font-size:1.5rem;min-height:0}.package-fit,.package-scope{min-height:0}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
