.portal-footer{max-width:none}
.portal-footer p{max-width:1100px;margin:0 auto 9px;line-height:1.65}
.portal-footer a{color:var(--gold2)}
.span-two{grid-column:1/-1}
.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.check-grid label{display:flex;align-items:flex-start;gap:8px;font-weight:500}
.check-grid input{width:auto}
.form-grid fieldset{border:1px solid var(--line);border-radius:10px;padding:16px}
.form-grid legend{color:var(--gold2);font-weight:800}
.legal-copy{max-width:900px;margin:auto}
.legal-copy h2{margin-top:30px}
.legal-copy p{line-height:1.75;color:#c3cad7}
.legal-copy .muted{color:var(--muted)}

.coaches-section{display:block}
.coaches-intro{max-width:900px}
.coachCards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:55px}
.coachCard{background:linear-gradient(145deg,#12171e,#090c10);border:1px solid #d7a52f45;padding:24px}
.coachCard img,.coachPlaceholder{width:100%;aspect-ratio:4/5;object-fit:cover;margin-bottom:24px;background:linear-gradient(145deg,#1a2433,#0b1018)}
.coachPlaceholder{display:grid;place-items:center;font:900 80px Georgia,serif;color:var(--gold2)}
.coachCard h3{font-size:25px;margin:10px 0}
.coachCard p{color:#9aa2ae;line-height:1.6;font-size:13px}
.coachCard strong{color:#fff}
.coachCredential{border-top:1px solid #2b313b;padding-top:14px}
footer a{color:var(--gold2)}
.disabledCta{display:inline-block;cursor:not-allowed;opacity:.55;pointer-events:none}
.benefitList{list-style:none;padding:0;margin:28px 0 34px;display:grid;gap:14px}
.monthlyCard .benefitList{display:grid!important}
.benefitList li{position:relative;padding-left:28px;color:#c3cad7;line-height:1.45;font-size:14px}
.benefitList li:before{content:"✓";position:absolute;left:0;top:0;color:#36a3ff;font-weight:900}
.benefitList .notIncluded{color:#9aa1ad}
.benefitList .notIncluded:before{content:"✕";color:#ff5d6c}
.benefitList strong{color:#fff}
.annualBonus{border:1px solid #36a3ff;background:#0d2138;margin:25px 0 0;padding:16px 18px;display:grid;gap:4px}
.annualBonus strong{color:#52b5ff;font-size:12px;letter-spacing:1.5px}
.annualBonus span{color:#fff;font-weight:800;line-height:1.35}
.questionsWrap{max-width:1300px}
.questionsHeading{text-align:center;margin:0 auto 55px}
.questionsHeading h2{margin-bottom:0}
.questionList{display:grid;gap:12px}
.questionList details{border:1px solid #36a3ff;background:#121820}
.questionList summary{cursor:pointer;list-style:none;padding:22px 26px;color:#fff;font-weight:800;font-size:18px;display:flex;justify-content:space-between;gap:20px}
.questionList summary::-webkit-details-marker{display:none}
.questionList summary span{color:#52b5ff;font-size:25px;line-height:.8}
.questionList details[open] summary span{transform:rotate(45deg)}
.questionList details p{border-top:1px solid #273545;margin:0;padding:20px 26px;color:#b6bfcc;line-height:1.7}
.paymentNotice{grid-column:1/-1;margin:26px 0 0;padding:16px 18px;border:1px solid #d7a52f55;background:#d7a52f0b;color:#aeb6c2;font-size:12px;line-height:1.65}
.paymentNotice strong{color:#f1c75b}
.faqWrap{grid-template-columns:minmax(0,360px) minmax(0,1fr);gap:90px}
.faqWrap>div{min-width:0}
.faq h2{font-size:clamp(44px,3.5vw,56px)!important;line-height:.96;max-width:360px;overflow-wrap:normal}

@media(max-width:900px){
  .coachCards{grid-template-columns:1fr}
  .coachCard{max-width:620px}
  .faqWrap{grid-template-columns:1fr;gap:50px}
  .faq h2{max-width:700px}
}
@media(max-width:800px){
  .span-two{grid-column:auto}
  .check-grid{grid-template-columns:1fr}
}
