/* Referral program sign-up: a short pitch beside the form, stacked on phones. */
:root{--rf-ink:#14233f;--rf-muted:#56627a;--rf-line:#dfe4ee;--rf-blue:#1f4fb0;--rf-gold:#e5c15d}
*{box-sizing:border-box}
body.refer-page{margin:0;background:#f4f6fb;color:var(--rf-ink);font:16px/1.55 Inter,system-ui,sans-serif}
.refer-shell{max-width:1040px;margin:0 auto;padding:40px 20px 56px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:36px;align-items:start}
.refer-pitch h1{margin:8px 0 12px;font:700 clamp(28px,4vw,40px)/1.15 Georgia,'Times New Roman',serif;text-wrap:balance}
.refer-pitch p{margin:0 0 16px;color:var(--rf-muted);max-width:46ch}
.refer-pitch ul{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.refer-pitch li{position:relative;padding-left:28px}
.refer-pitch li::before{content:"✓";position:absolute;left:0;top:0;width:20px;height:20px;border-radius:50%;background:#e6f6ee;color:#127a4a;font-size:12px;font-weight:800;display:grid;place-items:center}
.refer-form{background:#fff;border:1px solid var(--rf-line);border-radius:14px;padding:24px;box-shadow:0 10px 30px rgba(20,35,63,.06)}
.refer-form h2{margin:0 0 16px;font-size:20px}
.refer-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.refer-grid .full{grid-column:1/-1}
.refer-grid label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--rf-muted)}
.refer-grid small{font-weight:400}
.refer-grid input,.refer-grid select{height:44px;padding:0 12px;border:1px solid var(--rf-line);border-radius:8px;font:500 15px Inter,system-ui,sans-serif;color:var(--rf-ink);background:#fff;width:100%}
.refer-grid input:focus,.refer-grid select:focus{outline:2px solid var(--rf-blue);outline-offset:1px}
.refer-consent{display:flex;gap:10px;align-items:flex-start;margin:16px 0;font-size:13px;color:var(--rf-muted)}
.refer-consent input{width:18px;height:18px;margin-top:2px;flex:none}
.refer-submit{width:100%;height:48px;border:0;border-radius:99px;background:var(--rf-blue);color:#fff;font:700 15px Inter,system-ui,sans-serif;cursor:pointer}
.refer-submit:hover{background:#173e8c}
.refer-submit:disabled{opacity:.6;cursor:wait}
.refer-message{margin:12px 0 0;font-size:14px;min-height:20px}
.refer-message.ok{color:#127a4a;font-weight:600}
.refer-message.error{color:#a23d32}
.refer-foot{padding:22px 20px 34px;text-align:center;color:var(--rf-muted);font-size:13px;border-top:1px solid var(--rf-line)}
.refer-foot p{margin:0 0 6px}
@media (max-width:760px){.refer-shell{grid-template-columns:minmax(0,1fr);padding:24px 16px 40px;gap:24px}.refer-grid{grid-template-columns:minmax(0,1fr)}}
