/* ================================================================
   HOKIEMAS88 / Obsidian Champagne Gold V3
   Responsive jackpot + FAQ accordion + looping review carousel.
   Scoped rules: keep all other theme components intact.
   ================================================================ */
:root {
  --hokie-v3-panel:#1b191b;
  --hokie-v3-gold:#d5b17a;
  --hokie-v3-light:#f8e2b8;
  --hokie-v3-outline:rgba(213,177,122,.45);
  --hokie-v3-text:#fbf3e8;
  --hokie-v3-muted:#d4c4b1;
}
/* A. Jackpot: completely normalize its five nested wrappers.
   The downloaded upstream desktop stylesheet may otherwise impose fixed
   widths, heights, padding or flex rules on each nested container. */
body .home-inner-container {box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important;}
body .home-inner-container > a:has(.home-progressive-jackpot) {display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;text-decoration:none!important;}
body .home-progressive-jackpot,
body .home-progressive-jackpot .outer-container,
body .home-progressive-jackpot .inner-container,
body .home-progressive-jackpot .border-container,
body .home-progressive-jackpot .jackpot-container,
body .home-progressive-jackpot .jackpot-inner-container,
body .home-progressive-jackpot .jackpot-border-container {
  box-sizing:border-box!important;
  position:relative!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  float:none!important;
  transform:none!important;
}
body .home-progressive-jackpot {display:block!important;margin:14px auto 22px!important;padding:0!important;overflow:visible!important;isolation:isolate;}
body .home-progressive-jackpot .outer-container {
  display:block!important;margin:0!important;padding:2px!important;
  border:0!important;border-radius:19px!important;overflow:hidden!important;
  background:linear-gradient(115deg,#806138,#ffe0a1 24%,#8b663e 54%,#f4d6a0 82%,#665035)!important;
  box-shadow:0 10px 34px rgba(0,0,0,.52),0 0 21px rgba(213,177,122,.13)!important;
}
body .home-progressive-jackpot .inner-container {
  display:block!important;margin:0!important;
  padding:clamp(13px,2.4vw,23px)!important;
  border:0!important;border-radius:17px!important;overflow:hidden!important;
  background:radial-gradient(ellipse at 15% 20%,rgba(172,119,60,.18),transparent 50%),linear-gradient(135deg,#21191a 0%,#0d0e11 77%)!important;
}
body .home-progressive-jackpot .border-container {
  display:grid!important;grid-template-columns:minmax(0,215px) minmax(0,1fr)!important;
  align-items:center!important;gap:clamp(12px,2.3vw,27px)!important;
  margin:0!important;padding:0!important;border:0!important;
  background:transparent!important;box-shadow:none!important;
}
body .home-progressive-jackpot .jackpot-play-section {
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
  width:100%!important;min-width:0!important;max-width:100%!important;height:auto!important;
  gap:3px!important;text-align:center!important;margin:0!important;padding:0!important;
  background:transparent!important;border:0!important;box-shadow:none!important;
}
body .home-progressive-jackpot .jackpot-play-section picture {display:block!important;width:100%!important;max-width:170px!important;height:auto!important;margin:0 auto!important;}
body .home-progressive-jackpot .jackpot-play-section img {display:block!important;max-width:100%!important;width:100%!important;height:auto!important;object-fit:contain!important;}
body .home-progressive-jackpot .jackpot-play-section img.hokie-jackpot-illustration {width:85px!important;height:85px!important;max-width:35%!important;flex:none!important;filter:drop-shadow(0 0 8px rgba(241,192,112,.2))!important;}
body .home-progressive-jackpot .jackpot-play-text,
body .home-progressive-jackpot .jackpot-play-text label {
  display:inline!important;width:auto!important;max-width:100%!important;height:auto!important;
  font-family:inherit!important;font-size:clamp(14px,1.8vw,20px)!important;
  font-weight:900!important;line-height:1.25!important;letter-spacing:.6px!important;
  color:var(--hokie-v3-light)!important;text-transform:uppercase!important;
  text-shadow:0 2px 7px rgba(0,0,0,.7)!important;
}
body .home-progressive-jackpot .jackpot-container,
body .home-progressive-jackpot .jackpot-inner-container {display:block!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;}
body .home-progressive-jackpot .jackpot-border-container {
  display:flex!important;align-items:center!important;justify-content:center!important;flex-wrap:wrap!important;
  gap:8px 12px!important;padding:clamp(10px,2.2vw,19px)!important;
  border:1px solid rgba(233,195,126,.64)!important;border-radius:14px!important;
  background:linear-gradient(155deg,rgba(13,13,16,.98),rgba(43,32,31,.9))!important;
  box-shadow:inset 0 0 17px rgba(213,177,122,.08),0 0 19px rgba(213,177,122,.14)!important;
  text-align:center!important;overflow:visible!important;
}
body .home-progressive-jackpot .jackpot-currency {
  display:inline-block!important;flex:none!important;min-width:0!important;
  font-family:system-ui,sans-serif!important;font-size:clamp(13px,1.8vw,20px)!important;
  font-weight:800!important;color:var(--hokie-v3-light)!important;line-height:1.15!important;
  letter-spacing:.8px!important;text-shadow:none!important;
}
body .home-progressive-jackpot #progressive_jackpot {
  display:inline-block!important;flex:0 1 auto!important;min-width:0!important;max-width:100%!important;
  color:#ffda91!important;font-family:'Open24DisplaySt',system-ui,Arial,sans-serif!important;
  font-size:clamp(22px,3.7vw,43px)!important;font-weight:900!important;
  font-variant-numeric:tabular-nums!important;line-height:1.2!important;
  letter-spacing:clamp(0px,.12vw,1px)!important;white-space:normal!important;
  overflow-wrap:anywhere!important;text-align:center!important;
  text-shadow:0 0 15px rgba(245,192,93,.22)!important;
}
/* Avoid old ornamental pseudo-elements spilling outside mobile width. */
body .home-progressive-jackpot .outer-container::before,
body .home-progressive-jackpot .outer-container::after,
body .home-progressive-jackpot .inner-container::before,
body .home-progressive-jackpot .inner-container::after,
body .home-progressive-jackpot .border-container::before,
body .home-progressive-jackpot .border-container::after {content:none!important;display:none!important;}

@media (min-width:768px) and (max-width:1050px) {
  body .home-progressive-jackpot {width:calc(100vw - 28px)!important;max-width:calc(100vw - 28px)!important;margin-left:auto!important;margin-right:auto!important;}
}
@media (max-width:767px) {
  /* Parent .row in the legacy template has negative margins; center the panel
     within the viewport without rewriting the game-grid parent itself. */
  body .home-progressive-jackpot {width:calc(100vw - 28px)!important;max-width:calc(100vw - 28px)!important;margin:12px auto 18px!important;}
  body .home-progressive-jackpot .inner-container {padding:12px!important;}
  body .home-progressive-jackpot .border-container {display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:12px!important;}
  body .home-progressive-jackpot .jackpot-play-section {flex-direction:row!important;gap:12px!important;}
  body .home-progressive-jackpot .jackpot-play-section picture {width:118px!important;max-width:42%!important;margin:0!important;flex:none!important;}
  body .home-progressive-jackpot .jackpot-play-section img.hokie-jackpot-illustration {width:62px!important;height:62px!important;max-width:27%!important;}
  body .home-progressive-jackpot .jackpot-play-text,
  body .home-progressive-jackpot .jackpot-play-text label {font-size:clamp(13px,4.1vw,18px)!important;}
  body .home-progressive-jackpot .jackpot-border-container {flex-direction:column!important;gap:5px!important;padding:12px 8px!important;}
  body .home-progressive-jackpot .jackpot-currency {font-size:13px!important;}
  body .home-progressive-jackpot #progressive_jackpot {width:100%!important;font-size:clamp(21px,6.0vw,31px)!important;letter-spacing:0!important;}
}
@media (max-width:359px) {
  body .home-progressive-jackpot .inner-container {padding:8px!important;}
  body .home-progressive-jackpot .jackpot-play-section picture {width:97px!important;}
  body .home-progressive-jackpot #progressive_jackpot {font-size:clamp(19px,6vw,25px)!important;}
}

/* B. Section inserted between .footer-description-section and .footer-separator. */
body .site-footer .hokie-community-section {
  box-sizing:border-box!important;position:relative!important;
  width:100%!important;max-width:100%!important;
  margin:28px auto 32px!important;padding:0!important;
  font-family:system-ui,-apple-system,'Segoe UI',sans-serif!important;
  color:var(--hokie-v3-text)!important;
}
body .site-footer .hokie-community-section *,
body .site-footer .hokie-community-section *::before,
body .site-footer .hokie-community-section *::after {box-sizing:border-box!important;}
body .site-footer .hokie-community-head {margin:0 auto 18px!important;text-align:center!important;}
body .site-footer .hokie-community-kicker {display:block;color:var(--hokie-v3-gold)!important;font-size:11px!important;font-weight:900!important;letter-spacing:2px!important;}
body .site-footer .hokie-community-head h2 {margin:5px 0 7px!important;color:var(--hokie-v3-light)!important;font-size:clamp(24px,2.7vw,34px)!important;line-height:1.25!important;font-weight:900!important;}
body .site-footer .hokie-community-head p {margin:0!important;color:var(--hokie-v3-muted)!important;font-size:14px!important;}
body .site-footer .hokie-community-grid {display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;align-items:stretch!important;gap:24px!important;width:100%!important;max-width:100%!important;}
body .site-footer .hokie-community-panel {
  min-width:0!important;max-width:100%!important;padding:20px!important;
  border:1px solid rgba(222,180,117,.48)!important;border-radius:18px!important;
  background:radial-gradient(circle at top left,rgba(194,145,68,.12),transparent 52%),linear-gradient(160deg,#292226,#151416 80%)!important;
  box-shadow:0 13px 33px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,229,179,.1)!important;
}
body .site-footer .hokie-community-panel-head {display:flex!important;gap:12px!important;align-items:center!important;min-width:0!important;padding:0 0 14px!important;margin:0 0 16px!important;border-bottom:1px solid rgba(214,173,107,.25)!important;}
body .site-footer .hokie-community-panel-head .hokie-community-icon {display:flex!important;align-items:center!important;justify-content:center!important;flex:none!important;width:43px!important;height:43px!important;border:1px solid rgba(231,191,126,.65)!important;border-radius:13px!important;color:#ffdc96!important;background:linear-gradient(145deg,#655036,#271f1d)!important;font-size:25px!important;font-weight:900!important;}
body .site-footer .hokie-community-panel-head h3 {margin:0 0 4px!important;color:#ffe5b5!important;font-size:clamp(18px,2vw,22px)!important;line-height:1.3!important;font-weight:900!important;}
body .site-footer .hokie-community-panel-head p {margin:0!important;font-size:12px!important;color:#d9cab7!important;line-height:1.4!important;}
/* FAQ dropdown without external JS: native details and summary. */
body .site-footer .hokie-faq-list {display:flex!important;flex-direction:column!important;gap:10px!important;}
body .site-footer details.hokie-faq-item {margin:0!important;padding:0!important;min-width:0!important;background:rgba(11,11,13,.56)!important;border:1px solid rgba(218,178,112,.25)!important;border-radius:12px!important;overflow:hidden!important;transition:border-color .2s,background-color .2s!important;}
body .site-footer details.hokie-faq-item[open] {border-color:rgba(244,203,134,.76)!important;background:rgba(33,27,25,.8)!important;}
body .site-footer details.hokie-faq-item > summary {display:grid!important;grid-template-columns:32px minmax(0,1fr) 22px!important;align-items:center!important;gap:11px!important;list-style:none!important;min-height:62px!important;cursor:pointer!important;padding:12px 13px!important;color:#fff0d4!important;}
body .site-footer details.hokie-faq-item > summary::-webkit-details-marker {display:none!important;}
body .site-footer details.hokie-faq-item > summary::marker {content:''!important;}
body .site-footer .hokie-faq-number {display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:30px!important;border-radius:9px!important;background:rgba(218,178,112,.16)!important;color:#f9d999!important;font-size:12px!important;font-weight:900!important;}
body .site-footer .hokie-faq-question {font-size:clamp(13px,1.15vw,15px)!important;line-height:1.55!important;font-weight:700!important;color:#fff1d9!important;}
body .site-footer details.hokie-faq-item > summary svg {width:21px!important;height:21px!important;color:#ecc889!important;transition:transform .25s!important;}
body .site-footer details.hokie-faq-item[open] > summary svg {transform:rotate(180deg)!important;}
body .site-footer details.hokie-faq-item > summary:focus-visible {outline:2px solid #fff1be!important;outline-offset:-4px!important;border-radius:12px!important;}
body .site-footer .hokie-faq-answer {padding:0 17px 17px 56px!important;}
body .site-footer .hokie-faq-answer p {margin:0!important;color:#dacebf!important;font-size:14px!important;line-height:1.75!important;overflow-wrap:anywhere!important;}
/* Review carousel. Exactly one slide shown at any time; JS loops 1-6-1. */
body .site-footer .hokie-review-carousel {display:flex!important;flex-direction:column!important;min-width:0!important;height:calc(100% - 89px)!important;}
body .site-footer .hokie-review-viewport {display:grid!important;place-items:stretch!important;flex:1 1 auto!important;min-height:230px!important;}
body .site-footer .hokie-review-slide {align-self:stretch!important;min-width:0!important;width:100%!important;margin:0!important;padding:20px!important;border-radius:13px!important;border:1px solid rgba(218,178,112,.27)!important;background:linear-gradient(150deg,rgba(17,17,19,.93),rgba(48,35,33,.89))!important;color:#f5ebdc!important;animation:hokie-review-appear .3s ease both!important;}
body .site-footer .hokie-review-slide[hidden] {display:none!important;}
@keyframes hokie-review-appear {from{opacity:.18;transform:translateX(12px)}to{opacity:1;transform:translateX(0)}}
body .site-footer .hokie-review-date {display:flex!important;align-items:center!important;gap:9px!important;margin:0 0 16px!important;font-size:13px!important;font-weight:700!important;color:#e6c28a!important;}
body .site-footer .hokie-review-date svg {color:#deb980!important;flex:none!important;}
body .site-footer .hokie-review-person {margin:0 0 12px!important;color:#ffebc4!important;font-weight:900!important;font-size:19px!important;line-height:1.4!important;}
body .site-footer .hokie-review-person span {font-weight:600!important;color:#dec5a4!important;font-size:15px!important;}
body .site-footer .hokie-review-stars {display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:1px!important;margin:0 0 16px!important;font-size:22px!important;line-height:1.1!important;letter-spacing:2px!important;}
body .site-footer .hokie-stars-on {color:#f5c770!important;text-shadow:0 0 7px rgba(239,181,87,.28)!important;}
body .site-footer .hokie-stars-off {color:#6c6056!important;}
body .site-footer .hokie-review-score {margin-left:11px!important;font-size:13px!important;letter-spacing:0!important;color:#d8c9b7!important;font-weight:800!important;}
body .site-footer .hokie-review-text {margin:0 0 17px!important;font-size:15px!important;line-height:1.8!important;color:#f0e5d9!important;overflow-wrap:anywhere!important;}
body .site-footer .hokie-review-example {display:inline-block!important;color:#b8a38c!important;font-size:11px!important;line-height:1.45!important;}
body .site-footer .hokie-review-nav {display:flex!important;align-items:center!important;justify-content:center!important;gap:16px!important;margin:18px auto 12px!important;}
body .site-footer .hokie-review-arrow {display:grid!important;place-items:center!important;width:39px!important;height:39px!important;padding:8px!important;border:1px solid #af8b56!important;border-radius:11px!important;background:#302724!important;color:#ffe2ad!important;cursor:pointer!important;transition:background .2s,transform .2s!important;}
body .site-footer .hokie-review-arrow:hover {background:#5e4631!important;transform:translateY(-2px)!important;}
body .site-footer .hokie-review-arrow svg {width:21px!important;height:21px!important;}
body .site-footer .hokie-review-counter {min-width:70px!important;text-align:center!important;font-variant-numeric:tabular-nums!important;font-weight:900!important;letter-spacing:1px!important;font-size:17px!important;color:#f8d79e!important;}
body .site-footer .hokie-review-counter span {color:#b1a294!important;font-size:14px!important;font-weight:700!important;}
body .site-footer .hokie-review-dots {display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;margin:0 auto 12px!important;}
body .site-footer .hokie-review-dot {appearance:none!important;width:9px!important;height:9px!important;padding:0!important;border:0!important;border-radius:99px!important;background:#756049!important;cursor:pointer!important;transition:background .2s,width .2s!important;}
body .site-footer .hokie-review-dot.is-active {width:25px!important;background:#f0c77d!important;}
body .site-footer .hokie-review-arrow:focus-visible,
body .site-footer .hokie-review-dot:focus-visible {outline:2px solid #ffe6ba!important;outline-offset:3px!important;}
body .site-footer .hokie-review-disclaimer {margin:auto 0 0!important;font-size:11px!important;line-height:1.5!important;color:#a89c8f!important;text-align:center!important;}

@media (max-width:900px) {
  body .site-footer .hokie-community-grid {grid-template-columns:minmax(0,1fr)!important;gap:18px!important;}
  body .site-footer .hokie-review-carousel {height:auto!important;}
  body .site-footer .hokie-review-viewport {min-height:230px!important;}
}
@media (max-width:480px) {
  body .site-footer .hokie-community-section {margin:24px auto 26px!important;}
  body .site-footer .hokie-community-panel {padding:13px!important;border-radius:15px!important;}
  body .site-footer .hokie-community-panel-head {gap:10px!important;}
  body .site-footer .hokie-faq-question {font-size:13px!important;}
  body .site-footer .hokie-faq-answer {padding:0 13px 14px 14px!important;}
  body .site-footer .hokie-faq-answer p {font-size:13px!important;}
  body .site-footer .hokie-review-slide {padding:15px!important;}
  body .site-footer .hokie-review-person {font-size:17px!important;}
  body .site-footer .hokie-review-text {font-size:14px!important;}
}
@media (prefers-reduced-motion:reduce) {
  body .site-footer .hokie-review-slide {animation:none!important;}
  body .site-footer details.hokie-faq-item > summary svg,
  body .site-footer .hokie-review-arrow,
  body .site-footer .hokie-review-dot {transition:none!important;}
}
