.trainer-agreement-page{max-width:1180px;padding-top:28px}.trainer-agreement-page .legal-heading{max-width:none;padding-bottom:30px}.trainer-agreement-page .back-link{width:fit-content;min-height:44px;color:var(--muted);align-items:center;gap:8px;margin-bottom:22px;font-size:13px;text-decoration:none;display:flex}.trainer-agreement-page .legal-heading h1{letter-spacing:-.04em;margin:0 0 14px;font-size:clamp(34px,4vw,48px);font-weight:650;line-height:1.15}.trainer-agreement-page .legal-heading>p{margin:0;font-size:15px;line-height:1.7}.trainer-agreement-page .legal-meta{gap:22px 48px;margin-top:26px}.trainer-agreement-page .legal-meta span{overflow-wrap:anywhere;gap:5px;font-size:14px;line-height:1.6}.trainer-agreement-page .legal-meta strong{color:var(--ink);font-size:12px;font-weight:650}.trainer-agreement-page .legal-actions{align-items:center;gap:12px 24px;margin-top:24px}.trainer-agreement-page .btn{min-height:46px;font-size:13px}.agreement-sign-link{text-underline-offset:4px;align-items:center;min-height:44px;font-size:13px;display:inline-flex}.trainer-agreement-page .legal-layout{grid-template-columns:245px minmax(0,1fr);align-items:start;gap:50px;padding-top:36px}.trainer-agreement-page .legal-toc{scrollbar-width:thin;background:0 0;border:0;border-radius:0;gap:0;max-height:calc(100dvh - 140px);padding:0 16px 0 0;top:110px}.trainer-agreement-page .legal-toc strong{margin:0;padding:0 0 14px;font-weight:650}.trainer-agreement-page .legal-toc a{align-items:center;min-height:44px;padding:9px 0;font-size:12px;line-height:1.5;display:flex}.trainer-agreement-page .legal-toc a:hover{text-underline-offset:4px;text-decoration:underline}.trainer-agreement-page .legal-toc .agreement-toc-sign{border-top:1px solid var(--line);color:var(--ink);margin-top:10px;font-weight:650}.trainer-agreement-page .legal-document{min-width:0}.trainer-agreement-page .legal-document>.notice{background:var(--sage-2);border:1px solid var(--line);color:var(--ink);border-radius:12px;margin:0 0 34px;padding:22px}.trainer-agreement-page .notice strong{font-size:14px;font-weight:650}.trainer-agreement-page .notice p{margin:10px 0 0;font-size:13px;line-height:1.8}.trainer-agreement-page .legal-section{margin-bottom:28px;padding-bottom:28px;scroll-margin-top:110px}.trainer-agreement-page .legal-section h2{margin-bottom:14px;font-size:23px;font-weight:650;line-height:1.35}.trainer-agreement-page .legal-section p{color:#46534b;overflow-wrap:anywhere;font-size:15px;line-height:1.85}.trainer-agreement-page .agreement-signature-box{border:1px solid var(--line);background:var(--card);border-radius:14px;margin:0;padding:28px;scroll-margin-top:110px}.trainer-agreement-page .agreement-signature-box h2{color:var(--ink);margin:0 0 12px;font-size:25px;font-weight:650;line-height:1.3}.trainer-agreement-page .agreement-signature-box>p{margin:0 0 24px;font-size:14px;line-height:1.8}.trainer-agreement-page .agreement-signature-box .form-grid{grid-template-columns:minmax(0,1fr);gap:22px}.trainer-agreement-page .agreement-signature-box label{font-size:13px;line-height:1.6}.trainer-agreement-page input[name=signatureName]{width:100%;min-width:0;font-size:16px}.trainer-agreement-page .checkbox-row{background:var(--paper-2);border-radius:9px;align-items:flex-start;gap:12px;margin:0;padding:16px;display:flex}.trainer-agreement-page .checkbox-row input{width:18px;height:18px;accent-color:var(--ink);flex-shrink:0;margin-top:3px}.trainer-agreement-page .checkbox-row span{gap:6px;display:grid}.trainer-agreement-page .checkbox-row strong{font-size:13px;font-weight:650}.trainer-agreement-page .checkbox-row small{color:var(--muted);font-size:12px;line-height:1.7}.trainer-agreement-page :is(a,button,input):focus-visible{outline:2px solid var(--sage-dark);outline-offset:4px}@media (max-width:800px){.trainer-agreement-page .legal-layout{grid-template-columns:minmax(0,1fr);gap:28px}.trainer-agreement-page .legal-toc{border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px;max-height:none;padding:0 0 24px;position:static}.trainer-agreement-page .legal-toc strong{grid-column:1/-1}}@media (max-width:520px){.trainer-agreement-page{padding-top:16px}.trainer-agreement-page .legal-meta{flex-direction:column;gap:18px}.trainer-agreement-page .legal-toc{grid-template-columns:minmax(0,1fr)}.trainer-agreement-page .legal-toc a{font-size:13px}.trainer-agreement-page .legal-section h2{font-size:21px}.trainer-agreement-page .agreement-signature-box{padding:20px}.trainer-agreement-page .agreement-signature-box .btn{width:100%}}.agreement-snapshot{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.85}
