/**
 * Golden Tiger SK – designer patches (drop-in)
 * Enqueue AFTER assets/css/main.css (see theme-hooks.php).
 * Does not replace main.css; overrides + new components only.
 * Tokens match /workspace/goldentiger-design/design-spec.md
 */

:root {
  --gt-cookie-bg: #3C404D;
  --gt-cookie-btn: #222222;
  --gt-frame-gold: linear-gradient(
    to bottom,
    #705422 0%,
    #AC9E55 20%,
    #B1A870 35%,
    #A28C34 50%,
    #B1A870 65%,
    #AC9E55 80%,
    #705422 100%
  );
  --gt-cta-gold: linear-gradient(135deg, #F5E642, #C8960C, #FFD700, #B8860B, #FFD700, #C8960C, #F5E642);
  --container: 720px;
  --narrow: 660px;
}

/* -------------------------------------------------------------------------- */
/* Cookie consent bar                                                         */
/* -------------------------------------------------------------------------- */
.gt-cookie {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 16px;
  background: var(--gt-cookie-bg);
  color: #fff;
  font-family: Inter, system-ui, sans-serif;
  font-size: 14px;
  line-height: 1.4;
  box-shadow: 0 -2px 12px rgba(0, 0, 0, 0.45);
}
.gt-cookie[hidden] {
  display: none !important;
}
.gt-cookie__text {
  flex: 1 1 auto;
  margin: 0;
  color: #fff;
}
.gt-cookie__text a {
  color: #D6D6D6;
  text-decoration: underline;
}
.gt-cookie__ok {
  flex: 0 0 auto;
  appearance: none;
  border: 2px solid transparent;
  border-radius: 5px;
  background: var(--gt-cookie-btn);
  color: #fff;
  font-size: 14.4px;
  font-weight: 700;
  line-height: 1.2;
  padding: 5.76px 11.52px;
  min-width: 44px;
  cursor: pointer;
  text-transform: uppercase;
}
.gt-cookie__ok:hover,
.gt-cookie__ok:focus-visible {
  background: #111;
  outline: 1px solid #FFCC00;
}
@media (max-width: 575px) {
  .gt-cookie {
    flex-direction: column;
    align-items: stretch;
    text-align: left;
    padding: 12px;
  }
  .gt-cookie__ok {
    align-self: flex-end;
  }
}

/* -------------------------------------------------------------------------- */
/* Header gold borders / inline CTAs                                          */
/* -------------------------------------------------------------------------- */
.gt-header {
  background: linear-gradient(90deg, #CC0000, #330000);
  border-top: 2px solid #FFCC00;
  border-bottom: 2px solid #FFCC00;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.8);
}
.cta--inline {
  font-size: 14px;
  padding: 8px 14px;
  min-height: 36px;
}

/* -------------------------------------------------------------------------- */
/* Section headings + container                                               */
/* -------------------------------------------------------------------------- */
.gt-container {
  max-width: var(--container);
}
.gt-heading {
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #FFBF00;
  text-align: center;
}
.gt-section + .gt-section {
  background-image: linear-gradient(90deg, transparent, #990000, transparent);
  background-size: 100% 1px;
  background-repeat: no-repeat;
  background-position: top center;
}

/* -------------------------------------------------------------------------- */
/* Hero – red mist, stronger outline, PLAY NOW pill, optional gold frame      */
/* -------------------------------------------------------------------------- */
.gt-hero {
  position: relative;
  min-height: 320px;
  padding: 1.5rem 0 0.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.gt-hero-frame {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 720px;
  margin: 0 auto;
  padding: 8px;
  border-radius: 20px;
  background: var(--gt-frame-gold);
  box-shadow:
    0 0 8px rgba(212, 175, 55, 0.6),
    0 0 10px rgba(212, 175, 55, 0.3);
}
.gt-hero-frame .gt-hero-panel {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  background:
    radial-gradient(ellipse at center, rgba(80, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0.85) 70%, #000 100%),
    #140000;
  padding: 1.25rem 12px 1.5rem;
  text-align: center;
  min-height: 260px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
/* When frame wrapper is absent, still improve .gt-hero-inner */
.gt-hero-inner {
  position: relative;
  z-index: 1;
  max-width: var(--narrow);
  margin: 0 auto;
  padding: 0.5rem 12px 1rem;
}
.gt-hero-inner::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  width: min(500px, 100%);
  transform: translateX(-50%);
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(223, 1, 1, 0.9) 50%,
    transparent 100%
  );
  opacity: 0.85;
  pointer-events: none;
  z-index: -1;
}
.gt-hero-offer {
  position: relative;
  font-size: clamp(28px, 7vw, 40px);
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #FFD700;
  text-shadow:
    -2px -2px 0 #DC1414,
     2px -2px 0 #DC1414,
    -2px  2px 0 #DC1414,
     2px  2px 0 #DC1414,
    -3px  0   0 #DC1414,
     3px  0   0 #DC1414,
     0   -3px 0 #DC1414,
     0    3px 0 #DC1414,
    -5px  0   2px #282828,
     5px  0   2px #282828,
     0   -5px 2px #282828,
     0    5px 2px #282828;
}
.gt-hero-offer span:first-child {
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  line-height: 1em;
  margin-bottom: 0.65em;
  text-shadow: 0 0 2px #000, 0 0 4px #000;
}
.cta--hero {
  display: inline-flex;
  border-radius: 999px;
  padding: 12px 40px;
  font-size: 32px;
  font-weight: 800;
  letter-spacing: 0.06em;
  min-height: 56px;
  margin-top: 12px;
}
.cta--hero::before {
  border-radius: 999px;
  background: var(--gt-cta-gold);
}
.cta--hero::after {
  border-radius: 999px;
  inset: 2px;
  background:
    radial-gradient(ellipse at 50% 0%, rgba(255, 255, 255, 0.25), transparent 55%),
    linear-gradient(180deg, #78E650, #32B414);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.45),
    inset 0 -2px 4px rgba(0, 90, 10, 0.35),
    0 4px 12px rgba(0, 0, 0, 0.3);
}

/* -------------------------------------------------------------------------- */
/* Large framed promo panels (replace .gt-winners scroller)                   */
/* -------------------------------------------------------------------------- */
.gt-promo-panels {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  max-width: 720px;
  margin: 0.5rem auto 0;
  padding: 0 4px;
}
.gt-promo-panel {
  margin: 0;
}
.gt-promo-panel__frame {
  display: block;
  padding: 8px;
  border-radius: 20px;
  background: var(--gt-frame-gold);
  box-shadow:
    0 0 8px rgba(212, 175, 55, 0.6),
    0 0 10px rgba(212, 175, 55, 0.3);
  text-decoration: none;
}
.gt-promo-panel__media {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 12px;
  background: #141414;
  overflow: hidden;
}
.gt-promo-panel__media img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 12px;
}
.gt-promo-panel__caption {
  display: none; /* art carries English titles; enable if using text-only fallback */
  margin: 0.5rem 0 0;
  text-align: center;
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #FFBF00;
}
.gt-promo-panel--fallback .gt-promo-panel__inner {
  min-height: 180px;
  border-radius: 12px;
  background:
    radial-gradient(ellipse at 50% 30%, rgba(153, 0, 0, 0.55), #0a0a0a 70%),
    #141414;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 1.25rem 1rem;
  text-align: center;
}
.gt-promo-panel--fallback .gt-promo-panel__title {
  margin: 0;
  font-size: 1.1rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #FFD700;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.8);
}
.gt-promo-panel--fallback .gt-promo-panel__sub {
  margin: 0;
  font-size: 0.8rem;
  color: #D6D6D6;
}

/* Hide legacy small winners strip if both exist during transition */
.gt-winners.gt-winners--legacy {
  display: none !important;
}

/* -------------------------------------------------------------------------- */
/* FAQ bevel (official double-bevel)                                          */
/* -------------------------------------------------------------------------- */
.gt-faq details {
  background: #141414;
  border-radius: 5px;
  margin-bottom: 8px;
  padding: 10.24px 12.8px;
  box-shadow:
    -2px -2px 0 rgba(255, 255, 255, 0.2),
    -1px -1px 2px rgba(255, 255, 255, 0.15),
     2px  2px 0 rgba(0, 0, 0, 0.5),
     1px  1px 2px rgba(0, 0, 0, 0.4);
}
.gt-faq summary {
  font-size: 12.8px;
  font-weight: 700;
  color: #fff;
}
.gt-faq .gt-faq-body {
  font-size: 12.8px;
  color: #fff;
}

/* -------------------------------------------------------------------------- */
/* Footer payment / regulator logo strip                                      */
/* -------------------------------------------------------------------------- */
.gt-footer-logos {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 8px 12px;
  max-width: 720px;
  margin: 1rem auto 0.75rem;
  padding: 0 8px;
}
.gt-footer-logos__item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 36px;
  min-width: 44px;
  padding: 4px 8px;
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid #333;
  color: #D6D6D6;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  text-decoration: none;
  line-height: 1;
}
.gt-footer-logos__item img {
  display: block;
  height: 28px;
  width: auto;
  max-width: 125px;
  object-fit: contain;
}
.gt-footer-logos__item--age {
  width: 35px;
  height: 35px;
  min-width: 35px;
  padding: 0;
  border-radius: 50%;
  border: 2px solid #990000;
  background: transparent;
  color: #990000 !important;
  font-size: 14px;
  font-weight: 700;
  line-height: 31px;
}
.gt-footer-logos__item:hover {
  border-color: #FFCC00;
  color: #FFCC00;
  text-decoration: none;
}
.gt-legal .age {
  /* Prefer red regulatory age when strip also present */
  border-color: #990000;
  color: #990000;
}

/* -------------------------------------------------------------------------- */
/* Trusted badge – keep centered                                              */
/* -------------------------------------------------------------------------- */
.gt-trusted img {
  max-width: min(420px, 100%);
  margin: 0 auto;
}

/* -------------------------------------------------------------------------- */
/* Mobile 390 tweaks                                                          */
/* -------------------------------------------------------------------------- */
@media (max-width: 575px) {
  .gt-heading {
    font-size: 1rem;
    letter-spacing: 0.1em;
  }
  .gt-hero {
    min-height: 240px;
    padding: 1rem 0 0.5rem;
  }
  .gt-hero-frame {
    border-radius: 16px;
    padding: 6px;
  }
  .gt-hero-frame .gt-hero-panel {
    border-radius: 10px;
    min-height: 200px;
    padding: 1rem 10px 1.25rem;
  }
  .cta--hero {
    font-size: 18px;
    padding: 10px 28px;
    min-height: 48px;
    letter-spacing: 0.1em;
  }
  .gt-promo-panel__frame {
    padding: 6px;
    border-radius: 16px;
  }
  .gt-promo-panel__media img,
  .gt-promo-panel__media {
    border-radius: 10px;
  }
  .gt-footer-logos {
    gap: 8px;
  }
  .gt-footer-logos__item {
    height: 32px;
    font-size: 10px;
  }
  .cta--inline {
    font-size: 12px;
    padding: 7px 10px;
    min-height: 32px;
  }
}

@media (min-width: 576px) {
  .gt-hero-offer {
    font-size: 40px;
  }
  .cta--hero {
    font-size: 36px;
    padding: 12px 48px;
  }
}

/* Hide empty/broken game tiles (no blank gray boxes) */
.gt-game img {
  background: transparent;
}
.gt-game:has(img:not([src])),
.gt-game:has(img[src=""]) {
  display: none;
}

/* 1.2.0 – official imagery: carousel, feature tiles, seals, badges */
.gt-footer-logos__item--img{background:none!important;border:0!important;padding:0!important;min-width:0!important;display:inline-flex;align-items:center}
.gt-footer-logos__item--img img{display:block;height:auto;max-height:40px;width:auto}
.gt-carousel{position:relative;max-width:1280px;margin:0 auto}
.gt-carousel__track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;border-radius:12px}
.gt-carousel__track::-webkit-scrollbar{display:none}
.gt-carousel__slide{flex:0 0 100%;scroll-snap-align:center;margin:0}
.gt-carousel__slide img,.gt-feature-tile img{display:block;width:100%;height:auto;border-radius:12px}
.gt-carousel__slide figcaption,.gt-feature-tile figcaption{text-align:center;color:#FFD700;font-weight:700;margin-top:.6rem;font-size:1rem}
.gt-feature-tile{max-width:1280px;margin:0 auto}
.gt-carousel__nav{position:absolute;top:calc(50% - 1.2rem);transform:translateY(-50%);width:40px;height:40px;border-radius:50%;border:0;background:rgba(0,0,0,.55);color:#fff;font-size:28px;line-height:1;cursor:pointer;z-index:2}
.gt-carousel__nav--prev{left:8px}.gt-carousel__nav--next{right:8px}
.gt-carousel__dots{display:flex;justify-content:center;gap:8px;margin-top:.5rem}
.gt-carousel__dots button{width:10px;height:10px;border-radius:50%;border:0;padding:0;background:rgba(255,255,255,.35);cursor:pointer}
.gt-carousel__dots button[aria-selected="true"]{background:#FFD700}
@media (max-width:767px){.gt-carousel__nav{display:none}.gt-carousel__slide figcaption,.gt-feature-tile figcaption{font-size:.9rem}}
.gt-cr-feature{text-align:center;margin:1.5rem 0}
.gt-cr-feature img{width:100%;max-width:900px;height:auto;border-radius:12px}
.gt-badges{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;margin:1.5rem 0;padding:0;list-style:none}
.gt-badge{text-align:center;background:rgba(255,255,255,.04);border-radius:12px;padding:1rem}
.gt-badge img{width:137px;height:auto;display:block;margin:0 auto .5rem}
.gt-badge strong{display:block;color:#FFD700;margin-bottom:.3rem}
.gt-badge p{margin:0;font-size:.95rem}
.gt-rtp-cover{margin:1.5rem 0;text-align:center}
.gt-rtp-cover img{width:100%;max-width:900px;height:auto;border-radius:12px}
.gt-hwrg-cert{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;justify-content:center;background:rgba(255,255,255,.04);border:1px solid rgba(255,215,0,.35);border-radius:12px;padding:1.25rem;margin:1.5rem 0}
.gt-hwrg-cert__badge{width:180px;height:auto}
.gt-hwrg-cert__text{flex:1 1 260px}
.gt-hwrg-cert__text img{width:140px;height:auto;display:block;margin-top:.75rem}
.gt-winner-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem;margin:1.5rem 0}
.gt-winner-grid figure{margin:0;text-align:center}
.gt-winner-grid img{width:100%;height:auto;border-radius:12px;display:block}
.gt-winner-grid figcaption{color:#FFD700;font-weight:700;margin-top:.5rem}
.gt-video video{display:block;width:100%;height:auto;border-radius:12px;background:#000}
.gt-video--square{display:none!important}
@media (max-width:767px){.gt-video--wide{display:none!important}.gt-video--square{display:block!important}}
.gt-rtp-cover figcaption{color:#bbb;font-size:.85rem;margin-top:.4rem}

/* 1.3.0 logo */
.gt-footer-brand{display:flex;justify-content:center;margin:0 auto 18px}
.gt-footer-brand img{height:48px;width:auto}

/* 1.3.1 – desktop header: nav items side by side in one row (2026-10-25) */
@media (min-width: 1024px) {
  .gt-header-inner { max-width: 1240px; padding: 8px 24px; gap: 24px; }
  .gt-primary-nav { flex-wrap: nowrap; gap: 0 28px; justify-content: center; }
  .gt-primary-nav a { font-size: 14px; padding: 6px 0; }
}
/* 1.3.1 – tablet: nav on its own single row under logo + CTAs */
@media (min-width: 576px) and (max-width: 1023px) {
  .gt-header-inner { flex-wrap: wrap; row-gap: 6px; }
  .gt-primary-nav { order: 3; flex: 0 0 100%; flex-wrap: nowrap; gap: 0 22px; padding-top: 2px; }
}
