@font-face{font-family:"League Spartan";src:url("/fonts/league-spartan.woff2") format("woff2");font-weight:400 900;font-display:swap}
@font-face{font-family:"Montserrat";src:url("/fonts/montserrat-normal.woff2") format("woff2");font-weight:300 900;font-display:swap}
:root{--gold:#fac000;--black:#050505;--charcoal:#171717;--cream:#f7f3e8;--paper:#fbf8f1;--ink:#151515;--muted:#6b675e;--line:#e4ded1;--display:"League Spartan","Arial Black",sans-serif;--body:"Montserrat",system-ui,sans-serif}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%}
body{font-family:var(--body);color:#fff;background:var(--black);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
button,input,select{font:inherit}
.auth-page{min-height:100vh;background:radial-gradient(circle at 80% 15%,rgba(250,192,0,.12),transparent 30%),#050505}
.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(360px,.9fr) minmax(520px,1.1fr)}
.auth-brand{padding:clamp(30px,4vw,64px);background:radial-gradient(circle at 15% 8%,rgba(250,192,0,.16),transparent 34%),linear-gradient(150deg,#000,#111 58%,#050505);display:flex;flex-direction:column;border-right:1px solid rgba(250,192,0,.25);position:relative;overflow:hidden}
.auth-brand:after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(250,192,0,.16);border-radius:50%;right:-240px;bottom:-200px;box-shadow:0 0 0 60px rgba(250,192,0,.025),0 0 0 120px rgba(250,192,0,.018)}
.auth-brand-logo{width:clamp(210px,22vw,310px);display:block;position:relative;z-index:2}
.auth-brand-copy{margin-top:auto;margin-bottom:auto;position:relative;z-index:2;padding:60px 0}
.auth-kicker{font-family:var(--display);font-size:.72rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:0 0 18px}
.auth-brand-copy h1{font-family:var(--display);font-size:clamp(48px,6.6vw,100px);line-height:.82;letter-spacing:-.055em;text-transform:uppercase;font-weight:900;margin:0 0 28px}
.auth-brand-copy h1 span{color:transparent;-webkit-text-stroke:1.4px var(--gold)}
.auth-brand-copy>p:not(.auth-kicker){max-width:470px;color:rgba(255,255,255,.64);font-size:.95rem;line-height:1.75;margin:0}
.auth-brand-points{display:flex;flex-direction:column;gap:9px;margin-top:28px;color:rgba(255,255,255,.48);font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.auth-brand-points span:before{content:"";display:inline-block;width:14px;height:1px;background:var(--gold);margin-right:10px;vertical-align:middle}
.auth-brand-foot{display:flex;justify-content:space-between;gap:18px;border-top:1px solid rgba(255,255,255,.12);padding-top:18px;font-family:var(--display);font-size:.58rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.34);position:relative;z-index:2}
.auth-main{background:radial-gradient(circle at 85% 5%,rgba(250,192,0,.09),transparent 34%),var(--paper);color:var(--ink);padding:30px clamp(24px,5vw,80px);display:flex;flex-direction:column;justify-content:center;min-height:100vh}
.auth-topline{display:flex;justify-content:space-between;gap:20px;font-family:var(--display);font-size:.62rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#7b7467;margin-bottom:22px}
.auth-topline a:hover{color:#8a6a00}
.auth-card{width:100%;max-width:460px;margin:0 auto;background:#fffdf8;border:1px solid var(--line);border-top:4px solid var(--gold);padding:clamp(26px,4vw,40px);box-shadow:0 30px 80px rgba(0,0,0,.12)}
.auth-card-wide{max-width:540px}
.auth-card-logo{width:196px;display:block;margin-bottom:26px}
.auth-eyebrow{font-family:var(--display);font-size:.62rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#8a6a00;margin:0 0 7px}
.auth-card h2{font-family:var(--display);font-size:clamp(30px,3vw,42px);line-height:.95;letter-spacing:-.035em;text-transform:uppercase;margin:0 0 10px}
.auth-sub{font-size:.78rem;line-height:1.65;color:var(--muted);margin:0 0 24px}
.auth-field{display:flex;flex-direction:column;gap:6px;margin-bottom:13px}
.auth-field>span{font-family:var(--display);font-size:.65rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#6f5500;display:flex;justify-content:space-between}
.auth-field em{font-style:normal;color:#9a9284;font-weight:600;letter-spacing:0}
.auth-field input,.auth-field select{width:100%;height:45px;border:1px solid #ddd3bf;border-radius:2px;background:#fff;padding:0 12px;font-size:.86rem;color:var(--ink);outline:none;transition:border-color .15s,box-shadow .15s}
.auth-field input:focus,.auth-field select:focus{border-color:#c99a00;box-shadow:0 0 0 3px rgba(250,192,0,.16)}
.auth-submit{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;border:1px solid var(--gold);background:var(--gold);color:#000;font-family:var(--display);font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:background .15s,transform .15s}
.auth-submit:hover{background:#fff;transform:translateY(-1px)}
.auth-submit:disabled{opacity:.6;cursor:wait;transform:none}
.auth-outline{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #d8c9aa;background:#fffdf8;color:#151515;font-family:var(--display);font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.auth-outline:hover{border-color:#8a6a00;color:#6f5500}
.auth-error{margin:0 0 12px;padding:9px 11px;border:1px solid #f0c7ce;background:#fff2f4;color:#a61b2b;font-size:.75rem;font-weight:600;line-height:1.45}
.auth-links{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;margin-top:16px;font-size:.74rem;color:var(--muted)}
.auth-links a{color:#6f5500;font-weight:800}
.auth-links a:hover{text-decoration:underline}
.auth-divider{display:flex;align-items:center;gap:10px;margin:20px 0;color:#a49b8c;font-family:var(--display);font-size:.56rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.auth-divider:before,.auth-divider:after{content:"";height:1px;background:#e8dfcf;flex:1}
.auth-split{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.trial-note{margin-top:24px;padding-top:17px;border-top:1px dashed #ddd2be;display:flex;flex-direction:column;gap:4px;color:#7a7366;font-size:.72rem;line-height:1.55}
.trial-note strong{font-family:var(--display);font-size:.7rem;letter-spacing:.07em;text-transform:uppercase;color:#6f5500}
.auth-legal{max-width:460px;margin:20px auto 0;text-align:center;font-size:.58rem;letter-spacing:.05em;line-height:1.6;color:#9a9284;text-transform:uppercase}
.auth-fine{font-size:.64rem;line-height:1.6;color:#8d8577;margin:12px 0 0}
.type-switch{display:grid;grid-template-columns:1fr 1fr;background:#f4eddf;border:1px solid #e7dcc6;padding:4px;margin-bottom:20px}
.type-switch button{border:0;background:transparent;padding:10px 8px;font-family:var(--display);font-size:.64rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#7d7465;cursor:pointer}
.type-switch button.on{background:#111;color:var(--gold);box-shadow:0 4px 12px rgba(0,0,0,.18)}
.trial-page{display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 30%,rgba(250,192,0,.16),transparent 42%),#050505}
.trial-card{width:min(620px,100%);background:#fffdf8;color:var(--ink);border:1px solid var(--line);border-top:5px solid var(--gold);padding:clamp(28px,5vw,52px);text-align:center;box-shadow:0 35px 90px rgba(0,0,0,.4)}
.trial-card img{width:210px;margin:0 auto 26px}
.trial-card h1{font-family:var(--display);font-size:clamp(36px,5vw,58px);line-height:.9;letter-spacing:-.04em;text-transform:uppercase;margin:0 0 16px}
.trial-card h1 span{color:transparent;-webkit-text-stroke:1.3px #8a6a00}
.trial-card p:not(.auth-eyebrow){color:#645f55;font-size:.84rem;line-height:1.7;max-width:460px;margin:0 auto 24px}
.trial-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:20px}
.trial-actions .auth-submit{width:auto;min-width:170px;padding:0 20px}
.trial-actions .auth-outline{padding:0 20px}
.trial-back{font-family:var(--display);font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#6f5500}
@media(max-width:980px){.auth-shell{grid-template-columns:1fr}.auth-brand{display:none}.auth-main{padding:24px}.auth-topline{max-width:540px;width:100%;margin:0 auto 18px}.auth-card{margin:0 auto}.auth-legal{margin-bottom:24px}}
@media(max-width:520px){.auth-split{grid-template-columns:1fr}.auth-card{padding:24px 20px}.auth-card-logo{width:170px}.auth-main{padding:16px}.auth-topline{font-size:.56rem}}


.auth-captcha { margin: 4px 0 14px; min-height: 65px; display: flex; justify-content: flex-start; }
.auth-captcha:empty { display: none; }


.auth-resend { width:100%; border:1px solid #111; background:#fff; color:#111; padding:11px 14px; margin:0 0 10px; font:inherit; font-size:.78rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; cursor:pointer; }
.auth-resend:hover { background:#FAC000; border-color:#FAC000; }


.auth-note { margin:2px 0 14px; padding:12px 14px; border-left:3px solid #FAC000; background:#faf7ea; color:#333; font-size:.78rem; line-height:1.55; }
.auth-temp-result { margin:6px 0 14px; padding:16px; border:1px solid #FAC000; background:#fffdf4; color:#222; font-size:.8rem; line-height:1.55; }
.auth-temp-result code { display:block; margin:10px 0; padding:12px; background:#000; color:#FAC000; font-size:1rem; letter-spacing:.08em; word-break:break-all; }
.auth-temp-result a { display:inline-block; margin-top:6px; font-weight:700; color:#000; }

