/* Shared visual system: spacious charcoal, warm gold, clear navigation. */
:root { --accent-color:#edbd68; --primary-color:#edbd68; --border-color:rgba(237,189,104,.22); --text-secondary:#bcc0bf; --text-primary:#faf7f0; }
html { background:#0b0e10; scroll-padding-top:110px; }
body { max-width:none; background:#0b0e10; font-size:16px; line-height:1.7; }
body::before,body::after { display:none; }
p,li,label,figcaption,.tagline,.subheading { font-size:1rem; line-height:1.7; color:#bdc1c0; }
h1,h2,h3,h4 { line-height:1.12; letter-spacing:-.035em; }
h2 { font-size:clamp(1.8rem,3.5vw,2.9rem); }
h3 { font-size:1.2rem; }
p { margin:0 0 1.2rem; }
a { text-underline-offset:4px; }
a,button,summary { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:3px solid #ffe1a5 !important; outline-offset:5px; }
[hidden] { display:none !important; }
.skip-link { position:fixed; top:8px; left:16px; z-index:1000; padding:12px 18px; color:#111; background:#edbd68; transform:translateY(-150%); }
.skip-link:focus { transform:translateY(0); }
.site-nav { width:100%; max-width:none; top:0; z-index:100; padding:20px max(24px,calc((100vw - 1180px)/2)); gap:25px; backdrop-filter:blur(18px); background:rgba(11,14,16,.96) !important; }
.site-brand { flex-shrink:0; }
.site-brand__mark { width:38px; height:40px; }
.site-brand__mark span { border:1px solid #edbd68; padding:8px 4px; font-size:13px; letter-spacing:-1px; }
.site-brand__mark span::after { display:none; }
.site-brand__text { gap:6px; }
.site-brand__name { font-size:12px; letter-spacing:.12em; }
.site-brand__subtitle { font-size:9px; letter-spacing:.2em; }
.site-nav__menu { display:flex; position:static; width:auto; flex-direction:row; align-items:center; margin:0; padding:0; gap:8px; border:0 !important; background:transparent !important; list-style:none; }
.site-nav__menu a { width:auto; font-size:13px; font-weight:500; text-transform:none; letter-spacing:0; padding:10px 14px; color:#d4d6d2; border:0; }
.site-nav__menu .nav-cta { background:#edbd68 !important; color:#101315; padding:12px 20px; border-radius:5px !important; margin-left:12px; font-weight:600; }
.site-nav__toggle { display:none; }
.tools-menu { position:relative; }
.tools-menu summary { cursor:pointer; font-size:13px; padding:10px 14px; color:#d4d6d2; list-style:none; display:flex; gap:12px; align-items:center; }
.tools-menu summary::-webkit-details-marker { display:none; }
.tools-dropdown { position:absolute; top:calc(100% + 18px); right:0; min-width:230px; background:#161c20; border:1px solid #394044; border-radius:8px; padding:8px; box-shadow:0 20px 50px #0008; }
.tools-dropdown a { display:block; padding:12px 14px; }
.hero,section { max-width:1180px; background:transparent !important; padding:64px 0; border-bottom:1px solid #ffffff12 !important; }
section:not(.hero):not(.article-nav):not(.qualifier-card) { width:calc(100% - 48px); max-width:1180px; }
.section-label,.hero__eyebrow { font-size:11px; line-height:1.5; font-weight:600; letter-spacing:.16em; margin-bottom:20px; text-transform:uppercase; }
.home-page .hero { padding:70px 24px 65px; max-width:1228px; }
.hero__content { grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr); gap:65px; align-items:center; }
.hero__eyebrow { max-width:none; }
.hero h1 { font-size:clamp(2.8rem,5.2vw,4.5rem); line-height:1.04; text-align:left; letter-spacing:-.055em; }
.hero h1 span { color:#edbd68; }
.hero .tagline { font-size:17px; line-height:1.75; max-width:460px; margin:25px 0; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin:25px 0; }
.cta-button,.secondary-button,button,.programButtons,input[type="submit"] { width:auto; min-height:48px; padding:14px 20px; font-size:13px; text-transform:none; letter-spacing:0; font-weight:600; border-radius:5px !important; }
.cta-button,button,.programButtons,input[type="submit"] { background:#edbd68 !important; color:#111719 !important; }
.cta-button { display:inline-flex; gap:22px; align-items:center; justify-content:center; text-decoration:none; }
.cta-button:hover { background:#ffcf80 !important; transform:translateY(-2px); }
.secondary-button { display:inline-flex; align-items:center; justify-content:center; background:transparent !important; border-color:#ffffff36 !important; }
.coaching-note { border:0; padding:0; font-size:13px; color:#9ca5a7; font-weight:400; }
.coaching-note span { color:#f3e8d4; }
.hero-card { display:block; overflow:visible; border-radius:0; position:relative; box-shadow:none; backdrop-filter:none; }
.hero-card img { display:block; width:100%; height:auto; aspect-ratio:1.1; object-fit:cover !important; object-position:center; border-radius:9px; border:1px solid #ffffff20; }
.hero-card__body { margin:-18px 18px 0; position:relative; padding:22px 26px; background:#181f22; border-color:#ffffff1c; border-radius:6px; }
.hero-card__label { font-size:11px; letter-spacing:.1em; margin-bottom:12px; color:#edbd68; }
.hero-card__list { list-style:none; padding:0; gap:6px; }
.hero-card__list li { font-size:13px; }
.hero-card__list li::before { content:'✓'; color:#edbd68; margin-right:10px; }
.info-grid { margin-top:32px; gap:20px; grid-template-columns:repeat(3,1fr); }
.info-card { padding:30px !important; background:#12181b !important; border:1px solid #ffffff12 !important; border-radius:7px !important; }
.info-card h3 { font-size:20px; margin:18px 0 12px; }
.info-card h3::before { display:none; }
.info-card p { margin:0; font-size:15px; }
.card-number { color:#edbd68; font-size:11px; letter-spacing:.13em; }
.intro-section__content { max-width:760px; margin:0; }
.audience-section .intro-section__content { display:grid; grid-template-columns:1.1fr 1fr; column-gap:70px; max-width:none; }
.audience-section .section-label { grid-column:1/-1; }
.audience-section h2 { grid-column:1; }
.audience-section p:not(.section-label) { grid-column:1; }
.audience-section .checklist { grid-column:2; grid-row:2/4; margin:0; align-self:center; gap:16px; }
.checklist li { font-size:15px; line-height:1.65; }
.free-tools-section { display:grid; grid-template-columns:1fr 1fr; gap:75px; align-items:center; }
.free-tools-section p { max-width:400px; }
.tool-links>a { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:24px 0; border-bottom:1px solid #ffffff18; text-decoration:none; }
.tool-links>a:first-child { border-top:1px solid #ffffff18; }
.tool-links small { display:block; color:#edbd68; font-size:10px; letter-spacing:.16em; }
.tool-links strong { display:block; font-size:21px; color:#f7f2ea; margin:6px 0; font-weight:500; }
.tool-links span span { color:#9fa9ac; font-size:13px; }
.tool-links b { font-size:26px; font-weight:400; }
.tool-links a:hover strong { color:#edbd68; }
.home-page .story-section { display:grid; grid-template-columns:.85fr 1.15fr; gap:28px 65px; }
.story-heading { grid-column:2; }
.home-page .story-photo { grid-column:1; grid-row:1/3; margin:0; align-self:start; width:100%; }
.home-page .story-photo img { display:block; aspect-ratio:4/5; width:100%; height:auto; object-position:center; }
.story-copy { grid-column:2; }
.story-lead { color:#f3eadc; font-size:20px; }
.story-details { border-top:1px solid #ffffff20; margin-top:24px; }
.story-details summary { cursor:pointer; color:#edbd68; padding:20px 0; list-style:none; display:flex; justify-content:space-between; }
.story-details p { font-size:15px; }
.home-page .cta-section { text-align:center; padding:70px 40px; margin:40px auto 70px; background:#151d21 !important; border:1px solid #ffffff14 !important; border-radius:9px !important; }
.cta-section .section-label,.cta-section h2 { text-align:center; }
.cta-section>p:not(.section-label) { max-width:590px; margin:20px auto; }
.cta-section .hero-actions { justify-content:center; }
.page-hero { max-width:1180px; min-height:280px; padding:60px 24px; }
.page-hero h1 { font-size:clamp(2.5rem,5vw,4rem); line-height:1.08; }
.page-hero aside { font-size:13px; }
.page-hero .emailIG { font-size:13px; }
body.interior-page main>section:not(.calculator-section):not(.resources-section):not(.article-section) { max-width:900px; }
body.interior-page main>section h4 { margin-top:35px; font-size:15px; line-height:1.4; }
body.interior-page main>section p { line-height:1.85; }
.pricing-panel { display:grid; grid-template-columns:1.5fr 1fr; align-items:center; gap:40px; }
.price { color:#f8f2e6; font-size:48px; margin:0 0 16px; line-height:1.2; }
.price small { display:block; font-size:12px; color:#edbd68; }
.price span { font-size:15px; color:#bbc0c0; }
.start-panel { display:grid; grid-template-columns:1.3fr .7fr; gap:60px; align-items:start; }
.start-panel img { width:100%; margin:0; max-width:none; }
.start-panel h2 { font-size:32px; }
.start-panel .checklist { margin:25px 0; gap:12px; }
.start-panel .contact-help { font-size:13px; margin-top:16px; overflow-wrap:anywhere; }
.site-footer { display:grid; grid-template-columns:1.5fr 1fr 1fr; gap:50px; max-width:1180px; width:calc(100% - 48px); margin:0 auto; padding:50px 0; border-top:1px solid #ffffff18; }
.site-footer a { display:block; text-decoration:none; font-size:13px; color:#c5cbca; margin-bottom:12px; overflow-wrap:anywhere; }
.site-footer .footer-brand { font-size:18px; color:#faf7f0; font-weight:600; }
.footer-brand span { display:block; font-size:10px; letter-spacing:.16em; text-transform:uppercase; color:#edbd68; margin-top:4px; }
.site-footer p { font-size:13px; }
.site-footer .section-label { color:#edbd68; font-size:10px; }
.site-footer a:hover { color:#edbd68; }
.calculator-grid,.resource-grid { gap:20px; }
.calculator-card,.resource-card { padding:24px !important; }
input,select,textarea { font-size:16px; min-height:46px; }
.article-section article[id] { scroll-margin-top:105px; }
.workout-form__lead,.field-help,.step-label,.workout-fieldset legend,.workout-form label { color:#d5d8d6; }
.workout-fieldset { background:#10171b; border-color:#ffffff24; }
.workout-submit { width:100%; }
@media(max-width:900px) {
 .site-nav { padding:16px 24px; }
 .site-nav__toggle { display:block; width:44px; height:44px; min-width:44px; padding:0; }
 .site-nav__menu { display:none; position:absolute; top:100%; right:16px; width:min(350px,calc(100vw - 32px)); max-height:calc(100dvh - 90px); overflow:auto; padding:16px; flex-direction:column; align-items:stretch; background:#151d21 !important; border:1px solid #ffffff26 !important; }
 .site-nav__menu a { padding:13px; }
 .site-nav__menu .nav-cta { margin:12px 0 0; justify-content:center; }
 .tools-menu summary { padding:13px; }
 .tools-dropdown { position:static; box-shadow:none; margin:5px 0; min-width:0; }
 .hero__content { gap:30px; }
 .hero h1 { font-size:clamp(2.8rem,6vw,4rem); }
 .hero-actions { flex-direction:column; align-items:stretch; }
 .info-card { padding:22px !important; }
 .site-footer { gap:25px; }
}
@media(max-width:640px) {
 .hero,section { padding:42px 0; }
 .home-page .hero { padding:38px 24px 40px; }
 .hero__content { grid-template-columns:1fr; gap:28px; }
 .hero h1 { font-size:clamp(2.65rem,10vw,3.7rem); }
 .hero .tagline { font-size:16px; margin:20px 0; }
 .hero-actions { margin:22px 0; }
 .hero-card img { aspect-ratio:1.22; }
 .hero-card__body { margin:-12px 14px 0; padding:19px 22px; }
 .hero-card__list { gap:5px; }
 .info-grid { grid-template-columns:1fr; gap:12px; }
 .info-card h3 { margin-top:12px; }
 .audience-section .intro-section__content { display:block; }
 .audience-section .checklist { margin-top:25px; }
 .free-tools-section { grid-template-columns:1fr; gap:14px; }
 .home-page .story-section { display:flex; flex-direction:column; gap:20px; }
 .home-page .story-photo { max-width:none; }
 .home-page .story-photo img { aspect-ratio:4/3; }
 .home-page .cta-section { padding:40px 24px; margin:20px auto 40px; }
 .cta-section .hero-actions { display:flex; }
 .page-hero { min-height:240px; padding:45px 24px; }
 .page-hero h1 { font-size:38px; }
 .pricing-panel,.start-panel { grid-template-columns:1fr; gap:25px; }
 .start-panel img { max-height:400px; object-fit:cover; object-position:top; }
 .site-footer { grid-template-columns:1fr 1fr; gap:25px 20px; padding:35px 0; }
 .site-footer>div:first-child { grid-column:1/-1; }
 .site-footer .section-label { margin-bottom:15px; }
 .site-footer a { font-size:12px; }
 .page-hero aside { overflow-wrap:anywhere; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none !important; animation:none !important; } }
.site-brand__text { display:grid; }
.site-nav { flex-wrap:nowrap; }
.hero-card__list li,.checklist li { margin:0; }
.checklist li::marker { content:''; }
a:hover,a:focus { color:#ffda95; }
.site-nav__menu a[aria-current='page'] { box-shadow:none; }
.site-brand:hover,.site-brand:focus { background:transparent !important; box-shadow:none; }
