.bw-modal__dialog:has(.bw-login-modal) { width: min(100%, 62.5rem); max-height: min(39rem, calc(100vh - 2.5rem)); overflow: hidden; padding: 0; background: #fff; }
.bw-modal__dialog:has(.bw-login-modal) .bw-modal__head { display: none; }
.bw-modal__dialog:has(.bw-login-modal) .bw-modal__content { margin: 0; }
.bw-modal__dialog:has(.bw-login-modal) .bw-modal__close { z-index: 1; top: 1rem; right: 1rem; color: #0b1f39; font-family: Arial, sans-serif; font-size: 1.7rem; font-weight: 300; }
.bw-login-modal { display: grid; grid-template-columns: minmax(19rem, 1fr) minmax(24rem, 1.12fr); min-height: 36rem; }
.bw-login-modal__story { position: relative; overflow: hidden; display: flex; flex-direction: column; justify-content: center; padding: 3.25rem 3rem; background: linear-gradient(135deg, rgb(19 36 59 / .91), rgb(25 38 50 / .76)), url('/themes/custom/bellamysworld/images/newlogo.svg') center / 130% no-repeat; color: #fff; }
.bw-login-modal__story::after { position: absolute; right: -8rem; bottom: -10rem; width: 24rem; height: 24rem; border: 2rem solid rgb(184 145 75 / .62); border-radius: 50%; content: ''; }
.bw-login-modal__mark { display: grid; place-items: center; width: 2.55rem; height: 2.55rem; margin-bottom: 2rem; border-radius: 50%; background: linear-gradient(135deg, #d69b24, #b18d4d); color: #fff; font: 500 1.2rem/1 "Playfair Display", Georgia, serif; }
.bw-login-modal__story-eyebrow { margin: 0 0 1.1rem; font: 600 .65rem/1 "DM Sans", Arial, sans-serif; letter-spacing: .17em; text-transform: uppercase; }
.bw-login-modal__story h2 { max-width: 22rem; margin: 0; font: 400 clamp(2.4rem, 4.4vw, 3.7rem)/.95 "Playfair Display", Georgia, serif; letter-spacing: -.055em; }
.bw-login-modal__story h2 em { font-weight: 400; }
.bw-login-modal__story > p:not(.bw-login-modal__story-eyebrow) { max-width: 21rem; margin: 1.45rem 0 1.5rem; color: rgb(255 255 255 / .82); font-size: .78rem; line-height: 1.65; }
.bw-login-modal__story ul { z-index: 1; display: grid; gap: .7rem; margin: 0; padding: 0; list-style: none; color: rgb(255 255 255 / .93); font: 600 .7rem/1.35 "DM Sans", Arial, sans-serif; }
.bw-login-modal__story li::before { margin-right: .7rem; color: #d6a33c; content: '✓'; }
.bw-login-modal__form { display: flex; flex-direction: column; justify-content: center; padding: 3.6rem clamp(2rem, 5vw, 4rem) 2.5rem; color: #0b1f39; }
.bw-login-modal__form h2 { margin: 0; color: #0b1f39; font: 500 clamp(2.5rem, 4vw, 3.45rem)/.98 "Playfair Display", Georgia, serif; letter-spacing: -.055em; }
.bw-login-modal__intro { max-width: 24rem; margin: 1rem 0 1.75rem; color: #555850; font-size: .83rem; line-height: 1.65; }
.bw-login-modal__form-inner { border-top: 1px solid #d8d4ca; padding-top: 1.5rem; }
.bw-login-modal__form .form-item { margin: 0 0 1rem; }
.bw-login-modal__form label { display: block; margin-bottom: .42rem; color: #353a3a; font: 500 .7rem/1.25 "DM Sans", Arial, sans-serif; }
.bw-login-modal__form input { box-sizing: border-box; min-height: 3.1rem; border-color: #d4d0c8; color: #0b1f39; }
.bw-login-modal__form input:focus { border-color: #b18d4d; outline: 2px solid rgb(177 141 77 / .18); outline-offset: 0; }
.bw-modal__content .bw-login-modal__form input[type='submit'] { width: 100%; min-height: 3.25rem; margin-top: .25rem; background: #0b1f39; }
.bw-modal__content .bw-login-modal__form input[type='submit']:hover { background: #b18d4d; }
.bw-login-modal__reset { margin: 1rem 0 0; text-align: right; }
.bw-login-modal__reset a, .bw-login-modal__new a { color: #0b1f39; font: 600 .66rem/1.2 "DM Sans", Arial, sans-serif; letter-spacing: .04em; text-decoration: underline; text-underline-offset: .18rem; }
.bw-login-modal__new { display: flex; justify-content: space-between; gap: 1rem; margin-top: 1.5rem; border-top: 1px solid #d8d4ca; padding-top: 1.2rem; color: #6c6e68; font-size: .73rem; }
@media (max-width: 48rem) { .bw-modal__dialog:has(.bw-login-modal) { max-height: calc(100vh - 1.5rem); overflow: auto; } .bw-login-modal { grid-template-columns: 1fr; } .bw-login-modal__story { min-height: 18rem; padding: 2.5rem 2rem; } .bw-login-modal__story h2 { font-size: 2.5rem; } .bw-login-modal__story > p:not(.bw-login-modal__story-eyebrow), .bw-login-modal__story ul { display: none; } .bw-login-modal__form { padding: 2.5rem 2rem; } }
