.vc-coupons { font-family: Barlow, sans-serif; color: #181818; }
.vc-coupons h2, .vc-coupons h3 { color: #000; font-family: "Cormorant Garamond", Georgia, serif; font-weight: 500; }
.vc-coupons h2 { font-size: clamp(2rem, 4vw, 2.75rem); margin: 0 0 1.5rem; }
.vc-coupons h3 { font-size: 1.65rem; overflow-wrap: anywhere; margin: 0 0 .5rem; }
.vc-coupons .vc-coupon-list { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,260px),1fr)); gap: 1rem; }
.vc-coupons .vc-coupon { padding: 1.5rem; border: 1px solid #dedede; background: #fff; }
.vc-coupons .vc-coupon-status { font-size: .875rem; letter-spacing: .04em; }
.vc-coupons .vc-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 2rem; background: #3cb8df; color: #fff; border: 1px solid #3cb8df; padding: .9rem 1.25rem; text-decoration: none; cursor: pointer; }
.vc-coupons .vc-button:hover, .vc-coupons .vc-button:focus-visible { background: #299fc6; border-color: #299fc6; color: #fff; }
.vc-coupons .vc-button:focus-visible { outline: 2px solid #000; outline-offset: 3px; }
.vc-coupons label { display: block; margin-bottom: .3rem; }
.vc-coupons input, .vc-coupons textarea { max-width: 100%; width: 100%; }
.vc-coupons.vc-gift-fields { margin-block: 1rem; }
@media (max-width: 480px) { .vc-coupons .vc-coupon { padding: 1rem; } .vc-coupons .vc-button { width: 100%; } }
