.mc-login { margin:0; background:#faf7f2; color:#282321; font-family:Arial,Helvetica,sans-serif; }
.mc-login * { box-sizing:border-box; }
.mc-shell { display:grid; grid-template-columns:1.08fr 1fr; min-height:100svh; }
.mc-hero { position:relative; isolation:isolate; overflow:hidden; min-height:720px; background:#9e090b; color:white; }
.mc-hero-photo,.mc-hero-shade { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }
.mc-hero-shade { z-index:-1; background:linear-gradient(180deg,rgba(83,0,0,.75),transparent 55%,rgba(50,0,0,.8)); }
.mc-hero-copy { padding:clamp(40px,5vw,88px); }
.mc-eyebrow { font-size:11px; font-weight:700; letter-spacing:2.5px; display:flex; align-items:center; gap:10px; }
.mc-eyebrow>span { width:22px; height:3px; background:#ffda36; }
.mc-hero h1 { color:#fff; font-size:clamp(32px,3.35vw,54px); line-height:1.12; font-weight:800; letter-spacing:-1.6px; margin:28px 0 18px; }
.mc-hero h1 em { color:#ffda36; font-style:normal; }
.mc-hero-copy p { font-size:15px; color:#ffede5; }
.mc-hero-footer { position:absolute; bottom:35px; left:clamp(40px,5vw,88px); right:35px; display:flex; justify-content:space-between; gap:20px; font-size:11px; color:#ffded4; }
.mc-hero-footer>span:first-child { font-weight:800; letter-spacing:2px; color:#fff; }
.mc-access { padding:46px clamp(28px,6vw,100px) 26px; display:flex; flex-direction:column; align-items:center; justify-content:center; position:relative; }
.mc-form-wrap { width:100%; max-width:400px; margin:auto; padding:12px 0 38px; }
.mc-brand { display:block; width:145px; height:145px; object-fit:cover; border-radius:24px; margin:0 auto 36px; box-shadow:0 8px 24px #b8201717; }
.mc-section-label { display:block; text-align:center; color:#bb2023; font-size:10px; font-weight:800; letter-spacing:2px; margin-bottom:12px; }
.mc-access h2 { text-align:center; color:#282321; font-size:34px; font-weight:800; letter-spacing:-1px; margin:0 0 12px; }
.mc-intro { text-align:center; color:#7c716a; margin-bottom:32px; font-size:14px; }
.mc-field { margin-bottom:22px; }
.mc-field label { display:block; color:#433a35; font-size:13px; font-weight:700; margin-bottom:9px; }
.mc-field .form-control { background:#fff; color:#282321; border:1px solid #dfd7cf; border-radius:10px; padding:15px 16px; min-height:52px; font-size:14px; }
.mc-field .form-control::placeholder { color:#9a918a; }
.mc-field .form-control:focus { border-color:#d52328; box-shadow:0 0 0 3px #d523281a; }
.mc-field .form-control.is-invalid { border-color:#bd2024; }
.mc-remember { display:flex; align-items:center; gap:9px; font-size:12px; color:#82766d; margin:2px 0 26px; }
.mc-remember>span { color:#b91f23; font-size:14px; }
.mc-submit { width:100%; display:flex; justify-content:center; align-items:center; gap:25px; min-height:54px; background:#d71f26; color:white; border:1px solid #d71f26; border-radius:10px; font-size:14px; font-weight:700; box-shadow:0 6px 14px #c31a2324; transition:background .2s,transform .2s; }
.mc-submit:hover,.mc-submit:active { background:#b6171e; color:#fff; border-color:#b6171e; transform:translateY(-1px); }
.mc-submit:focus-visible { outline:3px solid #b87900; outline-offset:4px; }
.mc-submit span { font-size:21px; line-height:1; }
.mc-form-footer { display:flex; align-items:center; gap:12px; font-size:11px; color:#9a8b7f; margin-top:38px; text-align:center; }
.mc-form-footer>span { flex:1; height:1px; background:#e4dbd2; }
.mc-copyright { color:#9a8b7f; font-size:11px; text-align:center; }
.mc-copyright span { color:#cf292c; padding:0 8px; }
@media(min-width:1600px) { .mc-hero { min-height:900px; } }
@media(max-width:991px) { .mc-shell { grid-template-columns:.9fr 1fr; } .mc-hero-copy { padding:45px 30px; } .mc-hero h1 { font-size:36px; } .mc-hero-footer { left:30px; flex-direction:column; gap:8px; } .mc-access { padding:40px 30px 24px; } }
@media(max-width:700px) { .mc-shell { grid-template-columns:1fr; } .mc-hero { display:none; } .mc-access { min-height:100svh; padding:32px 24px 22px; border-top:6px solid #d71f26; } .mc-form-wrap { max-width:400px; padding:8px 0 36px; } .mc-brand { width:115px; height:115px; margin-bottom:28px; border-radius:20px; } .mc-access h2 { font-size:31px; } }
@media(prefers-reduced-motion:reduce) { .mc-submit { transition:none; } }
