.coupon-teaser{background:#191919;color:#FFFFFD;}
.coupon-teaser__grid{display:grid;grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);gap:56px;align-items:center;}
.coupon-teaser__media{aspect-ratio:4/3.2;border-radius:var(--r-l);overflow:hidden;background:linear-gradient(160deg, var(--moss) 0%, #3f4a41 100%);position:relative;display:flex;align-items:center;justify-content:center;}
.coupon-teaser__media img{width:100%;height:100%;object-fit:cover;}
.coupon-teaser__media svg{width:30%;height:30%;color:rgba(255,254,245,.85);}
.coupon-teaser__copy .eyebrow{color:var(--moss-bright);}
.coupon-teaser__copy h2{font-family:var(--font-roboto);font-weight:700;text-transform:uppercase;font-size:32px;line-height:1.15;margin:16px 0 16px;max-width:16ch;color:#FFFFFD;}
.coupon-teaser__copy p{font-family:var(--font-roboto);font-weight:400;font-size:15.5px;color:rgba(255,255,253,.78);max-width:50ch;margin-bottom:28px;}
.coupon-teaser .btn-primary{background:#FFFFFD;color:#191919;}
.coupon-teaser .btn-primary:hover{background:var(--white);}

.scratch-modal{position:fixed;inset:0;z-index:80;visibility:hidden;pointer-events:none;}
.scratch-modal.is-open{visibility:visible;pointer-events:auto;}
.scratch-modal__overlay{position:absolute;inset:0;background:rgba(20,19,15,.55);opacity:0;transition:opacity .25s ease;}
.scratch-modal.is-open .scratch-modal__overlay{opacity:1;}
.scratch-modal__panel{position:absolute;left:50%;top:50%;transform:translate(-50%,-46%) scale(.96);opacity:0;transition:opacity .25s ease, transform .25s ease;width:min(400px,88vw);background:var(--bone-soft);border-radius:var(--r-l);box-shadow:0 24px 64px rgba(20,19,15,.28);padding:32px 28px 28px;text-align:center;}
.scratch-modal.is-open .scratch-modal__panel{opacity:1;transform:translate(-50%,-50%) scale(1);}
.scratch-modal__close{position:absolute;right:16px;top:16px;width:32px;height:32px;border-radius:50%;border:none;background:var(--stone);color:var(--ink);display:flex;align-items:center;justify-content:center;}
.scratch-modal__close svg{width:16px;height:16px;}
.scratch-modal__intro{font-size:14.5px;color:var(--ink-70);line-height:1.6;margin-bottom:22px;}
.scratch-card{position:relative;width:100%;aspect-ratio:16/10;border-radius:var(--r-m);overflow:hidden;margin-bottom:20px;background:var(--khaki-pale);box-shadow:inset 0 0 0 1.5px var(--stone-line);}
.scratch-card__prize{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:linear-gradient(135deg, var(--moss) 0%, #4c5c50 100%);}
.scratch-card__code{font-family:var(--font-display);color:var(--bone);font-size:26px;letter-spacing:.04em;}
.scratch-card__desc{font-family:var(--font-label);color:rgba(255,254,245,.85);font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;}
.scratch-card canvas{position:absolute;inset:0;width:100%;height:100%;cursor:grab;touch-action:none;}
.scratch-card__hint{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);font-family:var(--font-label);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-45);pointer-events:none;}
.scratch-card.is-cleared canvas{display:none;}

@media (max-width:980px){
  .coupon-teaser__grid{grid-template-columns:minmax(0,1fr);gap:32px;}
  .coupon-teaser__media{max-width:420px;margin:0 auto;}
  .coupon-teaser__copy{text-align:center;}
  .coupon-teaser__copy h2{max-width:none;margin-left:auto;margin-right:auto;}
  .coupon-teaser__copy p{margin-left:auto;margin-right:auto;}
}
