.mp-newsletter-modal[hidden] { display: none !important; }
.mp-newsletter-modal { position: fixed; inset: 0; z-index: 99980; display: grid; padding: 1rem; place-items: center; background: rgba(7, 10, 7, 0.7); opacity: 0; backdrop-filter: blur(0.35rem); transition: opacity 300ms ease; }
.mp-newsletter-modal.is-open { opacity: 1; }
.mp-newsletter-modal > section { position: relative; display: grid; width: min(64rem, 100%); max-height: calc(100svh - 2rem); overflow-y: auto; grid-template-columns: minmax(0, 0.95fr) minmax(20rem, 1.05fr); background: #f7f6f2; color: #121813; box-shadow: 0 2rem 6rem rgba(0,0,0,.3); transform: translateY(1rem); transition: transform 300ms cubic-bezier(.22,1,.36,1); }
.mp-newsletter-modal.is-open > section { transform: translateY(0); }
.mp-newsletter-modal__intro { padding: clamp(2rem, 6vw, 5rem); background: #1d2b21; color: #f7f6f2; }
.mp-newsletter-modal__intro h2 { max-width: 10ch; font-size: clamp(2.5rem, 5vw, 5rem); }
.mp-newsletter-modal__intro > p:last-child { max-width: 30rem; color: rgba(247,246,242,.68); }
.mp-newsletter-modal form { display: grid; padding: clamp(2rem, 5vw, 4rem); align-content: center; gap: 1.1rem; }
.mp-newsletter-modal form > label:not(.mp-newsletter-modal__consent) { display: grid; gap: .5rem; font-size: .7rem; font-weight: 650; letter-spacing: .06em; text-transform: uppercase; }
.mp-newsletter-modal label small { color: #526057; font-weight: 500; }
.mp-newsletter-modal input[type="text"], .mp-newsletter-modal input[type="email"] { width: 100%; min-height: 3.5rem; padding: .8rem 0; border: 0; border-bottom: 1px solid #d9cbbe; border-radius: 0; background: transparent; }
.mp-newsletter-modal__consent { display: flex; margin-block: .5rem; align-items: flex-start; gap: .75rem; color: #526057; font-size: .72rem; line-height: 1.55; }
.mp-newsletter-modal__consent input { margin-top: .2rem; accent-color: #121813; }
.mp-newsletter-modal form > button { display: flex; min-height: 3.5rem; padding-inline: 1.25rem; align-items: center; justify-content: space-between; border: 1px solid #121813; background: #121813; color: #f7f6f2; font-size: .7rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; cursor: pointer; }
.mp-newsletter-modal form > p { min-height: 1.3rem; margin: 0; font-size: .76rem; }
.mp-newsletter-modal form > p.is-success { color: #2e6a45; }
.mp-newsletter-modal form > p.is-error { color: #a62c2c; }
.mp-newsletter-modal__close { position: absolute; top: 1rem; right: 1rem; z-index: 2; width: 2.5rem; height: 2.5rem; border: 0; background: transparent; color: currentColor; font-size: 1.6rem; cursor: pointer; }
.mp-newsletter-modal__trap { position: absolute !important; left: -9999px !important; }
body.mp-newsletter-is-open { overflow: hidden; }
@media (max-width: 47.999rem) { .mp-newsletter-modal > section { grid-template-columns: 1fr; } .mp-newsletter-modal__intro { padding: 2rem 1.5rem; } .mp-newsletter-modal__intro h2 { font-size: 2.4rem; } .mp-newsletter-modal form { padding: 1.5rem; } .mp-newsletter-modal__close { color: #f7f6f2; } }
@media (prefers-reduced-motion: reduce) { .mp-newsletter-modal, .mp-newsletter-modal > section { transition: none; } }
