html.nawp-scroll-lock { overflow: hidden !important; }
html.nawp-scroll-lock body {
position: fixed !important;
top: var(--nawp-scroll-top, 0) !important;
left: 0 !important;
right: 0 !important;
width: 100% !important;
overflow: hidden !important;
}
#nawp-overlay,
#nawp-overlay * { box-sizing: border-box; }
#nawp-overlay [hidden],
#nawp-overlay[hidden] { display: none !important; }
#nawp-overlay {
position: fixed;
inset: 0;
z-index: 1000000;
display: flex;
align-items: center;
justify-content: center;
padding: 16px;
background: rgba(29, 27, 25, .42);
opacity: 0;
transition: opacity 300ms ease;
font-family: Montserrat, Arial, Helvetica, sans-serif;
color: #282723;
line-height: 1.6;
text-align: center;
isolation: isolate;
overscroll-behavior: contain;
}
#nawp-overlay.nawp-open { opacity: 1; }
#nawp-overlay .nawp-dialog {
position: relative;
width: 100%;
max-width: 470px;
max-height: calc(100vh - 32px);
max-height: calc(100dvh - 32px);
overflow-y: auto;
overscroll-behavior: contain;
padding: 48px 36px 36px;
border: 1px solid rgba(255,255,255,.7);
border-radius: 24px;
background: linear-gradient(150deg, #f7f1eb 12%, #f2ded6 100%);
box-shadow: 0 24px 80px rgba(29,27,25,.2);
transform: translateY(12px);
transition: transform 300ms ease;
outline: none;
}
#nawp-overlay.nawp-open .nawp-dialog { transform: translateY(0); }
#nawp-overlay .nawp-brand { margin: 0 0 30px; font-size: 12px; font-weight: 600; letter-spacing: .26em; }
#nawp-overlay .nawp-title {
margin: 0 0 16px;
padding: 0;
color: #282723;
font: 600 30px/1.2 Montserrat, Arial, Helvetica, sans-serif;
letter-spacing: -.04em;
text-transform: none;
overflow-wrap: break-word;
}
#nawp-overlay .nawp-description { margin: 0 auto 25px; padding: 0; max-width: 350px; color: #55504b; font-size: 15px; line-height: 1.7; }
#nawp-overlay .nawp-form { margin: 0; padding: 0; }
#nawp-overlay .nawp-email {
display: block;
width: 100%;
min-width: 0;
height: 54px;
margin: 0 0 12px;
padding: 0 16px;
border: 1px solid #aa9990;
border-radius: 10px;
background: rgba(255,255,255,.65);
color: #282723;
font: 400 16px/1.4 Montserrat, Arial, Helvetica, sans-serif;
box-shadow: none;
}
#nawp-overlay .nawp-email::placeholder { color: #6a625c; opacity: 1; }
#nawp-overlay .nawp-button {
display: block;
width: 100%;
min-height: 54px;
height: auto;
margin: 0;
padding: 16px 10px;
border: 1px solid #1f1f1c;
border-radius: 10px;
background: #1f1f1c;
color: #fff;
font: 600 13px/1.45 Montserrat, Arial, Helvetica, sans-serif;
letter-spacing: .035em;
white-space: normal;
text-transform: none;
box-shadow: none;
cursor: pointer;
appearance: none;
transition: background 160ms ease;
}
#nawp-overlay .nawp-button:hover { background: #363630; }
#nawp-overlay .nawp-button:disabled { opacity: .65; cursor: wait; }
#nawp-overlay .nawp-close {
position: absolute;
top: 7px;
right: 7px;
display: grid;
place-items: center;
width: 44px;
height: 44px;
min-height: 44px;
margin: 0;
padding: 0;
border: 0;
border-radius: 50%;
background: transparent;
color: #4e4842;
font: 400 27px/1 Arial, sans-serif;
box-shadow: none;
cursor: pointer;
}
#nawp-overlay .nawp-close:hover { background: rgba(255,255,255,.4); }
#nawp-overlay .nawp-note { margin: 14px 0 0; padding: 0; color: #625a54; font-size: 12px; line-height: 1.6; }
#nawp-overlay .nawp-message { margin: 12px 0 0; padding: 0; font-size: 13px; color: #6b302b; line-height: 1.5; }
#nawp-overlay .nawp-message:empty { display: none; }
#nawp-overlay .nawp-check { margin: 0 auto 18px; width: 42px; height: 42px; border: 1px solid #898478; border-radius: 50%; line-height: 40px; font-size: 22px; }
#nawp-overlay .nawp-code {
margin: 0 0 16px;
padding: 18px 8px;
border: 1px dashed #a38f84;
border-radius: 10px;
background: rgba(255,255,255,.32);
font-size: 28px;
font-weight: 600;
letter-spacing: .08em;
line-height: 1.3;
user-select: all;
-webkit-user-select: all;
}
#nawp-overlay .nawp-shop { display: inline-block; margin: 23px 0 0; padding: 8px 4px; color: #282723; font-size: 12px; font-weight: 600; letter-spacing: .04em; text-decoration: underline; text-underline-offset: 5px; }
#nawp-overlay :focus-visible { outline: 2px solid #5c4c42; outline-offset: 3px; }
#nawp-overlay .nawp-view { opacity: 1; transform: translateY(0); transition: opacity 160ms ease, transform 160ms ease; }
#nawp-overlay .nawp-leaving { opacity: 0; transform: translateY(-6px); }
#nawp-overlay .nawp-entering { opacity: 0; transform: translateY(8px); }
#nawp-overlay .nawp-sr-only,
#nawp-overlay .nawp-honeypot { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
#nawp-overlay .nawp-copy-buffer { position: fixed; left: -9999px; top: 0; font-size: 16px; }
@media (max-width: 390px) {
#nawp-overlay .nawp-dialog { padding: 45px 22px 28px; }
#nawp-overlay .nawp-title { font-size: 27px; }
#nawp-overlay .nawp-code { font-size: 24px; letter-spacing: .04em; }
#nawp-overlay .nawp-button { font-size: 12px; letter-spacing: .015em; }
}
@media (prefers-reduced-motion: reduce) {
#nawp-overlay, #nawp-overlay .nawp-dialog, #nawp-overlay .nawp-view, #nawp-overlay .nawp-button { transition: none; }
}