:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#302b28;background:#f8f6f4;font-synthesis:none;--brand:#a64b23;--muted:#756f6b;--line:#e7e2df}
*{box-sizing:border-box}body{margin:0;min-width:320px}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.65;cursor:wait}a{color:var(--brand);text-underline-offset:4px}
.loginShell{min-height:100dvh;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,1fr);max-width:1600px;margin:auto}
.loginBrandPanel{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:60px clamp(36px,6vw,100px);background:#eee4e4;border-right:1px solid var(--line)}
.loginBrand{position:relative;z-index:1;display:flex;align-items:center;gap:12px;text-decoration:none;color:#795136}.brandMark{display:grid;place-items:center;width:40px;height:40px;border:1px solid #a88974;border-radius:50%;font:italic 26px Georgia,serif}.loginBrand b{font-size:24px;letter-spacing:-1px;font-weight:650}.loginBrand small{display:block;font-size:9px;letter-spacing:.23em;margin-top:3px;text-transform:uppercase}
.loginBrandStory{position:relative;z-index:1;padding:90px 0}.brandEyebrow{font-size:11px;letter-spacing:.16em;color:#876b58;font-weight:650}.loginBrandStory h2{font-size:clamp(42px,4.5vw,68px);line-height:1.12;letter-spacing:-2px;font-weight:500;margin:24px 0}.loginBrandStory h2 em{font-family:Georgia,serif;font-weight:400;color:#976d51}.loginBrandStory p{font-size:16px;line-height:1.8;max-width:340px;color:#776c64}.loginBrandFoot{position:relative;z-index:1;font-size:11px;letter-spacing:.1em;color:#876b58}
.brandOrbit{position:absolute;width:630px;height:630px;border:1px solid #c7b6aa5c;border-radius:50%;right:-360px;bottom:-250px}.brandOrbit::before,.brandOrbit::after{content:"";position:absolute;inset:38px;border:1px solid #c7b6aa5c;border-radius:50%}.brandOrbit::after{inset:78px}
.loginCard{align-self:center;width:min(430px,calc(100% - 72px));margin:60px auto;padding:0}.loginMobileBrand{display:none}.loginWelcome{font-size:11px;color:var(--brand);letter-spacing:.13em;font-weight:650;text-transform:uppercase;margin:0 0 16px}h1{font-size:34px;line-height:1.2;letter-spacing:-1px;font-weight:600;margin:0 0 14px}.loginIntro{font-size:14px;line-height:1.7;color:var(--muted);margin:0 0 32px;max-width:370px}
form label,.forgotBox label{display:block;font-size:13px;font-weight:600;margin:0 0 9px}input{width:100%;height:50px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;color:#302b28;background:#fff;outline:none;font-size:16px;transition:border-color .15s}input:focus{border-color:var(--brand);box-shadow:0 0 0 3px #9b613b14}#loginEmail{margin-bottom:23px}.passwordField{position:relative;margin-bottom:24px}.passwordField input{padding-right:78px}.passwordVisibility{position:absolute;right:4px;top:4px;bottom:4px;border:0;border-radius:7px;background:transparent;color:var(--brand);padding:0 12px;font-size:12px;font-weight:650}
.full{width:100%;min-height:49px;border-radius:10px;padding:12px 16px;font-size:14px;font-weight:600}.primary{border:1px solid var(--brand);background:var(--brand);color:white}.primary:hover{background:#835130}.ghost{border:1px solid var(--line);background:transparent;color:var(--brand)}.loginTextButton{display:block;margin:16px auto 0;padding:8px;border:0;background:transparent;color:var(--brand);font-size:13px}.message{color:#ae6331;background:#fdf6f2;border:1px solid #f1ddd0;border-radius:9px;padding:12px 14px;font-size:13px;line-height:1.6;margin-top:16px}.message:empty{display:none}.message.success{color:#286640;background:#eef8f1;border-color:#cce4d3}
.forgotBox input{margin-bottom:18px}.forgotBox .ghost{margin-top:10px}.loginProgramLink{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:30px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-decoration:none}.loginProgramLink span{display:grid;gap:7px}.loginProgramLink b{font-size:13px;font-weight:600}.loginProgramLink small{font-size:12px;color:var(--muted);line-height:1.5}.loginProgramLink strong{font-size:24px;font-weight:400}.loginNotifications{margin-top:24px;font-size:12px;color:var(--muted)}.loginNotifications summary{cursor:pointer;padding:6px 0}.loginNotifications p{line-height:1.7}.loginNotifications .ghost{font-size:12px;min-height:42px}.loginFooterNote{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;margin-top:36px;font-size:10px;color:var(--muted);letter-spacing:.04em}.loginFooterNote a{font-size:11px;color:var(--muted);letter-spacing:0}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #9b613b50;outline-offset:4px}
@media(max-width:900px){.loginShell{grid-template-columns:minmax(0,.85fr) minmax(380px,1fr)}.loginBrandPanel{padding:40px 30px}.loginBrandStory h2{font-size:43px}.loginCard{width:calc(100% - 56px)}}
@media(max-width:700px){.loginShell{display:block}.loginBrandPanel{display:none}.loginCard{width:min(430px,calc(100% - 44px));margin:0 auto;padding:32px 0 28px}.loginMobileBrand{display:flex;margin-bottom:44px}.loginWelcome{font-size:10px}h1{font-size:30px}.loginIntro{margin-bottom:28px}.loginFooterNote{margin-top:28px}.loginProgramLink{margin-top:24px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Felizfit studio: orange walls, ivory surfaces and oak details. */
:root{color:#292a27;background:#fffdf9;--muted:#6f685e;--line:#ded5c8}
.loginBrandPanel{background:#eee5d6;border-right:0;padding-top:48px;padding-bottom:40px}
.loginBrand{color:#292a27}.loginBrand b{font-size:32px;letter-spacing:-1.8px;font-weight:650}
.brandMark{border:0;border-radius:0;background:transparent;width:46px;height:46px;object-fit:contain}
.loginBrandStory h2{font-size:clamp(54px,5.4vw,82px);line-height:1.04;letter-spacing:-3px}
.loginBrandStory h2 em{color:#a64b23}.brandEyebrow,.loginBrandFoot{color:#756149}.loginBrandStory p{color:#655b4e}
.brandOrbit{width:590px;height:640px;right:-255px;bottom:-465px;border-radius:290px 290px 0 0;border:76px solid #c9713a;background:#e2bb82;transform:rotate(-13deg)}
.brandOrbit::before{inset:26px;border:2px solid #fff7ec;border-radius:230px 230px 0 0}.brandOrbit::after{display:none}
.primary:hover{background:#803919}input{color:#292a27;background:#fffdf9;border-radius:12px}.full{border-radius:12px}
.loginCard{margin:52px auto}.loginWelcome{letter-spacing:.18em}
@media(max-width:700px){.loginCard{margin:0 auto;padding-top:32px}.loginMobileBrand{margin-bottom:36px}.loginBrand b{font-size:30px}}
