.vs-public{max-width:1040px;margin:48px auto;padding:40px 28px;color:#183c3c;font-family:system-ui,-apple-system,sans-serif}.vs-public h1{font-size:clamp(30px,5vw,56px);line-height:1.13;letter-spacing:-1.6px;margin:18px 0 24px}.vs-public p{line-height:1.7;color:#536668}.vs-hero{background:#edf5ef;border-radius:24px;padding:64px 48px}.vs-link,.vs-login input[type=submit]{display:inline-block;background:#17665b;color:white!important;border:0;border-radius:8px;padding:14px 24px;text-decoration:none;font-weight:600;cursor:pointer}.vs-services{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.vs-services article{border-top:2px solid #17665b;padding-top:18px}.vs-login{max-width:440px;background:#f4f8f6;border-radius:18px}.vs-login h1{font-size:34px}.vs-login label{display:block;font-size:14px;margin-bottom:8px}.vs-login input:not([type=submit]){width:100%;box-sizing:border-box;min-height:44px;border:1px solid #94aba6;border-radius:6px;padding:8px}.vs-session{max-width:1280px;margin:auto;padding:16px}.vs-public a:focus-visible,.vs-public input:focus-visible{outline:3px solid #a97814;outline-offset:3px}@media(max-width:600px){.vs-services{grid-template-columns:1fr}.vs-hero{padding:32px 24px}.vs-public{margin:24px auto}}
/* Shared warm identity with client.css; native WordPress login behavior retained. */
.vs-login-shell{display:grid;grid-template-columns:1fr 1fr;max-width:1100px;margin:48px auto 64px;border:1px solid #ded9ce;border-radius:14px;overflow:hidden;background:#faf8f4;color:#292720}.vs-login-photo{background:#eee7d9;min-height:540px}.vs-login-photo img{height:100%;width:100%;object-fit:cover;display:block}.vs-login-content{padding:52px 48px}.vs-login-content h1{font-size:38px;letter-spacing:-1.4px;line-height:1.12;margin:16px 0}.vs-login-content>p{color:#68645c;line-height:1.6}.vs-login-content .vs-eyebrow{color:#6b5540;font-size:12px;letter-spacing:1px}.vs-login-content label{display:block;font-size:13px;font-weight:600;margin-bottom:8px}.vs-login-content input:not([type=submit]){width:100%;min-height:46px;border:1px solid #bdb4a5;border-radius:6px;background:white;padding:10px;font:inherit}.vs-login-content input[type=submit]{background:#875526;color:white;border:0;border-radius:6px;min-height:46px;padding:12px 24px;font:inherit;cursor:pointer;width:100%}.vs-login-content a{color:#704820;font-size:13px}.vs-login-content .vs-login-help{font-size:12px;margin-top:30px}.vs-login-content :focus-visible{outline:3px solid #875526;outline-offset:3px}@media(max-width:760px){.vs-login-shell{grid-template-columns:1fr;margin:24px 8px}.vs-login-photo{min-height:0;height:190px}.vs-login-photo img{object-position:center 48%}.vs-login-content{padding:28px 24px}.vs-login-content h1{font-size:32px}}

.vs-public{color:#292720}.vs-public p{color:#68645c}.vs-link{background:#875526}.vs-session a{color:#875526}
/* Standalone logout uses the same identity as access, without the WordPress screen. */
.vs-session-page{margin:0;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:#faf8f4;color:#292720;font:15px/1.6 system-ui,-apple-system,sans-serif}.vs-session-page *{box-sizing:border-box}.vs-session-brand{padding:24px max(24px,calc((100% - 1100px)/2));background:#fff;border-bottom:1px solid #ded9ce}.vs-session-brand a{color:inherit;text-decoration:none;font-size:23px;font-weight:650;letter-spacing:-.7px}.vs-session-brand span{display:block;font-size:13px;color:#68645c}.vs-session-main{flex:1;display:grid;place-items:center;padding:48px 24px}.vs-login-shell.vs-logout-shell{display:block;width:100%;max-width:480px;min-height:0;margin:0;background:#fff}.vs-logout-shell .vs-login-content{padding:40px}.vs-logout-shell h1{margin:0 0 16px;font-size:32px}.vs-logout-shell p{margin:0 0 24px}.vs-logout-actions{display:flex;flex-direction:column;gap:12px}.vs-logout-actions button,.vs-logout-shell .vs-session-primary{display:block;width:100%;border:0;border-radius:6px;background:#875526;color:#fff;font:inherit;font-weight:600;text-align:center;text-decoration:none;padding:12px 18px;min-height:46px;cursor:pointer}.vs-logout-actions a{display:block;padding:10px 12px;text-align:center;min-height:44px;color:#534c3e;font:inherit;text-decoration:none}.vs-logout-actions a:hover{background:#f3eee4;border-radius:6px}.vs-session-page :focus-visible{outline:3px solid #875526;outline-offset:4px}.vs-session-footer{padding:24px;text-align:center;border-top:1px solid #ded9ce;color:#68645c;font-size:13px}.vs-logout-shell .vs-session-error{color:#a12a20}@media(max-width:600px){.vs-session-main{padding:32px 20px}.vs-logout-shell .vs-login-content{padding:28px 24px}.vs-session-brand{padding:20px}.vs-logout-shell h1{font-size:30px}}

/* Account and login feedback: visible without JavaScript. */
.vs-auth-notice{border:1px solid;border-left-width:5px;border-radius:6px;padding:16px 18px;margin:24px 0;text-align:left}.vs-auth-notice strong{display:block;font-size:17px}.vs-auth-notice p{margin:6px 0 0;line-height:1.5}.vs-auth-error{color:#84251e;background:#fff0ed;border-color:#b54135}.vs-auth-success{color:#20563b;background:#edf7ef;border-color:#39865b}.vs-auth-notice[hidden],.vs-auth-field-error[hidden],.vs-auth-pending[hidden]{display:none}.vs-auth-field-error{display:block;color:#84251e;font-size:13px;margin-top:6px}.vs-login-content input[aria-invalid="true"]{border:2px solid #b54135}.vs-login-content input[type=submit]:disabled{opacity:.7;cursor:wait}.vs-auth-pending{font-weight:600;color:#534c3e}.vs-login-content small{display:block;font-size:12px;margin-top:6px}

.vs-password-wrap{position:relative}.vs-login-content .vs-password-wrap input{padding-right:54px}.vs-password-toggle{position:absolute;right:2px;top:2px;bottom:2px;min-width:44px;border:0;background:transparent;border-radius:4px;display:grid;place-items:center;cursor:pointer}.vs-password-toggle:hover{background:#eee7d9}.vs-password-toggle img{display:block}
