/** Shopify CDN: Minification failed

Line 38:2 Unexpected "{"
Line 38:3 Expected identifier but found "%"
Line 38:80 Expected identifier but found "%"

**/
/* Tykables 7.0 - Popup framework
   Supports 10 positions, 5 shape modes, 5 animations. Mobile (<=640px)
   promotes every corner/middle position to a bottom-sheet except
   top-center which stays as a top-bar. Z-index sits above the theme
   header (1000) but below Shopify system dialogs (~2147483647). */

.popup {
  position: fixed;
  z-index: 9000;
  pointer-events: none;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.22s ease-out, transform 0.24s cubic-bezier(.4,.2,.4,1);
  color: var(--popup-fg, #143f92);
  font-family: var(--tyk-font, system-ui, sans-serif);
  width: var(--popup-width, 320px);
  max-width: calc(100vw - 24px);
  box-sizing: border-box;
}
.popup[hidden] { display: none; }
.popup.is-open { opacity: 1; transform: translateY(0); pointer-events: auto; }
.popup.popup--no-motion { transition: none !important; transform: none !important; }

/* ── Inner container ──────────────────────────────────────────────── */
.popup__inner {
  position: relative;
  background: var(--popup-bg, #fff);
  color: inherit;
  padding: 1.6rem 1.8rem 1.4rem;
  border-radius: 18px;
  {% comment -%} height gets applied via --popup-height on fixed-height popups {%- endcomment %}
  min-height: var(--popup-height, auto);
  box-sizing: border-box;
}
.popup--shadow .popup__inner {
  box-shadow: 0 20px 40px rgba(16, 55, 130, 0.25),
              0 6px 12px rgba(16, 55, 130, 0.15);
}

/* ── Close button (44x44 touch target) ────────────────────────────── */
.popup__close {
  position: absolute;
  top: 0.4rem;
  right: 0.4rem;
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  color: inherit;
  cursor: pointer;
  border-radius: 50%;
  opacity: 0.65;
  transition: opacity 0.12s ease, background 0.12s ease;
  padding: 0;
}
.popup__close:hover,
.popup__close:focus-visible { opacity: 1; background: rgba(0,0,0,0.05); outline: none; }
.popup__close svg { width: 16px; height: 16px; }

/* ── Headline + body + CTA ────────────────────────────────────────── */
.popup__headline {
  font-size: 1.6rem;
  font-weight: 800;
  letter-spacing: -0.01em;
  margin: 0 2rem 0.6rem 0;
  color: inherit;
  line-height: 1.2;
}
.popup__body {
  font-size: 1.35rem;
  font-weight: 600;
  line-height: 1.45;
  margin: 0 0 1.1rem;
  color: inherit;
}
.popup__body p { margin: 0 0 0.4rem; }
.popup__body p:last-child { margin-bottom: 0; }

.popup__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--popup-cta-bg, #1f86ff);
  color: var(--popup-cta-fg, #fff);
  font-weight: 800;
  font-size: 1.3rem;
  text-decoration: none;
  padding: 0.9rem 1.4rem;
  border-radius: 999px;
  transition: filter 0.12s ease, transform 0.1s ease;
  line-height: 1;
}
.popup__cta:hover { filter: brightness(1.05); }
.popup__cta:active { transform: translateY(1px); }

.visually-hidden {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}

/* ── Positions (desktop) ──────────────────────────────────────────── */
.popup--pos-top-left        { top: 16px; left: 16px; }
.popup--pos-top-right       { top: 16px; right: 16px; }
.popup--pos-top-center      { top: 0; left: 50%; transform: translate(-50%, -8px); width: 100%; max-width: 100vw; }
.popup--pos-top-center.is-open { transform: translate(-50%, 0); }
.popup--pos-top-center .popup__inner { border-radius: 0; text-align: center; }

.popup--pos-middle-left     { top: 50%; left: 16px; transform: translate(0, calc(-50% + 8px)); }
.popup--pos-middle-left.is-open  { transform: translate(0, -50%); }
.popup--pos-middle-right    { top: 50%; right: 16px; transform: translate(0, calc(-50% + 8px)); }
.popup--pos-middle-right.is-open { transform: translate(0, -50%); }

.popup--pos-center          {
  top: 50%; left: 50%; transform: translate(-50%, calc(-50% + 8px));
}
.popup--pos-center.is-open  { transform: translate(-50%, -50%); }

.popup--pos-bottom-left     { bottom: 16px; left: 16px; }
.popup--pos-bottom-right    { bottom: 16px; right: 16px; }
.popup--pos-bottom-center   { bottom: 16px; left: 50%; transform: translate(-50%, 8px); }
.popup--pos-bottom-center.is-open { transform: translate(-50%, 0); }

.popup--pos-inline-after-header {
  position: relative;
  margin: 12px auto;
  top: auto; left: auto; right: auto; bottom: auto;
  transform: none;
}

/* ── Shapes ───────────────────────────────────────────────────────── */
.popup--shape-rectangle .popup__inner { border-radius: 0; }
.popup--shape-rounded   .popup__inner { border-radius: 18px; }
.popup--shape-circle    .popup__inner {
  border-radius: 50%;
  aspect-ratio: 1 / 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.popup--shape-mask_image .popup__inner {
  background: var(--popup-bg, #fff);
  -webkit-mask-image: var(--popup-mask);
          mask-image: var(--popup-mask);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  border-radius: 0;
}
.popup--shape-mask_image.popup--shadow .popup__inner {
  box-shadow: none;
  filter: drop-shadow(0 12px 24px rgba(16,55,130,0.35));
}

.popup--shape-svg_clip .popup__inner {
  clip-path: var(--popup-clip, none);
  -webkit-clip-path: var(--popup-clip, none);
  border-radius: 0;
}
.popup--shape-svg_clip.popup--shadow .popup__inner {
  box-shadow: none;
  filter: drop-shadow(0 12px 24px rgba(16,55,130,0.35));
}

/* ── Animations ───────────────────────────────────────────────────── */
.popup--anim-none { transition: none; }
.popup--anim-none.is-open { opacity: 1; transform: none; }

.popup--anim-fade.is-open { animation: popup-fade 0.25s ease-out both; }
@keyframes popup-fade { from { opacity: 0; } to { opacity: 1; } }

.popup--anim-slide_up.is-open { animation: popup-slide-up 0.3s cubic-bezier(.4,.2,.4,1) both; }
@keyframes popup-slide-up {
  from { opacity: 0; transform: translateY(24px); }
  to   { opacity: 1; transform: translateY(0); }
}
.popup--pos-center.popup--anim-slide_up.is-open { animation: popup-slide-up-center 0.3s cubic-bezier(.4,.2,.4,1) both; }
@keyframes popup-slide-up-center {
  from { opacity: 0; transform: translate(-50%, calc(-50% + 24px)); }
  to   { opacity: 1; transform: translate(-50%, -50%); }
}

.popup--anim-slide_down.is-open { animation: popup-slide-down 0.3s cubic-bezier(.4,.2,.4,1) both; }
@keyframes popup-slide-down {
  from { opacity: 0; transform: translateY(-24px); }
  to   { opacity: 1; transform: translateY(0); }
}
.popup--pos-top-center.popup--anim-slide_down.is-open { animation: popup-slide-down-top 0.3s cubic-bezier(.4,.2,.4,1) both; }
@keyframes popup-slide-down-top {
  from { opacity: 0; transform: translate(-50%, -24px); }
  to   { opacity: 1; transform: translate(-50%, 0); }
}

.popup--anim-bounce.is-open { animation: popup-bounce 0.5s cubic-bezier(.28,1.6,.5,1) both; }
@keyframes popup-bounce {
  0%   { opacity: 0; transform: scale(0.8) translateY(12px); }
  60%  { opacity: 1; transform: scale(1.05) translateY(-4px); }
  100% { opacity: 1; transform: scale(1) translateY(0); }
}

.popup--anim-pulse.is-open { animation: popup-pulse 0.9s ease-in-out infinite; }
@keyframes popup-pulse {
  0%,100% { opacity: 1; transform: scale(1); }
  50%     { opacity: 0.96; transform: scale(1.02); }
}

.popup--no-motion,
.popup--no-motion.is-open { animation: none !important; transition: none !important; transform: none !important; }

/* ── Mobile overrides — bottom sheet under 640px, top-bar stays ───── */
@media (max-width: 640px) {
  .popup:not(.popup--pos-top-center):not(.popup--pos-inline-after-header) {
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    top: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    transform: translateY(16px) !important;
    border-radius: 18px 18px 0 0;
  }
  .popup:not(.popup--pos-top-center):not(.popup--pos-inline-after-header).is-open {
    transform: translateY(0) !important;
  }
  .popup:not(.popup--pos-top-center):not(.popup--pos-inline-after-header) .popup__inner {
    border-radius: 18px 18px 0 0 !important;
    padding-bottom: calc(1.4rem + env(safe-area-inset-bottom, 0px));
  }

  .popup--pos-top-center {
    padding-top: env(safe-area-inset-top, 0px);
  }
}

/* ── Reduced motion ───────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .popup,
  .popup.is-open,
  .popup[class*='popup--anim-'].is-open {
    animation: none !important;
    transition: opacity 0.12s ease-out !important;
    transform: none !important;
  }
  .popup--pos-center.is-open { transform: translate(-50%, -50%) !important; }
  .popup--pos-top-center.is-open { transform: translate(-50%, 0) !important; }
  .popup--pos-middle-left.is-open { transform: translate(0, -50%) !important; }
  .popup--pos-middle-right.is-open { transform: translate(0, -50%) !important; }
  .popup--pos-bottom-center.is-open { transform: translate(-50%, 0) !important; }
}
