@font-face{font-family:Montserrat;src:url('/font.ttf') format('truetype');font-weight:100 900;font-display:swap}
:root{color-scheme:light;--purple:#51265c;--lavender:#d9c8e7;--ink:#38253f;--muted:#82718b;--border:#e8e0ed}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#fff;font:14px/1.6 Montserrat,Arial,sans-serif}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait}[hidden]{display:none!important}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #9767ad;outline-offset:4px}
.entrance{min-height:100vh;min-height:100svh;display:grid;grid-template-columns:1.06fr 1fr}.brand-side{position:relative;display:flex;flex-direction:column;overflow:hidden;background:#f4eef8;padding:48px clamp(44px,6.2vw,102px) 30px;min-height:760px}.brand{display:block;width:232px;position:relative;z-index:1}.brand img{display:block;width:100%;height:auto}.welcome-copy{position:relative;z-index:1;margin-top:86px}.eyebrow{display:flex;align-items:center;gap:11px;font-size:10px;font-weight:700;letter-spacing:.16em;line-height:1.7;color:var(--purple)}.small-line{display:inline-block;width:23px;height:2px;background:var(--purple)}h1{font-size:clamp(50px,4.8vw,74px);font-weight:650;letter-spacing:-.065em;line-height:1.09;margin:23px 0 22px;color:var(--purple)}.welcome-copy>p{font-size:14px;line-height:1.9;color:#766180;margin:0;max-width:400px}.areas{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}.areas span{border:1px solid #d9c8e7;border-radius:100px;padding:6px 13px;font-size:10px;font-weight:600;color:#70517e;background:#f8f4fb}.brand-footer{position:relative;z-index:1;font-size:10px;color:#8c739a;margin:auto 0 0;padding-top:235px;letter-spacing:.02em}
.laundry-motif{position:absolute;width:295px;height:235px;bottom:27px;right:30px;opacity:.76;pointer-events:none}.motif-orbit{position:absolute;width:217px;height:217px;right:10px;top:0;border-radius:50%;background:#e9dff1}.motif-machine{position:absolute;left:27px;top:30px;width:145px;height:171px;border:2px solid #a788bc;border-radius:18px;background:#faf7fc;transform:rotate(-5deg)}.machine-top{height:38px;border-bottom:2px solid #d9c8e7;display:flex;align-items:center;gap:5px;padding:0 12px}.machine-top i{width:5px;height:5px;background:#a788bc;border-radius:50%}.machine-top i:first-child{width:41px;height:7px;border-radius:4px;margin-right:auto;background:#d9c8e7}.machine-door{position:relative;width:96px;height:96px;border:7px solid #d9c8e7;border-radius:50%;margin:15px auto;overflow:hidden;background:#efe7f5;box-shadow:0 0 0 2px #a788bc}.machine-wave{position:absolute;width:140px;height:80px;border-radius:50%;background:#c5acd7;left:-24px;top:40px;transform:rotate(14deg)}.machine-wave.second{background:#dfcee9;left:-29px;top:48px;transform:rotate(-19deg)}.machine-foot{position:absolute;width:104px;bottom:-7px;left:18px;border-bottom:4px solid #a788bc;border-radius:4px}.folded-linen{position:absolute;bottom:34px;right:6px;width:113px;transform:rotate(3deg)}.folded-linen i{display:block;height:23px;border:2px solid #a788bc;border-radius:7px;margin-top:4px;background:#dfcee9}.folded-linen i:nth-child(2){margin-left:7px;margin-right:-7px;background:#faf7fc}.folded-linen i:last-child{margin-left:-4px;margin-right:4px;background:#ccb3dc}.motif-spark{position:absolute;font-size:28px;line-height:1;color:#a788bc;font-weight:400}.spark-one{right:15px;top:26px}.spark-two{left:1px;bottom:37px;font-size:19px}
.access-side{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:64px 44px 26px;position:relative}.access-card{width:100%;max-width:380px;margin:auto 0}.access-heading{display:flex;align-items:center;gap:12px;margin-bottom:29px}.access-heading .eyebrow{font-size:9px;letter-spacing:.13em;color:#967c9f}.access-symbol{display:grid;place-items:center;width:39px;height:39px;border:1px solid #e5d8ed;border-radius:12px;background:#fbf8fc}.access-symbol svg{width:18px;height:18px;fill:none;stroke:#866394;stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}h2{font-size:29px;line-height:1.25;letter-spacing:-.045em;font-weight:650;margin:0 0 12px;color:var(--purple)}.access-intro{margin:0 0 32px;font-size:12px;color:var(--muted)}form>label,.password-label>label{font-size:11px;font-weight:650;color:#604b6b;display:block;margin-bottom:8px}input{width:100%;height:52px;border:1px solid var(--border);border-radius:11px;background:#fdfcfe;color:var(--ink);padding:0 15px;outline-offset:2px;transition:border-color .18s,box-shadow .18s;font-size:13px}input::placeholder{color:#b3a5bc}input:focus{border-color:#a586b6;background:#fff;box-shadow:0 0 0 3px #f2eaf7}.password-label{display:flex;align-items:center;justify-content:space-between;margin-top:22px}.password-label>span{font-size:9px;color:#8c692b;margin-bottom:8px}.password-input{position:relative}.password-input input{padding-right:86px}.show-password{position:absolute;right:8px;top:8px;height:36px;padding:0 9px;border:0;background:transparent;color:#8b7198;border-radius:7px;font-size:10px;font-weight:600}.show-password:hover{background:#f1eaf6;color:var(--purple)}.form-message{color:#a23a42;font-size:11px;line-height:1.5;min-height:18px;margin:12px 0 15px}.primary-button{display:flex;align-items:center;justify-content:center;gap:20px;width:100%;min-height:52px;border:1px solid var(--purple);border-radius:11px;background:var(--purple);color:#fff;font-size:12px;font-weight:650;box-shadow:0 6px 16px #51265c12;transition:background .18s,transform .18s}.primary-button:hover:not(:disabled){background:#693174;transform:translateY(-1px)}.primary-button:disabled{opacity:.75}.primary-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.spinner{width:16px;height:16px;border:2px solid #ffffff66;border-top-color:#fff;border-radius:50%;animation:turn .7s linear infinite}@keyframes turn{to{transform:rotate(360deg)}}.access-footer{border-top:1px solid #f0eaf3;margin-top:29px;padding-top:21px;display:flex;align-items:center;gap:8px;font-size:9px;color:#a08cab}.small-dot{width:4px;height:4px;background:#b39ac1;border-radius:50%;flex-shrink:0}.access-signature{font-size:9px;letter-spacing:.1em;color:#b6a5bf;margin:36px 0 0}.access-signature span{padding:0 5px;color:#c9b8d1}.success-note{font-size:11px;background:#eef6ef;border:1px solid #d7e8d9;color:#366240;padding:12px 14px;border-radius:9px;margin:-12px 0 24px}.no-script{font-size:12px;color:#a23a42;margin:18px 0}
@media(min-width:1500px){.brand-side{padding-left:max(100px,calc((100vw - 1400px)/2))}.access-card{max-width:410px}.access-side{padding-right:max(44px,calc((100vw - 1500px)/2))}}
@media(max-width:1000px){.brand-side{padding:40px 40px 28px;min-height:720px}.brand{width:208px}.welcome-copy{margin-top:77px}.welcome-copy>p{font-size:12px}.desktop-break{display:none}.laundry-motif{right:8px;transform:scale(.85);transform-origin:bottom right}.access-side{padding:48px 34px 24px}.access-card{max-width:340px}h1{font-size:53px}h2{font-size:27px}}
@media(max-width:740px){.entrance{grid-template-columns:1fr}.brand-side{min-height:0;padding:30px 27px 31px}.brand{width:185px}.welcome-copy{margin-top:28px}.welcome-copy .eyebrow{font-size:8px;letter-spacing:.14em}.small-line{width:16px}h1{font-size:37px;letter-spacing:-.055em;line-height:1.08;margin:15px 0 12px}h1 br{display:none}h1 br::after{content:' '}.welcome-copy>p{font-size:11px;line-height:1.85;max-width:330px;padding-right:12px}.areas{margin-top:17px;gap:6px}.areas span{font-size:8px;padding:4px 9px}.brand-footer,.laundry-motif{display:none}.access-side{padding:36px 27px 25px;justify-content:flex-start}.access-card{max-width:430px;margin:0}.access-heading{margin-bottom:19px}.access-symbol{width:34px;height:34px;border-radius:10px}.access-heading .eyebrow{font-size:8px}h2{font-size:25px}.access-intro{margin-bottom:25px;font-size:11px}.access-signature{margin-top:27px}.access-footer{font-size:8px}.form-message{font-size:11px}input{font-size:16px;height:52px}.password-label{margin-top:19px}.primary-button{font-size:12px}}
@media(max-width:360px){.brand-side,.access-side{padding-left:21px;padding-right:21px}.brand{width:168px}h1{font-size:33px}.welcome-copy>p{padding-right:0}.access-footer{align-items:flex-start}}
@media(max-width:740px){.show-password{top:4px;right:4px;height:44px;min-width:68px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.primary-button:hover:not(:disabled){transform:none}}
