/* 
Name: Pixino
Author Name: Fullsky
Author URL: https://www.templatemonster.com/authors/fullsky/
Version: 2.23

/////////////////////

--------------------*
Table of Contents 
--------------------*

1.0 Reset
  1.1 Basic Reset
  1.2 Custom Reset
2.0 Header
  2.1 Navbar
  2.2 Home
3 Section1 
4 About
5 Game
6 Call
7 Faq
8 Price
9 Contact
10 Winner Table

/////////////////////


*/


/* 1.0 Reset */

:root {
  --body: #ffffff;
  --color: #002FB0;
  --bg: #002FB0;
  --bg2: #0F1933;
  --bg-body: #f9f9f9;
  --bg-white: #deeafd;
  --bg-dark: rgba(15, 25, 51, 0.50);
  --heading: #ffffff;
  --text-muted: #a8b0b5;
  --border: #dbdbdb;
}

/* 1.1 Basic Reset */

body {
  margin: 0;
  padding: 0;
  font-size: 16px;
  font-weight: 400;
  font-family: 'Poppins', sans-serif;
  overflow-x: hidden !important;
  color: var(--body);
  background-color: #000616;
}

/* 1.2 Custom Reset */

a {
  color: var(--heading);
  text-decoration: none;
  transition: color .3s ease-in-out;
  -moz-transition: color .3s ease-in-out;
  -ms-transition: color .3s ease-in-out;
  -o-transition: color .3s ease-in-out;
  -webkit-transition: color .3s ease-in-out;
}

a:hover,
a:focus {
  color: var(--color);
  text-decoration: none;
  outline: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.375;
  font-weight: 500;
  color: var(--heading);
}

h1 {
  font-size: 3.25rem;
  font-weight: 600;
  line-height: 1.25;
}

h2 {
  font-size: 2.25rem;
}

h3 {
  font-size: 1.875rem;
}

h4 {
  font-size: 1.5rem;
}

h5 {
  font-size: 1.25rem;
}

h6 {
  font-size: 1rem;
}

p {
  font-size: 1rem;
  line-height: 1.6;
  color: var(--text-muted) !important;
}

.btn {
  background-color: var(--color);
  font-weight: 500;
  padding: 12px 26px;
  border: none;
  color: white;
  border-radius: 25px;
  transition: all .15s linear;
  -webkit-transition: all .15s linear;
  -moz-transition: all .15s linear;
  -ms-transition: all .15s linear;
  -o-transition: all .15s linear;
  -webkit-border-radius: 25px;
  -moz-border-radius: 25px;
  -ms-border-radius: 25px;
  -o-border-radius: 25px;
}

.btn.btn-primary {
  background-color: var(--color);
}

.btn.btn-secondary {
  background-color: #6c757d;
}

.btn.btn-success {
  background-color: #4caf4f;
}

.btn.btn-danger {
  background-color: #e73f3b;
}

.btn.btn-warning {
  background-color: #fc930a;
}

.btn.btn-info {
  background-color: #d9dee4;
}

.btn.btn-dark {
  background-color: #28282a;
}

.btn.btn-light {
  background-color: #e6e6e6;
  color: var(--body);
}

.btn.btn-outline-primary {
  border: 1px solid var(--color);
  background-color: transparent;
  color: var(--body);
}

.btn.btn-outline-secondary {
  border: 1px solid #6c757d;
  background-color: transparent;
  color: var(--body);
}

.btn.btn-outline-success {
  border: 1px solid #4caf4f;
  background-color: transparent;
  color: var(--body);
}

.btn.btn-outline-danger {
  border: 1px solid #e73f3b;
  background-color: transparent;
  color: var(--body);
}

.btn.btn-outline-warning {
  border: 1px solid #fc930a;
  background-color: transparent;
  color: var(--body);
}

.btn.btn-outline-info {
  border: 1px solid #d9dee4;
  background-color: transparent;
  color: var(--body);
}

.btn.btn-outline-light {
  border: 1px solid #e6e6e6;
  background-color: transparent;
  color: var(--body);
}

.btn.btn-outline-dark {
  border: 1px solid #28282a;
  background-color: transparent;
  color: var(--body);
}

.btn.btn-outline-primary:hover {
  background-color: var(--color);
}

.btn.btn-outline-secondary:hover {
  background-color: #6c757d;
}

.btn.btn-outline-success:hover {
  background-color: #4caf4f;
}

.btn.btn-outline-danger:hover {
  background-color: #e73f3b;
}

.btn.btn-outline-warning:hover {
  background-color: #fc930a;
}

.btn.btn-outline-info:hover {
  background-color: #d9dee4;
}

.btn.btn-outline-dark:hover {
  background-color: #28282a;
}

.btn.btn-outline-light:hover {
  background-color: #e6e6e6;
}

.btn.btn-sm {
  padding: 8px 14px;
  font-size: 12px;
}

.btn.btn-lg {
  padding: 10px 26px;
}

.btn:hover,
.btn:focus {
  background-color: var(--bg2);
  color: white;
  box-shadow: 10px 10px 0 0 inherit;
}

img {
  height: auto;
  width: 100%;
}

ul {
  padding: 0;
  margin: 0;
}

ul>li {
  list-style: none;
  line-height: 1.6;
}

.bg-white {
  background-color: var(--bg-white);
}

.bg-dark {
  background-color: var(--bg-dark) !important;
}

.bg-color {
  background-color: var(--bg) !important;
}

.home-wrapper {
  padding: 120px 0;
  position: relative;
}

.home-wrapper-full {
  height: 100%;
  background-size: cover;
  background-position: center center;
  position: relative;
}

.bg-overlay {
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.bg-image {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.home-center {
  position: relative;
  display: table;
  width: 100%;
  height: 100%;
}

.home-center-desc {
  display: table-cell;
  vertical-align: middle;
}

.opa {
  position: relative;
  z-index: 1;
}

.justify-vertical {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
}

.no-gutter>.col,
.no-gutter>[class*="col-"] {
  padding-right: 0;
  padding-left: 0;
  margin-left: 0;
  margin-right: 0;
}

.color {
  color: var(--color);
}

.full-vh-75 {
  height: 75vh;
}

@media only screen and (max-width: 767.98px) {
  .section-title p {
    width: 100%;
  }
}

@media only screen and (min-width: 997.98px) {
  .section-title p {
    width: 50%;
  }
}

/* Some Margin - Padding Custom */

/* margin Top */

.mt-60 {
  margin-top: 60px !important;
}

.mt-80 {
  margin-top: 80px !important;
}

.mt-100 {
  margin-top: 100px !important;
}

.mt-110 {
  margin-top: 110px !important;
}

.mt-120 {
  margin-top: 120px !important;
}

.mb-60 {
  margin-bottom: 60px !important;
}

.mb-80 {
  margin-bottom: 80px !important;
}

.mb-100 {
  margin-bottom: 100px !important;
}

.mb-110 {
  margin-bottom: 110px !important;
}

.mb-120 {
  margin-bottom: 120px !important;
}

/* padding */

.pt-60 {
  padding-top: 60px !important;
}

.pt-80 {
  padding-top: 80px !important;
}

.pt-100 {
  padding-top: 100px !important;
}

.pt-110 {
  padding-top: 110px !important;
}

.pt-120 {
  padding-top: 120px !important;
}

.pb-60 {
  padding-bottom: 60px !important;
}

.pb-80 {
  padding-bottom: 80px !important;
}

.pb-100 {
  padding-bottom: 100px !important;
}

.pb-110 {
  padding-bottom: 110px !important;
}

.pb-120 {
  padding-bottom: 120px !important;
}

/* 1.0 Reset end */

/* 2.0 Header */

/* 2.1 Navbar */

.navbar {
  background-color: transparent;
}

.navbar .navbar-brand {
  font-size: 42px;
  font-weight: 600;
  color: white;
}

.navbar-custom .navbar-brand img {
  width: 150px;
  height: 50px;
}

.navbar-custom .navbar-brand:hover {
  color: var(--bg);
}

.navbar-brand.logo .logo-dark {
  display: none;
}

.navbar-brand.logo .logo-light {
  display: inline-block;
}

.navbar .nav-item .nav-link {
  color: white;
  margin-left: 5px;
  font-weight: 400;
}

.navbar .nav-link.active,
.navbar .nav-item .nav-link:hover,
.navbar .nav-item .nav-link:focus {
  color: #002FB0 !important;
}

.sticky {
  margin-top: 0;
  padding: 0 10px;
  background-color: #000616;
  transition: all .5s ease-in-out;
  -webkit-transition: all .5s ease-in-out;
  -moz-transition: all .5s ease-in-out;
  -ms-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  box-shadow: 0 0 5px rgba(255, 255, 255, 0.2);
}

.sticky .nav-link.active,
.sticky .nav-item .nav-link:hover,
.sticky .nav-item .nav-link:focus {
  color: var(--bg);
}

.sticky .navbar-brand {
  color: white;
}

.sticky .navbar-brand.logo .logo-dark {
  display: inline-block;
}

.sticky .navbar-brand.logo .logo-light {
  display: none;
}

@media only screen and (max-width: 997.98px) {
  .navbar {
    background-color: #002FB0;
    box-shadow: 0 0 5px rgba(255, 255, 255, 0.2);
    padding: 0 10px;
  }
  
  .navbar .nav-link.active,
  .navbar .nav-item .nav-link:hover,
  .navbar .nav-item .nav-link:focus {
    color: #fff !important;
    opacity: .5;
  }

  .sticky .nav-link.active,
  .sticky .nav-item .nav-link:hover,
  .sticky .nav-item .nav-link:focus {
    color: #ffffff !important;
    opacity: .5;
  }
}

/* 2.2 Home */

.hero {
  background-image: url(../img/bg.webp);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.home-wrapper-full .bg-overlay {
  background: rgba(0, 0, 0, 0.7);
}

.home-wrapper-full .carousel-item {
  padding: 120px 0;
  background-position: center center;
  background-size: cover;
  position: relative;
}

.carousel-control-next,
.carousel-control-prev {
  width: 5%;
  opacity: 1;
}

.carousel-indicators [data-bs-target] {
  width: 12px;
  height: 12px;
  margin-bottom: 2.5rem;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

/* 3 Section 1 */

.sec-1 .section-item1 {
  margin-bottom: 30px;
}

.sec-1 i {
  font-size: 42px;
  margin-bottom: 20px;
}

/* 4 About */

/* 5 Game */

.game .filtering {
  margin: 20px 0 40px;
}

.game .filtering span {
  padding: 10px 20px;
  margin: 10px;
  color: #ffffff;
  background-color: var(--bg);
  cursor: pointer;
  display: inline-block;
  border-radius: 50px;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  -ms-border-radius: 50px;
  -o-border-radius: 50px;
  transition: all .5s ease-in-out;
  -webkit-transition: all .5s ease-in-out;
  -moz-transition: all .5s ease-in-out;
  -ms-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
}

.game .filtering span:hover {
  background-color: var(--bg2);
  color: white;
  cursor: pointer;
}

.game .filtering span.active {
  background-color: var(--bg2);
  color: white;
  cursor: pointer;
}

.game .grid {
  position: relative;
  padding: 0;
  margin: 0;
}

.game .grid img {
  min-height: 300px;
  height: auto;
}

.game .grid .overlay {
  position: absolute;
  opacity: 0;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  transition: all .5s ease-in-out;
  -webkit-transition: all .5s ease-in-out;
  -moz-transition: all .5s ease-in-out;
  -ms-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
}

.game .grid .overlay:hover {
  opacity: 1;
}

.game .grid .overlay-item {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  text-align: center;
}

.game .grid .overlay-item i {
  font-size: 32px;
  margin-bottom: 20px;
}

/* 6 call */

.call-counter h2 {
  font-size: 72px;
}

@media only screen and (max-width: 767.98px) {
  .call-counter h2 {
    font-size: calc(100% + 8vw);
  }
}

/* 7 Faq */

.faq .accordion-item {
  margin-bottom: 20px;
}

.faq .accordion-button:not(.collapsed) {
  color: var(--bg);
}

.faq .accordion-item:hover {
  box-shadow: none;
}

/* 8 Price */

.price .nav-tabs {
  border: none;
}

.price .nav-tabs button {
  background-color: var(--bg2);
  color: #ffffff;
}

.price .nav-tabs button.active {
  background-color: var(--bg);
  color: #ffffff;
  border: none;
}

.price .nav-tabs .nav-link {
  border: none;
}

.price-item {
  padding: 40px 26px;
  transition: all .5s ease-in-out;
  -webkit-transition: all .5s ease-in-out;
  -moz-transition: all .5s ease-in-out;
  -ms-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
}

.price-item h6 {
  font-size: 24px;
}

.price-item h3 {
  font-size: 42px;
}

.price-item ul li {
  margin: 10px 0;
}

.price-item:hover {
  box-shadow: 0 0 10px 5px rgba(15, 25, 51, 0.50);
}

/* 9 Contact */

.contact-form .form-control,
.contact-form .form-control::placeholder {
  color: rgb(199, 199, 199);
}

.contact-form input {
  margin: 10px 0;
  line-height: 34px;
}

.contact-form textarea {
  margin: 10px 0;
}

.contact-form input,
.contact-form textarea {
  box-shadow: none;
  background-color: #000616;
  border: none;
  color: #ffffff;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.contact-form input:hover,
.contact-form input:focus,
.contact-form textarea:hover,
.contact-form textarea:focus {
  box-shadow: none;
  border: none;
  background-color: #000616;
}

.contact-content li {
  display: flex;
  align-items: center;
  margin-bottom: 50px;
}

.contact-content i {
  font-size: 38px;
  margin-right: 20px;
}

/* 10 Winner Table */

.winner-item table {
  border-spacing: 10px 0;
}

.winner-item table thead .title {
  background-color: transparent;
  background: #002fb0;
}

.table>:not(caption)>*>* {
  padding: 1rem;
  background-color: rgba(15, 25, 51, 0.50);
  color: #ffffff;
  border: none;
}

.table tbody tr {
  margin-bottom: 20px;
}

.table-hover>tbody>tr {
  margin-bottom: 20px;
  transition: all .5s ease-in-out;
  -webkit-transition: all .5s ease-in-out;
  -moz-transition: all .5s ease-in-out;
  -ms-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
}

.table-hover>tbody>tr:hover>* {
  --bs-table-accent-bg: #000616;
  color: #ffffff;
  cursor: pointer;
  transition: all .5s ease-in-out;
  -webkit-transition: all .5s ease-in-out;
  -moz-transition: all .5s ease-in-out;
  -ms-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
}

/* Floating animation */
.hero-img {
  animation: float 4s ease-in-out infinite;
}

@keyframes float {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-15px);
  }
  100% {
    transform: translateY(0px);
  }
}

/* ===== HERO PREMIUM SECTION ===== */

.hero {
  position: relative;
  overflow: hidden;
}

.hero-row {
  position: relative;
  z-index: 2;
}

.hero .bg-overlay {
  background:
    linear-gradient(90deg, rgba(2, 8, 24, 0.78) 0%, rgba(2, 8, 24, 0.58) 38%, rgba(2, 8, 24, 0.28) 100%);
}

.hero-content-box {
  max-width: 720px;
  padding: 38px 36px;
  border-radius: 28px;
  background: rgba(7, 14, 30, 0.34);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow:
    0 14px 44px rgba(0, 0, 0, 0.30),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.hero-badge {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 18px;
  margin-bottom: 26px;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(0, 47, 176, 0.96), rgba(24, 88, 255, 0.90));
  color: #ffffff;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.2px;
  box-shadow: 0 10px 24px rgba(0, 47, 176, 0.30);
  overflow: hidden;
}

.hero-badge::after {
  content: "";
  position: absolute;
  top: 0;
  left: -130%;
  width: 60%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.22), transparent);
  transform: skewX(-20deg);
  animation: badgeShine 4.5s linear infinite;
}

@keyframes badgeShine {
  0% {
    left: -130%;
  }
  100% {
    left: 160%;
  }
}

.hero-title {
  margin-bottom: 24px;
  color: #ffffff;
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.04;
  letter-spacing: -1.6px;
  max-width: 680px;
}

.hero-title span {
  display: block;
}

.hero-text {
  margin-bottom: 24px;
  max-width: 620px;
  color: rgba(255, 255, 255, 0.80) !important;
  font-size: 1.12rem;
  line-height: 1.75;
}

.hero-trust {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 22px;
  margin-bottom: 26px;
}

.hero-trust span {
  display: inline-flex;
  align-items: center;
  color: rgba(255, 255, 255, 0.82);
  font-size: 0.98rem;
  font-weight: 500;
}

.hero-trust i {
  color: #ffc107;
}

.hero-offer {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 22px;
  margin-bottom: 30px;
  border-radius: 16px;
  background: rgba(255, 193, 7, 0.08);
  border: 1px solid rgba(255, 193, 7, 0.92);
  color: #ffc107;
  font-size: 1.05rem;
  font-weight: 700;
  box-shadow:
    0 0 0 1px rgba(255, 193, 7, 0.08),
    0 10px 24px rgba(255, 193, 7, 0.10);
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
}

.hero-btn-primary {
  min-width: 210px;
  padding: 15px 30px;
  font-size: 1.06rem;
  font-weight: 600;
  border-radius: 999px;
  box-shadow: 0 10px 24px rgba(0, 47, 176, 0.32);
}

.hero-btn-secondary {
  min-width: 190px;
  padding: 15px 30px;
  font-size: 1.06rem;
  font-weight: 600;
  border-radius: 999px;
  border-width: 1.5px;
  background: rgba(255, 255, 255, 0.03);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

.hero-actions .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: all 0.25s ease;
}

.hero-actions .btn:hover {
  transform: translateY(-2px);
}

.hero-actions .btn i {
  transition: transform 0.25s ease;
}

.hero-actions .btn:hover i {
  transform: translateX(2px);
}

/* Hero image */
.hero-img {
  position: relative;
  text-align: center;
  animation: heroFloat 4.5s ease-in-out infinite;
}

.hero-img img {
  max-width: 100%;
  height: auto;
  filter: drop-shadow(0 0 24px rgba(255, 193, 7, 0.22));
  transition: filter 0.3s ease;
}

.hero-img:hover img {
  filter: drop-shadow(0 0 36px rgba(255, 193, 7, 0.38));
}

@keyframes heroFloat {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-14px);
  }
  100% {
    transform: translateY(0px);
  }
}

/* Responsive */
@media only screen and (max-width: 1199.98px) {
  .hero-title {
    font-size: 3.4rem;
  }
}

@media only screen and (max-width: 991.98px) {
  .hero-content-box {
    padding: 28px 22px;
    margin-bottom: 20px;
  }

  .hero-title {
    font-size: 2.7rem;
    line-height: 1.1;
    letter-spacing: -1px;
  }

  .hero-text {
    font-size: 1rem;
    line-height: 1.7;
  }

  .hero-offer {
    font-size: 0.98rem;
    width: 100%;
    justify-content: center;
    text-align: center;
  }

  .hero-actions {
    gap: 12px;
  }

  .hero-btn-primary,
  .hero-btn-secondary {
    min-width: 100%;
  }

  .hero-img {
    margin-top: 20px;
  }
}

@media only screen and (max-width: 575.98px) {
  .hero-content-box {
    padding: 24px 18px;
    border-radius: 22px;
  }

  .hero-badge {
    font-size: 13px;
    padding: 10px 14px;
  }

  .hero-title {
    font-size: 2.2rem;
  }

  .hero-trust {
    gap: 10px 14px;
  }

  .hero-trust span {
    font-size: 0.9rem;
  }

  .hero-offer {
    padding: 12px 16px;
    font-size: 0.92rem;
  }
}

/* ===== STEPS / GET STARTED SECTION ===== */

.steps-section {
  position: relative;
  background:
    radial-gradient(circle at top center, rgba(255, 193, 7, 0.08), transparent 30%),
    linear-gradient(180deg, rgba(8, 14, 28, 0.96) 0%, rgba(5, 10, 22, 1) 100%);
  overflow: hidden;
}

.steps-shell {
  position: relative;
  padding: 44px 38px 48px;
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.03);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(255, 255, 255, 0.07);
  box-shadow:
    0 18px 60px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.steps-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border-radius: 999px;
  background: rgba(0, 47, 176, 0.16);
  border: 1px solid rgba(72, 123, 255, 0.28);
  color: #dbe7ff;
  font-size: 0.92rem;
  font-weight: 600;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.steps-section .section-title h2 {
  font-size: 3rem;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -1.2px;
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}

.steps-intro {
  max-width: 760px;
  margin-top: 18px;
  color: rgba(255, 255, 255, 0.74) !important;
  font-size: 1.08rem;
  line-height: 1.8;
}

.steps-bonus-banner {
  margin: 36px 0 34px;
}

.steps-bonus-inner {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
  padding: 18px 30px;
  border-radius: 20px;
  background:
    linear-gradient(135deg, rgba(255, 193, 7, 0.12), rgba(255, 193, 7, 0.04));
  border: 1px solid rgba(255, 193, 7, 0.9);
  box-shadow:
    0 0 0 1px rgba(255, 193, 7, 0.08),
    0 12px 30px rgba(255, 193, 7, 0.10);
}

.steps-bonus-label {
  color: #ffc107;
  font-size: 1.02rem;
  font-weight: 700;
}

.steps-bonus-value {
  color: #ffffff;
  font-size: 1.12rem;
  font-weight: 700;
  letter-spacing: 0.2px;
}

.steps-grid {
  margin-top: 10px;
}

.steps-card {
  position: relative;
  height: 100%;
  padding: 34px 28px 30px;
  text-align: center;
  border-radius: 26px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.02) 100%);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow:
    0 14px 34px rgba(0, 0, 0, 0.20),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
  transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
  overflow: hidden;
}

.steps-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(255, 193, 7, 0.05), transparent 45%);
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.steps-card:hover {
  transform: translateY(-8px);
  border-color: rgba(255, 193, 7, 0.45);
  box-shadow:
    0 18px 42px rgba(0, 0, 0, 0.28),
    0 0 0 1px rgba(255, 193, 7, 0.08);
}

.steps-card:hover::before {
  opacity: 1;
}

.steps-number {
  position: absolute;
  top: 18px;
  right: 20px;
  color: rgba(255, 255, 255, 0.12);
  font-size: 2.1rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -1px;
}

.steps-icon {
  width: 78px;
  height: 78px;
  margin: 0 auto 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 22px;
  background:
    linear-gradient(135deg, rgba(255, 193, 7, 0.18), rgba(255, 193, 7, 0.06));
  border: 1px solid rgba(255, 193, 7, 0.28);
  box-shadow: 0 12px 24px rgba(255, 193, 7, 0.08);
}

.steps-icon i {
  color: #ffc107;
  font-size: 2rem;
}

.steps-card-title {
  margin-bottom: 16px;
  color: #ffffff;
  font-size: 1.45rem;
  font-weight: 600;
}

.steps-card-text {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 1rem;
  line-height: 1.75;
}

.steps-actions {
  margin-top: 38px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
}

.steps-btn-primary,
.steps-btn-secondary {
  min-width: 220px;
  padding: 15px 30px;
  font-size: 1.02rem;
  font-weight: 600;
  border-radius: 999px;
}

.steps-btn-primary {
  box-shadow: 0 12px 28px rgba(0, 47, 176, 0.26);
}

.steps-btn-secondary {
  border-width: 1.5px;
  background: rgba(255, 255, 255, 0.03);
}

.steps-actions .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: all 0.25s ease;
}

.steps-actions .btn:hover {
  transform: translateY(-2px);
}

.steps-actions .btn i {
  transition: transform 0.25s ease;
}

.steps-actions .btn:hover i {
  transform: translateX(2px);
}

/* Responsive */
@media only screen and (max-width: 991.98px) {
  .steps-shell {
    padding: 34px 22px 38px;
  }

  .steps-section .section-title h2 {
    font-size: 2.35rem;
  }

  .steps-intro {
    font-size: 1rem;
  }

  .steps-bonus-inner {
    padding: 16px 18px;
  }

  .steps-bonus-value {
    font-size: 1rem;
  }
}

@media only screen and (max-width: 767.98px) {
  .steps-section .section-title h2 {
    font-size: 2rem;
    line-height: 1.15;
  }

  .steps-card {
    padding: 30px 22px 26px;
  }

  .steps-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .steps-btn-primary,
  .steps-btn-secondary {
    width: 100%;
    min-width: 100%;
  }
}

@media only screen and (max-width: 575.98px) {
  .steps-shell {
    padding: 28px 16px 30px;
    border-radius: 22px;
  }

  .steps-kicker {
    font-size: 0.8rem;
    padding: 9px 14px;
  }

  .steps-section .section-title h2 {
    font-size: 1.8rem;
  }

  .steps-bonus-label,
  .steps-bonus-value {
    width: 100%;
    text-align: center;
  }

  .steps-icon {
    width: 70px;
    height: 70px;
  }

  .steps-icon i {
    font-size: 1.8rem;
  }

  .steps-card-title {
    font-size: 1.28rem;
  }
}

/* ===== POPULAR GAMES / SHOWCASE SECTION ===== */

.games-showcase {
  position: relative;
  background:
    radial-gradient(circle at top center, rgba(0, 47, 176, 0.10), transparent 28%),
    linear-gradient(180deg, rgba(7, 12, 24, 0.98) 0%, rgba(4, 8, 18, 1) 100%);
  overflow: hidden;
}

.games-showcase-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border-radius: 999px;
  background: rgba(0, 47, 176, 0.16);
  border: 1px solid rgba(72, 123, 255, 0.26);
  color: #dbe7ff;
  font-size: 0.92rem;
  font-weight: 600;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.games-showcase .section-title h2 {
  font-size: 3rem;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -1.2px;
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}

.games-showcase-intro {
  max-width: 760px;
  margin-top: 18px;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 1.06rem;
  line-height: 1.8;
}

.game-card {
  position: relative;
  overflow: hidden;
  border-radius: 22px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.02) 100%);
  border: 1px solid rgba(255, 255, 255, 0.07);
  box-shadow:
    0 14px 30px rgba(0, 0, 0, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
  cursor: pointer;
}

.game-card:hover {
  transform: translateY(-8px);
  border-color: rgba(255, 193, 7, 0.35);
  box-shadow:
    0 18px 38px rgba(0, 0, 0, 0.30),
    0 0 0 1px rgba(255, 193, 7, 0.07);
}

.game-card img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.45s ease;
}

.game-card:hover img {
  transform: scale(1.06);
}

.game-card-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background:
    linear-gradient(180deg, rgba(5, 10, 22, 0.15) 0%, rgba(5, 10, 22, 0.78) 100%);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.game-card:hover .game-card-overlay {
  opacity: 1;
}

.game-card-btn {
  min-width: 120px;
  padding: 9px 18px;
  border-radius: 999px;
  background-color: #ffc107;
  color: #000000;
  font-weight: 700;
  font-size: 0.9rem;
  box-shadow: 0 10px 20px rgba(255, 193, 7, 0.18);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.game-card-btn:hover {
  color: #000000;
  transform: translateY(-2px);
  box-shadow: 0 14px 24px rgba(255, 193, 7, 0.24);
}

/* Responsive */
@media only screen and (max-width: 991.98px) {
  .games-showcase .section-title h2 {
    font-size: 2.35rem;
  }

  .games-showcase-intro {
    font-size: 1rem;
  }

  .game-card {
    border-radius: 18px;
  }
}

@media only screen and (max-width: 767.98px) {
  .games-showcase .section-title h2 {
    font-size: 2rem;
    line-height: 1.15;
  }
}

@media only screen and (max-width: 575.98px) {
  .games-showcase-kicker {
    font-size: 0.8rem;
    padding: 9px 14px;
  }

  .games-showcase .section-title h2 {
    font-size: 1.8rem;
  }

  .games-showcase-intro {
    font-size: 0.96rem;
    line-height: 1.7;
  }

  .game-card-btn {
    min-width: 110px;
    padding: 8px 16px;
    font-size: 0.85rem;
  }
}

/* ===== ABOUT SECTION ===== */

.about-section {
  position: relative;
  background:
    radial-gradient(circle at top left, rgba(255, 193, 7, 0.08), transparent 24%),
    radial-gradient(circle at bottom right, rgba(0, 47, 176, 0.10), transparent 28%),
    linear-gradient(180deg, rgba(7, 12, 24, 0.98) 0%, rgba(4, 8, 18, 1) 100%);
  overflow: hidden;
}

.about-shell {
  position: relative;
  padding: 42px 38px;
  border-radius: 32px;
  background: rgba(255, 255, 255, 0.028);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(255, 255, 255, 0.07);
  box-shadow:
    0 18px 60px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

/* Left side */
.about-side {
  display: flex;
  flex-direction: column;
  gap: 22px;
}

.about-media {
  position: relative;
  max-width: 560px;
  margin: 0 auto 0 0;
}

.about-media-glow {
  position: absolute;
  inset: 8% 10% auto 10%;
  height: 78%;
  border-radius: 30px;
  background: radial-gradient(circle, rgba(255, 193, 7, 0.16) 0%, transparent 70%);
  filter: blur(24px);
  z-index: 1;
  pointer-events: none;
}

.about-media-frame {
  position: relative;
  z-index: 2;
  overflow: hidden;
  border-radius: 28px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.02) 100%);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow:
    0 18px 40px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.about-media-frame img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.45s ease;
}

.about-media:hover .about-media-frame img {
  transform: scale(1.04);
}

.about-floating-badge {
  position: absolute;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  border-radius: 16px;
  font-size: 0.92rem;
  font-weight: 600;
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.22);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.about-floating-badge-primary {
  top: 18px;
  left: -8px;
  background: rgba(5, 14, 34, 0.82);
  border: 1px solid rgba(255, 193, 7, 0.40);
  color: #ffffff;
}

.about-floating-badge-primary i {
  color: #ffc107;
}

.about-floating-badge-secondary {
  right: -10px;
  bottom: 18px;
  background: rgba(5, 14, 34, 0.84);
  border: 1px solid rgba(72, 123, 255, 0.34);
  color: #dbe7ff;
}

.about-floating-badge-secondary i {
  color: #78a6ff;
}

.about-side-card {
  padding: 22px 22px;
  border-radius: 24px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.02) 100%);
  border: 1px solid rgba(255, 255, 255, 0.07);
  box-shadow:
    0 14px 34px rgba(0, 0, 0, 0.20),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.about-side-label {
  display: inline-block;
  margin-bottom: 12px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255, 193, 7, 0.10);
  border: 1px solid rgba(255, 193, 7, 0.24);
  color: #ffc107;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.about-side-title {
  margin-bottom: 12px;
  color: #ffffff;
  font-size: 1.35rem;
  line-height: 1.35;
  font-weight: 600;
}

.about-side-text {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.74) !important;
  font-size: 0.98rem;
  line-height: 1.75;
}

.about-stats-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.about-stat-box {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 18px 16px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.about-stat-icon {
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: rgba(255, 193, 7, 0.12);
  color: #ffc107;
  font-size: 1rem;
}

.about-stat-content {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.about-stat-title {
  color: rgba(255, 255, 255, 0.58);
  font-size: 0.82rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

.about-stat-text {
  color: #ffffff;
  font-size: 0.96rem;
  font-weight: 600;
  line-height: 1.45;
}

/* Right content */
.about-content {
  position: relative;
  padding-top: 6px;
}

.about-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border-radius: 999px;
  background: rgba(0, 47, 176, 0.16);
  border: 1px solid rgba(72, 123, 255, 0.26);
  color: #dbe7ff;
  font-size: 0.92rem;
  font-weight: 600;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.about-title {
  margin-top: 22px;
  margin-bottom: 20px;
  color: #ffffff;
  font-size: 3.05rem;
  line-height: 1.06;
  font-weight: 700;
  letter-spacing: -1.4px;
}

.about-title span {
  display: block;
}

.about-lead {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.82) !important;
  font-size: 1.06rem;
  line-height: 1.9;
}

.about-divider {
  width: 110px;
  height: 2px;
  margin: 28px 0 26px;
  background: linear-gradient(90deg, #ffc107 0%, rgba(255, 193, 7, 0.10) 100%);
  border-radius: 999px;
}

.about-subtitle {
  margin-bottom: 16px;
  color: #ffffff;
  font-size: 1.68rem;
  line-height: 1.25;
  font-weight: 600;
}

.about-text {
  margin-bottom: 20px;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 1rem;
  line-height: 1.85;
}

.about-feature-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
  margin: 24px 0 30px;
}

.about-feature-item {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 16px 18px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.about-feature-item i {
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: rgba(255, 193, 7, 0.12);
  color: #ffc107;
  font-size: 1rem;
}

.about-feature-item span {
  color: rgba(255, 255, 255, 0.80);
  font-size: 0.98rem;
  line-height: 1.7;
}

.about-highlight-box {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  margin-top: 16px;
  padding: 22px 22px;
  border-radius: 22px;
  background: linear-gradient(135deg, rgba(255, 193, 7, 0.10), rgba(255, 193, 7, 0.03));
  border: 1px solid rgba(255, 193, 7, 0.28);
  box-shadow:
    0 12px 28px rgba(255, 193, 7, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.about-highlight-icon {
  flex: 0 0 auto;
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  background: rgba(255, 193, 7, 0.14);
  color: #ffc107;
  font-size: 1.2rem;
}

.about-highlight-content h4 {
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 1.2rem;
  font-weight: 600;
}

.about-highlight-content p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.78) !important;
  line-height: 1.75;
}

.about-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 30px;
}

.about-btn-primary,
.about-btn-secondary {
  min-width: 210px;
  padding: 15px 30px;
  font-size: 1.02rem;
  font-weight: 600;
  border-radius: 999px;
}

.about-btn-primary {
  box-shadow: 0 12px 28px rgba(0, 47, 176, 0.26);
}

.about-btn-secondary {
  border-width: 1.5px;
  background: rgba(255, 255, 255, 0.03);
}

.about-actions .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: all 0.25s ease;
}

.about-actions .btn:hover {
  transform: translateY(-2px);
}

.about-actions .btn i {
  transition: transform 0.25s ease;
}

.about-actions .btn:hover i {
  transform: translateX(2px);
}

/* Responsive */
@media only screen and (max-width: 1199.98px) {
  .about-title {
    font-size: 2.65rem;
  }
}

@media only screen and (max-width: 991.98px) {
  .about-shell {
    padding: 32px 22px;
  }

  .about-title {
    font-size: 2.3rem;
  }

  .about-stats-grid {
    grid-template-columns: 1fr 1fr;
  }

  .about-floating-badge-primary {
    left: 10px;
  }

  .about-floating-badge-secondary {
    right: 10px;
  }
}

@media only screen and (max-width: 767.98px) {
  .about-title {
    font-size: 2rem;
  }

  .about-highlight-box {
    flex-direction: column;
  }

  .about-stats-grid {
    grid-template-columns: 1fr;
  }

  .about-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .about-btn-primary,
  .about-btn-secondary {
    width: 100%;
    min-width: 100%;
  }
}

@media only screen and (max-width: 575.98px) {
  .about-shell {
    padding: 26px 16px;
    border-radius: 24px;
  }

  .about-kicker {
    font-size: 0.8rem;
    padding: 9px 14px;
  }

  .about-title {
    font-size: 1.8rem;
    letter-spacing: -0.8px;
  }

  .about-subtitle {
    font-size: 1.28rem;
  }

  .about-floating-badge {
    position: static;
    margin-top: 14px;
  }
}

/* ===== ABOUT PROMO BLOCK ===== */

.about-side-promo {
  position: relative;
  padding: 24px 22px;
  border-radius: 24px;
  background:
    linear-gradient(135deg, rgba(0, 47, 176, 0.18), rgba(0, 47, 176, 0.05));
  border: 1px solid rgba(72, 123, 255, 0.28);
  box-shadow:
    0 14px 34px rgba(0, 47, 176, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
  overflow: hidden;
}

.about-side-promo::after {
  content: "";
  position: absolute;
  top: -40%;
  right: -30%;
  width: 200px;
  height: 200px;
  background: radial-gradient(circle, rgba(72, 123, 255, 0.25), transparent 70%);
  filter: blur(30px);
  pointer-events: none;
}

.about-side-promo-icon {
  width: 46px;
  height: 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  margin-bottom: 14px;
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
  font-size: 1.1rem;
}

.about-side-promo-title {
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 1.2rem;
  font-weight: 600;
}

.about-side-promo-text {
  margin-bottom: 18px;
  color: rgba(255, 255, 255, 0.78) !important;
  font-size: 0.95rem;
  line-height: 1.7;
}

.about-side-promo-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 12px 20px;
  border-radius: 999px;
  font-size: 0.9rem;
  font-weight: 600;
  background: #ffffff;
  color: #000000;
  transition: all 0.25s ease;
}

.about-side-promo-btn:hover {
  transform: translateY(-2px);
  background: #ffc107;
  color: #000000;
}

/* ===== BENEFITS / ADVANTAGES SECTION ===== */

.benefits-section {
  position: relative;
  background:
    radial-gradient(circle at top center, rgba(255, 193, 7, 0.08), transparent 24%),
    radial-gradient(circle at bottom left, rgba(0, 47, 176, 0.10), transparent 26%),
    linear-gradient(180deg, rgba(8, 14, 28, 0.98) 0%, rgba(5, 10, 22, 1) 100%);
  overflow: hidden;
}

.benefits-shell {
  position: relative;
  padding: 44px 38px 46px;
  border-radius: 32px;
  background: rgba(255, 255, 255, 0.028);
  backdrop-filter: blur(9px);
  -webkit-backdrop-filter: blur(9px);
  border: 1px solid rgba(255, 255, 255, 0.07);
  box-shadow:
    0 18px 60px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.benefits-shell::before,
.benefits-shell::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  filter: blur(50px);
  opacity: 0.35;
}

.benefits-shell::before {
  top: 80px;
  left: -60px;
  width: 180px;
  height: 180px;
  background: rgba(0, 47, 176, 0.22);
}

.benefits-shell::after {
  right: -40px;
  bottom: 60px;
  width: 200px;
  height: 200px;
  background: rgba(255, 193, 7, 0.14);
}

.benefits-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border-radius: 999px;
  background: rgba(0, 47, 176, 0.16);
  border: 1px solid rgba(72, 123, 255, 0.26);
  color: #dbe7ff;
  font-size: 0.92rem;
  font-weight: 600;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.benefits-section .section-title h2 {
  font-size: 3rem;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -1.2px;
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}

.benefits-intro {
  max-width: 760px;
  margin-top: 18px;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 1.06rem;
  line-height: 1.8;
}

.benefits-grid {
  position: relative;
  z-index: 2;
}

.benefit-card {
  position: relative;
  height: 100%;
  padding: 30px 26px 26px;
  border-radius: 26px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.02) 100%);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow:
    0 14px 34px rgba(0, 0, 0, 0.20),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
  overflow: hidden;
  transition: transform 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;
}

.benefit-card:hover {
  transform: translateY(-8px);
  border-color: rgba(255, 193, 7, 0.30);
  box-shadow:
    0 18px 42px rgba(0, 0, 0, 0.28),
    0 0 0 1px rgba(255, 193, 7, 0.06);
}

.benefit-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(255, 193, 7, 0.04), transparent 42%);
  opacity: 0;
  transition: opacity 0.35s ease;
  pointer-events: none;
}

.benefit-card:hover::before {
  opacity: 1;
}

.benefit-card-featured {
  border-color: rgba(255, 193, 7, 0.22);
}

.benefit-card-glow {
  position: absolute;
  top: -30px;
  right: -20px;
  width: 160px;
  height: 160px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 193, 7, 0.16), transparent 70%);
  filter: blur(24px);
  pointer-events: none;
}

.benefit-icon {
  width: 68px;
  height: 68px;
  margin-bottom: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  background:
    linear-gradient(135deg, rgba(255, 193, 7, 0.18), rgba(255, 193, 7, 0.05));
  border: 1px solid rgba(255, 193, 7, 0.24);
  box-shadow: 0 12px 24px rgba(255, 193, 7, 0.08);
}

.benefit-icon i {
  color: #ffc107;
  font-size: 1.55rem;
}

.benefit-title {
  margin-bottom: 14px;
  color: #ffffff;
  font-size: 1.4rem;
  line-height: 1.3;
  font-weight: 600;
}

.benefit-text {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.74) !important;
  font-size: 1rem;
  line-height: 1.8;
}

.benefit-line {
  width: 80px;
  height: 2px;
  margin: 18px 0 14px;
  background: linear-gradient(90deg, #ffc107 0%, rgba(255, 193, 7, 0.12) 100%);
  border-radius: 999px;
}

.benefit-tag {
  display: inline-flex;
  align-items: center;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(255, 193, 7, 0.09);
  border: 1px solid rgba(255, 193, 7, 0.20);
  color: #ffc107;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.2px;
  text-transform: uppercase;
}

.benefit-mini-points {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
  margin-top: 18px;
}

.benefit-mini-points span {
  display: inline-flex;
  align-items: center;
  color: rgba(255, 255, 255, 0.80);
  font-size: 0.92rem;
  font-weight: 500;
}

.benefit-mini-points i {
  color: #ffc107;
}

/* Bottom panel */
.benefits-bottom-panel {
  position: relative;
  z-index: 2;
  margin-top: 34px;
  padding: 26px 28px;
  border-radius: 28px;
  background:
    linear-gradient(135deg, rgba(255, 193, 7, 0.08), rgba(255, 255, 255, 0.02));
  border: 1px solid rgba(255, 193, 7, 0.18);
  box-shadow:
    0 16px 36px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.benefits-bottom-content {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  flex: 1 1 520px;
}

.benefits-bottom-icon {
  flex: 0 0 auto;
  width: 58px;
  height: 58px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 18px;
  background: rgba(255, 193, 7, 0.14);
  color: #ffc107;
  font-size: 1.25rem;
}

.benefits-bottom-text h4 {
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 1.2rem;
  font-weight: 600;
}

.benefits-bottom-text p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.74) !important;
  line-height: 1.75;
}

.benefits-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.benefits-btn-primary,
.benefits-btn-secondary {
  min-width: 200px;
  padding: 15px 28px;
  font-size: 1rem;
  font-weight: 600;
  border-radius: 999px;
}

.benefits-btn-primary {
  box-shadow: 0 12px 28px rgba(0, 47, 176, 0.26);
}

.benefits-btn-secondary {
  border-width: 1.5px;
  background: rgba(255, 255, 255, 0.03);
}

.benefits-actions .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: all 0.25s ease;
}

.benefits-actions .btn:hover {
  transform: translateY(-2px);
}

.benefits-actions .btn i {
  transition: transform 0.25s ease;
}

.benefits-actions .btn:hover i {
  transform: translateX(2px);
}

/* Responsive */
@media only screen and (max-width: 1199.98px) {
  .benefits-section .section-title h2 {
    font-size: 2.6rem;
  }
}

@media only screen and (max-width: 991.98px) {
  .benefits-shell {
    padding: 34px 22px 36px;
  }

  .benefits-section .section-title h2 {
    font-size: 2.25rem;
  }

  .benefits-intro {
    font-size: 1rem;
  }

  .benefits-bottom-panel {
    padding: 22px 20px;
  }
}

@media only screen and (max-width: 767.98px) {
  .benefits-section .section-title h2 {
    font-size: 2rem;
    line-height: 1.15;
  }

  .benefit-card {
    padding: 26px 20px 22px;
  }

  .benefits-actions {
    width: 100%;
    flex-direction: column;
  }

  .benefits-btn-primary,
  .benefits-btn-secondary {
    width: 100%;
    min-width: 100%;
  }
}

@media only screen and (max-width: 575.98px) {
  .benefits-shell {
    padding: 28px 16px 30px;
    border-radius: 24px;
  }

  .benefits-kicker {
    font-size: 0.8rem;
    padding: 9px 14px;
  }

  .benefits-section .section-title h2 {
    font-size: 1.8rem;
  }

  .benefit-title {
    font-size: 1.24rem;
  }

  .benefit-text {
    font-size: 0.96rem;
    line-height: 1.7;
  }

  .benefits-bottom-content {
    flex-direction: column;
  }
}

/* ===== PARALLAX PROMO BANNER (CENTERED) ===== */

.promo-banner {
  --banner-overlay: 0.58;

  position: relative;
  padding: 68px 0;

  background-image:
    linear-gradient(
      rgba(4, 10, 22, var(--banner-overlay)),
      rgba(4, 10, 22, var(--banner-overlay))
    ),
    url("../img/banner-bg.webp");

  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;

  overflow: hidden;
}

.promo-banner-layer {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 20% 30%, rgba(255, 193, 7, 0.10), transparent 28%),
    radial-gradient(circle at 80% 70%, rgba(0, 47, 176, 0.14), transparent 30%);
}

.promo-banner .container {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: center;
}

.promo-banner-shell {
  max-width: 760px;
  width: 100%;
  padding: 30px 30px;
  border-radius: 24px;

  background: rgba(7, 14, 30, 0.34);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);

  border: 1px solid rgba(255, 255, 255, 0.08);

  box-shadow:
    0 16px 42px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);

  text-align: center;
}

.promo-banner-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 16px;
  border-radius: 999px;

  background: rgba(0, 47, 176, 0.18);
  border: 1px solid rgba(72, 123, 255, 0.28);

  color: #dbe7ff;
  font-size: 0.84rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

.promo-banner-title {
  margin-top: 18px;
  margin-bottom: 14px;

  color: #ffffff;
  font-size: 2.35rem;
  font-weight: 700;
  line-height: 1.12;
  letter-spacing: -1px;

  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}

.promo-banner-text {
  margin-bottom: 20px;

  color: rgba(255, 255, 255, 0.78) !important;
  font-size: 0.98rem;
  line-height: 1.72;

  max-width: 620px;
  margin-left: auto;
  margin-right: auto;
}

.promo-banner-offer {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;

  padding: 10px 16px;
  margin-bottom: 22px;

  border-radius: 16px;

  background: rgba(255, 193, 7, 0.08);
  border: 1px solid rgba(255, 193, 7, 0.9);

  color: #ffc107;
  font-size: 0.92rem;
  font-weight: 700;
  line-height: 1.5;

  max-width: 100%;
}

.promo-banner-actions {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 14px;
}

.promo-banner-btn-primary {
  padding: 13px 24px;
  border-radius: 999px;
  font-weight: 600;
  font-size: 0.95rem;

  box-shadow: 0 12px 28px rgba(0, 47, 176, 0.24);

  display: inline-flex;
  align-items: center;
  gap: 8px;

  transition: all 0.25s ease;
}

.promo-banner-btn-primary:hover {
  transform: translateY(-2px);
}

.promo-banner-btn-primary i {
  transition: transform 0.25s ease;
}

.promo-banner-btn-primary:hover i {
  transform: translateX(2px);
}

@media (max-width: 991px) {
  .promo-banner {
    background-attachment: scroll;
    padding: 58px 0;
  }

  .promo-banner-shell {
    max-width: 100%;
    padding: 24px 22px;
  }

  .promo-banner-title {
    font-size: 2rem;
    line-height: 1.15;
  }

  .promo-banner-text {
    font-size: 0.95rem;
    line-height: 1.68;
  }
}

@media (max-width: 575px) {
  .promo-banner {
    padding: 48px 0;
  }

  .promo-banner-shell {
    padding: 22px 16px;
    border-radius: 20px;
  }

  .promo-banner-kicker {
    font-size: 0.76rem;
    padding: 8px 13px;
  }

  .promo-banner-title {
    font-size: 1.7rem;
    margin-top: 16px;
    margin-bottom: 12px;
  }

  .promo-banner-text {
    margin-bottom: 18px;
    font-size: 0.92rem;
  }

  .promo-banner-offer {
    width: 100%;
    text-align: center;
    padding: 10px 14px;
    font-size: 0.88rem;
    margin-bottom: 18px;
  }

  .promo-banner-actions {
    width: 100%;
  }

  .promo-banner-btn-primary {
    width: 100%;
    justify-content: center;
    padding: 12px 20px;
  }
}

/* ===== REWARDS / LOYALTY SECTION ===== */

.rewards-section {
  position: relative;
  background:
    radial-gradient(circle at top left, rgba(255, 193, 7, 0.08), transparent 22%),
    radial-gradient(circle at bottom right, rgba(0, 47, 176, 0.10), transparent 28%),
    linear-gradient(180deg, rgba(8, 14, 28, 0.98) 0%, rgba(5, 10, 22, 1) 100%);
  overflow: hidden;
}

.rewards-shell {
  position: relative;
  padding: 44px 38px 46px;
  border-radius: 32px;
  background: rgba(255, 255, 255, 0.028);
  backdrop-filter: blur(9px);
  -webkit-backdrop-filter: blur(9px);
  border: 1px solid rgba(255, 255, 255, 0.07);
  box-shadow:
    0 18px 60px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.rewards-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border-radius: 999px;
  background: rgba(0, 47, 176, 0.16);
  border: 1px solid rgba(72, 123, 255, 0.26);
  color: #dbe7ff;
  font-size: 0.92rem;
  font-weight: 600;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.rewards-section .section-title h2 {
  font-size: 3rem;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -1.2px;
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
}

.rewards-intro {
  max-width: 820px;
  margin-top: 18px;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 1.06rem;
  line-height: 1.8;
}

/* Left side */
.rewards-side {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.rewards-side-card,
.rewards-benefits-box,
.rewards-highlight-panel,
.rewards-main-card,
.promo-card,
.promo-wide-card,
.rewards-note-box {
  position: relative;
  border-radius: 26px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.02) 100%);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow:
    0 14px 34px rgba(0, 0, 0, 0.20),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.rewards-side-card {
  padding: 24px 22px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
}

.rewards-side-card-primary::before {
  content: "";
  position: absolute;
  top: -30px;
  right: -20px;
  width: 140px;
  height: 140px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 193, 7, 0.14), transparent 70%);
  filter: blur(24px);
  pointer-events: none;
}

.rewards-side-icon {
  flex: 0 0 auto;
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 18px;
  background:
    linear-gradient(135deg, rgba(255, 193, 7, 0.18), rgba(255, 193, 7, 0.05));
  border: 1px solid rgba(255, 193, 7, 0.22);
  color: #ffc107;
  font-size: 1.3rem;
  box-shadow: 0 12px 24px rgba(255, 193, 7, 0.08);
}

.rewards-side-label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255, 193, 7, 0.10);
  border: 1px solid rgba(255, 193, 7, 0.24);
  color: #ffc107;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.rewards-side-title {
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 1.42rem;
  line-height: 1.35;
  font-weight: 600;
}

.rewards-side-text {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.74) !important;
  font-size: 0.98rem;
  line-height: 1.75;
}

/* Benefits box */
.rewards-benefits-box {
  padding: 24px 22px;
}

.rewards-box-title {
  margin-bottom: 18px;
  color: #ffffff;
  font-size: 1.18rem;
  font-weight: 600;
}

.rewards-benefits-list {
  display: grid;
  gap: 14px;
}

.rewards-benefit-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 14px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
}

.rewards-benefit-item i {
  color: #ffc107;
  margin-top: 2px;
}

.rewards-benefit-item span {
  color: rgba(255, 255, 255, 0.80);
  line-height: 1.65;
}

/* Highlight */
.rewards-highlight-panel {
  padding: 24px 22px;
  background:
    linear-gradient(135deg, rgba(0, 47, 176, 0.14), rgba(255, 255, 255, 0.02));
  border-color: rgba(72, 123, 255, 0.24);
}

.rewards-highlight-badge {
  display: inline-flex;
  align-items: center;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(0, 47, 176, 0.18);
  border: 1px solid rgba(72, 123, 255, 0.26);
  color: #dbe7ff;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.rewards-highlight-title {
  margin-top: 14px;
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 1.26rem;
  font-weight: 600;
}

.rewards-highlight-text {
  margin-bottom: 16px;
  color: rgba(255, 255, 255, 0.76) !important;
  line-height: 1.75;
}

.rewards-highlight-offer {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  border-radius: 16px;
  background: rgba(255, 193, 7, 0.08);
  border: 1px solid rgba(255, 193, 7, 0.9);
  color: #ffc107;
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1.5;
}

/* Right column */
.rewards-main {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.rewards-main-card {
  padding: 26px 24px;
}

.rewards-main-title,
.rewards-promos-title {
  color: #ffffff;
  font-size: 1.8rem;
  line-height: 1.22;
  font-weight: 600;
  margin-bottom: 14px;
}

.rewards-main-text {
  margin-bottom: 14px;
  color: rgba(255, 255, 255, 0.74) !important;
  font-size: 1rem;
  line-height: 1.82;
}

.rewards-main-text:last-child {
  margin-bottom: 0;
}

.rewards-mini-kicker {
  display: inline-block;
  margin-bottom: 8px;
  color: #ffc107;
  font-size: 0.84rem;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

/* Promo cards */
.promo-card {
  height: 100%;
  padding: 24px 22px;
  transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
  overflow: hidden;
}

.promo-card:hover {
  transform: translateY(-6px);
  border-color: rgba(255, 193, 7, 0.28);
  box-shadow:
    0 18px 40px rgba(0, 0, 0, 0.26),
    0 0 0 1px rgba(255, 193, 7, 0.06);
}

.promo-card-accent {
  border-color: rgba(255, 193, 7, 0.22);
}

.promo-card-accent::before {
  content: "";
  position: absolute;
  top: -26px;
  right: -18px;
  width: 130px;
  height: 130px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 193, 7, 0.15), transparent 70%);
  filter: blur(22px);
  pointer-events: none;
}

.promo-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 18px;
}

.promo-card-icon {
  width: 56px;
  height: 56px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  background:
    linear-gradient(135deg, rgba(255, 193, 7, 0.18), rgba(255, 193, 7, 0.06));
  border: 1px solid rgba(255, 193, 7, 0.22);
  color: #ffc107;
  font-size: 1.2rem;
}

.promo-card-badge {
  display: inline-flex;
  align-items: center;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.05);
  color: rgba(255, 255, 255, 0.82);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.promo-card-title {
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 1.28rem;
  font-weight: 600;
}

.promo-card-offer {
  display: inline-flex;
  align-items: center;
  margin-bottom: 12px;
  padding: 8px 12px;
  border-radius: 12px;
  background: rgba(255, 193, 7, 0.08);
  color: #ffc107;
  font-weight: 700;
  line-height: 1.4;
}

.promo-card-text {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.74) !important;
  line-height: 1.75;
}

/* Wide card */
.promo-wide-card {
  padding: 24px 22px;
  background:
    linear-gradient(135deg, rgba(255, 193, 7, 0.08), rgba(255, 255, 255, 0.02));
  border-color: rgba(255, 193, 7, 0.22);
}

.promo-wide-badge {
  display: inline-flex;
  align-items: center;
  margin-bottom: 14px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255, 193, 7, 0.10);
  border: 1px solid rgba(255, 193, 7, 0.24);
  color: #ffc107;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.promo-wide-title {
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 1.36rem;
  font-weight: 600;
}

.promo-wide-text {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.76) !important;
  line-height: 1.75;
}

/* Note box */
.rewards-note-box {
  padding: 22px 22px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.02));
}

.rewards-note-icon {
  flex: 0 0 auto;
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  background: rgba(255, 193, 7, 0.12);
  color: #ffc107;
  font-size: 1.2rem;
}

.rewards-note-content h4 {
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 1.18rem;
  font-weight: 600;
}

.rewards-note-content p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.76) !important;
  line-height: 1.75;
}

/* Actions */
.rewards-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.rewards-btn-primary,
.rewards-btn-secondary {
  min-width: 220px;
  padding: 15px 30px;
  font-size: 1.02rem;
  font-weight: 600;
  border-radius: 999px;
}

.rewards-btn-primary {
  box-shadow: 0 12px 28px rgba(0, 47, 176, 0.26);
}

.rewards-btn-secondary {
  border-width: 1.5px;
  background: rgba(255, 255, 255, 0.03);
}

.rewards-actions .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: all 0.25s ease;
}

.rewards-actions .btn:hover {
  transform: translateY(-2px);
}

.rewards-actions .btn i {
  transition: transform 0.25s ease;
}

.rewards-actions .btn:hover i {
  transform: translateX(2px);
}

/* Responsive */
@media only screen and (max-width: 1199.98px) {
  .rewards-section .section-title h2 {
    font-size: 2.55rem;
  }
}

@media only screen and (max-width: 991.98px) {
  .rewards-shell {
    padding: 34px 22px 36px;
  }

  .rewards-section .section-title h2 {
    font-size: 2.2rem;
  }

  .rewards-intro {
    font-size: 1rem;
  }

  .rewards-main-title,
  .rewards-promos-title {
    font-size: 1.55rem;
  }
}

@media only screen and (max-width: 767.98px) {
  .rewards-section .section-title h2 {
    font-size: 2rem;
    line-height: 1.15;
  }

  .rewards-side-card,
  .rewards-benefits-box,
  .rewards-highlight-panel,
  .rewards-main-card,
  .promo-card,
  .promo-wide-card,
  .rewards-note-box {
    padding: 22px 18px;
    border-radius: 22px;
  }

  .rewards-note-box {
    flex-direction: column;
  }

  .rewards-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .rewards-btn-primary,
  .rewards-btn-secondary {
    width: 100%;
    min-width: 100%;
  }
}

@media only screen and (max-width: 575.98px) {
  .rewards-shell {
    padding: 28px 16px 30px;
    border-radius: 24px;
  }

  .rewards-kicker {
    font-size: 0.8rem;
    padding: 9px 14px;
  }

  .rewards-section .section-title h2 {
    font-size: 1.78rem;
  }

  .rewards-side-title,
  .promo-card-title,
  .promo-wide-title {
    font-size: 1.18rem;
  }

  .rewards-main-title,
  .rewards-promos-title {
    font-size: 1.4rem;
  }

  .promo-card-top {
    align-items: flex-start;
    flex-direction: column;
  }

  .rewards-highlight-offer {
    width: 100%;
    justify-content: center;
    text-align: center;
  }
}

/* ===== GAMING OPTIONS SECTION ===== */

.gaming-section {
  position: relative;
  background:
    radial-gradient(circle at top right, rgba(255, 193, 7, 0.08), transparent 24%),
    radial-gradient(circle at bottom left, rgba(0, 47, 176, 0.10), transparent 28%),
    linear-gradient(180deg, rgba(8, 14, 28, 0.98) 0%, rgba(5, 10, 22, 1) 100%);
  overflow: hidden;
}

.gaming-shell {
  position: relative;
  padding: 44px 38px 46px;
  border-radius: 32px;
  background: rgba(255, 255, 255, 0.028);
  backdrop-filter: blur(9px);
  -webkit-backdrop-filter: blur(9px);
  border: 1px solid rgba(255, 255, 255, 0.07);
  box-shadow:
    0 18px 60px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.gaming-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border-radius: 999px;
  background: rgba(0, 47, 176, 0.16);
  border: 1px solid rgba(72, 123, 255, 0.26);
  color: #dbe7ff;
  font-size: 0.92rem;
  font-weight: 600;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.gaming-section .section-title h2 {
  font-size: 3rem;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -1.2px;
  max-width: 840px;
  margin-left: auto;
  margin-right: auto;
}

.gaming-intro {
  max-width: 820px;
  margin-top: 18px;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 1.06rem;
  line-height: 1.8;
}

/* Main panels */
.gaming-panel,
.gaming-bottom-card {
  position: relative;
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.02) 100%);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow:
    0 14px 34px rgba(0, 0, 0, 0.20),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.gaming-panel {
  height: 100%;
  padding: 28px 26px;
  overflow: hidden;
}

.gaming-panel-primary::before {
  content: "";
  position: absolute;
  top: -34px;
  right: -18px;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 193, 7, 0.15), transparent 70%);
  filter: blur(24px);
  pointer-events: none;
}

.gaming-panel-head {
  margin-bottom: 18px;
}

.gaming-panel-badge {
  display: inline-flex;
  align-items: center;
  padding: 9px 14px;
  border-radius: 999px;
  background: rgba(255, 193, 7, 0.10);
  border: 1px solid rgba(255, 193, 7, 0.22);
  color: #ffc107;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.gaming-panel-title {
  margin-top: 16px;
  margin-bottom: 0;
  color: #ffffff;
  font-size: 1.9rem;
  line-height: 1.2;
  font-weight: 600;
}

.gaming-panel-text {
  margin-bottom: 16px;
  color: rgba(255, 255, 255, 0.74) !important;
  font-size: 1rem;
  line-height: 1.82;
}

.gaming-panel-text:last-of-type {
  margin-bottom: 0;
}

/* Info cards */
.gaming-info-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 22px;
  margin-bottom: 22px;
}

.gaming-info-card {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 18px 16px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
}

.gaming-info-icon {
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: rgba(255, 193, 7, 0.12);
  color: #ffc107;
  font-size: 1rem;
}

.gaming-info-content {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.gaming-info-title {
  color: rgba(255, 255, 255, 0.58);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.gaming-info-value {
  color: #ffffff;
  font-size: 0.96rem;
  font-weight: 600;
  line-height: 1.45;
}

/* Feature list */
.gaming-feature-list {
  display: grid;
  gap: 14px;
  margin-bottom: 22px;
}

.gaming-feature-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 14px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
}

.gaming-feature-item i {
  color: #ffc107;
  margin-top: 2px;
}

.gaming-feature-item span {
  color: rgba(255, 255, 255, 0.80);
  line-height: 1.65;
}

/* Highlight box */
.gaming-highlight-box {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 22px 20px;
  border-radius: 24px;
  background:
    linear-gradient(135deg, rgba(255, 193, 7, 0.10), rgba(255, 255, 255, 0.02));
  border: 1px solid rgba(255, 193, 7, 0.24);
  box-shadow:
    0 12px 28px rgba(255, 193, 7, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.gaming-highlight-icon {
  flex: 0 0 auto;
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  background: rgba(255, 193, 7, 0.14);
  color: #ffc107;
  font-size: 1.2rem;
}

.gaming-highlight-content h4 {
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 1.18rem;
  font-weight: 600;
}

.gaming-highlight-content p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.76) !important;
  line-height: 1.75;
}

/* Online categories */
.gaming-category-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-top: 22px;
}

.gaming-category-card {
  height: 100%;
  padding: 22px 20px;
  border-radius: 22px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.02) 100%);
  border: 1px solid rgba(255, 255, 255, 0.08);
  transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

.gaming-category-card:hover {
  transform: translateY(-6px);
  border-color: rgba(255, 193, 7, 0.28);
  box-shadow:
    0 16px 36px rgba(0, 0, 0, 0.24),
    0 0 0 1px rgba(255, 193, 7, 0.06);
}

.gaming-category-card-accent {
  border-color: rgba(255, 193, 7, 0.20);
}

.gaming-category-top {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 14px;
}

.gaming-category-icon {
  width: 52px;
  height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  background:
    linear-gradient(135deg, rgba(255, 193, 7, 0.18), rgba(255, 193, 7, 0.06));
  border: 1px solid rgba(255, 193, 7, 0.22);
  color: #ffc107;
  font-size: 1.15rem;
}

.gaming-category-card h4 {
  margin-bottom: 0;
  color: #ffffff;
  font-size: 1.22rem;
  font-weight: 600;
}

.gaming-category-card p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.74) !important;
  line-height: 1.75;
}

/* Note strip */
.gaming-note-strip {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-top: 22px;
  padding: 16px 16px;
  border-radius: 18px;
  background: rgba(0, 47, 176, 0.12);
  border: 1px solid rgba(72, 123, 255, 0.20);
}

.gaming-note-strip i {
  color: #78a6ff;
  margin-top: 3px;
}

.gaming-note-strip span {
  color: rgba(255, 255, 255, 0.80);
  line-height: 1.7;
}

/* Bottom card */
.gaming-bottom-card {
  margin-top: 26px;
  padding: 24px 26px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
}

.gaming-bottom-content {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  flex: 1 1 520px;
}

.gaming-bottom-icon {
  flex: 0 0 auto;
  width: 58px;
  height: 58px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 18px;
  background: rgba(255, 193, 7, 0.14);
  color: #ffc107;
  font-size: 1.25rem;
}

.gaming-bottom-text h4 {
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 1.2rem;
  font-weight: 600;
}

.gaming-bottom-text p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.74) !important;
  line-height: 1.75;
}

/* Actions */
.gaming-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.gaming-btn-primary,
.gaming-btn-secondary {
  min-width: 200px;
  padding: 15px 28px;
  font-size: 1rem;
  font-weight: 600;
  border-radius: 999px;
}

.gaming-btn-primary {
  box-shadow: 0 12px 28px rgba(0, 47, 176, 0.26);
}

.gaming-btn-secondary {
  border-width: 1.5px;
  background: rgba(255, 255, 255, 0.03);
}

.gaming-actions .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: all 0.25s ease;
}

.gaming-actions .btn:hover {
  transform: translateY(-2px);
}

.gaming-actions .btn i {
  transition: transform 0.25s ease;
}

.gaming-actions .btn:hover i {
  transform: translateX(2px);
}

/* Responsive */
@media only screen and (max-width: 1199.98px) {
  .gaming-section .section-title h2 {
    font-size: 2.55rem;
  }
}

@media only screen and (max-width: 991.98px) {
  .gaming-shell {
    padding: 34px 22px 36px;
  }

  .gaming-section .section-title h2 {
    font-size: 2.2rem;
  }

  .gaming-intro {
    font-size: 1rem;
  }

  .gaming-panel-title {
    font-size: 1.6rem;
  }
}

@media only screen and (max-width: 767.98px) {
  .gaming-section .section-title h2 {
    font-size: 2rem;
    line-height: 1.15;
  }

  .gaming-panel,
  .gaming-bottom-card {
    padding: 22px 18px;
    border-radius: 24px;
  }

  .gaming-info-grid,
  .gaming-category-grid {
    grid-template-columns: 1fr;
  }

  .gaming-highlight-box,
  .gaming-bottom-content {
    flex-direction: column;
  }

  .gaming-actions {
    width: 100%;
    flex-direction: column;
  }

  .gaming-btn-primary,
  .gaming-btn-secondary {
    width: 100%;
    min-width: 100%;
  }
}

@media only screen and (max-width: 575.98px) {
  .gaming-shell {
    padding: 28px 16px 30px;
    border-radius: 24px;
  }

  .gaming-kicker {
    font-size: 0.8rem;
    padding: 9px 14px;
  }

  .gaming-section .section-title h2 {
    font-size: 1.78rem;
  }

  .gaming-panel-title {
    font-size: 1.38rem;
  }

  .gaming-category-card h4,
  .gaming-highlight-content h4,
  .gaming-bottom-text h4 {
    font-size: 1.12rem;
  }
}

/* ===== TABLE GAMES SECTION ===== */

.table-section {
  position: relative;
  background:
    radial-gradient(circle at top left, rgba(255, 193, 7, 0.08), transparent 25%),
    radial-gradient(circle at bottom right, rgba(0, 47, 176, 0.10), transparent 30%),
    linear-gradient(180deg, rgba(8, 14, 28, 0.98) 0%, rgba(5, 10, 22, 1) 100%);
}

.table-shell {
  padding: 44px 38px;
  border-radius: 32px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.07);
  backdrop-filter: blur(10px);
}

.table-kicker {
  padding: 10px 18px;
  border-radius: 999px;
  background: rgba(0,47,176,0.18);
  border: 1px solid rgba(72,123,255,0.26);
  color: #dbe7ff;
  font-size: 0.9rem;
  text-transform: uppercase;
}

.table-intro {
  max-width: 800px;
  color: rgba(255,255,255,0.75);
}

/* Panels */
.table-panel {
  padding: 26px;
  border-radius: 26px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  height: 100%;
}

.table-panel-primary::before {
  content:"";
  position:absolute;
  width:120px;
  height:120px;
  background: radial-gradient(circle, rgba(255,193,7,0.15), transparent);
  filter: blur(20px);
}

.table-panel-title {
  color:#fff;
  font-size:1.7rem;
}

.table-panel-text {
  color: rgba(255,255,255,0.75);
}

/* Games */
.table-games-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-top:20px;
}

.table-game-item {
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px;
  border-radius:14px;
  background: rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.06);
}

.table-game-item i {
  color:#ffc107;
}

/* Feature */
.table-feature-box {
  margin-top:20px;
  padding:14px;
  border-radius:14px;
  background: rgba(0,47,176,0.15);
  display:flex;
  gap:10px;
}

/* Bottom */
.table-bottom-card {
  margin-top:30px;
  padding:24px;
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
}

.table-bottom-content {
  display:flex;
  gap:15px;
}

.table-bottom-icon {
  width:50px;
  height:50px;
  background: rgba(255,193,7,0.15);
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  color:#ffc107;
}

.table-actions .btn {
  padding:14px 28px;
  border-radius:999px;
}

/* ===== SLOTS SECTION ===== */

.slots-section {
  position: relative;
  background:
    radial-gradient(circle at top left, rgba(255, 193, 7, 0.08), transparent 24%),
    radial-gradient(circle at bottom right, rgba(0, 47, 176, 0.10), transparent 28%),
    linear-gradient(180deg, rgba(8, 14, 28, 0.98) 0%, rgba(5, 10, 22, 1) 100%);
  overflow: hidden;
}

.slots-shell {
  position: relative;
  padding: 44px 38px 46px;
  border-radius: 32px;
  background: rgba(255, 255, 255, 0.028);
  backdrop-filter: blur(9px);
  -webkit-backdrop-filter: blur(9px);
  border: 1px solid rgba(255, 255, 255, 0.07);
  box-shadow:
    0 18px 60px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.slots-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border-radius: 999px;
  background: rgba(0, 47, 176, 0.16);
  border: 1px solid rgba(72, 123, 255, 0.26);
  color: #dbe7ff;
  font-size: 0.92rem;
  font-weight: 600;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.slots-section .section-title h2 {
  font-size: 3rem;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -1.2px;
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
}

.slots-intro {
  max-width: 820px;
  margin-top: 18px;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 1.06rem;
  line-height: 1.8;
}

/* panels */
.slots-panel,
.slots-bottom-card,
.slots-providers-box,
.slots-games-box {
  position: relative;
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.02) 100%);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow:
    0 14px 34px rgba(0, 0, 0, 0.20),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.slots-panel {
  height: 100%;
  padding: 28px 26px;
  overflow: hidden;
}

.slots-panel-primary::before {
  content: "";
  position: absolute;
  top: -34px;
  right: -18px;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 193, 7, 0.15), transparent 70%);
  filter: blur(24px);
  pointer-events: none;
}

.slots-panel-head {
  margin-bottom: 18px;
}

.slots-panel-badge {
  display: inline-flex;
  align-items: center;
  padding: 9px 14px;
  border-radius: 999px;
  background: rgba(255, 193, 7, 0.10);
  border: 1px solid rgba(255, 193, 7, 0.22);
  color: #ffc107;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.slots-panel-title {
  margin-top: 16px;
  margin-bottom: 0;
  color: #ffffff;
  font-size: 1.9rem;
  line-height: 1.2;
  font-weight: 600;
}

.slots-panel-text {
  margin-bottom: 16px;
  color: rgba(255, 255, 255, 0.74) !important;
  font-size: 1rem;
  line-height: 1.82;
}

.slots-panel-text:last-of-type {
  margin-bottom: 0;
}

/* info cards */
.slots-info-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 22px;
  margin-bottom: 22px;
}

.slots-info-card {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 18px 16px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
}

.slots-info-icon {
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: rgba(255, 193, 7, 0.12);
  color: #ffc107;
  font-size: 1rem;
}

.slots-info-content {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.slots-info-title {
  color: rgba(255, 255, 255, 0.58);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.slots-info-value {
  color: #ffffff;
  font-size: 0.96rem;
  font-weight: 600;
  line-height: 1.45;
}

/* feature list */
.slots-feature-list {
  display: grid;
  gap: 14px;
  margin-bottom: 22px;
}

.slots-feature-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 14px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
}

.slots-feature-item i {
  color: #ffc107;
  margin-top: 2px;
}

.slots-feature-item span {
  color: rgba(255, 255, 255, 0.80);
  line-height: 1.65;
}

/* highlight */
.slots-highlight-box {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 22px 20px;
  border-radius: 24px;
  background:
    linear-gradient(135deg, rgba(255, 193, 7, 0.10), rgba(255, 255, 255, 0.02));
  border: 1px solid rgba(255, 193, 7, 0.24);
  box-shadow:
    0 12px 28px rgba(255, 193, 7, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.slots-highlight-icon {
  flex: 0 0 auto;
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  background: rgba(255, 193, 7, 0.14);
  color: #ffc107;
  font-size: 1.2rem;
}

.slots-highlight-content h4 {
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 1.18rem;
  font-weight: 600;
}

.slots-highlight-content p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.76) !important;
  line-height: 1.75;
}

/* categories */
.slots-category-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-top: 22px;
  margin-bottom: 22px;
}

.slots-category-card {
  height: 100%;
  padding: 22px 20px;
  border-radius: 22px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.02) 100%);
  border: 1px solid rgba(255, 255, 255, 0.08);
  transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

.slots-category-card:hover {
  transform: translateY(-6px);
  border-color: rgba(255, 193, 7, 0.28);
  box-shadow:
    0 16px 36px rgba(0, 0, 0, 0.24),
    0 0 0 1px rgba(255, 193, 7, 0.06);
}

.slots-category-card-accent {
  border-color: rgba(255, 193, 7, 0.20);
}

.slots-category-top {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 14px;
}

.slots-category-icon {
  width: 52px;
  height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  background:
    linear-gradient(135deg, rgba(255, 193, 7, 0.18), rgba(255, 193, 7, 0.06));
  border: 1px solid rgba(255, 193, 7, 0.22);
  color: #ffc107;
  font-size: 1.15rem;
}

.slots-category-card h4 {
  margin-bottom: 0;
  color: #ffffff;
  font-size: 1.22rem;
  font-weight: 600;
}

.slots-category-card p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.74) !important;
  line-height: 1.75;
}

/* providers and games boxes */
.slots-providers-box,
.slots-games-box {
  padding: 22px 20px;
  margin-top: 18px;
}

.slots-providers-title,
.slots-games-title {
  margin-bottom: 12px;
  color: #ffffff;
  font-size: 1.18rem;
  font-weight: 600;
}

.slots-providers-text,
.slots-games-text {
  margin-bottom: 14px;
  color: rgba(255, 255, 255, 0.76) !important;
  line-height: 1.75;
}

.slots-provider-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.slots-provider-tags span {
  display: inline-flex;
  align-items: center;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255, 193, 7, 0.08);
  border: 1px solid rgba(255, 193, 7, 0.20);
  color: #ffc107;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.2px;
}

/* bottom card */
.slots-bottom-card {
  margin-top: 26px;
  padding: 24px 26px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
}

.slots-bottom-content {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  flex: 1 1 520px;
}

.slots-bottom-icon {
  flex: 0 0 auto;
  width: 58px;
  height: 58px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 18px;
  background: rgba(255, 193, 7, 0.14);
  color: #ffc107;
  font-size: 1.25rem;
}

.slots-bottom-text h4 {
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 1.2rem;
  font-weight: 600;
}

.slots-bottom-text p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.74) !important;
  line-height: 1.75;
}

/* actions */
.slots-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.slots-btn-primary,
.slots-btn-secondary {
  min-width: 200px;
  padding: 15px 28px;
  font-size: 1rem;
  font-weight: 600;
  border-radius: 999px;
}

.slots-btn-primary {
  box-shadow: 0 12px 28px rgba(0, 47, 176, 0.26);
}

.slots-btn-secondary {
  border-width: 1.5px;
  background: rgba(255, 255, 255, 0.03);
}

.slots-actions .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: all 0.25s ease;
}

.slots-actions .btn:hover {
  transform: translateY(-2px);
}

.slots-actions .btn i {
  transition: transform 0.25s ease;
}

.slots-actions .btn:hover i {
  transform: translateX(2px);
}

/* responsive */
@media only screen and (max-width: 1199.98px) {
  .slots-section .section-title h2 {
    font-size: 2.55rem;
  }
}

@media only screen and (max-width: 991.98px) {
  .slots-shell {
    padding: 34px 22px 36px;
  }

  .slots-section .section-title h2 {
    font-size: 2.2rem;
  }

  .slots-intro {
    font-size: 1rem;
  }

  .slots-panel-title {
    font-size: 1.6rem;
  }
}

@media only screen and (max-width: 767.98px) {
  .slots-section .section-title h2 {
    font-size: 2rem;
    line-height: 1.15;
  }

  .slots-panel,
  .slots-bottom-card,
  .slots-providers-box,
  .slots-games-box {
    padding: 22px 18px;
    border-radius: 24px;
  }

  .slots-info-grid,
  .slots-category-grid {
    grid-template-columns: 1fr;
  }

  .slots-highlight-box,
  .slots-bottom-content {
    flex-direction: column;
  }

  .slots-actions {
    width: 100%;
    flex-direction: column;
  }

  .slots-btn-primary,
  .slots-btn-secondary {
    width: 100%;
    min-width: 100%;
  }
}

@media only screen and (max-width: 575.98px) {
  .slots-shell {
    padding: 28px 16px 30px;
    border-radius: 24px;
  }

  .slots-kicker {
    font-size: 0.8rem;
    padding: 9px 14px;
  }

  .slots-section .section-title h2 {
    font-size: 1.78rem;
  }

  .slots-panel-title {
    font-size: 1.38rem;
  }

  .slots-category-card h4,
  .slots-highlight-content h4,
  .slots-bottom-text h4,
  .slots-providers-title,
  .slots-games-title {
    font-size: 1.12rem;
  }
}

/* ===== EXTRA BLOCKS FOR LEFT SLOTS COLUMN ===== */

.slots-extra-box {
  margin-top: 18px;
  padding: 22px 20px;
  border-radius: 24px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.02) 100%);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow:
    0 14px 34px rgba(0, 0, 0, 0.20),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.slots-extra-box-accent {
  background:
    linear-gradient(135deg, rgba(255, 193, 7, 0.08), rgba(255, 255, 255, 0.02));
  border-color: rgba(255, 193, 7, 0.20);
}

.slots-extra-title {
  margin-bottom: 12px;
  color: #ffffff;
  font-size: 1.18rem;
  font-weight: 600;
}

.slots-extra-text {
  margin-bottom: 12px;
  color: rgba(255, 255, 255, 0.76) !important;
  line-height: 1.75;
}

.slots-extra-text:last-child {
  margin-bottom: 0;
}

/* ===== LIVE GAMES SECTION ===== */

.live-section {
  position: relative;
  background:
    radial-gradient(circle at top center, rgba(0, 47, 176, 0.10), transparent 26%),
    linear-gradient(180deg, rgba(7, 12, 24, 0.98) 0%, rgba(4, 8, 18, 1) 100%);
  overflow: hidden;
}

.live-section-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border-radius: 999px;
  background: rgba(0, 47, 176, 0.16);
  border: 1px solid rgba(72, 123, 255, 0.26);
  color: #dbe7ff;
  font-size: 0.92rem;
  font-weight: 600;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.live-section .section-title h2 {
  font-size: 3rem;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -1.2px;
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}

.live-section-intro {
  max-width: 760px;
  margin-top: 18px;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 1.06rem;
  line-height: 1.8;
}

/* Card */
.game-card {
  position: relative;
  overflow: hidden;
  border-radius: 22px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.02) 100%);
  border: 1px solid rgba(255, 255, 255, 0.07);
  box-shadow:
    0 14px 30px rgba(0, 0, 0, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
  cursor: pointer;
}

.game-card:hover {
  transform: translateY(-8px);
  border-color: rgba(255, 193, 7, 0.35);
  box-shadow:
    0 18px 38px rgba(0, 0, 0, 0.30),
    0 0 0 1px rgba(255, 193, 7, 0.07);
}

.game-card img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.45s ease;
}

.game-card:hover img {
  transform: scale(1.06);
}

.game-card-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background:
    linear-gradient(180deg, rgba(5, 10, 22, 0.15) 0%, rgba(5, 10, 22, 0.78) 100%);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.game-card:hover .game-card-overlay {
  opacity: 1;
}

.game-card-btn {
  min-width: 120px;
  padding: 9px 18px;
  border-radius: 999px;
  background-color: #ffc107;
  color: #000000;
  font-weight: 700;
  font-size: 0.9rem;
  box-shadow: 0 10px 20px rgba(255, 193, 7, 0.18);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.game-card-btn:hover {
  color: #000000;
  transform: translateY(-2px);
  box-shadow: 0 14px 24px rgba(255, 193, 7, 0.24);
}

/* Responsive */
@media only screen and (max-width: 991.98px) {
  .live-section .section-title h2 {
    font-size: 2.35rem;
  }

  .live-section-intro {
    font-size: 1rem;
  }

  .game-card {
    border-radius: 18px;
  }
}

@media only screen and (max-width: 767.98px) {
  .live-section .section-title h2 {
    font-size: 2rem;
    line-height: 1.15;
  }
}

@media only screen and (max-width: 575.98px) {
  .live-section-kicker {
    font-size: 0.8rem;
    padding: 9px 14px;
  }

  .live-section .section-title h2 {
    font-size: 1.8rem;
  }

  .live-section-intro {
    font-size: 0.96rem;
    line-height: 1.7;
  }

  .game-card-btn {
    min-width: 110px;
    padding: 8px 16px;
    font-size: 0.85rem;
  }
}

/* ===== BONUS BUYS SECTION ===== */

.bonus-section {
  position: relative;
  background:
    radial-gradient(circle at top center, rgba(255, 193, 7, 0.08), transparent 24%),
    linear-gradient(180deg, rgba(7, 12, 24, 0.98) 0%, rgba(4, 8, 18, 1) 100%);
  overflow: hidden;
}

.bonus-section-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border-radius: 999px;
  background: rgba(0, 47, 176, 0.16);
  border: 1px solid rgba(72, 123, 255, 0.26);
  color: #dbe7ff;
  font-size: 0.92rem;
  font-weight: 600;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.bonus-section .section-title h2 {
  font-size: 3rem;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -1.2px;
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}

.bonus-section-intro {
  max-width: 760px;
  margin-top: 18px;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 1.06rem;
  line-height: 1.8;
}

/* Reuse card styling */
.game-card {
  position: relative;
  overflow: hidden;
  border-radius: 22px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.02) 100%);
  border: 1px solid rgba(255, 255, 255, 0.07);
  box-shadow:
    0 14px 30px rgba(0, 0, 0, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
  cursor: pointer;
}

.game-card:hover {
  transform: translateY(-8px);
  border-color: rgba(255, 193, 7, 0.35);
  box-shadow:
    0 18px 38px rgba(0, 0, 0, 0.30),
    0 0 0 1px rgba(255, 193, 7, 0.07);
}

.game-card img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.45s ease;
}

.game-card:hover img {
  transform: scale(1.06);
}

.game-card-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background:
    linear-gradient(180deg, rgba(5, 10, 22, 0.15) 0%, rgba(5, 10, 22, 0.78) 100%);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.game-card:hover .game-card-overlay {
  opacity: 1;
}

.game-card-btn {
  min-width: 120px;
  padding: 9px 18px;
  border-radius: 999px;
  background-color: #ffc107;
  color: #000000;
  font-weight: 700;
  font-size: 0.9rem;
  box-shadow: 0 10px 20px rgba(255, 193, 7, 0.18);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.game-card-btn:hover {
  color: #000000;
  transform: translateY(-2px);
  box-shadow: 0 14px 24px rgba(255, 193, 7, 0.24);
}

/* Responsive */
@media only screen and (max-width: 991.98px) {
  .bonus-section .section-title h2 {
    font-size: 2.35rem;
  }

  .bonus-section-intro {
    font-size: 1rem;
  }

  .game-card {
    border-radius: 18px;
  }
}

@media only screen and (max-width: 767.98px) {
  .bonus-section .section-title h2 {
    font-size: 2rem;
    line-height: 1.15;
  }
}

@media only screen and (max-width: 575.98px) {
  .bonus-section-kicker {
    font-size: 0.8rem;
    padding: 9px 14px;
  }

  .bonus-section .section-title h2 {
    font-size: 1.8rem;
  }

  .bonus-section-intro {
    font-size: 0.96rem;
    line-height: 1.7;
  }

  .game-card-btn {
    min-width: 110px;
    padding: 8px 16px;
    font-size: 0.85rem;
  }
}

/* ===== VISITOR INFORMATION SECTION ===== */

.visitor-section {
  position: relative;
  background:
    radial-gradient(circle at top left, rgba(255, 193, 7, 0.08), transparent 22%),
    radial-gradient(circle at bottom right, rgba(0, 47, 176, 0.10), transparent 28%),
    linear-gradient(180deg, rgba(8, 14, 28, 0.98) 0%, rgba(5, 10, 22, 1) 100%);
  overflow: hidden;
}

.visitor-shell {
  position: relative;
  padding: 44px 38px 46px;
  border-radius: 32px;
  background: rgba(255, 255, 255, 0.028);
  backdrop-filter: blur(9px);
  -webkit-backdrop-filter: blur(9px);
  border: 1px solid rgba(255, 255, 255, 0.07);
  box-shadow:
    0 18px 60px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.visitor-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border-radius: 999px;
  background: rgba(0, 47, 176, 0.16);
  border: 1px solid rgba(72, 123, 255, 0.26);
  color: #dbe7ff;
  font-size: 0.92rem;
  font-weight: 600;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.visitor-section .section-title h2 {
  font-size: 3rem;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -1.2px;
  max-width: 820px;
  margin-left: auto;
  margin-right: auto;
}

.visitor-intro {
  max-width: 820px;
  margin-top: 18px;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 1.06rem;
  line-height: 1.8;
}

/* Left side */
.visitor-side {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.visitor-card,
.visitor-note-box,
.visitor-main-card,
.visitor-info-card,
.visitor-highlight-panel {
  position: relative;
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.045) 0%, rgba(255,255,255,0.02) 100%);
  border: 1px solid rgba(255,255,255,0.08);
  box-shadow:
    0 14px 34px rgba(0,0,0,0.20),
    inset 0 1px 0 rgba(255,255,255,0.04);
}

.visitor-card {
  padding: 24px 22px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
}

.visitor-card-primary::before {
  content: "";
  position: absolute;
  top: -30px;
  right: -20px;
  width: 140px;
  height: 140px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 193, 7, 0.14), transparent 70%);
  filter: blur(24px);
  pointer-events: none;
}

.visitor-card-icon,
.visitor-highlight-icon,
.visitor-info-icon,
.visitor-fact-icon {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffc107;
  background: rgba(255, 193, 7, 0.12);
}

.visitor-card-icon {
  width: 60px;
  height: 60px;
  border-radius: 18px;
  font-size: 1.3rem;
  border: 1px solid rgba(255, 193, 7, 0.22);
  box-shadow: 0 12px 24px rgba(255, 193, 7, 0.08);
}

.visitor-card-label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255, 193, 7, 0.10);
  border: 1px solid rgba(255, 193, 7, 0.24);
  color: #ffc107;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.visitor-card-title {
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 1.42rem;
  line-height: 1.35;
  font-weight: 600;
}

.visitor-card-text,
.visitor-note-text,
.visitor-main-text,
.visitor-info-card p,
.visitor-highlight-content p {
  color: rgba(255,255,255,0.76) !important;
  line-height: 1.78;
}

.visitor-card-text {
  margin-bottom: 12px;
}

.visitor-card-text:last-child {
  margin-bottom: 0;
}

/* Facts */
.visitor-facts-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.visitor-fact-box {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 18px 16px;
  border-radius: 20px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.06);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.03);
}

.visitor-fact-icon {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  font-size: 1rem;
}

.visitor-fact-content {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.visitor-fact-title {
  color: rgba(255,255,255,0.58);
  font-size: 0.82rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

.visitor-fact-text {
  color: #ffffff;
  font-size: 0.96rem;
  font-weight: 600;
  line-height: 1.45;
}

/* Left note */
.visitor-note-box {
  padding: 24px 22px;
  background:
    linear-gradient(135deg, rgba(0, 47, 176, 0.12), rgba(255, 255, 255, 0.02));
  border-color: rgba(72, 123, 255, 0.24);
}

.visitor-note-title {
  margin-bottom: 12px;
  color: #ffffff;
  font-size: 1.18rem;
  font-weight: 600;
}

/* Right side */
.visitor-main {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.visitor-main-card {
  padding: 26px 24px;
}

.visitor-main-title {
  margin-bottom: 14px;
  color: #ffffff;
  font-size: 1.75rem;
  line-height: 1.22;
  font-weight: 600;
}

.visitor-main-text {
  margin-bottom: 14px;
  font-size: 1rem;
}

.visitor-main-text:last-child {
  margin-bottom: 0;
}

.visitor-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.visitor-info-card {
  padding: 22px 20px;
  transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

.visitor-info-card:hover {
  transform: translateY(-6px);
  border-color: rgba(255, 193, 7, 0.28);
  box-shadow:
    0 18px 40px rgba(0,0,0,0.26),
    0 0 0 1px rgba(255,193,7,0.06);
}

.visitor-info-top {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 14px;
}

.visitor-info-icon {
  width: 52px;
  height: 52px;
  border-radius: 16px;
  font-size: 1.15rem;
  border: 1px solid rgba(255, 193, 7, 0.22);
}

.visitor-info-card h4 {
  margin-bottom: 0;
  color: #ffffff;
  font-size: 1.22rem;
  font-weight: 600;
}

.visitor-info-card p {
  margin-bottom: 0;
}

/* Highlight panel */
.visitor-highlight-panel {
  padding: 22px 22px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
  background:
    linear-gradient(135deg, rgba(255, 193, 7, 0.10), rgba(255, 255, 255, 0.02));
  border: 1px solid rgba(255, 193, 7, 0.24);
  box-shadow:
    0 12px 28px rgba(255, 193, 7, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.visitor-highlight-icon {
  width: 56px;
  height: 56px;
  border-radius: 16px;
  font-size: 1.2rem;
}

.visitor-highlight-content h4 {
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 1.2rem;
  font-weight: 600;
}

/* Actions */
.visitor-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.visitor-btn-primary,
.visitor-btn-secondary {
  min-width: 210px;
  padding: 15px 30px;
  font-size: 1.02rem;
  font-weight: 600;
  border-radius: 999px;
}

.visitor-btn-primary {
  box-shadow: 0 12px 28px rgba(0, 47, 176, 0.26);
}

.visitor-btn-secondary {
  border-width: 1.5px;
  background: rgba(255,255,255,0.03);
}

.visitor-actions .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: all 0.25s ease;
}

.visitor-actions .btn:hover {
  transform: translateY(-2px);
}

.visitor-actions .btn i {
  transition: transform 0.25s ease;
}

.visitor-actions .btn:hover i {
  transform: translateX(2px);
}

/* Responsive */
@media only screen and (max-width: 1199.98px) {
  .visitor-section .section-title h2 {
    font-size: 2.55rem;
  }
}

@media only screen and (max-width: 991.98px) {
  .visitor-shell {
    padding: 34px 22px 36px;
  }

  .visitor-section .section-title h2 {
    font-size: 2.2rem;
  }

  .visitor-intro {
    font-size: 1rem;
  }

  .visitor-main-title {
    font-size: 1.55rem;
  }
}

@media only screen and (max-width: 767.98px) {
  .visitor-section .section-title h2 {
    font-size: 2rem;
    line-height: 1.15;
  }

  .visitor-card,
  .visitor-note-box,
  .visitor-main-card,
  .visitor-info-card,
  .visitor-highlight-panel {
    padding: 22px 18px;
    border-radius: 22px;
  }

  .visitor-grid,
  .visitor-facts-grid {
    grid-template-columns: 1fr;
  }

  .visitor-highlight-panel {
    flex-direction: column;
  }

  .visitor-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .visitor-btn-primary,
  .visitor-btn-secondary {
    width: 100%;
    min-width: 100%;
  }
}

@media only screen and (max-width: 575.98px) {
  .visitor-shell {
    padding: 28px 16px 30px;
    border-radius: 24px;
  }

  .visitor-kicker {
    font-size: 0.8rem;
    padding: 9px 14px;
  }

  .visitor-section .section-title h2 {
    font-size: 1.78rem;
  }

  .visitor-card-title,
  .visitor-main-title,
  .visitor-info-card h4,
  .visitor-highlight-content h4,
  .visitor-note-title {
    font-size: 1.16rem;
  }
}

/* ===== EXTRA LEFT BLOCK FOR VISITOR SECTION ===== */

.visitor-side-summary {
  padding: 22px 20px;
  border-radius: 24px;
  background:
    linear-gradient(135deg, rgba(255, 193, 7, 0.08), rgba(255, 255, 255, 0.02));
  border: 1px solid rgba(255, 193, 7, 0.20);
  box-shadow:
    0 14px 34px rgba(0, 0, 0, 0.20),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.visitor-side-summary-label {
  display: inline-block;
  margin-bottom: 12px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255, 193, 7, 0.10);
  border: 1px solid rgba(255, 193, 7, 0.24);
  color: #ffc107;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.visitor-side-summary-title {
  margin-bottom: 12px;
  color: #ffffff;
  font-size: 1.18rem;
  font-weight: 600;
  line-height: 1.4;
}

.visitor-side-summary-text {
  margin-bottom: 16px;
  color: rgba(255, 255, 255, 0.76) !important;
  line-height: 1.75;
}

.visitor-side-summary-list {
  display: grid;
  gap: 12px;
}

.visitor-side-summary-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 13px 14px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
}

.visitor-side-summary-item i {
  color: #ffc107;
  margin-top: 2px;
}

.visitor-side-summary-item span {
  color: rgba(255, 255, 255, 0.82);
  line-height: 1.65;
}

/* ===== AUTH SECTION ===== */

.auth-section {
  background:
    radial-gradient(circle at top right, rgba(0,47,176,0.10), transparent 30%),
    linear-gradient(180deg, rgba(8,14,28,0.98) 0%, rgba(5,10,22,1) 100%);
}

.auth-shell {
  padding: 44px 38px;
  border-radius: 32px;
  background: rgba(255,255,255,0.025);
  border: 1px solid rgba(255,255,255,0.07);
}

/* title */
.auth-kicker {
  display: inline-flex;
  padding: 10px 18px;
  border-radius: 999px;
  background: rgba(0,47,176,0.18);
  border: 1px solid rgba(72,123,255,0.28);
  color: #dbe7ff;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 0.9rem;
}

.auth-intro {
  max-width: 760px;
  color: rgba(255,255,255,0.72);
  line-height: 1.8;
}

/* cards */
.auth-card {
  height: 100%;
  padding: 28px 24px;
  border-radius: 24px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  transition: all 0.3s ease;
}

.auth-card:hover {
  transform: translateY(-6px);
  border-color: rgba(255,193,7,0.25);
}

.auth-card-accent {
  background: linear-gradient(135deg, rgba(255,193,7,0.08), rgba(255,255,255,0.02));
  border-color: rgba(255,193,7,0.25);
}

/* icon */
.auth-card-icon {
  width: 54px;
  height: 54px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,193,7,0.12);
  color: #ffc107;
  margin-bottom: 16px;
}

/* text */
.auth-card-title {
  color: #fff;
  font-size: 1.3rem;
  margin-bottom: 10px;
}

.auth-card-text {
  color: rgba(255,255,255,0.75);
  margin-bottom: 16px;
}

/* steps */
.auth-steps {
  display: grid;
  gap: 10px;
  margin-bottom: 16px;
}

.auth-step {
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.06);
  color: #fff;
  font-size: 0.95rem;
}

/* highlight */
.auth-highlight {
  display: flex;
  gap: 10px;
  align-items: center;
  color: #ffc107;
  font-weight: 600;
}

/* bottom */
.auth-bottom {
  margin-top: 40px;
  text-align: center;
}

.auth-bottom-box {
  padding: 22px;
  border-radius: 20px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.07);
  margin-bottom: 20px;
}

.auth-bottom-box h4 {
  color: #fff;
  margin-bottom: 10px;
}

.auth-bottom-box p {
  color: rgba(255,255,255,0.75);
}

/* buttons */
.auth-actions {
  display: flex;
  justify-content: center;
  gap: 12px;
}

.auth-btn-primary {
  padding: 14px 28px;
  border-radius: 999px;
  font-weight: 600;
}

.auth-btn-secondary {
  padding: 14px 28px;
  border-radius: 999px;
}

/* ===== APP SECTION ===== */

.app-section {
  position: relative;
  background:
    radial-gradient(circle at top left, rgba(0, 47, 176, 0.10), transparent 26%),
    radial-gradient(circle at bottom right, rgba(255, 193, 7, 0.08), transparent 24%),
    linear-gradient(180deg, rgba(8, 14, 28, 0.98) 0%, rgba(5, 10, 22, 1) 100%);
  overflow: hidden;
}

.app-shell {
  position: relative;
  padding: 44px 38px 46px;
  border-radius: 32px;
  background: rgba(255, 255, 255, 0.028);
  backdrop-filter: blur(9px);
  -webkit-backdrop-filter: blur(9px);
  border: 1px solid rgba(255, 255, 255, 0.07);
  box-shadow:
    0 18px 60px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.app-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border-radius: 999px;
  background: rgba(0, 47, 176, 0.16);
  border: 1px solid rgba(72, 123, 255, 0.26);
  color: #dbe7ff;
  font-size: 0.92rem;
  font-weight: 600;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.app-section .section-title h2 {
  font-size: 3rem;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -1.2px;
  max-width: 820px;
  margin-left: auto;
  margin-right: auto;
}

.app-intro {
  max-width: 780px;
  margin-top: 18px;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 1.06rem;
  line-height: 1.8;
}

/* columns */
.app-column {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

/* image card */
.app-image-card {
  position: relative;
  overflow: hidden;
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.045) 0%, rgba(255,255,255,0.02) 100%);
  border: 1px solid rgba(255,255,255,0.08);
  box-shadow:
    0 14px 34px rgba(0,0,0,0.20),
    inset 0 1px 0 rgba(255,255,255,0.04);
}

.app-image-glow {
  position: absolute;
  top: -30px;
  right: -20px;
  width: 160px;
  height: 160px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 193, 7, 0.15), transparent 70%);
  filter: blur(24px);
  pointer-events: none;
  z-index: 1;
}

.app-image-card img {
  position: relative;
  z-index: 2;
  display: block;
  width: 60%;
  height: auto;
  transition: transform 0.45s ease;
}

.app-image-card:hover img {
  transform: scale(1.03);
}

/* text cards */
.app-text-card,
.app-feature-box,
.app-install-card {
  position: relative;
  padding: 24px 22px;
  border-radius: 26px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.045) 0%, rgba(255,255,255,0.02) 100%);
  border: 1px solid rgba(255,255,255,0.08);
  box-shadow:
    0 14px 34px rgba(0,0,0,0.20),
    inset 0 1px 0 rgba(255,255,255,0.04);
}

.app-text-card-primary {
  background:
    linear-gradient(135deg, rgba(0, 47, 176, 0.12), rgba(255, 255, 255, 0.02));
  border-color: rgba(72, 123, 255, 0.24);
}

.app-card-label {
  display: inline-block;
  margin-bottom: 12px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255, 193, 7, 0.10);
  border: 1px solid rgba(255, 193, 7, 0.24);
  color: #ffc107;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.app-card-title {
  margin-bottom: 12px;
  color: #ffffff;
  font-size: 1.42rem;
  line-height: 1.35;
  font-weight: 600;
}

.app-card-text {
  margin-bottom: 12px;
  color: rgba(255,255,255,0.76) !important;
  line-height: 1.78;
}

.app-card-text:last-child {
  margin-bottom: 0;
}

/* feature list */
.app-feature-title {
  margin-bottom: 18px;
  color: #ffffff;
  font-size: 1.18rem;
  font-weight: 600;
}

.app-feature-list {
  display: grid;
  gap: 14px;
}

.app-feature-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 14px;
  border-radius: 18px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.06);
}

.app-feature-item i {
  color: #ffc107;
  margin-top: 2px;
}

.app-feature-item span {
  color: rgba(255,255,255,0.82);
  line-height: 1.65;
}

/* info grid */
.app-info-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 18px;
}

.app-info-card {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 16px 14px;
  border-radius: 18px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.06);
}

.app-info-icon {
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: rgba(255, 193, 7, 0.12);
  color: #ffc107;
  font-size: 1rem;
}

.app-info-content {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.app-info-title {
  color: rgba(255,255,255,0.58);
  font-size: 0.82rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

.app-info-text {
  color: #ffffff;
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.45;
}

/* install */
.app-install-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-top: 8px;
  margin-bottom: 20px;
}

.app-install-block {
  padding: 16px 14px;
  border-radius: 18px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.06);
}

.app-install-block h4 {
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 1.08rem;
  font-weight: 600;
}

.app-install-block p {
  margin-bottom: 0;
  color: rgba(255,255,255,0.76) !important;
  line-height: 1.72;
}

/* store buttons */
.app-store-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 8px;
  margin-bottom: 18px;
}

.app-store-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 56px;
  padding: 10px 14px;
  border-radius: 16px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  transition: transform 0.25s ease, border-color 0.25s ease;
}

.app-store-link:hover {
  transform: translateY(-2px);
  border-color: rgba(255, 193, 7, 0.25);
}

.app-store-link img {
  display: block;
  height: 42px;
  width: auto;
  max-width: 180px;
}

/* note */
.app-install-note {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 14px 14px;
  border-radius: 16px;
  background: rgba(0, 47, 176, 0.12);
  border: 1px solid rgba(72, 123, 255, 0.20);
}

.app-install-note i {
  color: #78a6ff;
  margin-top: 2px;
}

.app-install-note span {
  color: rgba(255,255,255,0.82);
  line-height: 1.65;
}

/* responsive */
@media only screen and (max-width: 1199.98px) {
  .app-section .section-title h2 {
    font-size: 2.55rem;
  }
}

@media only screen and (max-width: 991.98px) {
  .app-shell {
    padding: 34px 22px 36px;
  }

  .app-section .section-title h2 {
    font-size: 2.2rem;
  }

  .app-intro {
    font-size: 1rem;
  }

  .app-card-title {
    font-size: 1.28rem;
  }
}

@media only screen and (max-width: 767.98px) {
  .app-section .section-title h2 {
    font-size: 2rem;
    line-height: 1.15;
  }

  .app-text-card,
  .app-feature-box,
  .app-install-card {
    padding: 22px 18px;
    border-radius: 22px;
  }

  .app-info-grid,
  .app-install-columns {
    grid-template-columns: 1fr;
  }
}

@media only screen and (max-width: 575.98px) {
  .app-shell {
    padding: 28px 16px 30px;
    border-radius: 24px;
  }

  .app-kicker {
    font-size: 0.8rem;
    padding: 9px 14px;
  }

  .app-section .section-title h2 {
    font-size: 1.78rem;
  }

  .app-card-title,
  .app-feature-title,
  .app-install-block h4 {
    font-size: 1.12rem;
  }

  .app-store-buttons {
    flex-direction: column;
    align-items: stretch;
  }

  .app-store-link {
    justify-content: center;
  }
}

.app-image-card {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px; 
}

.app-image-card img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* ===== SECOND PROMO BANNER (PLAY) ===== */

.promo-banner-play {
  background-image:
    linear-gradient(
      rgba(4, 10, 22, var(--banner-overlay)),
      rgba(4, 10, 22, var(--banner-overlay))
    ),
    url("../img/bg.webp"); 
}

/* ===== PAYMENTS SECTION ===== */

.payments-section {
  position: relative;
  background:
    radial-gradient(circle at top left, rgba(255, 193, 7, 0.08), transparent 22%),
    radial-gradient(circle at bottom right, rgba(0, 47, 176, 0.10), transparent 28%),
    linear-gradient(180deg, rgba(8, 14, 28, 0.98) 0%, rgba(5, 10, 22, 1) 100%);
  overflow: hidden;
}

.payments-shell {
  position: relative;
  padding: 44px 38px 46px;
  border-radius: 32px;
  background: rgba(255, 255, 255, 0.028);
  backdrop-filter: blur(9px);
  -webkit-backdrop-filter: blur(9px);
  border: 1px solid rgba(255, 255, 255, 0.07);
  box-shadow:
    0 18px 60px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.payments-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border-radius: 999px;
  background: rgba(0, 47, 176, 0.16);
  border: 1px solid rgba(72, 123, 255, 0.26);
  color: #dbe7ff;
  font-size: 0.92rem;
  font-weight: 600;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.payments-section .section-title h2 {
  font-size: 3rem;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -1.2px;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}

.payments-intro {
  max-width: 820px;
  margin-top: 18px;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 1.06rem;
  line-height: 1.8;
}

/* Left side */
.payments-side {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.payments-info-card,
.payments-feature-box,
.payments-side-note,
.payments-main-card,
.payments-support-card,
.payments-important-box,
.payments-table-wrap {
  position: relative;
  border-radius: 26px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.02) 100%);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow:
    0 14px 34px rgba(0, 0, 0, 0.20),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.payments-info-card {
  padding: 24px 22px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
}

.payments-info-card-primary::before {
  content: "";
  position: absolute;
  top: -30px;
  right: -20px;
  width: 140px;
  height: 140px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 193, 7, 0.14), transparent 70%);
  filter: blur(24px);
  pointer-events: none;
}

.payments-info-icon,
.payments-support-icon,
.payments-important-icon {
  flex: 0 0 auto;
  width: 58px;
  height: 58px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  background: rgba(255, 193, 7, 0.12);
  color: #ffc107;
  font-size: 1.18rem;
}

.payments-info-label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255, 193, 7, 0.10);
  border: 1px solid rgba(255, 193, 7, 0.24);
  color: #ffc107;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.payments-info-title,
.payments-main-title {
  margin-bottom: 12px;
  color: #ffffff;
  font-size: 1.45rem;
  line-height: 1.3;
  font-weight: 600;
}

.payments-info-text,
.payments-main-text,
.payments-side-note-text,
.payments-support-card p,
.payments-important-content p {
  color: rgba(255, 255, 255, 0.76) !important;
  line-height: 1.78;
}

.payments-info-text,
.payments-main-text {
  margin-bottom: 12px;
}

.payments-info-text:last-child,
.payments-main-text:last-child {
  margin-bottom: 0;
}

.payments-feature-box,
.payments-side-note,
.payments-main-card {
  padding: 24px 22px;
}

.payments-feature-title,
.payments-side-note-title {
  margin-bottom: 16px;
  color: #ffffff;
  font-size: 1.16rem;
  font-weight: 600;
}

.payments-feature-list {
  display: grid;
  gap: 14px;
}

.payments-feature-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 14px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
}

.payments-feature-item i {
  color: #ffc107;
  margin-top: 2px;
}

.payments-feature-item span {
  color: rgba(255, 255, 255, 0.82);
  line-height: 1.65;
}

.payments-main {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

/* Tabs + table */
.payments-table-wrap {
  padding: 24px 22px;
  max-width: 980px;
  margin: 0 auto;
}

.payments-tabs {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin-bottom: 20px;
  flex-wrap: wrap;
}

.payments-tab-btn {
  min-width: 150px;
  padding: 12px 20px;
  border: 1px solid rgba(255, 255, 255, 0.10);
  background: rgba(255, 255, 255, 0.04);
  color: #ffffff;
  border-radius: 999px;
  font-weight: 600;
  transition: all 0.25s ease;
}

.payments-tab-btn:hover {
  transform: translateY(-2px);
  border-color: rgba(255, 193, 7, 0.28);
}

.payments-tab-btn.is-active {
  background: rgba(0, 47, 176, 0.92);
  border-color: rgba(72, 123, 255, 0.40);
  color: #ffffff;
  box-shadow: 0 12px 24px rgba(0, 47, 176, 0.24);
}

.payments-table-panel {
  display: none;
}

.payments-table-panel.is-active {
  display: block;
}

.payments-table-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 180px;
  gap: 16px;
  padding: 0 14px 12px;
  color: rgba(255, 255, 255, 0.60);
  font-size: 0.82rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.payments-table-body {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}

.payments-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 180px;
  gap: 16px;
  align-items: center;
  padding: 14px 14px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
  transition: transform 0.25s ease, border-color 0.25s ease;
}

.payments-row:hover {
  transform: translateY(-2px);
  border-color: rgba(255, 193, 7, 0.22);
}

.payments-method {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}

.payments-method span {
  color: #ffffff;
  font-weight: 600;
  line-height: 1.4;
  word-break: break-word;
}

.payments-limit {
  color: #ffc107;
  font-weight: 700;
  text-align: right;
  line-height: 1.4;
}

/* Fixed-size SVG icons */
.payments-method-icon {
  width: 56px;
  height: 56px;
  min-width: 56px;
  min-height: 56px;
  max-width: 56px;
  max-height: 56px;
  display: block;
  object-fit: contain;
  padding: 8px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

/* Support blocks */
.payments-support-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 16px;
}

.payments-support-card {
  padding: 22px 20px;
  transition: transform 0.25s ease, border-color 0.25s ease;
}

.payments-support-card:hover {
  transform: translateY(-4px);
  border-color: rgba(255, 193, 7, 0.24);
}

.payments-support-icon {
  margin-bottom: 14px;
}

.payments-support-card h4,
.payments-important-content h4 {
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 1.14rem;
  font-weight: 600;
}

/* Important box */
.payments-important-box {
  padding: 22px 22px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
  background:
    linear-gradient(135deg, rgba(255, 193, 7, 0.10), rgba(255, 255, 255, 0.02));
  border-color: rgba(255, 193, 7, 0.22);
}

/* Responsive */
@media only screen and (max-width: 1199.98px) {
  .payments-section .section-title h2 {
    font-size: 2.55rem;
  }
}

@media only screen and (max-width: 991.98px) {
  .payments-shell {
    padding: 34px 22px 36px;
  }

  .payments-section .section-title h2 {
    font-size: 2.2rem;
  }

  .payments-intro {
    font-size: 1rem;
  }

  .payments-support-grid {
    grid-template-columns: 1fr;
  }
}

@media only screen and (max-width: 767.98px) {
  .payments-section .section-title h2 {
    font-size: 2rem;
    line-height: 1.15;
  }

  .payments-info-card,
  .payments-feature-box,
  .payments-side-note,
  .payments-main-card,
  .payments-support-card,
  .payments-important-box,
  .payments-table-wrap {
    padding: 22px 18px;
    border-radius: 22px;
  }

  .payments-info-card,
  .payments-important-box {
    flex-direction: column;
  }

  .payments-table-head,
  .payments-row {
    grid-template-columns: 1fr;
  }

  .payments-limit {
    text-align: left;
    padding-left: 70px;
  }
}

@media only screen and (max-width: 575.98px) {
  .payments-shell {
    padding: 28px 16px 30px;
    border-radius: 24px;
  }

  .payments-kicker {
    font-size: 0.8rem;
    padding: 9px 14px;
  }

  .payments-section .section-title h2 {
    font-size: 1.78rem;
  }

  .payments-info-title,
  .payments-main-title,
  .payments-support-card h4,
  .payments-important-content h4,
  .payments-feature-title,
  .payments-side-note-title {
    font-size: 1.1rem;
  }

  .payments-tab-btn {
    width: 100%;
  }

  .payments-method-icon {
    width: 52px;
    height: 52px;
    min-width: 52px;
    min-height: 52px;
    max-width: 52px;
    max-height: 52px;
  }

  .payments-limit {
    padding-left: 66px;
  }
}

/* ===== PAYMENTS SUPPORT CARDS - STACKED ===== */

.payments-support-grid,
.payments-support-grid-side {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

.payments-support-card {
  padding: 22px 20px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
  transition: transform 0.25s ease, border-color 0.25s ease;
}

.payments-support-card:hover {
  transform: translateY(-4px);
  border-color: rgba(255, 193, 7, 0.24);
}

.payments-support-icon {
  flex: 0 0 auto;
  margin-bottom: 0;
}

.payments-support-card h4 {
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 1.14rem;
  font-weight: 600;
}

.payments-support-card p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.76) !important;
  line-height: 1.75;
}

/* ===== TRUST / SAFETY / REGULATION SECTION ===== */

.trust-section {
  position: relative;
  background:
    radial-gradient(circle at top left, rgba(255, 193, 7, 0.08), transparent 22%),
    radial-gradient(circle at bottom right, rgba(0, 47, 176, 0.10), transparent 28%),
    linear-gradient(180deg, rgba(8, 14, 28, 0.98) 0%, rgba(5, 10, 22, 1) 100%);
  overflow: hidden;
}

.trust-shell {
  position: relative;
  padding: 44px 38px 46px;
  border-radius: 32px;
  background: rgba(255, 255, 255, 0.028);
  backdrop-filter: blur(9px);
  -webkit-backdrop-filter: blur(9px);
  border: 1px solid rgba(255, 255, 255, 0.07);
  box-shadow:
    0 18px 60px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.trust-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border-radius: 999px;
  background: rgba(0, 47, 176, 0.16);
  border: 1px solid rgba(72, 123, 255, 0.26);
  color: #dbe7ff;
  font-size: 0.92rem;
  font-weight: 600;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.trust-section .section-title h2 {
  font-size: 3rem;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -1.2px;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}

.trust-intro {
  max-width: 840px;
  margin-top: 18px;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 1.06rem;
  line-height: 1.8;
}

/* left column */
.trust-side {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.trust-card,
.trust-list-box,
.trust-note-box,
.trust-main-card,
.trust-info-card,
.trust-highlight-panel {
  position: relative;
  border-radius: 26px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.02) 100%);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow:
    0 14px 34px rgba(0, 0, 0, 0.20),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.trust-card {
  padding: 24px 22px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
}

.trust-card-primary::before {
  content: "";
  position: absolute;
  top: -30px;
  right: -20px;
  width: 140px;
  height: 140px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 193, 7, 0.14), transparent 70%);
  filter: blur(24px);
  pointer-events: none;
}

.trust-card-icon,
.trust-info-icon,
.trust-highlight-icon {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 193, 7, 0.12);
  color: #ffc107;
}

.trust-card-icon {
  width: 58px;
  height: 58px;
  border-radius: 16px;
  font-size: 1.18rem;
}

.trust-card-label {
  display: inline-block;
  margin-bottom: 10px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255, 193, 7, 0.10);
  border: 1px solid rgba(255, 193, 7, 0.24);
  color: #ffc107;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.trust-card-title,
.trust-main-title {
  margin-bottom: 12px;
  color: #ffffff;
  font-size: 1.42rem;
  line-height: 1.32;
  font-weight: 600;
}

.trust-card-text,
.trust-note-text,
.trust-main-text,
.trust-info-card p,
.trust-highlight-content p {
  color: rgba(255, 255, 255, 0.76) !important;
  line-height: 1.78;
}

.trust-card-text,
.trust-main-text {
  margin-bottom: 12px;
}

.trust-card-text:last-child,
.trust-main-text:last-child {
  margin-bottom: 0;
}

.trust-list-box,
.trust-note-box,
.trust-main-card {
  padding: 24px 22px;
}

.trust-box-title,
.trust-note-title {
  margin-bottom: 16px;
  color: #ffffff;
  font-size: 1.16rem;
  font-weight: 600;
}

.trust-list {
  display: grid;
  gap: 14px;
}

.trust-list-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 14px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
}

.trust-list-item i {
  color: #ffc107;
  margin-top: 2px;
}

.trust-list-item span {
  color: rgba(255, 255, 255, 0.82);
  line-height: 1.65;
}

/* right */
.trust-main {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.trust-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.trust-info-card {
  padding: 22px 20px;
  transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

.trust-info-card:hover {
  transform: translateY(-4px);
  border-color: rgba(255, 193, 7, 0.24);
  box-shadow:
    0 18px 40px rgba(0, 0, 0, 0.26),
    0 0 0 1px rgba(255, 193, 7, 0.06);
}

.trust-info-top {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 14px;
}

.trust-info-icon {
  width: 52px;
  height: 52px;
  border-radius: 16px;
  font-size: 1.12rem;
}

.trust-info-card h4 {
  margin-bottom: 0;
  color: #ffffff;
  font-size: 1.18rem;
  font-weight: 600;
}

.trust-info-card p {
  margin-bottom: 10px;
}

.trust-info-card p:last-child {
  margin-bottom: 0;
}

/* highlight */
.trust-highlight-panel {
  padding: 22px 22px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
  background:
    linear-gradient(135deg, rgba(255, 193, 7, 0.10), rgba(255, 255, 255, 0.02));
  border-color: rgba(255, 193, 7, 0.22);
}

.trust-highlight-icon {
  width: 56px;
  height: 56px;
  border-radius: 16px;
  font-size: 1.2rem;
}

.trust-highlight-content h4 {
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 1.18rem;
  font-weight: 600;
}

/* responsive */
@media only screen and (max-width: 1199.98px) {
  .trust-section .section-title h2 {
    font-size: 2.55rem;
  }
}

@media only screen and (max-width: 991.98px) {
  .trust-shell {
    padding: 34px 22px 36px;
  }

  .trust-section .section-title h2 {
    font-size: 2.2rem;
  }

  .trust-intro {
    font-size: 1rem;
  }

  .trust-card-title,
  .trust-main-title {
    font-size: 1.28rem;
  }
}

@media only screen and (max-width: 767.98px) {
  .trust-section .section-title h2 {
    font-size: 2rem;
    line-height: 1.15;
  }

  .trust-card,
  .trust-list-box,
  .trust-note-box,
  .trust-main-card,
  .trust-info-card,
  .trust-highlight-panel {
    padding: 22px 18px;
    border-radius: 22px;
  }

  .trust-card,
  .trust-highlight-panel {
    flex-direction: column;
  }

  .trust-grid {
    grid-template-columns: 1fr;
  }
}

@media only screen and (max-width: 575.98px) {
  .trust-shell {
    padding: 28px 16px 30px;
    border-radius: 24px;
  }

  .trust-kicker {
    font-size: 0.8rem;
    padding: 9px 14px;
  }

  .trust-section .section-title h2 {
    font-size: 1.78rem;
  }

  .trust-box-title,
  .trust-note-title,
  .trust-info-card h4,
  .trust-highlight-content h4 {
    font-size: 1.08rem;
  }
}

/* ===== REVIEWS SECTION ===== */

.reviews-section {
  position: relative;
  background:
    radial-gradient(circle at top left, rgba(255, 193, 7, 0.08), transparent 24%),
    radial-gradient(circle at bottom right, rgba(0, 47, 176, 0.10), transparent 28%),
    linear-gradient(180deg, rgba(8, 14, 28, 0.98) 0%, rgba(5, 10, 22, 1) 100%);
  overflow: hidden;
}

.reviews-shell {
  position: relative;
  padding: 42px 38px;
  border-radius: 32px;
  background: rgba(255, 255, 255, 0.028);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(255, 255, 255, 0.07);
  box-shadow:
    0 18px 60px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

/* Media */
.reviews-media {
  position: relative;
  max-width: 560px;
  margin: 0 auto;
}

.reviews-media-glow {
  position: absolute;
  inset: 8% 10% auto 10%;
  height: 78%;
  border-radius: 30px;
  background: radial-gradient(circle, rgba(255, 193, 7, 0.16) 0%, transparent 70%);
  filter: blur(24px);
  z-index: 1;
  pointer-events: none;
}

.reviews-media-frame {
  position: relative;
  z-index: 2;
  overflow: hidden;
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.045) 0%, rgba(255, 255, 255, 0.02) 100%);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow:
    0 18px 40px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.reviews-media-frame img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.45s ease;
}

.reviews-media:hover .reviews-media-frame img {
  transform: scale(1.03);
}

.reviews-floating-badge {
  position: absolute;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  border-radius: 16px;
  font-size: 0.92rem;
  font-weight: 600;
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.22);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.reviews-floating-badge-top {
  top: 22px;
  left: -10px;
  background: rgba(5, 14, 34, 0.82);
  border: 1px solid rgba(255, 193, 7, 0.40);
  color: #ffffff;
}

.reviews-floating-badge-top i {
  color: #ffc107;
}

.reviews-floating-badge-bottom {
  right: -12px;
  bottom: 26px;
  background: rgba(5, 14, 34, 0.84);
  border: 1px solid rgba(72, 123, 255, 0.34);
  color: #dbe7ff;
}

.reviews-floating-badge-bottom i {
  color: #78a6ff;
}

/* Content */
.reviews-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border-radius: 999px;
  background: rgba(0, 47, 176, 0.16);
  border: 1px solid rgba(72, 123, 255, 0.26);
  color: #dbe7ff;
  font-size: 0.92rem;
  font-weight: 600;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.reviews-title {
  margin-top: 22px;
  margin-bottom: 18px;
  color: #ffffff;
  font-size: 3rem;
  line-height: 1.08;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.reviews-title span {
  display: block;
}

.reviews-intro {
  margin-bottom: 24px;
  color: rgba(255, 255, 255, 0.76) !important;
  font-size: 1.03rem;
  line-height: 1.8;
}

/* Slider */
.reviews-slider {
  position: relative;
  min-height: 290px;
}

.review-card {
  display: none;
  padding: 28px 24px;
  border-radius: 26px;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.045) 0%, rgba(255,255,255,0.02) 100%);
  border: 1px solid rgba(255,255,255,0.08);
  box-shadow:
    0 14px 34px rgba(0,0,0,0.20),
    inset 0 1px 0 rgba(255,255,255,0.04);
  animation: fadeReview 0.35s ease;
}

.review-card.is-active {
  display: block;
}

@keyframes fadeReview {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.review-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
  margin-bottom: 18px;
}

.review-stars {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #ffc107;
  font-size: 0.95rem;
}

.review-badge {
  display: inline-flex;
  align-items: center;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255, 193, 7, 0.10);
  border: 1px solid rgba(255, 193, 7, 0.22);
  color: #ffc107;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.review-text {
  margin-bottom: 18px;
  color: rgba(255,255,255,0.84) !important;
  font-size: 1.08rem;
  line-height: 1.85;
}

.review-author {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.review-name {
  color: #ffffff;
  font-size: 1rem;
  font-weight: 600;
}

.review-meta {
  color: rgba(255,255,255,0.58);
  font-size: 0.9rem;
  font-weight: 500;
}

/* Controls */
.reviews-controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 22px;
}

.reviews-arrow {
  width: 52px;
  height: 52px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(255,255,255,0.04);
  color: #ffffff;
  transition: all 0.25s ease;
}

.reviews-arrow:hover {
  transform: translateY(-2px);
  border-color: rgba(255, 193, 7, 0.24);
  color: #ffc107;
}

.reviews-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  flex: 1 1 auto;
}

.reviews-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgba(255,255,255,0.22);
  transition: all 0.25s ease;
  cursor: pointer;
}

.reviews-dot.is-active {
  width: 26px;
  border-radius: 999px;
  background: #ffc107;
}

/* Responsive */
@media only screen and (max-width: 1199.98px) {
  .reviews-title {
    font-size: 2.6rem;
  }
}

@media only screen and (max-width: 991.98px) {
  .reviews-shell {
    padding: 32px 22px;
  }

  .reviews-title {
    font-size: 2.25rem;
  }

  .reviews-floating-badge-top {
    left: 10px;
  }

  .reviews-floating-badge-bottom {
    right: 10px;
  }

  .reviews-slider {
    min-height: auto;
  }
}

@media only screen and (max-width: 767.98px) {
  .reviews-title {
    font-size: 2rem;
  }

  .reviews-controls {
    gap: 12px;
  }

  .review-card {
    padding: 24px 18px;
  }
}

@media only screen and (max-width: 575.98px) {
  .reviews-shell {
    padding: 26px 16px;
    border-radius: 24px;
  }

  .reviews-kicker {
    font-size: 0.8rem;
    padding: 9px 14px;
  }

  .reviews-title {
    font-size: 1.75rem;
    letter-spacing: -0.8px;
  }

  .review-text {
    font-size: 0.98rem;
    line-height: 1.75;
  }

  .reviews-floating-badge {
    position: static;
    margin-top: 14px;
  }

  .reviews-media {
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .reviews-arrow {
    width: 46px;
    height: 46px;
  }
}

/* ===== FAQ SECTION ===== */

.faq-section {
  background:
    radial-gradient(circle at top left, rgba(255,193,7,0.08), transparent 25%),
    linear-gradient(180deg, #060d1f 0%, #040914 100%);
}

.faq-shell {
  padding: 40px 35px;
  border-radius: 30px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  backdrop-filter: blur(8px);
}

/* kicker */
.faq-kicker {
  display: inline-flex;
  align-items: center;
  padding: 10px 18px;
  border-radius: 999px;
  background: rgba(0,47,176,0.18);
  border: 1px solid rgba(72,123,255,0.28);
  color: #dbe7ff;
  font-size: 0.9rem;
  font-weight: 600;
}

/* item */
.faq-item {
  border-radius: 18px;
  overflow: hidden;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  margin-bottom: 14px;
  transition: all 0.25s ease;
}

/* question */
.faq-question {
  width: 100%;
  text-align: left;
  padding: 18px 20px;
  background: none;
  border: none;
  color: #fff;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  font-size: 1rem;
}

.faq-question i {
  color: #ffc107;
}

/* answer */
.faq-answer {
  max-height: 0;
  overflow: hidden;
  padding: 0 20px;
  color: rgba(255,255,255,0.7);
  font-size: 0.95rem;
  line-height: 1.7;
  transition: all 0.3s ease;
}

/* active */
.faq-item.active {
  border-color: rgba(255,193,7,0.3);
}

.faq-item.active .faq-answer {
  max-height: 300px;
  padding: 0 20px 18px;
}

/* hover */
.faq-item:hover {
  transform: translateY(-2px);
}

/* responsive */
@media (max-width: 991px) {
  .faq-shell {
    padding: 28px 20px;
  }
}

/* ===== FOOTER ===== */

.site-footer {
  position: relative;
  background:
    radial-gradient(circle at top left, rgba(255, 193, 7, 0.08), transparent 22%),
    radial-gradient(circle at bottom right, rgba(0, 47, 176, 0.10), transparent 28%),
    linear-gradient(180deg, rgba(7, 12, 24, 0.98) 0%, rgba(4, 8, 18, 1) 100%);
  overflow: hidden;
}

.footer-top {
  padding: 0 0 24px;
}

.footer-shell {
  position: relative;
  padding: 42px 38px 28px;
  border-radius: 32px 32px 0 0;
  background: rgba(255, 255, 255, 0.028);
  backdrop-filter: blur(9px);
  -webkit-backdrop-filter: blur(9px);
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-bottom: none;
  box-shadow:
    0 18px 60px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

/* Brand */
.footer-logo-wrap {
  margin-bottom: 16px;
}

.footer-logo {
  color: #ffffff;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.8px;
  text-decoration: none;
}

.footer-logo:hover {
  color: #ffffff;
  text-decoration: none;
}

.footer-brand-text {
  margin-bottom: 20px;
  color: rgba(255, 255, 255, 0.72) !important;
  line-height: 1.82;
  font-size: 0.98rem;
}

.footer-trust-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.footer-trust-list span {
  display: inline-flex;
  align-items: center;
  padding: 9px 14px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.88);
  font-size: 0.85rem;
  font-weight: 600;
}

.footer-trust-list i {
  color: #ffc107;
}

/* Titles */
.footer-title {
  margin-bottom: 18px;
  color: #ffffff;
  font-size: 1.1rem;
  font-weight: 600;
}

/* Links */
.footer-links {
  margin: 0;
  padding: 0;
  list-style: none;
}

.footer-links li {
  margin-bottom: 12px;
}

.footer-links li:last-child {
  margin-bottom: 0;
}

.footer-links a {
  color: rgba(255, 255, 255, 0.72);
  text-decoration: none;
  transition: color 0.25s ease, transform 0.25s ease;
  display: inline-flex;
  align-items: center;
}

.footer-links a:hover {
  color: #ffc107;
  transform: translateX(3px);
  text-decoration: none;
}

/* Bottom info panel */
.footer-bottom-panel {
  margin-top: 34px;
  padding-top: 26px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.footer-disclaimer {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 22px 20px;
  border-radius: 24px;
  background:
    linear-gradient(135deg, rgba(255, 193, 7, 0.08), rgba(255, 255, 255, 0.02));
  border: 1px solid rgba(255, 193, 7, 0.20);
  box-shadow:
    0 14px 30px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.footer-disclaimer-icon {
  flex: 0 0 auto;
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  background: rgba(255, 193, 7, 0.12);
  color: #ffc107;
  font-size: 1.15rem;
}

.footer-disclaimer-content h5 {
  margin-bottom: 10px;
  color: #ffffff;
  font-size: 1.05rem;
  font-weight: 600;
}

.footer-disclaimer-content p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.74) !important;
  line-height: 1.75;
}

.footer-badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 10px;
}

.footer-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 10px 16px;
  border-radius: 999px;
  background: rgba(0, 47, 176, 0.14);
  border: 1px solid rgba(72, 123, 255, 0.22);
  color: #dbe7ff;
  font-size: 0.84rem;
  font-weight: 700;
  letter-spacing: 0.25px;
  text-transform: uppercase;
}

/* Copyright */
.footer-bottom {
  margin-top: 26px;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.footer-copy {
  text-align: center;
}

.footer-copy p {
  color: rgba(255, 255, 255, 0.62);
  font-size: 0.92rem;
  line-height: 1.7;
}

/* Responsive */
@media only screen and (max-width: 991.98px) {
  .footer-shell {
    padding: 34px 22px 24px;
    border-radius: 28px 28px 0 0;
  }

  .footer-logo {
    font-size: 1.75rem;
  }
}

@media only screen and (max-width: 767.98px) {
  .footer-disclaimer {
    flex-direction: column;
  }

  .footer-badges {
    justify-content: flex-start;
  }
}

@media only screen and (max-width: 575.98px) {
  .footer-shell {
    padding: 28px 16px 22px;
    border-radius: 24px 24px 0 0;
  }

  .footer-logo {
    font-size: 1.55rem;
  }

  .footer-title {
    font-size: 1rem;
  }

  .footer-brand-text,
  .footer-disclaimer-content p,
  .footer-copy p {
    font-size: 0.92rem;
  }
}

/* ===== NAVBAR MOBILE FIX ===== */

#navbar {
  background: rgba(4, 10, 22, 0.96);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

#navbar .container.navbar-custom-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: nowrap;
}

/* Brand */
.navbar-brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  margin-right: 12px;
  color: #ffffff !important;
  text-decoration: none;
  font-size: 2.1rem;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.8px;
}

.navbar-brand:hover {
  color: #ffffff !important;
  text-decoration: none;
}

/* brand versions */
.brand-text-full,
.brand-text-short {
  min-width: 0;
  white-space: nowrap;
}

.brand-text-short {
  display: none;
}

.brand-icon {
  flex: 0 0 auto;
  font-size: 1.6rem;
  color: #ffffff;
}

/* Toggler */
.navbar-toggler {
  flex: 0 0 auto;
  padding: 10px 12px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 16px;
  box-shadow: none !important;
}

.navbar-toggler:focus {
  box-shadow: none !important;
}

.navbar-toggler-icon {
  filter: brightness(0) invert(1);
}

/* Actions */
.navbar-actions {
  display: flex;
  align-items: center;
  gap: 12px;
}

.navbar-btn-primary,
.navbar-btn-secondary {
  min-width: 150px;
  padding: 12px 24px;
  border-radius: 999px;
  font-weight: 600;
  font-size: 0.96rem;
  white-space: nowrap;
}

/* Tablet */
@media (max-width: 1199.98px) {
  .navbar-brand {
    font-size: 1.8rem;
  }

  .brand-icon {
    font-size: 1.35rem;
  }
}

/* Collapse menu */
@media (max-width: 991.98px) {
  #navbar .container.navbar-custom-wrap {
    align-items: center;
  }

  .navbar-brand {
    max-width: calc(100% - 80px);
    margin-right: 0;
    font-size: 1.4rem;
  }

  .brand-icon {
    font-size: 1.1rem;
  }

  #navbarSupportedContent {
    width: 100%;
    margin-top: 16px;
    padding: 16px;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.06);
  }

  .navbar-actions {
    flex-direction: column;
    align-items: stretch !important;
    width: 100%;
    gap: 12px;
  }

  .navbar-btn-primary,
  .navbar-btn-secondary {
    width: 100%;
    min-width: 100%;
    justify-content: center;
    text-align: center;
  }
}

/* MOBILE FIX */
@media (max-width: 575.98px) {
  .navbar-brand {
    max-width: calc(100% - 65px);
    font-size: 1rem;
    letter-spacing: -0.2px;
    gap: 6px;
  }

  .brand-text-full {
    display: none;
  }

  .brand-text-short {
    display: inline;
  }

  .brand-icon {
    display: none;
  }

  .navbar-toggler {
    padding: 8px 10px;
    border-radius: 14px;
  }

  #navbarSupportedContent {
    margin-top: 14px;
    padding: 14px;
    border-radius: 18px;
  }

  .navbar-btn-primary,
  .navbar-btn-secondary {
    padding: 11px 18px;
    font-size: 0.9rem;
  }
}

/* =========================================================
  ABOUT SECTION
========================================================= */

.about-section {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 12% 10%, rgba(0, 47, 176, 0.10), transparent 28%),
    radial-gradient(circle at 90% 80%, rgba(255, 193, 7, 0.05), transparent 24%),
    #050b18;
}

.about-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.about-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  padding: 9px 16px;
  border: 1px solid rgba(255, 193, 7, 0.24);
  border-radius: 999px;
  background: rgba(255, 193, 7, 0.07);
  color: #ffc107;
  font-size: 0.86rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.about-heading h2 {
  max-width: 850px;
  margin: 0 auto;
  font-size: 3rem;
  line-height: 1.15;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.about-heading-text {
  max-width: 760px;
  margin-top: 20px;
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.68) !important;
  font-size: 1.05rem;
  line-height: 1.8;
}


/* Main Feature */

.about-feature {
  overflow: hidden;
  margin-bottom: 32px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.025);
  box-shadow: 0 22px 60px rgba(0, 0, 0, 0.25);
}

.about-image-wrap {
  position: relative;
  height: 100%;
  min-height: 560px;
  overflow: hidden;
}

.about-image {
  width: 100%;
  height: 100%;
  min-height: 560px;
  object-fit: cover;
  display: block;
}

.about-image-wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(
      90deg,
      transparent 60%,
      rgba(5, 11, 24, 0.35) 100%
    );
  pointer-events: none;
}

.about-image-badge {
  position: absolute;
  left: 28px;
  bottom: 28px;
  z-index: 2;
  display: flex;
  flex-direction: column;
  min-width: 150px;
  padding: 18px 22px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 18px;
  background: rgba(5, 11, 24, 0.78);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.about-image-year {
  color: #ffc107;
  font-size: 2rem;
  line-height: 1;
  font-weight: 700;
}

.about-image-label {
  margin-top: 7px;
  color: rgba(255, 255, 255, 0.76);
  font-size: 0.82rem;
  font-weight: 500;
}

.about-main-content {
  height: 100%;
  padding: 58px 54px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.about-eyebrow {
  display: block;
  margin-bottom: 13px;
  color: #ffc107;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.about-main-content h3 {
  margin-bottom: 24px;
  font-size: 2.25rem;
  line-height: 1.22;
  font-weight: 650;
  letter-spacing: -0.7px;
}

.about-main-content p {
  margin-bottom: 18px;
  color: rgba(255, 255, 255, 0.68) !important;
  line-height: 1.8;
}

.about-main-content p:last-child {
  margin-bottom: 0;
}


/* Facts */

.about-facts {
  margin-bottom: 32px;
}

.about-fact-card {
  padding: 28px 25px;
  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 22px;
  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.045),
      rgba(255, 255, 255, 0.018)
    );
  transition:
    transform 0.3s ease,
    border-color 0.3s ease,
    background 0.3s ease;
}

.about-fact-card:hover {
  transform: translateY(-5px);
  border-color: rgba(255, 193, 7, 0.28);
  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.055),
      rgba(255, 255, 255, 0.02)
    );
}

.about-fact-icon {
  width: 52px;
  height: 52px;
  margin-bottom: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 15px;
  background: rgba(255, 193, 7, 0.09);
  border: 1px solid rgba(255, 193, 7, 0.18);
}

.about-fact-icon i {
  color: #ffc107;
  font-size: 1.25rem;
}

.about-fact-label {
  display: block;
  margin-bottom: 5px;
  color: rgba(255, 255, 255, 0.48);
  font-size: 0.74rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.about-fact-card h3 {
  margin-bottom: 12px;
  color: #ffffff;
  font-size: 1.45rem;
  font-weight: 600;
}

.about-fact-card p {
  margin: 0;
  color: rgba(255, 255, 255, 0.62) !important;
  font-size: 0.91rem;
  line-height: 1.7;
}


/* Detailed Cards */

.about-detail-card {
  position: relative;
  padding: 38px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 26px;
  background: rgba(255, 255, 255, 0.025);
}

.about-detail-large {
  background:
    radial-gradient(circle at 100% 0%, rgba(0, 47, 176, 0.12), transparent 35%),
    rgba(255, 255, 255, 0.025);
}

.about-regulation-card {
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.07), transparent 38%),
    rgba(255, 255, 255, 0.025);
}

.about-detail-icon {
  width: 58px;
  height: 58px;
  margin-bottom: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 17px;
  border: 1px solid rgba(255, 193, 7, 0.18);
  background: rgba(255, 193, 7, 0.07);
}

.about-detail-icon i {
  color: #ffc107;
  font-size: 1.4rem;
}

.about-detail-card h3 {
  max-width: 620px;
  margin-bottom: 19px;
  font-size: 1.75rem;
  line-height: 1.3;
  font-weight: 600;
}

.about-detail-card p {
  color: rgba(255, 255, 255, 0.65) !important;
  line-height: 1.78;
}


/* Services */

.about-service-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 11px;
  margin-top: 28px;
}

.about-service-grid span {
  min-height: 56px;
  padding: 12px 13px;
  display: flex;
  align-items: center;
  gap: 9px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 13px;
  background: rgba(255, 255, 255, 0.025);
  color: rgba(255, 255, 255, 0.75);
  font-size: 0.84rem;
}

.about-service-grid i {
  width: 20px;
  color: #ffc107;
  text-align: center;
}


/* Regulation List */

.about-regulation-list {
  margin-top: 27px;
  padding-top: 23px;
  border-top: 1px solid rgba(255, 255, 255, 0.07);
}

.about-regulation-list > div {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
  color: rgba(255, 255, 255, 0.73);
  font-size: 0.92rem;
}

.about-regulation-list > div:last-child {
  margin-bottom: 0;
}

.about-regulation-list i {
  width: 25px;
  height: 25px;
  flex: 0 0 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(255, 193, 7, 0.09);
  color: #ffc107;
  font-size: 0.67rem;
}


/* Responsive */

@media (max-width: 1199.98px) {

  .about-heading h2 {
    font-size: 2.6rem;
  }

  .about-main-content {
    padding: 44px 38px;
  }

  .about-service-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}


@media (max-width: 991.98px) {

  .about-image-wrap,
  .about-image {
    min-height: 440px;
  }

  .about-image-wrap::after {
    background:
      linear-gradient(
        180deg,
        transparent 65%,
        rgba(5, 11, 24, 0.35)
      );
  }

  .about-main-content {
    padding: 40px 32px;
  }

  .about-heading h2 {
    font-size: 2.25rem;
  }
}


@media (max-width: 767.98px) {

  .about-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .about-heading {
    margin-bottom: 36px;
  }

  .about-heading h2 {
    font-size: 1.95rem;
  }

  .about-heading-text {
    font-size: 0.98rem;
  }

  .about-feature {
    border-radius: 22px;
  }

  .about-image-wrap,
  .about-image {
    min-height: 360px;
  }

  .about-main-content {
    padding: 34px 24px;
  }

  .about-main-content h3 {
    font-size: 1.75rem;
  }

  .about-detail-card {
    padding: 30px 24px;
  }

  .about-service-grid {
    grid-template-columns: 1fr 1fr;
  }
}


@media (max-width: 575.98px) {

  .about-kicker {
    font-size: 0.74rem;
  }

  .about-heading h2 {
    font-size: 1.7rem;
  }

  .about-image-wrap,
  .about-image {
    min-height: 300px;
  }

  .about-image-badge {
    left: 18px;
    bottom: 18px;
  }

  .about-main-content {
    padding: 30px 20px;
  }

  .about-service-grid {
    grid-template-columns: 1fr;
  }

  .about-detail-card {
    padding: 27px 20px;
  }
}

/* =========================================================
  CASINO OVERVIEW
========================================================= */

.casino-overview-section {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 8% 10%, rgba(0, 47, 176, 0.11), transparent 28%),
    radial-gradient(circle at 92% 75%, rgba(255, 193, 7, 0.055), transparent 25%),
    #030816;
}


/* Heading */

.casino-overview-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.casino-overview-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  padding: 9px 17px;
  border: 1px solid rgba(255, 193, 7, 0.25);
  border-radius: 999px;
  background: rgba(255, 193, 7, 0.07);
  color: #ffc107;
  font-size: 0.84rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.casino-overview-heading h2 {
  margin-bottom: 20px;
  color: #ffffff;
  font-size: 3rem;
  line-height: 1.15;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.casino-overview-intro {
  max-width: 790px;
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.68) !important;
  font-size: 1.05rem;
  line-height: 1.8;
}


/* Primary cards */

.casino-overview-primary {
  margin-bottom: 32px;
}

.casino-primary-card {
  position: relative;
  overflow: hidden;
  padding: 38px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 27px;
  background:
    radial-gradient(circle at 100% 0%, rgba(0, 47, 176, 0.14), transparent 42%),
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.045),
      rgba(255, 255, 255, 0.018)
    );
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.20);
  transition:
    transform 0.3s ease,
    border-color 0.3s ease;
}

.casino-primary-card:hover {
  transform: translateY(-5px);
  border-color: rgba(255, 193, 7, 0.27);
}

.casino-primary-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 27px;
}

.casino-primary-icon {
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 193, 7, 0.20);
  border-radius: 17px;
  background: rgba(255, 193, 7, 0.08);
}

.casino-primary-icon i {
  color: #ffc107;
  font-size: 1.45rem;
}

.casino-primary-label {
  color: rgba(255, 255, 255, 0.43);
  font-size: 0.76rem;
  font-weight: 600;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.casino-primary-number {
  margin-bottom: 4px;
  color: #ffffff;
  font-size: 4.4rem;
  line-height: 1;
  font-weight: 700;
  letter-spacing: -3px;
}

.casino-primary-number span {
  color: #ffc107;
  font-size: 2.6rem;
}

.casino-primary-card h3 {
  margin: 0 0 17px;
  color: #ffffff;
  font-size: 1.65rem;
  font-weight: 600;
}

.casino-primary-card p {
  max-width: 570px;
  margin-bottom: 25px;
  color: rgba(255, 255, 255, 0.64) !important;
  line-height: 1.78;
}

.casino-card-link,
.casino-feature-link {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #ffc107;
  font-size: 0.9rem;
  font-weight: 600;
}

.casino-card-link i,
.casino-feature-link i {
  font-size: 0.72rem;
  transition: transform 0.25s ease;
}

.casino-card-link:hover,
.casino-feature-link:hover {
  color: #ffffff;
}

.casino-card-link:hover i,
.casino-feature-link:hover i {
  transform: translateX(4px);
}


/* Experience */

.casino-experience-wrap {
  padding: 38px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.02);
}

.casino-experience-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 40px;
  margin-bottom: 31px;
}

.casino-overview-eyebrow {
  display: block;
  margin-bottom: 9px;
  color: #ffc107;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.casino-experience-header h3 {
  margin: 0;
  color: #ffffff;
  font-size: 1.85rem;
  font-weight: 600;
}

.casino-experience-header > p {
  max-width: 510px;
  margin: 0;
  color: rgba(255, 255, 255, 0.57) !important;
  font-size: 0.92rem;
  line-height: 1.7;
}


/* Feature cards */

.casino-feature-card {
  position: relative;
  padding: 27px 25px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 20px;
  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );
  transition:
    transform 0.28s ease,
    border-color 0.28s ease,
    background 0.28s ease;
}

.casino-feature-card:hover {
  transform: translateY(-5px);
  border-color: rgba(255, 193, 7, 0.24);
  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.015)
    );
}

.casino-feature-icon {
  width: 50px;
  height: 50px;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 14px;
  background: rgba(255, 193, 7, 0.07);
}

.casino-feature-icon i {
  color: #ffc107;
  font-size: 1.15rem;
}

.casino-feature-card h4 {
  margin-bottom: 12px;
  color: #ffffff;
  font-size: 1.22rem;
  font-weight: 600;
}

.casino-feature-card p {
  margin-bottom: 19px;
  color: rgba(255, 255, 255, 0.59) !important;
  font-size: 0.9rem;
  line-height: 1.72;
}

.casino-feature-tag {
  display: inline-flex;
  padding: 7px 11px;
  border-radius: 999px;
  background: rgba(255, 193, 7, 0.07);
  color: rgba(255, 193, 7, 0.85);
  font-size: 0.74rem;
  font-weight: 600;
}

.casino-feature-vip {
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.08), transparent 48%),
    rgba(255, 255, 255, 0.02);
}


/* Bottom visitor block */

.casino-overview-footer {
  margin-top: 32px;
  padding: 29px 32px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 23px;
  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 22px;
  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.055),
      rgba(255, 255, 255, 0.018)
    );
}

.casino-overview-footer-icon {
  width: 58px;
  height: 58px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 17px;
  background: rgba(255, 193, 7, 0.09);
  border: 1px solid rgba(255, 193, 7, 0.18);
}

.casino-overview-footer-icon i {
  color: #ffc107;
  font-size: 1.35rem;
}

.casino-overview-footer-content > span {
  display: block;
  margin-bottom: 5px;
  color: #ffc107;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.casino-overview-footer-content h3 {
  margin-bottom: 7px;
  color: #ffffff;
  font-size: 1.2rem;
  font-weight: 600;
}

.casino-overview-footer-content p {
  max-width: 760px;
  margin: 0;
  color: rgba(255, 255, 255, 0.58) !important;
  font-size: 0.87rem;
  line-height: 1.65;
}

.casino-overview-footer-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
  color: #ffc107;
  font-size: 0.87rem;
  font-weight: 600;
}

.casino-overview-footer-link:hover {
  color: #ffffff;
}


/* Responsive */

@media (max-width: 991.98px) {

  .casino-overview-heading h2 {
    font-size: 2.35rem;
  }

  .casino-experience-header {
    display: block;
  }

  .casino-experience-header > p {
    max-width: 700px;
    margin-top: 15px;
  }

  .casino-overview-footer {
    grid-template-columns: auto 1fr;
  }

  .casino-overview-footer-link {
    grid-column: 2;
  }
}


@media (max-width: 767.98px) {

  .casino-overview-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .casino-overview-heading {
    margin-bottom: 38px;
  }

  .casino-overview-heading h2 {
    font-size: 2rem;
  }

  .casino-primary-card {
    padding: 30px 24px;
  }

  .casino-primary-number {
    font-size: 3.6rem;
  }

  .casino-experience-wrap {
    padding: 29px 22px;
  }

  .casino-overview-footer {
    padding: 25px 22px;
  }
}


@media (max-width: 575.98px) {

  .casino-overview-heading h2 {
    font-size: 1.75rem;
  }

  .casino-overview-intro {
    font-size: 0.96rem;
  }

  .casino-primary-number {
    font-size: 3.2rem;
  }

  .casino-primary-number span {
    font-size: 2rem;
  }

  .casino-primary-top {
    align-items: flex-start;
  }

  .casino-experience-wrap {
    border-radius: 22px;
  }

  .casino-overview-footer {
    display: block;
  }

  .casino-overview-footer-icon {
    margin-bottom: 18px;
  }

  .casino-overview-footer-link {
    margin-top: 17px;
  }
}

/* =========================================================
  GAMING MACHINES
========================================================= */

.gaming-machines-section {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 90% 15%, rgba(0, 47, 176, 0.11), transparent 28%),
    radial-gradient(circle at 8% 82%, rgba(255, 193, 7, 0.05), transparent 24%),
    #050b18;
}


/* Heading */

.gaming-machines-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.gaming-machines-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  padding: 9px 17px;
  border: 1px solid rgba(255, 193, 7, 0.24);
  border-radius: 999px;
  background: rgba(255, 193, 7, 0.07);
  color: #ffc107;
  font-size: 0.84rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.gaming-machines-heading h2 {
  margin-bottom: 20px;
  color: #ffffff;
  font-size: 3rem;
  line-height: 1.15;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.gaming-machines-intro {
  max-width: 780px;
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.67) !important;
  font-size: 1.05rem;
  line-height: 1.8;
}


/* Main image + content */

.gaming-machines-feature {
  margin-bottom: 32px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.025);
  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.24);
}

.gaming-machines-image-wrap {
  position: relative;
  height: 100%;
  min-height: 520px;
  overflow: hidden;
}

.gaming-machines-image {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
}

.gaming-machines-image-wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(
      90deg,
      transparent 55%,
      rgba(5, 11, 24, 0.36) 100%
    );
  pointer-events: none;
}

.gaming-machines-image-stat {
  position: absolute;
  left: 27px;
  bottom: 27px;
  z-index: 2;
  min-width: 180px;
  padding: 19px 22px;
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 18px;
  background: rgba(5, 11, 24, 0.82);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.gaming-machines-image-number {
  color: #ffc107;
  font-size: 2.35rem;
  line-height: 1;
  font-weight: 700;
}

.gaming-machines-image-label {
  margin-top: 7px;
  color: rgba(255, 255, 255, 0.73);
  font-size: 0.81rem;
  font-weight: 500;
}

.gaming-machines-main-content {
  height: 100%;
  padding: 53px 50px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.gaming-machines-eyebrow {
  display: block;
  margin-bottom: 11px;
  color: #ffc107;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.gaming-machines-main-content h3 {
  margin-bottom: 22px;
  color: #ffffff;
  font-size: 2.15rem;
  line-height: 1.25;
  font-weight: 600;
  letter-spacing: -0.6px;
}

.gaming-machines-main-content p {
  margin-bottom: 17px;
  color: rgba(255, 255, 255, 0.66) !important;
  line-height: 1.78;
}

.gaming-machines-main-content p:last-child {
  margin-bottom: 0;
}


/* Facts */

.gaming-machines-facts {
  margin-bottom: 32px;
}

.gaming-machine-fact-card {
  padding: 27px 24px;
  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 21px;
  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.04),
      rgba(255, 255, 255, 0.016)
    );
  transition:
    transform 0.28s ease,
    border-color 0.28s ease;
}

.gaming-machine-fact-card:hover {
  transform: translateY(-5px);
  border-color: rgba(255, 193, 7, 0.27);
}

.gaming-machine-fact-icon {
  width: 51px;
  height: 51px;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 193, 7, 0.18);
  border-radius: 15px;
  background: rgba(255, 193, 7, 0.07);
}

.gaming-machine-fact-icon i {
  color: #ffc107;
  font-size: 1.15rem;
}

.gaming-machine-fact-label {
  display: block;
  margin-bottom: 6px;
  color: rgba(255, 255, 255, 0.43);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.gaming-machine-fact-card h3 {
  margin-bottom: 11px;
  color: #ffffff;
  font-size: 1.42rem;
  font-weight: 600;
}

.gaming-machine-fact-card p {
  margin: 0;
  color: rgba(255, 255, 255, 0.59) !important;
  font-size: 0.9rem;
  line-height: 1.7;
}


/* Detail cards */

.gaming-machines-details {
  margin-bottom: 32px;
}

.gaming-machines-detail-card {
  padding: 37px;
  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 25px;
  background:
    radial-gradient(circle at 100% 0%, rgba(0, 47, 176, 0.10), transparent 40%),
    rgba(255, 255, 255, 0.022);
}

.gaming-machines-detail-jackpot {
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.07), transparent 42%),
    rgba(255, 255, 255, 0.022);
}

.gaming-machines-detail-icon {
  width: 56px;
  height: 56px;
  margin-bottom: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 193, 7, 0.18);
  border-radius: 16px;
  background: rgba(255, 193, 7, 0.07);
}

.gaming-machines-detail-icon i {
  color: #ffc107;
  font-size: 1.3rem;
}

.gaming-machines-detail-card h3 {
  margin-bottom: 17px;
  color: #ffffff;
  font-size: 1.55rem;
  line-height: 1.32;
  font-weight: 600;
}

.gaming-machines-detail-card p {
  margin-bottom: 15px;
  color: rgba(255, 255, 255, 0.62) !important;
  line-height: 1.75;
}

.gaming-machines-detail-card p:last-child {
  margin-bottom: 0;
}


/* Bottom */

.gaming-machines-bottom {
  padding: 30px 32px;
  display: flex;
  align-items: flex-start;
  gap: 22px;
  border: 1px solid rgba(255, 193, 7, 0.16);
  border-radius: 22px;
  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.05),
      rgba(255, 255, 255, 0.017)
    );
}

.gaming-machines-bottom-icon {
  width: 57px;
  height: 57px;
  flex: 0 0 57px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 193, 7, 0.18);
  border-radius: 16px;
  background: rgba(255, 193, 7, 0.08);
}

.gaming-machines-bottom-icon i {
  color: #ffc107;
  font-size: 1.25rem;
}

.gaming-machines-bottom-content h3 {
  margin-bottom: 9px;
  color: #ffffff;
  font-size: 1.28rem;
  font-weight: 600;
}

.gaming-machines-bottom-content p {
  max-width: 940px;
  margin: 0;
  color: rgba(255, 255, 255, 0.59) !important;
  font-size: 0.91rem;
  line-height: 1.7;
}


/* Responsive */

@media (max-width: 991.98px) {

  .gaming-machines-heading h2 {
    font-size: 2.35rem;
  }

  .gaming-machines-image-wrap,
  .gaming-machines-image {
    min-height: 430px;
  }

  .gaming-machines-main-content {
    padding: 40px 34px;
  }
}


@media (max-width: 767.98px) {

  .gaming-machines-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .gaming-machines-heading {
    margin-bottom: 38px;
  }

  .gaming-machines-heading h2 {
    font-size: 2rem;
  }

  .gaming-machines-feature {
    border-radius: 22px;
  }

  .gaming-machines-image-wrap,
  .gaming-machines-image {
    min-height: 350px;
  }

  .gaming-machines-main-content {
    padding: 34px 24px;
  }

  .gaming-machines-main-content h3 {
    font-size: 1.75rem;
  }

  .gaming-machines-detail-card {
    padding: 30px 24px;
  }

  .gaming-machines-bottom {
    padding: 26px 23px;
  }
}


@media (max-width: 575.98px) {

  .gaming-machines-heading h2 {
    font-size: 1.72rem;
  }

  .gaming-machines-intro {
    font-size: 0.96rem;
  }

  .gaming-machines-image-wrap,
  .gaming-machines-image {
    min-height: 290px;
  }

  .gaming-machines-image-stat {
    left: 18px;
    bottom: 18px;
  }

  .gaming-machines-bottom {
    display: block;
  }

  .gaming-machines-bottom-icon {
    margin-bottom: 18px;
  }
}

/* =========================================================
  TABLE GAMES
========================================================= */

.table-games-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(
      circle at 86% 10%,
      rgba(0, 47, 176, 0.11),
      transparent 27%
    ),
    radial-gradient(
      circle at 8% 88%,
      rgba(255, 193, 7, 0.045),
      transparent 23%
    ),
    #030816;
}


/* =========================================================
  HEADING
========================================================= */

.table-games-heading {
  max-width: 860px;
  margin: 0 auto 55px;
}

.table-games-kicker {
  display: inline-flex;
  align-items: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.22);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.table-games-heading h2 {
  margin-bottom: 19px;

  color: #ffffff;

  font-size: 3rem;
  font-weight: 700;
  line-height: 1.14;
  letter-spacing: -1.2px;
}

.table-games-intro {
  max-width: 750px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.64) !important;

  font-size: 1.03rem;
  line-height: 1.8;
}


/* =========================================================
  MAIN LAYOUT
========================================================= */

.table-games-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(330px, 0.65fr);
  gap: 28px;
  align-items: start;
}


/* =========================================================
  GAME LIST
========================================================= */

.table-games-list {
  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 26px;

  background: rgba(255, 255, 255, 0.018);

  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.17);
}

.table-game-row {
  position: relative;

  display: grid;
  grid-template-columns: 44px 54px minmax(0, 1fr) 125px;
  gap: 20px;
  align-items: center;

  padding: 28px 28px;

  border-bottom: 1px solid rgba(255, 255, 255, 0.065);

  transition:
    background 0.25s ease,
    padding-left 0.25s ease;
}

.table-game-row:last-child {
  border-bottom: 0;
}

.table-game-row:hover {
  padding-left: 34px;

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.01)
    );
}


/* Number */

.table-game-row-number {
  color: rgba(255, 255, 255, 0.18);

  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}


/* Icon */

.table-game-row-icon {
  width: 52px;
  height: 52px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);
}

.table-game-row-icon i {
  color: #ffc107;

  font-size: 1.14rem;
}


/* Content */

.table-game-type {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.table-game-row-content h3 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 1.25rem;
  font-weight: 600;
}

.table-game-row-content p {
  max-width: 570px;

  margin: 0;

  color: rgba(255, 255, 255, 0.56) !important;

  font-size: 0.86rem;
  line-height: 1.67;
}


/* Meta */

.table-game-row-meta {
  padding-left: 18px;

  border-left: 1px solid rgba(255, 255, 255, 0.07);
}

.table-game-row-meta span {
  display: block;

  margin-bottom: 5px;

  color: rgba(255, 255, 255, 0.34);

  font-size: 0.63rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.table-game-row-meta p {
  margin: 0;

  color: rgba(255, 255, 255, 0.7) !important;

  font-size: 0.78rem;
  font-weight: 500;
  line-height: 1.45;
}


/* =========================================================
  SIDEBAR
========================================================= */

.table-games-sidebar {
  display: flex;
  flex-direction: column;
  gap: 16px;
}


/* Main stat */

.table-games-stat-block {
  padding: 32px 29px;

  border: 1px solid rgba(255, 193, 7, 0.16);
  border-radius: 24px;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(255, 193, 7, 0.075),
      transparent 48%
    ),
    rgba(255, 255, 255, 0.025);
}

.table-games-stat-label,
.table-games-sidebar-label {
  display: block;

  margin-bottom: 12px;

  color: rgba(255, 255, 255, 0.38);

  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.table-games-stat-number {
  margin-bottom: 4px;

  color: #ffffff;

  font-size: 4.2rem;
  font-weight: 700;
  line-height: 0.95;
  letter-spacing: -3px;
}

.table-games-stat-number span {
  color: #ffc107;

  font-size: 2.4rem;
}

.table-games-stat-block h3 {
  margin: 0 0 13px;

  color: #ffffff;

  font-size: 1.35rem;
  font-weight: 600;
}

.table-games-stat-block p {
  margin: 0;

  color: rgba(255, 255, 255, 0.56) !important;

  font-size: 0.87rem;
  line-height: 1.7;
}


/* Sidebar blocks */

.table-games-sidebar-block {
  padding: 27px 27px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 21px;

  background: rgba(255, 255, 255, 0.02);
}


/* Gaming formats */

.table-games-format {
  display: grid;
  grid-template-columns: 45px 1fr;
  gap: 13px;

  padding: 14px 0;

  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.table-games-format:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.table-games-format:first-of-type {
  padding-top: 0;
}

.table-games-format-icon {
  width: 43px;
  height: 43px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 12px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.table-games-format-icon i {
  font-size: 0.95rem;
}

.table-games-format h4 {
  margin: 0 0 4px;

  color: #ffffff;

  font-size: 0.91rem;
  font-weight: 600;
}

.table-games-format p {
  margin: 0;

  color: rgba(255, 255, 255, 0.49) !important;

  font-size: 0.77rem;
  line-height: 1.55;
}


/* Beginner */

.table-games-beginner-block {
  border-color: rgba(255, 193, 7, 0.13);

  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.04),
      rgba(255, 255, 255, 0.018)
    );
}

.table-games-beginner-title {
  display: flex;
  align-items: center;
  gap: 11px;

  margin-bottom: 13px;
}

.table-games-beginner-title i {
  color: #ffc107;

  font-size: 1.05rem;
}

.table-games-beginner-title h3 {
  margin: 0;

  color: #ffffff;

  font-size: 1.05rem;
  font-weight: 600;
}

.table-games-beginner-block > p {
  margin: 0 0 11px;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.82rem;
  line-height: 1.64;
}

.table-games-beginner-block > p:last-child {
  margin-bottom: 0;
}


/* Guide list */

.table-games-guide-list {
  padding: 0;
  margin: 0;
}

.table-games-guide-list li {
  display: flex;
  align-items: center;
  gap: 10px;

  padding: 9px 0;

  color: rgba(255, 255, 255, 0.67);

  font-size: 0.82rem;

  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.table-games-guide-list li:last-child {
  border-bottom: 0;
}

.table-games-guide-list i {
  width: 21px;
  height: 21px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: rgba(255, 193, 7, 0.07);

  color: #ffc107;

  font-size: 0.58rem;
}


/* =========================================================
  RESPONSIVE
========================================================= */

@media (max-width: 1199.98px) {

  .table-games-layout {
    grid-template-columns: minmax(0, 1.4fr) minmax(300px, 0.6fr);
  }

  .table-game-row {
    grid-template-columns: 35px 50px minmax(0, 1fr);
  }

  .table-game-row-meta {
    grid-column: 3;
    padding-left: 0;
    border-left: 0;
  }

  .table-game-row-meta span,
  .table-game-row-meta p {
    display: inline;
  }

  .table-game-row-meta span {
    margin-right: 6px;
  }
}


@media (max-width: 991.98px) {

  .table-games-heading h2 {
    font-size: 2.35rem;
  }

  .table-games-layout {
    grid-template-columns: 1fr;
  }

  .table-games-sidebar {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}


@media (max-width: 767.98px) {

  .table-games-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .table-games-heading {
    margin-bottom: 38px;
  }

  .table-games-heading h2 {
    font-size: 2rem;
  }

  .table-games-list {
    border-radius: 21px;
  }

  .table-game-row {
    grid-template-columns: 43px 1fr;
    gap: 16px;

    padding: 24px 21px;
  }

  .table-game-row:hover {
    padding-left: 21px;
  }

  .table-game-row-number {
    display: none;
  }

  .table-game-row-icon {
    grid-column: 1;
    grid-row: 1;
  }

  .table-game-row-content {
    grid-column: 2;
  }

  .table-game-row-meta {
    grid-column: 2;
  }

  .table-games-sidebar {
    grid-template-columns: 1fr;
  }
}


@media (max-width: 575.98px) {

  .table-games-heading h2 {
    font-size: 1.72rem;
  }

  .table-games-intro {
    font-size: 0.96rem;
  }

  .table-game-row {
    display: block;

    padding: 24px 20px;
  }

  .table-game-row-icon {
    margin-bottom: 16px;
  }

  .table-game-row-meta {
    margin-top: 15px;
    padding-top: 14px;

    border-top: 1px solid rgba(255, 255, 255, 0.06);
  }

  .table-games-stat-block,
  .table-games-sidebar-block {
    padding: 25px 22px;
  }
}

/* =========================================================
  LEARN TO PLAY
========================================================= */

.learn-play-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(
      circle at 8% 12%,
      rgba(0, 47, 176, 0.11),
      transparent 27%
    ),
    radial-gradient(
      circle at 91% 82%,
      rgba(255, 193, 7, 0.045),
      transparent 24%
    ),
    #050b18;
}


/* =========================================================
  HEADING
========================================================= */

.learn-play-heading {
  max-width: 880px;
  margin: 0 auto 52px;
}

.learn-play-kicker {
  display: inline-flex;
  align-items: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.22);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.learn-play-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -1.2px;
}

.learn-play-intro {
  max-width: 760px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.65) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}


/* =========================================================
  INTRO PANEL
========================================================= */

.learn-play-intro-panel {
  display: grid;
  grid-template-columns: 55px minmax(0, 1fr) minmax(290px, 0.65fr);
  gap: 30px;

  margin-bottom: 58px;
  padding: 38px;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 27px;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(0, 47, 176, 0.11),
      transparent 35%
    ),
    rgba(255, 255, 255, 0.022);
}

.learn-play-intro-number span {
  color: rgba(255, 255, 255, 0.18);

  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.learn-play-eyebrow {
  display: block;

  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.71rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.learn-play-intro-content h3 {
  margin: 0 0 16px;

  color: #ffffff;

  font-size: 1.65rem;
  font-weight: 600;
  line-height: 1.3;
}

.learn-play-intro-content p {
  margin: 0 0 14px;

  color: rgba(255, 255, 255, 0.59) !important;

  font-size: 0.91rem;
  line-height: 1.75;
}

.learn-play-intro-content p:last-child {
  margin-bottom: 0;
}


/* Intro points */

.learn-play-intro-points {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
}

.learn-play-intro-point {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 12px;

  padding: 14px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 14px;

  background: rgba(255, 255, 255, 0.018);
}

.learn-play-intro-point > i {
  width: 40px;
  height: 40px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 11px;

  background: rgba(255, 193, 7, 0.07);

  color: #ffc107;

  font-size: 0.9rem;
}

.learn-play-intro-point span {
  display: block;

  margin-bottom: 3px;

  color: #ffffff;

  font-size: 0.83rem;
  font-weight: 600;
}

.learn-play-intro-point p {
  margin: 0;

  color: rgba(255, 255, 255, 0.44) !important;

  font-size: 0.72rem;
  line-height: 1.5;
}


/* =========================================================
  GUIDES HEADING
========================================================= */

.learn-play-guides-heading {
  max-width: 670px;
  margin-bottom: 28px;
}

.learn-play-guides-heading h3 {
  margin: 0 0 10px;

  color: #ffffff;

  font-size: 1.9rem;
  font-weight: 600;
}

.learn-play-guides-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.92rem;
  line-height: 1.7;
}


/* =========================================================
  GUIDES GRID
========================================================= */

.learn-play-guides {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));

  margin-bottom: 32px;

  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.016);
}

.learn-play-guide {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 19px;

  min-height: 215px;
  padding: 28px;

  border-bottom: 1px solid rgba(255, 255, 255, 0.065);
}

.learn-play-guide:nth-child(odd) {
  border-right: 1px solid rgba(255, 255, 255, 0.065);
}

.learn-play-guide:nth-last-child(-n+2) {
  border-bottom: 0;
}

.learn-play-guide-icon {
  width: 54px;
  height: 54px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 15px;

  background: rgba(255, 193, 7, 0.06);
}

.learn-play-guide-icon i {
  color: #ffc107;
  font-size: 1.12rem;
}

.learn-play-guide-type {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.learn-play-guide-content h3 {
  margin: 0 0 9px;

  color: #ffffff;

  font-size: 1.18rem;
  font-weight: 600;
}

.learn-play-guide-content > p {
  margin: 0 0 16px;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.84rem;
  line-height: 1.65;
}


/* Meta chips */

.learn-play-guide-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.learn-play-guide-meta span {
  display: inline-flex;

  padding: 5px 9px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 999px;

  background: rgba(255, 255, 255, 0.02);

  color: rgba(255, 255, 255, 0.48);

  font-size: 0.65rem;
}


/* =========================================================
  BOTTOM
========================================================= */

.learn-play-bottom {
  display: grid;
  grid-template-columns: 1.25fr 0.75fr;
  gap: 16px;
}

.learn-play-help,
.learn-play-safe {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 20px;

  padding: 30px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 22px;

  background: rgba(255, 255, 255, 0.02);
}

.learn-play-safe {
  border-color: rgba(255, 193, 7, 0.14);

  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.04),
      rgba(255, 255, 255, 0.016)
    );
}

.learn-play-bottom-icon {
  width: 55px;
  height: 55px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);
}

.learn-play-bottom-icon i {
  color: #ffc107;
  font-size: 1.15rem;
}

.learn-play-bottom h3 {
  margin: 0 0 9px;

  color: #ffffff;

  font-size: 1.22rem;
  font-weight: 600;
}

.learn-play-bottom p {
  margin: 0;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.84rem;
  line-height: 1.68;
}


/* =========================================================
  RESPONSIVE
========================================================= */

@media (max-width: 991.98px) {

  .learn-play-heading h2 {
    font-size: 2.35rem;
  }

  .learn-play-intro-panel {
    grid-template-columns: 1fr;
  }

  .learn-play-intro-number {
    display: none;
  }

  .learn-play-intro-points {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
  }

  .learn-play-bottom {
    grid-template-columns: 1fr;
  }
}


@media (max-width: 767.98px) {

  .learn-play-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .learn-play-heading h2 {
    font-size: 2rem;
  }

  .learn-play-intro-panel {
    padding: 28px 23px;
    margin-bottom: 45px;
  }

  .learn-play-intro-points {
    grid-template-columns: 1fr;
  }

  .learn-play-guides {
    grid-template-columns: 1fr;
  }

  .learn-play-guide {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.065) !important;
  }

  .learn-play-guide:last-child {
    border-bottom: 0 !important;
  }
}


@media (max-width: 575.98px) {

  .learn-play-heading h2 {
    font-size: 1.72rem;
  }

  .learn-play-intro {
    font-size: 0.96rem;
  }

  .learn-play-guide {
    grid-template-columns: 1fr;
    min-height: 0;
    padding: 24px 21px;
  }

  .learn-play-help,
  .learn-play-safe {
    grid-template-columns: 1fr;
    padding: 25px 22px;
  }
}

/* =========================================================
  TAB, KENO & SPORTS
========================================================= */

.sports-betting-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(
      circle at 90% 12%,
      rgba(0, 47, 176, 0.11),
      transparent 28%
    ),
    radial-gradient(
      circle at 7% 84%,
      rgba(255, 193, 7, 0.045),
      transparent 24%
    ),
    #030816;
}


/* =========================================================
  HEADING
========================================================= */

.sports-betting-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.sports-betting-kicker {
  display: inline-flex;
  align-items: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.22);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.sports-betting-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -1.2px;
}

.sports-betting-intro {
  max-width: 780px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.65) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}


/* =========================================================
  SPORTS BAR FEATURE
========================================================= */

.sports-betting-feature {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(320px, 0.55fr);

  margin-bottom: 28px;

  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 27px;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(0, 47, 176, 0.13),
      transparent 42%
    ),
    rgba(255, 255, 255, 0.022);
}

.sports-betting-feature-main {
  padding: 44px 42px;
}

.sports-betting-eyebrow {
  display: block;

  margin-bottom: 9px;

  color: #ffc107;

  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.sports-betting-feature-main h3 {
  margin: 0 0 18px;

  color: #ffffff;

  font-size: 2rem;
  font-weight: 600;
  line-height: 1.3;
}

.sports-betting-feature-main p {
  max-width: 760px;

  margin: 0 0 14px;

  color: rgba(255, 255, 255, 0.59) !important;

  font-size: 0.93rem;
  line-height: 1.76;
}

.sports-betting-feature-main p:last-child {
  margin-bottom: 0;
}


/* Sports wall */

.sports-betting-feature-side {
  padding: 37px 34px;

  border-left: 1px solid rgba(255, 255, 255, 0.07);

  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.012)
    );
}

.sports-wall-icon {
  width: 58px;
  height: 58px;

  display: flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 24px;

  border: 1px solid rgba(255, 193, 7, 0.18);
  border-radius: 16px;

  background: rgba(255, 193, 7, 0.07);
}

.sports-wall-icon i {
  color: #ffc107;
  font-size: 1.3rem;
}

.sports-wall-label {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.sports-betting-feature-side h3 {
  margin: 0 0 12px;

  color: #ffffff;

  font-size: 1.35rem;
  font-weight: 600;
}

.sports-betting-feature-side > p {
  margin: 0 0 20px;

  color: rgba(255, 255, 255, 0.53) !important;

  font-size: 0.84rem;
  line-height: 1.65;
}


/* Sport tags */

.sports-wall-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.sports-wall-tags span {
  padding: 6px 10px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 999px;

  background: rgba(255, 255, 255, 0.025);

  color: rgba(255, 255, 255, 0.57);

  font-size: 0.68rem;
  font-weight: 500;
}


/* =========================================================
  TAB / KENO / KENO RACING
========================================================= */

.sports-betting-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));

  gap: 16px;

  margin-bottom: 28px;
}

.sports-betting-item {
  position: relative;

  min-height: 100%;

  padding: 31px 28px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 22px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );
}

.sports-betting-item-featured {
  border-color: rgba(255, 193, 7, 0.15);

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(255, 193, 7, 0.065),
      transparent 42%
    ),
    rgba(255, 255, 255, 0.018);
}


/* Number */

.sports-betting-item-number {
  position: absolute;
  top: 24px;
  right: 25px;

  color: rgba(255, 255, 255, 0.14);

  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.09em;
}


/* Icon */

.sports-betting-item-icon {
  width: 55px;
  height: 55px;

  display: flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 23px;

  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);
}

.sports-betting-item-icon i {
  color: #ffc107;
  font-size: 1.2rem;
}


/* Item content */

.sports-betting-item-type {
  display: block;

  margin-bottom: 6px;

  color: #ffc107;

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.sports-betting-item-content > h3 {
  margin: 0 0 13px;

  color: #ffffff;

  font-size: 1.4rem;
  font-weight: 600;
}

.sports-betting-item-content > p {
  min-height: 92px;

  margin: 0 0 22px;

  color: rgba(255, 255, 255, 0.56) !important;

  font-size: 0.87rem;
  line-height: 1.7;
}


/* Detail */

.sports-betting-detail {
  display: grid;
  grid-template-columns: 38px 1fr;
  gap: 12px;

  padding-top: 18px;

  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.sports-betting-detail > i {
  width: 36px;
  height: 36px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 10px;

  background: rgba(255, 193, 7, 0.06);

  color: #ffc107;

  font-size: 0.8rem;
}

.sports-betting-detail span {
  display: block;

  margin-bottom: 3px;

  color: rgba(255, 255, 255, 0.76);

  font-size: 0.79rem;
  font-weight: 600;
}

.sports-betting-detail p {
  margin: 0;

  color: rgba(255, 255, 255, 0.43) !important;

  font-size: 0.72rem;
  line-height: 1.5;
}


/* =========================================================
  KENO RACING STAT
========================================================= */

.keno-racing-stat {
  display: flex;
  align-items: center;
  gap: 15px;

  padding-top: 18px;

  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.keno-racing-time {
  color: #ffc107;

  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1;
}

.keno-racing-stat > div > span {
  display: block;

  margin-bottom: 3px;

  color: #ffffff;

  font-size: 0.79rem;
  font-weight: 600;
}

.keno-racing-stat p {
  margin: 0;

  color: rgba(255, 255, 255, 0.44) !important;

  font-size: 0.72rem;
  line-height: 1.5;
}


/* =========================================================
  RACING INFO
========================================================= */

.sports-betting-info {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) minmax(250px, 0.45fr);
  gap: 24px;
  align-items: center;

  padding: 31px 32px;
  margin-bottom: 28px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 22px;

  background: rgba(255, 255, 255, 0.02);
}

.sports-betting-info-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);
}

.sports-betting-info-icon i {
  color: #ffc107;
  font-size: 1.2rem;
}

.sports-betting-info-content h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.25rem;
  font-weight: 600;
}

.sports-betting-info-content p {
  max-width: 730px;

  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.85rem;
  line-height: 1.67;
}


/* Info list */

.sports-betting-info-list {
  padding-left: 25px;

  border-left: 1px solid rgba(255, 255, 255, 0.07);
}

.sports-betting-info-list > div {
  display: flex;
  align-items: center;
  gap: 10px;

  padding: 7px 0;

  color: rgba(255, 255, 255, 0.64);

  font-size: 0.79rem;
}

.sports-betting-info-list i {
  width: 21px;
  height: 21px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: rgba(255, 193, 7, 0.07);

  color: #ffc107;

  font-size: 0.56rem;
}


/* =========================================================
  VISITOR NOTE
========================================================= */

.sports-betting-note {
  display: grid;
  grid-template-columns: 56px 1fr;
  gap: 21px;

  padding: 29px 31px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 22px;

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.015)
    );
}

.sports-betting-note-icon {
  width: 54px;
  height: 54px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 15px;

  background: rgba(255, 193, 7, 0.07);

  color: #ffc107;
}

.sports-betting-note-icon i {
  font-size: 1.15rem;
}

.sports-betting-note h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.22rem;
  font-weight: 600;
}

.sports-betting-note p {
  max-width: 950px;

  margin: 0;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.85rem;
  line-height: 1.68;
}


/* =========================================================
  RESPONSIVE
========================================================= */

@media (max-width: 991.98px) {

  .sports-betting-heading h2 {
    font-size: 2.35rem;
  }

  .sports-betting-feature {
    grid-template-columns: 1fr;
  }

  .sports-betting-feature-side {
    border-top: 1px solid rgba(255, 255, 255, 0.07);
    border-left: 0;
  }

  .sports-betting-grid {
    grid-template-columns: 1fr;
  }

  .sports-betting-item-content > p {
    min-height: 0;
  }

  .sports-betting-info {
    grid-template-columns: 58px 1fr;
  }

  .sports-betting-info-list {
    grid-column: 2;

    padding-left: 0;

    border-left: 0;
  }
}


@media (max-width: 767.98px) {

  .sports-betting-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .sports-betting-heading {
    margin-bottom: 38px;
  }

  .sports-betting-heading h2 {
    font-size: 2rem;
  }

  .sports-betting-feature {
    border-radius: 22px;
  }

  .sports-betting-feature-main,
  .sports-betting-feature-side {
    padding: 30px 24px;
  }

  .sports-betting-item {
    padding: 27px 23px;
  }

  .sports-betting-info {
    padding: 27px 23px;
  }

  .sports-betting-note {
    padding: 27px 23px;
  }
}


@media (max-width: 575.98px) {

  .sports-betting-heading h2 {
    font-size: 1.72rem;
  }

  .sports-betting-intro {
    font-size: 0.96rem;
  }

  .sports-betting-info,
  .sports-betting-note {
    display: block;
  }

  .sports-betting-info-icon,
  .sports-betting-note-icon {
    margin-bottom: 18px;
  }

  .sports-betting-info-list {
    margin-top: 18px;
    padding-top: 15px;

    border-top: 1px solid rgba(255, 255, 255, 0.06);
  }
}

/* =========================================================
  VIP / ORPHEUS ROOM
========================================================= */

.vip-section {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 88% 10%, rgba(255, 193, 7, 0.07), transparent 27%),
    radial-gradient(circle at 8% 82%, rgba(0, 47, 176, 0.10), transparent 26%),
    #050b18;
}


/* Heading */

.vip-heading {
  max-width: 880px;
  margin: 0 auto 52px;
}

.vip-kicker {
  display: inline-flex;
  align-items: center;
  margin-bottom: 18px;
  padding: 9px 17px;
  border: 1px solid rgba(255, 193, 7, 0.24);
  border-radius: 999px;
  background: rgba(255, 193, 7, 0.07);
  color: #ffc107;
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.vip-heading h2 {
  margin: 0 0 20px;
  color: #ffffff;
  font-size: 3rem;
  line-height: 1.15;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.vip-intro {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.65) !important;
  font-size: 1.04rem;
  line-height: 1.8;
}


/* Main Feature */

.vip-feature {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  overflow: hidden;
  margin-bottom: 28px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.022);
  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.22);
}

.vip-image-wrap {
  position: relative;
  min-height: 540px;
  overflow: hidden;
}

.vip-image {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 540px;
  object-fit: cover;
}

.vip-image-wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    90deg,
    transparent 60%,
    rgba(5, 11, 24, 0.38) 100%
  );
  pointer-events: none;
}

.vip-image-badge {
  position: absolute;
  left: 26px;
  bottom: 26px;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 13px 17px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 14px;
  background: rgba(5, 11, 24, 0.82);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  color: #ffffff;
  font-size: 0.78rem;
  font-weight: 600;
}

.vip-image-badge i {
  color: #ffc107;
}

.vip-feature-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 48px 43px;
}

.vip-eyebrow {
  display: block;
  margin-bottom: 9px;
  color: #ffc107;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.vip-feature-content h3 {
  margin: 0 0 20px;
  color: #ffffff;
  font-size: 2rem;
  line-height: 1.3;
  font-weight: 600;
}

.vip-feature-content p {
  margin: 0 0 15px;
  color: rgba(255, 255, 255, 0.6) !important;
  font-size: 0.92rem;
  line-height: 1.76;
}

.vip-feature-content p:last-child {
  margin-bottom: 0;
}


/* Access */

.vip-access {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 38px;
  align-items: center;
  margin-bottom: 28px;
  padding: 34px 36px;
  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 23px;
  background:
    linear-gradient(
      100deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.016)
    );
}

.vip-access-heading h3 {
  margin: 0 0 10px;
  color: #ffffff;
  font-size: 1.45rem;
  font-weight: 600;
}

.vip-access-heading p {
  margin: 0;
  color: rgba(255, 255, 255, 0.55) !important;
  font-size: 0.86rem;
  line-height: 1.7;
}

.vip-tier-list {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 9px;
}

.vip-tier {
  min-height: 88px;
  padding: 14px 9px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 9px;
  text-align: center;
  border: 1px solid rgba(255, 255, 255, 0.065);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.022);
  color: rgba(255, 255, 255, 0.7);
  font-size: 0.75rem;
  font-weight: 600;
}

.vip-tier i {
  color: #ffc107;
  font-size: 1rem;
}


/* Details */

.vip-details {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 15px;
  margin-bottom: 28px;
}

.vip-detail {
  padding: 28px 24px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 20px;
  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );
}

.vip-detail-highlight {
  border-color: rgba(255, 193, 7, 0.15);
  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(255, 193, 7, 0.065),
      transparent 45%
    ),
    rgba(255, 255, 255, 0.018);
}

.vip-detail-icon {
  width: 52px;
  height: 52px;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 14px;
  background: rgba(255, 193, 7, 0.065);
}

.vip-detail-icon i {
  color: #ffc107;
  font-size: 1.12rem;
}

.vip-detail-label {
  display: block;
  margin-bottom: 6px;
  color: rgba(255, 255, 255, 0.38);
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.vip-detail h3 {
  margin: 0 0 11px;
  color: #ffffff;
  font-size: 1.16rem;
  font-weight: 600;
}

.vip-detail p {
  margin: 0;
  color: rgba(255, 255, 255, 0.54) !important;
  font-size: 0.81rem;
  line-height: 1.65;
}


/* Summary */

.vip-summary {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 21px;
  padding: 30px 32px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.02);
}

.vip-summary-icon {
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 15px;
  background: rgba(255, 193, 7, 0.07);
  color: #ffc107;
}

.vip-summary h3 {
  margin: 0 0 8px;
  color: #ffffff;
  font-size: 1.25rem;
  font-weight: 600;
}

.vip-summary p {
  max-width: 950px;
  margin: 0;
  color: rgba(255, 255, 255, 0.55) !important;
  font-size: 0.86rem;
  line-height: 1.7;
}


/* Responsive */

@media (max-width: 1199.98px) {

  .vip-tier-list {
    grid-template-columns: repeat(3, 1fr);
  }

  .vip-details {
    grid-template-columns: repeat(2, 1fr);
  }
}


@media (max-width: 991.98px) {

  .vip-heading h2 {
    font-size: 2.35rem;
  }

  .vip-feature {
    grid-template-columns: 1fr;
  }

  .vip-image-wrap,
  .vip-image {
    min-height: 430px;
  }

  .vip-access {
    grid-template-columns: 1fr;
  }
}


@media (max-width: 767.98px) {

  .vip-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .vip-heading h2 {
    font-size: 2rem;
  }

  .vip-feature {
    border-radius: 22px;
  }

  .vip-image-wrap,
  .vip-image {
    min-height: 350px;
  }

  .vip-feature-content {
    padding: 34px 25px;
  }

  .vip-access {
    padding: 29px 24px;
  }

  .vip-tier-list {
    grid-template-columns: repeat(2, 1fr);
  }

  .vip-details {
    grid-template-columns: 1fr;
  }
}


@media (max-width: 575.98px) {

  .vip-heading h2 {
    font-size: 1.72rem;
  }

  .vip-intro {
    font-size: 0.96rem;
  }

  .vip-image-wrap,
  .vip-image {
    min-height: 290px;
  }

  .vip-image-badge {
    left: 17px;
    bottom: 17px;
  }

  .vip-tier-list {
    grid-template-columns: 1fr 1fr;
  }

  .vip-summary {
    display: block;
    padding: 26px 22px;
  }

  .vip-summary-icon {
    margin-bottom: 18px;
  }
}

/* =========================================================
  CASINO PROMOTIONS
========================================================= */

.promotions-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(
      circle at 91% 8%,
      rgba(255, 193, 7, 0.055),
      transparent 26%
    ),
    radial-gradient(
      circle at 7% 85%,
      rgba(0, 47, 176, 0.11),
      transparent 27%
    ),
    #050b18;
}


/* =========================================================
  HEADING
========================================================= */

.promotions-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.promotions-kicker {
  display: inline-flex;
  align-items: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.22);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.promotions-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -1.2px;
}

.promotions-intro {
  max-width: 780px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.64) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}


/* =========================================================
  DYNAMIC NOTICE
========================================================= */

.promotions-notice {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) 230px;
  gap: 24px;
  align-items: center;

  padding: 31px 33px;
  margin-bottom: 52px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 23px;

  background:
    linear-gradient(
      100deg,
      rgba(255, 193, 7, 0.05),
      rgba(255, 255, 255, 0.017)
    );
}

.promotions-notice-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.18);
  border-radius: 15px;

  background: rgba(255, 193, 7, 0.07);

  color: #ffc107;
}

.promotions-notice-icon i {
  font-size: 1.15rem;
}

.promotions-eyebrow {
  display: block;

  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.71rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.promotions-notice-content h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.25rem;
  font-weight: 600;
}

.promotions-notice-content p {
  max-width: 770px;

  margin: 0;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.85rem;
  line-height: 1.68;
}

.promotions-notice-meta {
  padding-left: 25px;

  border-left: 1px solid rgba(255, 255, 255, 0.07);
}

.promotions-notice-meta > div {
  display: flex;
  align-items: center;
  gap: 10px;

  padding: 8px 0;

  color: rgba(255, 255, 255, 0.68);

  font-size: 0.8rem;
}

.promotions-notice-meta i {
  width: 18px;

  color: #ffc107;

  text-align: center;
}


/* =========================================================
  CONTENT HEADING
========================================================= */

.promotions-content-heading {
  max-width: 680px;
  margin-bottom: 29px;
}

.promotions-content-heading h3 {
  margin: 0 0 10px;

  color: #ffffff;

  font-size: 1.9rem;
  font-weight: 600;
}

.promotions-content-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.92rem;
  line-height: 1.7;
}


/* =========================================================
  PROMOTIONS GRID
========================================================= */

.promotions-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 15px;

  margin-bottom: 28px;
}

.promotion-card {
  position: relative;

  min-height: 285px;

  padding: 29px 26px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 21px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );

  transition:
    transform 0.28s ease,
    border-color 0.28s ease,
    background 0.28s ease;
}

.promotion-card:hover {
  transform: translateY(-4px);

  border-color: rgba(255, 193, 7, 0.22);

  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.04),
      rgba(255, 255, 255, 0.015)
    );
}

.promotion-card-highlight {
  border-color: rgba(255, 193, 7, 0.14);

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(255, 193, 7, 0.065),
      transparent 46%
    ),
    rgba(255, 255, 255, 0.018);
}


/* Number */

.promotion-card-number {
  position: absolute;
  top: 23px;
  right: 24px;

  color: rgba(255, 255, 255, 0.14);

  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.09em;
}


/* Icon */

.promotion-card-icon {
  width: 53px;
  height: 53px;

  display: flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 21px;

  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);
}

.promotion-card-icon i {
  color: #ffc107;
  font-size: 1.12rem;
}


/* Text */

.promotion-card-type {
  display: block;

  margin-bottom: 6px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.promotion-card h3 {
  margin: 0 0 12px;

  color: #ffffff;

  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.35;
}

.promotion-card p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.82rem;
  line-height: 1.66;
}


/* =========================================================
  BOTTOM NOTE
========================================================= */

.promotions-bottom {
  display: grid;
  grid-template-columns: 56px 1fr;
  gap: 21px;

  padding: 29px 31px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 22px;

  background: rgba(255, 255, 255, 0.02);
}

.promotions-bottom-icon {
  width: 54px;
  height: 54px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 15px;

  background: rgba(255, 193, 7, 0.07);

  color: #ffc107;
}

.promotions-bottom-icon i {
  font-size: 1.15rem;
}

.promotions-bottom h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.22rem;
  font-weight: 600;
}

.promotions-bottom p {
  max-width: 960px;

  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.85rem;
  line-height: 1.68;
}


/* =========================================================
  RESPONSIVE
========================================================= */

@media (max-width: 991.98px) {

  .promotions-heading h2 {
    font-size: 2.35rem;
  }

  .promotions-notice {
    grid-template-columns: 56px 1fr;
  }

  .promotions-notice-meta {
    grid-column: 2;

    display: flex;
    gap: 20px;

    padding-left: 0;

    border-left: 0;
  }

  .promotions-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


@media (max-width: 767.98px) {

  .promotions-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .promotions-heading {
    margin-bottom: 38px;
  }

  .promotions-heading h2 {
    font-size: 2rem;
  }

  .promotions-notice {
    padding: 27px 23px;
    margin-bottom: 43px;
  }

  .promotions-grid {
    grid-template-columns: 1fr;
  }

  .promotion-card {
    min-height: 0;
    padding: 27px 23px;
  }

  .promotions-bottom {
    padding: 27px 23px;
  }
}


@media (max-width: 575.98px) {

  .promotions-heading h2 {
    font-size: 1.72rem;
  }

  .promotions-intro {
    font-size: 0.96rem;
  }

  .promotions-notice,
  .promotions-bottom {
    display: block;
  }

  .promotions-notice-icon,
  .promotions-bottom-icon {
    margin-bottom: 18px;
  }

  .promotions-notice-meta {
    display: block;

    margin-top: 17px;
    padding-top: 13px;

    border-top: 1px solid rgba(255, 255, 255, 0.06);
  }
}

/* =========================================================
  VANTAGE REWARDS
========================================================= */

.rewards-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(
      circle at 89% 11%,
      rgba(0, 47, 176, 0.11),
      transparent 28%
    ),
    radial-gradient(
      circle at 7% 86%,
      rgba(255, 193, 7, 0.045),
      transparent 24%
    ),
    #030816;
}


/* =========================================================
  HEADING
========================================================= */

.rewards-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.rewards-kicker {
  display: inline-flex;
  align-items: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.22);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.rewards-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -1.2px;
}

.rewards-intro {
  max-width: 780px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.64) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}


/* =========================================================
  SUMMARY
========================================================= */

.rewards-summary {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(290px, 0.55fr);

  margin-bottom: 28px;

  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 27px;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(0, 47, 176, 0.12),
      transparent 40%
    ),
    rgba(255, 255, 255, 0.022);
}

.rewards-summary-main {
  padding: 42px 40px;
}

.rewards-eyebrow {
  display: block;

  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.71rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.rewards-summary-main h3 {
  margin: 0 0 17px;

  color: #ffffff;

  font-size: 1.85rem;
  font-weight: 600;
  line-height: 1.3;
}

.rewards-summary-main p {
  max-width: 760px;

  margin: 0 0 14px;

  color: rgba(255, 255, 255, 0.58) !important;

  font-size: 0.91rem;
  line-height: 1.74;
}

.rewards-summary-main p:last-child {
  margin-bottom: 0;
}


/* Conversion */

.rewards-summary-rate {
  display: flex;
  flex-direction: column;
  justify-content: center;

  padding: 36px 34px;

  border-left: 1px solid rgba(255, 255, 255, 0.07);

  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.05),
      rgba(255, 255, 255, 0.014)
    );
}

.rewards-rate-label {
  margin-bottom: 13px;

  color: rgba(255, 255, 255, 0.38);

  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.rewards-rate-value {
  color: #ffc107;

  font-size: 4rem;
  font-weight: 700;
  line-height: 0.95;
  letter-spacing: -2px;
}

.rewards-rate-points {
  margin-top: 6px;

  color: rgba(255, 255, 255, 0.65);

  font-size: 0.86rem;
  font-weight: 500;
}

.rewards-rate-divider {
  width: 100%;
  height: 1px;

  margin: 20px 0;

  background: rgba(255, 255, 255, 0.08);
}

.rewards-rate-dollar {
  color: #ffffff;

  font-size: 1.05rem;
  font-weight: 600;
}


/* =========================================================
  SYSTEM
========================================================= */

.rewards-system {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));

  gap: 15px;

  margin-bottom: 28px;
}

.rewards-system-item {
  position: relative;

  padding: 29px 27px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 21px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );
}

.rewards-system-icon {
  width: 53px;
  height: 53px;

  display: flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 21px;

  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);
}

.rewards-system-icon i {
  color: #ffc107;
  font-size: 1.1rem;
}

.rewards-system-number {
  position: absolute;
  top: 24px;
  right: 24px;

  color: rgba(255, 255, 255, 0.14);

  font-size: 0.7rem;
  font-weight: 700;
}

.rewards-system-label {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.rewards-system-item h3 {
  margin: 0 0 12px;

  color: #ffffff;

  font-size: 1.28rem;
  font-weight: 600;
}

.rewards-system-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.82rem;
  line-height: 1.67;
}


/* =========================================================
  USES
========================================================= */

.rewards-uses {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);

  gap: 34px;
  align-items: center;

  padding: 34px 36px;
  margin-bottom: 28px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 23px;

  background: rgba(255, 255, 255, 0.02);
}

.rewards-uses-heading h3 {
  margin: 0 0 10px;

  color: #ffffff;

  font-size: 1.45rem;
  font-weight: 600;
}

.rewards-uses-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.86rem;
  line-height: 1.68;
}

.rewards-uses-list {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));

  gap: 9px;
}

.rewards-use-item {
  min-height: 92px;

  padding: 15px 9px;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  gap: 9px;

  text-align: center;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 14px;

  background: rgba(255, 255, 255, 0.02);

  color: rgba(255, 255, 255, 0.67);

  font-size: 0.74rem;
  font-weight: 500;
}

.rewards-use-item i {
  color: #ffc107;
  font-size: 1rem;
}


/* =========================================================
  TIERS
========================================================= */

.rewards-tiers {
  display: grid;
  grid-template-columns: 1fr 0.8fr;

  gap: 38px;
  align-items: center;

  padding: 36px 38px;
  margin-bottom: 28px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 23px;

  background:
    linear-gradient(
      100deg,
      rgba(255, 193, 7, 0.04),
      rgba(255, 255, 255, 0.016)
    );
}

.rewards-tier-copy h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.5rem;
  font-weight: 600;
}

.rewards-tier-copy p {
  margin: 0 0 12px;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.87rem;
  line-height: 1.7;
}

.rewards-tier-copy p:last-child {
  margin-bottom: 0;
}

.rewards-tier-visual {
  display: flex;
  align-items: center;
}

.rewards-tier-step {
  min-width: 100px;
  text-align: center;
}

.rewards-tier-step span {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.63rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.rewards-tier-step h4 {
  margin: 0;

  color: #ffffff;

  font-size: 0.86rem;
  font-weight: 600;
}

.rewards-tier-line {
  flex: 1;
  height: 1px;

  margin: 0 10px;

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.2),
      rgba(255, 193, 7, 0.7),
      rgba(255, 193, 7, 0.2)
    );
}


/* =========================================================
  JOIN
========================================================= */

.rewards-join {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr) minmax(270px, 0.45fr);

  gap: 22px;
  align-items: center;

  padding: 31px 32px;
  margin-bottom: 16px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 22px;

  background: rgba(255, 255, 255, 0.02);
}

.rewards-join-icon {
  width: 54px;
  height: 54px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 15px;

  background: rgba(255, 193, 7, 0.07);

  color: #ffc107;
}

.rewards-join-content h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.25rem;
  font-weight: 600;
}

.rewards-join-content p {
  max-width: 760px;

  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.85rem;
  line-height: 1.68;
}

.rewards-join-facts {
  padding-left: 24px;

  border-left: 1px solid rgba(255, 255, 255, 0.07);
}

.rewards-join-facts > div {
  display: flex;
  align-items: center;
  gap: 9px;

  padding: 7px 0;

  color: rgba(255, 255, 255, 0.62);

  font-size: 0.76rem;
}

.rewards-join-facts i {
  width: 20px;
  height: 20px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: rgba(255, 193, 7, 0.07);

  color: #ffc107;

  font-size: 0.55rem;
}


/* =========================================================
  NOTES
========================================================= */

.rewards-notes {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));

  gap: 10px;
}

.rewards-note {
  display: grid;
  grid-template-columns: 38px 1fr;

  gap: 12px;

  padding: 16px 17px;

  border: 1px solid rgba(255, 255, 255, 0.055);
  border-radius: 14px;

  background: rgba(255, 255, 255, 0.014);
}

.rewards-note > i {
  width: 36px;
  height: 36px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 10px;

  background: rgba(255, 193, 7, 0.06);

  color: #ffc107;

  font-size: 0.82rem;
}

.rewards-note span {
  display: block;

  margin-bottom: 3px;

  color: #ffffff;

  font-size: 0.79rem;
  font-weight: 600;
}

.rewards-note p {
  margin: 0;

  color: rgba(255, 255, 255, 0.44) !important;

  font-size: 0.7rem;
  line-height: 1.5;
}


/* =========================================================
  RESPONSIVE
========================================================= */

@media (max-width: 991.98px) {

  .rewards-heading h2 {
    font-size: 2.35rem;
  }

  .rewards-summary {
    grid-template-columns: 1fr;
  }

  .rewards-summary-rate {
    border-top: 1px solid rgba(255, 255, 255, 0.07);
    border-left: 0;
  }

  .rewards-system {
    grid-template-columns: 1fr;
  }

  .rewards-uses,
  .rewards-tiers {
    grid-template-columns: 1fr;
  }

  .rewards-uses-list {
    grid-template-columns: repeat(3, 1fr);
  }

  .rewards-join {
    grid-template-columns: 56px 1fr;
  }

  .rewards-join-facts {
    grid-column: 2;

    padding-left: 0;

    border-left: 0;
  }

  .rewards-notes {
    grid-template-columns: 1fr;
  }
}


@media (max-width: 767.98px) {

  .rewards-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .rewards-heading h2 {
    font-size: 2rem;
  }

  .rewards-summary-main,
  .rewards-summary-rate,
  .rewards-uses,
  .rewards-tiers {
    padding: 29px 24px;
  }

  .rewards-uses-list {
    grid-template-columns: repeat(2, 1fr);
  }

  .rewards-tier-visual {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }

  .rewards-tier-line {
    width: 1px;
    height: 22px;

    margin: 0 auto;
  }

  .rewards-join {
    padding: 27px 23px;
  }
}


@media (max-width: 575.98px) {

  .rewards-heading h2 {
    font-size: 1.72rem;
  }

  .rewards-intro {
    font-size: 0.96rem;
  }

  .rewards-uses-list {
    grid-template-columns: 1fr;
  }

  .rewards-join {
    display: block;
  }

  .rewards-join-icon {
    margin-bottom: 18px;
  }

  .rewards-join-facts {
    margin-top: 17px;
    padding-top: 14px;

    border-top: 1px solid rgba(255, 255, 255, 0.06);
  }
}

/* =========================================================
  CASINO HOURS / ENTRY / DRESS CODE
========================================================= */

.casino-entry-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(
      circle at 90% 12%,
      rgba(0, 47, 176, 0.10),
      transparent 27%
    ),
    radial-gradient(
      circle at 7% 88%,
      rgba(255, 193, 7, 0.045),
      transparent 24%
    ),
    #050b18;
}


/* =========================================================
  HEADING
========================================================= */

.casino-entry-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.casino-entry-kicker {
  display: inline-flex;
  align-items: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.22);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.casino-entry-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -1.2px;
}

.casino-entry-intro {
  max-width: 780px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.64) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}

.casino-entry-eyebrow {
  display: block;

  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.71rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}


/* =========================================================
  MAIN LAYOUT
========================================================= */

.casino-entry-layout {
  display: grid;
  grid-template-columns: 0.95fr 1.05fr;

  gap: 18px;

  margin-bottom: 18px;
}


/* =========================================================
  HOURS
========================================================= */

.casino-hours-panel,
.casino-entry-panel {
  padding: 37px;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 24px;

  background: rgba(255, 255, 255, 0.021);
}

.casino-hours-panel {
  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(0, 47, 176, 0.11),
      transparent 40%
    ),
    rgba(255, 255, 255, 0.021);
}

.casino-hours-panel > h3,
.casino-entry-panel > h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.55rem;
  font-weight: 600;
}

.casino-hours-intro {
  margin: 0 0 26px;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.87rem;
  line-height: 1.68;
}


/* Hour rows */

.casino-hours-list {
  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.065);
  border-radius: 17px;
}

.casino-hours-row {
  display: grid;
  grid-template-columns: 110px 1fr 1px 1fr;

  gap: 18px;
  align-items: center;

  min-height: 105px;

  padding: 20px;

  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.casino-hours-row:last-child {
  border-bottom: 0;
}

.casino-hours-row-highlight {
  background: rgba(255, 193, 7, 0.035);
}

.casino-hours-day span {
  color: #ffffff;

  font-size: 0.91rem;
  font-weight: 600;
}

.casino-hours-time {
  display: flex;
  align-items: center;
  gap: 11px;
}

.casino-hours-time > i {
  width: 36px;
  height: 36px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 10px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.8rem;
}

.casino-hours-time span {
  display: block;

  margin-bottom: 2px;

  color: rgba(255, 255, 255, 0.37);

  font-size: 0.63rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.casino-hours-time strong {
  display: block;

  color: rgba(255, 255, 255, 0.83);

  font-size: 0.86rem;
  font-weight: 600;
}

.casino-hours-separator {
  width: 1px;
  height: 43px;

  background: rgba(255, 255, 255, 0.065);
}


/* Hours note */

.casino-hours-note {
  display: flex;
  gap: 10px;

  margin-top: 20px;
}

.casino-hours-note i {
  margin-top: 4px;

  color: #ffc107;

  font-size: 0.8rem;
}

.casino-hours-note p {
  margin: 0;

  color: rgba(255, 255, 255, 0.43) !important;

  font-size: 0.75rem;
  line-height: 1.55;
}


/* =========================================================
  ENTRY REQUIREMENTS
========================================================= */

.casino-entry-facts {
  margin-top: 25px;
}

.casino-entry-fact {
  display: grid;
  grid-template-columns: 49px 1fr;

  gap: 15px;

  padding: 18px 0;

  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.casino-entry-fact:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.casino-entry-fact:first-child {
  padding-top: 0;
}

.casino-entry-fact-icon {
  width: 47px;
  height: 47px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.16);
  border-radius: 13px;

  background: rgba(255, 193, 7, 0.06);
}

.casino-entry-fact-icon i {
  color: #ffc107;

  font-size: 1rem;
}

.casino-entry-fact-label {
  display: block;

  margin-bottom: 3px;

  color: rgba(255, 255, 255, 0.37);

  font-size: 0.63rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.casino-entry-fact strong {
  display: block;

  margin-bottom: 4px;

  color: #ffffff;

  font-size: 0.94rem;
  font-weight: 600;
}

.casino-entry-fact p {
  max-width: 540px;

  margin: 0;

  color: rgba(255, 255, 255, 0.49) !important;

  font-size: 0.76rem;
  line-height: 1.55;
}


/* =========================================================
  ID
========================================================= */

.casino-id-strip {
  display: grid;
  grid-template-columns: minmax(260px, 0.7fr) minmax(0, 1.3fr);

  gap: 32px;
  align-items: center;

  margin-bottom: 18px;
  padding: 28px 31px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 21px;

  background: rgba(255, 255, 255, 0.018);
}

.casino-id-heading {
  display: flex;
  align-items: center;
  gap: 16px;
}

.casino-id-icon {
  width: 50px;
  height: 50px;
  flex: 0 0 50px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 14px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.casino-id-heading h3 {
  margin: 0;

  color: #ffffff;

  font-size: 1.15rem;
  font-weight: 600;
}

.casino-id-options {
  display: grid;
  grid-template-columns: repeat(3, 1fr);

  gap: 9px;
}

.casino-id-item {
  min-height: 65px;

  display: flex;
  align-items: center;
  justify-content: center;

  gap: 10px;

  padding: 12px;

  text-align: center;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 13px;

  background: rgba(255, 255, 255, 0.018);

  color: rgba(255, 255, 255, 0.66);

  font-size: 0.75rem;
  font-weight: 500;
}

.casino-id-item i {
  color: #ffc107;
}


/* =========================================================
  DRESS CODE
========================================================= */

.casino-dress {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;

  gap: 35px;

  margin-bottom: 18px;
  padding: 36px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 24px;

  background:
    linear-gradient(
      110deg,
      rgba(255, 193, 7, 0.04),
      rgba(255, 255, 255, 0.015)
    );
}


/* Dress intro */

.casino-dress-intro h3 {
  margin: 0 0 12px;

  color: #ffffff;

  font-size: 1.55rem;
  font-weight: 600;
}

.casino-dress-intro > p {
  margin: 0;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.86rem;
  line-height: 1.7;
}

.casino-dress-standard {
  display: flex;
  flex-wrap: wrap;

  gap: 8px;

  margin-top: 22px;
}

.casino-dress-standard > div {
  display: flex;
  align-items: center;
  gap: 7px;

  padding: 8px 12px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.045);

  color: rgba(255, 255, 255, 0.69);

  font-size: 0.73rem;
}

.casino-dress-standard i {
  color: #ffc107;

  font-size: 0.62rem;
}


/* Dress rules */

.casino-dress-rules {
  display: grid;
  grid-template-columns: repeat(2, 1fr);

  gap: 10px;
}

.casino-dress-rules-label {
  grid-column: 1 / -1;

  display: block;

  margin-bottom: 3px;

  color: rgba(255, 255, 255, 0.38);

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.casino-dress-rule {
  display: grid;
  grid-template-columns: 42px 1fr;

  gap: 12px;

  padding: 15px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 14px;

  background: rgba(255, 255, 255, 0.018);
}

.casino-dress-rule-icon {
  width: 40px;
  height: 40px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 11px;

  background: rgba(255, 193, 7, 0.06);

  color: #ffc107;
}

.casino-dress-rule span {
  display: block;

  margin-bottom: 3px;

  color: #ffffff;

  font-size: 0.8rem;
  font-weight: 600;
}

.casino-dress-rule p {
  margin: 0;

  color: rgba(255, 255, 255, 0.43) !important;

  font-size: 0.69rem;
  line-height: 1.48;
}


/* =========================================================
  EVENING NOTE
========================================================= */

.casino-entry-bottom {
  display: grid;
  grid-template-columns: 55px 1fr;

  gap: 20px;

  padding: 28px 30px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 21px;

  background: rgba(255, 255, 255, 0.018);
}

.casino-entry-bottom-icon {
  width: 53px;
  height: 53px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 14px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.casino-entry-bottom h3 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 1.15rem;
  font-weight: 600;
}

.casino-entry-bottom p {
  max-width: 950px;

  margin: 0;

  color: rgba(255, 255, 255, 0.51) !important;

  font-size: 0.82rem;
  line-height: 1.65;
}


/* =========================================================
  RESPONSIVE
========================================================= */

@media (max-width: 991.98px) {

  .casino-entry-heading h2 {
    font-size: 2.35rem;
  }

  .casino-entry-layout {
    grid-template-columns: 1fr;
  }

  .casino-id-strip {
    grid-template-columns: 1fr;
  }

  .casino-dress {
    grid-template-columns: 1fr;
  }
}


@media (max-width: 767.98px) {

  .casino-entry-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .casino-entry-heading {
    margin-bottom: 38px;
  }

  .casino-entry-heading h2 {
    font-size: 2rem;
  }

  .casino-hours-panel,
  .casino-entry-panel {
    padding: 29px 24px;
  }

  .casino-hours-row {
    grid-template-columns: 1fr 1fr;

    gap: 15px;
  }

  .casino-hours-day {
    grid-column: 1 / -1;
  }

  .casino-hours-separator {
    display: none;
  }

  .casino-id-options {
    grid-template-columns: 1fr;
  }

  .casino-dress {
    padding: 29px 24px;
  }

  .casino-dress-rules {
    grid-template-columns: 1fr;
  }
}


@media (max-width: 575.98px) {

  .casino-entry-heading h2 {
    font-size: 1.72rem;
  }

  .casino-entry-intro {
    font-size: 0.96rem;
  }

  .casino-hours-row {
    display: block;
  }

  .casino-hours-day {
    margin-bottom: 16px;
  }

  .casino-hours-time {
    margin-bottom: 12px;
  }

  .casino-hours-time:last-child {
    margin-bottom: 0;
  }

  .casino-id-strip,
  .casino-entry-bottom {
    display: block;

    padding: 25px 22px;
  }

  .casino-id-options {
    margin-top: 20px;
  }

  .casino-entry-bottom-icon {
    margin-bottom: 17px;
  }
}

/* =========================================================
  DINING & BARS
========================================================= */

.dining-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(
      circle at 90% 10%,
      rgba(255, 193, 7, 0.05),
      transparent 27%
    ),
    radial-gradient(
      circle at 7% 86%,
      rgba(0, 47, 176, 0.10),
      transparent 27%
    ),
    #030816;
}


/* =========================================================
  HEADING
========================================================= */

.dining-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.dining-kicker {
  display: inline-flex;
  align-items: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.22);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.dining-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -1.2px;
}

.dining-intro {
  max-width: 780px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.64) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}

.dining-eyebrow {
  display: block;

  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.71rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}


/* =========================================================
  MAIN OVERVIEW
========================================================= */

.dining-main-layout {
  display: grid;
  grid-template-columns: 1.35fr 0.65fr;

  overflow: hidden;

  margin-bottom: 18px;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 25px;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(0, 47, 176, 0.10),
      transparent 42%
    ),
    rgba(255, 255, 255, 0.02);
}

.dining-main-copy {
  padding: 39px 38px;
}

.dining-main-copy h3 {
  margin: 0 0 16px;

  color: #ffffff;

  font-size: 1.75rem;
  font-weight: 600;
  line-height: 1.32;
}

.dining-main-copy p {
  max-width: 760px;

  margin: 0 0 13px;

  color: rgba(255, 255, 255, 0.56) !important;

  font-size: 0.89rem;
  line-height: 1.72;
}

.dining-main-copy p:last-child {
  margin-bottom: 0;
}

.dining-main-stat {
  display: flex;
  flex-direction: column;
  justify-content: center;

  padding: 34px;

  border-left: 1px solid rgba(255, 255, 255, 0.07);

  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.014)
    );
}

.dining-main-number {
  color: #ffc107;

  font-size: 4rem;
  line-height: 0.95;
  font-weight: 700;
}

.dining-main-label {
  margin-top: 8px;

  color: #ffffff;

  font-size: 0.95rem;
  font-weight: 600;
}

.dining-main-divider {
  height: 1px;

  margin: 20px 0;

  background: rgba(255, 255, 255, 0.08);
}

.dining-main-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.dining-main-tags span {
  padding: 6px 9px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 999px;

  background: rgba(255, 255, 255, 0.02);

  color: rgba(255, 255, 255, 0.53);

  font-size: 0.65rem;
}


/* =========================================================
  VENUE LIST
========================================================= */

.dining-venues {
  overflow: hidden;

  margin-bottom: 18px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 24px;

  background: rgba(255, 255, 255, 0.016);
}

.dining-venue {
  display: grid;
  grid-template-columns: 55px minmax(0, 1fr) 215px;
  gap: 21px;
  align-items: center;

  padding: 24px 27px;

  border-bottom: 1px solid rgba(255, 255, 255, 0.06);

  transition: background 0.25s ease;
}

.dining-venue:last-child {
  border-bottom: 0;
}

.dining-venue:hover {
  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.035),
      rgba(255, 255, 255, 0.01)
    );
}

.dining-venue-sports {
  background: rgba(255, 193, 7, 0.018);
}

.dining-venue-icon {
  width: 52px;
  height: 52px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 15px;

  background: rgba(255, 193, 7, 0.06);
}

.dining-venue-icon i {
  color: #ffc107;

  font-size: 1.12rem;
}

.dining-venue-type {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.dining-venue-content h3 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 1.18rem;
  font-weight: 600;
}

.dining-venue-content p {
  max-width: 650px;

  margin: 0;

  color: rgba(255, 255, 255, 0.51) !important;

  font-size: 0.82rem;
  line-height: 1.62;
}

.dining-venue-meta {
  padding-left: 21px;

  border-left: 1px solid rgba(255, 255, 255, 0.06);
}

.dining-venue-meta span {
  display: block;

  margin-bottom: 4px;

  color: rgba(255, 255, 255, 0.35);

  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.dining-venue-meta p {
  margin: 0;

  color: rgba(255, 255, 255, 0.66) !important;

  font-size: 0.75rem;
  line-height: 1.5;
}


/* =========================================================
  SPORTS BAR
========================================================= */

.sports-bar-feature {
  display: grid;
  grid-template-columns: 1.25fr 0.75fr;

  overflow: hidden;

  margin-bottom: 18px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 24px;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(255, 193, 7, 0.065),
      transparent 42%
    ),
    rgba(255, 255, 255, 0.018);
}

.sports-bar-copy {
  padding: 38px;
}

.sports-bar-copy h3 {
  margin: 0 0 15px;

  color: #ffffff;

  font-size: 1.65rem;
  font-weight: 600;
}

.sports-bar-copy p {
  max-width: 760px;

  margin: 0 0 13px;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.87rem;
  line-height: 1.7;
}

.sports-bar-copy p:last-child {
  margin-bottom: 0;
}

.sports-bar-visual {
  padding: 35px 31px;

  border-left: 1px solid rgba(255, 255, 255, 0.07);

  background: rgba(255, 255, 255, 0.018);
}

.sports-bar-icon {
  width: 55px;
  height: 55px;

  display: flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 20px;

  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.sports-bar-label {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.sports-bar-visual h3 {
  margin: 0 0 17px;

  color: #ffffff;

  font-size: 1.25rem;
  font-weight: 600;
}

.sports-bar-sports {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;

  margin-bottom: 20px;
}

.sports-bar-sports span {
  padding: 6px 9px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 999px;

  background: rgba(255, 255, 255, 0.02);

  color: rgba(255, 255, 255, 0.56);

  font-size: 0.66rem;
}

.sports-bar-age {
  display: flex;
  align-items: center;
  gap: 9px;

  padding-top: 17px;

  border-top: 1px solid rgba(255, 255, 255, 0.06);

  color: rgba(255, 255, 255, 0.66);

  font-size: 0.78rem;
  font-weight: 600;
}

.sports-bar-age i {
  color: #ffc107;
}


/* =========================================================
  ARDO
========================================================= */

.dining-ardo {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;

  gap: 34px;
  align-items: center;

  padding: 34px 36px;
  margin-bottom: 18px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 23px;

  background: rgba(255, 255, 255, 0.02);
}

.dining-ardo-heading h3 {
  margin: 0 0 10px;

  color: #ffffff;

  font-size: 1.45rem;
  font-weight: 600;
}

.dining-ardo-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.53) !important;

  font-size: 0.84rem;
  line-height: 1.67;
}

.dining-ardo-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);

  gap: 9px;
}

.dining-ardo-item {
  min-height: 135px;

  padding: 17px 15px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 14px;

  background: rgba(255, 255, 255, 0.017);
}

.dining-ardo-item > i {
  margin-bottom: 13px;

  color: #ffc107;

  font-size: 1rem;
}

.dining-ardo-item span {
  display: block;

  margin-bottom: 5px;

  color: #ffffff;

  font-size: 0.84rem;
  font-weight: 600;
}

.dining-ardo-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.43) !important;

  font-size: 0.7rem;
  line-height: 1.5;
}


/* =========================================================
  NOTES
========================================================= */

.dining-notes {
  display: grid;
  grid-template-columns: repeat(3, 1fr);

  gap: 10px;
}

.dining-note {
  display: grid;
  grid-template-columns: 38px 1fr;
  gap: 12px;

  padding: 16px 17px;

  border: 1px solid rgba(255, 255, 255, 0.055);
  border-radius: 14px;

  background: rgba(255, 255, 255, 0.014);
}

.dining-note > i {
  width: 36px;
  height: 36px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 10px;

  background: rgba(255, 193, 7, 0.06);

  color: #ffc107;

  font-size: 0.82rem;
}

.dining-note span {
  display: block;

  margin-bottom: 3px;

  color: #ffffff;

  font-size: 0.79rem;
  font-weight: 600;
}

.dining-note p {
  margin: 0;

  color: rgba(255, 255, 255, 0.43) !important;

  font-size: 0.7rem;
  line-height: 1.5;
}


/* =========================================================
  RESPONSIVE
========================================================= */

@media (max-width: 991.98px) {

  .dining-heading h2 {
    font-size: 2.35rem;
  }

  .dining-main-layout,
  .sports-bar-feature,
  .dining-ardo {
    grid-template-columns: 1fr;
  }

  .dining-main-stat,
  .sports-bar-visual {
    border-top: 1px solid rgba(255, 255, 255, 0.07);
    border-left: 0;
  }

  .dining-venue {
    grid-template-columns: 55px 1fr;
  }

  .dining-venue-meta {
    grid-column: 2;

    padding-left: 0;

    border-left: 0;
  }

  .dining-ardo-list {
    grid-template-columns: repeat(3, 1fr);
  }
}


@media (max-width: 767.98px) {

  .dining-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .dining-heading h2 {
    font-size: 2rem;
  }

  .dining-main-copy,
  .dining-main-stat,
  .sports-bar-copy,
  .sports-bar-visual,
  .dining-ardo {
    padding: 29px 24px;
  }

  .dining-ardo-list {
    grid-template-columns: 1fr;
  }

  .dining-notes {
    grid-template-columns: 1fr;
  }
}


@media (max-width: 575.98px) {

  .dining-heading h2 {
    font-size: 1.72rem;
  }

  .dining-intro {
    font-size: 0.96rem;
  }

  .dining-venue {
    display: block;

    padding: 24px 21px;
  }

  .dining-venue-icon {
    margin-bottom: 16px;
  }

  .dining-venue-meta {
    margin-top: 15px;
    padding-top: 14px;

    border-top: 1px solid rgba(255, 255, 255, 0.06);
  }
}

/* =========================================================
  ACCOMMODATION
========================================================= */

.hotel-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(circle at 88% 10%, rgba(0, 47, 176, 0.11), transparent 28%),
    radial-gradient(circle at 7% 87%, rgba(255, 193, 7, 0.045), transparent 24%),
    #050b18;
}


/* Heading */

.hotel-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.hotel-kicker {
  display: inline-flex;
  align-items: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.22);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.hotel-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -1.2px;
}

.hotel-intro {
  max-width: 780px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.64) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}

.hotel-eyebrow {
  display: block;

  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.71rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}


/* =========================================================
  MAIN FEATURE
========================================================= */

.hotel-feature {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;

  overflow: hidden;

  margin-bottom: 48px;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 28px;

  background: rgba(255, 255, 255, 0.02);

  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.22);
}

.hotel-image-wrap {
  position: relative;

  min-height: 520px;

  overflow: hidden;
}

.hotel-image {
  width: 100%;
  height: 100%;
  min-height: 520px;

  display: block;

  object-fit: cover;
}

.hotel-image-wrap::after {
  content: "";

  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      90deg,
      transparent 58%,
      rgba(5, 11, 24, 0.37) 100%
    );

  pointer-events: none;
}

.hotel-image-badge {
  position: absolute;
  left: 26px;
  bottom: 26px;
  z-index: 2;

  display: flex;
  align-items: center;
  gap: 12px;

  padding: 13px 17px;

  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 14px;

  background: rgba(5, 11, 24, 0.82);

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.hotel-image-badge i {
  color: #ffc107;
}

.hotel-image-badge span {
  display: block;

  color: #ffffff;

  font-size: 0.78rem;
  font-weight: 600;
}

.hotel-image-badge small {
  display: block;

  margin-top: 2px;

  color: rgba(255, 255, 255, 0.48);

  font-size: 0.65rem;
}

.hotel-feature-content {
  display: flex;
  flex-direction: column;
  justify-content: center;

  padding: 46px 42px;
}

.hotel-feature-content h3 {
  margin: 0 0 18px;

  color: #ffffff;

  font-size: 1.95rem;
  line-height: 1.3;
  font-weight: 600;
}

.hotel-feature-content > p {
  margin: 0 0 14px;

  color: rgba(255, 255, 255, 0.58) !important;

  font-size: 0.9rem;
  line-height: 1.74;
}

.hotel-feature-facts {
  display: flex;
  flex-wrap: wrap;

  gap: 9px;

  margin-top: 15px;
}

.hotel-feature-facts > div {
  display: flex;
  align-items: center;
  gap: 8px;

  padding: 9px 11px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 11px;

  background: rgba(255, 255, 255, 0.018);

  color: rgba(255, 255, 255, 0.62);

  font-size: 0.72rem;
}

.hotel-feature-facts i {
  color: #ffc107;
}


/* =========================================================
  ROOM HEADING
========================================================= */

.hotel-rooms-heading {
  max-width: 680px;
  margin-bottom: 27px;
}

.hotel-rooms-heading h3 {
  margin: 0 0 10px;

  color: #ffffff;

  font-size: 1.9rem;
  font-weight: 600;
}

.hotel-rooms-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.9rem;
  line-height: 1.67;
}


/* =========================================================
  ROOM LIST
========================================================= */

.hotel-room-list {
  overflow: hidden;

  margin-bottom: 18px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 24px;

  background: rgba(255, 255, 255, 0.016);
}

.hotel-room-row {
  display: grid;
  grid-template-columns: 38px 52px minmax(0, 1fr) 225px;

  gap: 20px;
  align-items: center;

  padding: 25px 27px;

  border-bottom: 1px solid rgba(255, 255, 255, 0.06);

  transition: background 0.25s ease;
}

.hotel-room-row:last-child {
  border-bottom: 0;
}

.hotel-room-row:hover {
  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.035),
      rgba(255, 255, 255, 0.01)
    );
}

.hotel-room-row-featured {
  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.012)
    );
}

.hotel-room-number {
  color: rgba(255, 255, 255, 0.16);

  font-size: 0.68rem;
  font-weight: 700;
}

.hotel-room-icon {
  width: 50px;
  height: 50px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 14px;

  background: rgba(255, 193, 7, 0.06);
}

.hotel-room-icon i {
  color: #ffc107;

  font-size: 1.05rem;
}

.hotel-room-type {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.64rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.hotel-room-content h3 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 1.17rem;
  font-weight: 600;
}

.hotel-room-content p {
  max-width: 660px;

  margin: 0;

  color: rgba(255, 255, 255, 0.5) !important;

  font-size: 0.8rem;
  line-height: 1.62;
}

.hotel-room-best {
  padding-left: 20px;

  border-left: 1px solid rgba(255, 255, 255, 0.06);
}

.hotel-room-best span {
  display: block;

  margin-bottom: 4px;

  color: rgba(255, 255, 255, 0.34);

  font-size: 0.61rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.hotel-room-best p {
  margin: 0;

  color: rgba(255, 255, 255, 0.65) !important;

  font-size: 0.73rem;
  line-height: 1.5;
}


/* =========================================================
  VIEWS
========================================================= */

.hotel-views {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;

  gap: 34px;
  align-items: center;

  padding: 34px 36px;
  margin-bottom: 18px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 23px;

  background:
    linear-gradient(
      110deg,
      rgba(255, 193, 7, 0.04),
      rgba(255, 255, 255, 0.015)
    );
}

.hotel-views-copy h3 {
  margin: 0 0 10px;

  color: #ffffff;

  font-size: 1.45rem;
  font-weight: 600;
}

.hotel-views-copy p {
  margin: 0;

  color: rgba(255, 255, 255, 0.53) !important;

  font-size: 0.84rem;
  line-height: 1.67;
}

.hotel-view-list {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));

  gap: 8px;
}

.hotel-view-item {
  min-height: 85px;

  padding: 13px 8px;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  gap: 8px;

  text-align: center;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 13px;

  background: rgba(255, 255, 255, 0.018);

  color: rgba(255, 255, 255, 0.62);

  font-size: 0.68rem;
}

.hotel-view-item i {
  color: #ffc107;

  font-size: 0.95rem;
}


/* =========================================================
  BOTTOM NOTE
========================================================= */

.hotel-bottom {
  display: grid;
  grid-template-columns: 55px 1fr;

  gap: 20px;

  padding: 29px 31px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 21px;

  background: rgba(255, 255, 255, 0.018);
}

.hotel-bottom-icon {
  width: 53px;
  height: 53px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 14px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.hotel-bottom h3 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 1.17rem;
  font-weight: 600;
}

.hotel-bottom p {
  max-width: 950px;

  margin: 0;

  color: rgba(255, 255, 255, 0.5) !important;

  font-size: 0.82rem;
  line-height: 1.65;
}


/* =========================================================
  RESPONSIVE
========================================================= */

@media (max-width: 991.98px) {

  .hotel-heading h2 {
    font-size: 2.35rem;
  }

  .hotel-feature {
    grid-template-columns: 1fr;
  }

  .hotel-image-wrap,
  .hotel-image {
    min-height: 430px;
  }

  .hotel-room-row {
    grid-template-columns: 38px 50px 1fr;
  }

  .hotel-room-best {
    grid-column: 3;

    padding-left: 0;

    border-left: 0;
  }

  .hotel-views {
    grid-template-columns: 1fr;
  }

  .hotel-view-list {
    grid-template-columns: repeat(3, 1fr);
  }
}


@media (max-width: 767.98px) {

  .hotel-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .hotel-heading h2 {
    font-size: 2rem;
  }

  .hotel-feature-content {
    padding: 34px 25px;
  }

  .hotel-image-wrap,
  .hotel-image {
    min-height: 350px;
  }

  .hotel-room-row {
    grid-template-columns: 50px 1fr;

    padding: 23px 21px;
  }

  .hotel-room-number {
    display: none;
  }

  .hotel-room-best {
    grid-column: 2;
  }

  .hotel-views {
    padding: 29px 24px;
  }

  .hotel-view-list {
    grid-template-columns: repeat(2, 1fr);
  }
}


@media (max-width: 575.98px) {

  .hotel-heading h2 {
    font-size: 1.72rem;
  }

  .hotel-intro {
    font-size: 0.96rem;
  }

  .hotel-image-wrap,
  .hotel-image {
    min-height: 290px;
  }

  .hotel-room-row {
    display: block;
  }

  .hotel-room-icon {
    margin-bottom: 15px;
  }

  .hotel-room-best {
    margin-top: 14px;
    padding-top: 13px;

    border-top: 1px solid rgba(255, 255, 255, 0.06);
  }

  .hotel-view-list {
    grid-template-columns: 1fr 1fr;
  }

  .hotel-bottom {
    display: block;

    padding: 25px 22px;
  }

  .hotel-bottom-icon {
    margin-bottom: 17px;
  }
}

/* =========================================================
  POOL & SPLASH BAR
========================================================= */

.pool-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(
      circle at 90% 12%,
      rgba(0, 47, 176, 0.12),
      transparent 28%
    ),
    radial-gradient(
      circle at 7% 88%,
      rgba(255, 193, 7, 0.045),
      transparent 24%
    ),
    #030816;
}


/* =========================================================
  HEADING
========================================================= */

.pool-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.pool-kicker {
  display: inline-flex;
  align-items: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.22);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.pool-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -1.2px;
}

.pool-intro {
  max-width: 790px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.64) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}

.pool-eyebrow,
.pool-image-eyebrow {
  display: block;

  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.71rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}


/* =========================================================
  MAIN FEATURE
========================================================= */

.pool-feature {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(350px, 0.65fr);

  overflow: hidden;

  margin-bottom: 18px;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 28px;

  background: rgba(255, 255, 255, 0.02);

  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.22);
}


/* =========================================================
  IMAGE
========================================================= */

.pool-image-wrap {
  position: relative;

  min-height: 590px;

  overflow: hidden;
}

.pool-image {
  display: block;

  width: 100%;
  height: 100%;
  min-height: 590px;

  object-fit: cover;
}

.pool-image-overlay {
  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      180deg,
      rgba(3, 8, 22, 0.04) 20%,
      rgba(3, 8, 22, 0.82) 100%
    );
}


/* Caption */

.pool-image-caption {
  position: absolute;
  left: 34px;
  bottom: 35px;
  z-index: 2;

  max-width: 540px;
}

.pool-image-caption h3 {
  margin: 0 0 10px;

  color: #ffffff;

  font-size: 2rem;
  line-height: 1.25;
  font-weight: 600;
}

.pool-image-caption p {
  max-width: 470px;

  margin: 0;

  color: rgba(255, 255, 255, 0.72) !important;

  font-size: 0.86rem;
  line-height: 1.65;
}


/* Hours */

.pool-image-hours {
  position: absolute;
  top: 25px;
  left: 25px;
  z-index: 2;

  display: flex;
  align-items: center;
  gap: 11px;

  padding: 12px 15px;

  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 13px;

  background: rgba(3, 8, 22, 0.72);

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.pool-image-hours > i {
  color: #ffc107;
}

.pool-image-hours span {
  display: block;

  margin-bottom: 2px;

  color: rgba(255, 255, 255, 0.47);

  font-size: 0.61rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.pool-image-hours strong {
  display: block;

  color: #ffffff;

  font-size: 0.76rem;
  font-weight: 600;
}


/* =========================================================
  FEATURE COPY
========================================================= */

.pool-feature-content {
  display: flex;
  flex-direction: column;
  justify-content: center;

  padding: 43px 37px;
}

.pool-feature-content > h3 {
  margin: 0 0 17px;

  color: #ffffff;

  font-size: 1.75rem;
  line-height: 1.3;
  font-weight: 600;
}

.pool-feature-content > p {
  margin: 0 0 14px;

  color: rgba(255, 255, 255, 0.56) !important;

  font-size: 0.88rem;
  line-height: 1.72;
}

.pool-feature-divider {
  height: 1px;

  margin: 11px 0 23px;

  background: rgba(255, 255, 255, 0.07);
}


/* Temperature */

.pool-temperature {
  display: grid;
  grid-template-columns: 49px 1fr;

  gap: 14px;
}

.pool-temperature-icon {
  width: 47px;
  height: 47px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 13px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.pool-temperature span {
  display: block;

  margin-bottom: 3px;

  color: rgba(255, 255, 255, 0.4);

  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.pool-temperature strong {
  display: block;

  margin-bottom: 5px;

  color: #ffffff;

  font-size: 0.98rem;
  font-weight: 600;
}

.pool-temperature p {
  margin: 0;

  color: rgba(255, 255, 255, 0.45) !important;

  font-size: 0.73rem;
  line-height: 1.55;
}


/* =========================================================
  SPLASH BAR
========================================================= */

.splash-bar-panel {
  display: grid;
  grid-template-columns: 1.25fr 0.75fr;

  overflow: hidden;

  margin-bottom: 18px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 24px;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(255, 193, 7, 0.06),
      transparent 44%
    ),
    rgba(255, 255, 255, 0.018);
}

.splash-bar-main {
  padding: 36px 38px;
}

.splash-bar-main h3 {
  margin: 0 0 14px;

  color: #ffffff;

  font-size: 1.65rem;
  font-weight: 600;
}

.splash-bar-main p {
  max-width: 760px;

  margin: 0 0 12px;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.86rem;
  line-height: 1.7;
}

.splash-bar-main p:last-child {
  margin-bottom: 0;
}


/* Highlight */

.splash-bar-highlight {
  padding: 34px 31px;

  border-left: 1px solid rgba(255, 255, 255, 0.07);

  background: rgba(255, 255, 255, 0.015);
}

.splash-bar-icon {
  width: 54px;
  height: 54px;

  display: flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 20px;

  border-radius: 15px;

  background: rgba(255, 193, 7, 0.07);

  color: #ffc107;
}

.splash-bar-highlight > span {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.splash-bar-highlight h3 {
  margin: 0 0 18px;

  color: #ffffff;

  font-size: 1.3rem;
  font-weight: 600;
}

.splash-bar-tags {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.splash-bar-tags span {
  display: flex;
  align-items: center;
  gap: 9px;

  padding: 9px 11px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 11px;

  background: rgba(255, 255, 255, 0.018);

  color: rgba(255, 255, 255, 0.62);

  font-size: 0.74rem;
}

.splash-bar-tags i {
  width: 18px;

  color: #ffc107;

  text-align: center;
}


/* =========================================================
  SERVICES
========================================================= */

.pool-services {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));

  gap: 12px;

  margin-bottom: 18px;
}

.pool-service {
  padding: 26px 23px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 19px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.03),
      rgba(255, 255, 255, 0.01)
    );
}

.pool-service-icon {
  width: 49px;
  height: 49px;

  display: flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 18px;

  border: 1px solid rgba(255, 193, 7, 0.16);
  border-radius: 14px;

  background: rgba(255, 193, 7, 0.06);

  color: #ffc107;
}

.pool-service-label {
  display: block;

  margin-bottom: 5px;

  color: rgba(255, 255, 255, 0.36);

  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.pool-service h3 {
  margin: 0 0 10px;

  color: #ffffff;

  font-size: 1.1rem;
  font-weight: 600;
}

.pool-service p {
  margin: 0;

  color: rgba(255, 255, 255, 0.49) !important;

  font-size: 0.76rem;
  line-height: 1.6;
}


/* =========================================================
  IDENTITY
========================================================= */

.pool-identity {
  display: grid;
  grid-template-columns: 55px minmax(0, 1fr) 210px;

  gap: 21px;
  align-items: center;

  padding: 29px 31px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 21px;

  background: rgba(255, 255, 255, 0.018);
}

.pool-identity-icon {
  width: 53px;
  height: 53px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 14px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.pool-identity-copy h3 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 1.17rem;
  font-weight: 600;
}

.pool-identity-copy p {
  max-width: 850px;

  margin: 0;

  color: rgba(255, 255, 255, 0.5) !important;

  font-size: 0.82rem;
  line-height: 1.65;
}

.pool-identity-view {
  display: flex;
  align-items: center;
  gap: 12px;

  padding-left: 22px;

  border-left: 1px solid rgba(255, 255, 255, 0.07);
}

.pool-identity-view > i {
  color: #ffc107;

  font-size: 1rem;
}

.pool-identity-view span {
  display: block;

  margin-bottom: 2px;

  color: rgba(255, 255, 255, 0.35);

  font-size: 0.61rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.pool-identity-view strong {
  display: block;

  color: #ffffff;

  font-size: 0.82rem;
  font-weight: 600;
}


/* =========================================================
  RESPONSIVE
========================================================= */

@media (max-width: 991.98px) {

  .pool-heading h2 {
    font-size: 2.35rem;
  }

  .pool-feature,
  .splash-bar-panel {
    grid-template-columns: 1fr;
  }

  .pool-image-wrap,
  .pool-image {
    min-height: 480px;
  }

  .splash-bar-highlight {
    border-top: 1px solid rgba(255, 255, 255, 0.07);
    border-left: 0;
  }

  .pool-services {
    grid-template-columns: repeat(2, 1fr);
  }

  .pool-identity {
    grid-template-columns: 55px 1fr;
  }

  .pool-identity-view {
    grid-column: 2;

    padding-left: 0;

    border-left: 0;
  }
}


@media (max-width: 767.98px) {

  .pool-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .pool-heading h2 {
    font-size: 2rem;
  }

  .pool-image-wrap,
  .pool-image {
    min-height: 420px;
  }

  .pool-feature-content,
  .splash-bar-main,
  .splash-bar-highlight {
    padding: 30px 24px;
  }

  .pool-services {
    grid-template-columns: 1fr 1fr;
  }
}


@media (max-width: 575.98px) {

  .pool-heading h2 {
    font-size: 1.72rem;
  }

  .pool-intro {
    font-size: 0.96rem;
  }

  .pool-image-wrap,
  .pool-image {
    min-height: 360px;
  }

  .pool-image-caption {
    left: 21px;
    right: 21px;
    bottom: 23px;
  }

  .pool-image-caption h3 {
    font-size: 1.45rem;
  }

  .pool-image-hours {
    top: 18px;
    left: 18px;
  }

  .pool-services {
    grid-template-columns: 1fr;
  }

  .pool-identity {
    display: block;

    padding: 25px 22px;
  }

  .pool-identity-icon {
    margin-bottom: 17px;
  }

  .pool-identity-view {
    margin-top: 18px;
    padding-top: 15px;

    border-top: 1px solid rgba(255, 255, 255, 0.06);
  }
}

/* =========================================================
  ENTERTAINMENT
========================================================= */

.entertainment-section {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 90% 10%, rgba(0, 47, 176, 0.11), transparent 28%),
    radial-gradient(circle at 7% 86%, rgba(255, 193, 7, 0.045), transparent 24%),
    #050b18;
}

.entertainment-heading,
.events-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.entertainment-kicker,
.events-kicker {
  display: inline-flex;
  align-items: center;
  margin-bottom: 18px;
  padding: 9px 17px;
  border: 1px solid rgba(255, 193, 7, 0.22);
  border-radius: 999px;
  background: rgba(255, 193, 7, 0.065);
  color: #ffc107;
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.entertainment-heading h2,
.events-heading h2 {
  margin: 0 0 20px;
  color: #ffffff;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -1.2px;
}

.entertainment-intro,
.events-intro {
  max-width: 780px;
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.64) !important;
  font-size: 1.04rem;
  line-height: 1.8;
}

.entertainment-eyebrow,
.events-eyebrow {
  display: block;
  margin-bottom: 8px;
  color: #ffc107;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}


/* Entertainment overview */

.entertainment-overview {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 36px;
  align-items: center;
  padding: 37px 38px;
  margin-bottom: 48px;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 24px;
  background: rgba(255,255,255,.02);
}

.entertainment-overview-main h3 {
  margin: 0 0 15px;
  color: #fff;
  font-size: 1.7rem;
  font-weight: 600;
}

.entertainment-overview-main p {
  margin: 0 0 12px;
  color: rgba(255,255,255,.54) !important;
  font-size: .87rem;
  line-height: 1.7;
}

.entertainment-overview-types {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 9px;
}

.entertainment-overview-types > div {
  min-height: 70px;
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 13px;
  border: 1px solid rgba(255,255,255,.06);
  border-radius: 13px;
  background: rgba(255,255,255,.018);
  color: rgba(255,255,255,.66);
  font-size: .76rem;
}

.entertainment-overview-types i {
  color: #ffc107;
}


/* Current events */

.entertainment-current-heading {
  max-width: 680px;
  margin-bottom: 27px;
}

.entertainment-current-heading h3 {
  margin: 0 0 9px;
  color: #fff;
  font-size: 1.85rem;
  font-weight: 600;
}

.entertainment-current-heading p {
  margin: 0;
  color: rgba(255,255,255,.5) !important;
}

.entertainment-event-list {
  overflow: hidden;
  margin-bottom: 18px;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 24px;
  background: rgba(255,255,255,.016);
}

.entertainment-event {
  display: grid;
  grid-template-columns: 90px 1fr 120px;
  gap: 22px;
  align-items: center;
  padding: 25px 27px;
  border-bottom: 1px solid rgba(255,255,255,.06);
}

.entertainment-event:last-child {
  border-bottom: 0;
}

.entertainment-event-date {
  text-align: center;
  padding-right: 20px;
  border-right: 1px solid rgba(255,255,255,.07);
}

.entertainment-event-date strong {
  display: block;
  color: #ffc107;
  font-size: 1.75rem;
  line-height: 1;
}

.entertainment-event-date span {
  display: block;
  margin-top: 5px;
  color: rgba(255,255,255,.46);
  font-size: .7rem;
  text-transform: uppercase;
}

.entertainment-event-type {
  display: block;
  margin-bottom: 5px;
  color: #ffc107;
  font-size: .64rem;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.entertainment-event-content h3 {
  margin: 0 0 6px;
  color: #fff;
  font-size: 1.12rem;
  font-weight: 600;
}

.entertainment-event-content p {
  max-width: 700px;
  margin: 0;
  color: rgba(255,255,255,.49) !important;
  font-size: .79rem;
  line-height: 1.6;
}

.entertainment-event-meta {
  padding-left: 20px;
  border-left: 1px solid rgba(255,255,255,.06);
}

.entertainment-event-meta span {
  color: rgba(255,255,255,.36);
  font-size: .63rem;
}

.entertainment-event-meta p {
  margin: 4px 0 0;
  color: rgba(255,255,255,.68) !important;
  font-size: .75rem;
}

.entertainment-calendar-note {
  display: grid;
  grid-template-columns: 54px 1fr;
  gap: 20px;
  padding: 28px 30px;
  border: 1px solid rgba(255,193,7,.13);
  border-radius: 21px;
  background: rgba(255,193,7,.025);
}

.entertainment-calendar-icon {
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: rgba(255,193,7,.065);
  color: #ffc107;
}

.entertainment-calendar-note h3 {
  margin: 0 0 7px;
  color: #fff;
  font-size: 1.18rem;
}

.entertainment-calendar-note p {
  margin: 0;
  color: rgba(255,255,255,.5) !important;
  font-size: .82rem;
  line-height: 1.65;
}


/* =========================================================
  EVENTS & FUNCTIONS
========================================================= */

.events-section {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 8% 10%, rgba(0,47,176,.1), transparent 27%),
    radial-gradient(circle at 90% 85%, rgba(255,193,7,.045), transparent 24%),
    #030816;
}

.events-types {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-bottom: 18px;
}

.events-type {
  padding: 29px 26px;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 21px;
  background: rgba(255,255,255,.018);
}

.events-type-icon {
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  border-radius: 14px;
  background: rgba(255,193,7,.065);
  color: #ffc107;
}

.events-type h3 {
  margin: 0 0 11px;
  color: #fff;
  font-size: 1.25rem;
}

.events-type > p {
  min-height: 92px;
  margin: 0 0 19px;
  color: rgba(255,255,255,.52) !important;
  font-size: .81rem;
  line-height: 1.65;
}

.events-type-details {
  padding-top: 15px;
  border-top: 1px solid rgba(255,255,255,.06);
}

.events-type-details span {
  display: block;
  margin: 6px 0;
  color: rgba(255,255,255,.62);
  font-size: .72rem;
}


/* Function spaces */

.events-spaces {
  display: grid;
  grid-template-columns: .75fr 1.25fr;
  gap: 35px;
  padding: 35px 37px;
  margin-bottom: 18px;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 24px;
  background: rgba(255,255,255,.018);
}

.events-spaces-heading h3 {
  margin: 0 0 10px;
  color: #fff;
  font-size: 1.45rem;
}

.events-spaces-heading p {
  margin: 0;
  color: rgba(255,255,255,.52) !important;
  font-size: .84rem;
  line-height: 1.68;
}

.events-space-list {
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.06);
  border-radius: 16px;
}

.events-space {
  display: grid;
  grid-template-columns: 130px 1fr;
  gap: 20px;
  align-items: center;
  padding: 20px;
  border-bottom: 1px solid rgba(255,255,255,.06);
}

.events-space:last-child {
  border-bottom: 0;
}

.events-space-capacity {
  padding-right: 18px;
  border-right: 1px solid rgba(255,255,255,.06);
}

.events-space-capacity strong {
  display: block;
  color: #ffc107;
  font-size: 1.1rem;
}

.events-space-capacity span {
  color: rgba(255,255,255,.38);
  font-size: .65rem;
}

.events-space-content h3 {
  margin: 0 0 5px;
  color: #fff;
  font-size: 1rem;
}

.events-space-content p {
  margin: 0;
  color: rgba(255,255,255,.46) !important;
  font-size: .74rem;
  line-height: 1.55;
}


/* Private spaces */

.events-private-spaces {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 35px;
  align-items: center;
  padding: 34px 36px;
  margin-bottom: 18px;
  border: 1px solid rgba(255,193,7,.12);
  border-radius: 23px;
  background: rgba(255,193,7,.02);
}

.events-private-copy h3 {
  margin: 0 0 11px;
  color: #fff;
  font-size: 1.45rem;
}

.events-private-copy p {
  margin: 0 0 11px;
  color: rgba(255,255,255,.52) !important;
  font-size: .84rem;
  line-height: 1.67;
}

.events-private-list {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 9px;
}

.events-private-list > div {
  min-height: 95px;
  padding: 15px;
  border: 1px solid rgba(255,255,255,.06);
  border-radius: 13px;
  background: rgba(255,255,255,.018);
}

.events-private-list i {
  display: block;
  margin-bottom: 10px;
  color: #ffc107;
}

.events-private-list span {
  display: block;
  color: #fff;
  font-size: .78rem;
  font-weight: 600;
}

.events-private-list small {
  color: rgba(255,255,255,.42);
  font-size: .66rem;
}


/* Wedding */

.events-wedding {
  display: grid;
  grid-template-columns: 55px 1fr;
  gap: 21px;
  padding: 30px 32px;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 21px;
  background: rgba(255,255,255,.018);
}

.events-wedding-icon {
  width: 53px;
  height: 53px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: rgba(255,193,7,.065);
  color: #ffc107;
}

.events-wedding h3 {
  margin: 0 0 8px;
  color: #fff;
  font-size: 1.2rem;
}

.events-wedding p {
  margin: 0 0 9px;
  color: rgba(255,255,255,.5) !important;
  font-size: .82rem;
  line-height: 1.65;
}


/* =========================================================
  RESPONSIVE
========================================================= */

@media (max-width: 991.98px) {

  .entertainment-heading h2,
  .events-heading h2 {
    font-size: 2.35rem;
  }

  .entertainment-overview,
  .events-spaces,
  .events-private-spaces {
    grid-template-columns: 1fr;
  }

  .events-types {
    grid-template-columns: 1fr;
  }

  .events-type > p {
    min-height: 0;
  }
}

@media (max-width: 767.98px) {

  .entertainment-section,
  .events-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .entertainment-heading h2,
  .events-heading h2 {
    font-size: 2rem;
  }

  .entertainment-event {
    grid-template-columns: 75px 1fr;
  }

  .entertainment-event-meta {
    grid-column: 2;
    padding-left: 0;
    border-left: 0;
  }

  .events-spaces,
  .events-private-spaces {
    padding: 28px 23px;
  }
}

@media (max-width: 575.98px) {

  .entertainment-heading h2,
  .events-heading h2 {
    font-size: 1.72rem;
  }

  .entertainment-intro,
  .events-intro {
    font-size: .96rem;
  }

  .entertainment-overview-types,
  .events-private-list {
    grid-template-columns: 1fr;
  }

  .entertainment-event {
    display: block;
    padding: 23px 21px;
  }

  .entertainment-event-date {
    display: inline-block;
    margin-bottom: 15px;
    padding-right: 0;
    border-right: 0;
    text-align: left;
  }

  .entertainment-event-meta {
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid rgba(255,255,255,.06);
  }

  .events-space {
    grid-template-columns: 1fr;
  }

  .events-space-capacity {
    padding-right: 0;
    padding-bottom: 12px;
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.06);
  }

  .events-wedding,
  .entertainment-calendar-note {
    display: block;
  }

  .events-wedding-icon,
  .entertainment-calendar-icon {
    margin-bottom: 17px;
  }
}

/* =========================================================
  GETTING THERE & PARKING
========================================================= */

.getting-there-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(
      circle at 89% 11%,
      rgba(0, 47, 176, 0.11),
      transparent 28%
    ),
    radial-gradient(
      circle at 7% 87%,
      rgba(255, 193, 7, 0.045),
      transparent 24%
    ),
    #050b18;
}


/* =========================================================
  HEADING
========================================================= */

.getting-there-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.getting-there-kicker {
  display: inline-flex;
  align-items: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.22);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.getting-there-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -1.2px;
}

.getting-there-intro {
  max-width: 780px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.64) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}

.getting-there-eyebrow {
  display: block;

  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}


/* =========================================================
  MAIN
========================================================= */

.getting-there-main {
  display: grid;
  grid-template-columns: 0.75fr 1.25fr;

  gap: 18px;

  margin-bottom: 18px;
}


/* =========================================================
  ADDRESS
========================================================= */

.getting-there-address {
  padding: 38px 35px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 24px;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(255, 193, 7, 0.055),
      transparent 46%
    ),
    rgba(255, 255, 255, 0.018);
}

.getting-there-address-icon {
  width: 58px;
  height: 58px;

  display: flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 24px;

  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 16px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.getting-there-address-icon i {
  font-size: 1.3rem;
}

.getting-there-address h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.55rem;
  font-weight: 600;
}

.getting-there-address-line {
  margin: 0;

  color: rgba(255, 255, 255, 0.63) !important;

  font-size: 0.9rem;
  line-height: 1.7;
}

.getting-there-address-note {
  display: grid;
  grid-template-columns: 34px 1fr;

  gap: 11px;

  margin-top: 28px;
  padding-top: 21px;

  border-top: 1px solid rgba(255, 255, 255, 0.07);
}

.getting-there-address-note i {
  width: 32px;
  height: 32px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 9px;

  background: rgba(255, 193, 7, 0.06);

  color: #ffc107;

  font-size: 0.75rem;
}

.getting-there-address-note p {
  margin: 0;

  color: rgba(255, 255, 255, 0.45) !important;

  font-size: 0.74rem;
  line-height: 1.55;
}


/* =========================================================
  TRAVEL TIMES
========================================================= */

.getting-there-times {
  padding: 36px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 24px;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(0, 47, 176, 0.1),
      transparent 38%
    ),
    rgba(255, 255, 255, 0.018);
}

.getting-there-times > h3 {
  margin: 0 0 22px;

  color: #ffffff;

  font-size: 1.5rem;
  font-weight: 600;
}

.getting-there-time-list {
  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;
}

.getting-there-time-item {
  display: grid;
  grid-template-columns: 44px 1fr 70px;

  gap: 14px;
  align-items: center;

  padding: 15px 17px;

  border-bottom: 1px solid rgba(255, 255, 255, 0.055);
}

.getting-there-time-item:last-child {
  border-bottom: 0;
}

.getting-there-time-icon {
  width: 42px;
  height: 42px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 12px;

  background: rgba(255, 193, 7, 0.06);

  color: #ffc107;
}

.getting-there-time-content span {
  display: block;

  margin-bottom: 3px;

  color: #ffffff;

  font-size: 0.83rem;
  font-weight: 600;
}

.getting-there-time-content p {
  margin: 0;

  color: rgba(255, 255, 255, 0.42) !important;

  font-size: 0.7rem;
}

.getting-there-time-item > strong {
  text-align: right;

  color: #ffc107;

  font-size: 0.82rem;
  font-weight: 600;
}


/* =========================================================
  PARKING
========================================================= */

.getting-there-parking {
  display: grid;
  grid-template-columns: 1fr 0.9fr;

  gap: 34px;
  align-items: center;

  padding: 35px 37px;
  margin-bottom: 18px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 23px;

  background: rgba(255, 255, 255, 0.019);
}

.getting-there-parking-copy h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.45rem;
  font-weight: 600;
}

.getting-there-parking-copy p {
  max-width: 690px;

  margin: 0 0 11px;

  color: rgba(255, 255, 255, 0.52) !important;

  font-size: 0.84rem;
  line-height: 1.67;
}

.getting-there-parking-copy p:last-child {
  margin-bottom: 0;
}

.getting-there-parking-options {
  display: grid;
  grid-template-columns: repeat(2, 1fr);

  gap: 10px;
}

.getting-there-parking-option {
  min-height: 190px;

  padding: 21px 18px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;

  background: rgba(255, 255, 255, 0.017);
}

.getting-there-parking-option-highlight {
  border-color: rgba(255, 193, 7, 0.14);

  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.04),
      rgba(255, 255, 255, 0.015)
    );
}

.getting-there-parking-icon {
  width: 45px;
  height: 45px;

  display: flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 16px;

  border-radius: 13px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.getting-there-parking-option > span {
  display: block;

  margin-bottom: 5px;

  color: rgba(255, 255, 255, 0.45);

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.getting-there-parking-option strong {
  display: block;

  margin-bottom: 7px;

  color: #ffffff;

  font-size: 1rem;
  font-weight: 600;
}

.getting-there-parking-option p {
  margin: 0;

  color: rgba(255, 255, 255, 0.44) !important;

  font-size: 0.7rem;
  line-height: 1.5;
}


/* =========================================================
  TRANSPORT
========================================================= */

.getting-there-transport {
  display: grid;
  grid-template-columns: 54px 1fr 260px;

  gap: 21px;
  align-items: center;

  padding: 29px 31px;
  margin-bottom: 18px;

  border: 1px solid rgba(255, 193, 7, 0.12);
  border-radius: 21px;

  background:
    linear-gradient(
      100deg,
      rgba(255, 193, 7, 0.035),
      rgba(255, 255, 255, 0.015)
    );
}

.getting-there-transport-icon {
  width: 52px;
  height: 52px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 14px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.getting-there-transport-content h3 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 1.18rem;
  font-weight: 600;
}

.getting-there-transport-content p {
  max-width: 760px;

  margin: 0;

  color: rgba(255, 255, 255, 0.5) !important;

  font-size: 0.81rem;
  line-height: 1.65;
}

.getting-there-transport-points {
  padding-left: 22px;

  border-left: 1px solid rgba(255, 255, 255, 0.07);
}

.getting-there-transport-points > div {
  display: flex;
  align-items: center;

  gap: 9px;

  padding: 6px 0;

  color: rgba(255, 255, 255, 0.61);

  font-size: 0.73rem;
}

.getting-there-transport-points i {
  width: 19px;
  height: 19px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: rgba(255, 193, 7, 0.06);

  color: #ffc107;

  font-size: 0.52rem;
}


/* =========================================================
  NEARBY
========================================================= */

.getting-there-nearby {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;

  gap: 34px;
  align-items: center;

  padding: 31px 33px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 21px;

  background: rgba(255, 255, 255, 0.017);
}

.getting-there-nearby-heading h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.25rem;
  font-weight: 600;
}

.getting-there-nearby-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.49) !important;

  font-size: 0.8rem;
  line-height: 1.62;
}

.getting-there-nearby-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);

  gap: 8px;
}

.getting-there-nearby-list > div {
  min-height: 77px;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  gap: 8px;

  padding: 11px;

  text-align: center;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 13px;

  background: rgba(255, 255, 255, 0.016);

  color: rgba(255, 255, 255, 0.6);

  font-size: 0.68rem;
}

.getting-there-nearby-list i {
  color: #ffc107;

  font-size: 0.94rem;
}


/* =========================================================
  RESPONSIVE
========================================================= */

@media (max-width: 991.98px) {

  .getting-there-heading h2 {
    font-size: 2.35rem;
  }

  .getting-there-main,
  .getting-there-parking,
  .getting-there-nearby {
    grid-template-columns: 1fr;
  }

  .getting-there-transport {
    grid-template-columns: 54px 1fr;
  }

  .getting-there-transport-points {
    grid-column: 2;

    padding-left: 0;

    border-left: 0;
  }
}


@media (max-width: 767.98px) {

  .getting-there-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .getting-there-heading h2 {
    font-size: 2rem;
  }

  .getting-there-address,
  .getting-there-times,
  .getting-there-parking,
  .getting-there-nearby {
    padding: 29px 24px;
  }

  .getting-there-parking-options {
    grid-template-columns: 1fr;
  }

  .getting-there-nearby-list {
    grid-template-columns: repeat(2, 1fr);
  }
}


@media (max-width: 575.98px) {

  .getting-there-heading h2 {
    font-size: 1.72rem;
  }

  .getting-there-intro {
    font-size: 0.96rem;
  }

  .getting-there-time-item {
    grid-template-columns: 42px 1fr;
  }

  .getting-there-time-item > strong {
    grid-column: 2;

    text-align: left;
  }

  .getting-there-transport {
    display: block;

    padding: 25px 22px;
  }

  .getting-there-transport-icon {
    margin-bottom: 17px;
  }

  .getting-there-transport-points {
    margin-top: 17px;
    padding-top: 13px;

    border-top: 1px solid rgba(255, 255, 255, 0.06);
  }

  .getting-there-nearby-list {
    grid-template-columns: 1fr 1fr;
  }
}

/* =========================================================
  FAQ
========================================================= */

.faq-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(
      circle at 88% 10%,
      rgba(0, 47, 176, 0.10),
      transparent 27%
    ),
    radial-gradient(
      circle at 7% 88%,
      rgba(255, 193, 7, 0.04),
      transparent 23%
    ),
    #030816;
}


/* Heading */

.faq-heading {
  max-width: 880px;
  margin: 0 auto 50px;
}

.faq-kicker {
  display: inline-flex;
  align-items: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.22);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.faq-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -1.2px;
}

.faq-intro {
  max-width: 760px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.64) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}


/* FAQ container */

.faq-list {
  max-width: 1000px;
  margin: 0 auto;

  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 24px;

  background: rgba(255, 255, 255, 0.017);

  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.16);
}


/* Item */

.faq-item {
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.faq-item:last-child {
  border-bottom: 0;
}


/* Question */

.faq-question {
  width: 100%;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 20px;

  padding: 22px 25px;

  border: 0;

  background: transparent;

  color: #ffffff;

  text-align: left;

  cursor: pointer;

  transition:
    background 0.25s ease,
    color 0.25s ease;
}

.faq-question:hover {
  background: rgba(255, 193, 7, 0.025);
}

.faq-question span {
  font-size: 0.94rem;
  font-weight: 600;
  line-height: 1.5;
}


/* Plus */

.faq-question i {
  width: 31px;
  height: 31px;
  flex: 0 0 31px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.15);
  border-radius: 50%;

  background: rgba(255, 193, 7, 0.055);

  color: #ffc107;

  font-size: 0.7rem;

  transition: transform 0.25s ease;
}


/* Answer */

.faq-answer {
  max-height: 0;
  overflow: hidden;

  transition:
    max-height 0.35s ease,
    padding 0.35s ease;
}

.faq-answer p {
  max-width: 850px;

  margin: 0;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.83rem;
  line-height: 1.72;
}

.faq-answer a {
  color: #ffc107;

  font-weight: 500;
}

.faq-answer a:hover {
  color: #ffffff;
}


/* Active */

.faq-item.active {
  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.035),
      rgba(255, 255, 255, 0.008)
    );
}

.faq-item.active .faq-question {
  color: #ffffff;
}

.faq-item.active .faq-question i {
  transform: rotate(45deg);
}

.faq-item.active .faq-answer {
  max-height: 260px;

  padding:
    0 25px 23px;
}


/* Responsive */

@media (max-width: 767.98px) {

  .faq-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .faq-heading h2 {
    font-size: 2rem;
  }

  .faq-question {
    padding: 20px;
  }

  .faq-item.active .faq-answer {
    padding:
      0 20px 21px;
  }
}


@media (max-width: 575.98px) {

  .faq-heading h2 {
    font-size: 1.72rem;
  }

  .faq-intro {
    font-size: 0.96rem;
  }

  .faq-list {
    border-radius: 19px;
  }

  .faq-question span {
    font-size: 0.87rem;
  }
}

/* =========================================================
  LEGAL PAGES
========================================================= */
.legal-page { background:#030816; color:#fff; }
.legal-page .navbar { background:rgba(3,8,22,.96); box-shadow:0 8px 28px rgba(0,0,0,.22); }
.legal-hero { padding:160px 0 72px; position:relative; overflow:hidden; background:radial-gradient(circle at 85% 20%,rgba(0,47,176,.18),transparent 32%),radial-gradient(circle at 8% 85%,rgba(255,193,7,.055),transparent 24%),#050b18; border-bottom:1px solid rgba(255,255,255,.06); }
.legal-hero-inner { max-width:900px; }
.legal-kicker { display:inline-flex; align-items:center; gap:9px; padding:9px 16px; margin-bottom:18px; border:1px solid rgba(255,193,7,.22); border-radius:999px; background:rgba(255,193,7,.065); color:#ffc107; font-size:.78rem; font-weight:600; letter-spacing:.09em; text-transform:uppercase; }
.legal-hero h1 { margin:0 0 18px; font-size:3.35rem; line-height:1.12; letter-spacing:-1.4px; }
.legal-hero p { max-width:790px; margin:0; font-size:1.02rem; line-height:1.8; color:rgba(255,255,255,.64)!important; }
.legal-meta { display:flex; flex-wrap:wrap; gap:10px; margin-top:25px; }
.legal-meta span { display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border:1px solid rgba(255,255,255,.07); border-radius:999px; background:rgba(255,255,255,.025); color:rgba(255,255,255,.65); font-size:.73rem; }
.legal-meta i { color:#ffc107; }
.legal-content { padding:70px 0 90px; background:#030816; }
.legal-layout { display:grid; grid-template-columns:260px minmax(0,1fr); gap:32px; align-items:start; }
.legal-toc { position:sticky; top:105px; padding:24px; border:1px solid rgba(255,255,255,.07); border-radius:20px; background:rgba(255,255,255,.02); }
.legal-toc-title { display:block; margin-bottom:14px; color:#fff; font-size:.87rem; font-weight:600; }
.legal-toc a { display:block; padding:8px 0; color:rgba(255,255,255,.52); font-size:.76rem; line-height:1.45; border-bottom:1px solid rgba(255,255,255,.045); }
.legal-toc a:last-child { border-bottom:0; }
.legal-toc a:hover { color:#ffc107; }
.legal-document { min-width:0; }
.legal-lead { padding:28px 30px; margin-bottom:18px; border:1px solid rgba(255,193,7,.13); border-radius:20px; background:linear-gradient(110deg,rgba(255,193,7,.045),rgba(255,255,255,.015)); }
.legal-lead p { margin:0; color:rgba(255,255,255,.59)!important; font-size:.9rem; line-height:1.75; }
.legal-section { scroll-margin-top:110px; padding:30px; margin-bottom:14px; border:1px solid rgba(255,255,255,.065); border-radius:20px; background:rgba(255,255,255,.017); }
.legal-section h2 { margin:0 0 13px; font-size:1.4rem; font-weight:600; }
.legal-section h3 { margin:22px 0 8px; font-size:1rem; font-weight:600; }
.legal-section p, .legal-section li { color:rgba(255,255,255,.55)!important; font-size:.83rem; line-height:1.72; }
.legal-section p:last-child { margin-bottom:0; }
.legal-section ul, .legal-section ol { margin:10px 0 0; padding-left:20px; }
.legal-section li { margin:7px 0; list-style:disc; }
.legal-section ol li { list-style:decimal; }
.legal-section a { color:#ffc107; text-decoration:underline; text-underline-offset:3px; }
.legal-section a:hover { color:#fff; }
.legal-callout { display:grid; grid-template-columns:48px 1fr; gap:14px; padding:18px; margin-top:18px; border:1px solid rgba(255,193,7,.12); border-radius:15px; background:rgba(255,193,7,.025); }
.legal-callout-icon { width:46px; height:46px; display:flex; align-items:center; justify-content:center; border-radius:13px; background:rgba(255,193,7,.07); color:#ffc107; }
.legal-callout strong { display:block; margin-bottom:4px; color:#fff; font-size:.82rem; }
.legal-callout p { margin:0; font-size:.76rem; }
.legal-contact-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; margin-top:16px; }
.legal-contact-card { padding:16px; border:1px solid rgba(255,255,255,.06); border-radius:14px; background:rgba(255,255,255,.015); }
.legal-contact-card span { display:block; margin-bottom:4px; color:#ffc107; font-size:.65rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.legal-contact-card p { margin:0; }
.safer-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:16px; }
.safer-step { padding:18px; border:1px solid rgba(255,255,255,.06); border-radius:14px; background:rgba(255,255,255,.015); }
.safer-step i { display:block; margin-bottom:10px; color:#ffc107; }
.safer-step strong { display:block; margin-bottom:5px; color:#fff; font-size:.82rem; }
.safer-step p { margin:0; font-size:.73rem; }
@media(max-width:991.98px){ .legal-layout{grid-template-columns:1fr}.legal-toc{position:relative;top:auto}.legal-toc nav{display:grid;grid-template-columns:repeat(2,1fr);gap:0 18px}.legal-hero h1{font-size:2.7rem}.safer-steps{grid-template-columns:1fr} }
@media(max-width:767.98px){ .legal-hero{padding:135px 0 58px}.legal-hero h1{font-size:2.15rem}.legal-content{padding:55px 0 75px}.legal-section,.legal-lead{padding:24px 21px}.legal-contact-grid{grid-template-columns:1fr} }
@media(max-width:575.98px){ .legal-hero h1{font-size:1.85rem}.legal-toc nav{grid-template-columns:1fr} }

/* =========================================================
  CASINO OVERVIEW
========================================================= */

.casino-overview-section {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 10% 10%, rgba(0, 47, 176, 0.10), transparent 28%),
    radial-gradient(circle at 90% 82%, rgba(255, 193, 7, 0.05), transparent 24%),
    #030816;
}


/* =========================================================
  HEADING
========================================================= */

.casino-overview-heading {
  max-width: 920px;
  margin: 0 auto 52px;
}

.casino-overview-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.24);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.07);

  color: #ffc107;

  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.casino-overview-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  line-height: 1.14;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.casino-overview-intro {
  max-width: 800px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.66) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}


/* =========================================================
  MAIN FEATURE
========================================================= */

.casino-overview-feature {
  margin-bottom: 34px;
  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 30px;

  background: rgba(255, 255, 255, 0.025);

  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.24);
}

.casino-overview-image-wrap {
  position: relative;

  height: 100%;
  min-height: 540px;

  overflow: hidden;
}

.casino-overview-image {
  display: block;

  width: 100%;
  height: 100%;
  min-height: 540px;

  object-fit: cover;
}

.casino-overview-image-wrap::after {
  content: "";

  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      90deg,
      transparent 55%,
      rgba(3, 8, 22, 0.36) 100%
    );

  pointer-events: none;
}

.casino-overview-image-badge {
  position: absolute;
  left: 28px;
  bottom: 28px;
  z-index: 2;

  min-width: 180px;

  padding: 18px 21px;

  display: flex;
  flex-direction: column;

  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 18px;

  background: rgba(3, 8, 22, 0.83);

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);

  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.22);
}

.casino-overview-image-number {
  color: #ffc107;

  font-size: 2.35rem;
  line-height: 1;
  font-weight: 700;
}

.casino-overview-image-label {
  margin-top: 7px;

  color: rgba(255, 255, 255, 0.76);

  font-size: 0.82rem;
  font-weight: 500;
}

.casino-overview-main-content {
  height: 100%;

  padding: 52px 50px;

  display: flex;
  flex-direction: column;
  justify-content: center;
}

.casino-overview-eyebrow {
  display: block;

  margin-bottom: 10px;

  color: #ffc107;

  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.casino-overview-main-content h3 {
  margin: 0 0 22px;

  color: #ffffff;

  font-size: 2.05rem;
  line-height: 1.27;
  font-weight: 600;
  letter-spacing: -0.5px;
}

.casino-overview-main-content p {
  margin: 0 0 17px;

  color: rgba(255, 255, 255, 0.63) !important;

  font-size: 0.94rem;
  line-height: 1.78;
}

.casino-overview-main-content p:last-child {
  margin-bottom: 0;
}


/* =========================================================
  MAIN STATS
========================================================= */

.casino-overview-stats {
  margin-bottom: 48px;
}

.casino-overview-stat-card {
  height: 100%;

  padding: 28px 24px;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 22px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.04),
      rgba(255, 255, 255, 0.015)
    );

  transition:
    transform 0.28s ease,
    border-color 0.28s ease,
    background 0.28s ease,
    box-shadow 0.28s ease;
}

.casino-overview-stat-card:hover {
  transform: translateY(-5px);

  border-color: rgba(255, 193, 7, 0.25);

  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.018)
    );

  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.18);
}

.casino-overview-stat-icon {
  width: 52px;
  height: 52px;

  margin-bottom: 20px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.18);
  border-radius: 15px;

  background: rgba(255, 193, 7, 0.07);
}

.casino-overview-stat-icon i {
  color: #ffc107;

  font-size: 1.2rem;
}

.casino-overview-stat-label {
  display: block;

  margin-bottom: 7px;

  color: rgba(255, 255, 255, 0.42);

  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.casino-overview-stat-card h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.42rem;
  line-height: 1.22;
  font-weight: 600;
}

.casino-overview-stat-card p {
  margin: 0;

  color: rgba(255, 255, 255, 0.58) !important;

  font-size: 0.88rem;
  line-height: 1.68;
}


/* =========================================================
  GAMING CATEGORIES
========================================================= */

.casino-overview-content {
  margin-bottom: 44px;
}

.casino-overview-content-heading {
  max-width: 760px;
  margin-bottom: 30px;
}

.casino-overview-content-heading h3 {
  margin: 0 0 12px;

  color: #ffffff;

  font-size: 1.9rem;
  line-height: 1.3;
  font-weight: 600;
}

.casino-overview-content-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.56) !important;

  font-size: 0.92rem;
  line-height: 1.72;
}

.casino-overview-game-card {
  position: relative;

  height: 100%;
  min-height: 320px;

  padding: 30px 27px;

  display: flex;
  flex-direction: column;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 22px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );

  transition:
    transform 0.3s ease,
    border-color 0.3s ease,
    background 0.3s ease,
    box-shadow 0.3s ease;
}

.casino-overview-game-card:hover {
  transform: translateY(-6px);

  border-color: rgba(255, 193, 7, 0.24);

  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.015)
    );

  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.18);
}

.casino-overview-game-card-highlight {
  border-color: rgba(255, 193, 7, 0.15);

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(255, 193, 7, 0.065),
      transparent 45%
    ),
    rgba(255, 255, 255, 0.018);
}

.casino-overview-card-number {
  position: absolute;
  top: 24px;
  right: 25px;

  color: rgba(255, 255, 255, 0.14);

  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.09em;
}

.casino-overview-card-icon {
  width: 54px;
  height: 54px;

  margin-bottom: 22px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);
}

.casino-overview-card-icon i {
  color: #ffc107;

  font-size: 1.18rem;
}

.casino-overview-card-type {
  display: block;

  margin-bottom: 6px;

  color: #ffc107;

  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.casino-overview-game-card h3 {
  margin: 0 0 12px;

  color: #ffffff;

  font-size: 1.28rem;
  line-height: 1.32;
  font-weight: 600;
}

.casino-overview-game-card p {
  margin: 0 0 20px;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.84rem;
  line-height: 1.68;
}

.casino-overview-card-link {
  margin-top: auto;

  display: inline-flex;
  align-items: center;
  gap: 8px;

  color: #ffc107;

  font-size: 0.84rem;
  font-weight: 600;

  transition: color 0.25s ease;
}

.casino-overview-card-link i {
  font-size: 0.7rem;

  transition: transform 0.25s ease;
}

.casino-overview-card-link:hover {
  color: #ffffff;
}

.casino-overview-card-link:hover i {
  transform: translateX(4px);
}


/* =========================================================
  FIRST-TIME VISITOR
========================================================= */

.casino-overview-choice {
  margin-bottom: 32px;

  padding: 36px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 26px;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(0, 47, 176, 0.09),
      transparent 35%
    ),
    rgba(255, 255, 255, 0.018);
}

.casino-overview-choice-heading {
  max-width: 760px;
  margin-bottom: 28px;
}

.casino-overview-choice-heading h3 {
  margin: 0 0 12px;

  color: #ffffff;

  font-size: 1.8rem;
  line-height: 1.3;
  font-weight: 600;
}

.casino-overview-choice-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.56) !important;

  font-size: 0.9rem;
  line-height: 1.7;
}

.casino-overview-choice-item {
  height: 100%;

  padding: 20px 18px;

  display: grid;
  grid-template-columns: 45px 1fr;
  gap: 14px;
  align-items: start;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 17px;

  background: rgba(255, 255, 255, 0.022);
}

.casino-overview-choice-item > i {
  width: 42px;
  height: 42px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 12px;

  background: rgba(255, 193, 7, 0.07);

  color: #ffc107;

  font-size: 0.95rem;
}

.casino-overview-choice-item span {
  display: block;

  margin-bottom: 5px;

  color: #ffffff;

  font-size: 0.88rem;
  font-weight: 600;
}

.casino-overview-choice-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.49) !important;

  font-size: 0.77rem;
  line-height: 1.58;
}


/* =========================================================
  IMPORTANT NOTE
========================================================= */

.casino-overview-note {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 21px;
  align-items: start;

  padding: 30px 32px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 22px;

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.015)
    );
}

.casino-overview-note-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.casino-overview-note-icon i {
  font-size: 1.15rem;
}

.casino-overview-note-content > span {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.casino-overview-note-content h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.22rem;
  line-height: 1.3;
  font-weight: 600;
}

.casino-overview-note-content p {
  max-width: 950px;
  margin: 0;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.85rem;
  line-height: 1.68;
}


/* =========================================================
  RESPONSIVE
========================================================= */

@media (max-width: 1199.98px) {

  .casino-overview-heading h2 {
    font-size: 2.6rem;
  }

  .casino-overview-main-content {
    padding: 44px 38px;
  }

  .casino-overview-game-card {
    min-height: 300px;
  }
}


@media (max-width: 991.98px) {

  .casino-overview-heading h2 {
    font-size: 2.35rem;
  }

  .casino-overview-image-wrap,
  .casino-overview-image {
    min-height: 430px;
  }

  .casino-overview-image-wrap::after {
    background:
      linear-gradient(
        180deg,
        transparent 60%,
        rgba(3, 8, 22, 0.38) 100%
      );
  }

  .casino-overview-main-content {
    padding: 40px 32px;
  }

  .casino-overview-choice {
    padding: 30px 26px;
  }
}


@media (max-width: 767.98px) {

  .casino-overview-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .casino-overview-heading {
    margin-bottom: 38px;
  }

  .casino-overview-heading h2 {
    font-size: 2rem;
  }

  .casino-overview-feature {
    border-radius: 22px;
  }

  .casino-overview-image-wrap,
  .casino-overview-image {
    min-height: 350px;
  }

  .casino-overview-main-content {
    padding: 34px 24px;
  }

  .casino-overview-main-content h3 {
    font-size: 1.7rem;
  }

  .casino-overview-game-card {
    min-height: 0;
    padding: 27px 23px;
  }

  .casino-overview-choice {
    padding: 27px 22px;
  }

  .casino-overview-note {
    padding: 27px 23px;
  }
}


@media (max-width: 575.98px) {

  .casino-overview-heading h2 {
    font-size: 1.72rem;
  }

  .casino-overview-intro {
    font-size: 0.96rem;
  }

  .casino-overview-image-wrap,
  .casino-overview-image {
    min-height: 290px;
  }

  .casino-overview-image-badge {
    left: 18px;
    bottom: 18px;
  }

  .casino-overview-main-content {
    padding: 30px 20px;
  }

  .casino-overview-choice-item {
    grid-template-columns: 1fr;
  }

  .casino-overview-choice-item > i {
    margin-bottom: 4px;
  }

  .casino-overview-note {
    display: block;
  }

  .casino-overview-note-icon {
    margin-bottom: 18px;
  }
}

/* =========================================================
  ABOUT SECTION
========================================================= */

.about-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(circle at 10% 12%, rgba(0, 47, 176, 0.10), transparent 28%),
    radial-gradient(circle at 90% 88%, rgba(255, 193, 7, 0.045), transparent 24%),
    #050b18;
}


/* =========================================================
  HEADING
========================================================= */

.about-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.about-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.24);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.07);

  color: #ffc107;

  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.about-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  line-height: 1.14;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.about-heading-text {
  max-width: 780px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.66) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}


/* =========================================================
  MAIN FEATURE
========================================================= */

.about-feature {
  margin-bottom: 34px;
  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 30px;

  background: rgba(255, 255, 255, 0.025);

  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.24);
}

.about-image-wrap {
  position: relative;

  height: 100%;
  min-height: 560px;

  overflow: hidden;
}

.about-image {
  display: block;

  width: 100%;
  height: 100%;
  min-height: 560px;

  object-fit: cover;
}

.about-image-wrap::after {
  content: "";

  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      90deg,
      transparent 58%,
      rgba(5, 11, 24, 0.38) 100%
    );

  pointer-events: none;
}

.about-image-badge {
  position: absolute;
  left: 28px;
  bottom: 28px;
  z-index: 2;

  min-width: 160px;
  padding: 18px 21px;

  display: flex;
  flex-direction: column;

  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 18px;

  background: rgba(5, 11, 24, 0.84);

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.about-image-year {
  color: #ffc107;

  font-size: 2.35rem;
  line-height: 1;
  font-weight: 700;
}

.about-image-label {
  margin-top: 7px;

  color: rgba(255, 255, 255, 0.74);

  font-size: 0.82rem;
  font-weight: 500;
}

.about-main-content {
  height: 100%;

  padding: 52px 50px;

  display: flex;
  flex-direction: column;
  justify-content: center;
}

.about-eyebrow {
  display: block;

  margin-bottom: 10px;

  color: #ffc107;

  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.about-main-content h3 {
  margin: 0 0 22px;

  color: #ffffff;

  font-size: 2.05rem;
  line-height: 1.27;
  font-weight: 600;
  letter-spacing: -0.5px;
}

.about-main-content p {
  margin: 0 0 17px;

  color: rgba(255, 255, 255, 0.63) !important;

  font-size: 0.94rem;
  line-height: 1.78;
}

.about-main-content p:last-child {
  margin-bottom: 0;
}


/* =========================================================
  FACT CARDS
========================================================= */

.about-facts {
  margin-bottom: 34px;
}

.about-fact-card {
  height: 100%;

  padding: 27px 24px;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 22px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.04),
      rgba(255, 255, 255, 0.015)
    );

  transition:
    transform 0.28s ease,
    border-color 0.28s ease,
    background 0.28s ease;
}

.about-fact-card:hover {
  transform: translateY(-5px);

  border-color: rgba(255, 193, 7, 0.24);

  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.04),
      rgba(255, 255, 255, 0.018)
    );
}

.about-fact-icon {
  width: 52px;
  height: 52px;

  margin-bottom: 20px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.18);
  border-radius: 15px;

  background: rgba(255, 193, 7, 0.07);
}

.about-fact-icon i {
  color: #ffc107;
  font-size: 1.16rem;
}

.about-fact-label,
.about-detail-label {
  display: block;

  margin-bottom: 7px;

  color: rgba(255, 255, 255, 0.42);

  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.about-fact-card h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.28rem;
  line-height: 1.3;
  font-weight: 600;
}

.about-fact-card p {
  margin: 0;

  color: rgba(255, 255, 255, 0.57) !important;

  font-size: 0.87rem;
  line-height: 1.68;
}


/* =========================================================
  HISTORY + STRUCTURE
========================================================= */

.about-details {
  margin-bottom: 34px;
}

.about-detail-card {
  height: 100%;

  padding: 36px 34px;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.022);
}

.about-detail-large {
  background:
    radial-gradient(circle at 100% 0%, rgba(0, 47, 176, 0.10), transparent 40%),
    rgba(255, 255, 255, 0.022);
}

.about-structure-card {
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.06), transparent 40%),
    rgba(255, 255, 255, 0.022);
}

.about-detail-icon {
  width: 56px;
  height: 56px;

  margin-bottom: 22px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.18);
  border-radius: 16px;

  background: rgba(255, 193, 7, 0.07);
}

.about-detail-icon i {
  color: #ffc107;
  font-size: 1.24rem;
}

.about-detail-card h3 {
  margin: 0 0 18px;

  color: #ffffff;

  font-size: 1.58rem;
  line-height: 1.32;
  font-weight: 600;
}

.about-detail-card p {
  margin: 0 0 15px;

  color: rgba(255, 255, 255, 0.61) !important;

  font-size: 0.91rem;
  line-height: 1.76;
}

.about-detail-card p:last-of-type {
  margin-bottom: 0;
}


/* Structure list */

.about-structure-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;

  margin-top: 25px;
  padding-top: 22px;

  border-top: 1px solid rgba(255, 255, 255, 0.07);
}

.about-structure-list > div {
  display: flex;
  align-items: center;
  gap: 9px;

  padding: 11px 12px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 13px;

  background: rgba(255, 255, 255, 0.02);

  color: rgba(255, 255, 255, 0.71);

  font-size: 0.82rem;
}

.about-structure-list i {
  width: 20px;
  height: 20px;

  display: flex;
  align-items: center;
  justify-content: center;

  flex: 0 0 20px;

  border-radius: 50%;

  background: rgba(255, 193, 7, 0.07);

  color: #ffc107;

  font-size: 0.53rem;
}


/* =========================================================
  CURRENT OFFER
========================================================= */

.about-offer {
  margin-bottom: 34px;

  padding: 36px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 26px;

  background:
    radial-gradient(circle at 100% 0%, rgba(0, 47, 176, 0.08), transparent 34%),
    rgba(255, 255, 255, 0.018);
}

.about-offer-heading {
  max-width: 760px;
  margin-bottom: 28px;
}

.about-offer-heading h3 {
  margin: 0 0 12px;

  color: #ffffff;

  font-size: 1.8rem;
  line-height: 1.3;
  font-weight: 600;
}

.about-offer-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.56) !important;

  font-size: 0.9rem;
  line-height: 1.7;
}

.about-offer-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.about-offer-item {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 14px;

  padding: 19px 17px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 17px;

  background: rgba(255, 255, 255, 0.022);
}

.about-offer-icon {
  width: 45px;
  height: 45px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 13px;

  background: rgba(255, 193, 7, 0.07);

  color: #ffc107;
}

.about-offer-icon i {
  font-size: 0.98rem;
}

.about-offer-item h4 {
  margin: 0 0 6px;

  color: #ffffff;

  font-size: 0.92rem;
  line-height: 1.4;
  font-weight: 600;
}

.about-offer-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.49) !important;

  font-size: 0.76rem;
  line-height: 1.58;
}


/* =========================================================
  REGULATION
========================================================= */

.about-regulation {
  display: grid;
  grid-template-columns: 60px 1fr;
  gap: 22px;

  margin-bottom: 18px;
  padding: 31px 32px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 23px;

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.015)
    );
}

.about-regulation-icon {
  width: 58px;
  height: 58px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.18);
  border-radius: 16px;

  background: rgba(255, 193, 7, 0.07);

  color: #ffc107;
}

.about-regulation-icon i {
  font-size: 1.22rem;
}

.about-regulation-content h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.28rem;
  line-height: 1.32;
  font-weight: 600;
}

.about-regulation-content p {
  max-width: 980px;

  margin: 0 0 12px;

  color: rgba(255, 255, 255, 0.57) !important;

  font-size: 0.87rem;
  line-height: 1.7;
}

.about-regulation-content p:last-child {
  margin-bottom: 0;
}


/* =========================================================
  IDENTITY NOTE
========================================================= */

.about-identity-note {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 17px;

  padding: 22px 24px;

  border: 1px solid rgba(72, 123, 255, 0.17);
  border-radius: 19px;

  background: rgba(0, 47, 176, 0.07);
}

.about-identity-note-icon {
  width: 46px;
  height: 46px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 13px;

  background: rgba(72, 123, 255, 0.10);

  color: #8eafff;
}

.about-identity-note h3 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 1.02rem;
  font-weight: 600;
}

.about-identity-note p {
  max-width: 1000px;
  margin: 0;

  color: rgba(255, 255, 255, 0.56) !important;

  font-size: 0.83rem;
  line-height: 1.67;
}


/* =========================================================
  RESPONSIVE
========================================================= */

@media (max-width: 1199.98px) {

  .about-heading h2 {
    font-size: 2.6rem;
  }

  .about-main-content {
    padding: 44px 38px;
  }

  .about-offer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


@media (max-width: 991.98px) {

  .about-heading h2 {
    font-size: 2.35rem;
  }

  .about-image-wrap,
  .about-image {
    min-height: 430px;
  }

  .about-image-wrap::after {
    background:
      linear-gradient(
        180deg,
        transparent 62%,
        rgba(5, 11, 24, 0.38) 100%
      );
  }

  .about-main-content {
    padding: 40px 32px;
  }

  .about-offer {
    padding: 30px 26px;
  }
}


@media (max-width: 767.98px) {

  .about-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .about-heading {
    margin-bottom: 38px;
  }

  .about-heading h2 {
    font-size: 2rem;
  }

  .about-feature {
    border-radius: 22px;
  }

  .about-image-wrap,
  .about-image {
    min-height: 350px;
  }

  .about-main-content {
    padding: 34px 24px;
  }

  .about-main-content h3 {
    font-size: 1.7rem;
  }

  .about-detail-card {
    padding: 30px 24px;
  }

  .about-offer {
    padding: 27px 22px;
  }

  .about-offer-grid {
    grid-template-columns: 1fr;
  }

  .about-regulation {
    padding: 27px 23px;
  }
}


@media (max-width: 575.98px) {

  .about-heading h2 {
    font-size: 1.72rem;
  }

  .about-heading-text {
    font-size: 0.96rem;
  }

  .about-image-wrap,
  .about-image {
    min-height: 290px;
  }

  .about-image-badge {
    left: 18px;
    bottom: 18px;
  }

  .about-main-content {
    padding: 30px 20px;
  }

  .about-structure-list {
    grid-template-columns: 1fr;
  }

  .about-offer-item {
    grid-template-columns: 44px 1fr;
  }

  .about-regulation,
  .about-identity-note {
    display: block;
  }

  .about-regulation-icon,
  .about-identity-note-icon {
    margin-bottom: 17px;
  }
}

/* =========================================================
  LIVE TABLE GAMES
========================================================= */

.table-games-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(circle at 88% 10%, rgba(0, 47, 176, 0.10), transparent 27%),
    radial-gradient(circle at 8% 88%, rgba(255, 193, 7, 0.045), transparent 24%),
    #030816;
}


/* =========================================================
  HEADING
========================================================= */

.table-games-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.table-games-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.23);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.81rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.table-games-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  line-height: 1.14;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.table-games-intro {
  max-width: 790px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.65) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}

.table-games-eyebrow {
  display: block;

  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}


/* =========================================================
  HOURS
========================================================= */

.table-games-hours {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
  gap: 34px;
  align-items: center;

  margin-bottom: 48px;
  padding: 35px 36px;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 26px;

  background:
    radial-gradient(circle at 100% 0%, rgba(0, 47, 176, 0.09), transparent 38%),
    rgba(255, 255, 255, 0.02);
}

.table-games-hours-main h3 {
  margin: 0 0 13px;

  color: #ffffff;

  font-size: 1.65rem;
  line-height: 1.32;
  font-weight: 600;
}

.table-games-hours-main p {
  margin: 0;

  color: rgba(255, 255, 255, 0.56) !important;

  font-size: 0.89rem;
  line-height: 1.72;
}

.table-games-hours-grid {
  display: grid;
  gap: 10px;
}

.table-games-hours-item {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 14px;
  align-items: center;

  padding: 16px 17px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;

  background: rgba(255, 255, 255, 0.022);
}

.table-games-hours-highlight {
  border-color: rgba(255, 193, 7, 0.16);

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.018)
    );
}

.table-games-hours-icon {
  width: 45px;
  height: 45px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 13px;

  background: rgba(255, 193, 7, 0.07);

  color: #ffc107;
}

.table-games-hours-icon i {
  font-size: 0.98rem;
}

.table-games-hours-item span {
  display: block;

  margin-bottom: 2px;

  color: rgba(255, 255, 255, 0.44);

  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.table-games-hours-item h4 {
  margin: 0 0 3px;

  color: #ffffff;

  font-size: 1.02rem;
  font-weight: 600;
}

.table-games-hours-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.48) !important;

  font-size: 0.75rem;
  line-height: 1.5;
}


/* =========================================================
  GAMES HEADING
========================================================= */

.table-games-content {
  margin-bottom: 42px;
}

.table-games-content-heading {
  max-width: 760px;
  margin-bottom: 28px;
}

.table-games-content-heading h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.9rem;
  font-weight: 600;
}

.table-games-content-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.91rem;
  line-height: 1.7;
}


/* =========================================================
  GAME LIST
========================================================= */

.table-games-list {
  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.017);
}

.table-game-row {
  display: grid;
  grid-template-columns: 40px 54px minmax(0, 1fr) 145px;
  gap: 19px;
  align-items: center;

  padding: 25px 27px;

  border-bottom: 1px solid rgba(255, 255, 255, 0.06);

  transition:
    background 0.25s ease,
    padding-left 0.25s ease;
}

.table-game-row:last-child {
  border-bottom: 0;
}

.table-game-row:hover {
  padding-left: 32px;

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.04),
      rgba(255, 255, 255, 0.01)
    );
}

.table-game-row-featured {
  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.025),
      transparent
    );
}

.table-game-number {
  color: rgba(255, 255, 255, 0.17);

  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.table-game-icon {
  width: 52px;
  height: 52px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);
}

.table-game-icon i {
  color: #ffc107;
  font-size: 1.1rem;
}

.table-game-type {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.table-game-content h3 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 1.2rem;
  font-weight: 600;
}

.table-game-content p {
  max-width: 620px;
  margin: 0;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.84rem;
  line-height: 1.65;
}

.table-game-meta {
  padding-left: 18px;

  border-left: 1px solid rgba(255, 255, 255, 0.07);
}

.table-game-meta span {
  display: block;

  margin-bottom: 5px;

  color: rgba(255, 255, 255, 0.36);

  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.table-game-meta p {
  margin: 0;

  color: #ffc107 !important;

  font-size: 0.87rem;
  line-height: 1.45;
  font-weight: 600;
}


/* =========================================================
  BLACKJACK FEATURE
========================================================= */

.table-games-feature {
  margin-bottom: 42px;
  padding: 34px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 25px;

  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.055), transparent 38%),
    rgba(255, 255, 255, 0.018);
}

.table-games-feature-head {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 18px;
  align-items: center;

  margin-bottom: 17px;
}

.table-games-feature-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 16px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.table-games-feature-head h3 {
  margin: 0;

  color: #ffffff;

  font-size: 1.45rem;
  line-height: 1.3;
  font-weight: 600;
}

.table-games-feature > p {
  max-width: 850px;
  margin: 0 0 24px;

  color: rgba(255, 255, 255, 0.57) !important;

  font-size: 0.88rem;
  line-height: 1.72;
}

.table-games-feature-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 11px;
}

.table-games-feature-item {
  padding: 15px 16px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 15px;

  background: rgba(255, 255, 255, 0.02);
}

.table-games-feature-item span {
  display: block;

  margin-bottom: 5px;

  color: #ffffff;

  font-size: 0.83rem;
  font-weight: 600;
}

.table-games-feature-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.73rem;
  line-height: 1.55;
}


/* =========================================================
  LIMITS
========================================================= */

.table-games-limits {
  margin-bottom: 32px;
}

.table-games-limits-heading {
  max-width: 780px;
  margin-bottom: 27px;
}

.table-games-limits-heading h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.85rem;
  font-weight: 600;
}

.table-games-limits-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.9rem;
  line-height: 1.7;
}

.table-games-limit-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.table-games-limit-card {
  position: relative;
  overflow: hidden;

  padding: 27px 23px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 21px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );
}

.table-games-limit-card-featured {
  border-color: rgba(255, 193, 7, 0.18);

  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.065), transparent 45%),
    rgba(255, 255, 255, 0.018);
}

.table-games-limit-label {
  display: block;

  margin-bottom: 16px;

  color: rgba(255, 255, 255, 0.42);

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.table-games-limit-value {
  margin-bottom: 7px;

  color: #ffc107;

  font-size: 2.7rem;
  line-height: 1;
  font-weight: 700;
  letter-spacing: -1.5px;
}

.table-games-limit-card h4 {
  margin: 0 0 10px;

  color: #ffffff;

  font-size: 1rem;
  font-weight: 600;
}

.table-games-limit-card p {
  margin: 0;

  color: rgba(255, 255, 255, 0.5) !important;

  font-size: 0.77rem;
  line-height: 1.6;
}


/* =========================================================
  NOTICE
========================================================= */

.table-games-notice {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 21px;

  padding: 30px 32px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 22px;

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.014)
    );
}

.table-games-notice-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.table-games-notice-content > span {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.table-games-notice-content h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.2rem;
  font-weight: 600;
}

.table-games-notice-content p {
  max-width: 980px;
  margin: 0;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.84rem;
  line-height: 1.68;
}


/* =========================================================
  RESPONSIVE
========================================================= */

@media (max-width: 1199.98px) {

  .table-games-heading h2 {
    font-size: 2.6rem;
  }

  .table-games-limit-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


@media (max-width: 991.98px) {

  .table-games-heading h2 {
    font-size: 2.35rem;
  }

  .table-games-hours {
    grid-template-columns: 1fr;
  }

  .table-games-feature-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .table-game-row {
    grid-template-columns: 35px 52px minmax(0, 1fr);
  }

  .table-game-meta {
    grid-column: 3;

    padding-left: 0;

    border-left: 0;
  }

  .table-game-meta span,
  .table-game-meta p {
    display: inline;
  }

  .table-game-meta span {
    margin-right: 8px;
  }
}


@media (max-width: 767.98px) {

  .table-games-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .table-games-heading {
    margin-bottom: 38px;
  }

  .table-games-heading h2 {
    font-size: 2rem;
  }

  .table-games-hours,
  .table-games-feature {
    padding: 28px 23px;
  }

  .table-game-row {
    grid-template-columns: 50px 1fr;
    gap: 15px;

    padding: 23px 21px;
  }

  .table-game-row:hover {
    padding-left: 21px;
  }

  .table-game-number {
    display: none;
  }

  .table-game-icon {
    grid-column: 1;
  }

  .table-game-content {
    grid-column: 2;
  }

  .table-game-meta {
    grid-column: 2;
  }

  .table-games-limit-grid {
    grid-template-columns: 1fr 1fr;
  }

  .table-games-notice {
    padding: 27px 23px;
  }
}


@media (max-width: 575.98px) {

  .table-games-heading h2 {
    font-size: 1.72rem;
  }

  .table-games-intro {
    font-size: 0.96rem;
  }

  .table-games-hours {
    padding: 25px 20px;
  }

  .table-games-feature-head {
    grid-template-columns: 1fr;
  }

  .table-games-feature-grid {
    grid-template-columns: 1fr;
  }

  .table-game-row {
    display: block;
  }

  .table-game-icon {
    margin-bottom: 16px;
  }

  .table-game-meta {
    margin-top: 15px;
    padding-top: 13px;

    border-top: 1px solid rgba(255, 255, 255, 0.06);
  }

  .table-games-limit-grid {
    grid-template-columns: 1fr;
  }

  .table-games-notice {
    display: block;
  }

  .table-games-notice-icon {
    margin-bottom: 17px;
  }
}

/* =========================================================
  SLOTS & ELECTRONIC GAMING
========================================================= */

.gaming-machines-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(circle at 10% 10%, rgba(0, 47, 176, 0.10), transparent 28%),
    radial-gradient(circle at 90% 86%, rgba(255, 193, 7, 0.045), transparent 24%),
    #050b18;
}


/* =========================================================
  HEADING
========================================================= */

.gaming-machines-heading {
  max-width: 920px;
  margin: 0 auto 52px;
}

.gaming-machines-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.23);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.81rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.gaming-machines-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  line-height: 1.14;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.gaming-machines-intro {
  max-width: 800px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.65) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}

.gaming-machines-eyebrow {
  display: block;

  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}


/* =========================================================
  SUMMARY
========================================================= */

.gaming-machines-summary {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(300px, 0.75fr);
  gap: 34px;

  margin-bottom: 46px;
  padding: 37px 38px;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 27px;

  background:
    radial-gradient(circle at 100% 0%, rgba(0, 47, 176, 0.10), transparent 38%),
    rgba(255, 255, 255, 0.02);
}

.gaming-machines-summary-main h3 {
  margin: 0 0 17px;

  color: #ffffff;

  font-size: 1.8rem;
  line-height: 1.3;
  font-weight: 600;
}

.gaming-machines-summary-main p {
  margin: 0 0 14px;

  color: rgba(255, 255, 255, 0.58) !important;

  font-size: 0.9rem;
  line-height: 1.74;
}

.gaming-machines-summary-main p:last-child {
  margin-bottom: 0;
}

.gaming-machines-summary-stats {
  display: grid;
  gap: 12px;
}

.gaming-machines-summary-stat {
  padding: 20px 19px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 18px;

  background: rgba(255, 255, 255, 0.022);
}

.gaming-machines-summary-label {
  display: block;

  margin-bottom: 8px;

  color: rgba(255, 255, 255, 0.42);

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.gaming-machines-summary-value {
  margin-bottom: 8px;

  color: #ffc107;

  font-size: 2.45rem;
  line-height: 1;
  font-weight: 700;
  letter-spacing: -1.4px;
}

.gaming-machines-summary-value-small {
  font-size: 1.42rem;
  letter-spacing: -0.4px;
}

.gaming-machines-summary-stat p {
  margin: 0;

  color: rgba(255, 255, 255, 0.48) !important;

  font-size: 0.76rem;
  line-height: 1.55;
}


/* =========================================================
  SLOT TYPES
========================================================= */

.gaming-machines-content {
  margin-bottom: 42px;
}

.gaming-machines-content-heading {
  max-width: 760px;
  margin-bottom: 28px;
}

.gaming-machines-content-heading h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.9rem;
  font-weight: 600;
}

.gaming-machines-content-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.9rem;
  line-height: 1.7;
}

.gaming-machines-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
}

.gaming-machines-card {
  position: relative;

  min-height: 280px;
  padding: 29px 27px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 22px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );

  transition:
    transform 0.28s ease,
    border-color 0.28s ease,
    background 0.28s ease;
}

.gaming-machines-card:hover {
  transform: translateY(-5px);

  border-color: rgba(255, 193, 7, 0.22);

  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.04),
      rgba(255, 255, 255, 0.015)
    );
}

.gaming-machines-card-highlight {
  border-color: rgba(255, 193, 7, 0.14);

  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.06), transparent 44%),
    rgba(255, 255, 255, 0.018);
}

.gaming-machines-card-number {
  position: absolute;
  top: 23px;
  right: 24px;

  color: rgba(255, 255, 255, 0.14);

  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.09em;
}

.gaming-machines-card-icon {
  width: 54px;
  height: 54px;

  margin-bottom: 21px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.gaming-machines-card-icon i {
  font-size: 1.12rem;
}

.gaming-machines-card-type {
  display: block;

  margin-bottom: 6px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.gaming-machines-card h3 {
  margin: 0 0 12px;

  color: #ffffff;

  font-size: 1.27rem;
  font-weight: 600;
}

.gaming-machines-card p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.84rem;
  line-height: 1.67;
}


/* =========================================================
  ELECTRONIC TABLE GAMES
========================================================= */

.gaming-machines-etg {
  margin-bottom: 42px;
  padding: 34px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 25px;

  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.055), transparent 38%),
    rgba(255, 255, 255, 0.018);
}

.gaming-machines-etg-head {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 18px;
  align-items: center;

  margin-bottom: 17px;
}

.gaming-machines-etg-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 16px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.gaming-machines-etg-head h3 {
  margin: 0;

  color: #ffffff;

  font-size: 1.45rem;
  line-height: 1.3;
  font-weight: 600;
}

.gaming-machines-etg > p {
  max-width: 900px;
  margin: 0 0 24px;

  color: rgba(255, 255, 255, 0.57) !important;

  font-size: 0.88rem;
  line-height: 1.72;
}

.gaming-machines-etg-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 11px;
}

.gaming-machines-etg-item {
  padding: 16px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 15px;

  background: rgba(255, 255, 255, 0.02);
}

.gaming-machines-etg-item span {
  display: block;

  margin-bottom: 5px;

  color: #ffffff;

  font-size: 0.83rem;
  font-weight: 600;
}

.gaming-machines-etg-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.73rem;
  line-height: 1.55;
}


/* =========================================================
  WAGER RANGE
========================================================= */

.gaming-machines-range {
  margin-bottom: 32px;
  padding: 34px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.018);
}

.gaming-machines-range-heading {
  max-width: 760px;
  margin-bottom: 29px;
}

.gaming-machines-range-heading h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.75rem;
  font-weight: 600;
}

.gaming-machines-range-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.88rem;
  line-height: 1.68;
}

.gaming-machines-range-track {
  display: grid;
  grid-template-columns: 1fr 80px 1fr 80px 1fr;
  gap: 14px;
  align-items: center;
}

.gaming-machines-range-item {
  min-height: 150px;
  padding: 19px 18px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 17px;

  background: rgba(255, 255, 255, 0.022);
}

.gaming-machines-range-step {
  display: block;

  margin-bottom: 10px;

  color: #ffc107;

  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.gaming-machines-range-item h4 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 0.95rem;
  font-weight: 600;
}

.gaming-machines-range-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.48) !important;

  font-size: 0.76rem;
  line-height: 1.58;
}

.gaming-machines-range-line {
  height: 1px;

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.12),
      rgba(255, 193, 7, 0.55),
      rgba(255, 193, 7, 0.12)
    );
}


/* =========================================================
  NOTE
========================================================= */

.gaming-machines-note {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 21px;

  padding: 30px 32px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 22px;

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.014)
    );
}

.gaming-machines-note-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.gaming-machines-note-content > span {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.gaming-machines-note-content h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.2rem;
  font-weight: 600;
}

.gaming-machines-note-content p {
  max-width: 980px;
  margin: 0;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.84rem;
  line-height: 1.68;
}


/* =========================================================
  RESPONSIVE
========================================================= */

@media (max-width: 1199.98px) {

  .gaming-machines-heading h2 {
    font-size: 2.6rem;
  }
}


@media (max-width: 991.98px) {

  .gaming-machines-heading h2 {
    font-size: 2.35rem;
  }

  .gaming-machines-summary {
    grid-template-columns: 1fr;
  }

  .gaming-machines-etg-grid {
    grid-template-columns: 1fr;
  }

  .gaming-machines-range-track {
    grid-template-columns: 1fr;
  }

  .gaming-machines-range-line {
    width: 1px;
    height: 28px;

    margin: 0 auto;

    background:
      linear-gradient(
        180deg,
        rgba(255, 193, 7, 0.12),
        rgba(255, 193, 7, 0.55),
        rgba(255, 193, 7, 0.12)
      );
  }
}


@media (max-width: 767.98px) {

  .gaming-machines-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .gaming-machines-heading {
    margin-bottom: 38px;
  }

  .gaming-machines-heading h2 {
    font-size: 2rem;
  }

  .gaming-machines-summary,
  .gaming-machines-etg,
  .gaming-machines-range {
    padding: 28px 23px;
  }

  .gaming-machines-grid {
    grid-template-columns: 1fr;
  }

  .gaming-machines-card {
    min-height: 0;
  }

  .gaming-machines-note {
    padding: 27px 23px;
  }
}


@media (max-width: 575.98px) {

  .gaming-machines-heading h2 {
    font-size: 1.72rem;
  }

  .gaming-machines-intro {
    font-size: 0.96rem;
  }

  .gaming-machines-summary {
    padding: 25px 20px;
  }

  .gaming-machines-etg-head {
    grid-template-columns: 1fr;
  }

  .gaming-machines-note {
    display: block;
  }

  .gaming-machines-note-icon {
    margin-bottom: 17px;
  }
}

/* =========================================================
  TABLE LIMITS & GAME AVAILABILITY
========================================================= */

.table-limits-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(circle at 90% 12%, rgba(0, 47, 176, 0.10), transparent 27%),
    radial-gradient(circle at 8% 88%, rgba(255, 193, 7, 0.045), transparent 24%),
    #050b18;
}


/* =========================================================
  HEADING
========================================================= */

.table-limits-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.table-limits-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.23);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.81rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.table-limits-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  line-height: 1.14;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.table-limits-intro {
  max-width: 790px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.65) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}

.table-limits-eyebrow {
  display: block;

  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}


/* =========================================================
  SUMMARY
========================================================= */

.table-limits-summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 260px;
  gap: 36px;
  align-items: center;

  margin-bottom: 34px;
  padding: 38px;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 27px;

  background:
    radial-gradient(circle at 100% 0%, rgba(0, 47, 176, 0.10), transparent 40%),
    rgba(255, 255, 255, 0.02);
}

.table-limits-summary-main h3 {
  margin: 0 0 16px;

  color: #ffffff;

  font-size: 1.8rem;
  line-height: 1.3;
  font-weight: 600;
}

.table-limits-summary-main p {
  margin: 0 0 14px;

  color: rgba(255, 255, 255, 0.57) !important;

  font-size: 0.9rem;
  line-height: 1.73;
}

.table-limits-summary-main p:last-child {
  margin-bottom: 0;
}

.table-limits-summary-value {
  padding: 25px 24px;

  text-align: center;

  border: 1px solid rgba(255, 193, 7, 0.16);
  border-radius: 21px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.05),
      rgba(255, 255, 255, 0.016)
    );
}

.table-limits-summary-value > span {
  display: block;

  margin-bottom: 12px;

  color: rgba(255, 255, 255, 0.43);

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.table-limits-main-number {
  margin-bottom: 7px;

  color: #ffc107;

  font-size: 4rem;
  line-height: 0.95;
  font-weight: 700;
  letter-spacing: -2.5px;
}

.table-limits-summary-value p {
  margin: 0;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.8rem;
}


/* =========================================================
  LIMIT CARDS
========================================================= */

.table-limits-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;

  margin-bottom: 44px;
}

.table-limit-card {
  position: relative;

  min-height: 320px;
  padding: 27px 23px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 21px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );

  transition:
    transform 0.28s ease,
    border-color 0.28s ease,
    background 0.28s ease;
}

.table-limit-card:hover {
  transform: translateY(-5px);

  border-color: rgba(255, 193, 7, 0.22);

  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.04),
      rgba(255, 255, 255, 0.015)
    );
}

.table-limit-card-featured {
  border-color: rgba(255, 193, 7, 0.16);

  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.065), transparent 44%),
    rgba(255, 255, 255, 0.018);
}

.table-limit-card-number {
  position: absolute;
  top: 22px;
  right: 23px;

  color: rgba(255, 255, 255, 0.13);

  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.09em;
}

.table-limit-card-icon {
  width: 50px;
  height: 50px;

  margin-bottom: 20px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 193, 7, 0.17);
  border-radius: 14px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.table-limit-card-icon i {
  font-size: 1.05rem;
}

.table-limit-card-label {
  display: block;

  margin-bottom: 7px;

  color: rgba(255, 255, 255, 0.42);

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.table-limit-card-value {
  margin-bottom: 11px;

  color: #ffc107;

  font-size: 2.7rem;
  line-height: 1;
  font-weight: 700;
  letter-spacing: -1.5px;
}

.table-limit-card h3 {
  margin: 0 0 10px;

  color: #ffffff;

  font-size: 1.08rem;
  line-height: 1.35;
  font-weight: 600;
}

.table-limit-card p {
  margin: 0;

  color: rgba(255, 255, 255, 0.5) !important;

  font-size: 0.78rem;
  line-height: 1.61;
}


/* =========================================================
  AVAILABILITY
========================================================= */

.table-limits-availability {
  margin-bottom: 34px;
  padding: 34px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.018);
}

.table-limits-availability-heading {
  max-width: 770px;
  margin-bottom: 27px;
}

.table-limits-availability-heading h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.75rem;
  line-height: 1.3;
  font-weight: 600;
}

.table-limits-availability-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.88rem;
  line-height: 1.68;
}

.table-limits-availability-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 11px;
}

.table-limits-availability-item {
  padding: 19px 17px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;

  background: rgba(255, 255, 255, 0.022);
}

.table-limits-availability-index {
  display: block;

  margin-bottom: 10px;

  color: #ffc107;

  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.table-limits-availability-item h4 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 0.92rem;
  font-weight: 600;
}

.table-limits-availability-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.75rem;
  line-height: 1.57;
}


/* =========================================================
  PRACTICAL GUIDE
========================================================= */

.table-limits-guide {
  margin-bottom: 32px;
  padding: 34px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 25px;

  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.05), transparent 38%),
    rgba(255, 255, 255, 0.018);
}

.table-limits-guide-head {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 18px;
  align-items: center;

  margin-bottom: 24px;
}

.table-limits-guide-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 16px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.table-limits-guide-head h3 {
  margin: 0;

  color: #ffffff;

  font-size: 1.45rem;
  line-height: 1.3;
  font-weight: 600;
}

.table-limits-guide-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 11px;
}

.table-limits-guide-item {
  padding: 17px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 15px;

  background: rgba(255, 255, 255, 0.02);
}

.table-limits-guide-item span {
  display: block;

  margin-bottom: 6px;

  color: #ffffff;

  font-size: 0.84rem;
  font-weight: 600;
}

.table-limits-guide-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.75rem;
  line-height: 1.58;
}


/* =========================================================
  NOTE
========================================================= */

.table-limits-note {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 21px;

  padding: 30px 32px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 22px;

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.014)
    );
}

.table-limits-note-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.table-limits-note-content > span {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.table-limits-note-content h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.2rem;
  line-height: 1.3;
  font-weight: 600;
}

.table-limits-note-content p {
  max-width: 980px;
  margin: 0;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.84rem;
  line-height: 1.68;
}


/* =========================================================
  RESPONSIVE
========================================================= */

@media (max-width: 1199.98px) {

  .table-limits-heading h2 {
    font-size: 2.6rem;
  }

  .table-limits-grid,
  .table-limits-availability-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


@media (max-width: 991.98px) {

  .table-limits-heading h2 {
    font-size: 2.35rem;
  }

  .table-limits-summary {
    grid-template-columns: 1fr;
  }

  .table-limits-summary-value {
    max-width: 320px;
  }
}


@media (max-width: 767.98px) {

  .table-limits-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .table-limits-heading {
    margin-bottom: 38px;
  }

  .table-limits-heading h2 {
    font-size: 2rem;
  }

  .table-limits-summary,
  .table-limits-availability,
  .table-limits-guide {
    padding: 28px 23px;
  }

  .table-limits-guide-grid {
    grid-template-columns: 1fr;
  }

  .table-limits-note {
    padding: 27px 23px;
  }
}


@media (max-width: 575.98px) {

  .table-limits-heading h2 {
    font-size: 1.72rem;
  }

  .table-limits-intro {
    font-size: 0.96rem;
  }

  .table-limits-grid,
  .table-limits-availability-grid {
    grid-template-columns: 1fr;
  }

  .table-limit-card {
    min-height: 0;
  }

  .table-limits-guide-head {
    grid-template-columns: 1fr;
  }

  .table-limits-note {
    display: block;
  }

  .table-limits-note-icon {
    margin-bottom: 17px;
  }
}

/* =========================================================
  POKER ROOM
========================================================= */

.poker-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(circle at 10% 12%, rgba(0, 47, 176, 0.10), transparent 28%),
    radial-gradient(circle at 90% 88%, rgba(255, 193, 7, 0.045), transparent 24%),
    #030816;
}


/* =========================================================
  HEADING
========================================================= */

.poker-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.poker-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.23);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.81rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.poker-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  line-height: 1.14;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.poker-intro {
  max-width: 800px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.65) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}

.poker-eyebrow {
  display: block;

  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}


/* =========================================================
  MAIN FEATURE
========================================================= */

.poker-feature {
  margin-bottom: 34px;
  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 30px;

  background: rgba(255, 255, 255, 0.025);

  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.24);
}

.poker-image-wrap {
  position: relative;
  height: 100%;
  min-height: 550px;
  overflow: hidden;
}

.poker-image {
  display: block;

  width: 100%;
  height: 100%;
  min-height: 550px;

  object-fit: cover;
}

.poker-image-wrap::after {
  content: "";

  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      90deg,
      transparent 58%,
      rgba(3, 8, 22, 0.40) 100%
    );

  pointer-events: none;
}

.poker-image-badge {
  position: absolute;
  left: 28px;
  bottom: 28px;
  z-index: 2;

  padding: 17px 20px;

  display: flex;
  flex-direction: column;

  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 17px;

  background: rgba(3, 8, 22, 0.84);

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.poker-image-label {
  margin-bottom: 5px;

  color: rgba(255, 255, 255, 0.55);

  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.poker-image-value {
  color: #ffc107;

  font-size: 1.4rem;
  font-weight: 600;
}

.poker-feature-content {
  height: 100%;

  padding: 50px 48px;

  display: flex;
  flex-direction: column;
  justify-content: center;
}

.poker-feature-content h3 {
  margin: 0 0 21px;

  color: #ffffff;

  font-size: 2rem;
  line-height: 1.28;
  font-weight: 600;
}

.poker-feature-content p {
  margin: 0 0 16px;

  color: rgba(255, 255, 255, 0.61) !important;

  font-size: 0.91rem;
  line-height: 1.77;
}

.poker-feature-content p:last-child {
  margin-bottom: 0;
}


/* =========================================================
  HOURS
========================================================= */

.poker-hours {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 32px;
  align-items: center;

  margin-bottom: 42px;
  padding: 34px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.018);
}

.poker-hours-heading h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.65rem;
  font-weight: 600;
}

.poker-hours-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.53) !important;

  font-size: 0.87rem;
  line-height: 1.68;
}

.poker-hours-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 11px;
}

.poker-hours-card {
  padding: 20px 18px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 17px;

  background: rgba(255, 255, 255, 0.022);
}

.poker-hours-card-featured {
  border-color: rgba(255, 193, 7, 0.15);

  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.015)
    );
}

.poker-hours-icon {
  width: 44px;
  height: 44px;

  margin-bottom: 14px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 12px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.poker-hours-card > span {
  display: block;

  margin-bottom: 5px;

  color: rgba(255, 255, 255, 0.42);

  font-size: 0.67rem;
  font-weight: 700;
  text-transform: uppercase;
}

.poker-hours-card h4 {
  margin: 0 0 6px;

  color: #ffffff;

  font-size: 1.15rem;
  font-weight: 600;
}

.poker-hours-card p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.75rem;
  line-height: 1.55;
}


/* =========================================================
  CASH GAMES
========================================================= */

.poker-games {
  margin-bottom: 42px;
}

.poker-games-heading,
.poker-tournaments-heading,
.poker-events-heading,
.poker-jackpots-heading {
  max-width: 780px;
  margin-bottom: 27px;
}

.poker-games-heading h3,
.poker-tournaments-heading h3,
.poker-events-heading h3,
.poker-jackpots-heading h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.8rem;
  font-weight: 600;
}

.poker-games-heading p,
.poker-tournaments-heading p,
.poker-events-heading p,
.poker-jackpots-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.89rem;
  line-height: 1.69;
}

.poker-games-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.poker-game-card {
  position: relative;

  min-height: 300px;
  padding: 27px 24px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 21px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );
}

.poker-game-card-featured {
  border-color: rgba(255, 193, 7, 0.15);

  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.06), transparent 45%),
    rgba(255, 255, 255, 0.018);
}

.poker-card-number {
  position: absolute;
  top: 22px;
  right: 23px;

  color: rgba(255, 255, 255, 0.13);

  font-size: 0.7rem;
  font-weight: 700;
}

.poker-game-icon {
  width: 51px;
  height: 51px;

  margin-bottom: 20px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 14px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.poker-card-label {
  display: block;

  margin-bottom: 6px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.poker-game-card h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.2rem;
  font-weight: 600;
}

.poker-game-card p {
  margin: 0;

  color: rgba(255, 255, 255, 0.52) !important;

  font-size: 0.81rem;
  line-height: 1.63;
}

.poker-game-values {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;

  margin-bottom: 17px;
}

.poker-game-values span {
  padding: 6px 10px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.05);

  color: #ffc107;

  font-size: 0.72rem;
  font-weight: 600;
}


/* =========================================================
  TOURNAMENTS
========================================================= */

.poker-tournaments {
  margin-bottom: 42px;
}

.poker-tournament-list {
  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 24px;

  background: rgba(255, 255, 255, 0.017);
}

.poker-tournament-row {
  display: grid;
  grid-template-columns: 70px 1fr 150px;
  gap: 20px;
  align-items: center;

  padding: 24px 26px;

  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.poker-tournament-row:last-child {
  border-bottom: 0;
}

.poker-tournament-row-featured {
  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.035),
      transparent
    );
}

.poker-tournament-day {
  color: #ffc107;

  font-size: 0.73rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.poker-tournament-main > span,
.poker-tournament-meta > span {
  display: block;

  margin-bottom: 5px;

  color: rgba(255, 255, 255, 0.37);

  font-size: 0.63rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.poker-tournament-main h3 {
  margin: 0 0 6px;

  color: #ffffff;

  font-size: 1.14rem;
  font-weight: 600;
}

.poker-tournament-main p {
  margin: 0;

  color: rgba(255, 255, 255, 0.5) !important;

  font-size: 0.78rem;
  line-height: 1.55;
}

.poker-tournament-meta {
  padding-left: 18px;

  border-left: 1px solid rgba(255, 255, 255, 0.07);
}

.poker-tournament-meta p {
  margin: 0;

  color: #ffc107 !important;

  font-size: 0.82rem;
  font-weight: 600;
}


/* =========================================================
  EVENTS
========================================================= */

.poker-events {
  margin-bottom: 42px;
}

.poker-events-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 13px;
}

.poker-event-card {
  padding: 23px 21px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 19px;

  background: rgba(255, 255, 255, 0.02);
}

.poker-event-status {
  display: inline-flex;

  margin-bottom: 13px;
  padding: 6px 10px;

  border-radius: 999px;

  background: rgba(255, 193, 7, 0.06);

  color: #ffc107;

  font-size: 0.66rem;
  font-weight: 700;
}

.poker-event-card h4 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1rem;
  font-weight: 600;
}

.poker-event-card p {
  margin: 0;

  color: rgba(255, 255, 255, 0.48) !important;

  font-size: 0.76rem;
  line-height: 1.58;
}


/* =========================================================
  WAITLIST
========================================================= */

.poker-waitlist {
  display: grid;
  grid-template-columns: 1fr 0.8fr;
  gap: 30px;

  margin-bottom: 32px;
  padding: 34px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 25px;

  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.05), transparent 38%),
    rgba(255, 255, 255, 0.018);
}

.poker-waitlist-content h3 {
  margin: 0 0 13px;

  color: #ffffff;

  font-size: 1.5rem;
  font-weight: 600;
}

.poker-waitlist-content p {
  margin: 0 0 13px;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.85rem;
  line-height: 1.68;
}

.poker-waitlist-content p:last-child {
  margin-bottom: 0;
}

.poker-waitlist-options {
  display: grid;
  gap: 10px;
}

.poker-waitlist-option {
  padding: 17px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 15px;

  background: rgba(255, 255, 255, 0.02);
}

.poker-waitlist-option > span {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.62rem;
  font-weight: 700;
  text-transform: uppercase;
}

.poker-waitlist-option h4 {
  margin: 0 0 6px;

  color: #ffffff;

  font-size: 0.94rem;
  font-weight: 600;
}

.poker-waitlist-option p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.74rem;
  line-height: 1.55;
}


/* =========================================================
  REGISTRATION
========================================================= */

.poker-registration {
  margin-bottom: 32px;
  padding: 34px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.018);
}

.poker-registration-head {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 18px;
  align-items: center;

  margin-bottom: 24px;
}

.poker-registration-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 16px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.poker-registration-head h3 {
  margin: 0;

  color: #ffffff;

  font-size: 1.42rem;
  font-weight: 600;
}

.poker-registration-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 11px;
}

.poker-registration-item {
  padding: 17px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 15px;

  background: rgba(255, 255, 255, 0.02);
}

.poker-registration-item span {
  display: block;

  margin-bottom: 6px;

  color: #ffffff;

  font-size: 0.82rem;
  font-weight: 600;
}

.poker-registration-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.73rem;
  line-height: 1.55;
}


/* =========================================================
  JACKPOTS
========================================================= */

.poker-jackpots {
  margin-bottom: 32px;
}

.poker-jackpots-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 13px;
}

.poker-jackpot-card {
  padding: 22px 20px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 18px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );
}

.poker-jackpot-card > span {
  display: block;

  margin-bottom: 7px;

  color: #ffc107;

  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.poker-jackpot-card h4 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 1rem;
  font-weight: 600;
}

.poker-jackpot-card p {
  margin: 0;

  color: rgba(255, 255, 255, 0.48) !important;

  font-size: 0.76rem;
}


/* =========================================================
  NOTE
========================================================= */

.poker-note {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 21px;

  padding: 29px 31px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 22px;

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.014)
    );
}

.poker-note-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.poker-note > div:last-child > span {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.poker-note h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.18rem;
  font-weight: 600;
}

.poker-note p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.83rem;
  line-height: 1.67;
}


/* =========================================================
  RESPONSIVE
========================================================= */

@media (max-width: 1199.98px) {

  .poker-heading h2 {
    font-size: 2.6rem;
  }

  .poker-registration-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}


@media (max-width: 991.98px) {

  .poker-heading h2 {
    font-size: 2.35rem;
  }

  .poker-image-wrap,
  .poker-image {
    min-height: 430px;
  }

  .poker-feature-content {
    padding: 40px 32px;
  }

  .poker-hours,
  .poker-waitlist {
    grid-template-columns: 1fr;
  }

  .poker-games-grid,
  .poker-events-grid {
    grid-template-columns: 1fr;
  }
}


@media (max-width: 767.98px) {

  .poker-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .poker-heading {
    margin-bottom: 38px;
  }

  .poker-heading h2 {
    font-size: 2rem;
  }

  .poker-feature {
    border-radius: 22px;
  }

  .poker-image-wrap,
  .poker-image {
    min-height: 350px;
  }

  .poker-feature-content {
    padding: 34px 24px;
  }

  .poker-hours,
  .poker-waitlist,
  .poker-registration {
    padding: 28px 23px;
  }

  .poker-tournament-row {
    grid-template-columns: 60px 1fr;
  }

  .poker-tournament-meta {
    grid-column: 2;

    padding-left: 0;

    border-left: 0;
  }

  .poker-jackpots-grid {
    grid-template-columns: 1fr;
  }
}


@media (max-width: 575.98px) {

  .poker-heading h2 {
    font-size: 1.72rem;
  }

  .poker-intro {
    font-size: 0.96rem;
  }

  .poker-image-wrap,
  .poker-image {
    min-height: 290px;
  }

  .poker-image-badge {
    left: 18px;
    bottom: 18px;
  }

  .poker-hours-grid,
  .poker-registration-grid {
    grid-template-columns: 1fr;
  }

  .poker-tournament-row {
    display: block;
  }

  .poker-tournament-day {
    display: block;
    margin-bottom: 12px;
  }

  .poker-tournament-meta {
    margin-top: 14px;
    padding-top: 13px;

    border-top: 1px solid rgba(255, 255, 255, 0.06);
  }

  .poker-registration-head,
  .poker-note {
    display: block;
  }

  .poker-registration-icon,
  .poker-note-icon {
    margin-bottom: 17px;
  }
}
.craps-section {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 88% 10%, rgba(0, 47, 176, 0.10), transparent 27%),
    radial-gradient(circle at 8% 88%, rgba(255, 193, 7, 0.045), transparent 24%),
    #030816;
}

.craps-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.craps-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  padding: 9px 17px;
  border: 1px solid rgba(255, 193, 7, 0.23);
  border-radius: 999px;
  background: rgba(255, 193, 7, 0.065);
  color: #ffc107;
  font-size: 0.81rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.craps-heading h2 {
  margin: 0 0 20px;
  color: #ffffff;
  font-size: 3rem;
  line-height: 1.14;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.craps-intro {
  max-width: 790px;
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.65) !important;
  font-size: 1.04rem;
  line-height: 1.8;
}

.craps-eyebrow {
  display: block;
  margin-bottom: 8px;
  color: #ffc107;
  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}


/* MAIN */

.craps-main {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 36px;
  align-items: center;
  margin-bottom: 34px;
  padding: 38px;
  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 27px;
  background:
    radial-gradient(circle at 100% 0%, rgba(0, 47, 176, 0.10), transparent 40%),
    rgba(255, 255, 255, 0.02);
}

.craps-main-content h3 {
  margin: 0 0 16px;
  color: #ffffff;
  font-size: 1.8rem;
  line-height: 1.3;
  font-weight: 600;
}

.craps-main-content p {
  margin: 0 0 14px;
  color: rgba(255, 255, 255, 0.57) !important;
  font-size: 0.9rem;
  line-height: 1.73;
}

.craps-main-content p:last-child {
  margin-bottom: 0;
}

.craps-main-stat {
  padding: 27px 24px;
  text-align: center;
  border: 1px solid rgba(255, 193, 7, 0.16);
  border-radius: 22px;
  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.05),
      rgba(255, 255, 255, 0.016)
    );
}

.craps-main-stat > span {
  display: block;
  margin-bottom: 13px;
  color: rgba(255, 255, 255, 0.42);
  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.craps-main-time {
  color: #ffc107;
  font-size: 2.15rem;
  line-height: 1.1;
  font-weight: 700;
  letter-spacing: -1px;
}

.craps-main-time small {
  display: block;
  margin: 6px 0;
  color: rgba(255, 255, 255, 0.38);
  font-size: 0.72rem;
  font-weight: 600;
  text-transform: uppercase;
}

.craps-main-stat p {
  margin: 12px 0 0;
  color: rgba(255, 255, 255, 0.48) !important;
  font-size: 0.76rem;
}


/* FACTS */

.craps-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 42px;
}

.craps-fact-card {
  position: relative;
  min-height: 270px;
  padding: 27px 24px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 21px;
  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );
}

.craps-fact-card-featured {
  border-color: rgba(255, 193, 7, 0.15);
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.06), transparent 45%),
    rgba(255, 255, 255, 0.018);
}

.craps-fact-number {
  position: absolute;
  top: 22px;
  right: 23px;
  color: rgba(255, 255, 255, 0.13);
  font-size: 0.7rem;
  font-weight: 700;
}

.craps-fact-icon {
  width: 51px;
  height: 51px;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: rgba(255, 193, 7, 0.065);
  color: #ffc107;
}

.craps-fact-label {
  display: block;
  margin-bottom: 6px;
  color: #ffc107;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.craps-fact-card h3 {
  margin: 0 0 10px;
  color: #ffffff;
  font-size: 1.17rem;
  font-weight: 600;
}

.craps-fact-card p {
  margin: 0;
  color: rgba(255, 255, 255, 0.51) !important;
  font-size: 0.8rem;
  line-height: 1.63;
}


/* SCHEDULE */

.craps-schedule {
  margin-bottom: 32px;
  padding: 34px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;
  background: rgba(255, 255, 255, 0.018);
}

.craps-schedule-heading {
  max-width: 760px;
  margin-bottom: 27px;
}

.craps-schedule-heading h3 {
  margin: 0 0 11px;
  color: #ffffff;
  font-size: 1.7rem;
  font-weight: 600;
}

.craps-schedule-heading p {
  margin: 0;
  color: rgba(255, 255, 255, 0.54) !important;
  font-size: 0.87rem;
  line-height: 1.68;
}

.craps-schedule-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 11px;
}

.craps-schedule-item {
  padding: 18px;
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.02);
}

.craps-schedule-item-featured {
  border-color: rgba(255, 193, 7, 0.16);
  background: rgba(255, 193, 7, 0.035);
}

.craps-schedule-item span {
  display: block;
  margin-bottom: 7px;
  color: rgba(255, 255, 255, 0.39);
  font-size: 0.65rem;
  font-weight: 700;
  text-transform: uppercase;
}

.craps-schedule-item h4 {
  margin: 0 0 5px;
  color: #ffffff;
  font-size: 0.95rem;
  font-weight: 600;
}

.craps-schedule-item p {
  margin: 0;
  color: #ffc107 !important;
  font-size: 0.82rem;
  font-weight: 600;
}


/* GUIDE */

.craps-guide,
.craps-note {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 21px;
  padding: 29px 31px;
  border-radius: 22px;
}

.craps-guide {
  margin-bottom: 17px;
  border: 1px solid rgba(255, 255, 255, 0.07);
  background:
    radial-gradient(circle at 100% 0%, rgba(0, 47, 176, 0.08), transparent 38%),
    rgba(255, 255, 255, 0.018);
}

.craps-note {
  border: 1px solid rgba(255, 193, 7, 0.14);
  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.014)
    );
}

.craps-guide-icon,
.craps-note-icon {
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 15px;
  background: rgba(255, 193, 7, 0.065);
  color: #ffc107;
}

.craps-guide h3,
.craps-note h3 {
  margin: 0 0 8px;
  color: #ffffff;
  font-size: 1.18rem;
  font-weight: 600;
}

.craps-guide p,
.craps-note p {
  margin: 0;
  color: rgba(255, 255, 255, 0.54) !important;
  font-size: 0.83rem;
  line-height: 1.67;
}

.craps-note > div:last-child > span {
  display: block;
  margin-bottom: 5px;
  color: #ffc107;
  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}


/* RESPONSIVE */

@media (max-width: 991.98px) {

  .craps-heading h2 {
    font-size: 2.35rem;
  }

  .craps-main {
    grid-template-columns: 1fr;
  }

  .craps-main-stat {
    max-width: 320px;
  }
}

@media (max-width: 767.98px) {

  .craps-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .craps-heading h2 {
    font-size: 2rem;
  }

  .craps-facts,
  .craps-schedule-grid {
    grid-template-columns: 1fr;
  }

  .craps-main,
  .craps-schedule {
    padding: 28px 23px;
  }
}

@media (max-width: 575.98px) {

  .craps-heading h2 {
    font-size: 1.72rem;
  }

  .craps-intro {
    font-size: 0.96rem;
  }

  .craps-guide,
  .craps-note {
    display: block;
  }

  .craps-guide-icon,
  .craps-note-icon {
    margin-bottom: 17px;
  }
}

/* =========================================================
  SPORTS BETTING
========================================================= */

.sports-betting-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(circle at 10% 12%, rgba(0, 47, 176, 0.10), transparent 28%),
    radial-gradient(circle at 90% 88%, rgba(255, 193, 7, 0.045), transparent 24%),
    #050b18;
}


/* =========================================================
  HEADING
========================================================= */

.sports-betting-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.sports-betting-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.23);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.81rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.sports-betting-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  line-height: 1.14;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.sports-betting-intro {
  max-width: 790px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.65) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}

.sports-betting-eyebrow {
  display: block;

  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}


/* =========================================================
  FEATURE + IMAGE
========================================================= */

.sports-betting-feature {
  margin-bottom: 34px;
  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 30px;

  background: rgba(255, 255, 255, 0.025);

  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.24);
}

.sports-betting-image-wrap {
  position: relative;

  height: 100%;
  min-height: 520px;

  overflow: hidden;
}

.sports-betting-image {
  display: block;

  width: 100%;
  height: 100%;
  min-height: 520px;

  object-fit: cover;
}

.sports-betting-image-wrap::after {
  content: "";

  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      90deg,
      transparent 58%,
      rgba(5, 11, 24, 0.40) 100%
    );

  pointer-events: none;
}

.sports-betting-image-badge {
  position: absolute;
  left: 28px;
  bottom: 28px;
  z-index: 2;

  padding: 17px 20px;

  display: flex;
  flex-direction: column;

  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 17px;

  background: rgba(5, 11, 24, 0.84);

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.sports-betting-image-label {
  margin-bottom: 5px;

  color: rgba(255, 255, 255, 0.5);

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.sports-betting-image-value {
  color: #ffc107;

  font-size: 1.25rem;
  font-weight: 600;
}

.sports-betting-feature-content {
  height: 100%;

  padding: 50px 48px;

  display: flex;
  flex-direction: column;
  justify-content: center;
}

.sports-betting-feature-content h3 {
  margin: 0 0 21px;

  color: #ffffff;

  font-size: 2rem;
  line-height: 1.28;
  font-weight: 600;
}

.sports-betting-feature-content p {
  margin: 0 0 16px;

  color: rgba(255, 255, 255, 0.61) !important;

  font-size: 0.91rem;
  line-height: 1.77;
}

.sports-betting-feature-content p:last-child {
  margin-bottom: 0;
}


/* =========================================================
  FACT CARDS
========================================================= */

.sports-betting-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;

  margin-bottom: 42px;
}

.sports-betting-fact-card {
  position: relative;

  min-height: 265px;
  padding: 27px 24px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 21px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );
}

.sports-betting-fact-card-featured {
  border-color: rgba(255, 193, 7, 0.15);

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(255, 193, 7, 0.06),
      transparent 45%
    ),
    rgba(255, 255, 255, 0.018);
}

.sports-betting-fact-number {
  position: absolute;
  top: 22px;
  right: 23px;

  color: rgba(255, 255, 255, 0.13);

  font-size: 0.7rem;
  font-weight: 700;
}

.sports-betting-fact-icon {
  width: 51px;
  height: 51px;

  margin-bottom: 20px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 14px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.sports-betting-fact-label {
  display: block;

  margin-bottom: 6px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.sports-betting-fact-card h3 {
  margin: 0 0 10px;

  color: #ffffff;

  font-size: 1.2rem;
  font-weight: 600;
}

.sports-betting-fact-card p {
  margin: 0;

  color: rgba(255, 255, 255, 0.51) !important;

  font-size: 0.8rem;
  line-height: 1.63;
}


/* =========================================================
  PROCESS
========================================================= */

.sports-betting-process,
.sports-betting-limits {
  margin-bottom: 34px;
  padding: 34px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.018);
}

.sports-betting-process-heading,
.sports-betting-limits-heading {
  max-width: 770px;
  margin-bottom: 27px;
}

.sports-betting-process-heading h3,
.sports-betting-limits-heading h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.75rem;
  line-height: 1.3;
  font-weight: 600;
}

.sports-betting-process-heading p,
.sports-betting-limits-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.88rem;
  line-height: 1.68;
}

.sports-betting-process-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 11px;
}

.sports-betting-process-item {
  padding: 19px 17px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;

  background: rgba(255, 255, 255, 0.022);
}

.sports-betting-process-step {
  display: block;

  margin-bottom: 10px;

  color: #ffc107;

  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.sports-betting-process-item h4 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 0.92rem;
  font-weight: 600;
}

.sports-betting-process-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.75rem;
  line-height: 1.57;
}


/* =========================================================
  LIMITS
========================================================= */

.sports-betting-limits-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 13px;
}

.sports-betting-limit-card {
  padding: 25px 22px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 20px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );
}

.sports-betting-limit-card-featured {
  border-color: rgba(255, 193, 7, 0.15);

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(255, 193, 7, 0.06),
      transparent 45%
    ),
    rgba(255, 255, 255, 0.018);
}

.sports-betting-limit-label {
  display: block;

  margin-bottom: 14px;

  color: rgba(255, 255, 255, 0.4);

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.sports-betting-limit-value {
  margin-bottom: 8px;

  color: #ffc107;

  font-size: 2.55rem;
  line-height: 1;
  font-weight: 700;
  letter-spacing: -1.4px;
}

.sports-betting-limit-card h4 {
  margin: 0 0 9px;

  color: #ffffff;

  font-size: 0.96rem;
  font-weight: 600;
}

.sports-betting-limit-card p {
  margin: 0;

  color: rgba(255, 255, 255, 0.49) !important;

  font-size: 0.75rem;
  line-height: 1.58;
}


/* =========================================================
  CURRENT FORMAT
========================================================= */

.sports-betting-format {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 32px;
  align-items: center;

  margin-bottom: 32px;
  padding: 34px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 25px;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(255, 193, 7, 0.05),
      transparent 38%
    ),
    rgba(255, 255, 255, 0.018);
}

.sports-betting-format-content h3 {
  margin: 0 0 13px;

  color: #ffffff;

  font-size: 1.5rem;
  font-weight: 600;
}

.sports-betting-format-content p {
  margin: 0 0 13px;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.85rem;
  line-height: 1.68;
}

.sports-betting-format-content p:last-child {
  margin-bottom: 0;
}

.sports-betting-format-status {
  padding: 22px 20px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 18px;

  background: rgba(255, 193, 7, 0.035);
}

.sports-betting-format-status > span {
  display: block;

  margin-bottom: 7px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.sports-betting-format-status h4 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 1.05rem;
  font-weight: 600;
}

.sports-betting-format-status p {
  margin: 0;

  color: rgba(255, 255, 255, 0.48) !important;

  font-size: 0.75rem;
  line-height: 1.58;
}


/* =========================================================
  ELIGIBILITY + NOTE
========================================================= */

.sports-betting-eligibility,
.sports-betting-note {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 21px;

  padding: 29px 31px;

  border-radius: 22px;
}

.sports-betting-eligibility {
  margin-bottom: 17px;

  border: 1px solid rgba(255, 255, 255, 0.07);

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(0, 47, 176, 0.08),
      transparent 38%
    ),
    rgba(255, 255, 255, 0.018);
}

.sports-betting-note {
  border: 1px solid rgba(255, 193, 7, 0.14);

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.014)
    );
}

.sports-betting-eligibility-icon,
.sports-betting-note-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.sports-betting-eligibility h3,
.sports-betting-note h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.18rem;
  font-weight: 600;
}

.sports-betting-eligibility p,
.sports-betting-note p {
  max-width: 980px;
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.83rem;
  line-height: 1.67;
}

.sports-betting-note > div:last-child > span {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}


/* =========================================================
  RESPONSIVE
========================================================= */

@media (max-width: 1199.98px) {

  .sports-betting-heading h2 {
    font-size: 2.6rem;
  }

  .sports-betting-limits-grid,
  .sports-betting-process-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


@media (max-width: 991.98px) {

  .sports-betting-heading h2 {
    font-size: 2.35rem;
  }

  .sports-betting-image-wrap,
  .sports-betting-image {
    min-height: 420px;
  }

  .sports-betting-feature-content {
    padding: 40px 32px;
  }

  .sports-betting-format {
    grid-template-columns: 1fr;
  }

  .sports-betting-format-status {
    max-width: 360px;
  }
}


@media (max-width: 767.98px) {

  .sports-betting-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .sports-betting-heading {
    margin-bottom: 38px;
  }

  .sports-betting-heading h2 {
    font-size: 2rem;
  }

  .sports-betting-feature {
    border-radius: 22px;
  }

  .sports-betting-image-wrap,
  .sports-betting-image {
    min-height: 340px;
  }

  .sports-betting-feature-content {
    padding: 34px 24px;
  }

  .sports-betting-facts {
    grid-template-columns: 1fr;
  }

  .sports-betting-process,
  .sports-betting-limits,
  .sports-betting-format {
    padding: 28px 23px;
  }
}


@media (max-width: 575.98px) {

  .sports-betting-heading h2 {
    font-size: 1.72rem;
  }

  .sports-betting-intro {
    font-size: 0.96rem;
  }

  .sports-betting-image-wrap,
  .sports-betting-image {
    min-height: 290px;
  }

  .sports-betting-image-badge {
    left: 18px;
    bottom: 18px;
  }

  .sports-betting-process-grid,
  .sports-betting-limits-grid {
    grid-template-columns: 1fr;
  }

  .sports-betting-eligibility,
  .sports-betting-note {
    display: block;
  }

  .sports-betting-eligibility-icon,
  .sports-betting-note-icon {
    margin-bottom: 17px;
  }
}

/* =========================================================
  PROGRESSIVE JACKPOTS
========================================================= */

.jackpots-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(circle at 90% 10%, rgba(0, 47, 176, 0.10), transparent 27%),
    radial-gradient(circle at 8% 88%, rgba(255, 193, 7, 0.045), transparent 24%),
    #030816;
}


/* HEADING */

.jackpots-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.jackpots-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.23);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.81rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.jackpots-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  line-height: 1.14;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.jackpots-intro {
  max-width: 790px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.65) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}

.jackpots-eyebrow {
  display: block;

  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}


/* MAIN */

.jackpots-main {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 36px;
  align-items: center;

  margin-bottom: 34px;
  padding: 38px;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 27px;

  background:
    radial-gradient(circle at 100% 0%, rgba(0, 47, 176, 0.10), transparent 40%),
    rgba(255, 255, 255, 0.02);
}

.jackpots-main-content h3 {
  margin: 0 0 16px;

  color: #ffffff;

  font-size: 1.8rem;
  line-height: 1.3;
  font-weight: 600;
}

.jackpots-main-content p {
  margin: 0 0 14px;

  color: rgba(255, 255, 255, 0.57) !important;

  font-size: 0.9rem;
  line-height: 1.73;
}

.jackpots-main-content p:last-child {
  margin-bottom: 0;
}

.jackpots-main-status {
  padding: 25px 23px;

  border: 1px solid rgba(255, 193, 7, 0.16);
  border-radius: 21px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.05),
      rgba(255, 255, 255, 0.016)
    );
}

.jackpots-main-status > span {
  display: block;

  margin-bottom: 10px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.jackpots-main-status h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.25rem;
  font-weight: 600;
}

.jackpots-main-status p {
  margin: 0;

  color: rgba(255, 255, 255, 0.48) !important;

  font-size: 0.76rem;
  line-height: 1.58;
}


/* JACKPOT CARDS */

.jackpots-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;

  margin-bottom: 42px;
}

.jackpot-card {
  position: relative;

  min-height: 290px;
  padding: 29px 27px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 22px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );
}

.jackpot-card-featured {
  border-color: rgba(255, 193, 7, 0.15);

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(255, 193, 7, 0.06),
      transparent 45%
    ),
    rgba(255, 255, 255, 0.018);
}

.jackpot-card-number {
  position: absolute;
  top: 23px;
  right: 24px;

  color: rgba(255, 255, 255, 0.13);

  font-size: 0.7rem;
  font-weight: 700;
}

.jackpot-card-icon {
  width: 52px;
  height: 52px;

  margin-bottom: 20px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 14px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.jackpot-card-label {
  display: block;

  margin-bottom: 6px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.jackpot-card h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.3rem;
  font-weight: 600;
}

.jackpot-card > p {
  margin: 0 0 20px;

  color: rgba(255, 255, 255, 0.52) !important;

  font-size: 0.83rem;
  line-height: 1.65;
}

.jackpot-card-status {
  padding-top: 15px;

  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.jackpot-card-status span {
  display: block;

  margin-bottom: 4px;

  color: rgba(255, 255, 255, 0.36);

  font-size: 0.62rem;
  font-weight: 700;
  text-transform: uppercase;
}

.jackpot-card-status p {
  margin: 0;

  color: #ffc107 !important;

  font-size: 0.8rem;
  font-weight: 600;
}


/* TYPES */

.jackpots-types {
  margin-bottom: 34px;
  padding: 34px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.018);
}

.jackpots-types-heading {
  max-width: 760px;
  margin-bottom: 27px;
}

.jackpots-types-heading h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.72rem;
  font-weight: 600;
}

.jackpots-types-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.87rem;
  line-height: 1.68;
}

.jackpots-types-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 11px;
}

.jackpots-type-item {
  padding: 19px 17px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;

  background: rgba(255, 255, 255, 0.022);
}

.jackpots-type-index {
  display: block;

  margin-bottom: 10px;

  color: #ffc107;

  font-size: 0.67rem;
  font-weight: 700;
}

.jackpots-type-item h4 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 0.92rem;
  font-weight: 600;
}

.jackpots-type-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.75rem;
  line-height: 1.57;
}


/* CURRENT VALUE */

.jackpots-current {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 21px;

  margin-bottom: 32px;
  padding: 29px 31px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 22px;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(255, 193, 7, 0.05),
      transparent 38%
    ),
    rgba(255, 255, 255, 0.018);
}

.jackpots-current-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.jackpots-current-content h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.18rem;
  font-weight: 600;
}

.jackpots-current-content p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.83rem;
  line-height: 1.67;
}


/* GUIDE */

.jackpots-guide {
  margin-bottom: 32px;
  padding: 34px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.018);
}

.jackpots-guide-heading {
  max-width: 780px;
  margin-bottom: 26px;
}

.jackpots-guide-heading h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.55rem;
  font-weight: 600;
}

.jackpots-guide-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.53) !important;

  font-size: 0.86rem;
  line-height: 1.67;
}

.jackpots-guide-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 11px;
}

.jackpots-guide-item {
  padding: 17px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 15px;

  background: rgba(255, 255, 255, 0.02);
}

.jackpots-guide-item span {
  display: block;

  margin-bottom: 6px;

  color: #ffffff;

  font-size: 0.83rem;
  font-weight: 600;
}

.jackpots-guide-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.74rem;
  line-height: 1.56;
}


/* NOTE */

.jackpots-note {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 21px;

  padding: 29px 31px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 22px;

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.014)
    );
}

.jackpots-note-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.jackpots-note > div:last-child > span {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.jackpots-note h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.18rem;
  font-weight: 600;
}

.jackpots-note p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.83rem;
  line-height: 1.67;
}


/* RESPONSIVE */

@media (max-width: 991.98px) {

  .jackpots-heading h2 {
    font-size: 2.35rem;
  }

  .jackpots-main {
    grid-template-columns: 1fr;
  }

  .jackpots-main-status {
    max-width: 360px;
  }

  .jackpots-types-grid,
  .jackpots-guide-grid {
    grid-template-columns: 1fr;
  }
}


@media (max-width: 767.98px) {

  .jackpots-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .jackpots-heading h2 {
    font-size: 2rem;
  }

  .jackpots-main,
  .jackpots-types,
  .jackpots-guide {
    padding: 28px 23px;
  }

  .jackpots-grid {
    grid-template-columns: 1fr;
  }
}


@media (max-width: 575.98px) {

  .jackpots-heading h2 {
    font-size: 1.72rem;
  }

  .jackpots-intro {
    font-size: 0.96rem;
  }

  .jackpots-current,
  .jackpots-note {
    display: block;
  }

  .jackpots-current-icon,
  .jackpots-note-icon {
    margin-bottom: 17px;
  }
}

/* =========================================================
  REWARDS
========================================================= */

.rewards-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(circle at 10% 12%, rgba(0, 47, 176, 0.10), transparent 28%),
    radial-gradient(circle at 90% 88%, rgba(255, 193, 7, 0.045), transparent 24%),
    #050b18;
}


/* HEADING */

.rewards-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.rewards-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.23);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.81rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.rewards-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  line-height: 1.14;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.rewards-intro {
  max-width: 790px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.65) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}

.rewards-eyebrow {
  display: block;
  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}


/* SUMMARY */

.rewards-summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 285px;
  gap: 36px;
  align-items: center;

  margin-bottom: 34px;
  padding: 38px;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 27px;

  background:
    radial-gradient(circle at 100% 0%, rgba(0, 47, 176, 0.10), transparent 40%),
    rgba(255, 255, 255, 0.02);
}

.rewards-summary-main h3 {
  margin: 0 0 16px;

  color: #ffffff;

  font-size: 1.8rem;
  font-weight: 600;
}

.rewards-summary-main p {
  margin: 0 0 14px;

  color: rgba(255, 255, 255, 0.57) !important;

  font-size: 0.9rem;
  line-height: 1.73;
}

.rewards-summary-main p:last-child {
  margin-bottom: 0;
}

.rewards-summary-status {
  padding: 26px 24px;

  text-align: center;

  border: 1px solid rgba(255, 193, 7, 0.16);
  border-radius: 21px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.05),
      rgba(255, 255, 255, 0.016)
    );
}

.rewards-summary-status > span {
  display: block;

  margin-bottom: 13px;

  color: rgba(255, 255, 255, 0.42);

  font-size: 0.67rem;
  font-weight: 700;
  text-transform: uppercase;
}

.rewards-summary-value {
  margin-bottom: 8px;

  color: #ffc107;

  font-size: 2.8rem;
  line-height: 1;
  font-weight: 700;
}

.rewards-summary-status p {
  margin: 0;

  color: rgba(255, 255, 255, 0.49) !important;

  font-size: 0.76rem;
  line-height: 1.55;
}


/* REGISTRATION */

.rewards-registration,
.rewards-earning,
.rewards-brantford,
.rewards-types,
.rewards-balance {
  margin-bottom: 34px;
  padding: 34px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.018);
}

.rewards-registration-heading,
.rewards-earning-heading,
.rewards-brantford-heading,
.rewards-types-heading,
.rewards-balance-heading {
  max-width: 780px;
  margin-bottom: 27px;
}

.rewards-registration-heading h3,
.rewards-earning-heading h3,
.rewards-brantford-heading h3,
.rewards-types-heading h3,
.rewards-balance-heading h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.72rem;
  font-weight: 600;
}

.rewards-registration-heading p,
.rewards-earning-heading p,
.rewards-brantford-heading p,
.rewards-types-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.87rem;
  line-height: 1.68;
}

.rewards-registration-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.rewards-registration-card {
  position: relative;

  padding: 28px 25px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 21px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );
}

.rewards-registration-card-featured {
  border-color: rgba(255, 193, 7, 0.15);

  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.06), transparent 45%),
    rgba(255, 255, 255, 0.018);
}

.rewards-card-number {
  position: absolute;
  top: 22px;
  right: 23px;

  color: rgba(255, 255, 255, 0.13);

  font-size: 0.7rem;
  font-weight: 700;
}

.rewards-card-icon {
  width: 51px;
  height: 51px;

  margin-bottom: 20px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 14px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.rewards-card-label {
  display: block;

  margin-bottom: 6px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.rewards-registration-card h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.18rem;
  font-weight: 600;
}

.rewards-registration-card > p {
  margin: 0 0 19px;

  color: rgba(255, 255, 255, 0.51) !important;

  font-size: 0.8rem;
  line-height: 1.63;
}

.rewards-requirements {
  display: grid;
  gap: 9px;
}

.rewards-requirements > div {
  display: flex;
  align-items: flex-start;
  gap: 9px;

  color: rgba(255, 255, 255, 0.66);

  font-size: 0.78rem;
}

.rewards-requirements i {
  width: 19px;
  height: 19px;

  flex: 0 0 19px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background: rgba(255, 193, 7, 0.07);

  color: #ffc107;

  font-size: 0.5rem;
}


/* EARNING */

.rewards-earning-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 11px;
}

.rewards-earning-item,
.rewards-balance-item {
  padding: 18px 17px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;

  background: rgba(255, 255, 255, 0.022);
}

.rewards-earning-index {
  display: block;

  margin-bottom: 10px;

  color: #ffc107;

  font-size: 0.68rem;
  font-weight: 700;
}

.rewards-earning-item h4 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 0.92rem;
  font-weight: 600;
}

.rewards-earning-item p,
.rewards-balance-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.75rem;
  line-height: 1.57;
}


/* COMP DOLLARS */

.rewards-comp {
  display: grid;
  grid-template-columns: 1fr 290px;
  gap: 34px;
  align-items: center;

  margin-bottom: 34px;
  padding: 34px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 25px;

  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.05), transparent 38%),
    rgba(255, 255, 255, 0.018);
}

.rewards-comp-main h3 {
  margin: 0 0 14px;

  color: #ffffff;

  font-size: 1.55rem;
  font-weight: 600;
}

.rewards-comp-main p {
  margin: 0 0 13px;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.85rem;
  line-height: 1.68;
}

.rewards-comp-main p:last-child {
  margin-bottom: 0;
}

.rewards-comp-stat {
  padding: 24px 22px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 19px;

  background: rgba(255, 193, 7, 0.035);

  text-align: center;
}

.rewards-comp-stat > span {
  display: block;

  margin-bottom: 10px;

  color: rgba(255, 255, 255, 0.42);

  font-size: 0.65rem;
  font-weight: 700;
  text-transform: uppercase;
}

.rewards-comp-value {
  margin-bottom: 8px;

  color: #ffc107;

  font-size: 2.4rem;
  font-weight: 700;
}

.rewards-comp-stat p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.74rem;
}


/* BRANTFORD REDEMPTION */

.rewards-brantford-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

.rewards-brantford-card {
  padding: 22px 20px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 18px;

  background: rgba(255, 255, 255, 0.02);
}

.rewards-brantford-card-featured {
  border-color: rgba(255, 193, 7, 0.14);

  background: rgba(255, 193, 7, 0.025);
}

.rewards-brantford-icon {
  width: 46px;
  height: 46px;

  margin-bottom: 15px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 13px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.rewards-brantford-card > span {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.64rem;
  font-weight: 700;
  text-transform: uppercase;
}

.rewards-brantford-card h4 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 0.98rem;
  font-weight: 600;
}

.rewards-brantford-card p {
  margin: 0;

  color: rgba(255, 255, 255, 0.48) !important;

  font-size: 0.75rem;
  line-height: 1.58;
}


/* REWARD TYPES */

.rewards-types-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 13px;
}

.rewards-type-card {
  padding: 23px 21px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 19px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );
}

.rewards-type-card-featured {
  border-color: rgba(255, 193, 7, 0.14);
}

.rewards-type-label {
  display: block;

  margin-bottom: 7px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  text-transform: uppercase;
}

.rewards-type-card h4 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1rem;
  font-weight: 600;
}

.rewards-type-card p {
  margin: 0;

  color: rgba(255, 255, 255, 0.49) !important;

  font-size: 0.77rem;
  line-height: 1.59;
}


/* BALANCE */

.rewards-balance-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 11px;
}

.rewards-balance-item span {
  display: block;

  margin-bottom: 6px;

  color: #ffffff;

  font-size: 0.82rem;
  font-weight: 600;
}


/* NOTE */

.rewards-note {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 21px;

  padding: 29px 31px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 22px;

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.014)
    );
}

.rewards-note-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.rewards-note > div:last-child > span {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.rewards-note h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.18rem;
  font-weight: 600;
}

.rewards-note p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.83rem;
  line-height: 1.67;
}


/* RESPONSIVE */

@media (max-width: 1199.98px) {

  .rewards-heading h2 {
    font-size: 2.6rem;
  }

  .rewards-earning-grid,
  .rewards-balance-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}


@media (max-width: 991.98px) {

  .rewards-heading h2 {
    font-size: 2.35rem;
  }

  .rewards-summary,
  .rewards-comp {
    grid-template-columns: 1fr;
  }

  .rewards-summary-status,
  .rewards-comp-stat {
    max-width: 340px;
  }

  .rewards-brantford-grid {
    grid-template-columns: 1fr;
  }
}


@media (max-width: 767.98px) {

  .rewards-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .rewards-heading h2 {
    font-size: 2rem;
  }

  .rewards-summary,
  .rewards-registration,
  .rewards-earning,
  .rewards-comp,
  .rewards-brantford,
  .rewards-types,
  .rewards-balance {
    padding: 28px 23px;
  }

  .rewards-registration-grid,
  .rewards-types-grid {
    grid-template-columns: 1fr;
  }
}


@media (max-width: 575.98px) {

  .rewards-heading h2 {
    font-size: 1.72rem;
  }

  .rewards-intro {
    font-size: 0.96rem;
  }

  .rewards-earning-grid,
  .rewards-balance-grid {
    grid-template-columns: 1fr;
  }

  .rewards-note {
    display: block;
  }

  .rewards-note-icon {
    margin-bottom: 17px;
  }
}

/* =========================================================
  CASINO PROMOTIONS & TOURNAMENTS
========================================================= */

.promotions-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(circle at 90% 10%, rgba(0, 47, 176, 0.10), transparent 27%),
    radial-gradient(circle at 8% 88%, rgba(255, 193, 7, 0.045), transparent 24%),
    #030816;
}


/* HEADING */

.promotions-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.promotions-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.23);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.81rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.promotions-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  line-height: 1.14;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.promotions-intro {
  max-width: 800px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.65) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}

.promotions-eyebrow {
  display: block;

  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}


/* CURRENT STATUS */

.promotions-status {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 36px;
  align-items: center;

  margin-bottom: 42px;
  padding: 38px;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 27px;

  background:
    radial-gradient(circle at 100% 0%, rgba(0, 47, 176, 0.10), transparent 40%),
    rgba(255, 255, 255, 0.02);
}

.promotions-status-main h3 {
  margin: 0 0 16px;

  color: #ffffff;

  font-size: 1.8rem;
  line-height: 1.3;
  font-weight: 600;
}

.promotions-status-main p {
  margin: 0 0 14px;

  color: rgba(255, 255, 255, 0.57) !important;

  font-size: 0.9rem;
  line-height: 1.73;
}

.promotions-status-main p:last-child {
  margin-bottom: 0;
}

.promotions-status-card {
  padding: 25px 22px;

  text-align: center;

  border: 1px solid rgba(255, 193, 7, 0.15);
  border-radius: 20px;

  background: rgba(255, 193, 7, 0.035);
}

.promotions-status-card > span {
  display: block;

  margin-bottom: 10px;

  color: rgba(255, 255, 255, 0.42);

  font-size: 0.66rem;
  font-weight: 700;
  text-transform: uppercase;
}

.promotions-status-date {
  margin-bottom: 8px;

  color: #ffc107;

  font-size: 1.8rem;
  font-weight: 700;
}

.promotions-status-card p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.74rem;
  line-height: 1.55;
}


/* CONTENT HEADING */

.promotions-content-heading,
.promotions-poker-heading,
.promotions-how-heading {
  max-width: 780px;
  margin-bottom: 27px;
}

.promotions-content-heading h3,
.promotions-poker-heading h3,
.promotions-how-heading h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.75rem;
  line-height: 1.3;
  font-weight: 600;
}

.promotions-content-heading p,
.promotions-poker-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.88rem;
  line-height: 1.68;
}


/* CURRENT PROMOTIONS */

.promotions-current {
  margin-bottom: 42px;
}

.promotions-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.promotion-card {
  position: relative;

  min-height: 350px;
  padding: 29px 27px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 22px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );
}

.promotion-card-featured {
  border-color: rgba(255, 193, 7, 0.15);

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(255, 193, 7, 0.06),
      transparent 45%
    ),
    rgba(255, 255, 255, 0.018);
}

.promotion-card-number {
  position: absolute;
  top: 23px;
  right: 24px;

  color: rgba(255, 255, 255, 0.13);

  font-size: 0.7rem;
  font-weight: 700;
}

.promotion-card-icon {
  width: 52px;
  height: 52px;

  margin-bottom: 20px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 14px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.promotion-card-type {
  display: block;

  margin-bottom: 6px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.promotion-card h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.3rem;
  font-weight: 600;
}

.promotion-card-date {
  display: block;

  margin-bottom: 14px;

  color: rgba(255, 255, 255, 0.42);

  font-size: 0.71rem;
  font-weight: 600;
}

.promotion-card > p {
  margin: 0 0 15px;

  color: rgba(255, 255, 255, 0.52) !important;

  font-size: 0.82rem;
  line-height: 1.64;
}

.promotion-card-highlight {
  display: inline-flex;

  margin-bottom: 12px;
  padding: 8px 12px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 10px;

  background: rgba(255, 193, 7, 0.05);

  color: #ffc107;

  font-size: 0.78rem;
  font-weight: 700;
}

.promotion-card-small {
  margin-bottom: 0 !important;

  color: rgba(255, 255, 255, 0.42) !important;

  font-size: 0.73rem !important;
}


/* POKER PROMOTIONS */

.promotions-poker {
  margin-bottom: 42px;
}

.promotions-poker-list {
  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 24px;

  background: rgba(255, 255, 255, 0.017);
}

.promotions-poker-row {
  display: grid;
  grid-template-columns: 85px 1fr 120px;
  gap: 20px;
  align-items: center;

  padding: 24px 26px;

  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.promotions-poker-row:last-child {
  border-bottom: 0;
}

.promotions-poker-row-featured {
  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.035),
      transparent
    );
}

.promotions-poker-date {
  color: #ffc107;

  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.promotions-poker-main > span,
.promotions-poker-meta > span {
  display: block;

  margin-bottom: 5px;

  color: rgba(255, 255, 255, 0.37);

  font-size: 0.62rem;
  font-weight: 700;
  text-transform: uppercase;
}

.promotions-poker-main h3 {
  margin: 0 0 6px;

  color: #ffffff;

  font-size: 1.12rem;
  font-weight: 600;
}

.promotions-poker-main p {
  margin: 0;

  color: rgba(255, 255, 255, 0.5) !important;

  font-size: 0.78rem;
  line-height: 1.55;
}

.promotions-poker-meta {
  padding-left: 18px;

  border-left: 1px solid rgba(255, 255, 255, 0.07);
}

.promotions-poker-meta p {
  margin: 0;

  color: #ffc107 !important;

  font-size: 0.82rem;
  font-weight: 600;
}


/* UPCOMING EVENT */

.promotions-upcoming {
  display: grid;
  grid-template-columns: 1fr 240px;
  gap: 32px;
  align-items: center;

  margin-bottom: 34px;
  padding: 34px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 25px;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(255, 193, 7, 0.05),
      transparent 38%
    ),
    rgba(255, 255, 255, 0.018);
}

.promotions-upcoming-main h3 {
  margin: 0 0 13px;

  color: #ffffff;

  font-size: 1.5rem;
  font-weight: 600;
}

.promotions-upcoming-main p {
  margin: 0 0 13px;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.84rem;
  line-height: 1.67;
}

.promotions-upcoming-main p:last-child {
  margin-bottom: 0;
}

.promotions-upcoming-date {
  padding: 22px 20px;

  text-align: center;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 18px;

  background: rgba(255, 193, 7, 0.035);
}

.promotions-upcoming-date > span {
  display: block;

  margin-bottom: 8px;

  color: rgba(255, 255, 255, 0.42);

  font-size: 0.64rem;
  font-weight: 700;
  text-transform: uppercase;
}

.promotions-upcoming-date > div {
  margin-bottom: 7px;

  color: #ffc107;

  font-size: 1.9rem;
  font-weight: 700;
}

.promotions-upcoming-date p {
  margin: 0;

  color: #ffffff !important;

  font-size: 0.82rem;
  font-weight: 600;
}


/* HOW IT WORKS */

.promotions-how {
  margin-bottom: 34px;
  padding: 34px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.018);
}

.promotions-how-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 11px;
}

.promotions-how-item {
  padding: 18px 17px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;

  background: rgba(255, 255, 255, 0.022);
}

.promotions-how-index {
  display: block;

  margin-bottom: 10px;

  color: #ffc107;

  font-size: 0.67rem;
  font-weight: 700;
}

.promotions-how-item h4 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 0.9rem;
  font-weight: 600;
}

.promotions-how-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.74rem;
  line-height: 1.56;
}


/* PROMOTION CYCLE */

.promotions-cycle {
  display: grid;
  grid-template-columns: 1fr 0.9fr;
  gap: 30px;

  margin-bottom: 32px;
  padding: 34px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.018);
}

.promotions-cycle-content h3 {
  margin: 0 0 12px;

  color: #ffffff;

  font-size: 1.45rem;
  font-weight: 600;
}

.promotions-cycle-content p {
  margin: 0 0 12px;

  color: rgba(255, 255, 255, 0.53) !important;

  font-size: 0.83rem;
  line-height: 1.66;
}

.promotions-cycle-content p:last-child {
  margin-bottom: 0;
}

.promotions-cycle-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.promotions-cycle-grid > div {
  padding: 15px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 14px;

  background: rgba(255, 255, 255, 0.02);
}

.promotions-cycle-grid span {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
}

.promotions-cycle-grid p {
  margin: 0;

  color: rgba(255, 255, 255, 0.51) !important;

  font-size: 0.74rem;
}


/* NOTE */

.promotions-note {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 21px;

  padding: 29px 31px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 22px;

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.014)
    );
}

.promotions-note-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.promotions-note > div:last-child > span {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.promotions-note h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.18rem;
  font-weight: 600;
}

.promotions-note p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.83rem;
  line-height: 1.67;
}


/* RESPONSIVE */

@media (max-width: 1199.98px) {

  .promotions-heading h2 {
    font-size: 2.6rem;
  }

  .promotions-how-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}


@media (max-width: 991.98px) {

  .promotions-heading h2 {
    font-size: 2.35rem;
  }

  .promotions-status,
  .promotions-upcoming,
  .promotions-cycle {
    grid-template-columns: 1fr;
  }

  .promotions-status-card,
  .promotions-upcoming-date {
    max-width: 320px;
  }
}


@media (max-width: 767.98px) {

  .promotions-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .promotions-heading h2 {
    font-size: 2rem;
  }

  .promotions-grid {
    grid-template-columns: 1fr;
  }

  .promotions-status,
  .promotions-upcoming,
  .promotions-how,
  .promotions-cycle {
    padding: 28px 23px;
  }

  .promotions-poker-row {
    grid-template-columns: 70px 1fr;
  }

  .promotions-poker-meta {
    grid-column: 2;

    padding-left: 0;

    border-left: 0;
  }
}


@media (max-width: 575.98px) {

  .promotions-heading h2 {
    font-size: 1.72rem;
  }

  .promotions-intro {
    font-size: 0.96rem;
  }

  .promotions-how-grid,
  .promotions-cycle-grid {
    grid-template-columns: 1fr;
  }

  .promotions-poker-row {
    display: block;
  }

  .promotions-poker-date {
    display: block;
    margin-bottom: 11px;
  }

  .promotions-poker-meta {
    margin-top: 13px;
    padding-top: 12px;

    border-top: 1px solid rgba(255, 255, 255, 0.06);
  }

  .promotions-note {
    display: block;
  }

  .promotions-note-icon {
    margin-bottom: 17px;
  }
}

/* =========================================================
  DINING & DRINKS
========================================================= */

.dining-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(circle at 10% 12%, rgba(0, 47, 176, 0.10), transparent 28%),
    radial-gradient(circle at 90% 88%, rgba(255, 193, 7, 0.045), transparent 24%),
    #050b18;
}


/* HEADING */

.dining-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.dining-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.23);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.81rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.dining-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  line-height: 1.14;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.dining-intro {
  max-width: 800px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.65) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}

.dining-eyebrow {
  display: block;

  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}


/* FEATURE */

.dining-feature {
  margin-bottom: 34px;
  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 30px;

  background: rgba(255, 255, 255, 0.025);

  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.24);
}

.dining-image-wrap {
  position: relative;

  height: 100%;
  min-height: 540px;

  overflow: hidden;
}

.dining-image {
  display: block;

  width: 100%;
  height: 100%;
  min-height: 540px;

  object-fit: cover;
}

.dining-image-wrap::after {
  content: "";

  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      90deg,
      transparent 58%,
      rgba(5, 11, 24, 0.40) 100%
    );

  pointer-events: none;
}

.dining-image-badge {
  position: absolute;
  left: 28px;
  bottom: 28px;
  z-index: 2;

  max-width: 320px;
  padding: 17px 20px;

  display: flex;
  flex-direction: column;

  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 17px;

  background: rgba(5, 11, 24, 0.84);

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.dining-image-label {
  margin-bottom: 5px;

  color: rgba(255, 255, 255, 0.5);

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.dining-image-value {
  color: #ffc107;

  font-size: 1rem;
  line-height: 1.4;
  font-weight: 600;
}

.dining-feature-content {
  height: 100%;

  padding: 50px 48px;

  display: flex;
  flex-direction: column;
  justify-content: center;
}

.dining-feature-content h3 {
  margin: 0 0 21px;

  color: #ffffff;

  font-size: 2rem;
  line-height: 1.28;
  font-weight: 600;
}

.dining-feature-content p {
  margin: 0 0 16px;

  color: rgba(255, 255, 255, 0.61) !important;

  font-size: 0.91rem;
  line-height: 1.77;
}

.dining-feature-content p:last-child {
  margin-bottom: 0;
}


/* OPTIONS */

.dining-options {
  margin-bottom: 42px;
}

.dining-options-heading,
.dining-choice-heading {
  max-width: 780px;
  margin-bottom: 27px;
}

.dining-options-heading h3,
.dining-choice-heading h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.75rem;
  line-height: 1.3;
  font-weight: 600;
}

.dining-options-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.88rem;
  line-height: 1.68;
}

.dining-options-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.dining-card {
  position: relative;

  min-height: 370px;
  padding: 28px 25px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 21px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );
}

.dining-card-featured {
  border-color: rgba(255, 193, 7, 0.15);

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(255, 193, 7, 0.06),
      transparent 45%
    ),
    rgba(255, 255, 255, 0.018);
}

.dining-card-number {
  position: absolute;
  top: 22px;
  right: 23px;

  color: rgba(255, 255, 255, 0.13);

  font-size: 0.7rem;
  font-weight: 700;
}

.dining-card-icon {
  width: 51px;
  height: 51px;

  margin-bottom: 20px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 14px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.dining-card-label {
  display: block;

  margin-bottom: 6px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.dining-card h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.2rem;
  font-weight: 600;
}

.dining-card > p {
  margin: 0 0 17px;

  color: rgba(255, 255, 255, 0.51) !important;

  font-size: 0.8rem;
  line-height: 1.63;
}

.dining-card-detail {
  padding-top: 12px;
  margin-top: 12px;

  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.dining-card-detail span {
  display: block;

  margin-bottom: 4px;

  color: rgba(255, 255, 255, 0.35);

  font-size: 0.62rem;
  font-weight: 700;
  text-transform: uppercase;
}

.dining-card-detail p {
  margin: 0;

  color: #ffc107 !important;

  font-size: 0.78rem;
  font-weight: 600;
}

.dining-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;

  margin-bottom: 17px;
}

.dining-tags span {
  padding: 6px 9px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.045);

  color: rgba(255, 193, 7, 0.9);

  font-size: 0.67rem;
  font-weight: 600;
}


/* CHOICE */

.dining-choice {
  margin-bottom: 34px;
  padding: 34px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.018);
}

.dining-choice-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 11px;
}

.dining-choice-item {
  padding: 19px 17px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;

  background: rgba(255, 255, 255, 0.022);
}

.dining-choice-index {
  display: block;

  margin-bottom: 10px;

  color: #ffc107;

  font-size: 0.67rem;
  font-weight: 700;
}

.dining-choice-item h4 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 0.92rem;
  font-weight: 600;
}

.dining-choice-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.75rem;
  line-height: 1.57;
}


/* REFRESHMENTS */

.dining-refreshments {
  display: grid;
  grid-template-columns: 1fr 260px;
  gap: 32px;
  align-items: center;

  margin-bottom: 32px;
  padding: 34px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 25px;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(255, 193, 7, 0.05),
      transparent 38%
    ),
    rgba(255, 255, 255, 0.018);
}

.dining-refreshments-content h3 {
  margin: 0 0 13px;

  color: #ffffff;

  font-size: 1.48rem;
  font-weight: 600;
}

.dining-refreshments-content p {
  margin: 0 0 12px;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.84rem;
  line-height: 1.67;
}

.dining-refreshments-content p:last-child {
  margin-bottom: 0;
}

.dining-refreshments-status {
  padding: 22px 20px;

  text-align: center;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 18px;

  background: rgba(255, 193, 7, 0.035);
}

.dining-refreshments-status > span {
  display: block;

  margin-bottom: 8px;

  color: rgba(255, 255, 255, 0.41);

  font-size: 0.64rem;
  font-weight: 700;
  text-transform: uppercase;
}

.dining-refreshments-status > div {
  margin-bottom: 7px;

  color: #ffc107;

  font-size: 2.5rem;
  line-height: 1;
  font-weight: 700;
}

.dining-refreshments-status p {
  margin: 0;

  color: rgba(255, 255, 255, 0.48) !important;

  font-size: 0.73rem;
  line-height: 1.5;
}


/* COMP DOLLARS */

.dining-comp {
  margin-bottom: 32px;
  padding: 34px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.018);
}

.dining-comp-head {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 18px;
  align-items: center;

  margin-bottom: 17px;
}

.dining-comp-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 16px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.dining-comp-head h3 {
  margin: 0;

  color: #ffffff;

  font-size: 1.42rem;
  font-weight: 600;
}

.dining-comp > p {
  max-width: 900px;
  margin: 0 0 23px;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.84rem;
  line-height: 1.67;
}

.dining-comp-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 11px;
}

.dining-comp-item {
  padding: 16px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 15px;

  background: rgba(255, 255, 255, 0.02);
}

.dining-comp-item span {
  display: block;

  margin-bottom: 5px;

  color: #ffffff;

  font-size: 0.82rem;
  font-weight: 600;
}

.dining-comp-item p {
  margin: 0;

  color: #ffc107 !important;

  font-size: 0.74rem;
  font-weight: 600;
}


/* NOTE */

.dining-note {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 21px;

  padding: 29px 31px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 22px;

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.014)
    );
}

.dining-note-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.dining-note > div:last-child > span {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.dining-note h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.18rem;
  font-weight: 600;
}

.dining-note p {
  max-width: 980px;
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.83rem;
  line-height: 1.67;
}


/* RESPONSIVE */

@media (max-width: 1199.98px) {

  .dining-heading h2 {
    font-size: 2.6rem;
  }
}


@media (max-width: 991.98px) {

  .dining-heading h2 {
    font-size: 2.35rem;
  }

  .dining-image-wrap,
  .dining-image {
    min-height: 420px;
  }

  .dining-feature-content {
    padding: 40px 32px;
  }

  .dining-options-grid {
    grid-template-columns: 1fr;
  }

  .dining-card {
    min-height: 0;
  }

  .dining-refreshments {
    grid-template-columns: 1fr;
  }

  .dining-refreshments-status {
    max-width: 300px;
  }
}


@media (max-width: 767.98px) {

  .dining-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .dining-heading {
    margin-bottom: 38px;
  }

  .dining-heading h2 {
    font-size: 2rem;
  }

  .dining-feature {
    border-radius: 22px;
  }

  .dining-image-wrap,
  .dining-image {
    min-height: 340px;
  }

  .dining-feature-content {
    padding: 34px 24px;
  }

  .dining-choice,
  .dining-refreshments,
  .dining-comp {
    padding: 28px 23px;
  }

  .dining-choice-grid,
  .dining-comp-grid {
    grid-template-columns: 1fr;
  }
}


@media (max-width: 575.98px) {

  .dining-heading h2 {
    font-size: 1.72rem;
  }

  .dining-intro {
    font-size: 0.96rem;
  }

  .dining-image-wrap,
  .dining-image {
    min-height: 290px;
  }

  .dining-image-badge {
    left: 18px;
    bottom: 18px;
    right: 18px;
  }

  .dining-comp-head,
  .dining-note {
    display: block;
  }

  .dining-comp-icon,
  .dining-note-icon {
    margin-bottom: 17px;
  }
}

/* =========================================================
  COMPLIMENTARY DRINKS & GUEST AMENITIES
========================================================= */

.guest-services-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(circle at 10% 12%, rgba(0, 47, 176, 0.10), transparent 28%),
    radial-gradient(circle at 90% 88%, rgba(255, 193, 7, 0.045), transparent 24%),
    #050b18;
}


/* HEADING */

.guest-services-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.guest-services-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.23);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.81rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.guest-services-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  line-height: 1.14;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.guest-services-intro {
  max-width: 800px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.65) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}

.guest-services-eyebrow {
  display: block;

  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}


/* FEATURE */

.guest-services-feature {
  margin-bottom: 34px;
  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 30px;

  background: rgba(255, 255, 255, 0.025);

  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.24);
}

.guest-services-image-wrap {
  position: relative;

  height: 100%;
  min-height: 520px;

  overflow: hidden;
}

.guest-services-image {
  display: block;

  width: 100%;
  height: 100%;
  min-height: 520px;

  object-fit: cover;
}

.guest-services-image-wrap::after {
  content: "";

  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      90deg,
      transparent 58%,
      rgba(5, 11, 24, 0.40) 100%
    );

  pointer-events: none;
}

.guest-services-image-badge {
  position: absolute;
  left: 28px;
  bottom: 28px;
  z-index: 2;

  padding: 17px 20px;

  display: flex;
  flex-direction: column;

  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 17px;

  background: rgba(5, 11, 24, 0.84);

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.guest-services-image-label {
  margin-bottom: 5px;

  color: rgba(255, 255, 255, 0.5);

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.guest-services-image-value {
  color: #ffc107;

  font-size: 1.24rem;
  font-weight: 600;
}

.guest-services-feature-content {
  height: 100%;

  padding: 50px 48px;

  display: flex;
  flex-direction: column;
  justify-content: center;
}

.guest-services-feature-content h3 {
  margin: 0 0 21px;

  color: #ffffff;

  font-size: 2rem;
  line-height: 1.28;
  font-weight: 600;
}

.guest-services-feature-content p {
  margin: 0 0 16px;

  color: rgba(255, 255, 255, 0.61) !important;

  font-size: 0.91rem;
  line-height: 1.77;
}

.guest-services-feature-content p:last-child {
  margin-bottom: 0;
}


/* FREE AMENITIES */

.guest-services-free {
  margin-bottom: 42px;
}

.guest-services-free-heading,
.guest-services-location-heading {
  max-width: 780px;
  margin-bottom: 27px;
}

.guest-services-free-heading h3,
.guest-services-location-heading h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.75rem;
  font-weight: 600;
}

.guest-services-free-heading p,
.guest-services-location-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.88rem;
  line-height: 1.68;
}

.guest-services-free-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.guest-services-free-card {
  position: relative;

  min-height: 285px;
  padding: 28px 25px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 21px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );
}

.guest-services-free-card-featured {
  border-color: rgba(255, 193, 7, 0.15);

  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.06), transparent 45%),
    rgba(255, 255, 255, 0.018);
}

.guest-services-card-number {
  position: absolute;
  top: 22px;
  right: 23px;

  color: rgba(255, 255, 255, 0.13);

  font-size: 0.7rem;
  font-weight: 700;
}

.guest-services-card-icon {
  width: 51px;
  height: 51px;

  margin-bottom: 20px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 14px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.guest-services-card-label {
  display: block;

  margin-bottom: 6px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.guest-services-free-card h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.2rem;
  font-weight: 600;
}

.guest-services-free-card > p {
  margin: 0;

  color: rgba(255, 255, 255, 0.51) !important;

  font-size: 0.8rem;
  line-height: 1.63;
}

.guest-services-card-detail {
  margin-top: 17px;
  padding-top: 13px;

  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.guest-services-card-detail span {
  display: block;

  margin-bottom: 4px;

  color: rgba(255, 255, 255, 0.35);

  font-size: 0.62rem;
  font-weight: 700;
  text-transform: uppercase;
}

.guest-services-card-detail p {
  margin: 0;

  color: #ffc107 !important;

  font-size: 0.78rem;
  font-weight: 600;
}


/* BEVERAGES */

.guest-services-beverages {
  display: grid;
  grid-template-columns: 1fr 260px;
  gap: 32px;
  align-items: center;

  margin-bottom: 34px;
  padding: 34px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 25px;

  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.05), transparent 38%),
    rgba(255, 255, 255, 0.018);
}

.guest-services-beverages-main h3 {
  margin: 0 0 13px;

  color: #ffffff;

  font-size: 1.5rem;
  font-weight: 600;
}

.guest-services-beverages-main p {
  margin: 0 0 13px;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.84rem;
  line-height: 1.67;
}

.guest-services-beverages-main p:last-child {
  margin-bottom: 0;
}

.guest-services-beverages-status {
  padding: 22px 20px;

  text-align: center;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 18px;

  background: rgba(255, 193, 7, 0.035);
}

.guest-services-beverages-status > span {
  display: block;

  margin-bottom: 8px;

  color: rgba(255, 255, 255, 0.41);

  font-size: 0.64rem;
  font-weight: 700;
  text-transform: uppercase;
}

.guest-services-beverages-status > div {
  margin-bottom: 7px;

  color: #ffc107;

  font-size: 2.5rem;
  line-height: 1;
  font-weight: 700;
}

.guest-services-beverages-status p {
  margin: 0;

  color: rgba(255, 255, 255, 0.48) !important;

  font-size: 0.73rem;
  line-height: 1.5;
}


/* LOCATION */

.guest-services-location {
  margin-bottom: 34px;
  padding: 34px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.018);
}

.guest-services-location-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 11px;
}

.guest-services-location-item {
  padding: 19px 17px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;

  background: rgba(255, 255, 255, 0.022);
}

.guest-services-location-index {
  display: block;

  margin-bottom: 10px;

  color: #ffc107;

  font-size: 0.67rem;
  font-weight: 700;
}

.guest-services-location-item h4 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 0.92rem;
  font-weight: 600;
}

.guest-services-location-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.75rem;
  line-height: 1.57;
}


/* SUPPORT */

.guest-services-support {
  margin-bottom: 32px;
  padding: 34px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.018);
}

.guest-services-support-head {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 18px;
  align-items: center;

  margin-bottom: 17px;
}

.guest-services-support-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 16px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.guest-services-support-head h3 {
  margin: 0;

  color: #ffffff;

  font-size: 1.42rem;
  font-weight: 600;
}

.guest-services-support > p {
  max-width: 950px;
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.84rem;
  line-height: 1.67;
}


/* CONFIRMATION */

.guest-services-confirmation {
  display: grid;
  grid-template-columns: 1fr 280px;
  gap: 30px;
  align-items: center;

  margin-bottom: 32px;
  padding: 34px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 25px;

  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.05), transparent 38%),
    rgba(255, 255, 255, 0.018);
}

.guest-services-confirmation-content h3 {
  margin: 0 0 13px;

  color: #ffffff;

  font-size: 1.45rem;
  font-weight: 600;
}

.guest-services-confirmation-content p {
  margin: 0 0 13px;

  color: rgba(255, 255, 255, 0.53) !important;

  font-size: 0.83rem;
  line-height: 1.66;
}

.guest-services-confirmation-content p:last-child {
  margin-bottom: 0;
}

.guest-services-confirmation-status {
  padding: 22px 20px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 18px;

  background: rgba(255, 193, 7, 0.035);
}

.guest-services-confirmation-status > span {
  display: block;

  margin-bottom: 7px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  text-transform: uppercase;
}

.guest-services-confirmation-status h4 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 1rem;
  font-weight: 600;
}

.guest-services-confirmation-status p {
  margin: 0;

  color: rgba(255, 255, 255, 0.48) !important;

  font-size: 0.75rem;
  line-height: 1.58;
}


/* NOTE */

.guest-services-note {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 21px;

  padding: 29px 31px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 22px;

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.014)
    );
}

.guest-services-note-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.guest-services-note > div:last-child > span {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.guest-services-note h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.18rem;
  font-weight: 600;
}

.guest-services-note p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.83rem;
  line-height: 1.67;
}


/* RESPONSIVE */

@media (max-width: 1199.98px) {

  .guest-services-heading h2 {
    font-size: 2.6rem;
  }
}


@media (max-width: 991.98px) {

  .guest-services-heading h2 {
    font-size: 2.35rem;
  }

  .guest-services-image-wrap,
  .guest-services-image {
    min-height: 420px;
  }

  .guest-services-feature-content {
    padding: 40px 32px;
  }

  .guest-services-beverages,
  .guest-services-confirmation {
    grid-template-columns: 1fr;
  }

  .guest-services-beverages-status,
  .guest-services-confirmation-status {
    max-width: 330px;
  }
}


@media (max-width: 767.98px) {

  .guest-services-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .guest-services-heading {
    margin-bottom: 38px;
  }

  .guest-services-heading h2 {
    font-size: 2rem;
  }

  .guest-services-feature {
    border-radius: 22px;
  }

  .guest-services-image-wrap,
  .guest-services-image {
    min-height: 340px;
  }

  .guest-services-feature-content {
    padding: 34px 24px;
  }

  .guest-services-free-grid,
  .guest-services-location-grid {
    grid-template-columns: 1fr;
  }

  .guest-services-beverages,
  .guest-services-location,
  .guest-services-support,
  .guest-services-confirmation {
    padding: 28px 23px;
  }
}


@media (max-width: 575.98px) {

  .guest-services-heading h2 {
    font-size: 1.72rem;
  }

  .guest-services-intro {
    font-size: 0.96rem;
  }

  .guest-services-image-wrap,
  .guest-services-image {
    min-height: 290px;
  }

  .guest-services-image-badge {
    left: 18px;
    bottom: 18px;
  }

  .guest-services-support-head,
  .guest-services-note {
    display: block;
  }

  .guest-services-support-icon,
  .guest-services-note-icon {
    margin-bottom: 17px;
  }
}

/* =========================================================
  LIVE ENTERTAINMENT & DJ NIGHTS
========================================================= */

.entertainment-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(circle at 90% 10%, rgba(0, 47, 176, 0.10), transparent 27%),
    radial-gradient(circle at 8% 88%, rgba(255, 193, 7, 0.045), transparent 24%),
    #030816;
}


/* HEADING */

.entertainment-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.entertainment-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.23);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.81rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.entertainment-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  line-height: 1.14;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.entertainment-intro {
  max-width: 800px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.65) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}

.entertainment-eyebrow {
  display: block;

  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}


/* MAIN */

.entertainment-main {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 36px;
  align-items: center;

  margin-bottom: 34px;
  padding: 38px;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 27px;

  background:
    radial-gradient(circle at 100% 0%, rgba(0, 47, 176, 0.10), transparent 40%),
    rgba(255, 255, 255, 0.02);
}

.entertainment-main-content h3 {
  margin: 0 0 16px;

  color: #ffffff;

  font-size: 1.8rem;
  line-height: 1.3;
  font-weight: 600;
}

.entertainment-main-content p {
  margin: 0 0 14px;

  color: rgba(255, 255, 255, 0.57) !important;

  font-size: 0.9rem;
  line-height: 1.73;
}

.entertainment-main-content p:last-child {
  margin-bottom: 0;
}

.entertainment-main-time {
  padding: 26px 23px;

  text-align: center;

  border: 1px solid rgba(255, 193, 7, 0.16);
  border-radius: 21px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.05),
      rgba(255, 255, 255, 0.016)
    );
}

.entertainment-main-time > span {
  display: block;

  margin-bottom: 13px;

  color: rgba(255, 255, 255, 0.42);

  font-size: 0.66rem;
  font-weight: 700;
  text-transform: uppercase;
}

.entertainment-main-time > div {
  color: #ffc107;

  font-size: 2rem;
  line-height: 1.05;
  font-weight: 700;
}

.entertainment-main-time small {
  display: block;

  margin: 6px 0;

  color: rgba(255, 255, 255, 0.38);

  font-size: 0.68rem;
  text-transform: uppercase;
}

.entertainment-main-time p {
  margin: 12px 0 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.74rem;
}


/* FACTS */

.entertainment-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;

  margin-bottom: 42px;
}

.entertainment-fact-card {
  position: relative;

  min-height: 260px;
  padding: 27px 24px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 21px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );
}

.entertainment-fact-card-featured {
  border-color: rgba(255, 193, 7, 0.15);

  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.06), transparent 45%),
    rgba(255, 255, 255, 0.018);
}

.entertainment-fact-number {
  position: absolute;
  top: 22px;
  right: 23px;

  color: rgba(255, 255, 255, 0.13);

  font-size: 0.7rem;
  font-weight: 700;
}

.entertainment-fact-icon {
  width: 51px;
  height: 51px;

  margin-bottom: 20px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 14px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.entertainment-fact-label {
  display: block;

  margin-bottom: 6px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.entertainment-fact-card h3 {
  margin: 0 0 10px;

  color: #ffffff;

  font-size: 1.16rem;
  font-weight: 600;
}

.entertainment-fact-card p {
  margin: 0;

  color: rgba(255, 255, 255, 0.51) !important;

  font-size: 0.8rem;
  line-height: 1.63;
}


/* SCHEDULE */

.entertainment-schedule {
  margin-bottom: 42px;
}

.entertainment-schedule-heading,
.entertainment-experience-heading {
  max-width: 780px;
  margin-bottom: 27px;
}

.entertainment-schedule-heading h3,
.entertainment-experience-heading h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.75rem;
  font-weight: 600;
}

.entertainment-schedule-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.87rem;
  line-height: 1.68;
}

.entertainment-schedule-list {
  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 24px;

  background: rgba(255, 255, 255, 0.017);
}

.entertainment-schedule-row {
  display: grid;
  grid-template-columns: 85px 1fr 130px;
  gap: 20px;
  align-items: center;

  padding: 21px 25px;

  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.entertainment-schedule-row:last-child {
  border-bottom: 0;
}

.entertainment-schedule-row-featured {
  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.035),
      transparent
    );
}

.entertainment-schedule-date {
  color: #ffc107;

  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.entertainment-schedule-content span {
  display: block;

  margin-bottom: 4px;

  color: rgba(255, 255, 255, 0.37);

  font-size: 0.62rem;
  font-weight: 700;
  text-transform: uppercase;
}

.entertainment-schedule-content h4 {
  margin: 0;

  color: #ffffff;

  font-size: 1.05rem;
  font-weight: 600;
}

.entertainment-schedule-time {
  padding-left: 18px;

  border-left: 1px solid rgba(255, 255, 255, 0.07);

  color: rgba(255, 255, 255, 0.62);

  font-size: 0.78rem;
  font-weight: 600;
}


/* CALENDAR */

.entertainment-calendar {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 30px;
  align-items: center;

  margin-bottom: 34px;
  padding: 34px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 25px;

  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.05), transparent 38%),
    rgba(255, 255, 255, 0.018);
}

.entertainment-calendar-content h3 {
  margin: 0 0 13px;

  color: #ffffff;

  font-size: 1.48rem;
  font-weight: 600;
}

.entertainment-calendar-content p {
  margin: 0 0 12px;

  color: rgba(255, 255, 255, 0.53) !important;

  font-size: 0.83rem;
  line-height: 1.66;
}

.entertainment-calendar-content p:last-child {
  margin-bottom: 0;
}

.entertainment-calendar-status {
  padding: 22px 20px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 18px;

  background: rgba(255, 193, 7, 0.035);
}

.entertainment-calendar-status > span {
  display: block;

  margin-bottom: 7px;

  color: #ffc107;

  font-size: 0.64rem;
  font-weight: 700;
  text-transform: uppercase;
}

.entertainment-calendar-status h4 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 1rem;
  font-weight: 600;
}

.entertainment-calendar-status p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.74rem;
}


/* EXPERIENCE */

.entertainment-experience {
  margin-bottom: 32px;
  padding: 34px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.018);
}

.entertainment-experience-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 11px;
}

.entertainment-experience-item {
  padding: 19px 17px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;

  background: rgba(255, 255, 255, 0.022);
}

.entertainment-experience-index {
  display: block;

  margin-bottom: 10px;

  color: #ffc107;

  font-size: 0.67rem;
  font-weight: 700;
}

.entertainment-experience-item h4 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 0.92rem;
  font-weight: 600;
}

.entertainment-experience-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.75rem;
  line-height: 1.57;
}


/* AGE + NOTE */

.entertainment-age,
.entertainment-note {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 21px;

  padding: 29px 31px;

  border-radius: 22px;
}

.entertainment-age {
  margin-bottom: 17px;

  border: 1px solid rgba(255, 255, 255, 0.07);

  background:
    radial-gradient(circle at 100% 0%, rgba(0, 47, 176, 0.08), transparent 38%),
    rgba(255, 255, 255, 0.018);
}

.entertainment-note {
  border: 1px solid rgba(255, 193, 7, 0.14);

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.014)
    );
}

.entertainment-age-icon,
.entertainment-note-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.entertainment-age h3,
.entertainment-note h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.18rem;
  font-weight: 600;
}

.entertainment-age p,
.entertainment-note p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.83rem;
  line-height: 1.67;
}

.entertainment-note > div:last-child > span {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}


/* RESPONSIVE */

@media (max-width: 991.98px) {

  .entertainment-heading h2 {
    font-size: 2.35rem;
  }

  .entertainment-main,
  .entertainment-calendar {
    grid-template-columns: 1fr;
  }

  .entertainment-main-time,
  .entertainment-calendar-status {
    max-width: 330px;
  }
}


@media (max-width: 767.98px) {

  .entertainment-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .entertainment-heading h2 {
    font-size: 2rem;
  }

  .entertainment-facts,
  .entertainment-experience-grid {
    grid-template-columns: 1fr;
  }

  .entertainment-main,
  .entertainment-calendar,
  .entertainment-experience {
    padding: 28px 23px;
  }

  .entertainment-schedule-row {
    grid-template-columns: 70px 1fr;
  }

  .entertainment-schedule-time {
    grid-column: 2;

    padding-left: 0;
    margin-top: 4px;

    border-left: 0;
  }
}


@media (max-width: 575.98px) {

  .entertainment-heading h2 {
    font-size: 1.72rem;
  }

  .entertainment-intro {
    font-size: 0.96rem;
  }

  .entertainment-schedule-row {
    display: block;
  }

  .entertainment-schedule-date {
    display: block;
    margin-bottom: 8px;
  }

  .entertainment-schedule-time {
    margin-top: 9px;
  }

  .entertainment-age,
  .entertainment-note {
    display: block;
  }

  .entertainment-age-icon,
  .entertainment-note-icon {
    margin-bottom: 17px;
  }
}

/* =========================================================
  FIRST VISIT + AGE / ID / ENTRY
========================================================= */

.first-visit-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(circle at 10% 12%, rgba(0, 47, 176, 0.10), transparent 28%),
    radial-gradient(circle at 90% 88%, rgba(255, 193, 7, 0.045), transparent 24%),
    #050b18;
}


/* HEADING */

.first-visit-heading {
  max-width: 920px;
  margin: 0 auto 52px;
}

.first-visit-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.23);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.81rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.first-visit-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  line-height: 1.14;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.first-visit-intro {
  max-width: 820px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.65) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}

.first-visit-eyebrow {
  display: block;

  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}


/* SUMMARY */

.first-visit-summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 270px;
  gap: 36px;
  align-items: center;

  margin-bottom: 42px;
  padding: 38px;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 27px;

  background:
    radial-gradient(circle at 100% 0%, rgba(0, 47, 176, 0.10), transparent 40%),
    rgba(255, 255, 255, 0.02);
}

.first-visit-summary-main h3 {
  margin: 0 0 16px;

  color: #ffffff;

  font-size: 1.8rem;
  line-height: 1.3;
  font-weight: 600;
}

.first-visit-summary-main p {
  margin: 0 0 14px;

  color: rgba(255, 255, 255, 0.57) !important;

  font-size: 0.9rem;
  line-height: 1.73;
}

.first-visit-summary-main p:last-child {
  margin-bottom: 0;
}

.first-visit-summary-status {
  padding: 25px 23px;

  text-align: center;

  border: 1px solid rgba(255, 193, 7, 0.16);
  border-radius: 21px;

  background: rgba(255, 193, 7, 0.035);
}

.first-visit-summary-status > span {
  display: block;

  margin-bottom: 11px;

  color: rgba(255, 255, 255, 0.42);

  font-size: 0.65rem;
  font-weight: 700;
  text-transform: uppercase;
}

.first-visit-age {
  margin-bottom: 8px;

  color: #ffc107;

  font-size: 3.4rem;
  line-height: 1;
  font-weight: 700;
}

.first-visit-summary-status p {
  margin: 0;

  color: rgba(255, 255, 255, 0.48) !important;

  font-size: 0.74rem;
  line-height: 1.55;
}


/* ROUTE */

.first-visit-route {
  margin-bottom: 44px;
}

.first-visit-route-heading,
.first-visit-entry-heading,
.first-visit-exclusion-heading,
.first-visit-conduct-heading,
.first-visit-checklist-heading {
  max-width: 790px;
  margin-bottom: 28px;
}

.first-visit-route-heading h3,
.first-visit-entry-heading h3,
.first-visit-exclusion-heading h3,
.first-visit-conduct-heading h3,
.first-visit-checklist-heading h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.75rem;
  font-weight: 600;
}

.first-visit-route-heading p,
.first-visit-entry-heading p,
.first-visit-exclusion-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.88rem;
  line-height: 1.68;
}

.first-visit-steps {
  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.017);
}

.first-visit-step {
  display: grid;
  grid-template-columns: 42px 52px minmax(0, 1fr);
  gap: 19px;
  align-items: center;

  padding: 24px 27px;

  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.first-visit-step:last-child {
  border-bottom: 0;
}

.first-visit-step-number {
  color: rgba(255, 255, 255, 0.17);

  font-size: 0.69rem;
  font-weight: 700;
}

.first-visit-step-icon {
  width: 50px;
  height: 50px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 14px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.first-visit-step-label {
  display: block;

  margin-bottom: 4px;

  color: #ffc107;

  font-size: 0.63rem;
  font-weight: 700;
  text-transform: uppercase;
}

.first-visit-step-content h4 {
  margin: 0 0 6px;

  color: #ffffff;

  font-size: 1.05rem;
  font-weight: 600;
}

.first-visit-step-content p {
  max-width: 850px;
  margin: 0;

  color: rgba(255, 255, 255, 0.5) !important;

  font-size: 0.79rem;
  line-height: 1.58;
}


/* ENTRY CARDS */

.first-visit-entry {
  margin-bottom: 34px;
  padding: 34px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.018);
}

.first-visit-entry-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.first-visit-entry-card {
  position: relative;

  padding: 25px 22px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 19px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );
}

.first-visit-entry-card-featured {
  border-color: rgba(255, 193, 7, 0.15);

  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.06), transparent 45%),
    rgba(255, 255, 255, 0.018);
}

.first-visit-entry-number {
  position: absolute;
  top: 21px;
  right: 22px;

  color: rgba(255, 255, 255, 0.13);

  font-size: 0.68rem;
  font-weight: 700;
}

.first-visit-entry-icon {
  width: 48px;
  height: 48px;

  margin-bottom: 18px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 13px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.first-visit-entry-label {
  display: block;

  margin-bottom: 6px;

  color: #ffc107;

  font-size: 0.63rem;
  font-weight: 700;
  text-transform: uppercase;
}

.first-visit-entry-card h3 {
  margin: 0 0 9px;

  color: #ffffff;

  font-size: 1.05rem;
  font-weight: 600;
}

.first-visit-entry-card p {
  margin: 0;

  color: rgba(255, 255, 255, 0.49) !important;

  font-size: 0.76rem;
  line-height: 1.58;
}


/* ID POLICY */

.first-visit-id-policy,
.first-visit-money {
  display: grid;
  grid-template-columns: 1fr 280px;
  gap: 30px;
  align-items: center;

  margin-bottom: 32px;
  padding: 34px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 25px;

  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.05), transparent 38%),
    rgba(255, 255, 255, 0.018);
}

.first-visit-id-policy-content h3,
.first-visit-money-main h3 {
  margin: 0 0 13px;

  color: #ffffff;

  font-size: 1.45rem;
  font-weight: 600;
}

.first-visit-id-policy-content p,
.first-visit-money-main p {
  margin: 0 0 12px;

  color: rgba(255, 255, 255, 0.53) !important;

  font-size: 0.83rem;
  line-height: 1.66;
}

.first-visit-id-policy-content p:last-child,
.first-visit-money-main p:last-child {
  margin-bottom: 0;
}

.first-visit-id-policy-stat {
  padding: 22px 20px;

  text-align: center;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 18px;

  background: rgba(255, 193, 7, 0.035);
}

.first-visit-id-policy-stat > span {
  display: block;

  margin-bottom: 8px;

  color: rgba(255, 255, 255, 0.4);

  font-size: 0.64rem;
  font-weight: 700;
  text-transform: uppercase;
}

.first-visit-id-policy-stat > div {
  margin-bottom: 7px;

  color: #ffc107;

  font-size: 1.55rem;
  font-weight: 700;
}

.first-visit-id-policy-stat p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.73rem;
}


/* MINORS */

.first-visit-minors,
.first-visit-note {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 21px;

  padding: 29px 31px;

  border-radius: 22px;
}

.first-visit-minors {
  margin-bottom: 32px;

  border: 1px solid rgba(255, 255, 255, 0.07);

  background:
    radial-gradient(circle at 100% 0%, rgba(0, 47, 176, 0.08), transparent 38%),
    rgba(255, 255, 255, 0.018);
}

.first-visit-minors-icon,
.first-visit-note-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.first-visit-minors h3,
.first-visit-note h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.18rem;
  font-weight: 600;
}

.first-visit-minors p,
.first-visit-note p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.83rem;
  line-height: 1.67;
}


/* EXCLUSION + CONDUCT */

.first-visit-exclusion,
.first-visit-conduct,
.first-visit-checklist {
  margin-bottom: 32px;
  padding: 34px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.018);
}

.first-visit-exclusion-grid,
.first-visit-conduct-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 11px;
}

.first-visit-conduct-grid {
  grid-template-columns: repeat(4, 1fr);
}

.first-visit-exclusion-item,
.first-visit-conduct-item {
  padding: 18px 17px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;

  background: rgba(255, 255, 255, 0.022);
}

.first-visit-exclusion-item span,
.first-visit-conduct-item span {
  display: block;

  margin-bottom: 6px;

  color: #ffffff;

  font-size: 0.82rem;
  font-weight: 600;
}

.first-visit-exclusion-item p,
.first-visit-conduct-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.74rem;
  line-height: 1.56;
}


/* MONEY */

.first-visit-money {
  grid-template-columns: 1fr 0.8fr;
}

.first-visit-money-grid {
  display: grid;
  gap: 10px;
}

.first-visit-money-item {
  padding: 17px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 15px;

  background: rgba(255, 255, 255, 0.02);
}

.first-visit-money-item span {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.63rem;
  font-weight: 700;
  text-transform: uppercase;
}

.first-visit-money-item h4 {
  margin: 0 0 5px;

  color: #ffffff;

  font-size: 0.95rem;
  font-weight: 600;
}

.first-visit-money-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.73rem;
  line-height: 1.55;
}


/* CHECKLIST */

.first-visit-checklist-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}

.first-visit-checklist-grid > div {
  display: flex;
  align-items: flex-start;
  gap: 10px;

  padding: 14px 15px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 14px;

  background: rgba(255, 255, 255, 0.02);

  color: rgba(255, 255, 255, 0.68);

  font-size: 0.78rem;
}

.first-visit-checklist-grid i {
  width: 20px;
  height: 20px;

  display: flex;
  align-items: center;
  justify-content: center;

  flex: 0 0 20px;

  border-radius: 50%;

  background: rgba(255, 193, 7, 0.07);

  color: #ffc107;

  font-size: 0.5rem;
}


/* FINAL NOTE */

.first-visit-note {
  border: 1px solid rgba(255, 193, 7, 0.14);

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.014)
    );
}

.first-visit-note > div:last-child > span {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}


/* RESPONSIVE */

@media (max-width: 1199.98px) {

  .first-visit-heading h2 {
    font-size: 2.6rem;
  }

  .first-visit-entry-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .first-visit-conduct-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}


@media (max-width: 991.98px) {

  .first-visit-heading h2 {
    font-size: 2.35rem;
  }

  .first-visit-summary,
  .first-visit-id-policy,
  .first-visit-money {
    grid-template-columns: 1fr;
  }

  .first-visit-summary-status,
  .first-visit-id-policy-stat {
    max-width: 330px;
  }
}


@media (max-width: 767.98px) {

  .first-visit-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .first-visit-heading h2 {
    font-size: 2rem;
  }

  .first-visit-summary,
  .first-visit-entry,
  .first-visit-id-policy,
  .first-visit-exclusion,
  .first-visit-conduct,
  .first-visit-money,
  .first-visit-checklist {
    padding: 28px 23px;
  }

  .first-visit-step {
    grid-template-columns: 50px 1fr;
  }

  .first-visit-step-number {
    display: none;
  }

  .first-visit-entry-grid,
  .first-visit-exclusion-grid,
  .first-visit-conduct-grid,
  .first-visit-checklist-grid {
    grid-template-columns: 1fr;
  }
}


@media (max-width: 575.98px) {

  .first-visit-heading h2 {
    font-size: 1.72rem;
  }

  .first-visit-intro {
    font-size: 0.96rem;
  }

  .first-visit-step {
    display: block;
  }

  .first-visit-step-icon {
    margin-bottom: 14px;
  }

  .first-visit-minors,
  .first-visit-note {
    display: block;
  }

  .first-visit-minors-icon,
  .first-visit-note-icon {
    margin-bottom: 17px;
  }
}

/* =========================================================
  GETTING THERE & PARKING
========================================================= */

.getting-there-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(circle at 10% 12%, rgba(0, 47, 176, 0.10), transparent 28%),
    radial-gradient(circle at 90% 88%, rgba(255, 193, 7, 0.045), transparent 24%),
    #050b18;
}


/* HEADING */

.getting-there-heading {
  max-width: 900px;
  margin: 0 auto 52px;
}

.getting-there-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.23);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.81rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.getting-there-heading h2 {
  margin: 0 0 20px;

  color: #ffffff;

  font-size: 3rem;
  line-height: 1.14;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.getting-there-intro {
  max-width: 800px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.65) !important;

  font-size: 1.04rem;
  line-height: 1.8;
}

.getting-there-eyebrow {
  display: block;

  margin-bottom: 8px;

  color: #ffc107;

  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}


/* MAIN ADDRESS */

.getting-there-main {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 36px;
  align-items: center;

  margin-bottom: 34px;
  padding: 38px;

  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 27px;

  background:
    radial-gradient(circle at 100% 0%, rgba(0, 47, 176, 0.10), transparent 40%),
    rgba(255, 255, 255, 0.02);
}

.getting-there-main-content h3 {
  margin: 0 0 16px;

  color: #ffffff;

  font-size: 1.8rem;
  line-height: 1.3;
  font-weight: 600;
}

.getting-there-main-content p {
  margin: 0 0 14px;

  color: rgba(255, 255, 255, 0.57) !important;

  font-size: 0.9rem;
  line-height: 1.73;
}

.getting-there-main-content p:last-child {
  margin-bottom: 0;
}

.getting-there-address-card {
  padding: 26px 24px;

  border: 1px solid rgba(255, 193, 7, 0.16);
  border-radius: 21px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.05),
      rgba(255, 255, 255, 0.016)
    );
}

.getting-there-address-card > span {
  display: block;

  margin-bottom: 10px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.getting-there-address-card h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.4rem;
  font-weight: 600;
}

.getting-there-address-card p {
  margin: 0;

  color: rgba(255, 255, 255, 0.58) !important;

  font-size: 0.84rem;
  line-height: 1.6;
}


/* FACT CARDS */

.getting-there-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;

  margin-bottom: 42px;
}

.getting-there-fact-card {
  position: relative;

  min-height: 260px;
  padding: 27px 24px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 21px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.035),
      rgba(255, 255, 255, 0.012)
    );
}

.getting-there-fact-card-featured {
  border-color: rgba(255, 193, 7, 0.15);

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(255, 193, 7, 0.06),
      transparent 45%
    ),
    rgba(255, 255, 255, 0.018);
}

.getting-there-fact-number {
  position: absolute;
  top: 22px;
  right: 23px;

  color: rgba(255, 255, 255, 0.13);

  font-size: 0.7rem;
  font-weight: 700;
}

.getting-there-fact-icon {
  width: 51px;
  height: 51px;

  margin-bottom: 20px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 14px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.getting-there-fact-label {
  display: block;

  margin-bottom: 6px;

  color: #ffc107;

  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.getting-there-fact-card h3 {
  margin: 0 0 10px;

  color: #ffffff;

  font-size: 1.16rem;
  font-weight: 600;
}

.getting-there-fact-card p {
  margin: 0;

  color: rgba(255, 255, 255, 0.51) !important;

  font-size: 0.8rem;
  line-height: 1.63;
}


/* PARKING */

.getting-there-parking {
  display: grid;
  grid-template-columns: 1fr 280px;
  gap: 32px;
  align-items: center;

  margin-bottom: 34px;
  padding: 34px;

  border: 1px solid rgba(255, 193, 7, 0.13);
  border-radius: 25px;

  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 7, 0.05), transparent 38%),
    rgba(255, 255, 255, 0.018);
}

.getting-there-parking-main h3 {
  margin: 0 0 13px;

  color: #ffffff;

  font-size: 1.5rem;
  font-weight: 600;
}

.getting-there-parking-main p {
  margin: 0 0 12px;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.84rem;
  line-height: 1.67;
}

.getting-there-parking-main p:last-child {
  margin-bottom: 0;
}

.getting-there-parking-status {
  padding: 23px 20px;

  text-align: center;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 18px;

  background: rgba(255, 193, 7, 0.035);
}

.getting-there-parking-status > span {
  display: block;

  margin-bottom: 8px;

  color: rgba(255, 255, 255, 0.4);

  font-size: 0.64rem;
  font-weight: 700;
  text-transform: uppercase;
}

.getting-there-parking-status > div {
  margin-bottom: 7px;

  color: #ffc107;

  font-size: 2.7rem;
  line-height: 1;
  font-weight: 700;
}

.getting-there-parking-status h4 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 0.95rem;
  font-weight: 600;
}

.getting-there-parking-status p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.73rem;
  line-height: 1.5;
}


/* ARRIVAL ROUTE */

.getting-there-route {
  margin-bottom: 34px;
  padding: 34px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.018);
}

.getting-there-route-heading {
  max-width: 780px;
  margin-bottom: 27px;
}

.getting-there-route-heading h3 {
  margin: 0 0 11px;

  color: #ffffff;

  font-size: 1.72rem;
  font-weight: 600;
}

.getting-there-route-heading p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.87rem;
  line-height: 1.68;
}

.getting-there-route-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 11px;
}

.getting-there-route-item {
  padding: 18px 17px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;

  background: rgba(255, 255, 255, 0.022);
}

.getting-there-route-index {
  display: block;

  margin-bottom: 10px;

  color: #ffc107;

  font-size: 0.67rem;
  font-weight: 700;
}

.getting-there-route-item h4 {
  margin: 0 0 7px;

  color: #ffffff;

  font-size: 0.9rem;
  font-weight: 600;
}

.getting-there-route-item p {
  margin: 0;

  color: rgba(255, 255, 255, 0.47) !important;

  font-size: 0.74rem;
  line-height: 1.56;
}


/* CONTACT */

.getting-there-contact {
  display: grid;
  grid-template-columns: 1fr 0.8fr;
  gap: 30px;
  align-items: center;

  margin-bottom: 32px;
  padding: 34px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 25px;

  background: rgba(255, 255, 255, 0.018);
}

.getting-there-contact-content h3 {
  margin: 0 0 12px;

  color: #ffffff;

  font-size: 1.45rem;
  font-weight: 600;
}

.getting-there-contact-content p {
  margin: 0;

  color: rgba(255, 255, 255, 0.53) !important;

  font-size: 0.83rem;
  line-height: 1.66;
}

.getting-there-contact-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.getting-there-contact-item {
  padding: 17px;

  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 15px;

  background: rgba(255, 255, 255, 0.02);
}

.getting-there-contact-item span {
  display: block;

  margin-bottom: 6px;

  color: #ffc107;

  font-size: 0.63rem;
  font-weight: 700;
  text-transform: uppercase;
}

.getting-there-contact-item h4 {
  margin: 0;

  color: #ffffff;

  font-size: 0.92rem;
  font-weight: 600;
}


/* NOTE */

.getting-there-note {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 21px;

  padding: 29px 31px;

  border: 1px solid rgba(255, 193, 7, 0.14);
  border-radius: 22px;

  background:
    linear-gradient(
      90deg,
      rgba(255, 193, 7, 0.045),
      rgba(255, 255, 255, 0.014)
    );
}

.getting-there-note-icon {
  width: 56px;
  height: 56px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 15px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;
}

.getting-there-note > div:last-child > span {
  display: block;

  margin-bottom: 5px;

  color: #ffc107;

  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.getting-there-note h3 {
  margin: 0 0 8px;

  color: #ffffff;

  font-size: 1.18rem;
  font-weight: 600;
}

.getting-there-note p {
  margin: 0;

  color: rgba(255, 255, 255, 0.54) !important;

  font-size: 0.83rem;
  line-height: 1.67;
}


/* RESPONSIVE */

@media (max-width: 1199.98px) {

  .getting-there-heading h2 {
    font-size: 2.6rem;
  }

  .getting-there-route-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}


@media (max-width: 991.98px) {

  .getting-there-heading h2 {
    font-size: 2.35rem;
  }

  .getting-there-main,
  .getting-there-parking,
  .getting-there-contact {
    grid-template-columns: 1fr;
  }

  .getting-there-address-card,
  .getting-there-parking-status {
    max-width: 340px;
  }
}


@media (max-width: 767.98px) {

  .getting-there-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .getting-there-heading {
    margin-bottom: 38px;
  }

  .getting-there-heading h2 {
    font-size: 2rem;
  }

  .getting-there-facts,
  .getting-there-route-grid {
    grid-template-columns: 1fr;
  }

  .getting-there-main,
  .getting-there-parking,
  .getting-there-route,
  .getting-there-contact {
    padding: 28px 23px;
  }
}


@media (max-width: 575.98px) {

  .getting-there-heading h2 {
    font-size: 1.72rem;
  }

  .getting-there-intro {
    font-size: 0.96rem;
  }

  .getting-there-contact-grid {
    grid-template-columns: 1fr;
  }

  .getting-there-note {
    display: block;
  }

  .getting-there-note-icon {
    margin-bottom: 17px;
  }
}

/* =========================================================
  FAQ
========================================================= */

.faq-section {
  position: relative;
  overflow: hidden;

  background:
    radial-gradient(circle at 10% 8%, rgba(0, 47, 176, 0.10), transparent 27%),
    radial-gradient(circle at 90% 90%, rgba(255, 193, 7, 0.045), transparent 24%),
    #050b18;
}

.faq-shell {
  max-width: 1050px;
  margin: 0 auto;
  padding: 42px 38px;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 30px;

  background: rgba(255, 255, 255, 0.022);

  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.20);
}


/* HEADING */

.faq-heading {
  max-width: 800px;
  margin: 0 auto 42px;
}

.faq-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  margin-bottom: 18px;
  padding: 9px 17px;

  border: 1px solid rgba(255, 193, 7, 0.23);
  border-radius: 999px;

  background: rgba(255, 193, 7, 0.065);

  color: #ffc107;

  font-size: 0.81rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.faq-heading h2 {
  margin: 0 0 18px;

  color: #ffffff;

  font-size: 3rem;
  line-height: 1.14;
  font-weight: 700;
  letter-spacing: -1.2px;
}

.faq-intro {
  max-width: 720px;
  margin-bottom: 0;

  color: rgba(255, 255, 255, 0.61) !important;

  font-size: 1rem;
  line-height: 1.75;
}


/* LIST */

.faq-list {
  display: grid;
  gap: 11px;
}

.faq-item {
  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 17px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.032),
      rgba(255, 255, 255, 0.014)
    );

  transition:
    border-color 0.25s ease,
    background 0.25s ease;
}

.faq-item:hover,
.faq-item.active {
  border-color: rgba(255, 193, 7, 0.20);
}

.faq-item.active {
  background:
    linear-gradient(
      145deg,
      rgba(255, 193, 7, 0.04),
      rgba(255, 255, 255, 0.015)
    );
}


/* QUESTION */

.faq-question {
  width: 100%;

  padding: 19px 21px;

  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;

  border: 0;
  background: transparent;

  color: #ffffff;

  text-align: left;

  cursor: pointer;
}

.faq-question span {
  font-size: 0.96rem;
  line-height: 1.5;
  font-weight: 600;
}

.faq-question i {
  flex: 0 0 auto;

  color: #ffc107;

  font-size: 0.78rem;

  transition: transform 0.3s ease;
}

.faq-item.active .faq-question i {
  transform: rotate(180deg);
}


/* ANSWER */

.faq-answer {
  max-height: 0;
  overflow: hidden;

  padding: 0 21px;

  transition:
    max-height 0.35s ease,
    padding 0.35s ease;
}

.faq-item.active .faq-answer {
  max-height: 420px;
  padding: 0 21px 20px;
}

.faq-answer p {
  max-width: 900px;
  margin: 0 0 10px;

  color: rgba(255, 255, 255, 0.55) !important;

  font-size: 0.83rem;
  line-height: 1.67;
}

.faq-answer p:last-child {
  margin-bottom: 0;
}


/* RESPONSIVE */

@media (max-width: 991.98px) {

  .faq-shell {
    padding: 34px 26px;
  }

  .faq-heading h2 {
    font-size: 2.35rem;
  }
}


@media (max-width: 767.98px) {

  .faq-section {
    padding-top: 75px !important;
    padding-bottom: 75px !important;
  }

  .faq-shell {
    padding: 29px 20px;
    border-radius: 24px;
  }

  .faq-heading {
    margin-bottom: 32px;
  }

  .faq-heading h2 {
    font-size: 2rem;
  }

  .faq-question {
    padding: 17px 18px;
  }

  .faq-item.active .faq-answer {
    padding: 0 18px 18px;
  }

  .faq-answer {
    padding-left: 18px;
    padding-right: 18px;
  }
}


@media (max-width: 575.98px) {

  .faq-heading h2 {
    font-size: 1.72rem;
  }

  .faq-intro {
    font-size: 0.95rem;
  }

  .faq-question span {
    font-size: 0.9rem;
  }

  .faq-answer p {
    font-size: 0.79rem;
  }
}

/* ===== BRANTFORD LEGAL PAGES 2026 ===== */
.legal-page .navbar-btn-primary { white-space: nowrap; }
.legal-page .legal-section { scroll-margin-top: 115px; }
.legal-page .legal-section h2 { color:#fff; }
.legal-page .legal-section h3 { color:#fff; }
.legal-page .legal-section strong { color:#fff; }
.legal-page .legal-toc a:focus,
.legal-page .legal-toc a:hover { color:#ffc107; }
.legal-page .footer-brand-text { max-width: 420px; }
@media (max-width: 991.98px) {
 .legal-page .navbar-actions { margin-top: 14px; margin-bottom: 8px; }
}
