:root{--overlay:rgba(0,0,0,.55);--panel-bg:#fff;--panel-radius:12px;--panel-shadow:0 8px 32px rgba(0,0,0,.18);--text:#2f2f2f;--muted:#6b6f76;--brand:#1aa37a;--z-modal:2147483647;background:#f4f7f9;color:var(--text)}.promo-code-overlay{position:fixed;inset:0;background:var(--overlay);display:grid;place-items:center;padding:24px;z-index:var(--z-modal)}.promo-code-hidden{display:none!important}.promo-code-modal{width:100%;max-width:440px;background:var(--panel-bg);border:1px solid #dfe3e8;border-radius:var(--panel-radius);box-shadow:var(--panel-shadow);position:relative;padding:25px 20px;display:flex;flex-direction:column;justify-content:center;height:auto;min-height:200px;box-sizing:border-box;align-items:center}.close{position:absolute;top:8px;right:8px;width:28px;height:28px;display:grid;place-items:center;border:0;background:transparent;color:#8a8f96;border-radius:50%;cursor:pointer}.close svg{width:18px;height:18px}.close:focus-visible{outline:2px solid #94bfff;outline-offset:2px}.promo-code-title{text-align:center;font-weight:700!important;font-size:18px;line-height:1.35;margin:12px 0;border:0!important;padding:0}.message{text-align:center;color:var(--muted);font-size:16px;line-height:1.55;margin:0 auto;max-width:85%}.error-message{color:#ed1c5c;font-size:12px;line-height:1.55;margin-left:90px;margin-top:10px}.applybtn{font-family:Open Sans,Arial,sans-serif;background:#ed1c5c;border:0;border-radius:999px;box-shadow:0 3px 6px rgba(0,0,0,.16);color:#fff!important;display:block;font-size:1.17rem;font-weight:600;margin:37.5px 0 .3rem;overflow:hidden;padding:10px 50px;position:relative;transition:all .5s;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;z-index:12}.applybtn,.applybtn:hover{cursor:pointer}.applybtn:hover:before{width:100%}.applybtn:after{background-color:#ed1c5c;width:100%;z-index:-2}.applybtn:after,.applybtn:before{bottom:0;content:"";height:100%;left:0;position:absolute}.applybtn:before{background-color:#d50545;transition:all .3s;width:0;z-index:-1}.applybtn:active:before{background-color:#b5073c!important}@media (max-width:1550px){.applybtn{font-size:20px;margin-top:26px}}.promo-code-input{width:60%;margin:10px auto auto!important;position:relative}.promo-code-floating-button{position:relative}@media (min-width:768px){.promo-code-modal{max-width:500px;padding:30px 25px}}@media (max-width:480px){.promo-code-overlay{padding:16px}.promo-code-modal{padding:20px 16px}.title{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message{font-size:14px}}