.promo-modal,.promo-modal *{box-sizing:border-box}.promo-modal{position:fixed;inset:0;z-index:2147481000;display:grid;place-items:center;padding:24px;font-family:NotoSans,Inter,Segoe UI,Arial,sans-serif}.promo-modal__backdrop{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:rgba(6,8,11,.82);backdrop-filter:blur(8px);cursor:default}.promo-modal__panel{position:relative;z-index:1;width:min(100%,1000px);max-height:calc(100dvh - 48px);border:1px solid rgba(255,255,255,.2);border-radius:26px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.55);animation:promo-modal-enter .22s ease-out both}.promo-modal__close{position:absolute;top:18px;right:18px;z-index:6;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:999px;background:transparent;cursor:pointer;transition:background-color .16s ease,transform .16s ease}.promo-modal__close:focus-visible,.promo-modal__close:hover{background:rgba(255,255,255,.15);outline:none;transform:scale(1.04)}.promo-modal__close svg{width:30px;height:30px}.promo-modal__close--light{color:#fff}.promo-modal__close--dark{color:#171717}.promo-modal__cta{display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:60px;padding:14px 34px;border:0;border-radius:999px;background:linear-gradient(135deg,#ed1b2f,#d70b23);color:#fff;font:inherit;font-size:20px;font-weight:900;letter-spacing:.07em;text-align:center;text-decoration:none;text-transform:uppercase;box-shadow:0 15px 34px rgba(201,9,35,.34);cursor:pointer;transition:transform .16s ease,box-shadow .16s ease}.promo-modal__cta:focus-visible,.promo-modal__cta:hover{color:#fff;outline:3px solid rgba(255,205,113,.75);outline-offset:3px;transform:translateY(-2px);box-shadow:0 18px 40px rgba(201,9,35,.43)}.promo-modal__cta svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.promo-code-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;width:min(100%,520px);overflow:hidden;border-radius:16px;background:#fff8ec;color:#b90e28;box-shadow:0 12px 28px rgba(0,0,0,.23)}.promo-code-card>div{display:grid;place-items:center;gap:4px;min-width:0;padding:14px 20px}.promo-code-card span{color:#a66a54;font-size:13px;font-weight:800;letter-spacing:.17em;line-height:1.2;text-transform:uppercase}.promo-code-card strong{max-width:100%;overflow:hidden;font-size:clamp(27px,4vw,40px);font-weight:1000;letter-spacing:-.03em;line-height:1.05;text-overflow:ellipsis;white-space:nowrap}.promo-code-card>button{display:grid;place-items:center;align-content:center;gap:4px;min-width:92px;padding:12px;border:0;border-left:1px dashed rgba(185,14,40,.3);background:transparent;color:#c20d2c;cursor:pointer}.promo-code-card>button:focus-visible,.promo-code-card>button:hover{background:rgba(194,13,44,.07);outline:none}.promo-code-card button svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2}.promo-code-card button small{font-size:11px;font-weight:800;letter-spacing:.02em}.promo-home{min-height:min(760px,calc(100dvh - 48px));background-color:#120303;background-image:url(/images/dancing-roosters-restaurant-16x9.jpg);background-position:50%;background-size:cover;color:#fff}.promo-home__shade{position:absolute;inset:0;background:radial-gradient(circle at 50% 35%,rgba(110,0,0,.46),rgba(8,0,0,.84) 62%),linear-gradient(180deg,rgba(6,0,0,.54),rgba(3,0,0,.28) 55%,rgba(2,0,0,.86))}.promo-home__logo{position:absolute;top:26px;left:28px;z-index:2;width:166px;height:58px;border-radius:8px;object-fit:contain}.promo-home__content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;width:min(100%,690px);min-height:inherit;margin:0 auto;padding:54px 24px 26px;text-align:center}.promo-home__eyebrow{display:flex;align-items:center;justify-content:center;gap:18px;margin:6px 0 3px;color:#ffd174;font-size:18px;font-weight:900;letter-spacing:.25em}.promo-home__eyebrow span{width:70px;height:2px;background:#ffd174}.promo-home__offer{margin:0;color:#fff8e9;font-family:Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:clamp(86px,13vw,156px);font-style:italic;font-weight:900;letter-spacing:-.055em;line-height:.97;text-shadow:9px 10px 0 #c70d28,0 7px 30px rgba(0,0,0,.72);transform:rotate(-2deg)}.promo-home__headline{margin:7px 0 0;color:#fff;font-size:clamp(25px,4vw,42px);font-weight:1000;letter-spacing:.24em;line-height:1.12}.promo-home__supporting{margin:13px 0 22px;color:#fff7e8;font-size:18px;font-weight:600;letter-spacing:.08em}.promo-modal__cta--home{width:min(100%,520px);margin-top:18px}.promo-home__benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;width:min(100%,570px);margin-top:auto;padding-top:24px}.promo-home__benefits>span{display:flex;align-items:center;gap:10px;color:#fff8e9;font-size:12px;font-weight:900;letter-spacing:.08em;line-height:1.35;text-align:left;text-transform:uppercase}.promo-home__benefits i{display:grid;place-items:center;flex:0 0 50px;width:50px;height:50px;border:2px solid #ffcb66;border-radius:50%;color:#ffcb66}.promo-home__benefits svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.promo-checkout{min-height:min(720px,calc(100dvh - 48px));background-color:#15100c;background-image:linear-gradient(90deg,rgba(24,10,3,.16),rgba(24,10,3,.04) 23%,rgba(24,10,3,.04) 77%,rgba(24,10,3,.16)),url(/images/dancing-roosters-restaurant-16x9.jpg);background-position:50%;background-size:cover}.promo-checkout__paper{position:relative;display:flex;flex-direction:column;align-items:center;width:min(66%,610px);min-height:inherit;margin:0 auto;padding:34px 34px 28px;background:radial-gradient(circle at 50% 20%,rgba(255,255,255,.98),rgba(255,249,238,.98) 72%),#fffaf1;color:#151515;text-align:center;clip-path:polygon(5% 0,95% 0,100% 5%,100% 95%,95% 100%,5% 100%,0 95%,0 5%)}.promo-checkout__logo-wrap{display:grid;place-items:center;width:210px;min-height:70px;margin-bottom:14px;padding:9px 14px;border-radius:10px;background:#050505}.promo-checkout__logo-wrap img{display:block;width:100%;max-height:54px;object-fit:contain}.promo-checkout__eyebrow{margin:3px 0 2px;color:#be0d26;font-family:Georgia,Times New Roman,serif;font-size:clamp(30px,4.3vw,50px);font-style:italic;font-weight:800;line-height:1}.promo-checkout__offer{width:112%;margin:8px -6% 13px;padding:12px 22px 16px;background:linear-gradient(175deg,#e91b2f,#bd061f);color:#fff9ec;font-family:Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;font-size:clamp(66px,9vw,108px);font-style:italic;letter-spacing:-.025em;line-height:.95;text-shadow:4px 4px 0 rgba(100,0,15,.33);transform:rotate(-1.5deg)}.promo-checkout__description{max-width:470px;margin:0 0 18px;font-size:19px;font-weight:650;line-height:1.42}.promo-code-card--checkout{border:1px dashed rgba(194,13,44,.35);box-shadow:none}.promo-code-card--checkout strong{font-size:clamp(27px,3.6vw,38px)}.promo-modal__cta--checkout{width:min(100%,430px);margin-top:18px;font-size:17px;letter-spacing:.01em;text-transform:none}.promo-checkout__footer{display:flex;align-items:center;justify-content:center;gap:10px;margin:auto 0 0;padding-top:18px;font-size:14px;font-weight:700}.promo-checkout__footer svg{width:25px;height:25px;fill:#d20c29;stroke:#d20c29;stroke-width:1.5}@keyframes promo-modal-enter{0%{opacity:0;transform:translateY(16px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:760px){.promo-modal{padding:12px}.promo-modal__panel{max-height:calc(100dvh - 24px);border-radius:20px}.promo-modal__close{top:9px;right:9px;width:40px;height:40px}.promo-modal__close svg{width:26px;height:26px}.promo-home{min-height:min(700px,calc(100dvh - 24px));overflow-y:auto;background-position:58%}.promo-home__logo{top:14px;left:14px;width:125px;height:42px}.promo-home__content{min-height:min(700px,calc(100dvh - 24px));padding:64px 15px 18px}.promo-home__eyebrow{gap:9px;font-size:12px;letter-spacing:.2em}.promo-home__eyebrow span{width:30px}.promo-home__offer{font-size:clamp(63px,23vw,94px);text-shadow:6px 7px 0 #c70d28,0 7px 24px rgba(0,0,0,.72)}.promo-home__headline{font-size:clamp(19px,6.5vw,28px);letter-spacing:.13em}.promo-home__supporting{margin:10px 0 16px;font-size:14px}.promo-code-card>div{padding:12px 10px}.promo-code-card strong,.promo-code-card--checkout strong{font-size:clamp(23px,8vw,32px)}.promo-code-card span{font-size:10px}.promo-code-card>button{min-width:72px;padding:8px}.promo-code-card button small{font-size:9px}.promo-modal__cta{min-height:54px;padding:12px 22px;font-size:16px}.promo-modal__cta--home{margin-top:14px}.promo-home__benefits{gap:8px;padding-top:18px}.promo-home__benefits>span{flex-direction:column;gap:5px;font-size:9px;text-align:center}.promo-home__benefits i{flex-basis:38px;width:38px;height:38px}.promo-home__benefits svg{width:21px;height:21px}.promo-checkout{overflow-y:auto}.promo-checkout,.promo-checkout__paper{min-height:min(700px,calc(100dvh - 24px))}.promo-checkout__paper{width:calc(100% - 44px);padding:28px 16px 22px}.promo-checkout__logo-wrap{width:170px;min-height:58px;margin-bottom:10px}.promo-checkout__eyebrow{font-size:clamp(27px,9vw,39px)}.promo-checkout__offer{width:110%;margin:8px -5% 12px;padding:10px 8px 13px;font-size:clamp(58px,19vw,83px)}.promo-checkout__description{margin-bottom:14px;font-size:15px;line-height:1.35}.promo-modal__cta--checkout{margin-top:14px;font-size:15px}.promo-checkout__footer{font-size:12px}}@media (max-height:680px) and (min-width:761px){.promo-home__content{padding-top:38px}.promo-home__offer{font-size:100px}.promo-home__benefits{padding-top:14px}.promo-checkout__paper{padding-top:20px}.promo-checkout__logo-wrap{min-height:56px;margin-bottom:6px}.promo-checkout__offer{font-size:76px}}@media (prefers-reduced-motion:reduce){.promo-modal__panel{animation:none}.promo-modal__close,.promo-modal__cta{transition:none}}