/* ==========================================================================
   Barbell Empowered — conversion-layer stylesheet
   Shared by the six new pages (Comrades LP, ZA, case studies, comparison,
   coach bio, application). Design tokens lifted verbatim from the live
   /barbellempowered/ landing page so every page reads as one site.
   Fonts are loaded per-page via a Google Fonts <link>.
   ========================================================================== */

:root{
  --dark:#1A1A1A;
  --ink:#1A1A1A;
  --grey:#F4F4F4;
  --grey-line:#D1D1D1;
  --dark-line:#2a2a2a;
  --green:#06bd66;
  --green-hover:#059952;
  --muted:#5c5c56;
  --muted-dark:#a8a8a2;
  --white:#fff;
  --max:1200px;
  --measure:660px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);background:var(--white);line-height:1.7;-webkit-font-smoothing:antialiased;font-size:1.05rem}
img{max-width:100%;display:block}
a{color:inherit}
a:hover{color:var(--green)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 32px}
.measure{max-width:var(--measure)}

/* ---- type ---- */
h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:700;line-height:1.15;letter-spacing:-0.015em;color:var(--ink)}
h3{font-family:'Inter',sans-serif;font-weight:700;line-height:1.35;color:var(--ink)}
h1{font-size:clamp(2.4rem,5vw,4rem)}
h2{font-size:clamp(1.8rem,3.4vw,2.5rem)}
h3{font-size:1.1rem}
h1 em,h2 em{color:var(--green);font-style:italic}
.eyebrow{display:inline-flex;align-items:center;gap:16px;font-family:'Roboto Mono','Courier New',monospace;font-size:.72rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:22px}
.eyebrow::after{content:"";height:1px;width:56px;background:var(--grey-line);flex-shrink:0}
section.dark .eyebrow{color:var(--muted-dark)}
section.dark .eyebrow::after{background:var(--dark-line)}
.hero .eyebrow{color:var(--muted-dark)}
.hero .eyebrow::after{background:var(--dark-line)}
.lede{font-size:1.1rem;color:var(--muted);max-width:65ch}
em{font-style:italic}

/* ---- buttons ---- */
.btn{display:inline-block;padding:15px 30px;font-family:'Inter',sans-serif;font-weight:700;font-size:.82rem;text-decoration:none;border-radius:2px;letter-spacing:.05em;text-transform:uppercase;transition:background-color .2s ease, color .2s ease, border-color .2s ease;cursor:pointer;border:none}
.btn-green{background:var(--green);color:#fff}
.btn-green:hover{background:var(--green-hover);color:#fff}
.btn-ghost{border:1px solid var(--dark-line);color:#fff;background:transparent}
.btn-ghost:hover{border-color:var(--green);color:var(--green)}
.btn-ghost-light{border:1px solid var(--ink);color:var(--ink);background:transparent}
.btn-ghost-light:hover{border-color:var(--green);color:var(--green)}
.btn-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}

/* ---- header ---- */
header{background:var(--dark);color:#fff;position:sticky;top:0;z-index:50;border-bottom:1px solid var(--dark-line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:68px}
.brand{display:flex;align-items:baseline;gap:10px;text-decoration:none;font-family:'Bebas Neue','Arial Narrow',sans-serif;font-weight:400;letter-spacing:.08em;font-size:1.1rem;color:#fff}
.brand span{color:var(--green)}
.brand small{font-family:'Roboto Mono',monospace;font-weight:400;letter-spacing:.15em;color:var(--muted-dark);font-size:.65rem;text-transform:uppercase}
nav.links{display:flex;gap:26px;align-items:center}
nav.links a{text-decoration:none;font-family:'Inter',sans-serif;font-size:.82rem;font-weight:500;color:#d8d8d2;transition:color .2s ease}
nav.links a:hover{color:var(--green)}
nav.links .btn{padding:10px 20px}
@media(max-width:900px){nav.links a:not(.btn){display:none}}

/* ---- breadcrumb ---- */
.crumb{background:var(--dark);color:var(--muted-dark);border-bottom:1px solid var(--dark-line);font-family:'Roboto Mono',monospace;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase}
.crumb .wrap{padding-top:14px;padding-bottom:14px}
.crumb a{color:var(--muted-dark);text-decoration:none}
.crumb a:hover{color:var(--green)}
.crumb span{color:#fff}

/* ---- hero ---- */
.hero{background:var(--dark);color:#fff;padding:96px 0 88px}
.hero h1{color:#fff}
.hero .status{display:inline-flex;align-items:center;gap:10px;font-family:'Roboto Mono',monospace;font-size:.7rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:#d8d8d2;border:1px solid var(--dark-line);padding:8px 14px;margin-bottom:28px;border-radius:2px}
.hero .status i{width:8px;height:8px;background:var(--green);display:inline-block;border-radius:0}
.hero p{color:var(--muted-dark);max-width:620px;margin-top:24px;font-size:1.12rem;line-height:1.7}
.hero p strong{color:#fff;font-weight:600}

/* ---- sections ---- */
section{padding:88px 0}
section.tight{padding:64px 0}
section.dark{background:var(--dark);color:#fff}
section.dark h1,section.dark h2,section.dark h3{color:#fff}
section.dark .lede{color:var(--muted-dark)}
section.shell{background:var(--grey)}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:52px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:36px;margin-top:52px}
@media(max-width:820px){.grid-3,.grid-2{grid-template-columns:1fr}}
.cell{border-top:1px solid var(--grey-line);padding-top:22px}
.dark .cell{border-top-color:var(--dark-line)}
.cell h3{margin-bottom:12px}
.cell p{font-size:.95rem;color:var(--muted);line-height:1.65}
.dark .cell p{color:var(--muted-dark)}
.cell .num{font-family:'Roboto Mono',monospace;font-size:.7rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--green);display:block;margin-bottom:12px}
blockquote{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-weight:700;border-left:4px solid var(--green);padding-left:28px;margin-top:48px;font-size:clamp(1.4rem,2.4vw,1.9rem);line-height:1.35;max-width:660px;color:var(--ink)}
.dark blockquote{color:#fff}

/* ---- long-form prose (LP, bio, case studies) ---- */
.prose{max-width:var(--measure);margin-top:8px}
.prose > *{margin-top:0}
.prose h2{margin:52px 0 4px}
.prose h3{margin:34px 0 4px;font-size:1.15rem}
.prose p{margin-top:18px;color:var(--ink);font-size:1.06rem;line-height:1.75}
.prose p.sub{color:var(--muted)}
.prose ul,.prose ol{margin:18px 0 0 0;padding-left:0;list-style:none}
.prose li{position:relative;padding:9px 0 9px 26px;border-bottom:1px solid var(--grey-line);color:var(--ink);line-height:1.6;font-size:1rem}
.prose li:last-child{border-bottom:0}
.prose li::before{content:"";position:absolute;left:0;top:18px;width:8px;height:8px;background:var(--green)}
.prose li b{font-weight:700}
.prose a{color:var(--green);font-weight:600;text-decoration:none;border-bottom:1px solid rgba(6,189,102,.4)}
.prose a:hover{border-bottom-color:var(--green)}
.prose strong{font-weight:700}

/* ---- comparison table ---- */
.table-scroll{margin-top:52px;overflow-x:auto;border:1px solid var(--grey-line);border-radius:2px}
table.cmp{width:100%;border-collapse:collapse;font-size:.95rem;min-width:640px}
table.cmp th,table.cmp td{padding:18px 20px;text-align:left;vertical-align:top;border-bottom:1px solid var(--grey-line)}
table.cmp thead th{font-family:'Roboto Mono',monospace;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);background:var(--grey);font-weight:400}
table.cmp tbody th{font-family:'Inter',sans-serif;font-weight:700;color:var(--ink);width:34%}
table.cmp td{color:var(--muted);line-height:1.6}
table.cmp td b{color:var(--ink);font-weight:700}
table.cmp tr:last-child th,table.cmp tr:last-child td{border-bottom:0}

/* ---- case component ---- */
.case{background:#fff;border:1px solid var(--grey-line);padding:40px;margin-top:52px;border-radius:2px}
.dark .case{background:#242426;border-color:var(--dark-line)}
.case .who{font-family:'Roboto Mono',monospace;font-size:.7rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--green);margin-bottom:18px}
.case h3{font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:1.55rem;line-height:1.25;letter-spacing:-0.01em}
.dark .case h3{color:#fff}
.case p{margin-top:16px;font-size:.98rem;color:var(--muted);line-height:1.7}
.dark .case p{color:var(--muted-dark)}
.case .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:30px;border-top:1px solid var(--grey-line);padding-top:26px}
.dark .case .stats{border-top-color:var(--dark-line)}
.case .stats b{display:block;font-family:'Playfair Display',Georgia,serif;font-size:1.75rem;font-weight:700;letter-spacing:-0.015em;color:var(--ink)}
.dark .case .stats b{color:#fff}
.case .stats span{font-family:'Roboto Mono',monospace;font-size:.68rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-top:6px;display:block}
.dark .case .stats span{color:var(--muted-dark)}
@media(max-width:640px){.case .stats{grid-template-columns:1fr}}
.testimonial p{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-weight:700;font-size:1.15rem;line-height:1.5;color:#fff}

/* ---- coach block ---- */
.coach-grid{display:grid;grid-template-columns:300px 1fr;gap:56px;margin-top:52px;align-items:start}
@media(max-width:820px){.coach-grid{grid-template-columns:1fr}}
.coach-grid img{width:100%;filter:grayscale(100%);border-radius:2px}
.coach-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:40px;background:var(--dark-line)}
.coach-stats div{background:var(--dark);padding:22px}
.coach-stats b{display:block;font-family:'Playfair Display',Georgia,serif;font-size:1.5rem;font-weight:700;letter-spacing:-0.015em;color:#fff}
.coach-stats span{font-family:'Roboto Mono',monospace;font-size:.65rem;color:var(--muted-dark);letter-spacing:.15em;text-transform:uppercase;margin-top:4px;display:block}
@media(max-width:640px){.coach-stats{grid-template-columns:repeat(2,1fr)}}

/* ---- pricing tiers ---- */
.tiers{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin-top:52px}
@media(max-width:820px){.tiers{grid-template-columns:1fr}}
.tier{background:#fff;border:1px solid var(--grey-line);padding:40px;display:flex;flex-direction:column;border-radius:2px}
.tier.premium{border-color:var(--ink);border-width:2px}
.tier .tier-name{font-family:'Roboto Mono',monospace;font-size:.7rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.tier .price{font-family:'Playfair Display',Georgia,serif;font-size:3.2rem;font-weight:700;letter-spacing:-0.02em;line-height:1;margin:14px 0 8px;color:var(--ink)}
.tier .terms{font-family:'Roboto Mono',monospace;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:26px}
.tier ul{list-style:none;flex:1}
.tier li{font-size:.92rem;padding:11px 0;border-bottom:1px solid var(--grey-line);line-height:1.55;color:var(--muted)}
.tier li b{font-weight:700;color:var(--ink)}
.tier .btn{margin-top:30px;text-align:center}
.fineprint{margin-top:36px;font-size:.88rem;color:var(--muted);max-width:660px;line-height:1.7}
.fineprint b{color:var(--ink)}

/* ---- callout / checkpoint ---- */
.checkpoint{margin-top:32px;background:#fff;border-left:4px solid var(--green);padding:26px 30px;max-width:660px;border-radius:2px;border-top:1px solid var(--grey-line);border-right:1px solid var(--grey-line);border-bottom:1px solid var(--grey-line)}
.checkpoint h3{margin-bottom:10px}
.checkpoint p{font-size:.95rem;color:var(--muted);line-height:1.65}
.checkpoint p a{color:var(--green);font-weight:700;text-decoration:none;border-bottom:1px solid var(--green)}
.checkpoint p a:hover{color:var(--green-hover);border-bottom-color:var(--green-hover)}

/* ---- steps ---- */
.steps{counter-reset:step;margin-top:44px;max-width:660px}
.steps li{list-style:none;display:flex;gap:22px;padding:20px 0;border-bottom:1px solid var(--dark-line);align-items:baseline}
.steps li::before{counter-increment:step;content:"0" counter(step);font-family:'Roboto Mono',monospace;font-weight:400;color:var(--green);font-size:.8rem;letter-spacing:.15em}
.steps li p{font-size:.98rem;color:#d8d8d2;line-height:1.6}
section:not(.dark) .steps li{border-bottom-color:var(--grey-line)}
section:not(.dark) .steps li p{color:var(--muted)}

/* ---- FAQ ---- */
.faq{max-width:var(--measure);margin-top:44px}
.faq .item{border-top:1px solid var(--grey-line);padding:24px 0}
.faq .item:last-child{border-bottom:1px solid var(--grey-line)}
.dark .faq .item{border-top-color:var(--dark-line)}
.dark .faq .item:last-child{border-bottom-color:var(--dark-line)}
.faq h3{font-size:1.08rem;margin-bottom:10px}
.faq p{color:var(--muted);font-size:1rem;line-height:1.7}
.dark .faq p{color:var(--muted-dark)}
.faq p a{color:var(--green);font-weight:600;text-decoration:none;border-bottom:1px solid rgba(6,189,102,.4)}
.faq p a:hover{border-bottom-color:var(--green)}

/* ---- CTA band ---- */
.cta-band{text-align:left}
.cta-band .price-row{display:flex;gap:40px;flex-wrap:wrap;margin-top:28px}
.cta-band .price-row div{border-top:1px solid var(--dark-line);padding-top:14px}
.cta-band .price-row .p{font-family:'Playfair Display',Georgia,serif;font-size:2rem;font-weight:700;color:#fff;letter-spacing:-0.02em}
.cta-band .price-row .l{font-family:'Roboto Mono',monospace;font-size:.66rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted-dark);margin-top:6px}

/* ---- application form ---- */
.form-wrap{max-width:680px;margin-top:48px;background:#fff;border:1px solid var(--grey-line);padding:40px;border-radius:2px}
.form-wrap fieldset{border:none;margin-bottom:34px}
.form-wrap legend{font-family:'Roboto Mono',monospace;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--green);padding-bottom:16px;margin-bottom:8px;width:100%;border-bottom:1px solid var(--grey-line);display:flex;gap:14px;align-items:baseline}
.form-wrap legend span{color:var(--muted)}
.field{margin-top:20px}
.field label{display:block;font-size:.9rem;font-weight:600;color:var(--ink);margin-bottom:8px}
.field .hint{font-weight:400;color:var(--muted);font-size:.82rem}
.field input[type=text],.field input[type=email],.field input[type=tel],.field input[type=url],.field select,.field textarea{width:100%;border:1px solid var(--grey-line);padding:13px 14px;font-family:'Inter',sans-serif;font-size:1rem;background:#fff;outline:none;color:var(--ink);border-radius:2px;transition:border-color .2s ease}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--green)}
.field textarea{min-height:110px;resize:vertical;line-height:1.6}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media(max-width:560px){.two-col{grid-template-columns:1fr}}
.consent-row{display:flex;gap:12px;align-items:flex-start;margin-top:8px;font-size:.88rem;color:var(--muted);line-height:1.55}
.consent-row input{accent-color:var(--green);margin-top:4px;flex-shrink:0}
.form-wrap .btn{width:100%;text-align:center;margin-top:8px}
.form-note{margin-top:16px;font-family:'Roboto Mono',monospace;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-align:center}

/* ---- footer ---- */
footer{background:var(--dark);color:var(--muted-dark);padding:60px 0;font-size:.85rem;border-top:1px solid var(--dark-line)}
footer .foot{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;align-items:center}
footer .foot > div:first-child{font-family:'Roboto Mono',monospace;font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;line-height:1.9}
footer .foot > div:first-child b{color:#fff;letter-spacing:.15em;font-weight:400;font-family:'Bebas Neue','Arial Narrow',sans-serif;font-size:1.1rem}
footer a{color:#d8d8d2;text-decoration:none;margin-right:20px;font-family:'Inter',sans-serif;font-size:.85rem}
footer a:hover{color:var(--green)}
.disclaimer{max-width:820px;margin-top:32px;font-size:.78rem;line-height:1.75;color:#77776f}
.copyline{margin-top:22px;font-family:'Roboto Mono',monospace;font-size:.68rem;letter-spacing:.15em;text-transform:uppercase;color:#77776f}
