.newsletter-invitation{display:flex;justify-content:center;align-items:center;gap:24px;flex-wrap:wrap;padding:25px 24px;border-top:1px solid var(--line);background:#fffdf9;font-size:13px;color:#615753}
.newsletter-invitation button{padding:8px 0;background:none;border:0;border-bottom:1px solid #7a17384d;color:var(--garnet,#7a1738);font:600 13px var(--font-ui,Arial,sans-serif);cursor:pointer}
.newsletter-invitation button span{margin-left:18px}.newsletter-invitation button:hover{color:var(--cherry,#4a0d25);border-bottom-color:currentColor}
.newsletter-popup[hidden]{display:none!important}
.newsletter-popup{position:fixed;inset:0;z-index:150;display:flex;align-items:center;justify-content:center;padding:28px;background:rgb(20 14 12 / 56%);overscroll-behavior:contain}
.newsletter-popup__card{position:relative;display:grid;grid-template-columns:44% 56%;width:min(980px,100%);max-height:calc(100dvh - 56px);overflow:auto;background:#fffdf9;color:#231e1d;box-shadow:0 28px 100px #120b0b4d;outline:none;animation:newsletter-enter .32s ease-out}
.newsletter-popup__close{position:absolute;z-index:2;top:13px;right:13px;display:grid;place-items:center;width:42px;height:42px;background:#fffdf9;color:#231e1d;border:1px solid #e2dcd7;border-radius:50%;cursor:pointer;transition:background .2s,color .2s}
.newsletter-popup__close span{font:28px/1 Arial,sans-serif}.newsletter-popup__close:hover{background:#f5e9ed;color:var(--garnet)}
.newsletter-popup__photograph{position:relative;min-height:570px;background:#130f0c;overflow:hidden}
.newsletter-popup__photograph img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:49% center}
.newsletter-popup__content{padding:64px 48px 35px;align-self:center}
.newsletter-popup__brand{margin:0 0 24px;font:600 11px/1.3 var(--font-ui,Arial,sans-serif);letter-spacing:.24em;color:#665650}
body .newsletter-popup h2{font-family:var(--font-heading,Georgia,serif);font-size:clamp(30px,3.3vw,42px);line-height:1.14;font-weight:400;letter-spacing:.015em;text-transform:uppercase;margin:0 0 19px;max-width:420px}
.newsletter-popup__description{margin:0 0 27px;font-size:15px;line-height:1.65;color:#615753}
.newsletter-popup__form{display:block;margin:0}
.newsletter-popup__form label{display:block;margin-bottom:9px;font-size:12px;font-weight:500}
.newsletter-popup__form input[type=email]{display:block;width:100%;min-height:52px;padding:14px 16px;border:1px solid #cfc5bd;background:#fffdfb;border-radius:0;color:#231e1d;font:400 16px/1.4 var(--font-ui,Arial,sans-serif);box-shadow:none}
.newsletter-popup__form input::placeholder{color:#827771}
body .newsletter-popup__submit{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:52px;margin-top:14px;padding:15px 20px;border-radius:0}
.newsletter-popup__consent{font-size:10px;line-height:1.6;color:#756962;margin:15px 0 0}.newsletter-popup__consent a{text-decoration:underline;text-underline-offset:2px}
.newsletter-popup__decline{display:block;margin:21px auto 0;padding:8px 2px;border:0;background:none;color:#6c605b;font:400 12px/1.5 var(--font-ui,Arial,sans-serif);text-decoration:underline;text-decoration-color:#bdb0aa;text-underline-offset:4px;cursor:pointer}.newsletter-popup__decline:hover{color:var(--garnet);text-decoration-color:currentColor}
.newsletter-popup__error{color:#7a1738;border-left:2px solid currentColor;padding:10px 14px;margin:0 0 15px;font-size:13px;line-height:1.5}.newsletter-popup__error ul{margin:0;padding-left:16px}
.newsletter-popup__success{padding:20px 0;color:#365346;font-size:14px;line-height:1.6}.newsletter-popup__success p{margin:0 0 12px}.newsletter-popup__success-title{font-weight:600;letter-spacing:.06em}
.newsletter-popup :focus-visible{outline:2px solid var(--garnet,#7a1738);outline-offset:4px}
body .newsletter-popup__card:focus{outline:none}
@keyframes newsletter-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:640px){
 .newsletter-invitation{gap:6px;flex-direction:column;padding:22px 18px}
 .newsletter-popup{padding:16px;align-items:center}
 .newsletter-popup__card{display:grid;grid-template-columns:104px minmax(0,1fr);column-gap:18px;max-height:calc(100dvh - 32px);width:100%;padding:54px 22px 22px}
 .newsletter-popup__photograph{grid-column:1;grid-row:1 / 3;min-height:130px;align-self:stretch;background:#080d0e}.newsletter-popup__photograph img{object-fit:contain;object-position:center}
 .newsletter-popup__content{display:contents}.newsletter-popup__brand{grid-column:2;grid-row:1;align-self:end;font-size:9px;letter-spacing:.15em;margin:0 0 10px}
 body .newsletter-popup h2{grid-column:2;grid-row:2;align-self:start;font-size:clamp(21px,6.1vw,26px);margin:0;line-height:1.16}.newsletter-popup__description{grid-column:1 / -1;font-size:13px;line-height:1.55;margin:20px 0 18px}
 .newsletter-popup__form{grid-column:1 / -1}
 .newsletter-popup__close{top:9px;right:9px;width:38px;height:38px}
 .newsletter-popup__decline{margin-top:12px}.newsletter-popup__consent{margin-top:12px}
}
@media(max-height:600px){.newsletter-popup__photograph{min-height:0}.newsletter-popup__content{padding-top:50px}.newsletter-popup__card{align-items:stretch}}
@media(prefers-reduced-motion:reduce){.newsletter-popup__card{animation:none}}
