.scroll-monkey { display: none !important; }

.scroll-promo {
  position: fixed;
  z-index: 999;
  top: 72px;
  right: clamp(18px, 5vw, 70px);
  display: flex;
  align-items: center;
  gap: 10px;
  max-width: 390px;
  padding: 9px 14px;
  border: 2px solid #c9a227;
  border-left: 5px solid #d4af37;
  border-radius: 4px;
  background: #092f29;
  color: #fff;
  box-shadow: inset 0 0 0 1px #fff0a944, 0 0 9px #d4af3755, 0 10px 28px #001a1455;
  opacity: 0;
  pointer-events: none;
  transform: translateY(-18px);
  transition: opacity .35s ease, transform .35s ease;
}

.scroll-promo.show { opacity: 1; transform: none; pointer-events: auto; }
.promo-close{position:absolute;top:-8px;right:-8px;z-index:4;display:grid;width:20px;height:20px;padding:0;place-items:center;border:1px solid #d4af37;border-radius:50%;background:#092f29;color:#fff;font:700 15px/1 Arial,sans-serif;cursor:pointer;box-shadow:0 2px 7px #001a1477}.promo-close:hover,.promo-close:focus-visible{background:#d4af37;color:#092d21;outline:2px solid #fff;outline-offset:2px}
.scroll-promo > span {
  padding: 3px 6px;
  border-radius: 2px;
  background: #c9ed42;
  color: #092d21;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  white-space: nowrap;
}
.scroll-promo strong { font-size: 12px; line-height: 1.25; }
.scroll-promo b { color: #c9ed42; font-size: 13px; letter-spacing: .05em; }

.confetti-piece {
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 50%;
  width: 7px;
  height: 11px;
  border-radius: 1px;
  pointer-events: none;
  opacity: 0;
  animation: promo-confetti 8.2s cubic-bezier(.24,.12,.34,1) var(--confetti-delay) forwards;
}

.confetti-piece:nth-of-type(3n) { width: 6px; height: 6px; border-radius: 50%; }
.confetti-piece:nth-of-type(4n) { width: 10px; height: 4px; }

@keyframes promo-confetti {
  0% { opacity: 0; transform: translate(calc(-50% + var(--confetti-lift-x)), var(--confetti-lift-y)) rotate(0); }
  2% { opacity: 1; }
  86% { opacity: 1; }
  100% { opacity: 0; transform: translate(calc(-50% + var(--confetti-x)), var(--confetti-y)) rotate(var(--confetti-r)); }
}

@media (max-width: 520px) {
  .scroll-promo { left: 12px; right: 12px; top: 70px; justify-content: center; }
  .scroll-promo strong { font-size: 11px; }
}

@media (prefers-reduced-motion: reduce) {
  .scroll-promo { transition: none; }
}

.promo-code-field input {
  position: relative;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 700;
  border: 2px solid #c9a227 !important;
  background-color: #c9bd98 !important;
  background-image: linear-gradient(115deg, #a69360 0%, #c9b987 18%, #e4dcc4 36%, #bec3c3 50%, #ded3b5 68%, #aa9560 86%, #d5c69b 100%) !important;
  background-size: 180% 100% !important;
  color: #17150f !important;
  text-shadow: 0 1px 0 #fff8dc66;
  box-shadow: inset 0 0 0 1px #f5e9c455, inset 0 1px 8px #d7c5891f, 0 0 7px #b99a3940, 0 0 15px #b99a3924;
  animation: premium-gold-glow 2.8s ease-in-out infinite;
}

.promo-code-field input:focus {
  border-color: #f0ca4d !important;
  box-shadow: inset 0 0 0 1px #fff0b877, inset 0 1px 10px #dbc9892b, 0 0 0 3px #b99a392b, 0 0 11px #c4a84f70, 0 0 23px #b99a3940 !important;
}

.promo-code-field input::selection {
  background: #80651f;
  color: #fff;
}

html[data-theme="dark"] .promo-code-field input {
  background-color: #c9bd98 !important;
  color: #d6aa2e !important;
}

.promo-code-field input,
html[data-theme="dark"] .promo-code-field input {
  color: #050505 !important;
  font-weight: 900;
  -webkit-text-stroke: 0;
  text-shadow: none;
}

.promo-code-field {
  width: min(100%, 330px);
  justify-self: center;
}

@keyframes premium-gold-glow {
  0%, 100% { box-shadow: inset 0 0 0 1px #f5e9c455, inset 0 1px 8px #d7c5891f, 0 0 6px #b99a3938, 0 0 13px #b99a391f; }
  50% { box-shadow: inset 0 0 0 1px #fff0bd70, inset 0 1px 9px #ddcb9228, 0 0 9px #c2a64f60, 0 0 19px #b99a3935; }
}

@media (prefers-reduced-motion: reduce) {
  .promo-code-field input { animation: none; }
}

.immediate-help {
  max-width: 560px;
  margin: 30px auto 0;
  padding: 21px 24px;
  border: 1px solid #d4af37;
  border-left: 5px solid #d4af37;
  border-radius: 5px;
  background: #e5f4ed;
  box-shadow: 0 10px 25px #0b4c3c1f;
  text-align: center;
}

.immediate-help > span {
  color: #946f0c;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.immediate-help p {
  margin: 7px 0 12px !important;
  color: #4c6a62 !important;
  font-size: 13px !important;
}

.immediate-help a {
  display: inline-block;
  color: #075a4d;
  font: 800 24px Manrope, sans-serif;
  letter-spacing: .02em;
}

.immediate-help a:hover { color: #0a8b76; }
html[data-theme="dark"] .immediate-help { background: #173e30; border-color: #d4af37; }
html[data-theme="dark"] .immediate-help p { color: #b7cec5 !important; }
html[data-theme="dark"] .immediate-help a { color: #b7eadc; }

@media (min-width: 901px) {
  .contact-page {
    grid-template-columns: .82fr 1.18fr;
    gap: 6vw;
  }
}
