@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Inter:wght@400;500;600;700&display=swap");.aff,.aff *{box-sizing:border-box}.aff{--cream:#FBF7F0;--blush:#F5E7E4;--maroon:#7A1420;--maroon-dark:#5E0F18;--ink:#2C2724;--muted:#6E655E;--line:rgba(0,0,0,.08);min-height:100vh;background:var(--cream);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}.aff .serif{font-family:Playfair Display,Georgia,serif}.aff .em{color:var(--maroon);font-style:italic}.aff .wrap{max-width:1040px;margin:0 auto;padding:0 24px}.aff a{color:var(--maroon)}.aff-topbar{background:var(--maroon);padding:10px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.aff-topbar img{height:44px;width:auto;display:block}.aff-topbar nav a{color:#fff;text-decoration:none;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin-left:18px;opacity:.9}.aff-topbar nav a:hover{opacity:1}.aff-hero{padding:56px 0 28px;text-align:center}.aff-hero h1{font-family:Playfair Display,Georgia,serif;font-size:44px;line-height:1.12;font-weight:600;color:var(--maroon);max-width:820px;margin:0 auto}.aff-hero p{font-size:18px;color:var(--muted);max-width:640px;margin:16px auto 0}.aff-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:start;padding:24px 0 72px}.aff-how{display:grid;gap:14px}.aff-how li{list-style:none;display:flex;gap:16px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 20px;box-shadow:0 8px 22px rgba(44,39,36,.06)}.aff-how .n{font-family:Playfair Display,Georgia,serif;font-size:28px;line-height:1;color:var(--maroon);min-width:36px}.aff-how h3{margin:0 0 4px;font-size:17px;font-weight:600}.aff-how p{margin:0;color:var(--muted);font-size:14.5px}.aff-card{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 60px rgba(44,39,36,.12);overflow:hidden}.aff-tabs{display:flex;border-bottom:1px solid var(--line)}.aff-tabs button{flex:1;background:none;border:0;padding:16px;font:inherit;font-weight:600;font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);cursor:pointer}.aff-tabs button.on{color:var(--maroon);box-shadow:inset 0 -3px 0 var(--maroon)}.aff-form{padding:24px;display:grid;gap:14px}.aff-form label{display:grid;gap:6px;font-size:13px;font-weight:600;color:var(--ink)}.aff-form .aff-opt{font-weight:400;color:var(--muted)}.aff-form input{font:inherit;font-size:15px;padding:12px 14px;border:1px solid rgba(0,0,0,.14);border-radius:10px;background:#fff;color:var(--ink)}.aff-form input:focus{outline:2px solid rgba(122,20,32,.25);border-color:var(--maroon)}.aff-btn{display:inline-block;background:var(--maroon);color:#fff;font-weight:600;font-size:14px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;padding:16px 28px;border-radius:999px;border:0;cursor:pointer;transition:background .2s,transform .15s}.aff-btn:hover{background:var(--maroon-dark);transform:translateY(-1px)}.aff-btn:disabled{opacity:.6;cursor:default;transform:none}.aff-btn.sm{padding:10px 18px;font-size:12px}.aff-btn.ghost{background:transparent;color:var(--maroon);border:1px solid rgba(122,20,32,.35)}.aff-btn.ghost:hover{background:rgba(122,20,32,.06)}.aff-err{background:#fdecec;color:#8a1c1c;border:1px solid #f3c1c1;border-radius:10px}.aff-err,.aff-ok{padding:10px 12px;font-size:14px}.aff-ok{background:#e9f6ef;color:#1e6b3a;border:1px solid #bfe3cd;border-radius:10px}.aff-fine{font-size:12.5px;color:var(--muted);margin:0}.aff-dash{padding:36px 0 80px}.aff-dash h1{font-family:Playfair Display,Georgia,serif;font-size:34px;font-weight:600;margin:0}.aff-dash .sub{color:var(--muted);margin:6px 0 0}.aff-link{margin-top:22px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 20px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.aff-link code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;background:var(--blush);padding:8px 12px;border-radius:8px;color:var(--maroon);word-break:break-all}.aff-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:22px}.aff-stat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 18px}.aff-stat .k{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.aff-stat .v{font-family:Playfair Display,Georgia,serif;font-size:30px;font-weight:600;color:var(--ink);margin-top:4px}.aff-stat .h{font-size:12px;color:var(--muted)}.aff-stat.money .v{color:var(--maroon)}.aff-sec{margin-top:32px}.aff-sec h2{font-family:Playfair Display,Georgia,serif;font-size:22px;font-weight:600;margin:0 0 12px}.aff-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.aff-table td,.aff-table th{padding:12px 16px;text-align:left;font-size:14px;border-bottom:1px solid var(--line)}.aff-table th{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);background:var(--cream)}.aff-table tr:last-child td{border-bottom:0}.aff-table .r{text-align:right;font-variant-numeric:tabular-nums}.pill{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600}.pill.applied{background:#f1e8d8;color:#7a5a12}.pill.enrolled,.pill.paid{background:#e9f6ef;color:#1e6b3a}.pill.owed{background:#fdecec;color:#8a1c1c}.aff-empty{background:#fff;border:1px dashed rgba(0,0,0,.15);border-radius:16px;padding:28px}.aff-empty,.aff-foot{text-align:center;color:var(--muted)}.aff-foot{border-top:1px solid var(--line);padding:26px 24px;font-size:12px}@media(max-width:820px){.aff-hero{padding:36px 0 16px}.aff-hero h1{font-size:32px}.aff-grid{grid-template-columns:1fr;gap:24px;padding-bottom:48px}.aff-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.aff-table{display:block;overflow-x:auto}}