.spin-wheel { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 10; overflow-x: hidden; }
.spin-wheel:before { content: ''; position: fixed; width: 100%; height: 100%; background-color: rgba(0,39,74,.4); -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); }
.spin-wheel .wrap { position: absolute; width: 340px; height: 195px; padding: 44px 20px 30px 20px; display: block; left: 50%; top: calc(50% + 76px); transform: translate(-50%, -50%); border-radius: 28px; background-color: white; box-shadow: 0 20px 30px -8px rgba(0,15,43,.3); user-select: none; }
.spin-wheel .ico { background-size: 100% 100%; background-repeat: no-repeat; background-position: center center; }
.spin-wheel .ico-close { position: absolute; width: 20px; height: 20px; right: 8px; top: 8px; background-color: rgba(255,255,255,.8); padding: 10px; border-radius: 20px; cursor: pointer; background-size: 16px 16px; background-image: url('https://highcityappliance.com/images/ico/ico-close-blue.svg'); }
.spin-wheel .ico-close:hover { transform: rotate(-90deg); transition: .2s ease-out; }

.spin-wheel .ico-gift { position: absolute; aspect-ratio: 1; }
.spin-wheel .ico-gift .ico { position: absolute; width: 100%; height: 100%; background-image: url('https://highcityappliance.com/images/march-vaucher/gift.svg'); }
.spin-wheel .ico-gift.gift-1 { top: -176px; width: 100px; right: -8px; filter: blur(2px); }
.spin-wheel .ico-gift.gift-2 { top: -200px; width: 45px; left: 30px; filter: blur(3px); }
.spin-wheel .ico-gift.gift-3 { top: -135px; width: 70px; left: -4px; }
.spin-wheel .ico-gift.gift-1 .ico { transform: rotate(20deg); }
.spin-wheel .ico-gift.gift-2 .ico { transform: rotate(350deg); }
.spin-wheel .ico-gift.gift-3 .ico { transform: rotate(330deg); }

.spin-wheel .ico-bee { position: absolute; aspect-ratio: 1; top: -244px; width: 80px; right: 100px; background-image: url('https://highcityappliance.com/images/march-vaucher/bee.svg'); }
.spin-wheel .play-spin { position: absolute; top: -52px; left: 50%; transform: translate(-50%) scale(1.0); width: 85px; height: 85px; background-image: url('https://highcityappliance.com/images/march-vaucher/play-spin.svg'); cursor: pointer; transition: transform .3s ease-out; }
.spin-wheel .play-spin:hover { transform: translate(-50%) scale(0.9); }
.spin-wheel .marker { position: absolute; top: -94px; left: 50%; transform: translate(-50%); width: 156px; height: 156px; background-image: url('https://highcityappliance.com/images/march-vaucher/marker.svg'); }
.spin-wheel .wheel { position: absolute; top: -189px; left: 10px; transform: rotate(0deg); width: 360px; height: 360px; background-image: url('https://highcityappliance.com/images/march-vaucher/wheel.svg'); transition: transform 4s cubic-bezier(0.15, 0, 0.15, 1); }
.spin-wheel h2 { position: relative; width: 100%; min-height: 111px; display: flex; justify-content: center; align-items: center; font-size: 30px; margin: 15px 0; text-align: center; color: #003560; text-shadow: 0 0 3px white; }
.spin-wheel .gradient { position: absolute; left: 0; top: 0; width: 100%; height: 220px; border-radius: 28px; background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 40%); }
.spin-wheel .description { position: relative; width: 100%; text-align: justify; font-size: 16px; }

.shake-explode { display: inline-block; animation: shake-explode 0.8s cubic-bezier(0.36, 0.07, 0.19, 0.97) both; transform-origin: center; }
@keyframes shake-explode {
0%   { transform: scale(1) translate(0, 0); }
3%   { transform: scale(1) translate(-2px, 1px) rotate(1deg); }
6%   { transform: scale(1) translate(2px, -1px) rotate(-1deg); }
9%   { transform: scale(1) translate(-1px, 2px) rotate(0.5deg); }
12%  { transform: scale(1) translate(1px, -2px) rotate(-0.5deg); }
15%  { transform: scale(1) translate(0, 0); }
18%  { transform: scale(1) translate(-3px, 2px); }
21%  { transform: scale(1) translate(3px, -2px); }
24%  { transform: scale(1) translate(0, 0); }
28%  { transform: scale(1.15); opacity: 1; }
30%  { transform: scale(1.6); opacity: 0; }
100% { transform: scale(2.0); opacity: 0; }
}

.voucher { position: fixed; bottom: 110px; background-image: url('https://highcityappliance.com/images/march-vaucher/voucher.svg'); right: 36px; width: 68px; height: 116px; background-repeat: no-repeat; background-size: 100% 100%; background-position: center center; z-index: 3; cursor: pointer; }
.voucher b { position: absolute; width: 100%; bottom: 28px; left: 0; display: flex; align-items: center; justify-content: center; font-size: 20px; color: #08375D; }
.voucher .bee { position: absolute; aspect-ratio: 1; top: -26px; width: 50px; right: -14px; background-image: url('https://highcityappliance.com/images/march-vaucher/bee.svg'); }

@media screen and (max-width: 940px) {
.voucher { bottom: 8px; right: 15px; }
}

.gift-sticker { position: absolute; top: -16px; background-image: url('https://highcityappliance.com/images/march-vaucher/sticker.svg'); right: -15px; width: 55px; height: 36px; background-repeat: no-repeat; background-size: 100% 100%; background-position: center center; z-index: 3; flex-shrink: 0; }
.gift-sticker b { position: absolute; width: 42px; bottom: 4px; left: 0; display: flex; align-items: center; justify-content: center; font-size: 16px; color: #08375D; }
.top-section.bg-image header nav .book-button .gift-sticker b { color: #08375D; }
.dialog .gift-sticker { position: relative; display: inline-block; top: 8px; right: unset; }
.book-form .text .gift-sticker { position: relative; display: inline-block; top: 8px; right: unset; }
.main-banner .action-buttons .button:first-child .gift-sticker { position: relative; right: unset; top: -6px; }