/* =========================================================================
   Football Beast — "Pitch Line" theme (29 Sep 2026)
   Loaded AFTER each page's own <style>, so it only restyles: all markup,
   IDs, links, forms and scripts stay exactly as they were.
   Rules: black / white / #6DCA3A only, lines not boxes, Barlow Condensed
   headlines (uppercase), Inter body, green = action.
   ========================================================================= */

:root{
  --green:#6DCA3A;
  --green-bright:#4EA825;
  --green-deep:#4EA825;
  --black:#000000;
  --ink:#000000;
  --panel:#000000;
  --panel-2:#000000;
  --line:#333333;
  --text:#FFFFFF;
  --muted:#888888;
  --r:0px;
  --display:'Barlow Condensed','Arial Narrow',Arial,sans-serif;
}

[hidden]{display:none !important}
html{scroll-padding-top:84px}
body{background:#000;color:#fff;font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif}
::selection{background:var(--green);color:#000}

h1,h2,h3,.display{font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:-.005em;line-height:.92}
h3{font-weight:700;line-height:1}

a:focus-visible,button:focus-visible,summary:focus-visible,
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--green);outline-offset:3px}

.green{color:var(--green)}
.eyebrow{font-family:'Inter',sans-serif;font-weight:500;letter-spacing:0;text-transform:none;font-size:.95rem;color:var(--muted);margin-bottom:14px}
.divider-brush{display:none}

/* No scroll-in animation: content is visible immediately */
.reveal-up,.js .reveal-up{opacity:1 !important;transform:none !important;transition:none !important}

/* ---------- Buttons ---------- */
.btn{border-radius:4px;border-width:2px;font-family:var(--display);font-weight:700;font-size:1.2rem;letter-spacing:.01em;
  padding:.6rem 1.5rem;min-height:48px;transition:background .15s ease,color .15s ease,border-color .15s ease}
.btn-solid{background:var(--green);border-color:var(--green);color:#000}
.btn-solid:hover{background:#4EA825;border-color:#4EA825;color:#000;transform:none}
.btn-ghost{background:transparent;color:var(--green);border-color:var(--green)}
.btn-ghost:hover{background:rgba(109,202,58,.1);color:var(--green);transform:none}

/* ---------- Nav ---------- */
header.nav{background:#000;backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom:2px solid transparent;padding:12px clamp(16px,4vw,40px)}
header.nav.scrolled{background:#000;border-bottom-color:var(--line)}
.brand{font-family:var(--display);font-weight:800;font-size:1.65rem;letter-spacing:.01em;gap:12px}
.brand span{line-height:.95}
.brand em,.foot-brand em{font-style:normal;color:var(--green)}
.brand span small{font-family:'Inter',sans-serif;font-size:.72rem;letter-spacing:0;text-transform:none;color:var(--muted);font-weight:500;margin-top:4px}
.brand img{height:44px;width:44px}
nav.links{gap:26px}
nav.links a{font-weight:500;font-size:.95rem;opacity:1;color:#fff}
nav.links a:hover{color:var(--green)}
nav.links a.btn-solid,nav.links a.btn-solid:hover{color:#000}
.burger{width:44px;height:44px;align-items:center;justify-content:center}
.burger span{background:#fff}

/* ---------- Hero: the pitch at night, lit by your cursor ---------- */
.hero{background:#000;min-height:640px}
.hero .layer{background-position:right center;background-size:cover}
.hero .base{background-image:url('hero_pitch_base.png') !important}
.hero .reveal{background-image:url('hero_pitch_reveal.png') !important}
.hero::before{content:"";position:absolute;inset:88px 24px 0 24px;border:2px solid var(--line);border-bottom:0;z-index:20;pointer-events:none}
.hero-overlay{top:0;bottom:0;display:flex;align-items:center;background:none;padding:104px clamp(16px,4vw,40px) 56px}
.hero-overlay .inner{width:min(1180px,calc(100vw - 112px))}
.hero h1{font-size:clamp(4rem,11vw,10rem);font-weight:800;line-height:.84;max-width:7ch}
.hero h1 .stroke{color:#fff;-webkit-text-stroke:0}
.hero p.lead{color:#fff;max-width:520px;font-size:clamp(1rem,1.4vw,1.2rem);line-height:1.55;margin-top:26px}
.hero-cta{margin-top:32px;gap:14px}
.hint{top:auto;bottom:22px;left:auto;right:44px;transform:none;letter-spacing:0;text-transform:none;font-size:.85rem;color:var(--muted);animation:none;text-align:right}
.scrolldown{display:none}

/* Portrait screens (phones, tablets upright): logo top-right, text at the bottom */
@media (max-aspect-ratio:1/1){
  .hero .layer{background-position:right top}
  .hero .base{background-image:url('hero_pitch_base_m.png') !important}
  .hero .reveal{background-image:url('hero_pitch_reveal_m.png') !important}
  .hero::before{inset:76px 12px 0 12px}
  .hero-overlay{align-items:flex-end;padding:96px 0 40px}
  .hero-overlay .inner{width:calc(100vw - 56px)}
  .hint{display:none}
}

/* ---------- Section rhythm ---------- */
.section-pad{padding:clamp(72px,9vw,128px) 0}
.section-head{max-width:920px;margin-bottom:52px}
.section-head h2,.about h2[style],.contact h2[style]{font-size:clamp(2.6rem,6.2vw,5.5rem) !important;font-weight:800 !important;line-height:.9}
.section-head h1{font-size:clamp(2.8rem,6.5vw,6rem) !important;line-height:.88}
.section-head p{color:#fff;font-size:1.1rem;max-width:660px}
.about,.services,.pricing,.contact,.partners-bg{background:#000}

/* About */
.about-grid{gap:56px;align-items:start}
.about-grid p{color:#fff}
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:2px solid var(--line);margin-top:32px}
.stat{border:0;border-left:2px solid var(--line);border-radius:0;background:none;padding:20px 22px;min-width:0}
.stat:first-child{border-left:0}
.stat b{font-family:var(--display);font-weight:700;font-size:2.2rem;color:#fff;line-height:1;margin-bottom:6px}
.stat span{color:var(--muted);font-size:.9rem}

/* Credentials panel -> match sheet */
.creds{border:2px solid var(--line);border-radius:0;background:#000;box-shadow:none}
.creds-top{padding:26px 24px;border-bottom:2px solid var(--line)}
.creds-top .band-img,.creds-top .band-duo,.creds-top .band-shade,.creds-top .band-base{display:none}
.creds-top b{font-family:var(--display);font-weight:800;font-size:2.1rem;text-transform:uppercase;margin-bottom:6px}
.creds-top span{color:var(--muted)}
.creds-list .row{border-top:2px solid var(--line);padding:18px 24px}
.creds-list .row:first-child{border-top:0}
.creds-list .row b{font-family:var(--display);font-size:1.35rem;font-weight:700}
.creds-list .row span{color:var(--muted);font-size:.92rem}

/* Icons: plain white line icons, no boxes */
.creds-list .ic,.feature .ic,.ci .ic{background:none;border:0;border-radius:0;width:auto;height:auto;display:flex;justify-content:flex-start;align-items:flex-start}
.ic svg,.feature .ic svg{stroke:#fff}
.ico-inline{stroke:currentColor}

/* Feature grids -> ruled grid (lines, not cards) */
.feature-grid{gap:0;border-top:2px solid var(--line);border-left:2px solid var(--line)}
.feature{border:0;border-right:2px solid var(--line);border-bottom:2px solid var(--line);border-radius:0;background:none;padding:28px}
.feature:hover{transform:none;border-color:var(--line)}
.feature .ic{margin-bottom:18px}
.feature h3{font-size:1.65rem;margin-bottom:10px}
.feature p{color:#fff;font-size:1rem}
#coaches .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}

/* Full-width bands: photos retired, lines instead */
.band{background:#000}
.band .band-base,.band .band-img,.band .band-duo,.band .band-shade{display:none}

/* Manifesto: the halfway line */
.manifesto{min-height:0;display:block;text-align:left;padding:clamp(88px,12vw,168px) 0;border-top:2px solid var(--line);border-bottom:2px solid var(--line)}
.manifesto h2{position:relative}
.manifesto h2::before{content:"";position:absolute;left:-100vw;right:-100vw;top:50%;height:2px;margin-top:-1px;background:var(--line);z-index:-1}
.manifesto .kicker{color:var(--muted);letter-spacing:0;text-transform:none;font-weight:500;font-size:1rem;margin-bottom:18px}
.manifesto h2{font-family:var(--display);font-weight:800;font-size:clamp(4.5rem,15vw,13rem);line-height:.82;letter-spacing:-.01em}
.manifesto h2 .stroke{color:#fff;-webkit-text-stroke:0}
.manifesto p{margin:28px 0 0;max-width:560px;color:#fff;font-size:1.1rem}
.manifesto .hero-cta{justify-content:flex-start}

/* ---------- Services: daylight section ---------- */
.services{background:#fff;color:#000}
.services .eyebrow{color:#333}
.services .section-head h2{color:#000}
.services .section-head p{color:#333}
.svc-grid{gap:56px 48px}
.svc{border:0;border-top:4px solid #000;border-radius:0;background:none;padding:28px 0 0;overflow:visible;color:#000}
.svc::before{display:none}
.svc .tag{background:none;color:#333;padding:0;border-radius:0;letter-spacing:0;text-transform:none;font-weight:500;font-size:.95rem;margin-bottom:10px}
.svc h3{font-size:clamp(2rem,3vw,2.6rem);color:#000;margin-bottom:12px}
.svc p[style]{color:#333 !important}
.svc ul li{color:#000}
.svc ul li::before{top:12px;width:12px;height:2px;border:0;border-radius:0;background:#000}
.services .green{color:#000;font-weight:700;text-decoration:underline;text-decoration-color:var(--green);text-decoration-thickness:3px;text-underline-offset:4px}
.addons{border:0;border-top:2px solid #333;border-bottom:2px solid #333;border-radius:0;background:none;padding:22px 0;margin-top:56px;color:#000}
.addons strong{color:#000}

/* ---------- Pricing: match sheet ---------- */
.price-tabs{gap:8px}
.price-tab{border:2px solid var(--line);background:#000;color:#fff;border-radius:4px;font-family:var(--display);font-weight:700;font-size:1.15rem;padding:.55rem 1.1rem;min-height:48px}
.price-tab:hover{border-color:var(--muted)}
.price-tab.active{background:var(--green);border-color:var(--green);color:#000}
.price-panel.active{animation:none}
.price-note{color:#fff}
.table-card{border:2px solid var(--line);border-radius:0;background:#000;overflow-x:auto}
thead th{background:none;color:var(--muted);font-family:'Inter',sans-serif;font-weight:500;font-size:.9rem;letter-spacing:0;text-transform:none}
tbody tr{border-top:2px solid var(--line)}
tbody tr:hover{background:none}
td.prog{font-family:var(--display);font-weight:700;font-size:1.3rem;color:#fff}
td.price{font-family:var(--display);font-weight:700;font-size:1.4rem;color:#fff}
.pill-row{gap:0;margin-top:0;border:2px solid var(--line);border-top:0}
.pill{border:0;border-left:2px solid var(--line);border-radius:0;background:none;padding:18px 20px;color:#fff}
.pill:first-child{border-left:0}
.pill b{color:#fff}
.founding{margin-top:40px;background:var(--green);color:#000;border:0;border-radius:4px;padding:26px 30px}
.founding h3{color:#000;font-size:1.9rem}
.founding p{color:#000}
.founding .ico-inline{stroke:#000}

/* ---------- FAQ: daylight section ---------- */
#faq{background:#fff !important;color:#000}
#faq .eyebrow{color:#333}
#faq .section-head h2{color:#000}
.faq{gap:0;margin-inline:0;max-width:920px;border-top:2px solid #333}
.faq details{background:none;border:0;border-bottom:2px solid #333;border-radius:0;padding:0}
.faq summary{font-family:var(--display);font-weight:700;font-size:1.55rem;line-height:1.1;padding:20px 0;color:#000;min-height:48px}
.faq summary::after{color:#000;font-family:'Inter',sans-serif;font-weight:400}
.faq details>p{color:#333;font-size:1.05rem;padding-bottom:22px;max-width:70ch}
#faq a{color:#000 !important;text-decoration:underline;text-decoration-color:var(--green);text-decoration-thickness:3px;text-underline-offset:3px}

/* ---------- CTA band: the penalty box ---------- */
.ctaband{position:relative;isolation:isolate;background:#000;border-top:0;padding:clamp(120px,12vw,168px) 0 0}
.ctaband .wrap{position:relative;max-width:920px;border:2px solid var(--line);border-bottom:0;background:#000;
  padding:clamp(40px,6vw,72px) clamp(24px,5vw,64px);flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:28px}
.ctaband .wrap::before{content:"";position:absolute;left:50%;top:-100px;width:200px;height:200px;margin-left:-100px;border:2px solid var(--line);border-radius:50%;z-index:-1}
.ctaband h2{font-family:var(--display);font-weight:800;font-size:clamp(2.4rem,5vw,4.6rem);line-height:.9;max-width:none}
.ctaband p{color:#fff;margin-inline:auto}

/* ---------- Contact ---------- */
.contact-grid{gap:56px}
.contact-list{gap:0;margin-top:28px;border-top:2px solid var(--line)}
.ci{border:0;border-bottom:2px solid var(--line);border-radius:0;background:none;padding:18px 0}
.ci:hover{transform:none;border-color:var(--line)}
.ci b{font-family:var(--display);font-size:1.35rem;font-weight:700}
.ci span,.ci a{color:#fff}
.ci a{text-decoration:underline;text-decoration-color:var(--green);text-decoration-thickness:2px;text-underline-offset:4px}
.ci a:hover{color:var(--green)}
form{border:2px solid var(--line);border-radius:0;background:#000;padding:32px}
form label{color:var(--muted);font-size:.9rem;font-weight:500}
input,textarea,select{background:#000;border:2px solid var(--line);border-radius:4px;color:#fff;min-height:48px}
input:focus,textarea:focus,select:focus{border-color:var(--green)}
input::placeholder,textarea::placeholder{color:#888}
select option{background:#000;color:#fff}

/* ---------- Partners ticker ---------- */
.pticker{border-top:2px solid var(--line);border-bottom:2px solid var(--line);background:#000}
.pticker + .pticker,section + .pticker{margin-top:0}
.pticker-label{font-family:var(--display);font-weight:700;font-size:1.05rem;letter-spacing:0;text-transform:none;color:#fff;border-right:2px solid var(--line);background:#000}
.pticker-item b{font-family:var(--display);font-weight:700;font-size:1.1rem;color:#fff}
.pticker-item span{color:var(--muted)}
.pticker-dot{background:var(--line);opacity:1;border-radius:0;width:12px;height:2px}

/* ---------- Partners page ---------- */
.partner{border:2px solid var(--line);border-radius:0;background:#000;box-shadow:none}
.partner-logo{background:#000;border-right:2px solid var(--line)}
.partner-logo img.logo{filter:none}
.qr-tile{border-radius:4px;box-shadow:none}
.partner-logo .scanline{font-family:'Inter',sans-serif;font-weight:500;letter-spacing:0;text-transform:none;font-size:.9rem;color:var(--muted)}
.partner-body .tag{background:none;color:var(--muted);padding:0;border-radius:0;letter-spacing:0;text-transform:none;font-weight:500;font-size:.95rem}
.partner-body h3{font-size:clamp(2rem,3.4vw,3rem)}
.partner-body .strap{color:#fff;font-weight:600}
.partner-body p{color:#fff}
.chip{border:2px solid var(--line);border-radius:4px;background:none;color:#fff}
.chip:hover{transform:none;border-color:var(--muted)}
.chip svg{stroke:#fff}
.partner-note{color:var(--muted)}

/* ---------- Footer ---------- */
footer.site{border-top:2px solid var(--line);background:#000}
.foot-brand{font-family:var(--display);font-weight:800;font-size:1.65rem;letter-spacing:.01em}
.foot-brand em{margin-left:-12px}
.foot-links{color:#fff}
.foot-links a:hover{color:var(--green)}
.foot-bottom{border-top:2px solid var(--line);color:var(--muted)}
.beast-tag{font-family:var(--display);font-weight:600;letter-spacing:.12em;color:#fff}

/* ---------- Responsive ---------- */
@media(max-width:900px){
  nav.links{background:#000;border-bottom:2px solid var(--line)}
  nav.links a{border-top:2px solid #111}
  nav.links a.btn{border-top:2px solid var(--green);justify-content:center;width:auto}
  #coaches .feature-grid{grid-template-columns:1fr}
  .partner-logo{border-right:0;border-bottom:2px solid var(--line)}
}
@media(max-width:700px){
  .stats{grid-template-columns:1fr}
  .stat{border-left:0;border-top:2px solid var(--line)}
  .stat:first-child{border-top:0}
  .pill-row{flex-direction:column}
  .pill{border-left:0;border-top:2px solid var(--line);min-width:0}
  .pill:first-child{border-top:0}
  .feature{padding:22px}
  .ctaband .wrap{margin-inline:12px;width:auto}
  .ctaband .wrap::before{width:150px;height:150px;margin-left:-75px;top:-75px}
  form{padding:22px}
  th,td{padding:12px 12px}
  td.prog{font-size:1.1rem}
  td.price{font-size:1.15rem;white-space:normal}
}
