.auth-page,.contact-page{background:linear-gradient(#fffcf7 0%,#fff 60%);min-height:60vh;padding:2.5rem 15px 5rem}.auth-shell{background:#fff;border:1px solid #e2e1df;border-radius:20px;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);max-width:1060px;margin:0 auto;display:grid;overflow:hidden;box-shadow:0 24px 60px -30px #490a0c59}.auth-art{color:#fff;background:radial-gradient(circle at 20% 15%,#832729 0%,#300708 70%);align-items:flex-end;padding:3rem 2.5rem;display:flex}.auth-art-kicker{letter-spacing:.2em;text-transform:uppercase;color:#e9c48a;margin:0 0 1rem;font:600 .8125rem IBM Plex Sans,sans-serif}.auth-art h2{color:#fff;margin:0 0 1rem;font:500 clamp(1.75rem,3vw,2.5rem)/1.15 Fraunces,serif}.auth-art p:last-child{opacity:.9;margin:0;font:400 1rem/1.6 IBM Plex Sans,sans-serif}.auth-card{padding:2.5rem clamp(1.25rem,4vw,3rem)}.auth-tabs{background:#f5f5f4;border-radius:999px;margin-bottom:1.5rem;padding:4px;display:inline-flex}.auth-tabs button{color:#56544e;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:.5rem 1.5rem;font:500 .9375rem IBM Plex Sans,sans-serif}.auth-tabs button.active{color:#fff;background:#832729}.auth-card h1{color:#300708;margin:0 0 .35rem;font:400 2rem/1.2 Fraunces,serif}.auth-sub{color:#56544e;margin:0 0 1.5rem;font:400 .9375rem/1.5 IBM Plex Sans,sans-serif}.auth-field{margin-bottom:1rem}.auth-field label,.contact-field label{color:#300708;margin-bottom:6px;font:500 .875rem IBM Plex Sans,sans-serif;display:block}.auth-input-wrap{position:relative}.auth-field input,.contact-field input,.contact-field select,.contact-field textarea{color:#222;background:#fff;border:1px solid #cdcdcd;border-radius:10px;outline:none;width:100%;padding:.8rem 1rem;font:400 1rem IBM Plex Sans,sans-serif;transition:border-color .2s,box-shadow .2s}.auth-field input:focus,.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:#832729;box-shadow:0 0 0 3px #83272926}.has-error input,.has-error select,.has-error textarea{border-color:#c0392b}.auth-eye{color:#832729;cursor:pointer;background:0 0;border:0;font:600 .8125rem IBM Plex Sans,sans-serif;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.auth-error{color:#c0392b;margin-top:5px;font:400 .8125rem IBM Plex Sans,sans-serif;display:block}.auth-forgot{text-align:right;margin:-.25rem 0 1.25rem;font:400 .875rem IBM Plex Sans,sans-serif}.auth-forgot a,.auth-check a{color:#832729;text-decoration:underline}.auth-check{color:#56544e;margin:.25rem 0 1.25rem;font:400 .875rem/1.5 IBM Plex Sans,sans-serif}.auth-check input{accent-color:#832729;margin-right:6px}.auth-btn{color:#fff;cursor:pointer;background:#832729;border:0;border-radius:999px;justify-content:center;align-items:center;width:100%;min-height:3.25rem;font:600 1rem IBM Plex Sans,sans-serif;text-decoration:none;transition:background-color .2s;display:inline-flex}.auth-btn:hover{background:#631517}.auth-btn:focus-visible,.auth-tabs button:focus-visible,.auth-switch button:focus-visible{outline-offset:2px;outline:2px solid #832729}.auth-switch{text-align:center;color:#56544e;margin:1.5rem 0 0;font:400 .9375rem IBM Plex Sans,sans-serif}.auth-switch button{color:#832729;cursor:pointer;background:0 0;border:0;font:600 .9375rem IBM Plex Sans,sans-serif;text-decoration:underline}.auth-done{color:#300708;background:#fdf1f1;border:1px solid #e2c2c3;border-radius:14px;padding:1.5rem;font:400 .9375rem/1.6 IBM Plex Sans,sans-serif}.auth-done strong{font:500 1.25rem Fraunces,serif}.auth-done p{margin:.5rem 0 1.25rem}.contact-wrap{max-width:1100px;margin:0 auto}.contact-hero{text-align:center;margin-bottom:2.5rem}.contact-hero h1{color:#300708;margin:0 0 .5rem;font:400 clamp(2rem,4vw,2.75rem)/1.15 Fraunces,serif}.contact-hero p{color:#56544e;max-width:34rem;margin:0 auto;font:400 1rem/1.6 IBM Plex Sans,sans-serif}.contact-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);align-items:start;gap:2rem;display:grid}.contact-cards{gap:1rem;display:grid}.contact-card{background:#fff;border:1px solid #e2e1df;border-radius:16px;padding:1.5rem}.contact-card h2{color:#832729;margin:0 0 .35rem;font:500 1.25rem Fraunces,serif}.contact-card p,.contact-card a{color:#222;margin:0;font:400 .9375rem/1.6 IBM Plex Sans,sans-serif;text-decoration:none}.contact-card a:hover{text-decoration:underline}.contact-form{background:#fff;border:1px solid #e2e1df;border-radius:20px;padding:2rem;box-shadow:0 24px 60px -36px #490a0c4d}.contact-form h2{color:#300708;margin:0 0 1.25rem;font:400 1.5rem Fraunces,serif}.contact-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.contact-field{margin-bottom:1rem}.contact-field textarea{resize:vertical;min-height:140px}@media (max-width:860px){.auth-shell,.contact-grid{grid-template-columns:minmax(0,1fr)}.auth-art{display:none}.contact-row{grid-template-columns:minmax(0,1fr)}}.contact-hero h1,.contact-form h2,.contact-card h2{font-family:Fraunces,serif!important}.auth-form-error{background:#fdecea;border-radius:10px;margin:0 0 1rem;padding:.65rem .9rem}.auth-btn:disabled{opacity:.6;cursor:wait}.auth-single{background:#fff;border:1px solid #e2e1df;border-radius:20px;max-width:520px;margin:0 auto;box-shadow:0 24px 60px -30px #490a0c59}.auth-switch a{color:#832729;font-weight:600;text-decoration:underline}
