/* The Novick Family — private entry, independent of front-end WordPress theme. */
:root{--nh-ink:#39372e;--nh-moss:#455343;--nh-gold:#ae8b58;--nh-line:#d9cfbe;--nh-paper:#fbf7ee}
body.login{background:#f4f0e8;color:var(--nh-ink);min-height:100vh;overflow-x:hidden;font-family:'Helvetica Neue',Arial,sans-serif;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:42px 17px 74px;box-sizing:border-box}
body.login:before,body.login:after{content:'';position:fixed;inset:-20%;pointer-events:none;z-index:0}
body.login:before{background:radial-gradient(circle at 14% 18%,rgba(218,226,206,.82),transparent 31%),radial-gradient(circle at 82% 71%,rgba(228,211,209,.72),transparent 33%),radial-gradient(circle at 62% 15%,rgba(235,224,197,.57),transparent 24%),radial-gradient(circle at 10% 77%,rgba(219,214,233,.5),transparent 34%);filter:blur(44px);animation:nhms-glow 23s ease-in-out infinite alternate}
body.login:after{inset:20px;outline:1px solid rgba(165,143,105,.35);outline-offset:-1px;background:repeating-linear-gradient(125deg,transparent 0,transparent 104px,rgba(255,255,255,.09) 105px,transparent 106px);opacity:.36}
body.login #login{box-sizing:border-box;width:min(100%,475px);max-width:475px;padding:0 0 15px;margin:auto;position:relative;z-index:2}
body.login #login h1 a{background-size:contain;background-position:center;background-repeat:no-repeat;width:min(100%,230px);height:194px;margin:0 auto 3px;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
body.login #login h1 a:hover{transform:translateY(-3px)}
.nhms-login-intro{text-align:center;margin:0 auto 20px}
.nhms-login-kicker{font-size:9px;letter-spacing:.3em;color:#9a8664;font-weight:700}
.nhms-login-intro h2{font:normal clamp(37px,8vw,50px)/1.12 'Baskerville','Iowan Old Style','Palatino Linotype',Georgia,serif;letter-spacing:-.04em;margin:10px 0 8px;color:var(--nh-ink)}
.nhms-login-intro em{font-weight:400;color:#7c866b}
.nhms-login-intro p{font:italic 16px/1.5 Georgia,serif;color:#797365;margin:0}
body.login form{box-sizing:border-box;box-shadow:0 25px 75px rgba(61,51,39,.095),0 4px 20px rgba(81,73,53,.045);background:rgba(255,253,247,.83);border:1px solid rgba(172,149,111,.42);border-radius:18px;padding:30px clamp(22px,5vw,40px) 31px;backdrop-filter:blur(24px)}
body.login label{color:#655e50;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;line-height:1.9}
body.login input[type=text],body.login input[type=password],body.login input[type=email]{box-sizing:border-box;background:#fffefb;border:1px solid #d8d0c3;color:var(--nh-ink);min-height:51px;box-shadow:none;border-radius:8px;font-size:15px;line-height:1.4;padding:12px 13px;transition:border .2s,box-shadow .2s}
body.login input:focus{border-color:#91a28a;box-shadow:0 0 0 3px #91a28a25;outline:none}
body.login .button.wp-hide-pw{height:50px;color:var(--nh-moss)}
body.login p.forgetmenot{margin-top:11px}
body.login .forgetmenot label{letter-spacing:0;text-transform:none;font-size:12px;font-weight:400}
body.login #wp-submit{float:none;width:100%;min-height:50px;border-radius:8px;background:linear-gradient(115deg,#40503c,#66735a);box-shadow:0 5px 17px #64766020;color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:.2em;font-weight:700;margin-top:23px;border:1px solid #475643;transition:transform .25s,box-shadow .25s}
body.login #wp-submit:hover{transform:translateY(-2px);background:#364633;box-shadow:0 8px 21px #4b5a4433}
body.login #nav,body.login #backtoblog{padding:0 10px;text-align:center;margin-top:16px;font-size:11px}
body.login #nav a,body.login #backtoblog a{color:#5f6b57!important;text-decoration:none}
body.login #nav a:hover,body.login #backtoblog a:hover{text-decoration:underline}
body.login .message,body.login #login_error{border-radius:6px;border-left:3px solid #a49a78;background:#fffcf6;box-shadow:none;font-size:12px;line-height:1.7;margin-bottom:20px}
.nhms-login-signup{position:relative;z-index:5;margin:-18px auto 24px;text-align:center;max-width:500px;color:#766c5e;font-size:12px}
.nhms-login-signup a{color:#455742;font-weight:700;border-bottom:1px solid #988967;margin-left:4px;text-decoration:none}
.nhms-butterflies{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}
.nhms-butterfly{position:absolute;width:55px;height:auto;color:#a2865b;opacity:.6;filter:drop-shadow(0 5px 4px #a48f6630);transform:translate3d(0,0,0);animation:nhms-drift 14s ease-in-out infinite alternate}
.nhms-wing{transform-box:fill-box;transform-origin:center 50%;animation:nhms-flutter 1.7s ease-in-out infinite alternate}
.nhms-wing-l{transform-origin:right center}.nhms-wing-r{transform-origin:left center;animation-delay:-.5s}
.nhms-butterfly-1{left:8%;top:12%;width:78px;animation-duration:17s;animation-delay:-4s}
.nhms-butterfly-2{right:10%;top:22%;width:46px;animation-duration:15s;animation-delay:-8s}
.nhms-butterfly-3{left:14%;top:66%;width:37px;opacity:.4;animation-duration:21s}
.nhms-butterfly-4{right:14%;top:74%;width:62px;opacity:.38;animation-delay:-11s}
.nhms-butterfly-5{right:28%;top:7%;width:27px;opacity:.36;animation-duration:20s;animation-delay:-7s}
.nhms-butterfly-6{left:31%;bottom:10%;width:29px;opacity:.35;animation-duration:13s;animation-delay:-3s}
.nhms-butterfly-7{right:5%;top:51%;width:33px;opacity:.29;animation-duration:18s;animation-delay:-5s}
@keyframes nhms-flutter{from{transform:scaleX(.3)}to{transform:scaleX(1)}}
@keyframes nhms-drift{0%{translate:0 0;rotate:-10deg}50%{translate:17px -24px;rotate:7deg}100%{translate:-12px -37px;rotate:-12deg}}
@keyframes nhms-glow{from{transform:scale(1)}to{transform:scale(1.07) translate(2%,1%)}}
@media(max-width:650px){body.login{padding:22px 15px 65px;justify-content:flex-start}body.login #login h1 a{width:185px;height:145px}body.login form{padding:25px 22px}.nhms-login-intro h2{font-size:40px}.nhms-login-signup{margin:-5px auto 25px}.nhms-butterfly-1{left:-23px;top:11%;width:54px}.nhms-butterfly-2{right:-10px;top:23%;width:34px}.nhms-butterfly-4{right:0;bottom:8%}.nhms-butterfly-3{left:3%;bottom:15%}}
@media(prefers-reduced-motion:reduce){.nhms-butterfly,.nhms-wing,body.login:before{animation:none!important}body.login #wp-submit,body.login #login h1 a{transition:none!important}}
/* Explicit form styling, so this design also renders consistently if WordPress core login CSS changes. */
body.login #login h1{margin:0 auto 2px;padding:0;line-height:1}
body.login #login h1 a{display:block;box-sizing:border-box;color:transparent;font-size:0;text-indent:-9999px;overflow:hidden}
body.login #login form p:not(.forgetmenot){margin:0 0 18px}
body.login #login form p:not(.forgetmenot)>label{display:block;margin-bottom:6px}
body.login #login form input[type=text],body.login #login form input[type=password],body.login #login form input[type=email]{width:100%;max-width:none;display:block}
body.login #login form .forgetmenot label{display:inline-flex;align-items:center;gap:8px;text-transform:none;letter-spacing:0;font-weight:400}
