@layer partner {
  .partner-page { padding-block:32px 64px; }
  .partner-intro { max-width:900px; margin-bottom:30px; }
  .partner-intro .overline { display:block; margin-bottom:8px; color:var(--accent); font-weight:750; }
  .partner-intro h1 { margin-bottom:12px; }
  .partner-intro p { max-width:820px; color:var(--muted); font-size:19px; line-height:1.6; }
  .partner-privacy-note { max-width:900px; margin:-10px 0 24px; padding:12px 14px; border-left:3px solid var(--accent); background:#eaf1ff; color:var(--ink); font-size:14px; line-height:1.55; }
  .partner-privacy-note strong { color:var(--accent); }
  .partner-layout { display:grid; grid-template-columns:minmax(260px,340px) minmax(0,1fr); gap:28px; align-items:start; }
  .partner-benefits,.partner-form,.partner-success { border:1px solid var(--line); border-radius:8px; background:#fff; }
  .partner-benefits { position:sticky; top:20px; padding:24px; }
  .partner-benefits h2 { font-size:23px; }
  .partner-benefits ol { list-style:none; padding:0; counter-reset:partner-step; margin:20px 0; }
  .partner-benefits li { position:relative; padding:0 0 20px 44px; counter-increment:partner-step; }
  .partner-benefits li::before { content:counter(partner-step); position:absolute; left:0; top:0; width:30px; height:30px; display:grid; place-items:center; border-radius:50%; background:#e7efff; color:var(--accent); font-weight:800; }
  .partner-benefits li:not(:last-child)::after { content:''; position:absolute; left:14px; top:34px; bottom:4px; border-left:1px solid var(--line); }
  .partner-benefits strong,.partner-benefits span { display:block; }
  .partner-benefits span { margin-top:3px; color:var(--muted); font-size:14px; line-height:1.5; }
  .partner-benefits>p { padding-top:16px; border-top:1px solid var(--line); color:var(--muted); font-size:13px; line-height:1.55; }
  .partner-form { padding:26px; }
  .partner-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
  .partner-fields label { min-width:0; display:grid; align-content:start; gap:7px; font-weight:700; font-size:14px; }
  .partner-fields input,.partner-fields textarea,.partner-fields select { width:100%; min-width:0; border:1px solid #aab9cd; border-radius:5px; background:#fff; color:var(--ink); padding:11px 12px; font:400 16px/1.4 var(--sans); }
  .partner-fields input,.partner-fields select { min-height:47px; }
  .partner-fields textarea { resize:vertical; }
  .partner-fields [aria-invalid="true"] { border-color:#a92323; box-shadow:0 0 0 1px #a92323; }
  .partner-span { grid-column:1 / -1; }
  .optional { color:var(--muted); font-weight:400; }
  .partner-fields small { color:var(--muted); font-weight:400; }
  .field-error { display:block; color:#8f1f1f; font-size:13px; font-weight:600; }
  .partner-consent { display:flex; gap:12px; align-items:flex-start; margin-top:22px; font-size:14px; line-height:1.5; }
  .partner-consent input { flex:0 0 auto; margin-top:2px; }
  .partner-submit { margin-top:22px; }
  .partner-submit:disabled { opacity:.65; cursor:wait; }
  .form-status:empty { display:none; }
  .form-status { margin-bottom:18px; padding:12px 14px; border-radius:5px; background:#eef3fa; }
  .form-status.is-error { border:1px solid #d9a7a7; background:#fff2f2; color:#7d1818; }
  .form-status.is-success { border:1px solid #8fb9a2; background:#edf8f2; color:#174d32; }
  .partner-honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
  .partner-success { max-width:780px; padding:32px; }
  .partner-success h2 { margin-bottom:12px; }
  .partner-success p+p { margin-top:8px; }
  .partner-success .button { margin-top:24px; }
  @media(max-width:800px) {
    .partner-page { padding-block:22px 40px; }
    .partner-intro p { font-size:16px; }
    .partner-privacy-note { margin-top:-12px; }
    .partner-layout { grid-template-columns:1fr; gap:18px; }
    .partner-benefits { position:static; }
    .partner-form { padding:20px; }
  }
  @media(max-width:560px) {
    .partner-fields { grid-template-columns:1fr; gap:15px; }
    .partner-span { grid-column:auto; }
    .partner-benefits { padding:20px; }
    .partner-form { padding:17px; }
    .partner-submit { width:100%; }
  }
}
