@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
:root{--olive:#2e3a2f;--terra:#c4653c;--sand:#d9c9b4;--cream:#f7f3ec;--ink:#242824;--muted:#706e67;--line:#e6ded2;--white:#fffdf9}
*{box-sizing:border-box}body{margin:0;min-height:100dvh;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif;display:flex;flex-direction:column}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}[hidden]{display:none!important}a:focus-visible,button:focus-visible{outline:2px solid var(--terra);outline-offset:5px}
.login-top{width:min(1180px,90vw);margin:30px auto 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:11px}.back-link{font-size:12px;color:var(--muted);padding:12px 0}.back-link:hover{color:var(--terra)}
.access-layout{width:min(1050px,90vw);margin:64px auto 60px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:85px;align-items:center;flex:1}.eyebrow{font-size:10px;letter-spacing:2.3px;font-weight:700;color:var(--terra)}h1{font-family:"Playfair Display",serif;font-weight:500;font-size:clamp(36px,4vw,52px);line-height:1.15;letter-spacing:-1.8px;color:var(--olive);margin:20px 0}h1 em{color:var(--terra)}.access-story>p{font-size:14px;line-height:1.8;color:var(--muted);max-width:410px;margin:0}
.access-preview{margin-top:32px;background:var(--white);border-radius:16px;border:1px solid var(--line);padding:17px;width:96%;transform:rotate(-2deg);box-shadow:0 18px 48px #4d3d2d0d}.preview-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:13px;font-size:11px;color:var(--olive);font-weight:600}.preview-dot{display:inline-block;width:7px;height:7px;background:var(--terra);border-radius:50%;margin-right:7px}.preview-dots{font-size:6px;letter-spacing:3px;color:var(--sand)}.preview-body{display:flex;gap:13px;padding-top:16px}.preview-nav{display:flex;flex-direction:column;gap:20px;padding:7px;color:#969b8d}.preview-main{flex:1;display:grid;grid-template-columns:1.15fr 1fr;gap:12px}.preview-welcome{background:#e9eee4;border-radius:9px;padding:15px;color:var(--olive);font-size:9px}.preview-welcome strong{display:block;font-size:13px;line-height:1.5;margin-top:10px}.preview-line{height:4px;width:70%;background:#c4ceba;border-radius:3px;margin-top:15px}.preview-session{border:1px solid var(--line);padding:13px;border-radius:9px;font-size:10px}.session-time{color:var(--terra);font-size:17px;font-weight:600}.preview-session strong{display:block;margin-top:9px;font-size:10px}.preview-session small{display:block;margin-top:4px;color:var(--muted);font-size:8px}.preview-calendar{grid-column:span 2;background:#f5f1e9;border-radius:9px;padding:14px;font-size:9px}.preview-calendar>div:first-child{display:flex;justify-content:space-between;gap:10px}.preview-calendar>div:first-child>span{color:var(--muted);font-size:8px}.preview-days{display:flex;gap:8px;margin-top:13px}.preview-days>span{flex:1;font-size:7px;color:var(--muted);border-left:1px solid var(--line);padding-left:7px;min-height:53px}.preview-days i{display:block;height:10px;background:#d3dcc9;border-radius:3px;margin-top:9px}.preview-days>span:nth-child(2n) i{background:#e7c6b3}.preview-days i+i{width:75%;margin-top:5px}.access-features{display:flex;justify-content:space-between;gap:10px;margin-top:28px;color:var(--muted);font-size:10px}
.access-form-card{padding:37px 35px;background:var(--white);border:1px solid var(--line);border-radius:22px;box-shadow:0 18px 60px #4d3d2d08}.form-icon{width:46px;height:46px;background:#eee7db;color:var(--olive);border-radius:13px;display:grid;place-items:center;margin-bottom:25px}.form-icon svg{width:25px;height:25px}.form-eyebrow{font-size:9px;letter-spacing:1.8px}.access-form-card h2{font-family:"Playfair Display",serif;color:var(--olive);font-size:29px;line-height:1.2;letter-spacing:-.7px;font-weight:500;margin:12px 0}.form-intro{font-size:13px;color:var(--muted);line-height:1.6;margin:0 0 29px}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:12px;font-weight:600;margin-bottom:9px}.access-input{display:flex;align-items:center;gap:11px;background:#fbf8f2;border:1px solid var(--line);border-radius:11px;padding:0 13px;min-height:49px;transition:border-color .2s}.access-input:focus-within{border-color:var(--terra);outline:2px solid #c4653c16}.access-input>svg{width:18px;height:18px;color:#949185;flex-shrink:0}.access-input input{min-width:0;width:100%;border:0;outline:0;background:transparent;padding:14px 0;font-size:13px;color:var(--ink)}.access-input input::placeholder{color:#a39c90}.toggle-password{border:0;background:transparent;color:var(--muted);padding:5px;display:grid;place-items:center;flex-shrink:0}.toggle-password svg{width:19px;height:19px}.toggle-password[aria-pressed=true]{color:var(--terra)}.btn-login{width:100%;border:0;border-radius:11px;background:var(--terra);color:#fff;padding:15px 18px;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:space-between;margin-top:28px;transition:background .2s}.btn-login:hover{background:#b15733}.btn-login:disabled{opacity:.65;cursor:wait}.form-message{margin:0 0 16px;padding:12px 14px;background:#f8eae0;color:#913d25;border:1px solid #edd0be;border-radius:10px;font-size:12px;line-height:1.6}.form-message.info{background:#eef1e8;color:var(--olive);border-color:#d6deca}.access-register{margin:25px 0 0;padding-top:22px;border-top:1px solid var(--line);text-align:center;font-size:11px;line-height:1.9;color:var(--muted)}.access-register a{font-weight:700;color:var(--terra)}.access-register a:hover{text-decoration:underline}.access-footer{width:min(1180px,90vw);margin:0 auto 22px;display:flex;justify-content:space-between;gap:16px;font-size:10px;color:#898477}
@media(max-width:1000px){.access-layout{gap:42px;margin-top:45px}.access-form-card{padding:30px 26px}h1{font-size:42px}.access-features{font-size:9px}}
@media(max-width:760px){.login-top{margin-top:22px}.access-layout{grid-template-columns:1fr;width:min(440px,90vw);gap:26px;margin:36px auto}.access-story>p,.access-preview,.access-features{display:none}.access-story h1{font-size:34px;line-height:1.17;margin:14px 0 0}.access-story h1 br{display:none}.access-story h1 em:before{content:" "}.eyebrow{font-size:9px}.access-form-card{padding:30px 27px}.access-footer{justify-content:center;text-align:center}.access-footer>span:last-child{display:none}.back-link{font-size:11px}}
@media(prefers-reduced-motion:reduce){.access-preview{transform:none}.access-input,.btn-login{transition:none}}
