body[class*="srh-login-"]{box-sizing:border-box;min-height:100vh;display:flex;align-items:center;justify-content:flex-end;padding:55px 9vw 85px;margin:0;background-color:var(--srh-login-canvas);color:var(--srh-login-text);font-family:var(--srh-login-font);position:relative}
body[class*="srh-login-"] #login{box-sizing:border-box;width:390px;max-width:100%;padding:30px;margin:0;background:var(--srh-login-card);border:1px solid #ffffff66;border-radius:var(--srh-login-radius);box-shadow:0 16px 60px #18234014;backdrop-filter:blur(var(--srh-login-blur))}
body[class*="srh-login-"] #login h1{margin-bottom:18px}body[class*="srh-login-"] #login h1 a{margin:0 auto 16px}
body[class*="srh-login-"] #login form{margin:0;padding:0;border:0;background:transparent;box-shadow:none;color:var(--srh-login-text)}body[class*="srh-login-"] #login label{font-size:14px}
body[class*="srh-login-"] #login input.input{font-family:var(--srh-login-font);font-size:18px;min-height:46px;border-radius:9px;border:1px solid #9baac34d;padding:8px 12px;background:#ffffffc9;color:#253047}
body[class*="srh-login-"] #login .button-primary{background:var(--srh-login-accent);border-color:var(--srh-login-accent);border-radius:9px;min-height:42px;padding:0 20px;box-shadow:none;font-weight:600}
body[class*="srh-login-"] #login .submit{padding-top:8px}body[class*="srh-login-"] #login #nav,body[class*="srh-login-"] #login #backtoblog{padding:0;margin:20px 0 0;font-size:13px}
body[class*="srh-login-"] #login #nav a,body[class*="srh-login-"] #login #backtoblog a{color:var(--srh-login-text)}body[class*="srh-login-"] #login .privacy-policy-page-link{display:none}
body[class*="srh-login-"] .srh-login-welcome{position:absolute;left:9vw;top:50%;transform:translateY(-50%);max-width:38vw}
.srh-login-eyebrow{font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:500}.srh-login-welcome h2{font-size:clamp(30px,4vw,58px);line-height:1.1;letter-spacing:-.035em;margin:20px 0}.srh-login-welcome p{font-size:17px;line-height:1.65;margin:0;max-width:490px}.srh-login-notice{font-size:14px;line-height:1.6;border-left:3px solid var(--srh-login-accent);padding:12px 16px;margin-top:28px;background:#ffffff14;border-radius:0 8px 8px 0}
.srh-login-footer{position:absolute;bottom:25px;left:9vw;right:9vw;display:flex;flex-wrap:wrap;gap:20px;align-items:center;font-size:12px}.srh-login-footer a{color:inherit;text-decoration:none}.srh-login-footer a:focus-visible,.srh-login-footer a:hover{text-decoration:underline}
body.srh-login-minimal,body.srh-login-glass{justify-content:center;flex-direction:column;gap:24px;padding-top:40px}
body.srh-login-minimal .srh-login-welcome,body.srh-login-glass .srh-login-welcome{position:static;transform:none;text-align:center;max-width:500px}
body.srh-login-minimal .srh-login-welcome h2,body.srh-login-glass .srh-login-welcome h2{font-size:30px;margin:12px 0}body.srh-login-minimal .srh-login-welcome p,body.srh-login-glass .srh-login-welcome p{font-size:15px}
body.srh-login-glass{background-color:#243552}body.srh-login-glass .srh-login-welcome,body.srh-login-glass .srh-login-footer{color:#fff}body.srh-login-executive{background-color:#17243a;background-image:linear-gradient(125deg,#152238,#304563)}body.srh-login-executive .srh-login-welcome,body.srh-login-executive .srh-login-footer{color:#f4f6fa}
body[class*="srh-login-"] .language-switcher{position:absolute;bottom:55px;right:9vw;margin:0;max-width:80vw}
body[class*="srh-login-"] #login_error,body[class*="srh-login-"] #login .message{border-radius:8px;margin-bottom:18px}
@media(max-width:850px){body[class*="srh-login-"]{justify-content:center;flex-direction:column;padding:35px 20px 115px;gap:24px}body[class*="srh-login-"] .srh-login-welcome{position:static;transform:none;max-width:460px;text-align:center}body[class*="srh-login-"] .srh-login-welcome h2{font-size:30px;margin:10px 0}body[class*="srh-login-"] .srh-login-welcome p{font-size:15px}.srh-login-footer{left:20px;right:20px;justify-content:center}.srh-login-notice{text-align:left}}
@media(prefers-reduced-motion:reduce){body[class*="srh-login-"] *{scroll-behavior:auto}}

body[class*="srh-login-"] .language-switcher{padding:10px 12px;border-radius:12px;background:var(--srh-login-card);color:var(--srh-login-text);box-shadow:0 4px 20px #1522380a;display:flex;align-items:center;gap:8px}body[class*="srh-login-"] .language-switcher form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}body[class*="srh-login-"] .language-switcher label{color:var(--srh-login-text);font:inherit;font-size:12px}body[class*="srh-login-"] .language-switcher select{border:1px solid #9baac34d;border-radius:8px;min-height:36px;background:#fff;color:#253047;font:inherit;font-size:13px;max-width:180px}body[class*="srh-login-"] .language-switcher .button{border:0;background:var(--srh-login-accent);color:#fff;border-radius:8px;min-height:36px;font:inherit;font-size:12px;padding:0 12px;box-shadow:none}body[class*="srh-login-"] .language-switcher .dashicons{display:none}@media(max-width:850px){body[class*="srh-login-"] .language-switcher{position:static;max-width:100%;margin:0 0 15px}body[class*="srh-login-"] .srh-login-footer{position:static;margin:10px 0 0;justify-content:center}}

/* Responsive login: document flow prevents welcome, form and footer overlap. */
body[class*="srh-login-"]{min-height:100vh;min-height:100svh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,390px);grid-template-rows:1fr auto;column-gap:clamp(28px,5vw,90px);row-gap:32px;padding:48px 9vw 0;align-items:center}
body[class*="srh-login-"] *,body[class*="srh-login-"] *::before,body[class*="srh-login-"] *::after{box-sizing:border-box}
body[class*="srh-login-"] .srh-login-welcome{position:static;transform:none;max-width:100%;min-width:0}
body[class*="srh-login-"] .srh-login-welcome h2{overflow-wrap:anywhere;font-size:clamp(28px,3.8vw,54px)}
body[class*="srh-login-"] .srh-login-welcome p{overflow-wrap:anywhere}
body[class*="srh-login-"] #login{width:100%;min-width:0;max-width:390px;justify-self:end}
body[class*="srh-login-"] #login h1 a{max-width:100%}
body[class*="srh-login-"] .srh-login-footer{position:static;grid-column:1/-1;width:100%;margin:0;min-width:0;padding:0 max(0px,calc(var(--srh-footer-right,9vw) - 9vw)) max(12px,var(--srh-footer-bottom,25px)) max(0px,calc(var(--srh-footer-left,9vw) - 9vw));gap:10px 20px;overflow-wrap:anywhere}
body[class*="srh-login-"] .srh-login-footer a{display:inline-flex;align-items:center;min-height:44px}
body[class*="srh-login-"] #login input.input{width:100%;min-width:0;font-size:18px}
body[class*="srh-login-"] #login .wp-pwd{position:relative}
body[class*="srh-login-"] #login .wp-pwd input{padding-right:48px}
body[class*="srh-login-"] #login .wp-hide-pw{min-width:44px;min-height:44px;top:0;right:0}
body[class*="srh-login-"] #login #wp-submit{min-height:44px;white-space:normal;max-width:100%;line-height:1.3;padding:10px 20px}
body[class*="srh-login-"] #login .forgetmenot{max-width:100%;margin-bottom:12px}
body[class*="srh-login-"] #login .forgetmenot label{display:inline-flex;align-items:center;min-height:44px;gap:7px}
body.srh-login-minimal,body.srh-login-glass{display:flex;flex-direction:column;justify-content:center;gap:24px}
body.srh-login-minimal .srh-login-welcome,body.srh-login-glass .srh-login-welcome{max-width:500px;text-align:center}
body.srh-login-minimal #login,body.srh-login-glass #login{align-self:center}
body.srh-login-minimal .srh-login-footer,body.srh-login-glass .srh-login-footer{margin-top:auto}
@media(max-width:1024px){body[class*="srh-login-"]{padding:32px 5vw 0;column-gap:32px;grid-template-columns:minmax(0,1fr) minmax(0,360px)}body[class*="srh-login-"] #login{padding:26px}body[class*="srh-login-"] .srh-login-footer{padding-left:max(0px,calc(var(--srh-footer-left,9vw) - 5vw));padding-right:max(0px,calc(var(--srh-footer-right,9vw) - 5vw))}}
@media(max-width:850px){body[class*="srh-login-"]{display:flex;flex-direction:column;justify-content:flex-start;gap:22px;padding:28px max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left));background-attachment:scroll!important}body[class*="srh-login-"] .srh-login-welcome{width:100%;max-width:460px;text-align:center}body[class*="srh-login-"] .srh-login-welcome h2{font-size:clamp(26px,5vw,34px);line-height:1.15;margin:10px 0 14px}body[class*="srh-login-"] .srh-login-welcome p{font-size:15px;line-height:1.5}.srh-login-eyebrow{font-size:11px;letter-spacing:.09em}body[class*="srh-login-"] #login{align-self:center;padding:24px;max-width:420px}body[class*="srh-login-"] .srh-login-footer{margin-top:auto;padding:0 min(24px,var(--srh-footer-right,9vw)) max(var(--srh-footer-bottom,25px),env(safe-area-inset-bottom)) min(24px,var(--srh-footer-left,9vw));font-size:12px;line-height:1.5}body[class*="srh-login-"] #login h1 a{height:72px!important;max-width:min(100%,220px)}body[class*="srh-login-"] #login label{font-size:14px}body[class*="srh-login-"] #login input.input{font-size:16px;min-height:46px}body[class*="srh-login-"] #login #nav,body[class*="srh-login-"] #login #backtoblog{overflow-wrap:anywhere}}
@media(max-width:380px){body[class*="srh-login-"] #login{padding:20px}body[class*="srh-login-"] #login .forgetmenot,body[class*="srh-login-"] #login .submit{float:none;width:100%}body[class*="srh-login-"] #login #wp-submit{float:none;width:100%}}
@media(max-height:600px) and (min-width:851px){body[class*="srh-login-"]{padding-top:24px;row-gap:20px}}

/* Edge-to-edge browser canvas, with readable native validation messages. */
html:has(body[class*="srh-login-"]){min-height:100%;margin:0}
body[class*="srh-login-"]{min-height:100dvh;-webkit-text-size-adjust:100%;width:100%;}
body[class*="srh-login-"] #login_error,body[class*="srh-login-"] #login .notice-error{background:#fff2f2;color:#842525;border-left:4px solid #c93030;line-height:1.5;padding:12px 14px;overflow-wrap:anywhere}
body[class*="srh-login-"] #login .message,body[class*="srh-login-"] #login .notice-info{background:#f0f5ff;color:#263c65;line-height:1.5;padding:12px 14px}
body[class*="srh-login-"] #login .notice p{color:inherit;margin:0}
@media(max-width:850px){body[class*="srh-login-"]{padding-top:max(24px,env(safe-area-inset-top));gap:20px}body[class*="srh-login-"] .srh-login-welcome{max-width:410px}body[class*="srh-login-"] .srh-login-welcome h2{font-size:clamp(26px,6vw,32px)}body[class*="srh-login-"] .srh-login-welcome p{max-width:360px;margin-inline:auto;font-size:14px;line-height:1.55}body[class*="srh-login-"] #login{border-radius:var(--srh-login-radius);box-shadow:0 16px 48px #00000024}body[class*="srh-login-"] .srh-login-footer{padding-bottom:max(24px,var(--srh-footer-bottom,25px),env(safe-area-inset-bottom));}}

/* Keep the welcome and form centered together, footer in its own flow row. */
body[class*="srh-login-"]:has(.srh-login-stage){display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:0;min-height:100vh;min-height:100dvh;padding:0 9vw;background:transparent!important}
body[class*="srh-login-"] .srh-login-stage{flex:1 0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,390px);column-gap:clamp(28px,5vw,90px);align-items:center;align-content:center;width:100%;min-width:0;padding:44px 0;}
body[class*="srh-login-"] .srh-login-stage .srh-login-welcome{align-self:center;margin:0}
body[class*="srh-login-"]:has(.srh-login-stage) .srh-login-footer{flex:0 0 auto;margin-top:0;padding-top:12px;}
body.srh-login-minimal .srh-login-stage,body.srh-login-glass .srh-login-stage{display:flex;flex-direction:column;justify-content:center;gap:24px}
body.srh-login-minimal .srh-login-stage #login,body.srh-login-glass .srh-login-stage #login{align-self:center}
@media(max-width:1024px){body[class*="srh-login-"]:has(.srh-login-stage){padding-inline:5vw}.srh-login-stage{gap:32px}}
@media(max-width:850px){body[class*="srh-login-"]:has(.srh-login-stage){padding:0 max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left))}body[class*="srh-login-"] .srh-login-stage{display:flex;flex-direction:column;justify-content:center;gap:22px;padding-top:max(28px,env(safe-area-inset-top));padding-bottom:28px}body[class*="srh-login-"] .srh-login-stage .srh-login-welcome{align-self:center}body[class*="srh-login-"]:has(.srh-login-stage) .srh-login-footer{padding-top:0;padding-bottom:max(22px,var(--srh-footer-bottom,25px),env(safe-area-inset-bottom))}}
