:root{--cream: #F5EFE1;--paper: #FBF8F1;--terracotta: #B5482B;--terracotta-dark: #93381F;--brown: #2B2320;--brown-soft: #6B5D52;--line: rgba(43, 35, 32, .1);--moss: #3F4B3D;--moss-line: rgba(245, 239, 225, .14);--radius: 16px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--brown);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.wrap{max-width:1040px;margin:0 auto;padding:0 28px}header{position:sticky;top:0;z-index:10;background:#3f4b3deb;backdrop-filter:saturate(140%) blur(10px);border-bottom:1px solid var(--moss-line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:16px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--brown)}.brand svg{height:30px;width:auto;display:block}nav{display:flex;gap:28px}nav a{color:#f5efe1bf;text-decoration:none;font-size:15px;font-weight:500;transition:color .15s ease}nav a:hover{color:var(--cream)}.eyebrow{display:inline-block;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--terracotta);margin-bottom:18px}section{padding:72px 0}.section-header{max-width:620px;margin:0 auto 48px;text-align:center}.section-header .eyebrow{margin-bottom:12px}h2{font-family:Georgia,Iowan Old Style,Times New Roman,serif;font-weight:500;font-size:clamp(32px,5vw,44px);margin:0 0 14px;letter-spacing:-.01em}.section-header p{color:var(--brown-soft);font-size:17px;margin:0}.btn{display:inline-block;padding:13px 26px;border-radius:999px;font-size:15px;font-weight:600;text-decoration:none;transition:transform .15s ease,background .15s ease,box-shadow .15s ease}.btn-primary{background:var(--terracotta);color:var(--paper)}.btn-primary:hover{background:var(--terracotta-dark);transform:translateY(-1px)}.btn-secondary{background:transparent;color:var(--brown);border:1px solid var(--line)}.btn-secondary:hover{border-color:var(--terracotta);color:var(--terracotta)}.progress-badge{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--terracotta-dark);background:#b5482b1a;border:1px dashed rgba(181,72,43,.35);padding:8px 16px;border-radius:999px}.back-link{display:block;text-align:center;padding:8px 0 48px}.back-link a{color:var(--brown-soft);text-decoration:none;font-size:14px;font-weight:500}.back-link a:hover{color:var(--terracotta)}footer{margin-top:auto;background:var(--moss);border-top:1px solid var(--moss-line);padding:40px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.footer-brand{display:flex;align-items:center;gap:10px;color:#f5efe1bf;font-size:14px}.footer-brand svg{height:22px;width:auto}.footer-links{display:flex;align-items:center;gap:20px;flex-wrap:wrap}footer a{color:#f5efe1bf;text-decoration:none;font-size:14px}footer a:hover{color:var(--cream)}.login-dropdown{position:relative}.login-dropdown summary{color:#f5efe1bf;text-decoration:none;font-size:15px;font-weight:500;cursor:pointer;list-style:none;transition:color .15s ease}.login-dropdown summary::-webkit-details-marker{display:none}.login-dropdown summary:after{content:"▾";margin-left:4px;font-size:11px}.login-dropdown summary:hover,.login-dropdown[open] summary{color:var(--cream)}.login-menu{position:absolute;top:calc(100% + 10px);right:0;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:6px;min-width:160px;box-shadow:0 12px 28px #2b23202e;display:flex;flex-direction:column;z-index:20}.login-menu a{color:var(--brown);font-size:14px;font-weight:500;padding:9px 12px;border-radius:6px;text-decoration:none}.login-menu a:hover{background:var(--cream);color:var(--terracotta)}footer .login-dropdown summary{font-size:14px}footer .login-menu{top:auto;bottom:calc(100% + 10px)}.auth-main{flex:1;min-height:60vh;display:flex;align-items:center;justify-content:center;padding:64px 20px}.login-card{width:100%;max-width:400px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:40px 36px;text-align:center;margin:0 auto}.lock-icon{width:52px;height:52px;border-radius:999px;background:var(--cream);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.lock-icon svg{width:22px;height:22px}.login-card h1{font-family:Georgia,Iowan Old Style,Times New Roman,serif;font-weight:500;font-size:26px;margin:0 0 8px}.login-card p.sub{color:var(--brown-soft);font-size:15px;margin:0 0 28px}.login-card .progress-badge{margin-bottom:28px}.login-card form{text-align:left}.login-card label{display:block;font-size:13px;font-weight:600;color:var(--brown-soft);margin-bottom:6px}.login-card .field{margin-bottom:18px}.login-card input{width:100%;padding:12px 14px;border-radius:10px;border:1px solid var(--line);background:var(--cream);color:var(--brown);font-size:15px;font-family:inherit}.login-card input::placeholder{color:#2b232059}.login-card button[type=submit]{width:100%;padding:13px 26px;border-radius:999px;font-size:15px;font-weight:600;border:none;background:var(--terracotta);color:var(--paper);cursor:pointer;margin-top:4px;transition:background .15s ease}.login-card button[type=submit]:hover{background:var(--terracotta-dark)}.login-card .otp-note{font-size:14px;color:var(--brown-soft);margin:0 0 20px;text-align:left}.login-card .link-btn{display:block;margin:16px auto 0;background:none;border:none;padding:0;color:var(--brown-soft);font-size:13px;font-weight:500;cursor:pointer;text-align:center}.login-card .link-btn:hover{color:var(--terracotta)}#login-note{margin-top:16px;font-size:13px;color:var(--brown-soft);text-align:center}.login-card .form-error{font-size:13px;color:var(--terracotta-dark);background:#b5482b14;border-radius:8px;padding:10px 12px;margin:0 0 16px;text-align:left}.login-card button[disabled]{opacity:.6;cursor:not-allowed}@media(max-width:680px){nav{gap:18px}nav a,.login-dropdown summary{font-size:14px}section{padding:56px 0}footer .login-menu{right:auto;left:0}}@media(max-width:480px){nav .nav-section{display:none}.wrap{padding-inline:20px}}
