/* JOIN / ACCOUNT PAGES */
.site-header-shell { background:#0d1d2a; }

.join-page { min-height:620px; padding:70px 25px 90px; background:#f5f8fa; }
.join-form { width:100%; max-width:520px; margin:0 auto; padding:42px 46px 38px; box-sizing:border-box; background:#fff; border:1px solid #e1e7ec; border-radius:8px; box-shadow:0 8px 30px rgba(12,32,52,.08); }
.join-eyebrow { margin-bottom:10px; color:#31aee2; font-size:12px; line-height:1; font-weight:700; letter-spacing:1.6px; }
.join-form h1 { margin:0 0 12px; color:#10253a; font-size:30px; line-height:1.2; font-weight:800; letter-spacing:-.8px; }
.join-form h1 span { color:#35b4e8; }
.join-intro { margin:0 0 26px; color:#657585; font-size:14px; line-height:1.6; }
.join-form .form-field { margin-bottom:17px; }
.join-form .form-field label { display:block; margin-bottom:6px; color:#263a4c; font-size:13px; font-weight:600; }
.join-form .form-field input[type="text"], .join-form .form-field input[type="password"], .join-form .form-field input[type="email"] { display:block; width:100%; height:44px; padding:0 13px; box-sizing:border-box; border:1px solid #ccd6de; border-radius:5px; background:#fff; color:#132238; font-family:"Inter",Arial,sans-serif; font-size:14px; outline:none; transition:border-color .15s ease,box-shadow .15s ease; }
.join-form .form-field input:focus { border-color:#35b4e8; box-shadow:0 0 0 3px rgba(53,180,232,.12); }
.join-message { display:block; margin-bottom:15px; color:#d23c45; font-size:13px; font-weight:600; }
.join-message:empty { display:none; }
.join-button { width:100%; height:46px; margin-top:4px; border:0; border-radius:5px; background:#35b4e8; color:#082336; font-family:"Inter",Arial,sans-serif; font-size:14px; font-weight:700; cursor:pointer; }
.join-button:hover { background:#2aa9dc; }
.join-login { margin-top:22px; padding-top:20px; border-top:1px solid #e7ecef; color:#6c7985; text-align:center; font-size:13px; }
.join-login a { color:#168fc3; font-weight:700; text-decoration:none; }
.join-login a:hover { text-decoration:underline; }
@media(max-width:600px) { .join-page { padding:35px 15px 60px; } .join-form { padding:30px 24px; } .join-form h1 { font-size:26px; } }