/*
=====================================================
/assets/css/popup.css
LZG Aanmeldingskorting v1.0.4
=====================================================
*/
.lzg-signup-discount[hidden] { display: none !important; }
.lzg-signup-discount { position: fixed; inset: 0; z-index: 999999; display: grid; place-items: center; padding: 24px; opacity: 0; transition: opacity .18s ease; }
.lzg-signup-discount.is-visible { opacity: 1; }
.lzg-signup-discount__backdrop { position: absolute; inset: 0; background: rgba(15, 23, 42, .58); backdrop-filter: blur(3px); }
.lzg-signup-discount__dialog { position: relative; width: min(100%, 520px); max-height: calc(100vh - 48px); overflow: auto; border-radius: 22px; background: #fff; color: #172033; box-shadow: 0 26px 80px rgba(15, 23, 42, .28); transform: translateY(10px) scale(.985); transition: transform .18s ease; }
.lzg-signup-discount.is-visible .lzg-signup-discount__dialog { transform: none; }
.lzg-signup-discount__content { padding: 42px; }
.lzg-signup-discount__close { position: absolute; z-index: 2; top: 14px; right: 14px; width: 36px; height: 36px; border: 0; border-radius: 50%; background: #f1f5f9; color: #172033; font: inherit; font-size: 24px; line-height: 1; cursor: pointer; }
.lzg-signup-discount__eyebrow { display: inline-block; margin-bottom: 8px; font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: #64748b; }
.lzg-signup-discount h2 { margin: 0 36px 12px 0; font-size: clamp(28px, 5vw, 38px); line-height: 1.06; }
.lzg-signup-discount p { margin: 0 0 18px; line-height: 1.55; }
.lzg-signup-discount__form { display: grid; gap: 14px; margin-top: 24px; }
.lzg-signup-discount__email input { width: 100%; box-sizing: border-box; min-height: 50px; border: 1px solid #cbd5e1; border-radius: 12px; padding: 10px 14px; font: inherit; }
.lzg-signup-discount__email input:focus { outline: 3px solid rgba(59, 130, 246, .18); border-color: #3b82f6; }
.lzg-signup-discount__consent { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; line-height: 1.45; }
.lzg-signup-discount__consent input { margin-top: 3px; }
.lzg-signup-discount__privacy { margin: -6px 0 0 !important; font-size: 13px; }
.lzg-signup-discount__submit { min-height: 50px; border: 0; border-radius: 12px; padding: 12px 18px; background: #172033; color: #fff; font: inherit; font-weight: 750; cursor: pointer; }
.lzg-signup-discount__submit:disabled { opacity: .55; cursor: wait; }
.lzg-signup-discount__error { margin: 0 !important; border-radius: 10px; padding: 10px 12px; background: #fef2f2; color: #991b1b; font-size: 14px; }
.lzg-signup-discount__honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.lzg-signup-discount__code-row { display: flex; gap: 10px; align-items: stretch; margin: 22px 0 12px; }
.lzg-signup-discount__code-row code { flex: 1; display: grid; place-items: center; min-height: 54px; border: 1px dashed #94a3b8; border-radius: 12px; background: #f8fafc; padding: 8px 12px; font-size: 19px; font-weight: 800; letter-spacing: .06em; }
.lzg-signup-discount__code-row button { border: 1px solid #cbd5e1; border-radius: 12px; background: #fff; padding: 0 14px; font: inherit; font-weight: 700; cursor: pointer; }
.lzg-signup-discount__expires, .lzg-signup-discount__applied { font-size: 14px; color: #64748b; }
.lzg-signup-discount__applied { color: #166534; font-weight: 700; }
.lzg-signup-discount-open { overflow: hidden; }
@media (max-width: 600px) {
    .lzg-signup-discount { align-items: end; padding: 12px; }
    .lzg-signup-discount__dialog { width: 100%; border-radius: 18px; max-height: calc(100vh - 24px); }
    .lzg-signup-discount__content { padding: 34px 24px 26px; }
    .lzg-signup-discount__code-row { flex-direction: column; }
    .lzg-signup-discount__code-row button { min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
    .lzg-signup-discount, .lzg-signup-discount__dialog { transition: none; }
}
