.login-screen{position:fixed;inset:0;z-index:100;display:grid;grid-template-columns:minmax(360px,.88fr) minmax(550px,1.12fr);background:#f4f7fb;color:#152b4c;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif}
.login-brand-side{display:flex;flex-direction:column;min-height:0;padding:35px clamp(28px,4.6vw,75px) 27px;color:#fff;background:linear-gradient(128deg,#08182f 0%,#102c56 55%,#17468f 100%);position:relative;overflow:auto}
.login-brand-side:after{content:"";position:absolute;inset:0;background:url("login-gymnast-photo.png") center 52%/88% auto no-repeat;filter:grayscale(1) brightness(1.7);opacity:.11;pointer-events:none}
.login-brand-top,.login-brand-center,.login-brand-foot{position:relative;z-index:1}
.login-brand-top{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:88px;padding:16px 20px;background:#fff;border-radius:10px;box-shadow:0 14px 32px #07152c33}
.login-brand-top img{display:block;width:200px;max-height:54px;object-fit:contain;object-position:left center}
.login-brand-top span{max-width:170px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#405c80;font-weight:850;text-align:right}
.login-brand-top.logo-only{justify-content:center}
.login-brand-top.logo-only img{width:min(280px,100%);max-height:70px;object-position:center}
.login-brand-center{margin:auto 0;padding:60px 0 75px}
.login-kicker,.login-access-eyebrow{font-size:10px;letter-spacing:.19em;font-weight:950;color:#e45b65}
.login-kicker{display:flex;align-items:center;gap:10px;color:#d2e3ff}
.login-dot{width:8px;height:8px;background:#e54a54;border-radius:50%;box-shadow:0 0 0 5px #e54a5429}
.login-brand-center h1{font-size:clamp(45px,5vw,79px);line-height:1.03;letter-spacing:-.07em;font-weight:950;margin:23px 0 20px}
.login-brand-center h1 em{font-style:normal;color:#fb727b}
.login-brand-center>p{max-width:520px;color:#c2d5f1;font-size:15px;line-height:1.7;margin:0}
.login-offering-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:500px;margin-top:42px}
.login-offering-grid>div{display:flex;align-items:center;gap:15px;border-top:1px solid #ffffff47;padding:15px 0 0;font-size:13px;font-weight:850}
.login-offering-grid b{font-size:11px;color:#f26d76;letter-spacing:.09em}
.login-brand-foot{font-size:10px;color:#9cb5d8;text-transform:uppercase;letter-spacing:.11em;font-weight:850}
.login-brand-foot span{margin:0 5px;color:#e45b65}
.login-access-side{display:flex;flex-direction:column;min-height:0;overflow-y:auto}
.login-access-top,.login-access-foot{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:25px clamp(28px,4vw,65px)}
.login-season{font-size:10px;text-transform:uppercase;letter-spacing:.15em;font-weight:900;color:#68809f}
.login-access-top button,.login-access-foot button{background:transparent;border:0;color:#1c4b92;font-size:11px;font-weight:900;cursor:pointer;padding:8px 0}
.login-access-content{width:min(100%,750px);margin:auto;padding:35px clamp(28px,4vw,65px)}
.login-access-content h2{font-size:clamp(31px,3.2vw,46px);line-height:1.08;letter-spacing:-.055em;margin:11px 0 8px;color:#122b51;font-weight:950}
.login-lead{font-size:13px;color:#607591;line-height:1.55;margin:0 0 25px}
.login-role-heading{display:flex;justify-content:space-between;gap:10px;align-items:baseline;margin:0 0 10px}
.login-role-heading strong{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#354f75}
.login-role-heading span{font-size:10px;color:#8393a9}
.login-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.login-role{display:flex;align-items:center;gap:10px;position:relative;text-align:left;min-height:76px;padding:13px;border:1px solid #d6e0ed;border-radius:7px;background:#fff;color:#152d52;cursor:pointer;font:inherit}
.login-role:hover,.login-role:focus-visible{border-color:#4068a7;box-shadow:0 3px 15px #19436f17;outline:none}
.login-role.selected{border:2px solid #23509a;padding:12px;background:#f0f5ff;box-shadow:0 0 0 2px #23509a1a}
.login-role.selected:after{content:"✓";position:absolute;right:10px;top:9px;color:#2458a9;font-weight:950;font-size:12px}
.login-role-icon{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:5px;background:#e8effa;color:#174380;font-size:19px;font-weight:850}
.login-role.selected .login-role-icon{background:#1e4a8f;color:#fff}
.login-role-copy{display:flex;flex-direction:column;gap:4px;min-width:0;padding-right:7px}
.login-role-copy b{font-size:12px;font-weight:900;line-height:1.15}
.login-role-copy small{font-size:10px;line-height:1.4;color:#7486a0}
.login-role-tag{position:absolute;top:6px;right:7px;font-size:7px;font-weight:950;text-transform:uppercase;letter-spacing:.04em;color:#bd333d;background:#fce9eb;border-radius:3px;padding:2px 4px}
.login-role:has(.login-role-tag) .login-role-copy{padding-top:8px}
.login-selected{display:grid;grid-template-columns:150px 1fr;gap:15px;align-items:center;margin:17px 0 13px;padding:15px 18px;background:#eaf0f9;border-left:4px solid #c62d39;border-radius:5px}
.login-selected span{font-size:8px;letter-spacing:.12em;font-weight:950;color:#617b9b}
.login-selected h3{font-size:16px;margin:4px 0 0;color:#153568}
.login-selected ul{display:grid;gap:4px;list-style:none;padding:0;margin:0}
.login-selected li{font-size:10px;color:#405d80;line-height:1.45}
.login-selected li:before{content:"✓";color:#c12f39;font-weight:950;margin-right:8px}
.login-enter{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:53px;padding:12px 18px;background:#c52f38;border:1px solid #c52f38;border-radius:6px;color:#fff;font-size:13px;font-weight:950;letter-spacing:.03em;cursor:pointer}
.login-enter:hover,.login-enter:focus-visible{background:#a9232f;outline:3px solid #e5a2a7}
.login-enter span{font-size:20px}
.login-demo-note{font-size:10px;color:#7a8ba2;line-height:1.5;margin:12px 0 0}
.login-access-foot{border-top:1px solid #e0e7f0;color:#7b8aa0;font-size:10px;font-weight:800;letter-spacing:.03em}
.access-switch{margin-left:4px;padding:8px 10px!important;font-size:9px!important}
@media(max-width:1050px){.login-screen{grid-template-columns:minmax(300px,.75fr) minmax(500px,1.25fr)}.login-brand-side{padding-left:30px;padding-right:30px}.login-brand-center h1{font-size:51px}.login-access-content,.login-access-top,.login-access-foot{padding-left:28px;padding-right:28px}}
@media(max-width:800px){.login-screen{position:relative;min-height:100vh;display:block;overflow:visible}.login-brand-side{min-height:290px;padding:20px 24px}.login-brand-top img{width:135px}.login-brand-center{padding:28px 0 20px}.login-brand-center h1{font-size:44px;margin:12px 0}.login-brand-center>p{font-size:12px}.login-offering-grid,.login-brand-foot{display:none}.login-access-side{overflow:visible}.login-access-content{padding:30px 23px}.login-access-top,.login-access-foot{padding:17px 23px}}
@media(max-width:530px){.login-role-grid{grid-template-columns:1fr}.login-selected{grid-template-columns:1fr;gap:8px}.login-brand-top span{font-size:8px;max-width:100px}.login-access-foot{align-items:flex-start;flex-direction:column}}
@media(max-width:800px){.login-brand-side:after{background-position:center 58%;opacity:.08}}
/* Public sports front page and actual account forms. */
.front-page{min-height:100vh;background:#f1f4f9;color:#142b4d;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif}
.front-page button{font:inherit;cursor:pointer}
.front-topbar{display:flex;align-items:center;gap:28px;min-height:77px;padding:12px clamp(22px,4.4vw,75px);background:#fff;border-bottom:1px solid #dfe6ef}
.front-logo{border:0;background:transparent;padding:0;flex:none}
.front-logo img{width:174px;height:49px;object-fit:contain}
.front-topbar nav{display:flex;gap:25px;margin-left:auto}
.front-topbar nav button,.front-footer button{border:0;background:transparent;color:#233f67;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;padding:10px 0}
.front-topbar nav button:hover,.front-footer button:hover{color:#b82b36}
.front-top-actions{display:flex;align-items:center;gap:13px}
.front-top-actions>span{font-size:10px;color:#68809f}
.front-signin{border:1px solid #163e77;border-radius:5px;background:#163e77;color:#fff;padding:12px 17px;font-size:11px;font-weight:900;white-space:nowrap}
.front-signin:hover{background:#0b2b58}
.front-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(385px,.78fr);align-items:center;gap:clamp(28px,4vw,70px);min-height:550px;padding:70px clamp(22px,5vw,86px);background:radial-gradient(circle at 88% 30%,#244e96 0%,#122f5f 28%,#081b35 73%);color:#fff;position:relative;isolation:isolate;overflow:hidden}
.front-hero:before{content:"";position:absolute;inset:0;background:url("login-gymnast-photo.png") 10% center/min(47%, 760px) auto no-repeat;filter:grayscale(1) brightness(1.7);opacity:.11;pointer-events:none}
.front-hero>*{position:relative;z-index:1}
.front-eyebrow{display:flex;align-items:center;gap:9px;color:#b7cfef;font-size:10px;letter-spacing:.17em;font-weight:950}
.front-live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#e5434f;box-shadow:0 0 0 4px #e5434f25;flex:none}
.front-hero h1{font-size:clamp(50px,5.8vw,88px);font-weight:950;line-height:.99;letter-spacing:-.075em;margin:23px 0 21px}
.front-hero h1 em{font-style:normal;color:#f27c85}
.front-hero-copy>p{max-width:630px;color:#c4d6ef;font-size:16px;line-height:1.7;margin:0}
.front-hero-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:30px}
.front-primary,.front-secondary{border-radius:5px;padding:15px 19px;font-size:12px!important;font-weight:950!important;letter-spacing:.03em}
.front-primary{border:1px solid #c62f3a;background:#c62f3a;color:#fff;min-width:217px;display:flex;justify-content:space-between;gap:20px}
.front-primary:hover{background:#a72430}
.front-secondary{border:1px solid #ffffff7a;background:transparent;color:#fff}
.front-secondary:hover{background:#ffffff18}
.front-hero-proof{display:flex;flex-wrap:wrap;gap:12px;margin-top:39px;color:#afc3e1;font-size:10px;font-weight:850}
.front-hero-proof span{border-left:2px solid #e7515a;padding-left:10px}
.front-feature-card{background:#fff;color:#18345d;border-radius:9px;box-shadow:0 25px 60px #020e26a8;overflow:hidden;align-self:center}
.front-feature-top{display:flex;align-items:center;gap:9px;background:#f2f5fa;border-bottom:1px solid #dfe6ee;padding:15px 18px;font-size:10px;text-transform:uppercase;letter-spacing:.07em}
.front-feature-top strong{font-weight:950}
.front-feature-top>span:last-child{margin-left:auto;color:#6d829f;font-weight:850;text-align:right}
.front-feature-teams{padding:7px 18px}
.front-feature-team{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #e6ecf3}
.front-feature-team:last-child{border-bottom:0}
.front-feature-place{font-size:12px;color:#a0aec0;font-weight:950;width:14px}
.front-team-logo{width:40px;height:40px;object-fit:contain;background:#fff;border:1px solid #e0e7f1;border-radius:5px;padding:3px;flex:none}
.front-feature-team b{font-size:13px;line-height:1.3;min-width:0}
.front-feature-team strong{margin-left:auto;white-space:nowrap;font-size:24px;font-weight:950;font-variant-numeric:tabular-nums;color:#173d79}
.front-feature-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px 18px;background:#102d58;color:#c4d6ec;font-size:10px}
.front-feature-foot button{border:0;background:transparent;color:#fff;font-size:10px;font-weight:900;white-space:nowrap}
.front-feature-empty{padding:30px}
.front-services{max-width:1600px;margin:auto;padding:65px clamp(22px,5vw,86px) 78px}
.front-section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:25px}
.front-section-head span,.front-trust span{font-size:10px;letter-spacing:.17em;font-weight:950;color:#c5333e}
.front-section-head h2,.front-trust h2{font-size:clamp(30px,3vw,43px);letter-spacing:-.055em;margin:10px 0 0;color:#152e54}
.front-section-head p{font-size:12px;color:#647996;max-width:390px;line-height:1.65;margin:0}
.front-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.front-service-grid article{display:flex;flex-direction:column;min-height:238px;padding:23px;background:#fff;border:1px solid #dce5ef;border-radius:7px;border-top:3px solid #1c4b90}
.front-service-grid article:last-child{border-top-color:#c6303b}
.front-service-number{font-size:9px;color:#bc3844;font-weight:950;letter-spacing:.12em}
.front-service-grid h3{font-size:18px;line-height:1.2;letter-spacing:-.035em;margin:22px 0 10px;color:#183761}
.front-service-grid p{font-size:11px;line-height:1.65;color:#657b96;margin:0 0 18px}
.front-service-grid button{margin-top:auto;align-self:flex-start;padding:0;border:0;background:none;color:#1b4b93;font-size:10px;font-weight:950}
.front-trust{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:35px;padding:38px clamp(22px,5vw,86px);background:#e7edf6;border-top:1px solid #d6e1ee;border-bottom:1px solid #d6e1ee}
.front-trust h2{font-size:30px}
.front-trust p{font-size:12px;line-height:1.6;color:#526b8d}
.front-trust button{border:1px solid #214c90;background:#214c90;color:#fff;border-radius:5px;font-size:10px;font-weight:900;padding:12px 15px;white-space:nowrap}
.front-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:22px clamp(22px,5vw,86px);font-size:10px;color:#73859d}
.auth-form{display:grid;gap:15px;margin:25px 0 10px}
.auth-form label{display:grid;gap:7px;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.08em;color:#3d5779}
.auth-form input,.auth-form select,.auth-user-row select,.auth-invitation input{width:100%;min-height:45px;border:1px solid #c6d3e5;border-radius:5px;background:#fff;color:#172e50;padding:11px 12px;font:inherit;font-size:13px;letter-spacing:0;text-transform:none}
.auth-form input:focus,.auth-form select:focus,.auth-user-row select:focus{outline:3px solid #bfd2f4;border-color:#2b5aa0}
.auth-form .login-enter{margin-top:5px}
.auth-hosted-link{margin-top:25px;text-decoration:none}
.auth-error,.auth-success{padding:11px 13px;border-radius:5px;font-size:12px;line-height:1.5}
.auth-error{background:#fff0f1;color:#9d2431;border:1px solid #f4cbd0}
.auth-success{background:#e9f6ee;color:#237247;border:1px solid #c7e9d2}
.auth-help{border-top:1px solid #e2e8f1;margin-top:27px;padding-top:20px}
.auth-help h3{font-size:12px;margin:0 0 6px;color:#294568}
.auth-help p{font-size:11px;line-height:1.6;color:#6b7e98;margin:0 0 8px}
.auth-help button,.auth-text-button,.auth-guest{border:0;background:transparent;color:#1e4e92;font-size:11px;font-weight:900;cursor:pointer;padding:8px 0;text-align:left}
.auth-guest{display:block;margin-top:13px}
.auth-current{display:grid;gap:10px;margin-top:26px;padding:20px;background:#f0f5fc;border:1px solid #dce5f1;border-radius:6px}
.auth-current strong{font-size:14px;color:#163761}
.auth-current span{font-size:11px;color:#617b99}
.auth-current .login-enter{margin-top:7px}
.auth-check{display:flex!important;align-items:center;gap:7px!important;text-transform:none!important;letter-spacing:0!important;font-size:11px!important}
.auth-check input{width:16px;height:16px;min-height:0;accent-color:#23509a}
.auth-permissions{padding-left:17px;font-size:12px;color:#546e8c;line-height:1.8}
.auth-invitation{margin-top:19px;padding:15px;background:#eef5ff;border:1px solid #c8d9f0;border-radius:5px}
.auth-invitation strong{display:block;font-size:12px;margin-bottom:11px}
.auth-invitation label{font-size:10px;font-weight:900}
.auth-invitation input{margin-top:6px}
.auth-invitation p{font-size:10px;word-break:break-all}
.invite-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.invite-preview{width:min(720px,92vw);max-height:90vh;padding:18px;background:#f1f3f6;border:1px solid #dce2e9;box-shadow:0 24px 90px #07142655}
.invite-preview::backdrop{background:#071426bb}
.invite-preview-top{display:flex;align-items:center;justify-content:space-between;gap:16px}
.invite-preview strong{display:block;color:#101d30;font-size:13px}
.invite-preview iframe{display:block;width:100%;height:min(70vh,760px);margin-top:10px;background:#fff;border:1px solid #dce2e9}
.auth-user-list{display:grid;gap:8px}
.auth-user-row{display:grid;grid-template-columns:minmax(150px,1.4fr) minmax(120px,1fr) auto auto auto;align-items:center;gap:12px;padding:12px;border:1px solid #e1e8f2;border-radius:5px}
.auth-user-row strong,.auth-user-row small{display:block}
.auth-user-row strong{font-size:12px;color:#1d3d6b;overflow-wrap:anywhere}
.auth-user-mail{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:6px}
.auth-user-mail button{padding:2px 0;font-size:10px;text-align:left}
.auth-user-row small{font-size:9px;color:#7388a1;margin-top:4px}
.auth-user-row label{font-size:10px;font-weight:900;color:#526b8d}
.auth-user-row select{margin-top:5px;min-height:37px;padding:5px 8px;font-size:11px}
.auth-form textarea{width:100%;border:1px solid #c6d3e5;border-radius:5px;background:#fff;color:#172e50;padding:11px 12px;font:inherit;font-size:13px;letter-spacing:0;text-transform:none;resize:vertical}
.auth-form textarea:focus{outline:3px solid #bfd2f4;border-color:#2b5aa0}
.mail-status{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}
.mail-status h2{margin:5px 0;overflow-wrap:anywhere;text-transform:none!important}
.mail-status p{margin:0;color:#607591;font-size:12px;line-height:1.55}
.mail-eyebrow{font-size:10px;letter-spacing:.14em;color:#c5333e;font-weight:950}
.mail-alias-label{display:flex;align-items:center;gap:10px;margin:15px 0 10px;color:#142843;font-size:12px;font-weight:800}
.mail-alias-label select{min-width:250px;max-width:100%;padding:10px 12px;border:1px solid #b9c6d5;background:#fff;color:#142843;font:inherit}
.mail-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:16px}
.mail-list{display:grid;gap:7px;margin-top:15px;max-height:600px;overflow:auto}
.mail-row{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;width:100%;padding:14px;text-align:left;background:#fff;border:1px solid #dae3ef;border-radius:5px;cursor:pointer}
.mail-row:hover,.mail-row:focus-visible{background:#f2f6fc;border-color:#3b64a1;outline:none}
.mail-row strong,.mail-row small{display:block;overflow-wrap:anywhere}
.mail-row strong{color:#193a69;font-size:12px}
.mail-row small{color:#647996;font-size:10px;line-height:1.4;margin-top:4px}
.mail-row time{color:#7a8ca5;font-size:9px;white-space:nowrap}
.mail-detail{margin-top:15px;padding:16px;background:#f4f7fb;border:1px solid #dce5f0;border-radius:5px;overflow-wrap:anywhere}
.mail-detail strong{font-size:14px;color:#173a6e}
.mail-detail p{font-size:11px;color:#617794;margin:7px 0}
.mail-detail pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:12px;line-height:1.6;color:#233f64;margin:17px 0 0}
.nav-locked{opacity:.68}
.nav-lock{margin-left:auto;font-size:8px;letter-spacing:.03em;color:#b8c9e4}
.account-header-label{font-size:9px;color:#647b98;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:1050px){.front-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.front-trust{grid-template-columns:1fr 1fr}.front-trust button{justify-self:start}.front-hero{grid-template-columns:1fr 420px;padding-left:35px;padding-right:35px}.front-hero h1{font-size:56px}}
@media(max-width:800px){.front-topbar{flex-wrap:wrap}.front-topbar nav{order:3;width:100%;justify-content:space-between;margin:0}.front-hero{grid-template-columns:1fr;padding:47px 25px}.front-feature-card{max-width:600px;width:100%}.front-trust{grid-template-columns:1fr}.auth-user-row{grid-template-columns:1fr 1fr}.account-header-label{display:none}}
@media(max-width:800px){.mail-layout{grid-template-columns:1fr}.mail-status{align-items:flex-start;flex-direction:column}}
@media(max-width:800px){.front-hero:before{background-position:center 20%;background-size:88% auto;opacity:.08}}
@media(max-width:520px){.front-logo img{width:145px}.front-topbar nav{gap:10px;overflow-x:auto}.front-topbar nav button{font-size:9px}.front-hero h1{font-size:47px}.front-hero-proof{gap:8px}.front-hero-proof span{font-size:9px}.front-section-head{display:block}.front-section-head p{margin-top:12px}.front-service-grid{grid-template-columns:1fr}.front-service-grid article{min-height:0}.front-feature-top{flex-wrap:wrap}.front-feature-team b{font-size:11px}.front-feature-team strong{font-size:20px}.front-footer{align-items:flex-start;flex-direction:column}.auth-user-row{grid-template-columns:1fr}}

/* v31: unified public-site branding for secure account pages. */
.login-screen{grid-template-columns:minmax(430px,1.05fr) minmax(520px,.95fr);background:#f5f7fa}
.login-brand-side{padding:30px clamp(30px,4.5vw,72px) 25px;background:#071a33;isolation:isolate;overflow:hidden}
.login-brand-side:before{content:"";position:absolute;inset:0;background:url("site/assets/njg-home-hero-nj-flag.png") center 43%/cover no-repeat;z-index:-2;transform:scale(1.01)}
.login-brand-side:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,19,39,.96) 0%,rgba(7,26,51,.83) 48%,rgba(7,26,51,.5) 100%),linear-gradient(0deg,rgba(5,20,42,.82) 0%,transparent 52%);filter:none;opacity:1;z-index:-1}
.login-brand-top{align-self:flex-start;min-height:0;padding:13px 17px;border-radius:4px;box-shadow:0 12px 35px #020c1d55}
.login-brand-top.logo-only{justify-content:flex-start}
.login-brand-top.logo-only img,.login-brand-top img{width:190px;max-height:50px;object-position:left center}
.login-brand-center{margin-top:auto;margin-bottom:0;padding:72px 0 40px;text-shadow:0 2px 24px #020b19aa}
.login-kicker{font-size:9px;letter-spacing:.21em;color:#fff}
.login-dot{width:7px;height:7px;background:#d83a44;box-shadow:0 0 0 5px #d83a4433}
.login-brand-center h1{max-width:720px;font-size:clamp(48px,5.6vw,82px);line-height:.95;letter-spacing:-.065em;margin:19px 0 17px}
.login-brand-center h1 em{color:#ef5a63}
.login-brand-center>p{max-width:600px;color:#eef4fc;font-size:14px;line-height:1.55;font-weight:600}
.login-offering-grid{display:flex;flex-wrap:wrap;gap:8px;max-width:650px;margin-top:28px}
.login-offering-grid>div{gap:8px;width:auto;border:1px solid #ffffff42;border-radius:999px;padding:8px 12px;background:#071a338f;backdrop-filter:blur(5px);font-size:10px;letter-spacing:.04em;text-transform:uppercase}
.login-offering-grid b{font-size:9px;color:#ff7179}
.login-brand-foot{padding-top:18px;border-top:1px solid #ffffff30;color:#d7e2f0;font-size:8px;line-height:1.55}
.login-access-side{background:linear-gradient(180deg,#fff 0,#f5f7fa 100%)}
.login-access-top{padding-top:28px;padding-bottom:18px}
.login-access-content{width:min(100%,620px);padding-top:22px;padding-bottom:28px}
.login-access-content:before{content:"NJG MEMBER ACCESS";display:block;width:max-content;margin-bottom:18px;padding:6px 9px;border-left:3px solid #c62f3a;background:#edf2f7;color:#16345d;font-size:8px;font-weight:950;letter-spacing:.16em}
.login-access-content h2{font-size:clamp(33px,3.15vw,48px);color:#071f42}
.login-lead{max-width:530px;color:#5a6d84}
.auth-form{padding:21px;border:1px solid #dbe3ec;border-top:4px solid #c62f3a;border-radius:5px;background:#fff;box-shadow:0 18px 45px #0b234317}
.auth-form label{color:#1c385e}
.auth-form input,.auth-form select{border-radius:3px;background:#fbfcfe}
.login-enter{border-radius:3px;background:#c62f3a;border-color:#c62f3a}
.auth-help{margin-top:22px;padding:17px 18px;border:1px solid #dce4ee;border-left:4px solid #153d75;border-radius:3px;background:#fff}
.auth-help h3{color:#0d2c55;text-transform:uppercase;letter-spacing:.08em}
.login-access-foot{padding-top:18px;padding-bottom:18px}
@media(max-width:1050px){.login-screen{grid-template-columns:minmax(330px,.8fr) minmax(500px,1.2fr)}.login-brand-center h1{font-size:52px}.login-brand-side{padding-left:30px;padding-right:30px}}
@media(max-width:800px){.login-screen{display:block}.login-brand-side{min-height:350px;padding:20px 23px}.login-brand-side:before{background-position:center 40%}.login-brand-side:after{background:linear-gradient(90deg,rgba(5,19,39,.92),rgba(7,26,51,.55)),linear-gradient(0deg,rgba(5,20,42,.88),transparent 70%);opacity:1}.login-brand-center{padding:50px 0 22px}.login-brand-center h1{font-size:45px}.login-brand-top.logo-only img,.login-brand-top img{width:160px}.login-offering-grid{display:flex}.login-brand-foot{display:none}.login-access-content{padding-top:22px}}
@media(max-width:530px){.login-brand-side{min-height:330px}.login-brand-center h1{font-size:40px}.login-brand-center>p{font-size:12px}.login-offering-grid>div{padding:7px 9px;font-size:8px}.auth-form{padding:17px}.login-access-content h2{font-size:34px}}
