/* Dedicated member authentication pages based on the supplied reference. */
body.auth-template{min-height:100dvh;background:#fff;color:var(--ink)}
body.auth-template .site-header,body.auth-template .site-footer{display:none}
.auth-screen{min-height:100dvh;display:grid;grid-template-rows:auto 1fr auto;background:#fff}
.auth-screen-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:10px 20px 0}
.auth-screen-brand{display:block;text-decoration:none}
.auth-screen-brand img{width:clamp(190px,16vw,252px);height:auto;max-height:64px;object-fit:contain;object-position:left center}
.auth-language{position:relative;margin:7px clamp(10px,14vw,210px) 0 auto}
.auth-language button{display:inline-flex;align-items:center;gap:13px;padding:10px;border:0;background:transparent;color:#090909;font-weight:700;cursor:pointer}
.auth-language-menu{position:absolute;right:0;top:100%;display:none;min-width:160px;padding:8px;border:1px solid #dedede;border-radius:12px;background:#fff;box-shadow:0 14px 34px rgba(0,0,0,.12)}
.auth-language-menu.is-open{display:grid}.auth-language-menu a{padding:9px 10px;border-radius:8px;text-decoration:none}.auth-language-menu a:hover{background:var(--beige-light)}
.auth-main{display:grid;align-content:start;padding:44px 20px 80px}
.auth-box{width:min(552px,100%);margin-left:clamp(20px,22vw,308px)}
.auth-box h1{margin:0 0 32px;font-family:var(--font-display);font-size:clamp(3rem,4.15vw,4.35rem);line-height:.98;color:var(--ink)}
.auth-intro{margin:0 0 27px;font-size:1.23rem;line-height:1.55;font-weight:620;color:#151515}
.auth-form-simple{display:grid;gap:18px}
.auth-step{display:grid;gap:10px}.auth-step[hidden]{display:none!important}
.auth-field{position:relative;display:grid;gap:7px}
.auth-field input{min-height:57px;padding:15px 18px;border:1.5px solid #7a858e;border-radius:16px;background:#fff;font-size:1rem;color:#131313}
.auth-field input::placeholder{color:#6d7479}.auth-field input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(0,45,94,.11)}
.auth-field.has-error input,.auth-field input[aria-invalid="true"]{border-color:#c52a22;color:#b51918;box-shadow:none}
.auth-field-error{display:flex;align-items:flex-start;gap:6px;color:#b51918;font-size:.86rem;font-weight:650}.auth-field-error .icon{width:15px;height:15px;margin-top:2px}
.auth-inline-link{display:inline-flex;width:max-content;color:var(--blue-2);font-weight:850;text-decoration:underline;text-underline-offset:3px}
.auth-inline-link:hover{color:var(--blue)}
.auth-password-label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:800}
.auth-password-wrap{position:relative}.auth-password-wrap input{padding-right:56px}.auth-password-toggle{position:absolute;right:7px;top:50%;transform:translateY(-50%);display:grid;width:42px;height:42px;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--ink);cursor:pointer}.auth-password-toggle:hover{background:var(--beige-light)}
.auth-check{display:flex;align-items:flex-start;gap:9px;font-size:.94rem}.auth-check input{width:19px;height:19px;margin-top:2px;accent-color:var(--blue)}
.auth-turnstile{min-height:68px}
.auth-primary-actions{display:grid;justify-items:center;gap:14px;margin-top:62px}
.auth-submit{min-width:231px;min-height:56px;padding:14px 28px;border:0;border-radius:999px;background:var(--blue);color:#fff;font-size:1rem;font-weight:900;cursor:pointer}
.auth-submit:hover{background:#001f43}.auth-submit:disabled{opacity:.55;cursor:wait}
.auth-divider{font-size:1.03rem;font-weight:760;color:#111}
.auth-app-button{display:inline-flex;min-width:231px;min-height:56px;align-items:center;justify-content:center;gap:11px;padding:12px 22px;border:2px solid var(--blue-2);border-radius:999px;background:#fff;color:var(--blue-2);font-weight:900;cursor:pointer}.auth-app-button:hover{background:var(--beige-light)}.auth-app-button .icon{width:21px;height:21px}
.auth-register-link{margin-top:13px;color:var(--blue-2);font-weight:900;text-decoration:none}.auth-register-link:hover{text-decoration:underline}
.auth-back-link{display:inline-flex;align-items:center;gap:7px;margin-bottom:28px;font-weight:850;text-decoration:none}.auth-back-link:hover{text-decoration:underline}
.auth-screen-footer{min-height:24px;border-top:1px solid #d8d8d8}
.auth-meta-note{margin-top:30px;padding:16px;border-radius:14px;background:var(--beige-light);color:var(--muted);font-size:.87rem}
.auth-meta-note a{color:var(--blue-2);font-weight:800}
.auth-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.auth-form-grid .full{grid-column:1/-1}
.auth-password-meter{height:7px;overflow:hidden;border-radius:999px;background:#e5e8eb}.auth-password-meter span{display:block;width:0;height:100%;background:var(--danger);transition:width .2s,background .2s}
.auth-password-hint{font-size:.8rem;color:var(--muted)}
.auth-box .notice{margin-bottom:22px}
.cf-turnstile{max-width:100%}

@media(max-width:1000px){.auth-language{margin-right:20px}.auth-box{margin-inline:auto}.auth-main{padding-top:54px}}
@media(max-width:600px){
 .auth-screen-head{padding:16px 20px 0}.auth-screen-brand img{width:150px;max-height:52px}.auth-language{margin:0}.auth-language button{font-size:.88rem;padding:8px 0}.auth-main{padding:46px 20px 60px}.auth-box h1{font-size:2.85rem;margin-bottom:24px}.auth-intro{font-size:1.04rem}.auth-form-grid{grid-template-columns:1fr}.auth-form-grid .full{grid-column:auto}.auth-primary-actions{margin-top:42px}.auth-submit,.auth-app-button{width:100%;min-width:0}.auth-screen-footer{min-height:12px}
}
.auth-resend-card{display:grid;gap:10px;margin:0 0 24px;padding:18px;border:1px solid var(--line-strong);border-radius:16px;background:var(--beige-light)}
.auth-resend-card p{margin:0;color:var(--muted);font-size:.88rem}
.auth-resend-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.auth-resend-row input{min-height:50px;padding:12px 14px;border:1px solid var(--line-strong);border-radius:12px;background:#fff}
.auth-resend-row button{min-height:50px;padding:10px 16px;border:0;border-radius:999px;background:var(--blue);color:#fff;font-weight:850;cursor:pointer}
@media(max-width:600px){.auth-resend-row{grid-template-columns:1fr}.auth-resend-row button{width:100%}}
