/**
* template:  Blend&Buzz

TABLE OF CONTENTS

      + Global
	  + Header
	  + Header Content
	  + About Us
	  + Services
	  + Menu
	  + Banner
	  + Booking
	  + Testimonials
	  + Contacts

      
*/

@import 'reset.css';
@import 'all.min.css';
@import 'magnific-popup.css';
@import 'owl.carousel.min.css';
@import 'owl.theme.default.min.css';
@import 'scrollCue.css';

@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');


/**************************************
*
*         GLOBAL   
*
***************************************/


:root {
   --color-dark: #0D0D0F;
   --color-dark-gray: #1F1F24;
   --color-gold: #E6B450;
   --color-dark-gold: #B5835A;
   --color-white: #FFFFFF;
}

@-webkit-keyframes load {

	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

@keyframes load {

	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

 ::-moz-selection {
	background-color: var(--color-gold);
	color: var(--color-dark);
}

 ::selection {
	background-color: var(--color-gold);
	color: var(--color-dark);
}

* {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
	outline: none;
}

a {
	text-decoration: none;
	display: inline-block;
	-webkit-transition: all;
	-o-transition: all;
	transition: all;
	-webkit-transition-duration: 0.5s;
	     -o-transition-duration: 0.5s;
	        transition-duration: 0.5s;
}

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

body {
  font-family: "Lato", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
	line-height: 1.5;
  color: var(--color-white);
  background-color: var(--color-dark);
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
	line-height: 1.2;
	margin-bottom: 30px;
	text-transform: uppercase;
    color: var(--color-white);
}

h1 {
	font-size: 70px;
}

h2 {
	font-size: 50px;
}

h3 {
	font-size: 20px;
}

.align-center {
	text-align: center;
}

.btn {
	padding: 15px 30px;
	background-color: transparent;
	color: var(--color-gold);
	text-transform: uppercase;
    border-radius: 3px;
	border: 1px solid var(--color-gold);
}

.btn:hover {
  border: 1px solid var(--color-white);
  color: var(--color-white);
}

.wrapper {
	max-width: 1920px;
	width: 100%;
	margin: 0 auto;
}

.container {
	max-width: 1400px;
	width: 100%;
	margin: 0 auto;
	padding: 0 15px;
}

.ptb {
	padding-top: 100px;
	padding-bottom: 100px;
}

.flex { 
	display: -webkit-box; 
	display: -ms-flexbox; 
	display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
   -ms-flex-wrap: wrap;
       flex-wrap: wrap;
}

.suptitle {
	display: inline-block;
	color: var(--color-gold);
	font-size: 14px;
	letter-spacing: 2px;
	text-transform: uppercase;
	margin-bottom: 10px;
	position: relative;
}

.suptitle:before {
	content: "";
	width: 50px;
	height: 1px;
	background-color: var(--color-gold);
	position: absolute;
	top: 50%;
	right: -60px;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
}

#openmenu,
#closemenu {
	font-size: 30px;
	color: var(--color-white);
	display: none;
}

#openmenu:hover,
#closemenu:hover {
	color: var(--color-gold);
}

#closemenu {
	float: right;
}

#scroll-top {
	position: fixed;
	bottom: 30px;
	right: 30px;
	z-index: 100;
	padding: 15px;
	background-color: var(--color-gold);
	color: var(--color-white);
	font-size: 18px;
}

#scroll-top:hover {
	background-color: var(--color-dark-gold);
}

.overlay {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	opacity: 0;
	background-color:  rgba(255, 255, 255, 0.5);
	-webkit-transition: all;
	-o-transition: all;
	transition: all;
	-webkit-transition-duration: 0.5s;
	     -o-transition-duration: 0.5s;
	        transition-duration: 0.5s;
}

.overlay i {
	position: absolute;
	top: 50%;
	left: 50%;
	color: var(--color-gold);
	font-size: 20px;
	-webkit-transform: translate(-50%,-50%);
	    -ms-transform: translate(-50%,-50%);
	        transform: translate(-50%,-50%);
}

#preload {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100vh;
	background-color: var(--color-dark-gray);
	z-index: 100000;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

#preload img {
	width: 44px;
	height: auto;
	-webkit-animation-name: load;
	animation-name: load;
	-webkit-animation-duration: 3s;
	animation-duration: 3s;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
}

.res-booking {
	margin-top: 30px;
	margin-left: 10px;
	display: none;
	font-size: 16px;
	margin-top: 20px;
}

.res-booking .error {
	color: #ff0000;
}

.res-booking .send {
	color: var(--color-white);
}


/**************************************
*
*         HEADER   
*
***************************************/


.header {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1000;
}

#logo {
   margin-right: 20px;
   outline: none;
   border: none;
}

#logo img {
   max-width: 100%;
    outline: none;
   border: none;
}

.wrapper-top-header {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-top: 15px;
    padding-bottom: 5px;
    color: var(--color-white);
}

.wrapper-top-header i {
    margin-right: 10px;
}

.wrapper-header {
	padding-top: 5px;
	padding-bottom: 15px;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.wrapper-menu {
   -webkit-box-align: center;
       -ms-flex-align: center;
           align-items: center;
}

.header-menu li {
   float: left;
   margin-left: 30px;
}

.header-menu>li a {
	color: var(--color-white);
	text-transform: uppercase;
	padding-top: 10px;
	padding-bottom: 10px;
}

.header-menu>li a:hover {
	color: var(--color-gold);
}


/**************************************
*
*         HEADER CONTENT
*
***************************************/


.wrapper-header-content {
	min-height: 900px;
	width: 100%;
	background-repeat: no-repeat;
	background-position: center top;
  background-attachment: fixed;
	background-size: cover;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}


/**************************************
*
*        ABOUT US
*
***************************************/


.wrapper-aboutus {
     -webkit-box-align: center;
         -ms-flex-align: center;
             align-items: center;
}

.aboutus-img {
	width:calc(50% - 50px);
	margin: 25px;
	position:relative;
}

.experiense {
	 position: absolute;
	 bottom: -20px;
	 right: -20px;
	 background-color: var(--color-gold);
	 padding: 40px 30px;
	 color: var(--color-white);
	 -webkit-box-shadow: 6px 6px 15px rgba(0, 0, 0, 0.25);
	         box-shadow: 6px 6px 15px rgba(0, 0, 0, 0.25);
}

.experiense .counter {
	font-size: 50px;
	font-weight: 700;
} 

.aboutus-content {
	width: 50%;
	padding:50px;
	background-color: var(--color-dark-gray);
	-webkit-box-shadow: 0 8px 30px rgba(0, 0, 0, 0.05);
	        box-shadow: 0 8px 30px rgba(0, 0, 0, 0.05);
}

.aboutus-content p {
	margin-bottom: 20px;
}

.wrapper-signature {
	margin-top: 50px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin-bottom: 50px;
}

.wrapper-signature img {
	max-width: 180px;
	margin-right: 10px;
}

.wrapper-signature h3 {
	font-size: 18px;
	margin-bottom: 5px;
}

.wrapper-signature p {
	text-transform: uppercase;
	letter-spacing: 3px;
	font-size: 12px;
	color: var(--color-gold);
}


/**************************************
*
*        SERVICES
*
***************************************/


.single-service {
	width: calc(25% - 20px);
	margin: 10px;
	padding: 40px 20px;
	background-color: var(--color-dark-gray);
}

.single-service h3 {
	margin-bottom: 10px;
}

.single-service img {
	max-width: 64px;
	height: auto;
	margin: 0 auto 30px auto;
}


/**************************************
*
*         MENU
*
***************************************/


.list-menu {
	width: 100%;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.list-menu li {
	margin:10px;
}

.list-menu li a {
	text-transform: uppercase;
	color: var(--color-white);
	font-size: 18px;
	font-weight: 700;
}

.list-menu li a:hover {
	color: var(--color-gold);
}

.list-menu .active {
	color: var(--color-gold);
}

.wrapper-menu {
   -webkit-box-align: center;
       -ms-flex-align: center;
           align-items: center;
}

.menu-item .single-product  {
	width: calc(25% - 20px);
	margin: 10px;
	background-color: var(--color-dark-gray);
}

.wrapper-menu {
	margin-bottom: 30px;
}

.single-product-img {
	position: relative;
	display: block;
	border: none;
	outline: none;
}

.single-product-img:hover .overlay {
    opacity: 1;
}

.single-product-content {
	padding: 40px 10px;
}

.single-product-content h3 {
	color: var(--color-white);
	margin-bottom: 10px;
}

.single-product-content span {
	font-size: 20px;
	display: inline-block;
	margin-top: 20px;
	color: var(--color-gold);
}

.overlay {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	opacity: 0;
	background-color:  rgba(13, 13, 15, 0.4);
	-webkit-transition: all;
	-o-transition: all;
	transition: all;
	-webkit-transition-duration: 0.5s;
	     -o-transition-duration: 0.5s;
	        transition-duration: 0.5s;
}

.overlay i {
	position: absolute;
	top: 50%;
	left: 50%;
	color: var(--color-gold);
	font-size: 20px;
	-webkit-transform: translate(-50%,-50%);
	    -ms-transform: translate(-50%,-50%);
	        transform: translate(-50%,-50%);
}


/**************************************
*
*        BANNER
*
***************************************/


#banner h2 {
	font-size: 60px;
}


/**************************************
*
*         BOOKING   
*
***************************************/


#booking {
	width: 100%;
	background-repeat: no-repeat;
	background-position: left bottom;
	background-size: cover;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
}

.wrapper-booking {
	width: 50%;
	padding: 100px 50px;
	background-color: var(--color-dark-gray);
}

form {
	margin-top: 50px;
}

input, textarea {
	outline: none;
	border: none;
	padding: 15px;
	border: 1px solid var(--color-gold);
	color: var(--color-white);
    font-size: 16px;
	background-color: transparent;
	display: block;
	font-family: "Lato", sans-serif;
    font-weight: 400;
	border-radius: 3px;
}

textarea {
    min-height: 150px;
	width: 100%;
	margin-bottom: 20px;
}

::-webkit-input-placeholder {
	color: var(--color-gold);
	font-size: 12px;
	text-transform: uppercase;
	 font-family: "Lato", sans-serif;
    font-weight: 400;
}

::-moz-placeholder {
	color: var(--color-gold);
	font-size: 12px;
	text-transform: uppercase;
	 font-family: "Lato", sans-serif;
    font-weight: 400;
}

:-ms-input-placeholder {
	color: var(--color-gold);
	font-size: 12px;
	text-transform: uppercase;
	 font-family: "Lato", sans-serif;
    font-weight: 400;
}

::-ms-input-placeholder {
	color: var(--color-gold);
	font-size: 12px;
	text-transform: uppercase;
	 font-family: "Lato", sans-serif;
    font-weight: 400;
}

::placeholder {
	color: var(--color-gold);
	font-size: 12px;
	text-transform: uppercase;
	 font-family: "Lato", sans-serif;
    font-weight: 400;
}

input:focus, textarea:focus {
		border: 1px solid var(--color-dark-gold);
}

.wrapper-input {
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.wrapper-input input {
   width: calc(50% - 10px);
   margin-bottom: 20px;
}

#sendmessage {
	cursor: pointer;
	-webkit-transition: all;
	-o-transition: all;
	transition: all;
	-webkit-transition-duration: 0.5s;
	     -o-transition-duration: 0.5s;
	        transition-duration: 0.5s;
}


/**************************************
*
*        TESTIMONIALS
*
***************************************/


#testimonials h2 {
	color: var(--color-white);
}

.wrapper-testimonials {
	max-width: 1000px;
	margin-top: 50px;
}

.single-testimonials img {
	width: 80px !important;
	height: 80px !important;
	margin: 0 auto;
	border-radius: 50%;
	margin-bottom: 30px;
}

.single-testimonials p {
	margin-bottom: 20px;
	color: var(--color-white);
}

.wrapper-author h3 {
	margin-bottom: 10px;
	font-size: 20px;
	color: var(--color-white);
}

.wrapper-author p {
	font-size: 14px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--color-white);
}

#testimonials .owl-carousel.testimonials-carousel .owl-item {
	height: auto;
}

#testimonials .owl-theme .owl-nav.disabled+.owl-dots {
    margin-top: 40px;
}

#testimonials .owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
    background: var(--color-gold);
}

#testimonials .owl-theme .owl-dots .owl-dot span {
    width: 20px;
    height: 3px;
    margin: 5px 7px;
    background: var(--color-dark-gold);
    display: block;
    -webkit-backface-visibility: visible;
    -webkit-transition: opacity .2s ease;
    -o-transition: opacity .2s ease;
    transition: opacity .2s ease;
    border-radius: none;
}


/**************************************
*
*         CONTACTS
*
***************************************/


#contacts {
	background-color: var(--color-dark-gray);
}

#contacts h2 {
	color: var(--color-white);
}

.wrapper-contact {
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
}

.wrapper-contact>div {
	width: 25%;
	padding: 20px;
}

.wrapper-contact>div .social-link {
	margin-left: 0px;
}

.wrapper-contact>div .social-link li {
	margin-left: 0px;
	margin-right: 15px;
}

.wrapper-contact>div p {
	margin-bottom: 10px;
	color: var(--color-white);
}

.wrapper-contact>div h3 {
	font-size: 20px;
	color: var(--color-white);
}

.wrapper-contact>div a {
	color: var(--color-gold);
}

.wrapper-contact>div a:hover {
      color: var(--color-dark-gold);
}

.wrapper-map iframe {
	width: 100%;
	height: 400px;
	display: block;
}

.copyright {
	padding: 30px 15px;
	text-align: center;
	font-size: 14px;
	color: var(--color-white);
}

/**************************************
*
*        TOP GAMES
*
***************************************/

.games-grid {
   display: grid;
   grid-template-columns: repeat(6, 1fr);
   gap: 20px;
   margin-top: 50px;
}

.game-card {
   position: relative;
   background-color: var(--color-dark-gray);
   border-radius: 6px;
   overflow: hidden;
}

.game-card img {
   width: 100%;
   height: 100%;
   object-fit: cover;
}

.game-overlay {
   position: absolute;
   inset: 0;
   background: rgba(13, 13, 15, 0.7);
   display: flex;
   align-items: center;
   justify-content: center;
   opacity: 0;
   transition: all 0.4s ease;
}

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

/* ====== Responsive ====== */

@media (max-width: 1200px) {
   .games-grid {
      grid-template-columns: repeat(4, 1fr);
   }
}

@media (max-width: 768px) {
   .games-grid {
      grid-template-columns: repeat(3, 1fr);
      gap: 15px;
   }
}

@media (max-width: 480px) {
   .games-grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 12px;
   }
}

.single-service img {
   width: 64px;
   height: 64px;
   margin: 0 auto 25px auto;
   object-fit: contain;

   /* Gold color filter */
   filter: brightness(0) saturate(100%)
           invert(72%) sepia(52%) saturate(528%)
           hue-rotate(2deg) brightness(95%) contrast(92%);
}
.app-store-buttons {
   display: flex;
   justify-content: center;
   gap: 20px;
   margin-top: 30px;
   flex-wrap: wrap;
}

.app-store-buttons img {
   height: 50px;
   width: auto;
   max-width: 180px;
   object-fit: contain;
   transition: transform 0.3s ease;
}

.app-store-buttons img:hover {
   transform: translateY(-3px);
}

/* Mobile */
@media (max-width: 480px) {
   .app-store-buttons img {
      height: 44px;
      max-width: 160px;
   }
}
/* Payments Tabs */
.payments-tabs {
   display: flex;
   justify-content: center;
   gap: 20px;
   margin-bottom: 30px;
}

.tab-btn {
   padding: 10px 30px;
   border: 1px solid var(--color-gold);
   background: transparent;
   color: #fff;
   cursor: pointer;
}

.tab-btn.active {
   background-color: var(--color-gold);
   color: #000;
}

/* Table Wrapper */
.payments-table-wrapper {
   max-width: 800px;
   margin: 0 auto;
   background-color: var(--color-dark);
   border-radius: 6px;
   padding: 20px;
}

/* Table */
.payments-table {
   width: 100%;
   border-collapse: collapse;
   display: none;
}

.payments-table.active {
   display: table;
}

.payments-table td {
   padding: 14px 10px;
   border-bottom: 1px solid rgba(255,255,255,0.08);
   text-align: left;
}

.payments-table td:last-child {
   text-align: right;
   white-space: nowrap;
}

/* Icons */
.payments-table img {
   width: 46px;
   height: 46px;
   object-fit: contain;
}

/* Mobile */
@media (max-width: 600px) {
   .payments-table td {
      font-size: 14px;
   }

   .payments-table img {
      width: 28px;
      height: 28px;
   }
}
/**************************************
*
*     PAYMENTS TRUST BLOCK
*
***************************************/

.payments-trust {
   max-width: 1100px;
   margin: 80px auto 0 auto;
   background: linear-gradient(180deg, #1b1b1f 0%, #141416 100%);
   border-radius: 8px;
   padding: 60px 50px;
}

.payments-trust-header p {
   max-width: 850px;
   margin: 20px auto 0 auto;
   opacity: 0.9;
}

.payments-trust-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 40px;
   margin-top: 60px;
}

.trust-item {
   background-color: var(--color-dark);
   padding: 35px;
   border-radius: 6px;
   text-align: center;
}

.trust-icon {
   width: 56px;
   height: 56px;
   margin: 0 auto 25px auto;
}

.trust-icon img {
   width: 100%;
   height: 100%;
   object-fit: contain;
}

.trust-item h4 {
   margin-bottom: 15px;
   color: var(--color-gold);
}

.trust-item ul {
   list-style: none;
   padding: 0;
   margin-top: 20px;
}

.trust-item ul li {
   margin-bottom: 10px;
   font-size: 14px;
   opacity: 0.9;
}

.payments-trust-footer {
   margin-top: 50px;
   padding-top: 30px;
   border-top: 1px solid rgba(255,255,255,0.08);
}

/* Mobile */
@media (max-width: 900px) {
   .payments-trust-grid {
      grid-template-columns: 1fr;
   }

   .payments-trust {
      padding: 40px 25px;
   }
}

.gold-icon {
   width: 36px;
   height: 36px;
   object-fit: contain;

   filter: brightness(0) saturate(100%)
           invert(66%) sepia(38%) saturate(520%)
           hue-rotate(8deg) brightness(92%) contrast(98%);
}

/**************************************
*
*   PLATFORM INTEGRITY BLOCK
*
***************************************/

.integrity-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 40px;
}

.integrity-item {
   background-color: var(--color-dark);
   padding: 40px;
   border-radius: 8px;
   text-align: center; 
}

.integrity-item h3 {
   margin: 20px 0 15px 0;
   color: var(--color-gold);
}

.integrity-item p {
   margin-bottom: 12px;
   opacity: 0.95;
}

.integrity-item img {
   width: 42px;
   height: 42px;
   object-fit: contain;
   display: block;
   margin: 0 auto; 
}


/* Mobile */
@media (max-width: 900px) {
   .integrity-grid {
      grid-template-columns: 1fr;
   }
}
/**************************************
*
*            FAQ
*
***************************************/

.faq-grid {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 40px;
}

.faq-item {
   background-color: var(--color-dark);
   border-radius: 6px;
   margin-bottom: 20px;
   overflow: hidden;
}

.faq-question {
   width: 100%;
   padding: 18px 20px;
   background: none;
   border: none;
   color: #fff;
   text-align: left;
   font-size: 16px;
   cursor: pointer;
   position: relative;
}

.faq-question::after {
   content: "+";
   position: absolute;
   right: 20px;
   top: 50%;
   transform: translateY(-50%);
   color: var(--color-gold);
   font-size: 20px;
}

.faq-item.active .faq-question::after {
   content: "−";
}

.faq-answer {
   max-height: 0;
   overflow: hidden;
   transition: max-height 0.3s ease;
   padding: 0 20px;
}

.faq-item.active .faq-answer {
   max-height: 300px;
   padding-bottom: 20px;
}

.faq-answer p {
   margin-top: 10px;
   font-size: 14px;
   opacity: 0.95;
}

/* Mobile */
@media (max-width: 900px) {
   .faq-grid {
      grid-template-columns: 1fr;
   }
}

/**************************************
*
*            FOOTER
*
***************************************/

.footer {
   background-color: #0f0f12;
   padding-top: 70px;
   color: #cfcfcf;
}

.footer-grid {
   display: grid;
   grid-template-columns: 2fr 1fr 1fr 1.3fr;
   gap: 50px;
}

.footer-logo img {
   max-width: 160px;
   margin-bottom: 20px;
}

.footer-about p {
   font-size: 14px;
   line-height: 1.7;
   opacity: 0.9;
}

.footer-col h4 {
   color: var(--color-gold);
   margin-bottom: 20px;
}

.footer-col ul {
   list-style: none;
   padding: 0;
}

.footer-col ul li {
   margin-bottom: 10px;
}

.footer-col ul li a {
   color: #cfcfcf;
   font-size: 14px;
}

.footer-col ul li a:hover {
   color: var(--color-gold);
}

.footer-col p a {
   color: #cfcfcf;
}

.footer-col p a:hover {
   color: var(--color-gold);
}

/* Bottom */
.footer-bottom {
   margin-top: 60px;
   border-top: 1px solid rgba(255,255,255,0.08);
   padding: 25px 0;
}

.footer-bottom-inner {
   display: flex;
   justify-content: space-between;
   flex-wrap: wrap;
   gap: 15px;
}

.footer-disclaimer {
   font-size: 13px;
   opacity: 0.7;
}

/* Mobile */
@media (max-width: 900px) {
   .footer-grid {
      grid-template-columns: 1fr;
   }

   .footer-bottom-inner {
      text-align: center;
      justify-content: center;
   }
}
.reef-services-grid {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 30px;
}

.reef-service-card {
   background-color: var(--color-dark-gray);
   padding: 35px;
   border-radius: 8px;
}

.reef-service-card h4 {
   color: var(--color-gold);
   margin-bottom: 12px;
}

/* Mobile */
@media (max-width: 900px) {
   .reef-services-grid {
      grid-template-columns: 1fr;
   }
}

/**************************************
*
*       CASINO COMPARISON
*
***************************************/

.crown-comparison {
   position: relative;
   overflow: hidden;
}

.comparison-heading {
   max-width: 900px;
   margin: 0 auto 60px;
}

.comparison-heading h2 {
   margin-bottom: 25px;
}

.comparison-heading p {
   max-width: 850px;
   margin: 0 auto;
   color: rgba(255,255,255,.76);
   font-size: 17px;
   line-height: 1.8;
}


/* ===== Property Cards ===== */

.comparison-properties {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 24px;
}

.property-card {
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.07);
   overflow: hidden;
   transition: transform .35s ease, border-color .35s ease;
}

.property-card:hover {
   transform: translateY(-6px);
   border-color: rgba(230,180,80,.4);
}

.property-image {
   position: relative;
   height: 270px;
   overflow: hidden;
}

.property-image::after {
   content: "";
   position: absolute;
   inset: 0;
   background: linear-gradient(
      to top,
      rgba(13,13,15,.9) 0%,
      rgba(13,13,15,.15) 55%,
      transparent 100%
   );
}

.property-image img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   transition: transform .6s ease;
}

.property-card:hover .property-image img {
   transform: scale(1.04);
}

.property-location {
   position: absolute;
   z-index: 2;
   left: 25px;
   bottom: 20px;
   display: flex;
   align-items: center;
   gap: 9px;
   font-size: 13px;
   letter-spacing: .4px;
}

.property-location i {
   color: var(--color-gold);
}

.property-content {
   padding: 32px 30px 30px;
}

.property-type {
   display: block;
   margin-bottom: 10px;
   color: var(--color-gold);
   font-size: 11px;
   font-weight: 700;
   letter-spacing: 1.6px;
   text-transform: uppercase;
}

.property-content h3 {
   margin-bottom: 17px;
   font-size: 25px;
}

.property-content > p {
   min-height: 145px;
   color: rgba(255,255,255,.72);
   line-height: 1.75;
}

.property-highlights {
   margin-top: 28px;
   padding-top: 24px;
   border-top: 1px solid rgba(255,255,255,.08);
   display: grid;
   gap: 15px;
}

.property-highlights > div {
   display: flex;
   align-items: center;
   gap: 14px;
}

.property-highlights i {
   width: 34px;
   color: var(--color-gold);
   font-size: 16px;
   text-align: center;
}

.property-highlights span {
   color: #fff;
   font-size: 14px;
}

.property-highlights small {
   display: block;
   margin-bottom: 2px;
   color: rgba(255,255,255,.45);
   font-size: 10px;
   letter-spacing: 1px;
   text-transform: uppercase;
}


/* ===== Story Block ===== */

.comparison-story {
   display: grid;
   grid-template-columns: .85fr 1.4fr;
   gap: 80px;
   margin-top: 90px;
   padding: 65px;
   background:
      linear-gradient(135deg, rgba(230,180,80,.08), transparent 45%),
      var(--color-dark-gray);
   border-left: 2px solid var(--color-gold);
}

.comparison-story-label span {
   display: block;
   margin-bottom: 14px;
   color: var(--color-gold);
   font-size: 11px;
   font-weight: 700;
   letter-spacing: 1.7px;
   text-transform: uppercase;
}

.comparison-story-label h3 {
   margin: 0;
   font-size: 31px;
   line-height: 1.3;
}

.comparison-story-text p {
   margin-bottom: 20px;
   color: rgba(255,255,255,.76);
   line-height: 1.85;
}

.comparison-story-text p:last-child {
   margin-bottom: 0;
}


/* ===== Comparison Table ===== */

.comparison-table-wrapper {
   margin-top: 90px;
}

.comparison-table-heading {
   margin-bottom: 32px;
}

.comparison-table-heading span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 11px;
   font-weight: 700;
   letter-spacing: 1.8px;
   text-transform: uppercase;
}

.comparison-table-heading h3 {
   margin: 0;
   font-size: 30px;
}

.comparison-table-scroll {
   overflow-x: auto;
   border: 1px solid rgba(255,255,255,.08);
}

.crown-table {
   width: 100%;
   min-width: 900px;
   border-collapse: collapse;
   background: var(--color-dark-gray);
}

.crown-table th,
.crown-table td {
   padding: 21px 22px;
   border-right: 1px solid rgba(255,255,255,.06);
   border-bottom: 1px solid rgba(255,255,255,.06);
   vertical-align: top;
   text-align: left;
}

.crown-table th:last-child,
.crown-table td:last-child {
   border-right: none;
}

.crown-table thead th {
   padding-top: 25px;
   padding-bottom: 25px;
   background: rgba(230,180,80,.07);
   color: var(--color-gold);
   font-family: "Montserrat", sans-serif;
   font-size: 13px;
   letter-spacing: .6px;
   text-transform: uppercase;
}

.crown-table thead th:first-child {
   width: 18%;
   color: rgba(255,255,255,.55);
}

.crown-table tbody td {
   color: rgba(255,255,255,.77);
   font-size: 14px;
   line-height: 1.55;
}

.crown-table tbody td:first-child {
   color: #fff;
   font-weight: 700;
}

.crown-table tbody tr {
   transition: background .25s ease;
}

.crown-table tbody tr:hover {
   background: rgba(255,255,255,.025);
}

.crown-table small {
   display: block;
   margin-top: 5px;
   color: rgba(255,255,255,.45);
   font-size: 11px;
}

.table-yes {
   color: #fff;
}

.table-yes i {
   margin-right: 7px;
   color: var(--color-gold);
   font-size: 11px;
}


/* ===== Choose Casino ===== */

.choose-casino {
   margin-top: 100px;
}

.choose-heading {
   margin-bottom: 45px;
}

.choose-heading h3 {
   margin-bottom: 0;
   font-size: 34px;
}

.choose-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 22px;
}

.choose-card {
   position: relative;
   padding: 38px 32px;
   background: var(--color-dark-gray);
   border-top: 1px solid rgba(230,180,80,.45);
}

.choose-icon {
   width: 48px;
   height: 48px;
   margin-bottom: 25px;
   display: flex;
   align-items: center;
   justify-content: center;
   border: 1px solid rgba(230,180,80,.3);
   color: var(--color-gold);
   font-size: 18px;
}

.choose-card > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 10px;
   font-weight: 700;
   letter-spacing: 1.5px;
   text-transform: uppercase;
}

.choose-card h4 {
   margin-bottom: 16px;
   font-size: 20px;
}

.choose-card p {
   margin: 0;
   color: rgba(255,255,255,.68);
   line-height: 1.75;
   font-size: 14px;
}


/* ===== Responsive ===== */

@media (max-width: 1100px) {

   .comparison-properties {
      grid-template-columns: 1fr;
      max-width: 800px;
      margin-left: auto;
      margin-right: auto;
   }

   .property-card {
      display: grid;
      grid-template-columns: 42% 58%;
   }

   .property-image {
      height: 100%;
      min-height: 390px;
   }

   .property-content > p {
      min-height: auto;
   }

   .comparison-story {
      gap: 45px;
      padding: 50px;
   }

}


@media (max-width: 800px) {

   .comparison-heading {
      margin-bottom: 40px;
   }

   .comparison-heading h2 {
      font-size: 36px;
   }

   .property-card {
      display: block;
   }

   .property-image {
      height: 260px;
      min-height: 0;
   }

   .comparison-story {
      grid-template-columns: 1fr;
      gap: 30px;
      margin-top: 60px;
      padding: 40px 30px;
   }

   .comparison-story-label h3 {
      font-size: 25px;
   }

   .comparison-table-wrapper {
      margin-top: 65px;
   }

   .choose-grid {
      grid-template-columns: 1fr;
   }

   .choose-casino {
      margin-top: 70px;
   }

}


@media (max-width: 480px) {

   .comparison-heading h2 {
      font-size: 30px;
   }

   .comparison-heading p {
      font-size: 15px;
   }

   .property-content {
      padding: 27px 22px;
   }

   .property-image {
      height: 220px;
   }

   .comparison-story {
      padding: 32px 22px;
   }

   .comparison-table-heading h3,
   .choose-heading h3 {
      font-size: 26px;
   }

   .choose-card {
      padding: 30px 24px;
   }

}

/**************************************
*
*          CASINO OVERVIEW
*
***************************************/

.casino-overview {
   position: relative;
   background: var(--color-dark);
}


/* ===== Intro ===== */

.casino-overview-intro {
   display: grid;
   grid-template-columns: .9fr 1.1fr;
   gap: 90px;
   align-items: end;
   margin-bottom: 65px;
}

.casino-overview-title h2 {
   margin-bottom: 0;
   max-width: 650px;
   font-size: 48px;
   line-height: 1.12;
}

.casino-overview-copy {
   padding-left: 40px;
   border-left: 1px solid rgba(230,180,80,.35);
}

.casino-overview-copy p {
   margin-bottom: 18px;
   color: rgba(255,255,255,.68);
   line-height: 1.8;
}

.casino-overview-copy p:last-child {
   margin-bottom: 0;
}

.casino-overview-copy .casino-lead {
   color: var(--color-white);
   font-size: 19px;
   line-height: 1.65;
}


/* ===== Casino Panels ===== */

.casino-panel {
   margin-bottom: 28px;
   padding: 45px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.065);
}

.casino-panel-premium {
   background:
      linear-gradient(
         120deg,
         rgba(230,180,80,.07),
         transparent 40%
      ),
      var(--color-dark-gray);
}

.casino-panel-head {
   display: flex;
   justify-content: space-between;
   align-items: flex-start;
   gap: 30px;
   padding-bottom: 30px;
   margin-bottom: 36px;
   border-bottom: 1px solid rgba(255,255,255,.08);
}

.casino-index {
   display: inline-block;
   margin-right: 15px;
   color: rgba(255,255,255,.18);
   font-family: "Montserrat", sans-serif;
   font-size: 14px;
}

.casino-location {
   color: var(--color-gold);
   font-size: 10px;
   font-weight: 700;
   letter-spacing: 1.4px;
   text-transform: uppercase;
}

.casino-panel-head h3 {
   margin: 10px 0 0;
   font-size: 29px;
}


/* ===== Status ===== */

.casino-status {
   flex-shrink: 0;
   display: flex;
   align-items: center;
   gap: 9px;
   padding: 10px 15px;
   border: 1px solid rgba(230,180,80,.25);
   color: rgba(255,255,255,.75);
   font-size: 10px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.status-dot {
   width: 6px;
   height: 6px;
   border-radius: 50%;
   background: var(--color-gold);
   box-shadow: 0 0 0 4px rgba(230,180,80,.1);
}

.casino-status-limited {
   background: rgba(230,180,80,.05);
}


/* ===== Main Panel Layout ===== */

.casino-panel-grid {
   display: grid;
   grid-template-columns: 1.1fr .9fr;
   gap: 65px;
}


/* ===== Description ===== */

.casino-label {
   display: block;
   margin-bottom: 15px;
   color: var(--color-gold);
   font-size: 9px;
   font-weight: 700;
   letter-spacing: 1.6px;
   text-transform: uppercase;
}

.casino-description p {
   margin-bottom: 17px;
   color: rgba(255,255,255,.66);
   line-height: 1.82;
}

.casino-description p:last-child {
   margin-bottom: 0;
}

.casino-description .casino-main-copy {
   color: rgba(255,255,255,.88);
   font-size: 17px;
   line-height: 1.75;
}


/* ===== Key Points ===== */

.casino-keypoints {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 10px;
}

.casino-point {
   min-height: 125px;
   padding: 22px 19px;
   background: rgba(13,13,15,.56);
   border: 1px solid rgba(255,255,255,.055);
}

.casino-point i {
   display: block;
   margin-bottom: 20px;
   color: var(--color-gold);
   font-size: 18px;
}

.casino-point span {
   display: block;
   margin-bottom: 4px;
   color: rgba(255,255,255,.38);
   font-size: 8px;
   font-weight: 700;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.casino-point strong {
   display: block;
   color: var(--color-white);
   font-family: "Montserrat", sans-serif;
   font-size: 14px;
   font-weight: 500;
}

.casino-point small {
   display: block;
   margin-top: 5px;
   color: rgba(255,255,255,.43);
   font-size: 10px;
   line-height: 1.5;
}


/* ===== Visitor Note ===== */

.casino-note {
   display: grid;
   grid-template-columns: 180px 1fr;
   gap: 30px;
   margin-top: 35px;
   padding-top: 28px;
   border-top: 1px solid rgba(230,180,80,.18);
}

.casino-note > span {
   color: var(--color-gold);
   font-size: 10px;
   font-weight: 700;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.casino-note > span i {
   margin-right: 7px;
}

.casino-note p {
   margin: 0;
   color: rgba(255,255,255,.56);
   font-size: 13px;
   line-height: 1.7;
}


/* ===== Comparison Strip ===== */

.casino-overview-strip {
   margin-top: 70px;
   padding: 50px;
   background:
      linear-gradient(
         100deg,
         rgba(230,180,80,.08),
         transparent 48%
      ),
      var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.06);
}

.casino-strip-intro {
   margin-bottom: 35px;
}

.casino-strip-intro > span {
   display: block;
   margin-bottom: 9px;
   color: var(--color-gold);
   font-size: 9px;
   font-weight: 700;
   letter-spacing: 1.5px;
   text-transform: uppercase;
}

.casino-strip-intro h3 {
   max-width: 650px;
   margin: 0;
   font-size: 27px;
}

.casino-strip-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   border-top: 1px solid rgba(255,255,255,.08);
}

.casino-strip-item {
   padding: 30px 30px 0 0;
}

.casino-strip-item + .casino-strip-item {
   padding-left: 30px;
   border-left: 1px solid rgba(255,255,255,.08);
}

.casino-strip-item span {
   display: block;
   margin-bottom: 8px;
   color: rgba(255,255,255,.44);
   font-size: 10px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.casino-strip-item strong {
   display: block;
   margin-bottom: 12px;
   color: var(--color-gold);
   font-family: "Montserrat", sans-serif;
   font-size: 25px;
   font-weight: 500;
}

.casino-strip-item p {
   margin: 0;
   color: rgba(255,255,255,.59);
   font-size: 13px;
   line-height: 1.65;
}


/* ===== Sydney Hours ===== */

.casino-hours-detail {
   display: flex;
   align-items: center;
   gap: 22px;
   margin-top: 18px;
   padding: 24px 28px;
   background: rgba(255,255,255,.025);
   border-left: 2px solid var(--color-gold);
}

.casino-hours-icon {
   width: 42px;
   height: 42px;
   flex-shrink: 0;
   display: flex;
   justify-content: center;
   align-items: center;
   border: 1px solid rgba(230,180,80,.25);
   color: var(--color-gold);
}

.casino-hours-detail span {
   display: block;
   margin-bottom: 4px;
   color: var(--color-white);
   font-family: "Montserrat", sans-serif;
   font-size: 13px;
   text-transform: uppercase;
}

.casino-hours-detail p {
   margin: 0;
   color: rgba(255,255,255,.56);
   font-size: 13px;
}


/* ===== Hover ===== */

.casino-panel,
.casino-point {
   transition:
      border-color .3s ease,
      background .3s ease;
}

.casino-panel:hover {
   border-color: rgba(230,180,80,.18);
}

.casino-point:hover {
   border-color: rgba(230,180,80,.2);
   background: rgba(13,13,15,.78);
}


/* ===== Responsive ===== */

@media (max-width: 1000px) {

   .casino-overview-intro {
      gap: 50px;
   }

   .casino-panel-grid {
      grid-template-columns: 1fr;
      gap: 40px;
   }

}


@media (max-width: 800px) {

   .casino-overview-intro {
      grid-template-columns: 1fr;
      gap: 30px;
   }

   .casino-overview-title h2 {
      font-size: 36px;
   }

   .casino-overview-copy {
      padding-left: 25px;
   }

   .casino-panel {
      padding: 35px 28px;
   }

   .casino-panel-head {
      flex-direction: column;
   }

   .casino-strip-grid {
      grid-template-columns: 1fr;
   }

   .casino-strip-item {
      padding: 25px 0;
   }

   .casino-strip-item + .casino-strip-item {
      padding-left: 0;
      border-left: none;
      border-top: 1px solid rgba(255,255,255,.08);
   }

   .casino-overview-strip {
      padding: 38px 28px;
   }

}


@media (max-width: 560px) {

   .casino-overview-title h2 {
      font-size: 30px;
   }

   .casino-keypoints {
      grid-template-columns: 1fr;
   }

   .casino-note {
      grid-template-columns: 1fr;
      gap: 12px;
   }

   .casino-hours-detail {
      align-items: flex-start;
   }

   .casino-panel {
      padding: 30px 22px;
   }

}

/**************************************
*
*          GAMING MACHINES
*
***************************************/

.machines-section {
   position: relative;
   background: var(--color-dark-gray);
}


/* ===== Intro ===== */

.machines-intro {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 65px;
   align-items: center;
}

.machines-intro-copy h2 {
   margin-bottom: 25px;
   font-size: 48px;
   line-height: 1.12;
}

.machines-intro-copy p {
   margin-bottom: 17px;
   color: rgba(255,255,255,.67);
   line-height: 1.8;
}

.machines-intro-copy .machines-lead {
   color: var(--color-white);
   font-size: 18px;
   line-height: 1.7;
}


/* ===== Main Image ===== */

.machines-intro-image {
   position: relative;
   height: 500px;
   overflow: hidden;
}

.machines-intro-image::after {
   content: "";
   position: absolute;
   inset: 0;
   background: linear-gradient(
      to top,
      rgba(13,13,15,.72),
      transparent 55%
   );
}

.machines-intro-image img {
   width: 100%;
   height: 100%;
   object-fit: cover;
}

.machines-image-stat {
   position: absolute;
   z-index: 2;
   left: 30px;
   bottom: 30px;
   padding: 20px 24px;
   background: rgba(13,13,15,.88);
   border-left: 2px solid var(--color-gold);
}

.machines-image-stat span,
.machines-image-stat small {
   display: block;
   color: rgba(255,255,255,.5);
   font-size: 9px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.machines-image-stat strong {
   display: block;
   margin: 2px 0;
   color: var(--color-gold);
   font-family: "Montserrat", sans-serif;
   font-size: 32px;
   font-weight: 500;
}


/* ===== Availability ===== */

.machine-availability {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   margin-top: 55px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.07);
}

.machine-availability-item {
   padding: 28px 30px;
   border-right: 1px solid rgba(255,255,255,.07);
}

.machine-availability-item:last-child {
   border-right: none;
}

.machine-availability-item.featured {
   background: rgba(230,180,80,.045);
}

.machine-city {
   display: block;
   margin-bottom: 13px;
   color: rgba(255,255,255,.4);
   font-size: 9px;
   letter-spacing: 1.4px;
   text-transform: uppercase;
}

.machine-availability-status {
   margin-bottom: 10px;
   color: #fff;
   font-family: "Montserrat", sans-serif;
   font-size: 14px;
}

.machine-availability-status i {
   margin-right: 8px;
   color: var(--color-gold);
}

.machine-availability-item p {
   margin: 0;
   color: rgba(255,255,255,.53);
   font-size: 12px;
   line-height: 1.65;
}


/* ===== Property Blocks ===== */

.machine-property {
   margin-top: 80px;
   padding: 50px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.065);
}

.machine-property-heading {
   display: flex;
   justify-content: space-between;
   align-items: flex-end;
   gap: 30px;
   padding-bottom: 30px;
   margin-bottom: 40px;
   border-bottom: 1px solid rgba(255,255,255,.08);
}

.machine-eyebrow {
   display: block;
   margin-bottom: 10px;
   color: var(--color-gold);
   font-size: 9px;
   font-weight: 700;
   letter-spacing: 1.5px;
   text-transform: uppercase;
}

.machine-property-heading h3 {
   margin: 0;
   font-size: 30px;
}

.machine-big-number {
   text-align: right;
}

.machine-big-number strong {
   display: block;
   color: var(--color-gold);
   font-family: "Montserrat", sans-serif;
   font-size: 37px;
   font-weight: 500;
}

.machine-big-number span {
   color: rgba(255,255,255,.45);
   font-size: 9px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.machine-property-tag {
   padding: 10px 14px;
   border: 1px solid rgba(230,180,80,.25);
   color: rgba(255,255,255,.68);
   font-size: 10px;
   letter-spacing: 1px;
   text-transform: uppercase;
}

.machine-property-tag i {
   margin-right: 7px;
   color: var(--color-gold);
}


/* ===== Perth Layout ===== */

.machine-property-grid {
   display: grid;
   grid-template-columns: .9fr 1.1fr;
   gap: 60px;
}

.machine-property-copy p {
   margin-bottom: 17px;
   color: rgba(255,255,255,.63);
   line-height: 1.8;
}

.machine-property-copy .machine-main-text {
   color: rgba(255,255,255,.9);
   font-size: 17px;
}


/* ===== Feature Cards ===== */

.machine-feature-grid {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 10px;
}

.machine-feature {
   padding: 25px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.055);
}

.machine-feature > i {
   margin-bottom: 25px;
   color: var(--color-gold);
   font-size: 19px;
}

.machine-feature > span {
   display: block;
   margin-bottom: 6px;
   color: rgba(255,255,255,.35);
   font-size: 8px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.machine-feature h4 {
   margin-bottom: 11px;
   font-size: 16px;
}

.machine-feature p {
   margin: 0;
   color: rgba(255,255,255,.5);
   font-size: 12px;
   line-height: 1.6;
}


/* ===== Catalogue ===== */

.machine-catalogue {
   margin-top: 55px;
   padding-top: 45px;
   border-top: 1px solid rgba(255,255,255,.08);
}

.machine-catalogue-heading {
   max-width: 760px;
   margin-bottom: 30px;
}

.machine-catalogue-heading > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.4px;
   text-transform: uppercase;
}

.machine-catalogue-heading h4 {
   margin-bottom: 13px;
   font-size: 23px;
}

.machine-catalogue-heading p {
   color: rgba(255,255,255,.55);
   line-height: 1.7;
}

.machine-name-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   border-top: 1px solid rgba(255,255,255,.08);
   border-left: 1px solid rgba(255,255,255,.08);
}

.machine-name-card {
   display: grid;
   grid-template-columns: 30px 1fr;
   gap: 12px;
   padding: 22px;
   border-right: 1px solid rgba(255,255,255,.08);
   border-bottom: 1px solid rgba(255,255,255,.08);
}

.machine-name-card > span {
   color: var(--color-gold);
   font-size: 9px;
}

.machine-name-card h5 {
   margin-bottom: 7px;
   color: #fff;
   font-family: "Montserrat", sans-serif;
   font-size: 13px;
   text-transform: uppercase;
}

.machine-name-card p {
   margin: 0;
   color: rgba(255,255,255,.46);
   font-size: 11px;
   line-height: 1.55;
}


/* ===== GIT ===== */

.git-block {
   display: grid;
   grid-template-columns: 55px 260px 1fr;
   gap: 25px;
   align-items: center;
   margin-top: 40px;
   padding: 30px;
   background: rgba(230,180,80,.055);
   border: 1px solid rgba(230,180,80,.15);
}

.git-icon {
   width: 48px;
   height: 48px;
   display: flex;
   align-items: center;
   justify-content: center;
   border: 1px solid rgba(230,180,80,.25);
   color: var(--color-gold);
}

.git-title span {
   display: block;
   margin-bottom: 5px;
   color: var(--color-gold);
   font-size: 8px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.git-title h4 {
   margin: 0;
   font-size: 16px;
}

.git-copy p {
   margin: 0;
   color: rgba(255,255,255,.58);
   font-size: 13px;
   line-height: 1.7;
}


/* ===== Carded Play Perth ===== */

.machine-carded-play {
   display: grid;
   grid-template-columns: .65fr 1.35fr;
   gap: 50px;
   margin-top: 35px;
   padding: 40px;
   background: var(--color-dark-gray);
}

.machine-carded-title span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.4px;
   text-transform: uppercase;
}

.machine-carded-title h4 {
   margin: 0;
   font-size: 22px;
}

.machine-carded-content > p {
   margin-bottom: 25px;
   color: rgba(255,255,255,.62);
   line-height: 1.7;
}

.machine-carded-steps {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 10px;
}

.machine-carded-steps > div {
   display: grid;
   grid-template-columns: 28px 1fr;
   gap: 10px;
   padding: 15px;
   background: rgba(13,13,15,.45);
}

.machine-carded-steps span {
   color: var(--color-gold);
   font-size: 10px;
}

.machine-carded-steps p {
   margin: 0;
   color: rgba(255,255,255,.58);
   font-size: 11px;
   line-height: 1.5;
}


/* ===== Melbourne ===== */

.melbourne-machine-layout {
   display: grid;
   grid-template-columns: 1fr .75fr;
   gap: 65px;
}

.yourplay-card {
   padding: 32px;
   background:
      linear-gradient(140deg, rgba(230,180,80,.08), transparent 60%),
      var(--color-dark-gray);
   border: 1px solid rgba(230,180,80,.16);
}

.yourplay-icon {
   width: 48px;
   height: 48px;
   margin-bottom: 25px;
   display: flex;
   align-items: center;
   justify-content: center;
   border: 1px solid rgba(230,180,80,.3);
   color: var(--color-gold);
}

.yourplay-card > span {
   color: var(--color-gold);
   font-size: 8px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.yourplay-card h4 {
   margin: 7px 0 13px;
   font-size: 22px;
}

.yourplay-card > p {
   color: rgba(255,255,255,.58);
   font-size: 13px;
   line-height: 1.65;
}

.yourplay-card ul {
   margin-top: 22px;
}

.yourplay-card li {
   margin-top: 10px;
   color: rgba(255,255,255,.65);
   font-size: 12px;
}

.yourplay-card li i {
   margin-right: 8px;
   color: var(--color-gold);
}


/* ===== Melbourne Process ===== */

.melbourne-play-process {
   display: grid;
   grid-template-columns: 1fr 30px 1fr 30px 1fr 30px 1fr;
   align-items: center;
   margin-top: 45px;
   padding-top: 40px;
   border-top: 1px solid rgba(255,255,255,.08);
}

.play-process-item {
   position: relative;
}

.play-process-item > span {
   position: absolute;
   top: 0;
   right: 0;
   color: rgba(255,255,255,.12);
   font-family: "Montserrat", sans-serif;
   font-size: 27px;
}

.play-process-item > i {
   margin-bottom: 20px;
   color: var(--color-gold);
   font-size: 19px;
}

.play-process-item h4 {
   margin-bottom: 9px;
   font-size: 14px;
}

.play-process-item p {
   margin: 0;
   color: rgba(255,255,255,.48);
   font-size: 11px;
   line-height: 1.55;
}

.play-process-line {
   width: 100%;
   height: 1px;
   background: rgba(230,180,80,.25);
}


/* ===== Sydney ===== */

.sydney-machine-note {
   display: grid;
   grid-template-columns: 60px .65fr 1.35fr .55fr;
   gap: 30px;
   align-items: center;
   margin-top: 80px;
   padding: 42px;
   background:
      linear-gradient(110deg, rgba(230,180,80,.07), transparent 45%),
      var(--color-dark);
   border: 1px solid rgba(255,255,255,.07);
}

.sydney-machine-symbol {
   width: 52px;
   height: 52px;
   display: flex;
   align-items: center;
   justify-content: center;
   border: 1px solid rgba(230,180,80,.3);
   color: var(--color-gold);
}

.sydney-machine-heading > span {
   display: block;
   margin-bottom: 7px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.4px;
   text-transform: uppercase;
}

.sydney-machine-heading h3 {
   margin: 0;
   font-size: 22px;
}

.sydney-machine-copy p {
   margin: 0 0 12px;
   color: rgba(255,255,255,.58);
   font-size: 12px;
   line-height: 1.65;
}

.sydney-machine-copy p:last-child {
   margin-bottom: 0;
}

.sydney-machine-link span {
   display: block;
   margin-bottom: 8px;
   color: rgba(255,255,255,.35);
   font-size: 8px;
   text-transform: uppercase;
}

.sydney-machine-link a {
   color: var(--color-gold);
   font-size: 12px;
   text-transform: uppercase;
}

.sydney-machine-link a i {
   margin-left: 7px;
}


/* ===== Bottom Note ===== */

.machines-bottom-note {
   display: flex;
   gap: 15px;
   margin-top: 25px;
   padding: 20px 25px;
   background: rgba(255,255,255,.025);
}

.machines-bottom-note i {
   margin-top: 3px;
   color: var(--color-gold);
}

.machines-bottom-note p {
   margin: 0;
   color: rgba(255,255,255,.43);
   font-size: 11px;
   line-height: 1.6;
}


/* ===== Responsive ===== */

@media (max-width: 1050px) {

   .machines-intro {
      grid-template-columns: 1fr;
   }

   .machines-intro-image {
      height: 420px;
   }

   .machine-property-grid,
   .melbourne-machine-layout {
      grid-template-columns: 1fr;
   }

   .machine-name-grid {
      grid-template-columns: repeat(2, 1fr);
   }

   .sydney-machine-note {
      grid-template-columns: 55px 1fr;
   }

   .sydney-machine-copy,
   .sydney-machine-link {
      grid-column: 2;
   }

}


@media (max-width: 800px) {

   .machines-intro-copy h2 {
      font-size: 36px;
   }

   .machine-availability {
      grid-template-columns: 1fr;
   }

   .machine-availability-item {
      border-right: none;
      border-bottom: 1px solid rgba(255,255,255,.07);
   }

   .machine-availability-item:last-child {
      border-bottom: none;
   }

   .machine-property {
      padding: 35px 28px;
   }

   .machine-property-heading {
      align-items: flex-start;
      flex-direction: column;
   }

   .machine-big-number {
      text-align: left;
   }

   .machine-feature-grid,
   .machine-carded-steps {
      grid-template-columns: 1fr;
   }

   .git-block {
      grid-template-columns: 50px 1fr;
   }

   .git-copy {
      grid-column: 2;
   }

   .machine-carded-play {
      grid-template-columns: 1fr;
      gap: 25px;
   }

   .melbourne-play-process {
      grid-template-columns: 1fr 1fr;
      gap: 30px;
   }

   .play-process-line {
      display: none;
   }

}


@media (max-width: 550px) {

   .machines-intro-copy h2 {
      font-size: 30px;
   }

   .machines-intro-image {
      height: 300px;
   }

   .machine-name-grid {
      grid-template-columns: 1fr;
   }

   .machine-property {
      padding: 30px 20px;
   }

   .melbourne-play-process {
      grid-template-columns: 1fr;
   }

   .sydney-machine-note {
      grid-template-columns: 1fr;
      padding: 30px 22px;
   }

   .sydney-machine-copy,
   .sydney-machine-link {
      grid-column: auto;
   }

}

/**************************************
*
*            TABLE GAMES
*
***************************************/

.table-games-section {
   position: relative;
   background: var(--color-dark);
}


/* ===== Intro ===== */

.table-games-intro {
   display: grid;
   grid-template-columns: .9fr 1.1fr;
   gap: 90px;
   align-items: end;
   margin-bottom: 55px;
}

.table-games-title h2 {
   margin-bottom: 0;
   max-width: 650px;
   font-size: 48px;
   line-height: 1.12;
}

.table-games-copy {
   padding-left: 40px;
   border-left: 1px solid rgba(230,180,80,.35);
}

.table-games-copy p {
   margin-bottom: 17px;
   color: rgba(255,255,255,.65);
   line-height: 1.8;
}

.table-games-copy p:last-child {
   margin-bottom: 0;
}

.table-games-copy .table-games-lead {
   color: #fff;
   font-size: 18px;
   line-height: 1.7;
}


/* ===== Summary ===== */

.table-games-summary {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   margin-bottom: 80px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.07);
}

.table-summary-item {
   padding: 30px;
   border-right: 1px solid rgba(255,255,255,.07);
}

.table-summary-item:last-child {
   border-right: none;
}

.table-summary-item.featured {
   background: rgba(230,180,80,.045);
}

.table-summary-item > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   font-weight: 700;
   letter-spacing: 1.4px;
   text-transform: uppercase;
}

.table-summary-item strong {
   display: block;
   margin-bottom: 10px;
   color: #fff;
   font-family: "Montserrat", sans-serif;
   font-size: 19px;
   font-weight: 500;
}

.table-summary-item p {
   margin: 0;
   color: rgba(255,255,255,.5);
   font-size: 12px;
   line-height: 1.65;
}


/* ===== Core Families ===== */

.game-families {
   margin-bottom: 85px;
}

.game-families-heading {
   max-width: 750px;
   margin-bottom: 35px;
}

.game-families-heading > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.4px;
   text-transform: uppercase;
}

.game-families-heading h3 {
   margin-bottom: 13px;
   font-size: 30px;
}

.game-families-heading p {
   margin: 0;
   color: rgba(255,255,255,.53);
   line-height: 1.7;
}

.game-family-grid {
   display: grid;
   grid-template-columns: repeat(4, 1fr);
   gap: 12px;
}

.game-family-card {
   padding: 30px 25px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.06);
   transition: transform .3s ease, border-color .3s ease;
}

.game-family-card:hover {
   transform: translateY(-4px);
   border-color: rgba(230,180,80,.22);
}

.game-family-icon {
   width: 45px;
   height: 45px;
   margin-bottom: 25px;
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--color-gold);
   border: 1px solid rgba(230,180,80,.25);
}

.game-family-type {
   display: block;
   margin-bottom: 7px;
   color: rgba(255,255,255,.35);
   font-size: 8px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.game-family-card h4 {
   margin-bottom: 14px;
   font-size: 17px;
}

.game-family-card > p {
   min-height: 125px;
   margin: 0;
   color: rgba(255,255,255,.54);
   font-size: 12px;
   line-height: 1.65;
}

.game-property-tags {
   display: flex;
   flex-wrap: wrap;
   gap: 5px;
   margin-top: 22px;
}

.game-property-tags span {
   padding: 5px 8px;
   background: rgba(255,255,255,.035);
   color: rgba(255,255,255,.5);
   font-size: 8px;
   letter-spacing: .5px;
   text-transform: uppercase;
}


/* ===== Property Blocks ===== */

.table-property-block {
   margin-top: 30px;
   padding: 50px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.06);
}

.table-property-perth {
   background:
      linear-gradient(
         120deg,
         rgba(230,180,80,.065),
         transparent 42%
      ),
      var(--color-dark-gray);
}

.table-property-sydney {
   background:
      linear-gradient(
         130deg,
         rgba(230,180,80,.045),
         transparent 40%
      ),
      var(--color-dark-gray);
}

.table-property-header {
   display: flex;
   justify-content: space-between;
   align-items: flex-end;
   gap: 30px;
   padding-bottom: 30px;
   margin-bottom: 40px;
   border-bottom: 1px solid rgba(255,255,255,.08);
}

.table-property-eyebrow {
   display: block;
   margin-bottom: 9px;
   color: var(--color-gold);
   font-size: 9px;
   font-weight: 700;
   letter-spacing: 1.4px;
   text-transform: uppercase;
}

.table-property-header h3 {
   margin-bottom: 10px;
   font-size: 30px;
}

.table-property-header p {
   max-width: 620px;
   margin: 0;
   color: rgba(255,255,255,.48);
   font-size: 13px;
}

.table-property-badge {
   flex-shrink: 0;
   padding: 10px 14px;
   border: 1px solid rgba(230,180,80,.25);
   color: rgba(255,255,255,.62);
   font-size: 9px;
   letter-spacing: 1px;
   text-transform: uppercase;
}

.table-property-badge i {
   margin-right: 7px;
   color: var(--color-gold);
}


/* ===== Melbourne ===== */

.table-property-layout {
   display: grid;
   grid-template-columns: .75fr 1.25fr;
   gap: 55px;
}

.table-property-description p {
   color: rgba(255,255,255,.57);
   line-height: 1.8;
}

.table-property-description .table-property-lead,
.perth-table-intro .table-property-lead,
.sydney-table-intro .table-property-lead {
   color: rgba(255,255,255,.88);
   font-size: 17px;
}

.table-game-list {
   border-top: 1px solid rgba(255,255,255,.07);
}

.table-game-row {
   display: grid;
   grid-template-columns: 45px 1fr;
   gap: 18px;
   padding: 20px 0;
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.table-game-icon {
   width: 38px;
   height: 38px;
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--color-gold);
   border: 1px solid rgba(230,180,80,.2);
}

.table-game-row h4 {
   margin-bottom: 6px;
   font-size: 14px;
}

.table-game-row p {
   margin: 0;
   color: rgba(255,255,255,.48);
   font-size: 11px;
   line-height: 1.55;
}


/* ===== Property Note ===== */

.table-property-note {
   display: grid;
   grid-template-columns: 25px 1fr auto;
   gap: 18px;
   align-items: center;
   margin-top: 35px;
   padding: 22px 25px;
   background: rgba(13,13,15,.45);
   border-left: 2px solid var(--color-gold);
}

.table-property-note > i {
   color: var(--color-gold);
}

.table-property-note p {
   margin: 0;
   color: rgba(255,255,255,.5);
   font-size: 11px;
   line-height: 1.6;
}

.table-property-note a {
   color: var(--color-gold);
   font-size: 10px;
   letter-spacing: .6px;
   text-transform: uppercase;
   white-space: nowrap;
}

.table-property-note a i {
   margin-left: 6px;
}


/* ===== Perth ===== */

.table-count {
   text-align: right;
}

.table-count strong {
   display: block;
   color: var(--color-gold);
   font-family: "Montserrat", sans-serif;
   font-size: 38px;
   font-weight: 500;
}

.table-count span {
   color: rgba(255,255,255,.4);
   font-size: 9px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.perth-table-intro {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 55px;
   margin-bottom: 35px;
}

.perth-table-intro p {
   margin: 0;
   color: rgba(255,255,255,.55);
   line-height: 1.8;
}

.perth-table-grid {
   display: grid;
   grid-template-columns: repeat(4, 1fr);
   border-left: 1px solid rgba(255,255,255,.07);
   border-top: 1px solid rgba(255,255,255,.07);
}

.perth-table-game {
   min-height: 185px;
   padding: 23px;
   border-right: 1px solid rgba(255,255,255,.07);
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.perth-table-game > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 8px;
   letter-spacing: 1.1px;
   text-transform: uppercase;
}

.perth-table-game h4 {
   margin-bottom: 11px;
   font-size: 15px;
}

.perth-table-game p {
   margin: 0;
   color: rgba(255,255,255,.48);
   font-size: 11px;
   line-height: 1.55;
}


/* ===== Progressive ===== */

.progressive-table-feature {
   display: grid;
   grid-template-columns: 50px .65fr 1.35fr;
   gap: 25px;
   align-items: center;
   margin-top: 25px;
   padding: 27px;
   background: rgba(230,180,80,.05);
   border: 1px solid rgba(230,180,80,.14);
}

.progressive-icon {
   width: 45px;
   height: 45px;
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--color-gold);
   border: 1px solid rgba(230,180,80,.24);
}

.progressive-table-feature span {
   color: var(--color-gold);
   font-size: 8px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.progressive-table-feature h4 {
   margin: 5px 0 0;
   font-size: 15px;
}

.progressive-table-feature > p {
   margin: 0;
   color: rgba(255,255,255,.52);
   font-size: 12px;
   line-height: 1.6;
}


/* ===== Sydney ===== */

.sydney-table-layout {
   display: grid;
   grid-template-columns: .8fr 1.2fr;
   gap: 55px;
   align-items: start;
}

.sydney-table-intro p {
   color: rgba(255,255,255,.56);
   line-height: 1.8;
}

.sydney-game-list {
   border-top: 1px solid rgba(255,255,255,.08);
}

.sydney-game-list > div {
   display: grid;
   grid-template-columns: 40px 1fr;
   gap: 15px;
   padding: 20px 0;
   border-bottom: 1px solid rgba(255,255,255,.08);
}

.sydney-game-list span {
   color: var(--color-gold);
   font-size: 9px;
}

.sydney-game-list h4 {
   margin: 0;
   font-size: 15px;
}


/* ===== Sydney Tech ===== */

.sydney-table-tech {
   display: grid;
   grid-template-columns: .65fr 1.35fr 60px;
   gap: 35px;
   align-items: center;
   margin-top: 40px;
   padding: 35px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.065);
}

.sydney-tech-heading span {
   display: block;
   margin-bottom: 7px;
   color: var(--color-gold);
   font-size: 8px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.sydney-tech-heading h4 {
   margin: 0;
   font-size: 18px;
}

.sydney-tech-copy p {
   margin: 0 0 10px;
   color: rgba(255,255,255,.52);
   font-size: 12px;
   line-height: 1.65;
}

.sydney-tech-copy p:last-child {
   margin-bottom: 0;
}

.sydney-tech-icon {
   width: 55px;
   height: 55px;
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--color-gold);
   border: 1px solid rgba(230,180,80,.25);
   font-size: 20px;
}


/* ===== Bottom Choice ===== */

.table-games-bottom {
   margin-top: 80px;
}

.table-games-bottom-heading {
   margin-bottom: 30px;
}

.table-games-bottom-heading > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.4px;
   text-transform: uppercase;
}

.table-games-bottom-heading h3 {
   margin: 0;
   font-size: 28px;
}

.table-choice-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 12px;
}

.table-choice-card {
   padding: 30px;
   background: var(--color-dark-gray);
   border-top: 1px solid rgba(230,180,80,.35);
}

.table-choice-card span {
   display: block;
   margin-bottom: 7px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.table-choice-card h4 {
   margin-bottom: 13px;
   font-size: 17px;
}

.table-choice-card p {
   margin: 0;
   color: rgba(255,255,255,.5);
   font-size: 12px;
   line-height: 1.65;
}


/* ===== Disclaimer ===== */

.table-games-disclaimer {
   display: flex;
   gap: 14px;
   margin-top: 20px;
   padding: 20px 24px;
   background: rgba(255,255,255,.025);
}

.table-games-disclaimer i {
   margin-top: 3px;
   color: var(--color-gold);
}

.table-games-disclaimer p {
   margin: 0;
   color: rgba(255,255,255,.4);
   font-size: 11px;
   line-height: 1.6;
}


/* ===== Responsive ===== */

@media (max-width: 1100px) {

   .game-family-grid,
   .perth-table-grid {
      grid-template-columns: repeat(2, 1fr);
   }

   .table-property-layout,
   .sydney-table-layout {
      grid-template-columns: 1fr;
   }

}


@media (max-width: 800px) {

   .table-games-intro {
      grid-template-columns: 1fr;
      gap: 30px;
   }

   .table-games-title h2 {
      font-size: 36px;
   }

   .table-games-copy {
      padding-left: 25px;
   }

   .table-games-summary,
   .table-choice-grid {
      grid-template-columns: 1fr;
   }

   .table-summary-item {
      border-right: none;
      border-bottom: 1px solid rgba(255,255,255,.07);
   }

   .table-property-block {
      padding: 35px 28px;
   }

   .table-property-header {
      flex-direction: column;
      align-items: flex-start;
   }

   .table-count {
      text-align: left;
   }

   .perth-table-intro {
      grid-template-columns: 1fr;
      gap: 15px;
   }

   .sydney-table-tech {
      grid-template-columns: 1fr;
   }

   .sydney-tech-icon {
      order: -1;
   }

   .progressive-table-feature {
      grid-template-columns: 50px 1fr;
   }

   .progressive-table-feature > p {
      grid-column: 2;
   }

}


@media (max-width: 560px) {

   .table-games-title h2 {
      font-size: 30px;
   }

   .game-family-grid,
   .perth-table-grid {
      grid-template-columns: 1fr;
   }

   .table-property-block {
      padding: 30px 20px;
   }

   .table-property-note {
      grid-template-columns: 25px 1fr;
   }

   .table-property-note a {
      grid-column: 2;
   }

}

/**************************************
*
*       ELECTRONIC TABLE GAMES
*
***************************************/

.etg-section {
   position: relative;
   background: var(--color-dark-gray);
}


/* ===== Intro ===== */

.etg-intro {
   display: grid;
   grid-template-columns: .9fr 1.1fr;
   gap: 90px;
   align-items: end;
   margin-bottom: 60px;
}

.etg-intro-title h2 {
   margin: 0;
   font-size: 48px;
   line-height: 1.12;
}

.etg-intro-copy {
   padding-left: 40px;
   border-left: 1px solid rgba(230,180,80,.35);
}

.etg-intro-copy p {
   margin-bottom: 17px;
   color: rgba(255,255,255,.65);
   line-height: 1.8;
}

.etg-intro-copy p:last-child {
   margin-bottom: 0;
}

.etg-intro-copy .etg-lead {
   color: #fff;
   font-size: 18px;
   line-height: 1.7;
}


/* ===== Explainer ===== */

.etg-explainer {
   display: grid;
   grid-template-columns: .7fr 1.3fr;
   gap: 55px;
   margin-bottom: 80px;
   padding: 45px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.07);
}

.etg-explainer-main > span {
   display: block;
   margin-bottom: 9px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.4px;
   text-transform: uppercase;
}

.etg-explainer-main h3 {
   margin-bottom: 18px;
   font-size: 25px;
   line-height: 1.35;
}

.etg-explainer-main p {
   margin: 0;
   color: rgba(255,255,255,.55);
   line-height: 1.75;
}

.etg-type-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 10px;
}

.etg-type-card {
   padding: 25px 21px;
   background: rgba(255,255,255,.025);
   border: 1px solid rgba(255,255,255,.055);
}

.etg-type-card > i {
   margin-bottom: 25px;
   color: var(--color-gold);
   font-size: 19px;
}

.etg-type-card span {
   display: block;
   margin-bottom: 6px;
   color: rgba(255,255,255,.35);
   font-size: 8px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.etg-type-card h4 {
   margin-bottom: 11px;
   font-size: 14px;
}

.etg-type-card p {
   margin: 0;
   color: rgba(255,255,255,.48);
   font-size: 11px;
   line-height: 1.6;
}


/* ===== Property Containers ===== */

.etg-property {
   margin-top: 30px;
   padding: 50px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.065);
}

.etg-perth {
   background:
      linear-gradient(
         120deg,
         rgba(230,180,80,.07),
         transparent 42%
      ),
      var(--color-dark);
}

.etg-sydney {
   background:
      linear-gradient(
         135deg,
         rgba(230,180,80,.04),
         transparent 45%
      ),
      var(--color-dark);
}

.etg-property-header {
   display: flex;
   justify-content: space-between;
   align-items: flex-end;
   gap: 30px;
   padding-bottom: 30px;
   margin-bottom: 40px;
   border-bottom: 1px solid rgba(255,255,255,.08);
}

.etg-eyebrow {
   display: block;
   margin-bottom: 9px;
   color: var(--color-gold);
   font-size: 9px;
   font-weight: 700;
   letter-spacing: 1.4px;
   text-transform: uppercase;
}

.etg-property-header h3 {
   margin-bottom: 9px;
   font-size: 30px;
}

.etg-property-header p {
   max-width: 650px;
   margin: 0;
   color: rgba(255,255,255,.46);
   font-size: 13px;
}

.etg-property-badge {
   flex-shrink: 0;
   padding: 10px 14px;
   color: rgba(255,255,255,.65);
   border: 1px solid rgba(230,180,80,.25);
   font-size: 9px;
   letter-spacing: 1px;
   text-transform: uppercase;
}

.etg-property-badge i {
   margin-right: 7px;
   color: var(--color-gold);
}


/* ===== Melbourne ===== */

.etg-property-layout {
   display: grid;
   grid-template-columns: .75fr 1.25fr;
   gap: 60px;
}

.etg-property-copy p {
   margin-bottom: 18px;
   color: rgba(255,255,255,.57);
   line-height: 1.8;
}

.etg-property-copy .etg-property-lead,
.sydney-etg-copy .etg-property-lead {
   color: rgba(255,255,255,.89);
   font-size: 17px;
}

.melbourne-etg-grid {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   border-top: 1px solid rgba(255,255,255,.07);
   border-left: 1px solid rgba(255,255,255,.07);
}

.melbourne-etg-card {
   min-height: 165px;
   padding: 24px;
   border-right: 1px solid rgba(255,255,255,.07);
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.melbourne-etg-card > span {
   display: block;
   margin-bottom: 7px;
   color: var(--color-gold);
   font-size: 8px;
   letter-spacing: 1.1px;
   text-transform: uppercase;
}

.melbourne-etg-card h4 {
   margin-bottom: 11px;
   font-size: 15px;
}

.melbourne-etg-card p {
   margin: 0;
   color: rgba(255,255,255,.47);
   font-size: 11px;
   line-height: 1.55;
}

.melbourne-etg-card.etg-more {
   background: rgba(230,180,80,.045);
}

.melbourne-etg-card.etg-more > i {
   display: block;
   margin-bottom: 18px;
   color: var(--color-gold);
}


/* ===== ETG Access ===== */

.etg-access-block {
   display: grid;
   grid-template-columns: 55px .7fr 1.3fr;
   gap: 25px;
   align-items: center;
   margin-top: 35px;
   padding: 27px;
   background: rgba(255,255,255,.025);
   border-left: 2px solid var(--color-gold);
}

.etg-access-icon {
   width: 48px;
   height: 48px;
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--color-gold);
   border: 1px solid rgba(230,180,80,.25);
}

.etg-access-heading span {
   display: block;
   margin-bottom: 5px;
   color: var(--color-gold);
   font-size: 8px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.etg-access-heading h4 {
   margin: 0;
   font-size: 16px;
}

.etg-access-copy p {
   margin: 0;
   color: rgba(255,255,255,.53);
   font-size: 12px;
   line-height: 1.65;
}


/* ===== Perth Stadium ===== */

.stadium-feature {
   display: grid;
   grid-template-columns: .42fr 1.15fr .65fr;
   gap: 40px;
   align-items: center;
   padding: 38px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(230,180,80,.14);
}

.stadium-number span,
.stadium-number small {
   display: block;
   color: rgba(255,255,255,.4);
   font-size: 8px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.stadium-number strong {
   display: block;
   margin: 3px 0;
   color: var(--color-gold);
   font-family: "Montserrat", sans-serif;
   font-size: 38px;
   font-weight: 500;
}

.stadium-copy h4 {
   margin-bottom: 13px;
   font-size: 19px;
}

.stadium-copy p {
   margin-bottom: 12px;
   color: rgba(255,255,255,.53);
   font-size: 12px;
   line-height: 1.65;
}

.stadium-copy p:last-child {
   margin-bottom: 0;
}

.stadium-games {
   display: grid;
   gap: 8px;
}

.stadium-games > div {
   display: flex;
   align-items: center;
   gap: 12px;
   padding: 13px 15px;
   background: rgba(13,13,15,.48);
}

.stadium-games i {
   width: 20px;
   color: var(--color-gold);
   text-align: center;
}

.stadium-games span {
   color: rgba(255,255,255,.67);
   font-size: 11px;
   text-transform: uppercase;
}


/* ===== Perth Catalogue ===== */

.perth-etg-catalogue {
   display: grid;
   grid-template-columns: repeat(4, 1fr);
   gap: 10px;
   margin-top: 30px;
}

.perth-etg-card {
   padding: 27px 23px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.055);
}

.perth-etg-icon {
   width: 42px;
   height: 42px;
   margin-bottom: 23px;
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--color-gold);
   border: 1px solid rgba(230,180,80,.22);
}

.perth-etg-card > span {
   display: block;
   margin-bottom: 6px;
   color: rgba(255,255,255,.35);
   font-size: 8px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.perth-etg-card h4 {
   margin-bottom: 11px;
   font-size: 14px;
}

.perth-etg-card p {
   margin: 0;
   color: rgba(255,255,255,.47);
   font-size: 11px;
   line-height: 1.6;
}

.perth-stadium-note {
   display: flex;
   gap: 18px;
   margin-top: 18px;
   padding: 21px 24px;
   background: rgba(230,180,80,.045);
}

.perth-stadium-note > i {
   margin-top: 3px;
   color: var(--color-gold);
}

.perth-stadium-note span {
   display: block;
   margin-bottom: 4px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1px;
   text-transform: uppercase;
}

.perth-stadium-note p {
   margin: 0;
   color: rgba(255,255,255,.48);
   font-size: 11px;
   line-height: 1.6;
}


/* ===== Sydney ===== */

.sydney-etg-layout {
   display: grid;
   grid-template-columns: .8fr 1.2fr;
   gap: 60px;
}

.sydney-etg-copy p {
   color: rgba(255,255,255,.56);
   line-height: 1.8;
}

.sydney-etg-games {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   border-top: 1px solid rgba(255,255,255,.07);
   border-left: 1px solid rgba(255,255,255,.07);
}

.sydney-etg-game {
   position: relative;
   min-height: 135px;
   padding: 25px;
   border-right: 1px solid rgba(255,255,255,.07);
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.sydney-etg-game > span {
   position: absolute;
   right: 20px;
   top: 18px;
   color: rgba(255,255,255,.12);
   font-size: 24px;
}

.sydney-etg-game i {
   display: block;
   margin-bottom: 24px;
   color: var(--color-gold);
   font-size: 17px;
}

.sydney-etg-game h4 {
   margin: 0;
   font-size: 14px;
}


/* ===== Sydney Access ===== */

.sydney-etg-access {
   display: grid;
   grid-template-columns: 35px 1fr 35px 1fr 35px 1fr;
   gap: 18px;
   margin-top: 35px;
   padding-top: 32px;
   border-top: 1px solid rgba(255,255,255,.08);
}

.sydney-access-number {
   width: 30px;
   height: 30px;
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--color-gold);
   border: 1px solid rgba(230,180,80,.25);
   font-size: 9px;
}

.sydney-etg-access span {
   display: block;
   margin-bottom: 5px;
   color: var(--color-gold);
   font-size: 8px;
   letter-spacing: 1.1px;
   text-transform: uppercase;
}

.sydney-etg-access h4 {
   margin-bottom: 7px;
   font-size: 13px;
}

.sydney-etg-access p {
   margin: 0;
   color: rgba(255,255,255,.45);
   font-size: 10px;
   line-height: 1.55;
}


/* ===== Difference Block ===== */

.etg-difference {
   margin-top: 80px;
}

.etg-difference-heading {
   max-width: 700px;
   margin-bottom: 30px;
}

.etg-difference-heading > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.etg-difference-heading h3 {
   margin-bottom: 11px;
   font-size: 27px;
}

.etg-difference-heading p {
   color: rgba(255,255,255,.5);
}

.etg-difference-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 10px;
}

.difference-card {
   position: relative;
   padding: 30px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.055);
}

.difference-card.active {
   background:
      linear-gradient(
         135deg,
         rgba(230,180,80,.08),
         transparent 65%
      ),
      var(--color-dark);
   border-color: rgba(230,180,80,.2);
}

.difference-card > span {
   position: absolute;
   right: 20px;
   top: 17px;
   color: rgba(255,255,255,.11);
   font-size: 26px;
}

.difference-card i {
   margin-bottom: 25px;
   color: var(--color-gold);
   font-size: 19px;
}

.difference-card h4 {
   margin-bottom: 12px;
   font-size: 15px;
}

.difference-card p {
   margin: 0;
   color: rgba(255,255,255,.48);
   font-size: 11px;
   line-height: 1.6;
}


/* ===== Choice Strip ===== */

.etg-choice-strip {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   margin-top: 45px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.07);
}

.etg-choice-strip > div {
   padding: 27px 30px;
   border-right: 1px solid rgba(255,255,255,.07);
}

.etg-choice-strip > div:last-child {
   border-right: none;
}

.etg-choice-strip span {
   display: block;
   margin-bottom: 6px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.etg-choice-strip strong {
   display: block;
   margin-bottom: 9px;
   color: #fff;
   font-family: "Montserrat", sans-serif;
   font-size: 15px;
   font-weight: 500;
}

.etg-choice-strip p {
   margin: 0;
   color: rgba(255,255,255,.46);
   font-size: 11px;
   line-height: 1.6;
}


/* ===== Disclaimer ===== */

.etg-disclaimer {
   display: flex;
   gap: 14px;
   margin-top: 18px;
   padding: 18px 23px;
   background: rgba(255,255,255,.022);
}

.etg-disclaimer i {
   margin-top: 3px;
   color: var(--color-gold);
}

.etg-disclaimer p {
   margin: 0;
   color: rgba(255,255,255,.4);
   font-size: 11px;
   line-height: 1.6;
}


/* ===== Responsive ===== */

@media (max-width: 1100px) {

   .etg-explainer,
   .etg-property-layout,
   .sydney-etg-layout {
      grid-template-columns: 1fr;
   }

   .perth-etg-catalogue {
      grid-template-columns: repeat(2, 1fr);
   }

   .stadium-feature {
      grid-template-columns: .5fr 1.5fr;
   }

   .stadium-games {
      grid-column: 1 / -1;
      grid-template-columns: repeat(3, 1fr);
   }

}


@media (max-width: 800px) {

   .etg-intro {
      grid-template-columns: 1fr;
      gap: 30px;
   }

   .etg-intro-title h2 {
      font-size: 36px;
   }

   .etg-intro-copy {
      padding-left: 25px;
   }

   .etg-type-grid,
   .etg-difference-grid,
   .etg-choice-strip {
      grid-template-columns: 1fr;
   }

   .etg-property {
      padding: 35px 28px;
   }

   .etg-property-header {
      flex-direction: column;
      align-items: flex-start;
   }

   .etg-access-block {
      grid-template-columns: 50px 1fr;
   }

   .etg-access-copy {
      grid-column: 2;
   }

   .sydney-etg-access {
      grid-template-columns: 35px 1fr;
   }

   .etg-choice-strip > div {
      border-right: none;
      border-bottom: 1px solid rgba(255,255,255,.07);
   }

   .etg-choice-strip > div:last-child {
      border-bottom: none;
   }

}


@media (max-width: 560px) {

   .etg-intro-title h2 {
      font-size: 30px;
   }

   .etg-explainer,
   .etg-property {
      padding: 28px 20px;
   }

   .melbourne-etg-grid,
   .perth-etg-catalogue,
   .sydney-etg-games {
      grid-template-columns: 1fr;
   }

   .stadium-feature {
      grid-template-columns: 1fr;
      padding: 28px 22px;
   }

   .stadium-games {
      grid-column: auto;
      grid-template-columns: 1fr;
   }

}

/**************************************
*
*               POKER
*
***************************************/

.poker-section {
   position: relative;
   background: var(--color-dark);
}


/* ===== Intro ===== */

.poker-intro {
   display: grid;
   grid-template-columns: .9fr 1.1fr;
   gap: 90px;
   align-items: end;
   margin-bottom: 55px;
}

.poker-intro-title h2 {
   margin: 0;
   font-size: 48px;
   line-height: 1.12;
}

.poker-intro-copy {
   padding-left: 40px;
   border-left: 1px solid rgba(230,180,80,.35);
}

.poker-intro-copy p {
   margin-bottom: 17px;
   color: rgba(255,255,255,.65);
   line-height: 1.8;
}

.poker-intro-copy p:last-child {
   margin-bottom: 0;
}

.poker-intro-copy .poker-lead {
   color: #fff;
   font-size: 18px;
   line-height: 1.7;
}


/* ===== Status ===== */

.poker-status-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   margin-bottom: 80px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.07);
}

.poker-status-card {
   padding: 30px;
   border-right: 1px solid rgba(255,255,255,.07);
}

.poker-status-card:last-child {
   border-right: none;
}

.poker-status-main {
   background:
      linear-gradient(
         135deg,
         rgba(230,180,80,.07),
         transparent 60%
      );
}

.poker-status-card > span {
   display: block;
   margin-bottom: 14px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.4px;
   text-transform: uppercase;
}

.poker-status-heading {
   display: flex;
   gap: 10px;
   align-items: center;
   margin-bottom: 17px;
}

.poker-status-heading i {
   color: var(--color-gold);
   font-size: 11px;
}

.poker-status-heading h3 {
   margin: 0;
   font-size: 15px;
}

.poker-status-card > strong {
   display: block;
   margin-bottom: 8px;
   color: #fff;
   font-family: "Montserrat", sans-serif;
   font-size: 22px;
   font-weight: 500;
}

.poker-status-card > p {
   margin: 0;
   color: rgba(255,255,255,.48);
   font-size: 11px;
   line-height: 1.6;
}


/* ===== Property ===== */

.poker-property {
   margin-top: 30px;
   padding: 50px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.065);
}


/* ===== Melbourne Hero ===== */

.poker-property-hero {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 55px;
   align-items: stretch;
}

.poker-property-image {
   min-height: 480px;
   position: relative;
   overflow: hidden;
}

.poker-property-image::after {
   content: "";
   position: absolute;
   inset: 0;
   background: linear-gradient(
      to top,
      rgba(13,13,15,.85),
      rgba(13,13,15,.06) 65%
   );
}

.poker-property-image img {
   width: 100%;
   height: 100%;
   object-fit: cover;
}

.poker-image-overlay {
   position: absolute;
   left: 28px;
   bottom: 27px;
   z-index: 2;
}

.poker-image-overlay span,
.poker-image-overlay small {
   display: block;
   color: rgba(255,255,255,.55);
   font-size: 9px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.poker-image-overlay strong {
   display: block;
   margin: 4px 0;
   color: #fff;
   font-family: "Montserrat", sans-serif;
   font-size: 22px;
   font-weight: 500;
}


/* ===== Property Intro ===== */

.poker-property-intro {
   padding: 20px 10px;
}

.poker-eyebrow {
   display: block;
   margin-bottom: 9px;
   color: var(--color-gold);
   font-size: 9px;
   font-weight: 700;
   letter-spacing: 1.4px;
   text-transform: uppercase;
}

.poker-property-intro h3,
.poker-property-header h3 {
   margin-bottom: 20px;
   font-size: 30px;
}

.poker-property-intro p,
.perth-poker-copy p {
   margin-bottom: 17px;
   color: rgba(255,255,255,.57);
   line-height: 1.8;
}

.poker-property-intro .poker-property-lead,
.perth-poker-copy .poker-property-lead {
   color: rgba(255,255,255,.9);
   font-size: 17px;
}


/* ===== Hours ===== */

.poker-hours {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   margin-top: 35px;
   border-top: 1px solid rgba(255,255,255,.08);
   border-left: 1px solid rgba(255,255,255,.08);
}

.poker-hours > div {
   padding: 22px;
   border-right: 1px solid rgba(255,255,255,.08);
   border-bottom: 1px solid rgba(255,255,255,.08);
}

.poker-hours i {
   display: block;
   margin-bottom: 18px;
   color: var(--color-gold);
}

.poker-hours span {
   display: block;
   margin-bottom: 4px;
   color: rgba(255,255,255,.36);
   font-size: 8px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.poker-hours strong {
   color: #fff;
   font-family: "Montserrat", sans-serif;
   font-size: 13px;
   font-weight: 500;
}


/* ===== Cash Games ===== */

.melbourne-poker-games {
   margin-top: 55px;
   padding-top: 45px;
   border-top: 1px solid rgba(255,255,255,.08);
}

.poker-subheading {
   max-width: 760px;
   margin-bottom: 30px;
}

.poker-subheading > span,
.poker-stakes-heading > span,
.championship-heading > span,
.poker-choice-heading > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.poker-subheading h4,
.poker-stakes-heading h4,
.championship-heading h4 {
   margin-bottom: 12px;
   font-size: 23px;
}

.poker-subheading p {
   margin: 0;
   color: rgba(255,255,255,.51);
   line-height: 1.7;
}

.poker-game-grid {
   display: grid;
   grid-template-columns: repeat(4, 1fr);
   gap: 10px;
}

.poker-game-card {
   padding: 27px 23px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.055);
}

.poker-game-card > span {
   display: block;
   margin-bottom: 20px;
   color: rgba(255,255,255,.35);
   font-size: 8px;
   letter-spacing: 1.1px;
   text-transform: uppercase;
}

.poker-game-card > i {
   display: block;
   margin-bottom: 18px;
   color: var(--color-gold);
   font-size: 18px;
}

.poker-game-card h5 {
   margin-bottom: 10px;
   color: #fff;
   font-family: "Montserrat", sans-serif;
   font-size: 14px;
   text-transform: uppercase;
}

.poker-game-card p {
   margin: 0;
   color: rgba(255,255,255,.46);
   font-size: 11px;
   line-height: 1.55;
}


/* ===== Stakes ===== */

.poker-stakes {
   margin-top: 40px;
   padding: 35px;
   background: var(--color-dark);
}

.poker-stakes-heading {
   margin-bottom: 25px;
}

.poker-stakes-grid {
   display: grid;
   grid-template-columns: repeat(6, 1fr);
   border-top: 1px solid rgba(255,255,255,.07);
   border-left: 1px solid rgba(255,255,255,.07);
}

.poker-stakes-grid > div {
   padding: 20px 15px;
   border-right: 1px solid rgba(255,255,255,.07);
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.poker-stakes-grid span,
.poker-stakes-grid small {
   display: block;
   color: rgba(255,255,255,.35);
   font-size: 8px;
   letter-spacing: 1px;
   text-transform: uppercase;
}

.poker-stakes-grid strong {
   display: block;
   margin: 4px 0;
   color: var(--color-gold);
   font-family: "Montserrat", sans-serif;
   font-size: 17px;
   font-weight: 500;
}

.poker-stakes-note {
   margin: 16px 0 0;
   color: rgba(255,255,255,.37);
   font-size: 10px;
}


/* ===== Tournaments ===== */

.poker-tournaments {
   display: grid;
   grid-template-columns: .8fr 1.2fr;
   gap: 55px;
   align-items: center;
   margin-top: 35px;
   padding: 37px;
   background: rgba(230,180,80,.045);
   border: 1px solid rgba(230,180,80,.14);
}

.poker-tournament-icon {
   width: 46px;
   height: 46px;
   margin-bottom: 20px;
   display: flex;
   align-items: center;
   justify-content: center;
   border: 1px solid rgba(230,180,80,.25);
   color: var(--color-gold);
}

.poker-tournament-title > span {
   display: block;
   margin-bottom: 7px;
   color: var(--color-gold);
   font-size: 8px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.poker-tournament-title h4 {
   margin-bottom: 11px;
   font-size: 19px;
}

.poker-tournament-title p {
   margin: 0;
   color: rgba(255,255,255,.49);
   font-size: 12px;
   line-height: 1.6;
}

.poker-tournament-days {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
}

.poker-tournament-days > div {
   padding: 25px;
   border: 1px solid rgba(255,255,255,.07);
}

.poker-tournament-days > div + div {
   border-left: none;
}

.poker-tournament-days span {
   display: block;
   margin-bottom: 5px;
   color: rgba(255,255,255,.4);
   font-size: 9px;
   text-transform: uppercase;
}

.poker-tournament-days strong {
   display: block;
   color: var(--color-gold);
   font-family: "Montserrat", sans-serif;
   font-size: 20px;
   font-weight: 500;
}

.poker-tournament-days p {
   margin: 7px 0 0;
   color: rgba(255,255,255,.48);
   font-size: 10px;
}


/* ===== Championships ===== */

.poker-championships {
   margin-top: 45px;
}

.championship-heading {
   margin-bottom: 25px;
}

.championship-grid {
   display: grid;
   grid-template-columns: 1.2fr .8fr;
   gap: 12px;
}

.championship-card {
   padding: 30px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.06);
}

.championship-card.current {
   background:
      linear-gradient(
         130deg,
         rgba(230,180,80,.075),
         transparent 65%
      ),
      var(--color-dark);
}

.championship-date {
   display: block;
   margin-bottom: 12px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.championship-card h5 {
   margin-bottom: 14px;
   color: #fff;
   font-family: "Montserrat", sans-serif;
   font-size: 18px;
   text-transform: uppercase;
}

.championship-card > p {
   margin: 0;
   color: rgba(255,255,255,.51);
   font-size: 12px;
   line-height: 1.65;
}

.championship-tags {
   display: flex;
   flex-wrap: wrap;
   gap: 6px;
   margin-top: 20px;
}

.championship-tags span {
   padding: 5px 8px;
   border: 1px solid rgba(255,255,255,.08);
   color: rgba(255,255,255,.48);
   font-size: 8px;
}


/* ===== Perth ===== */

.poker-perth {
   background:
      linear-gradient(
         120deg,
         rgba(230,180,80,.045),
         transparent 45%
      ),
      var(--color-dark-gray);
}

.poker-property-header {
   display: flex;
   justify-content: space-between;
   align-items: flex-end;
   gap: 30px;
   padding-bottom: 30px;
   margin-bottom: 40px;
   border-bottom: 1px solid rgba(255,255,255,.08);
}

.poker-property-header p {
   margin: 0;
   color: rgba(255,255,255,.45);
   font-size: 13px;
}

.poker-property-badge {
   flex-shrink: 0;
   padding: 10px 14px;
   border: 1px solid rgba(230,180,80,.25);
   color: rgba(255,255,255,.62);
   font-size: 9px;
   text-transform: uppercase;
}

.poker-property-badge i {
   margin-right: 7px;
   color: var(--color-gold);
}

.perth-poker-layout {
   display: grid;
   grid-template-columns: .9fr 1.1fr;
   gap: 60px;
}

.perth-poker-hours {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 10px;
}

.perth-hours-card {
   padding: 30px 25px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.055);
}

.perth-hours-card.featured {
   background:
      linear-gradient(
         135deg,
         rgba(230,180,80,.07),
         transparent 70%
      ),
      var(--color-dark);
}

.perth-hours-card span {
   display: block;
   margin-bottom: 12px;
   color: var(--color-gold);
   font-size: 9px;
   text-transform: uppercase;
}

.perth-hours-card strong {
   display: block;
   margin-bottom: 13px;
   color: #fff;
   font-family: "Montserrat", sans-serif;
   font-size: 24px;
   font-weight: 500;
}

.perth-hours-card p {
   margin: 0;
   color: rgba(255,255,255,.45);
   font-size: 11px;
   line-height: 1.6;
}

.perth-poker-features {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 10px;
   margin-top: 35px;
}

.perth-poker-features > div {
   padding: 27px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.055);
}

.perth-poker-features i {
   margin-bottom: 20px;
   color: var(--color-gold);
   font-size: 18px;
}

.perth-poker-features span {
   display: block;
   margin-bottom: 6px;
   color: rgba(255,255,255,.35);
   font-size: 8px;
   text-transform: uppercase;
}

.perth-poker-features h4 {
   margin-bottom: 10px;
   font-size: 15px;
}

.perth-poker-features p {
   margin: 0;
   color: rgba(255,255,255,.47);
   font-size: 11px;
   line-height: 1.6;
}


/* ===== Sydney ===== */

.poker-sydney {
   display: grid;
   grid-template-columns: 60px .7fr 1.4fr .55fr;
   gap: 30px;
   align-items: center;
   margin-top: 30px;
   padding: 40px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.065);
}

.poker-sydney-icon {
   width: 52px;
   height: 52px;
   display: flex;
   align-items: center;
   justify-content: center;
   border: 1px solid rgba(230,180,80,.25);
   color: var(--color-gold);
}

.poker-sydney-heading span {
   display: block;
   margin-bottom: 7px;
   color: var(--color-gold);
   font-size: 9px;
   text-transform: uppercase;
}

.poker-sydney-heading h3 {
   margin: 0;
   font-size: 20px;
}

.poker-sydney-copy p {
   margin: 0 0 11px;
   color: rgba(255,255,255,.52);
   font-size: 11px;
   line-height: 1.65;
}

.poker-sydney-copy p:last-child {
   margin-bottom: 0;
}

.poker-sydney-action span {
   display: block;
   margin-bottom: 7px;
   color: rgba(255,255,255,.32);
   font-size: 8px;
   text-transform: uppercase;
}

.poker-sydney-action a {
   color: var(--color-gold);
   font-size: 10px;
   text-transform: uppercase;
}

.poker-sydney-action i {
   margin-left: 6px;
}


/* ===== Difference ===== */

.poker-difference {
   margin-top: 80px;
}

.poker-difference-heading {
   max-width: 730px;
   margin-bottom: 30px;
}

.poker-difference-heading > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.poker-difference-heading h3 {
   margin-bottom: 12px;
   font-size: 27px;
}

.poker-difference-heading p {
   margin: 0;
   color: rgba(255,255,255,.48);
   line-height: 1.7;
}

.poker-difference-grid {
   display: grid;
   grid-template-columns: 1fr 70px 1fr;
   align-items: stretch;
}

.poker-difference-card {
   padding: 35px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.06);
}

.poker-difference-card.active {
   border-color: rgba(230,180,80,.2);
}

.poker-difference-icon {
   width: 48px;
   height: 48px;
   margin-bottom: 25px;
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--color-gold);
   border: 1px solid rgba(230,180,80,.25);
}

.poker-difference-card > span {
   display: block;
   margin-bottom: 7px;
   color: var(--color-gold);
   font-size: 8px;
   text-transform: uppercase;
}

.poker-difference-card h4 {
   margin-bottom: 13px;
   font-size: 18px;
}

.poker-difference-card p {
   margin: 0;
   color: rgba(255,255,255,.49);
   font-size: 12px;
   line-height: 1.65;
}

.difference-location {
   margin-top: 22px;
   padding-top: 18px;
   border-top: 1px solid rgba(255,255,255,.07);
   color: rgba(255,255,255,.4);
   font-size: 9px;
   letter-spacing: 1px;
   text-transform: uppercase;
}

.poker-vs {
   display: flex;
   align-items: center;
   justify-content: center;
}

.poker-vs span {
   color: var(--color-gold);
   font-family: "Montserrat", sans-serif;
   font-size: 12px;
}


/* ===== Choice ===== */

.poker-choice {
   margin-top: 60px;
}

.poker-choice-heading {
   margin-bottom: 27px;
}

.poker-choice-heading h3 {
   margin: 0;
   font-size: 26px;
}

.poker-choice-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.07);
}

.poker-choice-grid > div {
   padding: 28px;
   border-right: 1px solid rgba(255,255,255,.07);
}

.poker-choice-grid > div:last-child {
   border-right: none;
}

.poker-choice-grid span {
   display: block;
   margin-bottom: 7px;
   color: rgba(255,255,255,.36);
   font-size: 8px;
   text-transform: uppercase;
}

.poker-choice-grid strong {
   display: block;
   margin-bottom: 10px;
   color: var(--color-gold);
   font-family: "Montserrat", sans-serif;
   font-size: 17px;
   font-weight: 500;
}

.poker-choice-grid p {
   margin: 0;
   color: rgba(255,255,255,.46);
   font-size: 11px;
   line-height: 1.6;
}


/* ===== Note ===== */

.poker-note {
   display: flex;
   gap: 14px;
   margin-top: 18px;
   padding: 19px 23px;
   background: rgba(255,255,255,.025);
}

.poker-note i {
   margin-top: 3px;
   color: var(--color-gold);
}

.poker-note p {
   margin: 0;
   color: rgba(255,255,255,.39);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== Responsive ===== */

@media (max-width: 1100px) {

   .poker-property-hero,
   .perth-poker-layout {
      grid-template-columns: 1fr;
   }

   .poker-property-image {
      min-height: 420px;
   }

   .poker-game-grid {
      grid-template-columns: repeat(2, 1fr);
   }

   .poker-stakes-grid {
      grid-template-columns: repeat(3, 1fr);
   }

   .poker-sydney {
      grid-template-columns: 55px 1fr;
   }

   .poker-sydney-copy,
   .poker-sydney-action {
      grid-column: 2;
   }

}


@media (max-width: 800px) {

   .poker-intro {
      grid-template-columns: 1fr;
      gap: 30px;
   }

   .poker-intro-title h2 {
      font-size: 36px;
   }

   .poker-intro-copy {
      padding-left: 25px;
   }

   .poker-status-grid,
   .perth-poker-features,
   .poker-choice-grid {
      grid-template-columns: 1fr;
   }

   .poker-status-card,
   .poker-choice-grid > div {
      border-right: none;
      border-bottom: 1px solid rgba(255,255,255,.07);
   }

   .poker-property {
      padding: 35px 28px;
   }

   .poker-property-header {
      flex-direction: column;
      align-items: flex-start;
   }

   .poker-tournaments,
   .championship-grid {
      grid-template-columns: 1fr;
   }

   .poker-difference-grid {
      grid-template-columns: 1fr;
      gap: 10px;
   }

   .poker-vs {
      height: 40px;
   }

}


@media (max-width: 560px) {

   .poker-intro-title h2 {
      font-size: 30px;
   }

   .poker-property {
      padding: 28px 20px;
   }

   .poker-property-image {
      min-height: 300px;
   }

   .poker-game-grid,
   .poker-stakes-grid,
   .perth-poker-hours,
   .poker-tournament-days {
      grid-template-columns: 1fr;
   }

   .poker-tournament-days > div + div {
      border-left: 1px solid rgba(255,255,255,.07);
      border-top: none;
   }

   .poker-sydney {
      grid-template-columns: 1fr;
      padding: 30px 22px;
   }

   .poker-sydney-copy,
   .poker-sydney-action {
      grid-column: auto;
   }

}

/**************************************
*
*        JACKPOTS & SPECIAL GAMING
*
***************************************/

.jackpots-section {
   position: relative;
   background: var(--color-dark-gray);
}


/* ===== Intro ===== */

.jackpots-intro {
   display: grid;
   grid-template-columns: .9fr 1.1fr;
   gap: 90px;
   align-items: end;
   margin-bottom: 55px;
}

.jackpots-title h2 {
   margin: 0;
   font-size: 48px;
   line-height: 1.12;
}

.jackpots-copy {
   padding-left: 40px;
   border-left: 1px solid rgba(230,180,80,.35);
}

.jackpots-copy p {
   margin-bottom: 17px;
   color: rgba(255,255,255,.64);
   line-height: 1.8;
}

.jackpots-copy p:last-child {
   margin-bottom: 0;
}

.jackpots-copy .jackpots-lead {
   color: #fff;
   font-size: 18px;
   line-height: 1.7;
}


/* ===== Jackpot Types ===== */

.jackpot-types {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 12px;
   margin-bottom: 80px;
}

.jackpot-type-card {
   padding: 32px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.06);
}

.jackpot-type-card.featured {
   background:
      linear-gradient(
         135deg,
         rgba(230,180,80,.08),
         transparent 65%
      ),
      var(--color-dark);
   border-color: rgba(230,180,80,.2);
}

.jackpot-type-icon {
   width: 48px;
   height: 48px;
   margin-bottom: 25px;
   display: flex;
   align-items: center;
   justify-content: center;
   border: 1px solid rgba(230,180,80,.25);
   color: var(--color-gold);
}

.jackpot-type-card > span {
   display: block;
   margin-bottom: 7px;
   color: var(--color-gold);
   font-size: 8px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.jackpot-type-card h3 {
   margin-bottom: 13px;
   font-size: 18px;
}

.jackpot-type-card p {
   margin: 0;
   color: rgba(255,255,255,.5);
   font-size: 12px;
   line-height: 1.65;
}


/* ===== Property ===== */

.jackpot-property {
   margin-top: 30px;
   padding: 50px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.065);
}

.jackpot-perth {
   background:
      linear-gradient(
         120deg,
         rgba(230,180,80,.07),
         transparent 42%
      ),
      var(--color-dark);
}

.jackpot-property-header {
   display: flex;
   justify-content: space-between;
   align-items: flex-end;
   gap: 30px;
   padding-bottom: 30px;
   margin-bottom: 40px;
   border-bottom: 1px solid rgba(255,255,255,.08);
}

.jackpot-eyebrow {
   display: block;
   margin-bottom: 9px;
   color: var(--color-gold);
   font-size: 9px;
   font-weight: 700;
   letter-spacing: 1.4px;
   text-transform: uppercase;
}

.jackpot-property-header h3 {
   margin-bottom: 9px;
   font-size: 30px;
}

.jackpot-property-header p {
   max-width: 650px;
   margin: 0;
   color: rgba(255,255,255,.45);
   font-size: 13px;
}

.jackpot-property-badge {
   flex-shrink: 0;
   padding: 10px 14px;
   border: 1px solid rgba(230,180,80,.25);
   color: rgba(255,255,255,.63);
   font-size: 9px;
   letter-spacing: 1px;
   text-transform: uppercase;
}

.jackpot-property-badge i {
   margin-right: 7px;
   color: var(--color-gold);
}


/* ===== Perth Intro ===== */

.perth-jackpot-intro {
   display: grid;
   grid-template-columns: 1fr .85fr;
   gap: 60px;
}

.perth-jackpot-intro p,
.melbourne-progressive-copy p {
   margin-bottom: 17px;
   color: rgba(255,255,255,.56);
   line-height: 1.8;
}

.perth-jackpot-intro .jackpot-property-lead,
.melbourne-progressive-copy .jackpot-property-lead {
   color: rgba(255,255,255,.9);
   font-size: 17px;
}

.perth-current-example {
   padding: 30px;
   background: var(--color-dark-gray);
}

.perth-current-example > span {
   display: block;
   margin-bottom: 20px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.current-example-list {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 12px 20px;
}

.current-example-list > div {
   color: rgba(255,255,255,.62);
   font-size: 11px;
}

.current-example-list i {
   margin-right: 8px;
   color: var(--color-gold);
   font-size: 5px;
   vertical-align: middle;
}


/* ===== Mechanics ===== */

.jackpot-machine-mechanics {
   margin-top: 50px;
   padding-top: 40px;
   border-top: 1px solid rgba(255,255,255,.08);
}

.jackpot-mechanics-heading {
   max-width: 760px;
   margin-bottom: 28px;
}

.jackpot-mechanics-heading > span,
.jackpot-pools-heading > span,
.progressive-hands-heading > span,
.jackpot-explainer-heading > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.jackpot-mechanics-heading h4,
.jackpot-pools-heading h4,
.progressive-hands-heading h4 {
   margin-bottom: 12px;
   font-size: 22px;
}

.jackpot-mechanics-heading p {
   margin: 0;
   color: rgba(255,255,255,.49);
   line-height: 1.7;
}

.jackpot-mechanics-grid {
   display: grid;
   grid-template-columns: repeat(4, 1fr);
   gap: 10px;
}

.jackpot-mechanic-card {
   padding: 27px 23px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.055);
}

.jackpot-mechanic-card > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 8px;
   letter-spacing: 1.1px;
   text-transform: uppercase;
}

.jackpot-mechanic-card h5 {
   margin-bottom: 11px;
   color: #fff;
   font-family: "Montserrat", sans-serif;
   font-size: 15px;
   text-transform: uppercase;
}

.jackpot-mechanic-card p {
   margin: 0;
   color: rgba(255,255,255,.46);
   font-size: 11px;
   line-height: 1.6;
}


/* ===== Progressive Poker ===== */

.progressive-poker-block {
   display: grid;
   grid-template-columns: 55px .65fr 1.35fr;
   gap: 28px;
   align-items: center;
   margin-top: 40px;
   padding: 32px;
   background: rgba(230,180,80,.055);
   border: 1px solid rgba(230,180,80,.15);
}

.progressive-poker-symbol {
   width: 50px;
   height: 50px;
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--color-gold);
   border: 1px solid rgba(230,180,80,.25);
}

.progressive-poker-title span {
   display: block;
   margin-bottom: 6px;
   color: var(--color-gold);
   font-size: 8px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.progressive-poker-title h4 {
   margin: 0;
   font-size: 18px;
}

.progressive-poker-copy p {
   margin: 0 0 9px;
   color: rgba(255,255,255,.53);
   font-size: 12px;
   line-height: 1.65;
}

.progressive-poker-copy p:last-child {
   margin-bottom: 0;
}


/* ===== Pools ===== */

.jackpot-pools {
   margin-top: 30px;
   padding: 32px;
   background: var(--color-dark-gray);
}

.jackpot-pool-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   border-top: 1px solid rgba(255,255,255,.07);
   border-left: 1px solid rgba(255,255,255,.07);
   margin-top: 22px;
}

.jackpot-pool-grid > div {
   padding: 22px;
   border-right: 1px solid rgba(255,255,255,.07);
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.jackpot-pool-grid span,
.jackpot-pool-grid small {
   display: block;
   color: rgba(255,255,255,.36);
   font-size: 8px;
   letter-spacing: 1px;
   text-transform: uppercase;
}

.jackpot-pool-grid strong {
   display: block;
   margin: 4px 0;
   color: var(--color-gold);
   font-family: "Montserrat", sans-serif;
   font-size: 22px;
   font-weight: 500;
}

.jackpot-pools > p {
   margin: 18px 0 0;
   color: rgba(255,255,255,.43);
   font-size: 11px;
   line-height: 1.6;
}


/* ===== Live Note ===== */

.live-jackpot-note {
   display: grid;
   grid-template-columns: 50px .8fr 1.2fr;
   gap: 25px;
   align-items: center;
   margin-top: 25px;
   padding: 27px;
   background: rgba(255,255,255,.025);
   border-left: 2px solid var(--color-gold);
}

.live-jackpot-icon {
   width: 44px;
   height: 44px;
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--color-gold);
}

.live-jackpot-note span {
   display: block;
   margin-bottom: 5px;
   color: var(--color-gold);
   font-size: 8px;
   text-transform: uppercase;
}

.live-jackpot-note h4 {
   margin: 0;
   font-size: 15px;
}

.live-jackpot-note > p {
   margin: 0;
   color: rgba(255,255,255,.48);
   font-size: 11px;
   line-height: 1.6;
}


/* ===== Melbourne ===== */

.jackpot-melbourne {
   background: var(--color-dark);
}

.melbourne-progressive-layout {
   display: grid;
   grid-template-columns: 1fr .8fr;
   gap: 60px;
}

.melbourne-participating {
   padding: 30px;
   background: var(--color-dark-gray);
}

.melbourne-participating > span {
   display: block;
   margin-bottom: 18px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.melbourne-participating > div {
   display: grid;
   grid-template-columns: 25px 1fr;
   gap: 10px;
   padding: 13px 0;
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.melbourne-participating > div:last-child {
   border-bottom: none;
}

.melbourne-participating i {
   color: var(--color-gold);
}

.melbourne-participating p {
   margin: 0;
   color: rgba(255,255,255,.61);
   font-size: 11px;
}


/* ===== Hands ===== */

.progressive-hands {
   margin-top: 35px;
   padding-top: 30px;
   border-top: 1px solid rgba(255,255,255,.08);
}

.progressive-hand-list {
   display: flex;
   flex-wrap: wrap;
   gap: 8px;
}

.progressive-hand-list span {
   padding: 10px 14px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.065);
   color: rgba(255,255,255,.57);
   font-size: 10px;
   text-transform: uppercase;
}


/* ===== Melbourne Highlight ===== */

.melbourne-jackpot-highlight {
   display: grid;
   grid-template-columns: .55fr 1.45fr;
   gap: 40px;
   align-items: center;
   margin-top: 30px;
   padding: 32px;
   background:
      linear-gradient(
         120deg,
         rgba(230,180,80,.08),
         transparent 60%
      ),
      var(--color-dark-gray);
}

.melbourne-jackpot-highlight span,
.melbourne-jackpot-highlight small {
   display: block;
   color: rgba(255,255,255,.4);
   font-size: 8px;
   letter-spacing: 1px;
   text-transform: uppercase;
}

.melbourne-jackpot-highlight strong {
   display: block;
   margin: 3px 0;
   color: var(--color-gold);
   font-family: "Montserrat", sans-serif;
   font-size: 34px;
   font-weight: 500;
}

.melbourne-jackpot-highlight p {
   margin: 0;
   color: rgba(255,255,255,.52);
   font-size: 12px;
   line-height: 1.65;
}


/* ===== Sydney ===== */

.jackpot-sydney-note {
   display: grid;
   grid-template-columns: 55px .7fr 1.4fr;
   gap: 28px;
   align-items: center;
   margin-top: 30px;
   padding: 35px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.06);
}

.jackpot-sydney-icon {
   width: 48px;
   height: 48px;
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--color-gold);
   border: 1px solid rgba(230,180,80,.22);
}

.jackpot-sydney-note span {
   display: block;
   margin-bottom: 6px;
   color: var(--color-gold);
   font-size: 8px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.jackpot-sydney-note h3 {
   margin: 0;
   font-size: 18px;
}

.jackpot-sydney-copy p {
   margin: 0;
   color: rgba(255,255,255,.49);
   font-size: 11px;
   line-height: 1.65;
}


/* ===== Explainer ===== */

.jackpot-explainer {
   margin-top: 75px;
}

.jackpot-explainer-heading {
   margin-bottom: 28px;
}

.jackpot-explainer-heading h3 {
   margin: 0;
   font-size: 27px;
}

.jackpot-explainer-grid {
   display: grid;
   grid-template-columns: repeat(4, 1fr);
   border-top: 1px solid rgba(255,255,255,.07);
   border-left: 1px solid rgba(255,255,255,.07);
}

.jackpot-explainer-grid > div {
   padding: 28px;
   background: var(--color-dark);
   border-right: 1px solid rgba(255,255,255,.07);
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.jackpot-explainer-grid span {
   display: block;
   margin-bottom: 20px;
   color: var(--color-gold);
   font-size: 10px;
}

.jackpot-explainer-grid h4 {
   margin-bottom: 11px;
   font-size: 14px;
}

.jackpot-explainer-grid p {
   margin: 0;
   color: rgba(255,255,255,.45);
   font-size: 11px;
   line-height: 1.6;
}


/* ===== Disclaimer ===== */

.jackpot-disclaimer {
   display: flex;
   gap: 14px;
   margin-top: 20px;
   padding: 19px 23px;
   background: rgba(255,255,255,.025);
}

.jackpot-disclaimer i {
   margin-top: 3px;
   color: var(--color-gold);
}

.jackpot-disclaimer p {
   margin: 0;
   color: rgba(255,255,255,.39);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== Responsive ===== */

@media (max-width: 1050px) {

   .perth-jackpot-intro,
   .melbourne-progressive-layout {
      grid-template-columns: 1fr;
   }

   .jackpot-mechanics-grid,
   .jackpot-explainer-grid {
      grid-template-columns: repeat(2, 1fr);
   }

}


@media (max-width: 800px) {

   .jackpots-intro {
      grid-template-columns: 1fr;
      gap: 30px;
   }

   .jackpots-title h2 {
      font-size: 36px;
   }

   .jackpots-copy {
      padding-left: 25px;
   }

   .jackpot-types {
      grid-template-columns: 1fr;
   }

   .jackpot-property {
      padding: 35px 28px;
   }

   .jackpot-property-header {
      flex-direction: column;
      align-items: flex-start;
   }

   .progressive-poker-block,
   .live-jackpot-note {
      grid-template-columns: 50px 1fr;
   }

   .progressive-poker-copy,
   .live-jackpot-note > p {
      grid-column: 2;
   }

   .jackpot-sydney-note {
      grid-template-columns: 50px 1fr;
   }

   .jackpot-sydney-copy {
      grid-column: 2;
   }

   .melbourne-jackpot-highlight {
      grid-template-columns: 1fr;
      gap: 20px;
   }

}


@media (max-width: 560px) {

   .jackpots-title h2 {
      font-size: 30px;
   }

   .jackpot-property {
      padding: 28px 20px;
   }

   .current-example-list,
   .jackpot-mechanics-grid,
   .jackpot-pool-grid,
   .jackpot-explainer-grid {
      grid-template-columns: 1fr;
   }

   .jackpot-sydney-note {
      grid-template-columns: 1fr;
   }

   .jackpot-sydney-copy {
      grid-column: auto;
   }

}

/**************************************
*
*            CARDED PLAY
*
***************************************/

.carded-play-section {
   position: relative;
   background: var(--color-dark);
}


/* ===== Intro ===== */

.carded-play-intro {
   display: grid;
   grid-template-columns: .9fr 1.1fr;
   gap: 90px;
   align-items: end;
   margin-bottom: 60px;
}

.carded-play-title h2 {
   margin: 0;
   font-size: 48px;
   line-height: 1.12;
}

.carded-play-copy {
   padding-left: 40px;
   border-left: 1px solid rgba(230,180,80,.35);
}

.carded-play-copy p {
   margin-bottom: 17px;
   color: rgba(255,255,255,.64);
   line-height: 1.8;
}

.carded-play-copy .carded-play-lead {
   color: #fff;
   font-size: 18px;
   line-height: 1.7;
}


/* ===== Purpose ===== */

.carded-purpose {
   margin-bottom: 75px;
}

.carded-purpose-heading {
   max-width: 760px;
   margin-bottom: 30px;
}

.carded-purpose-heading > span,
.carded-comparison-heading > span,
.card-vs-heading > span,
.carded-first-heading > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.4px;
   text-transform: uppercase;
}

.carded-purpose-heading h3,
.carded-comparison-heading h3,
.card-vs-heading h3,
.carded-first-heading h3 {
   margin-bottom: 12px;
   font-size: 27px;
}

.carded-purpose-heading p {
   color: rgba(255,255,255,.5);
   line-height: 1.7;
}

.carded-purpose-grid {
   display: grid;
   grid-template-columns: repeat(4, 1fr);
   gap: 10px;
}

.carded-purpose-card {
   padding: 28px 24px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.055);
}

.carded-purpose-card i {
   margin-bottom: 24px;
   color: var(--color-gold);
   font-size: 19px;
}

.carded-purpose-card span {
   display: block;
   margin-bottom: 7px;
   color: rgba(255,255,255,.35);
   font-size: 8px;
   text-transform: uppercase;
}

.carded-purpose-card h4 {
   margin-bottom: 11px;
   font-size: 15px;
}

.carded-purpose-card p {
   margin: 0;
   color: rgba(255,255,255,.47);
   font-size: 11px;
   line-height: 1.6;
}


/* ===== Comparison ===== */

.carded-comparison {
   margin-bottom: 75px;
}

.carded-comparison-heading {
   margin-bottom: 25px;
}

.carded-table-wrap {
   overflow-x: auto;
}

.carded-table {
   width: 100%;
   min-width: 900px;
   border-collapse: collapse;
   background: var(--color-dark-gray);
}

.carded-table th,
.carded-table td {
   padding: 19px 20px;
   text-align: left;
   vertical-align: top;
   border-right: 1px solid rgba(255,255,255,.06);
   border-bottom: 1px solid rgba(255,255,255,.06);
}

.carded-table th {
   color: var(--color-gold);
   font-size: 11px;
   text-transform: uppercase;
}

.carded-table td {
   color: rgba(255,255,255,.58);
   font-size: 12px;
   line-height: 1.55;
}

.carded-table td:first-child {
   color: #fff;
   font-weight: 700;
}

.carded-table small {
   display: block;
   margin-top: 5px;
   color: rgba(255,255,255,.35);
   font-size: 9px;
}

.status-yes i,
.status-different {
   color: var(--color-gold);
}

.status-no i {
   color: rgba(255,255,255,.35);
}

.status-na {
   color: rgba(255,255,255,.42);
}


/* ===== Property ===== */

.carded-property {
   margin-top: 28px;
   padding: 50px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.06);
}

.carded-perth,
.carded-sydney {
   background:
      linear-gradient(125deg, rgba(230,180,80,.05), transparent 45%),
      var(--color-dark-gray);
}

.carded-property-header {
   display: flex;
   justify-content: space-between;
   align-items: flex-end;
   gap: 30px;
   padding-bottom: 30px;
   margin-bottom: 40px;
   border-bottom: 1px solid rgba(255,255,255,.08);
}

.carded-eyebrow {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.carded-property-header h3 {
   margin-bottom: 9px;
   font-size: 29px;
}

.carded-property-header p {
   margin: 0;
   color: rgba(255,255,255,.44);
   font-size: 12px;
}

.carded-property-badge {
   padding: 10px 14px;
   border: 1px solid rgba(230,180,80,.25);
   color: rgba(255,255,255,.61);
   font-size: 9px;
   text-transform: uppercase;
}

.carded-property-badge i {
   margin-right: 7px;
   color: var(--color-gold);
}


/* ===== Melbourne ===== */

.carded-property-layout,
.perth-carded-layout,
.sydney-carded-layout {
   display: grid;
   grid-template-columns: .9fr 1.1fr;
   gap: 60px;
}

.carded-property-copy p,
.perth-carded-layout > div > p,
.sydney-carded-copy p {
   margin-bottom: 17px;
   color: rgba(255,255,255,.55);
   line-height: 1.8;
}

.carded-property-lead {
   color: rgba(255,255,255,.9) !important;
   font-size: 17px;
}

.valid-card-box,
.perth-valid-card {
   padding: 30px;
   background: var(--color-dark);
}

.valid-card-box > span,
.perth-valid-card > span {
   display: block;
   margin-bottom: 20px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.valid-card-step {
   display: grid;
   grid-template-columns: 32px 1fr;
   gap: 14px;
   padding: 14px 0;
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.valid-card-step strong {
   color: var(--color-gold);
   font-size: 10px;
}

.valid-card-step h4 {
   margin-bottom: 5px;
   font-size: 13px;
}

.valid-card-step p {
   margin: 0;
   color: rgba(255,255,255,.43);
   font-size: 10px;
}


/* ===== YourPlay ===== */

.yourplay-detail {
   display: grid;
   grid-template-columns: 55px .65fr 1.35fr;
   gap: 25px;
   align-items: center;
   margin-top: 35px;
   padding: 28px;
   background: rgba(230,180,80,.045);
   border-left: 2px solid var(--color-gold);
}

.yourplay-detail-icon {
   width: 48px;
   height: 48px;
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--color-gold);
   border: 1px solid rgba(230,180,80,.25);
}

.yourplay-detail-title span {
   color: var(--color-gold);
   font-size: 8px;
   text-transform: uppercase;
}

.yourplay-detail-title h4 {
   margin: 5px 0 0;
   font-size: 16px;
}

.yourplay-detail-copy p {
   margin: 0;
   color: rgba(255,255,255,.49);
   font-size: 11px;
   line-height: 1.65;
}


/* ===== Perth ===== */

.perth-valid-card ul {
   margin: 0;
}

.perth-valid-card li {
   padding: 11px 0;
   color: rgba(255,255,255,.55);
   border-bottom: 1px solid rgba(255,255,255,.06);
   font-size: 11px;
}

.perth-valid-card li:last-child {
   border-bottom: none;
}

.perth-valid-card i {
   margin-right: 9px;
   color: var(--color-gold);
}

.perth-carded-steps {
   display: grid;
   grid-template-columns: repeat(4, 1fr);
   gap: 10px;
   margin-top: 35px;
}

.perth-carded-steps > div {
   padding: 24px;
   background: var(--color-dark);
}

.perth-carded-steps span {
   display: block;
   margin-bottom: 17px;
   color: var(--color-gold);
   font-size: 10px;
}

.perth-carded-steps h4 {
   margin-bottom: 8px;
   font-size: 13px;
}

.perth-carded-steps p {
   margin: 0;
   color: rgba(255,255,255,.43);
   font-size: 10px;
   line-height: 1.55;
}

.perth-carded-note {
   display: flex;
   gap: 14px;
   margin-top: 18px;
   padding: 18px 22px;
   background: rgba(255,255,255,.025);
}

.perth-carded-note i {
   color: var(--color-gold);
}

.perth-carded-note p {
   margin: 0;
   color: rgba(255,255,255,.4);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== Sydney ===== */

.sydney-card-flow {
   display: grid;
   grid-template-columns: 1fr 30px 1fr 30px 1fr;
   align-items: center;
}

.sydney-flow-item {
   padding: 25px;
   background: var(--color-dark);
   min-height: 205px;
}

.sydney-flow-item i {
   margin-bottom: 22px;
   color: var(--color-gold);
   font-size: 18px;
}

.sydney-flow-item span {
   display: block;
   margin-bottom: 6px;
   color: rgba(255,255,255,.34);
   font-size: 8px;
   text-transform: uppercase;
}

.sydney-flow-item h4 {
   margin-bottom: 10px;
   font-size: 14px;
}

.sydney-flow-item p {
   margin: 0;
   color: rgba(255,255,255,.44);
   font-size: 10px;
   line-height: 1.55;
}

.sydney-flow-arrow {
   text-align: center;
   color: var(--color-gold);
}


/* ===== Card vs Rewards ===== */

.card-vs-rewards {
   margin-top: 75px;
}

.card-vs-heading {
   max-width: 760px;
   margin-bottom: 30px;
}

.card-vs-grid {
   display: grid;
   grid-template-columns: 1fr 70px 1fr;
}

.card-vs-card {
   padding: 35px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.06);
}

.card-vs-icon {
   width: 48px;
   height: 48px;
   margin-bottom: 25px;
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--color-gold);
   border: 1px solid rgba(230,180,80,.25);
}

.card-vs-card > span {
   display: block;
   margin-bottom: 7px;
   color: var(--color-gold);
   font-size: 8px;
   text-transform: uppercase;
}

.card-vs-card h4 {
   margin-bottom: 12px;
   font-size: 18px;
}

.card-vs-card p {
   margin: 0;
   color: rgba(255,255,255,.49);
   font-size: 12px;
   line-height: 1.65;
}

.card-vs-label {
   margin-top: 22px;
   padding-top: 17px;
   border-top: 1px solid rgba(255,255,255,.07);
   color: rgba(255,255,255,.36);
   font-size: 9px;
   text-transform: uppercase;
}

.card-vs-divider {
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--color-gold);
   font-size: 24px;
}

.card-vs-warning {
   display: flex;
   gap: 14px;
   margin-top: 18px;
   padding: 20px 24px;
   background: rgba(230,180,80,.04);
}

.card-vs-warning i {
   color: var(--color-gold);
}

.card-vs-warning p {
   margin: 0;
   color: rgba(255,255,255,.47);
   font-size: 11px;
   line-height: 1.6;
}


/* ===== First Visit ===== */

.carded-first-visit {
   margin-top: 65px;
}

.carded-first-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 10px;
}

.carded-first-grid > div {
   padding: 28px;
   background: var(--color-dark-gray);
}

.carded-first-grid i {
   margin-bottom: 20px;
   color: var(--color-gold);
   font-size: 18px;
}

.carded-first-grid h4 {
   margin-bottom: 9px;
   font-size: 14px;
}

.carded-first-grid p {
   margin: 0;
   color: rgba(255,255,255,.43);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== Responsive ===== */

@media (max-width: 1050px) {

   .carded-purpose-grid,
   .perth-carded-steps {
      grid-template-columns: repeat(2, 1fr);
   }

   .carded-property-layout,
   .perth-carded-layout,
   .sydney-carded-layout {
      grid-template-columns: 1fr;
   }

}


@media (max-width: 800px) {

   .carded-play-intro {
      grid-template-columns: 1fr;
      gap: 30px;
   }

   .carded-play-title h2 {
      font-size: 36px;
   }

   .carded-play-copy {
      padding-left: 25px;
   }

   .carded-property {
      padding: 35px 28px;
   }

   .carded-property-header {
      flex-direction: column;
      align-items: flex-start;
   }

   .yourplay-detail {
      grid-template-columns: 50px 1fr;
   }

   .yourplay-detail-copy {
      grid-column: 2;
   }

   .sydney-card-flow {
      grid-template-columns: 1fr;
      gap: 10px;
   }

   .sydney-flow-arrow {
      transform: rotate(90deg);
   }

   .card-vs-grid {
      grid-template-columns: 1fr;
      gap: 10px;
   }

   .card-vs-divider {
      height: 40px;
   }

   .carded-first-grid {
      grid-template-columns: 1fr;
   }

}


@media (max-width: 560px) {

   .carded-play-title h2 {
      font-size: 30px;
   }

   .carded-purpose-grid,
   .perth-carded-steps {
      grid-template-columns: 1fr;
   }

   .carded-property {
      padding: 28px 20px;
   }

}

/**************************************
*
*             CROWN REWARDS
*
***************************************/

.rewards-section {
   position: relative;
   background: var(--color-dark-gray);
}


/* ===== Intro ===== */

.rewards-intro {
   display: grid;
   grid-template-columns: .9fr 1.1fr;
   gap: 90px;
   align-items: end;
   margin-bottom: 60px;
}

.rewards-intro-title h2 {
   margin: 0;
   font-size: 48px;
   line-height: 1.12;
}

.rewards-intro-copy {
   padding-left: 40px;
   border-left: 1px solid rgba(230,180,80,.35);
}

.rewards-intro-copy p {
   margin-bottom: 17px;
   color: rgba(255,255,255,.64);
   line-height: 1.8;
}

.rewards-intro-copy .rewards-lead {
   color: #fff;
   font-size: 18px;
   line-height: 1.7;
}


/* ===== Concepts ===== */

.rewards-concepts {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 10px;
   margin-bottom: 35px;
}

.reward-concept-card {
   padding: 32px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.06);
}

.reward-concept-card.featured {
   background:
      linear-gradient(135deg, rgba(230,180,80,.08), transparent 65%),
      var(--color-dark);
   border-color: rgba(230,180,80,.18);
}

.reward-concept-icon {
   width: 48px;
   height: 48px;
   margin-bottom: 24px;
   display: flex;
   justify-content: center;
   align-items: center;
   color: var(--color-gold);
   border: 1px solid rgba(230,180,80,.25);
}

.reward-concept-card > span {
   display: block;
   margin-bottom: 7px;
   color: var(--color-gold);
   font-size: 8px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.reward-concept-card h3 {
   margin-bottom: 12px;
   font-size: 18px;
}

.reward-concept-card p {
   margin: 0;
   color: rgba(255,255,255,.48);
   font-size: 11px;
   line-height: 1.65;
}


/* ===== Rewards vs Access ===== */

.rewards-not-access {
   display: grid;
   grid-template-columns: 55px .8fr 1.2fr;
   gap: 28px;
   align-items: center;
   padding: 30px;
   background: rgba(230,180,80,.045);
   border-left: 2px solid var(--color-gold);
}

.rewards-not-icon {
   width: 48px;
   height: 48px;
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--color-gold);
}

.rewards-not-heading span {
   display: block;
   margin-bottom: 5px;
   color: var(--color-gold);
   font-size: 8px;
   text-transform: uppercase;
}

.rewards-not-heading h3 {
   margin: 0;
   font-size: 17px;
}

.rewards-not-copy p {
   margin: 0;
   color: rgba(255,255,255,.5);
   font-size: 11px;
   line-height: 1.65;
}


/* ===== Shared Heading ===== */

.rewards-section-heading {
   max-width: 760px;
   margin-bottom: 30px;
}

.rewards-section-heading > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.rewards-section-heading h3 {
   margin-bottom: 12px;
   font-size: 27px;
}

.rewards-section-heading p {
   margin: 0;
   color: rgba(255,255,255,.49);
   line-height: 1.7;
}


/* ===== Tiers ===== */

.rewards-tiers,
.tier-thresholds,
.rewards-earning,
.rewards-redemption,
.tier-benefits-example,
.rewards-exclusions {
   margin-top: 75px;
}

.tier-grid {
   display: grid;
   grid-template-columns: repeat(5, 1fr);
   border-top: 1px solid rgba(255,255,255,.07);
   border-left: 1px solid rgba(255,255,255,.07);
}

.tier-card {
   position: relative;
   padding: 28px 22px;
   background: var(--color-dark);
   border-right: 1px solid rgba(255,255,255,.07);
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.tier-card.tier-featured {
   background:
      linear-gradient(140deg, rgba(230,180,80,.08), transparent 70%),
      var(--color-dark);
}

.tier-card.tier-black {
   background: #09090b;
}

.tier-number {
   position: absolute;
   top: 18px;
   right: 18px;
   color: rgba(255,255,255,.1);
   font-size: 25px;
}

.tier-name {
   display: block;
   margin-bottom: 25px;
   color: var(--color-gold);
   font-size: 10px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.tier-threshold {
   min-height: 58px;
   margin-bottom: 20px;
}

.tier-threshold strong {
   display: block;
   color: #fff;
   font-family: "Montserrat", sans-serif;
   font-size: 17px;
   font-weight: 500;
}

.tier-threshold small {
   color: rgba(255,255,255,.33);
   font-size: 8px;
}

.tier-card p {
   margin: 0;
   color: rgba(255,255,255,.45);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== Threshold Table ===== */

.threshold-table-wrap {
   overflow-x: auto;
}

.threshold-table {
   width: 100%;
   min-width: 820px;
   border-collapse: collapse;
   background: var(--color-dark);
}

.threshold-table th,
.threshold-table td {
   padding: 19px 20px;
   text-align: left;
   border-right: 1px solid rgba(255,255,255,.06);
   border-bottom: 1px solid rgba(255,255,255,.06);
}

.threshold-table th {
   color: var(--color-gold);
   font-size: 10px;
   text-transform: uppercase;
}

.threshold-table td {
   color: rgba(255,255,255,.6);
   font-size: 12px;
}

.threshold-table td:first-child {
   color: #fff;
   font-weight: 700;
}

.threshold-note,
.rewards-final-note {
   display: flex;
   gap: 14px;
   margin-top: 15px;
   padding: 18px 22px;
   background: rgba(255,255,255,.025);
}

.threshold-note i,
.rewards-final-note i {
   margin-top: 3px;
   color: var(--color-gold);
}

.threshold-note p,
.rewards-final-note p {
   margin: 0;
   color: rgba(255,255,255,.4);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== Status Credits ===== */

.status-credit-block {
   margin-top: 70px;
   padding: 45px;
   background: var(--color-dark);
}

.status-credit-intro {
   max-width: 720px;
   margin-bottom: 30px;
}

.status-credit-intro > span {
   display: block;
   margin-bottom: 7px;
   color: var(--color-gold);
   font-size: 9px;
   text-transform: uppercase;
}

.status-credit-intro h3 {
   margin-bottom: 12px;
   font-size: 25px;
}

.status-credit-intro p {
   color: rgba(255,255,255,.48);
}

.status-credit-grid {
   display: grid;
   grid-template-columns: repeat(4, 1fr);
   gap: 10px;
}

.status-credit-card {
   padding: 25px;
   background: var(--color-dark-gray);
}

.status-credit-card i {
   display: block;
   margin-bottom: 22px;
   color: var(--color-gold);
   font-size: 18px;
}

.status-credit-card span,
.status-credit-card small {
   display: block;
   color: rgba(255,255,255,.36);
   font-size: 8px;
   text-transform: uppercase;
}

.status-credit-card strong {
   display: block;
   margin: 5px 0;
   color: var(--color-gold);
   font-family: "Montserrat", sans-serif;
   font-size: 18px;
   font-weight: 500;
}

.status-credit-card p {
   margin: 14px 0 0;
   color: rgba(255,255,255,.44);
   font-size: 10px;
   line-height: 1.55;
}


/* ===== Membership Cycle ===== */

.membership-cycle {
   display: grid;
   grid-template-columns: .55fr 1.45fr;
   gap: 50px;
   margin-top: 35px;
   padding: 35px;
   background: rgba(230,180,80,.045);
   border: 1px solid rgba(230,180,80,.14);
}

.membership-cycle-main span {
   display: block;
   color: var(--color-gold);
   font-size: 9px;
   text-transform: uppercase;
}

.membership-cycle-main strong {
   display: block;
   margin: 8px 0 12px;
   color: #fff;
   font-family: "Montserrat", sans-serif;
   font-size: 25px;
   font-weight: 500;
}

.membership-cycle-main p {
   margin: 0;
   color: rgba(255,255,255,.45);
   font-size: 11px;
   line-height: 1.6;
}

.membership-cycle-flow {
   display: grid;
   grid-template-columns: 1fr 30px 1fr 30px 1fr;
   align-items: center;
}

.membership-cycle-flow > div:not(.cycle-arrow) {
   padding: 20px;
   background: var(--color-dark);
}

.membership-cycle-flow span {
   color: var(--color-gold);
   font-size: 9px;
}

.membership-cycle-flow h4 {
   margin: 7px 0;
   font-size: 13px;
}

.membership-cycle-flow p {
   margin: 0;
   color: rgba(255,255,255,.4);
   font-size: 9px;
   line-height: 1.55;
}

.cycle-arrow {
   text-align: center;
   color: var(--color-gold);
}


/* ===== Earning ===== */

.earning-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 10px;
}

.earning-card {
   padding: 27px;
   background: var(--color-dark);
}

.earning-card i {
   margin-bottom: 20px;
   color: var(--color-gold);
   font-size: 18px;
}

.earning-card h4 {
   margin-bottom: 9px;
   font-size: 14px;
}

.earning-card p {
   margin: 0;
   color: rgba(255,255,255,.44);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== Sydney Rates ===== */

.sydney-earn-rates {
   margin-top: 35px;
   padding: 35px;
   background:
      linear-gradient(130deg, rgba(230,180,80,.06), transparent 55%),
      var(--color-dark);
}

.sydney-rate-heading {
   max-width: 720px;
   margin-bottom: 25px;
}

.sydney-rate-heading > span {
   display: block;
   margin-bottom: 7px;
   color: var(--color-gold);
   font-size: 9px;
   text-transform: uppercase;
}

.sydney-rate-heading h3 {
   margin-bottom: 10px;
   font-size: 22px;
}

.sydney-rate-heading p {
   color: rgba(255,255,255,.45);
}

.sydney-rate-grid {
   display: grid;
   grid-template-columns: repeat(6, 1fr);
   border-top: 1px solid rgba(255,255,255,.07);
   border-left: 1px solid rgba(255,255,255,.07);
}

.sydney-rate-grid > div {
   padding: 19px 15px;
   border-right: 1px solid rgba(255,255,255,.07);
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.sydney-rate-grid span,
.sydney-rate-grid small {
   display: block;
   color: rgba(255,255,255,.34);
   font-size: 8px;
}

.sydney-rate-grid strong {
   display: block;
   margin: 5px 0;
   color: var(--color-gold);
   font-family: "Montserrat", sans-serif;
   font-size: 15px;
   font-weight: 500;
}


/* ===== Redemption ===== */

.redemption-layout {
   display: grid;
   grid-template-columns: .8fr 1.2fr;
   gap: 60px;
}

.redemption-copy p {
   color: rgba(255,255,255,.52);
   line-height: 1.8;
}

.redemption-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   border-top: 1px solid rgba(255,255,255,.07);
   border-left: 1px solid rgba(255,255,255,.07);
}

.redemption-grid > div {
   padding: 24px;
   text-align: center;
   background: var(--color-dark);
   border-right: 1px solid rgba(255,255,255,.07);
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.redemption-grid i {
   display: block;
   margin-bottom: 12px;
   color: var(--color-gold);
}

.redemption-grid span {
   color: rgba(255,255,255,.58);
   font-size: 10px;
   text-transform: uppercase;
}


/* ===== Transfer ===== */

.points-transfer {
   display: grid;
   grid-template-columns: 55px .7fr 1.3fr;
   gap: 28px;
   align-items: center;
   margin-top: 35px;
   padding: 32px;
   background: rgba(230,180,80,.045);
   border-left: 2px solid var(--color-gold);
}

.points-transfer-icon {
   width: 48px;
   height: 48px;
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--color-gold);
}

.points-transfer-heading span {
   color: var(--color-gold);
   font-size: 8px;
   text-transform: uppercase;
}

.points-transfer-heading h3 {
   margin: 6px 0 0;
   font-size: 17px;
}

.points-transfer-copy p {
   margin: 0 0 8px;
   color: rgba(255,255,255,.47);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== Sydney Exceptions ===== */

.sydney-rewards {
   margin-top: 35px;
   padding: 35px;
   background: var(--color-dark);
}

.sydney-rewards-head {
   display: flex;
   justify-content: space-between;
   gap: 25px;
   padding-bottom: 22px;
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.sydney-rewards-head span {
   color: var(--color-gold);
   font-size: 9px;
   text-transform: uppercase;
}

.sydney-rewards-head h3 {
   margin: 6px 0 0;
   font-size: 21px;
}

.sydney-rewards-tag {
   align-self: center;
   padding: 8px 12px;
   border: 1px solid rgba(230,180,80,.2);
   color: var(--color-gold);
   font-size: 8px;
   text-transform: uppercase;
}

.sydney-rewards-grid {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
}

.sydney-reward-rule {
   padding: 28px;
}

.sydney-reward-rule + .sydney-reward-rule {
   border-left: 1px solid rgba(255,255,255,.07);
}

.sydney-reward-rule > span {
   color: var(--color-gold);
   font-size: 9px;
}

.sydney-reward-rule h4 {
   margin: 10px 0;
   font-size: 15px;
}

.sydney-reward-rule p {
   margin: 0;
   color: rgba(255,255,255,.46);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== Table Play ===== */

.table-play-redemption {
   display: grid;
   grid-template-columns: .65fr 1.1fr .7fr;
   gap: 40px;
   align-items: center;
   margin-top: 25px;
   padding: 35px;
   background: rgba(230,180,80,.05);
   border: 1px solid rgba(230,180,80,.14);
}

.table-play-icon {
   width: 46px;
   height: 46px;
   margin-bottom: 18px;
   display: flex;
   align-items: center;
   justify-content: center;
   color: var(--color-gold);
   border: 1px solid rgba(230,180,80,.25);
}

.table-play-title span {
   color: var(--color-gold);
   font-size: 8px;
   text-transform: uppercase;
}

.table-play-title h3 {
   margin: 6px 0 0;
   font-size: 18px;
}

.table-play-copy p {
   margin: 0 0 9px;
   color: rgba(255,255,255,.48);
   font-size: 10px;
   line-height: 1.6;
}

.table-play-facts {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
}

.table-play-facts > div {
   padding: 15px;
   text-align: center;
   border: 1px solid rgba(255,255,255,.07);
}

.table-play-facts span {
   display: block;
   color: rgba(255,255,255,.32);
   font-size: 7px;
   text-transform: uppercase;
}

.table-play-facts strong {
   color: var(--color-gold);
   font-size: 13px;
}


/* ===== Tier Benefits ===== */

.benefit-tier-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 10px;
}

.benefit-tier-card {
   padding: 30px;
   background: var(--color-dark);
}

.benefit-tier-card.featured {
   border-top: 2px solid var(--color-gold);
}

.benefit-tier-card > span {
   display: block;
   margin-bottom: 20px;
   color: var(--color-gold);
   font-size: 11px;
   text-transform: uppercase;
}

.benefit-tier-card li {
   padding: 9px 0;
   color: rgba(255,255,255,.5);
   border-bottom: 1px solid rgba(255,255,255,.06);
   font-size: 10px;
   line-height: 1.5;
}


/* ===== Exclusions ===== */

.rewards-exclusions-title {
   max-width: 700px;
   margin-bottom: 25px;
}

.rewards-exclusions-title span {
   color: var(--color-gold);
   font-size: 9px;
   text-transform: uppercase;
}

.rewards-exclusions-title h3 {
   margin: 7px 0 0;
   font-size: 24px;
}

.rewards-exclusions-grid {
   display: grid;
   grid-template-columns: repeat(4, 1fr);
   gap: 10px;
}

.rewards-exclusions-grid > div {
   padding: 25px;
   background: var(--color-dark);
}

.rewards-exclusions-grid i {
   margin-bottom: 18px;
   color: var(--color-gold);
}

.rewards-exclusions-grid p {
   margin: 0;
   color: rgba(255,255,255,.44);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== Responsive ===== */

@media (max-width: 1100px) {

   .tier-grid {
      grid-template-columns: repeat(3, 1fr);
   }

   .status-credit-grid,
   .rewards-exclusions-grid {
      grid-template-columns: repeat(2, 1fr);
   }

   .sydney-rate-grid {
      grid-template-columns: repeat(3, 1fr);
   }

}


@media (max-width: 800px) {

   .rewards-intro {
      grid-template-columns: 1fr;
      gap: 30px;
   }

   .rewards-intro-title h2 {
      font-size: 36px;
   }

   .rewards-intro-copy {
      padding-left: 25px;
   }

   .rewards-concepts,
   .earning-grid,
   .benefit-tier-grid {
      grid-template-columns: 1fr;
   }

   .rewards-not-access,
   .points-transfer {
      grid-template-columns: 50px 1fr;
   }

   .rewards-not-copy,
   .points-transfer-copy {
      grid-column: 2;
   }

   .tier-grid,
   .status-credit-grid,
   .rewards-exclusions-grid {
      grid-template-columns: repeat(2, 1fr);
   }

   .membership-cycle,
   .redemption-layout,
   .table-play-redemption {
      grid-template-columns: 1fr;
   }

   .membership-cycle-flow {
      grid-template-columns: 1fr;
      gap: 10px;
   }

   .cycle-arrow {
      transform: rotate(90deg);
   }

   .sydney-rewards-grid {
      grid-template-columns: 1fr;
   }

   .sydney-reward-rule + .sydney-reward-rule {
      border-left: none;
      border-top: 1px solid rgba(255,255,255,.07);
   }

}


@media (max-width: 560px) {

   .rewards-intro-title h2 {
      font-size: 30px;
   }

   .tier-grid,
   .status-credit-grid,
   .sydney-rate-grid,
   .rewards-exclusions-grid {
      grid-template-columns: 1fr;
   }

   .status-credit-block,
   .sydney-earn-rates,
   .sydney-rewards,
   .table-play-redemption {
      padding: 28px 20px;
   }

   .rewards-not-access,
   .points-transfer {
      grid-template-columns: 1fr;
   }

   .rewards-not-copy,
   .points-transfer-copy {
      grid-column: auto;
   }

}

/**************************************
*
*       CASINO RULES & TECHNOLOGY
*
***************************************/

.rules-tech-section {
   position: relative;
   background: var(--color-dark);
}


/* ===== Intro ===== */

.rules-tech-intro {
   display: grid;
   grid-template-columns: .9fr 1.1fr;
   gap: 90px;
   align-items: end;
   margin-bottom: 60px;
}

.rules-tech-title h2 {
   margin: 0;
   font-size: 48px;
   line-height: 1.12;
}

.rules-tech-copy {
   padding-left: 40px;
   border-left: 1px solid rgba(230,180,80,.35);
}

.rules-tech-copy p {
   margin-bottom: 17px;
   color: rgba(255,255,255,.64);
   line-height: 1.8;
}

.rules-tech-copy .rules-tech-lead {
   color: #fff;
   font-size: 18px;
   line-height: 1.7;
}


/* ===== Three Systems ===== */

.rules-system-grid {
   display: grid;
   grid-template-columns: repeat(3,1fr);
   gap: 10px;
   margin-bottom: 75px;
}

.rules-system-card {
   padding: 32px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.06);
}

.rules-system-card.featured {
   background:
      linear-gradient(135deg,rgba(230,180,80,.07),transparent 65%),
      var(--color-dark-gray);
}

.rules-system-icon {
   width: 48px;
   height: 48px;
   display: flex;
   align-items: center;
   justify-content: center;
   margin-bottom: 25px;
   color: var(--color-gold);
   border: 1px solid rgba(230,180,80,.25);
}

.rules-system-card > span {
   display: block;
   margin-bottom: 7px;
   color: var(--color-gold);
   font-size: 8px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.rules-system-card h3 {
   margin-bottom: 12px;
   font-size: 17px;
}

.rules-system-card p {
   margin: 0;
   color: rgba(255,255,255,.47);
   font-size: 11px;
   line-height: 1.65;
}


/* ===== Properties ===== */

.rules-property {
   margin-top: 30px;
   padding: 50px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.06);
}

.rules-sydney {
   background:
      linear-gradient(125deg,rgba(230,180,80,.07),transparent 45%),
      var(--color-dark-gray);
}

.rules-property-header {
   display: flex;
   justify-content: space-between;
   align-items: flex-end;
   gap: 30px;
   padding-bottom: 30px;
   margin-bottom: 40px;
   border-bottom: 1px solid rgba(255,255,255,.08);
}

.rules-eyebrow {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.rules-property-header h3 {
   margin-bottom: 9px;
   font-size: 29px;
}

.rules-property-header p {
   margin: 0;
   max-width: 650px;
   color: rgba(255,255,255,.44);
   font-size: 12px;
}

.rules-tech-badge {
   padding: 10px 14px;
   border: 1px solid rgba(230,180,80,.25);
   color: rgba(255,255,255,.62);
   font-size: 9px;
   text-transform: uppercase;
}

.rules-tech-badge i {
   margin-right: 7px;
   color: var(--color-gold);
}


/* ===== Sydney Smart Table ===== */

.smart-table-layout {
   display: grid;
   grid-template-columns: .95fr 1.05fr;
   gap: 60px;
   align-items: center;
}

.smart-table-copy p,
.melbourne-rules-copy p,
.perth-rules-copy p {
   margin-bottom: 17px;
   color: rgba(255,255,255,.55);
   line-height: 1.8;
}

.rules-property-lead {
   color: rgba(255,255,255,.9) !important;
   font-size: 17px;
}


/* Technology Visual */

.smart-table-visual {
   position: relative;
   min-height: 390px;
}

.smart-central {
   position: absolute;
   left: 50%;
   top: 50%;
   width: 120px;
   height: 120px;
   transform: translate(-50%,-50%);
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   border: 1px solid var(--color-gold);
   border-radius: 50%;
   background: var(--color-dark);
}

.smart-central i {
   color: var(--color-gold);
   font-size: 26px;
}

.smart-central span {
   margin-top: 8px;
   color: #fff;
   font-size: 9px;
   text-transform: uppercase;
}

.smart-node {
   position: absolute;
   width: 105px;
   height: 105px;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   border: 1px solid rgba(230,180,80,.2);
   background: rgba(13,13,15,.8);
}

.smart-node i {
   margin-bottom: 8px;
   color: var(--color-gold);
}

.smart-node span {
   color: rgba(255,255,255,.58);
   font-size: 8px;
   text-transform: uppercase;
}

.node-one {
   top: 0;
   left: 50%;
   transform: translateX(-50%);
}

.node-two {
   left: 0;
   top: 50%;
   transform: translateY(-50%);
}

.node-three {
   right: 0;
   top: 50%;
   transform: translateY(-50%);
}

.node-four {
   bottom: 0;
   left: 50%;
   transform: translateX(-50%);
}


/* ===== RFID Capabilities ===== */

.rfid-capabilities {
   margin-top: 50px;
   padding-top: 40px;
   border-top: 1px solid rgba(255,255,255,.08);
}

.rfid-heading {
   margin-bottom: 28px;
}

.rfid-heading > span,
.smart-games-heading > span,
.rules-comparison-heading > span {
   display: block;
   margin-bottom: 7px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.rfid-heading h4,
.smart-games-heading h4 {
   margin: 0;
   font-size: 22px;
}

.rfid-grid {
   display: grid;
   grid-template-columns: repeat(3,1fr);
   gap: 10px;
}

.rfid-grid > div {
   padding: 26px;
   background: var(--color-dark);
}

.rfid-grid i {
   margin-bottom: 20px;
   color: var(--color-gold);
   font-size: 17px;
}

.rfid-grid span {
   display: block;
   margin-bottom: 6px;
   color: rgba(255,255,255,.34);
   font-size: 8px;
   text-transform: uppercase;
}

.rfid-grid h5 {
   margin-bottom: 9px;
   color: #fff;
   font-size: 13px;
   text-transform: uppercase;
}

.rfid-grid p {
   margin: 0;
   color: rgba(255,255,255,.44);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== Games ===== */

.smart-games {
   margin-top: 35px;
}

.smart-game-list {
   display: grid;
   grid-template-columns: repeat(4,1fr);
   margin-top: 20px;
   border-left: 1px solid rgba(255,255,255,.07);
   border-top: 1px solid rgba(255,255,255,.07);
}

.smart-game-list > div {
   padding: 22px;
   text-align: center;
   border-right: 1px solid rgba(255,255,255,.07);
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.smart-game-list i {
   display: block;
   margin-bottom: 11px;
   color: var(--color-gold);
}

.smart-game-list strong {
   color: rgba(255,255,255,.7);
   font-size: 11px;
}


/* ===== Areas ===== */

.smart-areas {
   display: grid;
   grid-template-columns: 180px 1fr;
   gap: 25px;
   margin-top: 20px;
   padding: 22px;
   background: rgba(255,255,255,.025);
}

.smart-areas > span {
   color: var(--color-gold);
   font-size: 8px;
   text-transform: uppercase;
}

.smart-areas > div {
   display: flex;
   flex-wrap: wrap;
   gap: 18px;
}

.smart-areas strong {
   color: rgba(255,255,255,.57);
   font-size: 10px;
   font-weight: 400;
}


/* ===== Chips ===== */

.new-chip-block,
.vik-block,
.pas-block {
   display: grid;
   grid-template-columns: 55px .8fr 1.2fr;
   gap: 26px;
   align-items: center;
   margin-top: 25px;
   padding: 28px;
   background: rgba(230,180,80,.045);
   border-left: 2px solid var(--color-gold);
}

.new-chip-icon,
.vik-icon {
   width: 48px;
   height: 48px;
   display: flex;
   justify-content: center;
   align-items: center;
   color: var(--color-gold);
}

.new-chip-heading span,
.vik-title span,
.pas-title span {
   display: block;
   margin-bottom: 5px;
   color: var(--color-gold);
   font-size: 8px;
   text-transform: uppercase;
}

.new-chip-heading h4,
.vik-title h4,
.pas-title h4 {
   margin: 0;
   font-size: 15px;
}

.new-chip-copy p,
.vik-copy p,
.pas-copy p {
   margin: 0;
   color: rgba(255,255,255,.48);
   font-size: 11px;
   line-height: 1.65;
}


/* ===== Player Impact ===== */

.smart-player-impact {
   margin-top: 35px;
}

.smart-player-heading {
   margin-bottom: 20px;
}

.smart-player-heading span {
   color: var(--color-gold);
   font-size: 8px;
   text-transform: uppercase;
}

.smart-player-heading h4 {
   margin: 6px 0 0;
   font-size: 18px;
}

.smart-impact-grid {
   display: grid;
   grid-template-columns: repeat(4,1fr);
   gap: 8px;
}

.smart-impact-grid > div {
   padding: 20px;
   background: var(--color-dark);
}

.smart-impact-grid span {
   display: block;
   margin-bottom: 7px;
   color: var(--color-gold);
   font-size: 8px;
   text-transform: uppercase;
}

.smart-impact-grid p {
   margin: 0;
   color: rgba(255,255,255,.44);
   font-size: 10px;
   line-height: 1.55;
}


/* ===== Melbourne ===== */

.melbourne-rules-layout,
.perth-rules-layout {
   display: grid;
   grid-template-columns: .9fr 1.1fr;
   gap: 60px;
}

.melbourne-control-stack {
   display: grid;
   gap: 10px;
}

.melbourne-control-stack > div {
   position: relative;
   padding: 24px 24px 24px 70px;
   background: var(--color-dark);
}

.melbourne-control-stack > div > span {
   position: absolute;
   top: 15px;
   right: 18px;
   color: rgba(255,255,255,.13);
   font-size: 8px;
}

.melbourne-control-stack i {
   position: absolute;
   left: 24px;
   top: 27px;
   color: var(--color-gold);
}

.melbourne-control-stack h4 {
   margin-bottom: 7px;
   font-size: 13px;
}

.melbourne-control-stack p {
   margin: 0;
   color: rgba(255,255,255,.44);
   font-size: 10px;
   line-height: 1.55;
}


/* ===== YourPlay ===== */

.yourplay-system {
   margin-top: 40px;
   padding: 35px;
   background: var(--color-dark);
}

.yourplay-system-header {
   display: flex;
   justify-content: space-between;
   align-items: center;
   padding-bottom: 22px;
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.yourplay-system-header span {
   color: var(--color-gold);
   font-size: 8px;
   text-transform: uppercase;
}

.yourplay-system-header h4 {
   margin: 6px 0 0;
   font-size: 18px;
}

.yourplay-state {
   padding: 8px 12px;
   border: 1px solid rgba(230,180,80,.2);
   color: rgba(255,255,255,.55);
   font-size: 9px;
   text-transform: uppercase;
}

.yourplay-state i {
   margin-right: 6px;
   color: var(--color-gold);
}

.yourplay-system-grid {
   display: grid;
   grid-template-columns: repeat(4,1fr);
   gap: 9px;
   margin-top: 25px;
}

.yourplay-system-grid > div {
   padding: 23px;
   background: var(--color-dark-gray);
}

.yourplay-system-grid i {
   margin-bottom: 18px;
   color: var(--color-gold);
}

.yourplay-system-grid span {
   display: block;
   color: rgba(255,255,255,.34);
   font-size: 8px;
   text-transform: uppercase;
}

.yourplay-system-grid h5 {
   margin: 7px 0;
   color: #fff;
   font-size: 12px;
   text-transform: uppercase;
}

.yourplay-system-grid p {
   margin: 0;
   color: rgba(255,255,255,.42);
   font-size: 9px;
   line-height: 1.55;
}


/* ===== Perth ===== */

.perth-control-list {
   display: grid;
   grid-template-columns: repeat(2,1fr);
   border-top: 1px solid rgba(255,255,255,.07);
   border-left: 1px solid rgba(255,255,255,.07);
}

.perth-control-list > div {
   padding: 24px;
   border-right: 1px solid rgba(255,255,255,.07);
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.perth-control-list span {
   display: block;
   margin-bottom: 15px;
   color: var(--color-gold);
   font-size: 9px;
}

.perth-control-list h4 {
   margin-bottom: 8px;
   font-size: 13px;
}

.perth-control-list p {
   margin: 0;
   color: rgba(255,255,255,.43);
   font-size: 10px;
   line-height: 1.55;
}

.pas-access {
   display: flex;
   flex-wrap: wrap;
   gap: 8px;
}

.pas-access span {
   width: 100%;
   color: var(--color-gold);
   font-size: 8px;
   text-transform: uppercase;
}

.pas-access strong {
   padding: 6px 9px;
   border: 1px solid rgba(255,255,255,.08);
   color: rgba(255,255,255,.56);
   font-size: 9px;
   font-weight: 400;
}


/* ===== Comparison ===== */

.rules-comparison {
   margin-top: 75px;
}

.rules-comparison-heading {
   margin-bottom: 25px;
}

.rules-comparison-heading h3 {
   margin: 0;
   font-size: 27px;
}

.rules-comparison-grid {
   display: grid;
   grid-template-columns: repeat(3,1fr);
   gap: 10px;
}

.rules-comparison-grid > div {
   padding: 30px;
   background: var(--color-dark-gray);
}

.rules-comparison-grid span {
   display: block;
   margin-bottom: 20px;
   color: var(--color-gold);
   font-size: 9px;
   text-transform: uppercase;
}

.rules-comparison-grid i {
   margin-bottom: 20px;
   color: var(--color-gold);
   font-size: 19px;
}

.rules-comparison-grid h4 {
   margin-bottom: 9px;
   font-size: 15px;
}

.rules-comparison-grid p {
   margin: 0;
   color: rgba(255,255,255,.44);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== Final ===== */

.rules-final-note {
   display: flex;
   gap: 14px;
   margin-top: 18px;
   padding: 19px 23px;
   background: rgba(255,255,255,.025);
}

.rules-final-note i {
   margin-top: 3px;
   color: var(--color-gold);
}

.rules-final-note p {
   margin: 0;
   color: rgba(255,255,255,.39);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== Responsive ===== */

@media (max-width: 1050px) {

   .smart-table-layout,
   .melbourne-rules-layout,
   .perth-rules-layout {
      grid-template-columns: 1fr;
   }

   .rfid-grid {
      grid-template-columns: repeat(2,1fr);
   }

   .yourplay-system-grid {
      grid-template-columns: repeat(2,1fr);
   }

}


@media (max-width: 800px) {

   .rules-tech-intro {
      grid-template-columns: 1fr;
      gap: 30px;
   }

   .rules-tech-title h2 {
      font-size: 36px;
   }

   .rules-tech-copy {
      padding-left: 25px;
   }

   .rules-system-grid,
   .rules-comparison-grid {
      grid-template-columns: 1fr;
   }

   .rules-property {
      padding: 35px 28px;
   }

   .rules-property-header {
      flex-direction: column;
      align-items: flex-start;
   }

   .smart-game-list,
   .smart-impact-grid {
      grid-template-columns: repeat(2,1fr);
   }

   .new-chip-block,
   .vik-block,
   .pas-block {
      grid-template-columns: 50px 1fr;
   }

   .new-chip-copy,
   .vik-copy,
   .pas-copy,
   .pas-access {
      grid-column: 2;
   }

}


@media (max-width: 560px) {

   .rules-tech-title h2 {
      font-size: 30px;
   }

   .rules-property {
      padding: 28px 20px;
   }

   .rfid-grid,
   .yourplay-system-grid,
   .perth-control-list,
   .smart-game-list,
   .smart-impact-grid {
      grid-template-columns: 1fr;
   }

   .smart-table-visual {
      min-height: 450px;
   }

   .new-chip-block,
   .vik-block,
   .pas-block {
      grid-template-columns: 1fr;
   }

   .new-chip-copy,
   .vik-copy,
   .pas-copy,
   .pas-access {
      grid-column: auto;
   }

   .smart-areas {
      grid-template-columns: 1fr;
   }

}

/**************************************
*
*     DRESS CODE & CONDITIONS
*
***************************************/

.entry-rules-section {
   position: relative;
   background: var(--color-dark-gray);
}


/* ===== Intro ===== */

.entry-rules-intro {
   display: grid;
   grid-template-columns: .9fr 1.1fr;
   gap: 90px;
   align-items: end;
   margin-bottom: 55px;
}

.entry-rules-title h2 {
   margin: 0;
   font-size: 48px;
   line-height: 1.12;
}

.entry-rules-copy {
   padding-left: 40px;
   border-left: 1px solid rgba(230,180,80,.35);
}

.entry-rules-copy p {
   margin-bottom: 17px;
   color: rgba(255,255,255,.64);
   line-height: 1.8;
}

.entry-rules-copy .entry-rules-lead {
   color: #fff;
   font-size: 18px;
   line-height: 1.7;
}


/* ===== Quick Comparison ===== */

.entry-comparison {
   display: grid;
   grid-template-columns: repeat(3,1fr);
   gap: 10px;
   margin-bottom: 75px;
}

.entry-comparison-card {
   padding: 31px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.06);
}

.entry-comparison-card.featured {
   background:
      linear-gradient(135deg,rgba(230,180,80,.07),transparent 65%),
      var(--color-dark);
}

.entry-comparison-card > span {
   display: block;
   margin-bottom: 22px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.entry-comparison-card > i {
   margin-bottom: 20px;
   color: var(--color-gold);
   font-size: 19px;
}

.entry-comparison-card h3 {
   margin-bottom: 12px;
   font-size: 18px;
}

.entry-comparison-card p {
   margin: 0;
   color: rgba(255,255,255,.48);
   font-size: 11px;
   line-height: 1.65;
}

.entry-comparison-note {
   margin-top: 22px;
   padding-top: 17px;
   border-top: 1px solid rgba(255,255,255,.07);
   color: rgba(255,255,255,.36);
   font-size: 9px;
}


/* ===== Property ===== */

.entry-property {
   margin-top: 28px;
   padding: 50px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.06);
}

.entry-perth,
.entry-sydney {
   background:
      linear-gradient(125deg,rgba(230,180,80,.045),transparent 45%),
      var(--color-dark);
}

.entry-property-header {
   display: flex;
   justify-content: space-between;
   align-items: flex-end;
   gap: 30px;
   padding-bottom: 30px;
   margin-bottom: 40px;
   border-bottom: 1px solid rgba(255,255,255,.08);
}

.entry-eyebrow {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.entry-property-header h3 {
   margin-bottom: 9px;
   font-size: 29px;
}

.entry-property-header p {
   max-width: 650px;
   margin: 0;
   color: rgba(255,255,255,.44);
   font-size: 12px;
}

.entry-property-badge {
   padding: 10px 14px;
   border: 1px solid rgba(230,180,80,.25);
   color: rgba(255,255,255,.6);
   font-size: 9px;
   text-transform: uppercase;
}

.entry-property-badge i {
   margin-right: 7px;
   color: var(--color-gold);
}


/* ===== Melbourne ===== */

.entry-property-layout,
.perth-entry-layout,
.sydney-entry-layout {
   display: grid;
   grid-template-columns: .9fr 1.1fr;
   gap: 60px;
}

.entry-property-copy p,
.perth-entry-copy p,
.sydney-entry-copy p {
   margin-bottom: 17px;
   color: rgba(255,255,255,.54);
   line-height: 1.8;
}

.entry-property-lead {
   color: rgba(255,255,255,.9) !important;
   font-size: 17px;
}

.unacceptable-list {
   padding: 30px;
   background: var(--color-dark-gray);
}

.unacceptable-list > span {
   display: block;
   margin-bottom: 18px;
   color: var(--color-gold);
   font-size: 9px;
   text-transform: uppercase;
}

.unacceptable-list > div {
   display: grid;
   grid-template-columns: 22px 1fr;
   gap: 10px;
   padding: 11px 0;
   border-bottom: 1px solid rgba(255,255,255,.06);
}

.unacceptable-list i {
   color: var(--color-gold);
   font-size: 10px;
}

.unacceptable-list p {
   margin: 0;
   color: rgba(255,255,255,.53);
   font-size: 10px;
}


/* ===== Perth ===== */

.perth-clothing-grid {
   display: grid;
   grid-template-columns: repeat(2,1fr);
   border-top: 1px solid rgba(255,255,255,.07);
   border-left: 1px solid rgba(255,255,255,.07);
}

.perth-clothing-grid > div {
   padding: 24px;
   border-right: 1px solid rgba(255,255,255,.07);
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.perth-clothing-grid i {
   margin-bottom: 20px;
   color: var(--color-gold);
}

.perth-clothing-grid span {
   display: block;
   color: rgba(255,255,255,.34);
   font-size: 8px;
   text-transform: uppercase;
}

.perth-clothing-grid h4 {
   margin: 7px 0;
   font-size: 13px;
}

.perth-clothing-grid p {
   margin: 0;
   color: rgba(255,255,255,.43);
   font-size: 10px;
   line-height: 1.55;
}

.perth-footwear {
   display: grid;
   grid-template-columns: .7fr 1.3fr;
   gap: 35px;
   align-items: center;
   margin-top: 30px;
   padding: 30px;
   background: var(--color-dark-gray);
}

.perth-footwear-heading span {
   color: var(--color-gold);
   font-size: 8px;
   text-transform: uppercase;
}

.perth-footwear-heading h4 {
   margin: 6px 0 0;
   font-size: 17px;
}

.perth-footwear-list {
   display: flex;
   flex-wrap: wrap;
   gap: 8px;
}

.perth-footwear-list span {
   padding: 8px 11px;
   border: 1px solid rgba(255,255,255,.08);
   color: rgba(255,255,255,.5);
   font-size: 9px;
}

.perth-entry-id {
   display: grid;
   grid-template-columns: 55px .65fr 1.35fr;
   gap: 25px;
   align-items: center;
   margin-top: 20px;
   padding: 27px;
   background: rgba(230,180,80,.045);
   border-left: 2px solid var(--color-gold);
}

.entry-id-icon {
   color: var(--color-gold);
   font-size: 20px;
}

.perth-entry-id span {
   color: var(--color-gold);
   font-size: 8px;
   text-transform: uppercase;
}

.perth-entry-id h4 {
   margin: 5px 0 0;
   font-size: 15px;
}

.perth-entry-id p {
   margin: 0;
   color: rgba(255,255,255,.47);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== Sydney ===== */

.sydney-dress-list {
   background: var(--color-dark-gray);
}

.sydney-dress-list > div {
   display: grid;
   grid-template-columns: 35px 1fr;
   gap: 12px;
   padding: 16px 20px;
   border-bottom: 1px solid rgba(255,255,255,.06);
}

.sydney-dress-list span {
   color: var(--color-gold);
   font-size: 9px;
}

.sydney-dress-list p {
   margin: 0;
   color: rgba(255,255,255,.51);
   font-size: 10px;
}


/* ===== Sydney Security ===== */

.sydney-entry-security {
   margin-top: 40px;
   padding-top: 35px;
   border-top: 1px solid rgba(255,255,255,.08);
}

.security-heading {
   max-width: 740px;
   margin-bottom: 27px;
}

.security-heading > span,
.entry-refusal-heading > span,
.entry-safe-heading > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.security-heading h4 {
   margin-bottom: 10px;
   font-size: 22px;
}

.security-heading p {
   margin: 0;
   color: rgba(255,255,255,.45);
}

.security-rules-grid {
   display: grid;
   grid-template-columns: repeat(3,1fr);
   gap: 10px;
}

.security-rules-grid > div {
   padding: 25px;
   background: var(--color-dark-gray);
}

.security-rules-grid i {
   margin-bottom: 19px;
   color: var(--color-gold);
}

.security-rules-grid span {
   display: block;
   color: rgba(255,255,255,.34);
   font-size: 8px;
   text-transform: uppercase;
}

.security-rules-grid h5 {
   margin: 7px 0;
   color: #fff;
   font-size: 12px;
   text-transform: uppercase;
}

.security-rules-grid p {
   margin: 0;
   color: rgba(255,255,255,.43);
   font-size: 9px;
   line-height: 1.55;
}


/* ===== Refusal ===== */

.entry-refusal {
   margin-top: 75px;
}

.entry-refusal-heading {
   max-width: 760px;
   margin-bottom: 27px;
}

.entry-refusal-heading h3,
.entry-safe-heading h3 {
   margin-bottom: 10px;
   font-size: 26px;
}

.entry-refusal-heading p {
   margin: 0;
   color: rgba(255,255,255,.46);
   line-height: 1.65;
}

.entry-refusal-grid {
   display: grid;
   grid-template-columns: repeat(4,1fr);
   gap: 10px;
}

.entry-refusal-grid > div {
   padding: 27px;
   background: var(--color-dark);
}

.entry-refusal-grid i {
   margin-bottom: 20px;
   color: var(--color-gold);
}

.entry-refusal-grid h4 {
   margin-bottom: 9px;
   font-size: 14px;
}

.entry-refusal-grid p {
   margin: 0;
   color: rgba(255,255,255,.43);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== Safe Choice ===== */

.entry-safe-choice {
   margin-top: 55px;
   padding: 35px;
   background:
      linear-gradient(130deg,rgba(230,180,80,.06),transparent 60%),
      var(--color-dark);
}

.entry-safe-heading {
   margin-bottom: 25px;
}

.entry-safe-content {
   display: grid;
   grid-template-columns: repeat(2,1fr);
   gap: 9px;
}

.entry-safe-content > div {
   display: grid;
   grid-template-columns: 25px 1fr;
   gap: 10px;
   padding: 17px;
   background: rgba(255,255,255,.025);
}

.entry-safe-content i {
   color: var(--color-gold);
}

.entry-safe-content p {
   margin: 0;
   color: rgba(255,255,255,.51);
   font-size: 10px;
}


/* ===== Final Note ===== */

.entry-rules-note {
   display: flex;
   gap: 14px;
   margin-top: 18px;
   padding: 19px 23px;
   background: rgba(255,255,255,.025);
}

.entry-rules-note i {
   color: var(--color-gold);
}

.entry-rules-note p {
   margin: 0;
   color: rgba(255,255,255,.39);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== Responsive ===== */

@media (max-width: 1050px) {

   .entry-property-layout,
   .perth-entry-layout,
   .sydney-entry-layout {
      grid-template-columns: 1fr;
   }

   .security-rules-grid,
   .entry-refusal-grid {
      grid-template-columns: repeat(2,1fr);
   }

}


@media (max-width: 800px) {

   .entry-rules-intro {
      grid-template-columns: 1fr;
      gap: 30px;
   }

   .entry-rules-title h2 {
      font-size: 36px;
   }

   .entry-rules-copy {
      padding-left: 25px;
   }

   .entry-comparison {
      grid-template-columns: 1fr;
   }

   .entry-property {
      padding: 35px 28px;
   }

   .entry-property-header {
      flex-direction: column;
      align-items: flex-start;
   }

   .perth-entry-id {
      grid-template-columns: 50px 1fr;
   }

   .perth-entry-id p {
      grid-column: 2;
   }

   .entry-safe-content {
      grid-template-columns: 1fr;
   }

}


@media (max-width: 560px) {

   .entry-rules-title h2 {
      font-size: 30px;
   }

   .entry-property {
      padding: 28px 20px;
   }

   .perth-clothing-grid,
   .security-rules-grid,
   .entry-refusal-grid {
      grid-template-columns: 1fr;
   }

   .perth-footwear,
   .perth-entry-id {
      grid-template-columns: 1fr;
   }

   .perth-entry-id p {
      grid-column: auto;
   }

}

/**************************************
*
*               HOTELS
*
***************************************/

.hotels-section {
   position: relative;
   background: var(--color-dark-gray);
}


/* ===== Intro ===== */

.hotels-intro {
   display: grid;
   grid-template-columns: .9fr 1.1fr;
   gap: 90px;
   align-items: end;
   margin-bottom: 60px;
}

.hotels-intro-title h2 {
   margin: 0;
   font-size: 48px;
   line-height: 1.12;
}

.hotels-intro-copy {
   padding-left: 40px;
   border-left: 1px solid rgba(230,180,80,.35);
}

.hotels-intro-copy p {
   margin-bottom: 17px;
   color: rgba(255,255,255,.64);
   line-height: 1.8;
}

.hotels-intro-copy .hotels-lead {
   color: #fff;
   font-size: 18px;
   line-height: 1.7;
}


/* ===== Main Properties ===== */

.hotel-property-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 14px;
   margin-bottom: 80px;
}

.hotel-property-card {
   overflow: hidden;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.06);
}

.hotel-property-image {
   position: relative;
   height: 300px;
   overflow: hidden;
}

.hotel-property-image::after {
   content: "";
   position: absolute;
   inset: 0;
   background: linear-gradient(
      to top,
      rgba(13,13,15,.8),
      transparent 65%
   );
}

.hotel-property-image img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   transition: transform .5s ease;
}

.hotel-property-card:hover .hotel-property-image img {
   transform: scale(1.035);
}

.hotel-property-count {
   position: absolute;
   z-index: 2;
   left: 25px;
   bottom: 22px;
}

.hotel-property-count strong {
   display: block;
   color: #fff;
   font-family: "Montserrat", sans-serif;
   font-size: 30px;
   font-weight: 500;
}

.hotel-property-count span {
   color: rgba(255,255,255,.6);
   font-size: 9px;
   letter-spacing: 1px;
   text-transform: uppercase;
}

.hotel-property-content {
   padding: 30px;
}

.hotel-location {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.hotel-property-content h3 {
   margin-bottom: 14px;
   font-size: 23px;
}

.hotel-property-content > p {
   min-height: 120px;
   margin: 0;
   color: rgba(255,255,255,.5);
   font-size: 12px;
   line-height: 1.7;
}

.hotel-property-facts {
   display: grid;
   grid-template-columns: repeat(2,1fr);
   gap: 10px;
   margin-top: 25px;
   padding-top: 20px;
   border-top: 1px solid rgba(255,255,255,.07);
}

.hotel-property-facts span {
   display: block;
   margin-bottom: 4px;
   color: rgba(255,255,255,.33);
   font-size: 8px;
   text-transform: uppercase;
}

.hotel-property-facts strong {
   color: rgba(255,255,255,.76);
   font-size: 11px;
   font-weight: 400;
}


/* ===== Resort Blocks ===== */

.hotel-resort-block {
   margin-top: 30px;
   padding: 50px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.06);
}

.hotel-resort-perth {
   background:
      linear-gradient(
         120deg,
         rgba(230,180,80,.05),
         transparent 45%
      ),
      var(--color-dark);
}

.hotel-resort-header {
   display: flex;
   justify-content: space-between;
   align-items: flex-end;
   gap: 30px;
   margin-bottom: 35px;
   padding-bottom: 30px;
   border-bottom: 1px solid rgba(255,255,255,.08);
}

.hotel-eyebrow {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.hotel-resort-header h3 {
   margin-bottom: 9px;
   font-size: 28px;
}

.hotel-resort-header p {
   max-width: 660px;
   margin: 0;
   color: rgba(255,255,255,.45);
   font-size: 12px;
}

.hotel-resort-stat {
   text-align: right;
   flex-shrink: 0;
}

.hotel-resort-stat strong {
   display: block;
   color: var(--color-gold);
   font-family: "Montserrat", sans-serif;
   font-size: 33px;
   font-weight: 500;
}

.hotel-resort-stat span {
   color: rgba(255,255,255,.35);
   font-size: 8px;
   text-transform: uppercase;
}


/* ===== Hotel Choice ===== */

.hotel-choice-grid {
   display: grid;
   grid-template-columns: repeat(3,1fr);
   gap: 10px;
}

.hotel-choice-card {
   padding: 30px 26px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.055);
}

.hotel-choice-card.premium {
   background:
      linear-gradient(
         140deg,
         rgba(230,180,80,.08),
         transparent 65%
      ),
      var(--color-dark-gray);
   border-color: rgba(230,180,80,.17);
}

.hotel-choice-type {
   display: block;
   margin-bottom: 9px;
   color: var(--color-gold);
   font-size: 8px;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.hotel-choice-card h4 {
   margin-bottom: 14px;
   font-size: 18px;
}

.hotel-choice-card > p {
   min-height: 110px;
   color: rgba(255,255,255,.5);
   font-size: 11px;
   line-height: 1.65;
}

.hotel-choice-features {
   display: grid;
   gap: 9px;
   margin-top: 22px;
   padding-top: 20px;
   border-top: 1px solid rgba(255,255,255,.07);
}

.hotel-choice-features span {
   color: rgba(255,255,255,.55);
   font-size: 10px;
}

.hotel-choice-features i {
   width: 20px;
   margin-right: 7px;
   color: var(--color-gold);
}

.hotel-choice-best {
   margin-top: 23px;
   padding: 15px;
   background: rgba(13,13,15,.45);
}

.hotel-choice-best span {
   display: block;
   margin-bottom: 4px;
   color: rgba(255,255,255,.3);
   font-size: 7px;
   text-transform: uppercase;
}

.hotel-choice-best strong {
   color: rgba(255,255,255,.7);
   font-size: 10px;
   font-weight: 400;
}


/* ===== Sydney ===== */

.hotel-sydney-block {
   margin-top: 30px;
   padding: 50px;
   background:
      linear-gradient(
         120deg,
         rgba(230,180,80,.07),
         transparent 50%
      ),
      var(--color-dark);
}

.hotel-sydney-main {
   display: grid;
   grid-template-columns: .9fr 1.1fr;
   gap: 60px;
}

.hotel-sydney-heading h3 {
   margin-bottom: 18px;
   font-size: 29px;
}

.hotel-sydney-heading p {
   color: rgba(255,255,255,.52);
   line-height: 1.8;
}

.hotel-sydney-heading .hotel-sydney-lead {
   color: rgba(255,255,255,.9);
   font-size: 17px;
}

.hotel-sydney-facts {
   display: grid;
   grid-template-columns: repeat(2,1fr);
   border-left: 1px solid rgba(255,255,255,.07);
   border-top: 1px solid rgba(255,255,255,.07);
}

.hotel-sydney-facts > div {
   padding: 24px;
   border-right: 1px solid rgba(255,255,255,.07);
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.hotel-sydney-facts i {
   display: block;
   margin-bottom: 18px;
   color: var(--color-gold);
}

.hotel-sydney-facts span {
   display: block;
   margin-bottom: 5px;
   color: rgba(255,255,255,.32);
   font-size: 8px;
   text-transform: uppercase;
}

.hotel-sydney-facts strong {
   color: rgba(255,255,255,.7);
   font-size: 12px;
   font-weight: 400;
}


/* ===== Sydney Pool ===== */

.sydney-pool-feature {
   display: grid;
   grid-template-columns: .65fr 1.25fr .45fr;
   gap: 35px;
   align-items: center;
   margin-top: 35px;
   padding: 30px;
   background: var(--color-dark-gray);
   border-left: 2px solid var(--color-gold);
}

.sydney-pool-feature span {
   color: var(--color-gold);
   font-size: 8px;
   text-transform: uppercase;
}

.sydney-pool-feature h4 {
   margin: 6px 0 0;
   font-size: 17px;
}

.sydney-pool-feature > p {
   margin: 0;
   color: rgba(255,255,255,.48);
   font-size: 11px;
   line-height: 1.65;
}

.sydney-pool-hours span,
.sydney-pool-hours small {
   display: block;
   color: rgba(255,255,255,.35);
   font-size: 8px;
   text-transform: uppercase;
}

.sydney-pool-hours strong {
   display: block;
   margin: 4px 0;
   color: var(--color-gold);
   font-family: "Montserrat", sans-serif;
   font-size: 16px;
   font-weight: 500;
}


/* ===== Casino Convenience ===== */

.hotel-casino-convenience {
   margin-top: 75px;
}

.hotel-convenience-heading {
   max-width: 760px;
   margin-bottom: 28px;
}

.hotel-convenience-heading > span,
.hotel-final-heading > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.hotel-convenience-heading h3,
.hotel-final-heading h3 {
   margin-bottom: 10px;
   font-size: 26px;
}

.hotel-convenience-heading p {
   margin: 0;
   color: rgba(255,255,255,.46);
   line-height: 1.7;
}

.hotel-convenience-grid {
   display: grid;
   grid-template-columns: repeat(4,1fr);
   gap: 10px;
}

.hotel-convenience-grid > div {
   padding: 27px;
   background: var(--color-dark);
}

.hotel-convenience-grid i {
   margin-bottom: 20px;
   color: var(--color-gold);
   font-size: 18px;
}

.hotel-convenience-grid h4 {
   margin-bottom: 9px;
   font-size: 14px;
}

.hotel-convenience-grid p {
   margin: 0;
   color: rgba(255,255,255,.43);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== Final Choice ===== */

.hotel-final-choice {
   margin-top: 55px;
}

.hotel-final-heading {
   margin-bottom: 25px;
}

.hotel-final-grid {
   display: grid;
   grid-template-columns: repeat(3,1fr);
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.06);
}

.hotel-final-grid > div {
   padding: 28px;
   border-right: 1px solid rgba(255,255,255,.07);
}

.hotel-final-grid > div:last-child {
   border-right: none;
}

.hotel-final-grid span {
   display: block;
   margin-bottom: 6px;
   color: rgba(255,255,255,.33);
   font-size: 8px;
   text-transform: uppercase;
}

.hotel-final-grid strong {
   display: block;
   margin-bottom: 9px;
   color: var(--color-gold);
   font-family: "Montserrat", sans-serif;
   font-size: 17px;
   font-weight: 500;
}

.hotel-final-grid p {
   margin: 0;
   color: rgba(255,255,255,.45);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== Note ===== */

.hotel-note {
   display: flex;
   gap: 14px;
   margin-top: 18px;
   padding: 19px 23px;
   background: rgba(255,255,255,.025);
}

.hotel-note i {
   margin-top: 3px;
   color: var(--color-gold);
}

.hotel-note p {
   margin: 0;
   color: rgba(255,255,255,.39);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== Responsive ===== */

@media (max-width: 1050px) {

   .hotel-property-grid {
      grid-template-columns: 1fr;
   }

   .hotel-property-card {
      display: grid;
      grid-template-columns: .8fr 1.2fr;
   }

   .hotel-property-image {
      height: 100%;
      min-height: 330px;
   }

   .hotel-property-content > p {
      min-height: 0;
   }

   .hotel-choice-grid {
      grid-template-columns: 1fr;
   }

   .hotel-choice-card > p {
      min-height: 0;
   }

   .hotel-sydney-main {
      grid-template-columns: 1fr;
   }

}


@media (max-width: 800px) {

   .hotels-intro {
      grid-template-columns: 1fr;
      gap: 30px;
   }

   .hotels-intro-title h2 {
      font-size: 36px;
   }

   .hotels-intro-copy {
      padding-left: 25px;
   }

   .hotel-property-card {
      display: block;
   }

   .hotel-property-image {
      height: 280px;
      min-height: 0;
   }

   .hotel-resort-block,
   .hotel-sydney-block {
      padding: 35px 28px;
   }

   .hotel-resort-header {
      flex-direction: column;
      align-items: flex-start;
   }

   .hotel-resort-stat {
      text-align: left;
   }

   .sydney-pool-feature {
      grid-template-columns: 1fr;
   }

   .hotel-convenience-grid {
      grid-template-columns: repeat(2,1fr);
   }

   .hotel-final-grid {
      grid-template-columns: 1fr;
   }

   .hotel-final-grid > div {
      border-right: none;
      border-bottom: 1px solid rgba(255,255,255,.07);
   }

}


@media (max-width: 560px) {

   .hotels-intro-title h2 {
      font-size: 30px;
   }

   .hotel-property-image {
      height: 230px;
   }

   .hotel-resort-block,
   .hotel-sydney-block {
      padding: 28px 20px;
   }

   .hotel-sydney-facts,
   .hotel-convenience-grid {
      grid-template-columns: 1fr;
   }

}

/**************************************
*
*       DINING / BARS / NIGHTLIFE
*
***************************************/

.food-section {
   background: var(--color-dark-gray);
}


/* ===== Intro ===== */

.food-intro {
   max-width: 900px;
   margin: 0 auto 70px;
   text-align: center;
}

.food-intro h2 {
   margin-bottom: 22px;
   font-size: 46px;
   line-height: 1.15;
}

.food-intro > p {
   max-width: 820px;
   margin: 0 auto;
   color: rgba(255,255,255,.62);
   font-size: 15px;
   line-height: 1.8;
}


/* ===== Shared headings ===== */

.food-section-head {
   max-width: 780px;
   margin-bottom: 32px;
}

.food-section-head > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   font-weight: 700;
   letter-spacing: 1.5px;
   text-transform: uppercase;
}

.food-section-head h3 {
   margin-bottom: 12px;
   font-size: 28px;
}

.food-section-head p {
   margin: 0;
   color: rgba(255,255,255,.48);
   line-height: 1.7;
}

.food-section-head.compact {
   margin-bottom: 25px;
}

.food-section-head.compact h3 {
   margin-bottom: 0;
}


/* ======================================
   RESTAURANT PROPERTY CARDS
====================================== */

.food-property-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 14px;
}

.food-property-card,
.bars-property-card {
   display: flex;
   flex-direction: column;
   height: 100%;
   padding: 32px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.07);
}

.food-property-top,
.bars-property-top {
   min-height: 180px;
   padding-bottom: 24px;
   margin-bottom: 24px;
   border-bottom: 1px solid rgba(255,255,255,.08);
}

.food-property-top > span,
.bars-property-top > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   font-weight: 700;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.food-property-top h3,
.bars-property-top h3 {
   margin-bottom: 12px;
   font-size: 20px;
}

.food-property-top p,
.bars-property-top p {
   margin: 0;
   color: rgba(255,255,255,.5);
   font-size: 11px;
   line-height: 1.65;
}


/* ===== Categories ===== */

.food-category,
.bar-group {
   padding: 20px 0;
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.food-category:last-of-type,
.bar-group:last-of-type {
   border-bottom: none;
}

.food-category-label,
.bar-group > span {
   display: block;
   margin-bottom: 13px;
   color: rgba(255,255,255,.38);
   font-size: 8px;
   font-weight: 700;
   letter-spacing: 1.2px;
   text-transform: uppercase;
}

.food-category-text,
.bar-group > p {
   margin: 0;
   color: rgba(255,255,255,.5);
   font-size: 10px;
   line-height: 1.65;
}


/* ===== Tags ===== */

.food-tags {
   display: flex;
   flex-wrap: wrap;
   gap: 7px;
}

.food-tags span {
   display: inline-block;
   padding: 7px 9px;
   background: rgba(255,255,255,.025);
   border: 1px solid rgba(255,255,255,.07);
   color: rgba(255,255,255,.58);
   font-size: 9px;
   line-height: 1.3;
}


/* ===== Bottom property note ===== */

.food-property-note {
   display: grid;
   grid-template-columns: 22px 1fr;
   gap: 10px;
   margin-top: auto;
   padding-top: 24px;
   border-top: 1px solid rgba(230,180,80,.2);
}

.food-property-note i {
   margin-top: 2px;
   color: var(--color-gold);
   font-size: 11px;
}

.food-property-note p {
   margin: 0;
   color: rgba(255,255,255,.42);
   font-size: 9px;
   line-height: 1.6;
}


/* ======================================
   BARS
====================================== */

.bars-heading {
   margin-top: 85px;
}

.bars-property-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 14px;
}


/* ======================================
   SCENARIO CHOICE
====================================== */

.food-choice-block {
   margin-top: 75px;
}

.food-choice-grid {
   display: grid;
   grid-template-columns: repeat(4, 1fr);
   gap: 10px;
}

.food-choice-grid > div {
   min-height: 215px;
   padding: 26px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.06);
}

.food-choice-grid i {
   margin-bottom: 20px;
   color: var(--color-gold);
   font-size: 18px;
}

.food-choice-grid span {
   display: block;
   margin-bottom: 6px;
   color: rgba(255,255,255,.34);
   font-size: 8px;
   letter-spacing: 1.1px;
   text-transform: uppercase;
}

.food-choice-grid h4 {
   margin-bottom: 10px;
   font-size: 14px;
}

.food-choice-grid p {
   margin: 0;
   color: rgba(255,255,255,.45);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== Notes ===== */

.food-info-note {
   display: grid;
   grid-template-columns: 22px 1fr;
   gap: 12px;
   margin-top: 16px;
   padding: 18px 20px;
   background: rgba(255,255,255,.022);
   border: 1px solid rgba(255,255,255,.05);
}

.food-info-note i {
   margin-top: 2px;
   color: var(--color-gold);
}

.food-info-note p {
   margin: 0;
   color: rgba(255,255,255,.4);
   font-size: 10px;
   line-height: 1.6;
}

.food-info-note a {
   color: var(--color-gold);
}


/* ===== Hover ===== */

.food-property-card,
.bars-property-card,
.food-choice-grid > div,
.food-tags span {
   transition:
      border-color .25s ease,
      background .25s ease;
}

.food-property-card:hover,
.bars-property-card:hover,
.food-choice-grid > div:hover {
   border-color: rgba(230,180,80,.22);
}

.food-tags span:hover {
   border-color: rgba(230,180,80,.22);
   background: rgba(230,180,80,.04);
}


/* ======================================
   RESPONSIVE
====================================== */

@media (max-width: 1050px) {

   .food-property-grid,
   .bars-property-grid {
      grid-template-columns: 1fr;
   }

   .food-property-top,
   .bars-property-top {
      min-height: auto;
   }

   .food-choice-grid {
      grid-template-columns: repeat(2, 1fr);
   }

}


@media (max-width: 700px) {

   .food-intro {
      margin-bottom: 50px;
   }

   .food-intro h2 {
      font-size: 35px;
   }

   .food-property-card,
   .bars-property-card {
      padding: 26px 22px;
   }

   .bars-heading {
      margin-top: 60px;
   }

   .food-choice-block {
      margin-top: 55px;
   }

}


@media (max-width: 520px) {

   .food-intro h2 {
      font-size: 29px;
   }

   .food-choice-grid {
      grid-template-columns: 1fr;
   }

   .food-choice-grid > div {
      min-height: 0;
   }

   .food-tags {
      gap: 5px;
   }

   .food-tags span {
      font-size: 8px;
   }

}

/**************************************
*
*       ENTERTAINMENT & WELLNESS
*
***************************************/

.experience-section {
   background: var(--color-dark);
}


/* ===== Intro ===== */

.experience-intro {
   max-width: 900px;
   margin: 0 auto 70px;
   text-align: center;
}

.experience-intro h2 {
   margin-bottom: 22px;
   font-size: 46px;
   line-height: 1.15;
}

.experience-intro > p {
   max-width: 820px;
   margin: 0 auto;
   color: rgba(255,255,255,.62);
   font-size: 15px;
   line-height: 1.8;
}


/* ===== Shared Heading ===== */

.experience-heading {
   max-width: 780px;
   margin-bottom: 32px;
}

.experience-heading > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   font-weight: 700;
   letter-spacing: 1.4px;
   text-transform: uppercase;
}

.experience-heading h3 {
   margin-bottom: 12px;
   font-size: 28px;
}

.experience-heading p {
   margin: 0;
   color: rgba(255,255,255,.48);
   line-height: 1.7;
}


/* ======================================
   ENTERTAINMENT
====================================== */

.entertainment-grid {
   display: grid;
   grid-template-columns: repeat(3,1fr);
   gap: 14px;
}

.entertainment-card {
   display: flex;
   flex-direction: column;
   min-height: 100%;
   padding: 32px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.07);
}

.entertainment-card.featured {
   border-color: rgba(230,180,80,.22);
}

.entertainment-card-head {
   min-height: 150px;
   padding-bottom: 22px;
   margin-bottom: 24px;
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.entertainment-card-head > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   font-weight: 700;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.entertainment-card-head h3 {
   margin-bottom: 11px;
   font-size: 19px;
}

.entertainment-card-head p {
   margin: 0;
   color: rgba(255,255,255,.47);
   font-size: 11px;
   line-height: 1.65;
}


/* ===== Main Feature ===== */

.entertainment-feature {
   display: grid;
   grid-template-columns: 46px 1fr;
   gap: 15px;
   min-height: 170px;
   padding-bottom: 23px;
   margin-bottom: 20px;
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.entertainment-icon {
   width: 42px;
   height: 42px;
   display: flex;
   align-items: center;
   justify-content: center;
   border: 1px solid rgba(230,180,80,.22);
   color: var(--color-gold);
}

.entertainment-feature span {
   display: block;
   margin-bottom: 5px;
   color: rgba(255,255,255,.33);
   font-size: 8px;
   text-transform: uppercase;
}

.entertainment-feature h4 {
   margin-bottom: 9px;
   font-size: 14px;
}

.entertainment-feature p {
   margin: 0;
   color: rgba(255,255,255,.46);
   font-size: 10px;
   line-height: 1.6;
}


/* ===== List ===== */

.entertainment-list {
   display: grid;
   gap: 7px;
}

.entertainment-list > div {
   display: grid;
   grid-template-columns: 22px 1fr;
   gap: 8px;
   padding: 10px 0;
   border-bottom: 1px solid rgba(255,255,255,.05);
}

.entertainment-list i {
   color: var(--color-gold);
   font-size: 11px;
}

.entertainment-list span {
   color: rgba(255,255,255,.55);
   font-size: 10px;
}

.entertainment-note {
   margin-top: auto;
   padding-top: 22px;
}

.entertainment-note p {
   margin: 0;
   color: rgba(255,255,255,.37);
   font-size: 9px;
   line-height: 1.6;
}


/* ======================================
   WHAT'S ON
====================================== */

.whats-on-block {
   display: grid;
   grid-template-columns: .65fr 1.1fr .8fr;
   gap: 40px;
   align-items: center;
   margin-top: 35px;
   padding: 30px;
   background: var(--color-dark-gray);
   border-left: 2px solid var(--color-gold);
}

.whats-on-heading > span {
   display: block;
   margin-bottom: 6px;
   color: var(--color-gold);
   font-size: 8px;
   text-transform: uppercase;
}

.whats-on-heading h3 {
   margin: 0;
   font-size: 18px;
}

.whats-on-copy p {
   margin: 0;
   color: rgba(255,255,255,.46);
   font-size: 10px;
   line-height: 1.65;
}

.whats-on-points {
   display: flex;
   flex-wrap: wrap;
   gap: 6px;
}

.whats-on-points span {
   padding: 7px 9px;
   border: 1px solid rgba(255,255,255,.07);
   color: rgba(255,255,255,.48);
   font-size: 8px;
}


/* ======================================
   WELLNESS
====================================== */

.wellness-heading {
   margin-top: 85px;
}

.wellness-grid {
   display: grid;
   grid-template-columns: repeat(3,1fr);
   gap: 14px;
}

.wellness-card {
   display: flex;
   flex-direction: column;
   padding: 30px;
   background: var(--color-dark-gray);
   border: 1px solid rgba(255,255,255,.07);
}

.wellness-card.featured {
   border-color: rgba(230,180,80,.22);
}

.wellness-card-head {
   min-height: 95px;
   padding-bottom: 20px;
   margin-bottom: 10px;
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.wellness-card-head span {
   display: block;
   margin-bottom: 7px;
   color: var(--color-gold);
   font-size: 9px;
   text-transform: uppercase;
}

.wellness-card-head h3 {
   margin: 0;
   font-size: 18px;
}

.wellness-row {
   display: grid;
   grid-template-columns: 32px 1fr;
   gap: 12px;
   padding: 18px 0;
   border-bottom: 1px solid rgba(255,255,255,.06);
}

.wellness-row i {
   margin-top: 2px;
   color: var(--color-gold);
   font-size: 14px;
}

.wellness-row h4 {
   margin-bottom: 6px;
   font-size: 12px;
}

.wellness-row p {
   margin: 0;
   color: rgba(255,255,255,.43);
   font-size: 9px;
   line-height: 1.6;
}

.wellness-fact {
   margin-top: auto;
   padding-top: 20px;
}

.wellness-fact span {
   display: block;
   margin-bottom: 5px;
   color: rgba(255,255,255,.3);
   font-size: 8px;
   text-transform: uppercase;
}

.wellness-fact strong {
   color: var(--color-gold);
   font-size: 11px;
   font-weight: 500;
}


/* ======================================
   FINAL COMPARISON
====================================== */

.experience-choice {
   display: grid;
   grid-template-columns: repeat(4,1fr);
   gap: 10px;
   margin-top: 65px;
}

.experience-choice > div {
   padding: 25px;
   background: var(--color-dark-gray);
   border-top: 1px solid rgba(230,180,80,.25);
}

.experience-choice span {
   display: block;
   margin-bottom: 6px;
   color: rgba(255,255,255,.32);
   font-size: 8px;
   text-transform: uppercase;
}

.experience-choice strong {
   display: block;
   margin-bottom: 9px;
   color: var(--color-gold);
   font-family: "Montserrat", sans-serif;
   font-size: 16px;
   font-weight: 500;
}

.experience-choice p {
   margin: 0;
   color: rgba(255,255,255,.43);
   font-size: 9px;
   line-height: 1.6;
}


/* ===== Note ===== */

.experience-note {
   display: grid;
   grid-template-columns: 22px 1fr;
   gap: 12px;
   margin-top: 18px;
   padding: 18px 20px;
   background: rgba(255,255,255,.025);
}

.experience-note i {
   color: var(--color-gold);
}

.experience-note p {
   margin: 0;
   color: rgba(255,255,255,.38);
   font-size: 9px;
   line-height: 1.6;
}


/* ======================================
   RESPONSIVE
====================================== */

@media (max-width: 1000px) {

   .entertainment-grid,
   .wellness-grid {
      grid-template-columns: 1fr;
   }

   .entertainment-card-head,
   .wellness-card-head,
   .entertainment-feature {
      min-height: auto;
   }

   .experience-choice {
      grid-template-columns: repeat(2,1fr);
   }

   .whats-on-block {
      grid-template-columns: 1fr;
      gap: 20px;
   }

}


@media (max-width: 650px) {

   .experience-intro {
      margin-bottom: 50px;
   }

   .experience-intro h2 {
      font-size: 34px;
   }

   .entertainment-card,
   .wellness-card {
      padding: 25px 21px;
   }

   .wellness-heading {
      margin-top: 60px;
   }

   .experience-choice {
      grid-template-columns: 1fr;
   }

}


@media (max-width: 480px) {

   .experience-intro h2 {
      font-size: 29px;
   }

}

/**************************************
*
*       GETTING THERE & PARKING
*
***************************************/

.arrival-section {
   background: var(--color-dark-gray);
}


/* ===== Intro ===== */

.arrival-intro {
   max-width: 900px;
   margin: 0 auto 70px;
   text-align: center;
}

.arrival-intro h2 {
   margin-bottom: 22px;
   font-size: 46px;
   line-height: 1.15;
}

.arrival-intro > p {
   max-width: 820px;
   margin: 0 auto;
   color: rgba(255,255,255,.62);
   font-size: 15px;
   line-height: 1.8;
}


/* ===== Shared Heading ===== */

.arrival-heading {
   max-width: 780px;
   margin-bottom: 32px;
}

.arrival-heading > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   font-weight: 700;
   letter-spacing: 1.4px;
   text-transform: uppercase;
}

.arrival-heading h3 {
   margin-bottom: 12px;
   font-size: 28px;
}

.arrival-heading p {
   margin: 0;
   color: rgba(255,255,255,.48);
   line-height: 1.7;
}


/* ======================================
   GETTING THERE
====================================== */

.arrival-property-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 14px;
}

.arrival-property-card {
   display: flex;
   flex-direction: column;
   height: 100%;
   padding: 32px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.07);
}

.arrival-property-card.featured {
   border-color: rgba(230,180,80,.22);
}

.arrival-property-head {
   min-height: 165px;
   padding-bottom: 24px;
   margin-bottom: 24px;
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.arrival-property-head > span {
   display: block;
   margin-bottom: 8px;
   color: var(--color-gold);
   font-size: 9px;
   font-weight: 700;
   letter-spacing: 1.3px;
   text-transform: uppercase;
}

.arrival-property-head h3 {
   margin-bottom: 12px;
   font-size: 20px;
}

.arrival-property-head p {
   margin: 0;
   color: rgba(255,255,255,.48);
   font-size: 11px;
   line-height: 1.65;
}


/* ===== Address ===== */

.arrival-address {
   display: grid;
   grid-template-columns: 36px 1fr;
   gap: 13px;
   padding: 19px;
   margin-bottom: 8px;
   background: rgba(255,255,255,.025);
}

.arrival-address > i {
   margin-top: 4px;
   color: var(--color-gold);
   font-size: 15px;
}

.arrival-address span {
   display: block;
   margin-bottom: 3px;
   color: rgba(255,255,255,.32);
   font-size: 8px;
   text-transform: uppercase;
}

.arrival-address strong {
   display: block;
   color: #fff;
   font-size: 12px;
}

.arrival-address p {
   margin: 3px 0 0;
   color: rgba(255,255,255,.48);
   font-size: 10px;
}


/* ===== Transport Detail ===== */

.arrival-detail {
   padding: 18px 0;
   border-bottom: 1px solid rgba(255,255,255,.06);
}

.arrival-detail > span {
   display: block;
   margin-bottom: 6px;
   color: var(--color-gold);
   font-size: 8px;
   letter-spacing: 1px;
   text-transform: uppercase;
}

.arrival-detail p {
   margin: 0;
   color: rgba(255,255,255,.46);
   font-size: 10px;
   line-height: 1.65;
}

.arrival-property-note {
   display: grid;
   grid-template-columns: 24px 1fr;
   gap: 10px;
   margin-top: auto;
   padding-top: 22px;
}

.arrival-property-note i {
   color: var(--color-gold);
}

.arrival-property-note p {
   margin: 0;
   color: rgba(255,255,255,.36);
   font-size: 9px;
   line-height: 1.6;
}


/* ======================================
   PARKING
====================================== */

.parking-heading {
   margin-top: 85px;
}

.parking-grid {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 14px;
}

.parking-card {
   display: flex;
   flex-direction: column;
   padding: 32px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.07);
}

.parking-card.featured {
   border-color: rgba(230,180,80,.22);
}

.parking-card-head {
   min-height: 145px;
   padding-bottom: 22px;
   margin-bottom: 22px;
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.parking-card-head > span {
   display: block;
   margin-bottom: 7px;
   color: var(--color-gold);
   font-size: 9px;
   font-weight: 700;
   text-transform: uppercase;
}

.parking-card-head h3 {
   margin-bottom: 10px;
   font-size: 19px;
}

.parking-card-head p {
   margin: 0;
   color: rgba(255,255,255,.47);
   font-size: 10px;
   line-height: 1.65;
}


/* ===== Main Parking Fact ===== */

.parking-fact {
   display: grid;
   grid-template-columns: 38px 1fr;
   gap: 12px;
   padding: 18px;
   margin-bottom: 10px;
   background: rgba(230,180,80,.045);
}

.parking-fact i {
   margin-top: 4px;
   color: var(--color-gold);
   font-size: 17px;
}

.parking-fact span {
   display: block;
   margin-bottom: 3px;
   color: rgba(255,255,255,.32);
   font-size: 8px;
   text-transform: uppercase;
}

.parking-fact strong {
   color: #fff;
   font-size: 13px;
}


/* ===== Parking List ===== */

.parking-list {
   display: grid;
}

.parking-list > div {
   display: grid;
   grid-template-columns: 25px 1fr;
   gap: 10px;
   padding: 15px 0;
   border-bottom: 1px solid rgba(255,255,255,.06);
}

.parking-list i {
   margin-top: 2px;
   color: var(--color-gold);
   font-size: 11px;
}

.parking-list p {
   margin: 0;
   color: rgba(255,255,255,.46);
   font-size: 10px;
   line-height: 1.6;
}

.parking-warning {
   display: grid;
   grid-template-columns: 24px 1fr;
   gap: 10px;
   margin-top: auto;
   padding-top: 20px;
}

.parking-warning i {
   color: var(--color-gold);
}

.parking-warning p {
   margin: 0;
   color: rgba(255,255,255,.36);
   font-size: 9px;
   line-height: 1.6;
}


/* ======================================
   MEMBER PARKING
====================================== */

.member-parking-block {
   margin-top: 40px;
   padding: 32px;
   background: var(--color-dark);
   border: 1px solid rgba(255,255,255,.07);
}

.member-parking-heading {
   max-width: 700px;
   margin-bottom: 25px;
}

.member-parking-heading > span {
   display: block;
   margin-bottom: 7px;
   color: var(--color-gold);
   font-size: 9px;
   text-transform: uppercase;
}

.member-parking-heading h3 {
   margin: 0;
   font-size: 22px;
}

.member-parking-grid {
   display: grid;
   grid-template-columns: repeat(3,1fr);
   border-top: 1px solid rgba(255,255,255,.07);
   border-left: 1px solid rgba(255,255,255,.07);
}

.member-parking-grid > div {
   padding: 24px;
   border-right: 1px solid rgba(255,255,255,.07);
   border-bottom: 1px solid rgba(255,255,255,.07);
}

.member-parking-grid span {
   display: block;
   margin-bottom: 6px;
   color: rgba(255,255,255,.33);
   font-size: 8px;
   text-transform: uppercase;
}

.member-parking-grid strong {
   display: block;
   margin-bottom: 9px;
   color: var(--color-gold);
   font-size: 13px;
}

.member-parking-grid p {
   margin: 0;
   color: rgba(255,255,255,.44);
   font-size: 9px;
   line-height: 1.6;
}

.member-parking-note {
   display: grid;
   grid-template-columns: 22px 1fr;
   gap: 10px;
   margin-top: 18px;
}

.member-parking-note i {
   color: var(--color-gold);
}

.member-parking-note p {
   margin: 0;
   color: rgba(255,255,255,.38);
   font-size: 9px;
   line-height: 1.6;
}

.member-parking-note a {
   color: var(--color-gold);
}


/* ======================================
   QUICK CHOICE
====================================== */

.arrival-choice {
   display: grid;
   grid-template-columns: repeat(3,1fr);
   gap: 10px;
   margin-top: 65px;
}

.arrival-choice > div {
   padding: 27px;
   background: var(--color-dark);
   border-top: 1px solid rgba(230,180,80,.25);
}

.arrival-choice i {
   margin-bottom: 18px;
   color: var(--color-gold);
   font-size: 17px;
}

.arrival-choice span {
   display: block;
   margin-bottom: 5px;
   color: rgba(255,255,255,.32);
   font-size: 8px;
   text-transform: uppercase;
}

.arrival-choice strong {
   display: block;
   margin-bottom: 9px;
   color: var(--color-gold);
   font-size: 15px;
}

.arrival-choice p {
   margin: 0;
   color: rgba(255,255,255,.43);
   font-size: 9px;
   line-height: 1.6;
}


/* ===== Final Note ===== */

.arrival-note {
   display: grid;
   grid-template-columns: 22px 1fr;
   gap: 11px;
   margin-top: 18px;
   padding: 18px 20px;
   background: rgba(255,255,255,.025);
}

.arrival-note i {
   color: var(--color-gold);
}

.arrival-note p {
   margin: 0;
   color: rgba(255,255,255,.38);
   font-size: 9px;
   line-height: 1.6;
}


/* ======================================
   RESPONSIVE
====================================== */

@media (max-width: 1000px) {

   .arrival-property-grid,
   .parking-grid {
      grid-template-columns: 1fr;
   }

   .arrival-property-head,
   .parking-card-head {
      min-height: auto;
   }

   .member-parking-grid {
      grid-template-columns: 1fr;
   }

   .arrival-choice {
      grid-template-columns: 1fr;
   }

}


@media (max-width: 650px) {

   .arrival-intro h2 {
      font-size: 34px;
   }

   .arrival-property-card,
   .parking-card,
   .member-parking-block {
      padding: 25px 21px;
   }

   .parking-heading {
      margin-top: 60px;
   }

}


@media (max-width: 480px) {

   .arrival-intro h2 {
      font-size: 29px;
   }

}

/**************************************
*
*                 FAQ
*
***************************************/

.faq-section {
   background: var(--color-dark);
}


/* ===== Intro ===== */

.faq-intro {
   max-width: 850px;
   margin: 0 auto 55px;
   text-align: center;
}

.faq-intro h2 {
   margin-bottom: 18px;
   font-size: 46px;
   line-height: 1.15;
}

.faq-intro > p {
   max-width: 720px;
   margin: 0 auto;
   color: rgba(255,255,255,.55);
   font-size: 14px;
   line-height: 1.75;
}


/* ===== FAQ List ===== */

.faq-list {
   max-width: 1000px;
   margin: 0 auto;
   border-top: 1px solid rgba(255,255,255,.08);
}

.faq-item {
   border-bottom: 1px solid rgba(255,255,255,.08);
}


/* ===== Question ===== */

.faq-question {
   width: 100%;
   min-height: 76px;
   padding: 20px 5px;
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 30px;

   border: 0;
   outline: 0;
   background: transparent;
   cursor: pointer;

   color: #fff;
   text-align: left;
}

.faq-question span {
   font-family: "Montserrat", sans-serif;
   font-size: 15px;
   font-weight: 500;
   line-height: 1.45;
}

.faq-question i {
   flex: 0 0 34px;
   width: 34px;
   height: 34px;

   display: flex;
   align-items: center;
   justify-content: center;

   border: 1px solid rgba(230,180,80,.22);
   color: var(--color-gold);

   font-size: 11px;

   transition:
      transform .25s ease,
      background .25s ease,
      border-color .25s ease;
}


/* ===== Answer ===== */

.faq-answer {
   display: grid;
   grid-template-rows: 0fr;

   transition: grid-template-rows .3s ease;
}

.faq-answer-inner {
   overflow: hidden;
}

.faq-answer-inner p {
   max-width: 850px;
   margin: 0;
   padding: 0 60px 23px 5px;

   color: rgba(255,255,255,.52);
   font-size: 11px;
   line-height: 1.7;
}

.faq-answer-inner a {
   color: var(--color-gold);
   text-decoration: none;
   border-bottom: 1px solid rgba(230,180,80,.3);
}


/* ===== Open State ===== */

.faq-item.active .faq-answer {
   grid-template-rows: 1fr;
}

.faq-item.active .faq-question i {
   transform: rotate(45deg);
   background: rgba(230,180,80,.07);
   border-color: rgba(230,180,80,.4);
}

.faq-item.active .faq-question span {
   color: var(--color-gold);
}


/* ===== Hover ===== */

.faq-question:hover span {
   color: var(--color-gold);
}

.faq-question:hover i {
   border-color: rgba(230,180,80,.45);
}


/* ===== Bottom ===== */

.faq-bottom {
   max-width: 1000px;
   margin: 25px auto 0;
   padding: 18px 20px;

   display: grid;
   grid-template-columns: 22px 1fr;
   gap: 12px;

   background: rgba(255,255,255,.025);
}

.faq-bottom i {
   margin-top: 2px;
   color: var(--color-gold);
   font-size: 12px;
}

.faq-bottom p {
   margin: 0;
   color: rgba(255,255,255,.37);
   font-size: 9px;
   line-height: 1.6;
}


/* ===== Responsive ===== */

@media (max-width: 700px) {

   .faq-intro h2 {
      font-size: 35px;
   }

   .faq-question {
      min-height: 68px;
      gap: 18px;
   }

   .faq-question span {
      font-size: 13px;
   }

   .faq-answer-inner p {
      padding-right: 10px;
   }

}


@media (max-width: 480px) {

   .faq-intro h2 {
      font-size: 29px;
   }

   .faq-question span {
      font-size: 12px;
   }

   .faq-question i {
      flex-basis: 30px;
      width: 30px;
      height: 30px;
   }

}

/**************************************
*
*          LEGAL PAGES
*
***************************************/
.legal-page { background: var(--color-dark); color: var(--color-white); }
.legal-page .header { position: relative; background: #0D0D0F; border-bottom: 1px solid rgba(255,255,255,.07); }
.legal-page .wrapper-header { min-height: 88px; }
.legal-hero { padding: 90px 0 70px; background: linear-gradient(180deg,#17171b 0%,#0D0D0F 100%); border-bottom:1px solid rgba(255,255,255,.07); }
.legal-hero-inner { max-width: 980px; }
.legal-kicker { display:inline-block; margin-bottom:12px; color:var(--color-gold); font-size:12px; letter-spacing:1.8px; text-transform:uppercase; }
.legal-hero h1 { margin-bottom:20px; font-size:52px; line-height:1.08; }
.legal-hero p { max-width:850px; margin:0; color:rgba(255,255,255,.66); font-size:17px; line-height:1.8; }
.legal-meta { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.legal-meta span { padding:9px 12px; border:1px solid rgba(230,180,80,.22); color:rgba(255,255,255,.62); font-size:10px; text-transform:uppercase; letter-spacing:.7px; }
.legal-layout { display:grid; grid-template-columns:280px minmax(0,1fr); gap:50px; align-items:start; padding:70px 15px 100px; }
.legal-toc { position:sticky; top:25px; padding:26px; background:var(--color-dark-gray); border:1px solid rgba(255,255,255,.07); }
.legal-toc h2 { margin-bottom:18px; font-size:15px; }
.legal-toc a { display:block; padding:9px 0; color:rgba(255,255,255,.54); font-size:11px; border-bottom:1px solid rgba(255,255,255,.05); }
.legal-toc a:hover { color:var(--color-gold); }
.legal-content { min-width:0; }
.legal-summary { margin-bottom:35px; padding:28px; background:rgba(230,180,80,.045); border-left:2px solid var(--color-gold); }
.legal-summary p { margin:0; color:rgba(255,255,255,.65); line-height:1.8; }
.legal-section { scroll-margin-top:30px; padding:0 0 35px; margin-bottom:35px; border-bottom:1px solid rgba(255,255,255,.07); }
.legal-section:last-child { border-bottom:0; }
.legal-section h2 { margin-bottom:18px; font-size:25px; }
.legal-section h3 { margin:25px 0 12px; font-size:15px; }
.legal-section p { margin:0 0 15px; color:rgba(255,255,255,.62); line-height:1.82; }
.legal-section ul,.legal-section ol { margin:14px 0 18px 22px; }
.legal-section li { margin-bottom:9px; color:rgba(255,255,255,.6); line-height:1.7; }
.legal-section a { color:var(--color-gold); }
.legal-callout { margin:22px 0; padding:22px; background:var(--color-dark-gray); border:1px solid rgba(255,255,255,.07); }
.legal-callout strong { display:block; margin-bottom:8px; color:var(--color-gold); font-family:"Montserrat",sans-serif; font-size:12px; text-transform:uppercase; }
.legal-callout p { margin:0; font-size:13px; }
.legal-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:12px; margin:20px 0; }
.legal-card { padding:22px; background:var(--color-dark-gray); border:1px solid rgba(255,255,255,.07); }
.legal-card h3 { margin:0 0 9px; font-size:13px; }
.legal-card p { margin:0; font-size:12px; line-height:1.7; }
.legal-contact { padding:24px; background:rgba(255,255,255,.025); border:1px solid rgba(255,255,255,.06); }
.footer-independence { margin-top:12px; font-size:11px; color:rgba(255,255,255,.42)!important; }
@media(max-width:900px){.legal-layout{grid-template-columns:1fr;}.legal-toc{position:relative;top:auto;}.legal-hero h1{font-size:40px;}}
@media(max-width:560px){.legal-hero{padding:65px 0 50px;}.legal-hero h1{font-size:32px;}.legal-hero p{font-size:15px;}.legal-layout{padding-top:45px;}.legal-grid{grid-template-columns:1fr;}.legal-toc{padding:20px;}}

.header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 9999;

    background: rgba(13, 13, 15, 0.96);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);

    border-bottom: 1px solid rgba(230, 180, 80, 0.12);

    transition: background 0.3s ease, box-shadow 0.3s ease;
}

/* ===== RESPONSIVE HERO HEADER ===== */

.wrapper-header-content {
    width: 100%;
    min-height: 100vh;
    min-height: 100svh;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 120px 20px 70px;

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

    box-sizing: border-box;
}

/* Header content */

.header-content {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
    text-align: center;
}

/* Main heading */

.header-content h1 {
    font-size: clamp(32px, 5vw, 70px);
    line-height: 1.15;
    overflow-wrap: break-word;
}

/* Subtitle */

.header-content .suptitle {
    font-size: clamp(11px, 1.2vw, 14px);
}

/* Description */

.header-content p {
    font-size: clamp(14px, 1.4vw, 18px);
    line-height: 1.7;
}

/* Tablet */

@media (max-width: 992px) {
    .wrapper-header-content {
        padding: 110px 25px 65px;
    }

    .header-content h1 {
        font-size: clamp(34px, 5vw, 52px);
    }
}

/* Mobile */

@media (max-width: 600px) {
    .wrapper-header-content {
        min-height: 100svh;
        padding: 100px 15px 50px;
    }

    .header-content h1 {
        font-size: clamp(28px, 7vw, 38px);
        line-height: 1.2;
    }

    .header-content p {
        font-size: 14px;
        line-height: 1.65;
    }

    .header-content .btn {
        padding: 13px 25px;
        font-size: 13px;
    }
}


/* =========================================
   CASINO ABOUT — EDITORIAL DESIGN
========================================= */

.venue-story {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: var(--color-dark);
    color: #fff;
}

.venue-story::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 670px;
    z-index: -1;
    pointer-events: none;
    background:
        radial-gradient(
            ellipse 55% 55% at 92% 8%,
            rgba(230,180,80,.09),
            transparent 78%
        ),
        linear-gradient(
            180deg,
            rgba(255,255,255,.02),
            transparent
        );
}

.venue-story::after {
    content: "";
    position: absolute;
    right: -200px;
    top: 50px;
    width: 610px;
    height: 610px;
    border: 1px solid rgba(230,180,80,.08);
    border-radius: 50%;
    pointer-events: none;
    z-index: -1;
    box-shadow:
        0 0 0 100px rgba(230,180,80,.012),
        0 0 0 200px rgba(230,180,80,.007);
}

.venue-story h2,
.venue-story h3,
.venue-story h4 {
    text-transform: none;
    letter-spacing: -.025em;
}

.venue-story p {
    line-height: 1.78;
}

/* ===== INTRO ===== */

.vs-intro {
    display: grid;
    grid-template-columns: 1.25fr .75fr;
    align-items: end;
    gap: 95px;
    margin-bottom: 64px;
}

.vs-eyebrow {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 25px;
    font-size: 10px;
    letter-spacing: .2em;
    text-transform: uppercase;
    color: var(--color-gold);
}

.vs-eyebrow-line {
    width: 35px;
    height: 1px;
    background: currentColor;
}

.vs-intro h2 {
    max-width: 920px;
    font-size: clamp(36px, 4.25vw, 68px);
    font-weight: 500;
    line-height: 1.07;
    margin: 0;
}

.vs-title-accent {
    color: rgba(255,255,255,.46);
}

.vs-intro-lead {
    color: rgba(255,255,255,.69);
    font-size: 16px;
    margin: 0 0 5px;
    border-left: 1px solid rgba(230,180,80,.45);
    padding-left: 26px;
}

/* ===== EDITORIAL LAYOUT ===== */

.vs-editorial {
    display: grid;
    grid-template-columns: .88fr 1.12fr;
    gap: min(6vw,90px);
    align-items: center;
}

.vs-photo-wrap {
    position: relative;
    padding: 0 34px 38px 0;
    min-width: 0;
}

.vs-photo-wrap::before {
    content: "";
    position: absolute;
    inset: 32px 0 0 34px;
    border: 1px solid rgba(230,180,80,.28);
}

.vs-photo {
    position: relative;
    margin: 0;
    overflow: hidden;
    background: #242225;
}

.vs-photo img {
    width: 100%;
    height: 530px;
    object-fit: cover;
    filter: saturate(.85);
    transition:
        transform .85s ease,
        filter .85s ease;
}

.vs-photo:hover img {
    transform: scale(1.035);
    filter: saturate(1);
}

.vs-photo::after {
    content: "";
    position: absolute;
    inset: 40% 0 0;
    background: linear-gradient(
        transparent,
        rgba(6,6,7,.88)
    );
    pointer-events: none;
}

.vs-photo figcaption {
    position: absolute;
    left: 24px;
    right: 24px;
    bottom: 22px;
    z-index: 2;
    display: flex;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
    color: #fff;
    font-size: 10px;
    letter-spacing: .08em;
}

.vs-photo-badge {
    position: absolute;
    right: -3px;
    top: 38px;
    z-index: 3;
    width: 123px;
    height: 123px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    background: var(--color-gold);
    color: #151313;
    box-shadow: 0 15px 45px rgba(0,0,0,.35);
}

.vs-photo-badge span {
    font-size: 9px;
    letter-spacing: .16em;
}

.vs-photo-badge strong {
    font: 500 37px/1.1 "Montserrat", sans-serif;
    letter-spacing: -.07em;
}

/* ===== EDITORIAL TEXT ===== */

.vs-section-number {
    display: block;
    font-size: 10px;
    letter-spacing: .18em;
    color: var(--color-gold);
    text-transform: uppercase;
    margin-bottom: 20px;
}

.vs-story-copy h3 {
    font-size: clamp(27px,2.7vw,39px);
    line-height: 1.18;
    max-width: 640px;
    margin-bottom: 28px;
}

.vs-story-copy > p {
    margin-bottom: 20px;
    color: rgba(255,255,255,.64);
    font-size: 15px;
}

.vs-inline-detail {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-top: 31px;
    padding: 18px 0;
    border-top: 1px solid rgba(255,255,255,.12);
    border-bottom: 1px solid rgba(255,255,255,.12);
}

.vs-inline-icon {
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(230,180,80,.32);
    color: var(--color-gold);
    flex-shrink: 0;
}

.vs-inline-detail > div {
    flex: 1;
}

.vs-inline-detail > div > span {
    font-size: 10px;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--color-gold);
}

.vs-inline-detail p {
    font-size: 13px;
    margin: 4px 0 0;
    color: #eee;
}

.vs-inline-detail > a {
    color: var(--color-gold);
    padding: 10px;
}

/* ===== FEATURES ===== */

.vs-feature-head {
    display: grid;
    grid-template-columns: 1fr .8fr;
    gap: 80px;
    align-items: end;
    margin: 105px 0 30px;
}

.vs-feature-head h3,
.vs-history h3 {
    font-size: clamp(27px,3vw,42px);
    line-height: 1.19;
    margin: 0;
}

.vs-feature-head > p {
    font-size: 14px;
    color: rgba(255,255,255,.55);
    margin: 0 0 5px;
}

.vs-feature-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 12px;
}

.vs-feature {
    position: relative;
    min-height: 283px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 30px;
    background: #1a1a1f;
    border: 1px solid rgba(255,255,255,.07);
    color: #fff;
    transition:
        transform .3s ease,
        border-color .3s ease;
    --px: 50%;
    --py: 50%;
}

.vs-feature::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(
        270px circle at var(--px) var(--py),
        rgba(230,180,80,.13),
        transparent 73%
    );
    opacity: 0;
    pointer-events: none;
    transition: opacity .3s;
}

.vs-feature::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    height: 2px;
    width: 0;
    background: var(--color-gold);
    transition: width .4s;
}

.vs-feature:hover,
.vs-feature:focus-visible {
    transform: translateY(-4px);
    border-color: rgba(230,180,80,.35);
}

.vs-feature:hover::before,
.vs-feature:focus-visible::before {
    opacity: 1;
}

.vs-feature:hover::after,
.vs-feature:focus-visible::after {
    width: 100%;
}

.vs-feature-wide {
    grid-column: span 2;
    background:
        linear-gradient(
            120deg,
            rgba(230,180,80,.075),
            transparent 75%
        ),
        #202026;
}

.vs-feature-index {
    font-size: 9px;
    letter-spacing: .15em;
    color: rgba(255,255,255,.46);
    margin-bottom: 27px;
}

.vs-feature > i {
    color: var(--color-gold);
    font-size: 23px;
    margin-bottom: 22px;
}

.vs-feature h4 {
    font-size: 20px;
    line-height: 1.22;
    margin: 0 0 11px;
}

.vs-feature p {
    font-size: 13px;
    max-width: 450px;
    color: rgba(255,255,255,.54);
    margin: 0 0 20px;
}

.vs-feature-action {
    margin-top: auto;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .13em;
    color: var(--color-gold);
}

.vs-feature-action i {
    margin-left: 9px;
    transition: transform .3s;
}

.vs-feature:hover .vs-feature-action i {
    transform: translateX(5px);
}

/* ===== HISTORY TIMELINE ===== */

.vs-history {
    display: grid;
    grid-template-columns: .73fr 1.27fr;
    gap: 80px;
    margin-top: 107px;
    padding-top: 63px;
    border-top: 1px solid rgba(255,255,255,.13);
}

.vs-history-heading > p {
    color: rgba(255,255,255,.52);
    font-size: 14px;
    margin-top: 20px;
    max-width: 365px;
}

.vs-timeline {
    list-style: none;
    margin: 0;
    padding: 0;
    position: relative;
}

.vs-timeline::before {
    content: "";
    position: absolute;
    left: 58px;
    top: 12px;
    bottom: 24px;
    width: 1px;
    background: linear-gradient(
        var(--color-gold),
        rgba(230,180,80,.12)
    );
}

.vs-timeline li {
    display: grid;
    grid-template-columns: 116px 1fr;
    gap: 15px;
    position: relative;
    padding: 0 0 36px;
}

.vs-timeline li:last-child {
    padding-bottom: 0;
}

.vs-timeline time {
    color: var(--color-gold);
    font: 500 25px/1 "Montserrat", sans-serif;
    letter-spacing: -.045em;
    position: relative;
}

.vs-timeline time::after {
    content: "";
    position: absolute;
    left: 54px;
    top: 34px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--color-gold);
    border: 3px solid #0d0d0f;
    box-sizing: content-box;
    transform: translateX(-3px);
}

.vs-timeline h4 {
    font-size: 17px;
    margin: 0 0 8px;
}

.vs-timeline p {
    font-size: 13px;
    color: rgba(255,255,255,.54);
    margin: 0;
}

/* ===== BOTTOM PANEL ===== */

.vs-bottom {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 65px;
    align-items: center;
    padding: 44px 48px;
    margin-top: 98px;
    background:
        linear-gradient(
            120deg,
            rgba(230,180,80,.11),
            rgba(230,180,80,.018) 48%
        ),
        #1d1d22;
    border-left: 2px solid var(--color-gold);
}

.vs-bottom h3 {
    max-width: 730px;
    font-size: clamp(24px,2.6vw,35px);
    line-height: 1.25;
    margin: 0 0 17px;
}

.vs-bottom p {
    max-width: 760px;
    font-size: 13px;
    color: rgba(255,255,255,.63);
    margin: 0;
}

.vs-bottom-action {
    display: flex;
    flex-direction: column;
    gap: 18px;
    align-items: flex-start;
}

.vs-bottom-action .btn {
    white-space: nowrap;
    font-size: 11px;
}

.vs-bottom-action .btn i {
    margin-left: 12px;
}

.vs-text-link {
    color: #ddd;
    border-bottom: 1px solid rgba(230,180,80,.5);
    padding-bottom: 5px;
    font-size: 11px;
    letter-spacing: .05em;
}

.vs-text-link i {
    margin-left: 8px;
}

.vs-source-note {
    margin: 25px 0 0;
    font-size: 11px;
    color: rgba(255,255,255,.37);
}

.vs-source-note a {
    color: var(--color-gold);
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* ===== SCROLL REVEAL ===== */

.venue-story [data-reveal] {
    opacity: 1;
    transform: none;
}

.js-motion .venue-story [data-reveal] {
    opacity: 0;
    transform: translateY(22px);
    transition:
        opacity .7s ease,
        transform .7s ease;
}

.js-motion .venue-story [data-reveal].is-visible {
    opacity: 1;
    transform: translateY(0);
}

/* ===== RESPONSIVE ===== */

@media (max-width: 1080px) {
    .vs-intro {
        gap: 40px;
    }

    .vs-editorial {
        gap: 36px;
    }

    .vs-feature-head {
        gap: 30px;
    }

    .vs-history {
        gap: 40px;
    }

    .vs-bottom {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 800px) {
    .vs-intro,
    .vs-editorial,
    .vs-feature-head,
    .vs-history {
        grid-template-columns: 1fr;
    }

    .vs-intro {
        margin-bottom: 38px;
        gap: 20px;
    }

    .vs-intro-lead {
        max-width: 700px;
    }

    .vs-photo img {
        height: 420px;
    }

    .vs-feature-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    .vs-feature-wide {
        grid-column: span 2;
    }

    .vs-feature-head {
        margin-top: 72px;
    }

    .vs-history {
        margin-top: 70px;
        padding-top: 45px;
    }

    .vs-bottom {
        margin-top: 65px;
        padding: 34px;
    }
}

@media (max-width: 560px) {
    .venue-story.ptb {
        padding: 68px 0;
    }

    .vs-intro h2 {
        font-size: 35px;
    }

    .vs-intro-lead {
        font-size: 14px;
        padding-left: 16px;
    }

    .vs-photo-wrap {
        padding: 0 19px 20px 0;
    }

    .vs-photo-wrap::before {
        inset: 18px 0 0 18px;
    }

    .vs-photo img {
        height: 340px;
    }

    .vs-photo-badge {
        height: 85px;
        width: 85px;
        right: -3px;
        top: 23px;
    }

    .vs-photo-badge strong {
        font-size: 25px;
    }

    .vs-photo-badge span {
        font-size: 7px;
    }

    .vs-photo figcaption {
        font-size: 8px;
        left: 14px;
        bottom: 12px;
    }

    .vs-story-copy h3 {
        font-size: 29px;
    }

    .vs-story-copy > p {
        font-size: 14px;
    }

    .vs-feature-grid {
        grid-template-columns: 1fr;
    }

    .vs-feature-wide {
        grid-column: span 1;
    }

    .vs-feature {
        min-height: 245px;
        padding: 25px;
    }

    .vs-bottom {
        padding: 26px 22px;
    }

    .vs-timeline li {
        grid-template-columns: 90px 1fr;
    }

    .vs-timeline::before {
        left: 46px;
    }

    .vs-timeline time {
        font-size: 21px;
    }

    .vs-timeline time::after {
        left: 42px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .venue-story *,
    .venue-story *::before,
    .venue-story *::after {
        animation: none !important;
        transition: none !important;
    }

    .js-motion .venue-story [data-reveal] {
        opacity: 1;
        transform: none;
    }
}

/* ==========================================
   SLOT MACHINES — EDITORIAL GAMING SECTION
========================================== */

.slot-section {
    position: relative;
    isolation: isolate;
    background: #17171b;
    overflow: hidden;
}

.slot-section::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background:
      radial-gradient(ellipse at 95% 4%,
        rgba(230,180,80,.07),transparent 30%),
      repeating-linear-gradient(90deg,
        transparent 0,
        transparent calc(25% - 1px),
        rgba(255,255,255,.013) 25%);
}

.slot-section h2,
.slot-section h3,
.slot-section h4 {
    text-transform: none;
    letter-spacing: -.035em;
}

.slot-section p {
    line-height: 1.75;
}

.slot-kicker,
.slot-small-label,
.slot-index {
    display: block;
    margin-bottom: 18px;
    color: var(--color-gold);
    font-size: 10px;
    letter-spacing: .17em;
    text-transform: uppercase;
}

.slot-kicker-line {
    display: inline-block;
    width: 27px;
    height: 1px;
    margin: 0 12px 4px 0;
    background: var(--color-gold);
}

.slot-intro {
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    align-items: end;
    gap: 90px;
    margin-bottom: 60px;
}

.slot-intro h2 {
    font-size: clamp(34px,4.3vw,62px);
    line-height: 1.1;
    font-weight: 500;
    margin: 0 0 24px;
}

.slot-lead {
    max-width: 760px;
    font-size: 18px;
    color: rgba(255,255,255,.78);
}

.slot-intro-aside {
    padding: 30px 0 0 28px;
    border-left: 1px solid rgba(230,180,80,.4);
}

.slot-intro-aside p {
    font-size: 13px;
    color: rgba(255,255,255,.58);
    margin-bottom: 15px;
}

.slot-intro-mark {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-top: 12px;
    padding: 10px 15px;
    border: 1px solid rgba(230,180,80,.2);
    color: var(--color-gold);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .1em;
}

/* FACT STRIP */

.slot-fact-strip {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    margin-bottom: 75px;
    border: 1px solid rgba(255,255,255,.09);
    background: rgba(0,0,0,.12);
}

.slot-fact {
    padding: 28px 23px;
    border-right: 1px solid rgba(255,255,255,.08);
}

.slot-fact:last-child {
    border-right: 0;
}

.slot-fact > i {
    display: block;
    color: var(--color-gold);
    font-size: 20px;
    margin-bottom: 23px;
}

.slot-fact > span {
    display: block;
    color: rgba(255,255,255,.38);
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .12em;
}

.slot-fact p {
    margin: 8px 0 0;
    font-size: 13px;
    color: #eee;
}

/* SPOTLIGHT */

.slot-spotlight {
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    background: #202025;
    border: 1px solid rgba(230,180,80,.17);
}

.slot-spotlight-main {
    padding: clamp(30px,4.5vw,70px);
}

.slot-spotlight-main h3 {
    font-size: clamp(34px,4vw,56px);
    margin-bottom: 25px;
}

.slot-spotlight-main p {
    color: rgba(255,255,255,.59);
    font-size: 14px;
    margin-bottom: 18px;
}

.slot-spotlight-main .slot-spotlight-description {
    color: rgba(255,255,255,.88);
    font-size: 17px;
}

.slot-spotlight-detail {
    position: relative;
    padding: 45px;
    background:
        linear-gradient(145deg,
          rgba(230,180,80,.09),transparent 65%),
        #111114;
    border-left: 1px solid rgba(255,255,255,.08);
}

.slot-stat-label {
    color: rgba(255,255,255,.49);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .16em;
}

.slot-big-number {
    margin-top: 20px;
    font: 500 clamp(55px,7vw,106px)/1
        "Montserrat",sans-serif;
    letter-spacing: -.09em;
    color: var(--color-gold);
}

.slot-big-caption {
    margin-top: 9px;
    color: #ddd;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: .12em;
}

.slot-reel-display {
    margin-top: 45px;
    padding: 25px;
    border: 1px solid rgba(230,180,80,.16);
    text-align: center;
}

.slot-reel-display > span {
    display: block;
    color: rgba(255,255,255,.52);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .12em;
}

.slot-reel-grid {
    display: grid;
    grid-template-columns: repeat(5,1fr);
    gap: 7px;
    max-width: 290px;
    margin: 17px auto;
}

.slot-reel-grid i {
    aspect-ratio: 1;
    border: 1px solid rgba(230,180,80,.35);
    background: rgba(230,180,80,.055);
    transition: background .3s,transform .3s;
}

.slot-spotlight:hover .slot-reel-grid i:nth-child(3n) {
    background: rgba(230,180,80,.2);
}

.slot-spec-list {
    margin-top: 30px;
}

.slot-spec-list > div {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    padding: 13px 0;
    border-bottom: 1px solid rgba(255,255,255,.08);
    font-size: 12px;
}

.slot-spec-list span:first-child {
    color: rgba(255,255,255,.42);
}

.slot-spec-list span:last-child {
    color: #fff;
    text-align: right;
}

/* GAME CATALOGUE */

.slot-heading-block {
    margin: 100px 0 32px;
    max-width: 790px;
}

.slot-heading-block h3,
.slot-mechanics h3,
.slot-guide h3,
.slot-ticket-copy h3 {
    font-size: clamp(28px,3vw,43px);
    line-height: 1.2;
    margin-bottom: 18px;
}

.slot-heading-block > p,
.slot-mechanics-intro > p,
.slot-guide-heading > p {
    color: rgba(255,255,255,.55);
    font-size: 15px;
}

.slot-catalogue {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 13px;
}

.slot-game-card {
    position: relative;
    padding: 38px;
    border: 1px solid rgba(255,255,255,.08);
    background: #202025;
    overflow: hidden;
    transition: border-color .35s,transform .35s;
}

.slot-game-card::after {
    content: "";
    position: absolute;
    right: -55px;
    top: -55px;
    width: 160px;
    height: 160px;
    border: 1px solid rgba(230,180,80,.15);
    border-radius: 50%;
    box-shadow: 0 0 0 26px rgba(230,180,80,.015);
    pointer-events: none;
}

.slot-game-card:hover {
    border-color: rgba(230,180,80,.4);
    transform: translateY(-4px);
}

.slot-game-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    margin-bottom: 29px;
}

.slot-game-top span {
    font-size: 9px;
    letter-spacing: .15em;
    color: var(--color-gold);
}

.slot-game-top i {
    font-size: 23px;
    color: var(--color-gold);
}

.slot-game-card h4 {
    font-size: 27px;
    margin-bottom: 7px;
}

.slot-game-variation {
    display: block;
    margin-bottom: 24px;
    color: rgba(255,255,255,.43);
    font-size: 12px;
}

.slot-game-card p {
    color: rgba(255,255,255,.57);
    font-size: 13px;
    margin-bottom: 15px;
}

/* MECHANICS */

.slot-mechanics {
    margin-top: 105px;
}

.slot-mechanics-intro {
    max-width: 820px;
    margin-bottom: 35px;
}

.slot-mechanics-grid {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 12px;
}

.slot-mechanic {
    position: relative;
    min-height: 310px;
    padding: 29px;
    background: #111114;
    border-top: 2px solid rgba(230,180,80,.43);
    transition: background .3s;
}

.slot-mechanic:hover {
    background: #242126;
}

.slot-mechanic-number {
    position: absolute;
    top: 20px;
    right: 22px;
    color: rgba(255,255,255,.12);
    font: 400 29px "Montserrat",sans-serif;
}

.slot-mechanic > i {
    display: block;
    color: var(--color-gold);
    font-size: 25px;
    margin-bottom: 35px;
}

.slot-mechanic h4 {
    font-size: 17px;
    margin-bottom: 15px;
}

.slot-mechanic p {
    font-size: 12px;
    color: rgba(255,255,255,.51);
    margin: 0;
}

/* INTERACTIVE GUIDE */

.slot-guide {
    margin-top: 105px;
    padding: 55px;
    background:
      linear-gradient(130deg,
        rgba(230,180,80,.045),transparent 55%),
      #202025;
}

.slot-guide-heading {
    max-width: 800px;
    margin-bottom: 37px;
}

.slot-guide-layout {
    display: grid;
    grid-template-columns: .85fr 1.15fr;
    gap: 24px;
}

.slot-step-controls {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.slot-step {
    display: grid;
    grid-template-columns: 37px 1fr 18px;
    align-items: center;
    gap: 16px;
    width: 100%;
    padding: 18px 20px;
    border: 1px solid rgba(255,255,255,.08);
    background: #17171b;
    color: #e6e6e6;
    text-align: left;
    font-family: "Montserrat",sans-serif;
    font-size: 12px;
    cursor: pointer;
    transition: border-color .25s,background .25s;
}

.slot-step > span,
.slot-step > i {
    color: var(--color-gold);
}

.slot-step.active,
.slot-step:hover {
    border-color: rgba(230,180,80,.45);
    background: rgba(230,180,80,.09);
}

.slot-step:focus-visible {
    outline: 2px solid var(--color-gold);
    outline-offset: 2px;
}

.slot-step-panel {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    min-height: 415px;
    padding: clamp(30px,4vw,55px);
    background: #101013;
    border: 1px solid rgba(230,180,80,.12);
}

.slot-step-panel-count {
    color: var(--color-gold);
    font-size: 10px;
    letter-spacing: .16em;
    margin-bottom: 42px;
}

.slot-step-panel-icon {
    width: 60px;
    height: 60px;
    display: grid;
    place-items: center;
    color: var(--color-gold);
    border: 1px solid rgba(230,180,80,.3);
    font-size: 22px;
    margin-bottom: 26px;
}

.slot-step-panel h4 {
    font-size: 26px;
    margin-bottom: 18px;
}

.slot-step-panel p {
    font-size: 14px;
    color: rgba(255,255,255,.6);
    margin: 0;
}

.slot-step-progress {
    width: 100%;
    height: 2px;
    margin-top: auto;
    padding-top: 35px;
    background: transparent;
}

.slot-step-progress::before {
    content: "";
    display: block;
    height: 2px;
    background: rgba(255,255,255,.09);
}

.slot-step-progress span {
    display: block;
    width: 16.666%;
    height: 2px;
    margin-top: -2px;
    background: var(--color-gold);
    transition: width .4s ease;
}

/* TICKET BLOCK */

.slot-ticket-block {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 65px;
    align-items: center;
    margin-top: 100px;
}

.slot-ticket-illustration {
    min-height: 365px;
    display: grid;
    place-items: center;
    padding: 40px;
    background:
      repeating-linear-gradient(135deg,
        transparent 0,transparent 25px,
        rgba(230,180,80,.035) 26px),
      #111114;
}

.slot-ticket {
    position: relative;
    width: min(100%,275px);
    padding: 32px 25px 25px;
    color: #1c1b1a;
    background: #e7dfc9;
    text-align: center;
    transform: rotate(-6deg);
    box-shadow: 16px 20px 45px rgba(0,0,0,.4);
    transition: transform .4s ease;
}

.slot-ticket:hover {
    transform: rotate(0deg) translateY(-5px);
}

.slot-ticket > i {
    display: block;
    font-size: 32px;
    margin-bottom: 21px;
}

.slot-ticket > span {
    display: block;
    font-size: 11px;
    letter-spacing: .12em;
}

.slot-ticket-bars {
    height: 66px;
    margin: 30px 0 17px;
    background: repeating-linear-gradient(
      90deg,
      #171717 0 2px,
      transparent 2px 4px,
      #171717 4px 5px,
      transparent 5px 9px,
      #171717 9px 13px,
      transparent 13px 16px
    );
}

.slot-ticket small {
    font-size: 9px;
}

.slot-ticket-copy p {
    color: rgba(255,255,255,.59);
    font-size: 14px;
    margin-bottom: 17px;
}

/* BOTTOM INFORMATION */

.slot-bottom-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 15px;
    margin-top: 95px;
}

.slot-info-panel {
    padding: 42px;
    background: #202025;
    border: 1px solid rgba(255,255,255,.07);
}

.slot-info-panel h3 {
    font-size: 26px;
    margin-bottom: 20px;
}

.slot-info-panel p {
    font-size: 13px;
    color: rgba(255,255,255,.56);
    margin-bottom: 15px;
}

.slot-inline-link {
    color: var(--color-gold);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .1em;
    margin-top: 15px;
}

.slot-inline-link i {
    margin-left: 10px;
    transition: transform .3s;
}

.slot-inline-link:hover i {
    transform: translateX(5px);
}

.slot-final-note {
    display: grid;
    grid-template-columns: 48px 1fr auto;
    gap: 25px;
    align-items: center;
    padding: 31px;
    margin-top: 26px;
    background: rgba(230,180,80,.045);
    border-left: 2px solid var(--color-gold);
}

.slot-final-icon {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    color: var(--color-gold);
    font-size: 22px;
}

.slot-final-note h3 {
    font-size: 19px;
    margin-bottom: 10px;
}

.slot-final-note p {
    margin: 0;
    color: rgba(255,255,255,.55);
    font-size: 12px;
}

/* SCROLL ANIMATION */

.slot-section [data-slot-reveal] {
    opacity: 1;
    transform: none;
}

.slot-motion-ready .slot-section [data-slot-reveal] {
    opacity: 0;
    transform: translateY(24px);
    transition:
      opacity .7s ease,
      transform .7s ease;
}

.slot-motion-ready .slot-section [data-slot-reveal].is-visible {
    opacity: 1;
    transform: none;
}

/* RESPONSIVE */

@media (max-width: 1100px) {
    .slot-intro { gap: 40px; }

    .slot-mechanics-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    .slot-mechanic { min-height: 250px; }

    .slot-final-note {
        grid-template-columns: 48px 1fr;
    }

    .slot-final-note > a {
        grid-column: 2;
    }
}

@media (max-width: 850px) {
    .slot-intro,
    .slot-spotlight,
    .slot-ticket-block,
    .slot-guide-layout {
        grid-template-columns: 1fr;
    }

    .slot-fact-strip {
        grid-template-columns: repeat(2,1fr);
    }

    .slot-fact:nth-child(2) { border-right: 0; }

    .slot-fact:nth-child(-n+2) {
        border-bottom: 1px solid rgba(255,255,255,.08);
    }

    .slot-spotlight-detail {
        border-left: 0;
        border-top: 1px solid rgba(255,255,255,.08);
    }

    .slot-guide { padding: 35px; }

    .slot-step-panel { min-height: 340px; }

    .slot-ticket-block { gap: 30px; }
}

@media (max-width: 600px) {
    .slot-section.ptb {
        padding-top: 70px;
        padding-bottom: 70px;
    }

    .slot-intro h2 { font-size: 34px; }

    .slot-lead { font-size: 15px; }

    .slot-intro-aside { padding-left: 18px; }

    .slot-fact-strip,
    .slot-catalogue,
    .slot-mechanics-grid,
    .slot-bottom-grid {
        grid-template-columns: 1fr;
    }

    .slot-fact {
        border-right: 0;
        border-bottom: 1px solid rgba(255,255,255,.08);
    }

    .slot-fact:last-child { border-bottom: 0; }

    .slot-spotlight-main,
    .slot-spotlight-detail,
    .slot-game-card,
    .slot-info-panel {
        padding: 27px 23px;
    }

    .slot-heading-block,
    .slot-mechanics,
    .slot-guide,
    .slot-ticket-block {
        margin-top: 65px;
    }

    .slot-guide { padding: 25px 18px; }

    .slot-step {
        padding: 14px 12px;
        gap: 8px;
    }

    .slot-step-panel { padding: 26px 20px; }

    .slot-ticket-illustration {
        padding: 35px;
        min-height: 310px;
    }

    .slot-final-note {
        grid-template-columns: 1fr;
        padding: 25px 20px;
    }

    .slot-final-note > a { grid-column: 1; }
}

@media (prefers-reduced-motion: reduce) {
    .slot-section *,
    .slot-section *::before,
    .slot-section *::after {
        animation: none !important;
        transition: none !important;
    }

    .slot-motion-ready .slot-section [data-slot-reveal] {
        opacity: 1;
        transform: none;
    }
}

/* ===== COMPACT SLOT SPOTLIGHT ===== */

.slot-spotlight {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: start;
    gap: 0;
}

.slot-spotlight-main {
    padding: 38px 42px;
}

.slot-spotlight-detail {
    padding: 32px 38px;
}

/* Compact typography */

.slot-spotlight-main h3 {
    margin-bottom: 18px;
    font-size: clamp(28px, 3vw, 42px);
}

.slot-spotlight-main p {
    margin-bottom: 14px;
    line-height: 1.65;
}

/* Smaller number */

.slot-big-number {
    font-size: clamp(46px, 5vw, 72px);
    margin-top: 10px;
}

.slot-big-caption {
    margin-top: 4px;
}

/* Compact reel layout */

.slot-reel-display {
    margin-top: 24px;
    padding: 16px 20px;
}

.slot-reel-grid {
    max-width: 200px;
    gap: 5px;
    margin: 12px auto;
}

/* Compact specifications */

.slot-spec-list {
    margin-top: 20px;
}

.slot-spec-list > div {
    padding: 9px 0;
}

/* Responsive */

@media (max-width: 850px) {
    .slot-spotlight {
        grid-template-columns: 1fr;
    }

    .slot-spotlight-main,
    .slot-spotlight-detail {
        padding: 28px 24px;
    }
}

/* =========================================
   ELECTRONIC TABLE GAMES — COMPACT DESIGN
========================================= */

.et-section {
  position: relative;
  background: #111114;
  overflow: hidden;
  isolation: isolate;
}

.et-section::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  background:
    radial-gradient(ellipse at 95% 0%,
      rgba(230,180,80,.08), transparent 35%),
    linear-gradient(90deg,
      transparent 49.96%,
      rgba(255,255,255,.014) 50%,
      transparent 50.04%);
}

.et-section h2,
.et-section h3,
.et-section h4 {
  text-transform: none;
  letter-spacing: -.025em;
}

.et-section p {
  line-height: 1.7;
}

.et-kicker,
.et-eyebrow,
.et-small-label {
  display: block;
  color: var(--color-gold);
  font-size: 10px;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.et-kicker {
  margin-bottom: 14px;
}

.et-eyebrow {
  margin-bottom: 18px;
}

.et-eyebrow i {
  margin-right: 10px;
}

.et-section-heading,
.et-process-heading,
.et-comparison-heading {
  max-width: 850px;
  margin-bottom: 27px;
}

.et-section-heading h3,
.et-process-heading h3,
.et-comparison-heading h3,
.et-essentials h3 {
  font-size: clamp(26px,2.8vw,40px);
  line-height: 1.18;
  margin-bottom: 13px;
}

.et-section-heading p,
.et-process-heading p,
.et-comparison-heading p {
  color: rgba(255,255,255,.59);
  font-size: 14px;
}

/* INTRO */

.et-intro {
  display: grid;
  grid-template-columns: minmax(0,1fr) 250px;
  gap: clamp(30px,5vw,75px);
  align-items: center;
  margin-bottom: 46px;
}

.et-intro h2 {
  font-size: clamp(34px,4.15vw,60px);
  line-height: 1.1;
  max-width: 1020px;
  margin: 0 0 22px;
}

.et-lead {
  font-size: 17px;
  max-width: 900px;
  color: rgba(255,255,255,.77);
  margin: 0;
}

.et-intro-note {
  padding: 25px 0 25px 25px;
  border-left: 1px solid rgba(230,180,80,.45);
}

.et-intro-number {
  font: 500 86px/.98 "Montserrat",sans-serif;
  color: var(--color-gold);
  letter-spacing: -.08em;
  margin: 12px 0;
}

.et-intro-note p {
  color: #e9e9e9;
  font-size: 13px;
  margin-bottom: 13px;
}

.et-note-foot {
  display: block;
  color: rgba(255,255,255,.42);
  font-size: 11px;
}

/* IMAGE AND TEXT */

.et-feature {
  display: grid;
  grid-template-columns: .82fr 1.18fr;
  gap: clamp(25px,4vw,58px);
  align-items: start;
  margin-bottom: 85px;
}

.et-feature-media {
  position: relative;
  margin: 0;
  background: #202025;
}

.et-feature-media img {
  display: block;
  width: 100%;
  height: clamp(300px,34vw,480px);
  object-fit: cover;
  transition: transform .5s ease;
}

.et-feature-media:hover img {
  transform: scale(1.015);
}

.et-feature-media::after {
  content: "";
  position: absolute;
  inset: 55% 0 0;
  background: linear-gradient(transparent,rgba(0,0,0,.86));
  pointer-events: none;
}

.et-feature-media figcaption {
  position: absolute;
  z-index: 1;
  bottom: 17px;
  left: 19px;
  right: 19px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  font-size: 10px;
  color: #fff;
  letter-spacing: .05em;
}

.et-feature-copy h3 {
  font-size: clamp(27px,2.6vw,38px);
  line-height: 1.2;
  margin-bottom: 20px;
}

.et-feature-copy > p {
  color: rgba(255,255,255,.62);
  font-size: 14px;
  margin-bottom: 16px;
}

.et-feature-note {
  display: grid;
  grid-template-columns: 22px 1fr;
  gap: 14px;
  margin-top: 21px;
  padding: 19px;
  background: rgba(230,180,80,.055);
  border-left: 2px solid var(--color-gold);
}

.et-feature-note i {
  color: var(--color-gold);
  margin-top: 3px;
}

.et-feature-note p {
  margin: 0;
  color: rgba(255,255,255,.64);
  font-size: 12px;
}

/* FILTER */

.et-filter {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-bottom: 20px;
}

.et-filter-btn {
  display: inline-flex;
  gap: 15px;
  align-items: center;
  padding: 11px 17px;
  border: 1px solid rgba(255,255,255,.13);
  color: rgba(255,255,255,.75);
  background: transparent;
  font-family: "Lato",sans-serif;
  font-size: 12px;
  cursor: pointer;
  transition: background .25s,border-color .25s;
}

.et-filter-btn span {
  color: var(--color-gold);
  font-size: 10px;
}

.et-filter-btn.active,
.et-filter-btn:hover {
  border-color: var(--color-gold);
  background: rgba(230,180,80,.08);
  color: #fff;
}

/* GAME CARDS — MASONRY COLUMNS */

.et-game-grid {
  columns: 3 290px;
  column-gap: 14px;
}

.et-game {
  display: inline-block;
  vertical-align: top;
  width: 100%;
  margin-bottom: 14px;
  padding: 27px;
  background: #202025;
  border: 1px solid rgba(255,255,255,.07);
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
  transition: border-color .25s,background .25s;
}

.et-game:hover {
  border-color: rgba(230,180,80,.32);
  background: #242429;
}

.et-game[hidden] {
  display: none !important;
}

.et-game-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 20px;
}

.et-game-top span {
  color: var(--color-gold);
  font-size: 9px;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.et-game-top i {
  font-size: 20px;
  color: var(--color-gold);
}

.et-game h4 {
  font-size: 23px;
  margin: 0 0 12px;
  overflow-wrap: anywhere;
}

.et-game-intro {
  font-size: 13px;
  color: rgba(255,255,255,.66);
  margin: 0 0 20px;
}

.et-game-facts {
  border-top: 1px solid rgba(255,255,255,.08);
}

.et-game-facts > div {
  padding: 13px 0;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.et-game-facts span {
  display: block;
  color: var(--color-gold);
  font-size: 9px;
  letter-spacing: .1em;
  text-transform: uppercase;
  margin-bottom: 5px;
}

.et-game-facts p {
  margin: 0;
  color: rgba(255,255,255,.61);
  font-size: 12px;
}

/* NATIVE EXPANDABLE CONTENT */

.et-game-details {
  margin-top: 16px;
}

.et-game-details summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  cursor: pointer;
  list-style: none;
  color: var(--color-gold);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .035em;
}

.et-game-details summary::-webkit-details-marker {
  display: none;
}

.et-game-details summary i {
  transition: transform .25s;
}

.et-game-details[open] summary i {
  transform: rotate(45deg);
}

.et-game-expanded {
  margin-top: 17px;
  padding-top: 16px;
  border-top: 1px solid rgba(230,180,80,.2);
}

.et-game-expanded p {
  font-size: 12px;
  color: rgba(255,255,255,.64);
  margin-bottom: 12px;
}

.et-game-expanded p:last-child {
  margin-bottom: 0;
}

/* PLAYING PROCESS */

.et-process {
  margin-top: 85px;
}

.et-process-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
}

.et-process-item {
  position: relative;
  padding: 26px 23px;
  border: 1px solid rgba(255,255,255,.07);
  border-top: 2px solid rgba(230,180,80,.5);
  background: #1c1c20;
}

.et-process-item > span {
  position: absolute;
  right: 17px;
  top: 14px;
  color: rgba(255,255,255,.14);
  font-size: 23px;
}

.et-process-item > i {
  display: block;
  margin-bottom: 20px;
  color: var(--color-gold);
  font-size: 20px;
}

.et-process-item h4 {
  font-size: 16px;
  margin-bottom: 10px;
}

.et-process-item p {
  color: rgba(255,255,255,.57);
  font-size: 12px;
  margin: 0;
}

/* COMPARISON */

.et-comparison {
  margin-top: 85px;
}

.et-comparison-table-wrap {
  overflow-x: auto;
  border: 1px solid rgba(255,255,255,.09);
}

.et-comparison-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 620px;
  background: #1d1d22;
}

.et-comparison-table th,
.et-comparison-table td {
  padding: 17px 20px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  text-align: left;
  vertical-align: top;
  font-size: 13px;
}

.et-comparison-table thead th {
  color: var(--color-gold);
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
  background: rgba(230,180,80,.055);
}

.et-comparison-table tbody th {
  color: #fff;
  font-weight: 600;
}

.et-comparison-table td {
  color: rgba(255,255,255,.65);
}

.et-comparison-table tr:last-child td,
.et-comparison-table tr:last-child th {
  border-bottom: 0;
}

/* PLAYER ESSENTIALS */

.et-essentials {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 45px;
  align-items: start;
  margin-top: 85px;
}

.et-essentials-copy p {
  color: rgba(255,255,255,.63);
  font-size: 14px;
  margin-bottom: 15px;
}

.et-checklist {
  border-top: 1px solid rgba(255,255,255,.12);
}

.et-check-item {
  display: grid;
  grid-template-columns: 24px 1fr;
  gap: 14px;
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,.1);
}

.et-check-item > i {
  color: var(--color-gold);
  font-size: 15px;
  margin-top: 3px;
}

.et-check-item h4 {
  font-size: 15px;
  margin-bottom: 6px;
}

.et-check-item p {
  font-size: 12px;
  color: rgba(255,255,255,.59);
  margin: 0;
}

/* FINAL PANEL */

.et-final {
  display: grid;
  grid-template-columns: 42px minmax(0,1fr) auto;
  align-items: center;
  gap: 20px;
  margin-top: 70px;
  padding: 28px;
  border-left: 2px solid var(--color-gold);
  background: rgba(230,180,80,.055);
}

.et-final-icon {
  color: var(--color-gold);
  font-size: 23px;
  text-align: center;
}

.et-final h3 {
  font-size: 18px;
  margin: 0 0 8px;
}

.et-final p {
  color: rgba(255,255,255,.62);
  font-size: 12px;
  margin: 0;
}

.et-final-link {
  color: var(--color-gold);
  white-space: nowrap;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .07em;
}

.et-final-link i {
  margin-left: 8px;
}

/* REVEAL ANIMATION */

.et-section [data-et-reveal] {
  opacity: 1;
  transform: none;
}

.et-motion .et-section [data-et-reveal] {
  opacity: 0;
  transform: translateY(15px);
  transition: opacity .55s ease,transform .55s ease;
}

.et-motion .et-section [data-et-reveal].visible {
  opacity: 1;
  transform: none;
}

/* RESPONSIVE */

@media (max-width: 1050px) {
  .et-feature {
    grid-template-columns: 1fr 1fr;
    gap: 28px;
  }

  .et-process-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 800px) {
  .et-intro {
    grid-template-columns: 1fr;
    gap: 25px;
  }

  .et-intro-note {
    display: grid;
    grid-template-columns: 100px 1fr;
    gap: 10px 20px;
    align-items: center;
    padding: 20px;
    border-left: 2px solid var(--color-gold);
    background: rgba(230,180,80,.04);
  }

  .et-small-label,
  .et-note-foot {
    grid-column: 1 / -1;
  }

  .et-intro-number {
    font-size: 62px;
    margin: 0;
  }

  .et-intro-note p {
    margin: 0;
  }

  .et-feature,
  .et-essentials {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .et-feature-media img {
    height: 340px;
  }

  .et-final {
    grid-template-columns: 35px 1fr;
  }

  .et-final-link {
    grid-column: 2;
  }
}

@media (max-width: 580px) {
  .et-section.ptb {
    padding: 65px 0;
  }

  .et-intro h2 {
    font-size: 32px;
  }

  .et-lead {
    font-size: 15px;
  }

  .et-feature-media img {
    height: 270px;
  }

  .et-game-grid {
    columns: 1;
  }

  .et-game {
    padding: 24px 21px;
  }

  .et-process-grid {
    grid-template-columns: 1fr;
  }

  .et-process-item {
    padding: 22px;
  }

  .et-process,
  .et-comparison,
  .et-essentials {
    margin-top: 60px;
  }

  .et-final {
    margin-top: 55px;
    padding: 23px 18px;
  }

  .et-filter {
    gap: 6px;
  }

  .et-filter-btn {
    padding: 10px 12px;
    font-size: 11px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .et-section *,
  .et-section *::before,
  .et-section *::after {
    animation: none !important;
    transition: none !important;
  }

  .et-motion .et-section [data-et-reveal] {
    opacity: 1;
    transform: none;
  }
}

/* ======================================
   BINGO — EDITORIAL & INTERACTIVE
====================================== */

.bn-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: #1c1c21;
}

.bn-section::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: -240px;
  right: -190px;
  width: 650px;
  height: 650px;
  border: 1px solid rgba(230,180,80,.12);
  border-radius: 50%;
  box-shadow:
    0 0 0 75px rgba(230,180,80,.016),
    0 0 0 150px rgba(230,180,80,.008);
  pointer-events: none;
}

.bn-section h2,
.bn-section h3,
.bn-section h4 {
  text-transform: none;
  letter-spacing: -.035em;
}

.bn-section p {line-height: 1.7;}

.bn-kicker {
  display: block;
  color: var(--color-gold);
  font-size: 10px;
  letter-spacing: .15em;
  text-transform: uppercase;
  margin-bottom: 16px;
}

.bn-kicker i {margin-right: 8px;}

/* INTRO + PHOTO COLLAGE */

.bn-intro {
  display: grid;
  grid-template-columns: 1.08fr .92fr;
  gap: clamp(28px,5vw,70px);
  align-items: center;
  margin-bottom: 84px;
}

.bn-intro h2 {
  font-size: clamp(36px,4.5vw,64px);
  line-height: 1.07;
  margin-bottom: 24px;
}

.bn-intro-copy > p {
  color: rgba(255,255,255,.62);
  font-size: 14px;
  margin-bottom: 16px;
}

.bn-intro-copy .bn-lead {
  color: rgba(255,255,255,.88);
  font-size: 18px;
}

.bn-intro-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 24px;
}

.bn-intro-tags span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  border: 1px solid rgba(230,180,80,.2);
  color: #eee;
  font-size: 11px;
}

.bn-intro-tags i {color: var(--color-gold);}

.bn-intro-visual {
  position: relative;
  min-height: 435px;
  padding: 0 80px 58px 0;
}

.bn-photo {
  margin: 0;
  overflow: hidden;
  background: #101014;
}

.bn-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .6s ease;
}

.bn-photo:hover img {transform: scale(1.035);}

.bn-photo-primary {
  height: 420px;
  border: 1px solid rgba(255,255,255,.12);
}

.bn-photo-secondary {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 49%;
  height: 180px;
  border: 6px solid #1c1c21;
}

.bn-visual-stamp {
  position: absolute;
  right: 25px;
  top: 20px;
  width: 105px;
  height: 105px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: var(--color-gold);
  color: #121212;
  transform: rotate(6deg);
}

.bn-visual-stamp span {
  font-size: 8px;
  letter-spacing: .1em;
}

.bn-visual-stamp strong {
  font: 500 39px/1 "Montserrat",sans-serif;
}

/* HEADINGS */

.bn-heading,
.bn-electronic-head {
  display: grid;
  grid-template-columns: 1fr .9fr;
  gap: 40px;
  align-items: end;
  margin-bottom: 28px;
}

.bn-heading h3,
.bn-electronic-head h3,
.bn-selector h3,
.bn-first-head h3,
.bn-jackpots h3 {
  font-size: clamp(27px,3vw,41px);
  line-height: 1.18;
  margin-bottom: 0;
}

.bn-heading > p,
.bn-electronic-head > p {
  font-size: 14px;
  color: rgba(255,255,255,.58);
  margin: 0;
}

/* SCHEDULE */

.bn-schedule {
  background: #101014;
  border: 1px solid rgba(255,255,255,.09);
}

.bn-schedule-top {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  padding: 19px 25px;
  border-bottom: 1px solid rgba(255,255,255,.1);
}

.bn-schedule-top > div {
  display: flex;
  gap: 12px;
  align-items: center;
  color: #fff;
  font-size: 13px;
}

.bn-schedule-top i,
.bn-timezone {color: var(--color-gold);}

.bn-timezone {
  font-size: 10px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.bn-schedule-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
}

.bn-day {
  padding: 26px 22px;
  border-right: 1px solid rgba(255,255,255,.08);
  transition: background .25s ease;
}

.bn-day:last-child {border-right: 0;}

.bn-day:hover,
.bn-day.is-current {background: rgba(230,180,80,.045);}

.bn-day-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(230,180,80,.23);
}

.bn-day-head span {
  color: rgba(255,255,255,.2);
  font-size: 20px;
}

.bn-day-head h4 {
  font-size: 20px;
  margin: 0;
}

.bn-session {padding-top: 21px;}

.bn-session > span {
  display: block;
  color: var(--color-gold);
  font-size: 10px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.bn-session strong {
  display: block;
  font: 500 clamp(20px,2.15vw,30px)/1.3 "Montserrat",sans-serif;
  margin-top: 5px;
}

.bn-session small {
  color: rgba(255,255,255,.48);
  font-size: 11px;
}

.bn-session-evening {
  margin-top: 18px;
  border-top: 1px solid rgba(255,255,255,.09);
}

.bn-session-none {
  margin: 27px 0 0;
  color: rgba(255,255,255,.35);
  font-size: 11px;
}

.bn-schedule-footer,
.bn-first-note {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  padding: 18px 23px;
  background: rgba(230,180,80,.035);
}

.bn-schedule-footer i,
.bn-first-note i {
  color: var(--color-gold);
  margin-top: 3px;
}

.bn-schedule-footer p,
.bn-first-note p {
  margin: 0;
  color: rgba(255,255,255,.55);
  font-size: 12px;
}

/* DAY SELECTOR */

.bn-selector {
  margin-top: 32px;
  padding: 28px;
  background: #25252b;
}

.bn-selector-heading {margin-bottom: 22px;}
.bn-selector h3 {font-size: 24px;}

.bn-selector-controls {
  display: grid;
  grid-template-columns: repeat(7,minmax(0,1fr));
  gap: 8px;
}

.bn-day-button {
  padding: 13px 5px;
  background: #141418;
  color: #ddd;
  border: 1px solid rgba(255,255,255,.08);
  cursor: pointer;
  font: 500 12px "Montserrat",sans-serif;
  transition: background .25s,border-color .25s;
}

.bn-day-button.active,
.bn-day-button:hover {
  background: rgba(230,180,80,.12);
  border-color: var(--color-gold);
  color: var(--color-gold);
}

.bn-selector-result {
  display: grid;
  grid-template-columns: 1fr 1.15fr;
  gap: 22px;
  align-items: center;
  padding: 24px 0 0;
}

.bn-result-label {
  color: var(--color-gold);
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: .13em;
}

.bn-selector-result h4 {
  font-size: 24px;
  margin: 5px 0;
}

.bn-selector-result p {
  margin: 0;
  color: rgba(255,255,255,.53);
  font-size: 12px;
}

.bn-result-times {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
}

.bn-result-times > div {
  padding: 16px;
  background: #141418;
  border-left: 2px solid var(--color-gold);
}

.bn-result-times span {
  display: block;
  color: rgba(255,255,255,.45);
  font-size: 10px;
  margin-bottom: 7px;
}

.bn-result-times strong {
  font-size: 14px;
  font-weight: 500;
}

/* ELECTRONIC BINGO */

.bn-electronic {margin-top: 90px;}

.bn-electronic-layout {
  display: grid;
  grid-template-columns: 1fr .9fr;
  gap: 35px;
  align-items: start;
}

.bn-electronic-copy h4 {
  font-size: 24px;
  margin-bottom: 17px;
}

.bn-electronic-copy > p {
  margin-bottom: 16px;
  color: rgba(255,255,255,.6);
  font-size: 14px;
}

.bn-electronic-note {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  background: rgba(230,180,80,.055);
  border-left: 2px solid var(--color-gold);
  padding: 18px;
  margin-top: 23px;
}

.bn-electronic-note i {
  color: var(--color-gold);
  margin-top: 4px;
}

.bn-electronic-note p {
  margin: 0;
  font-size: 12px;
  color: rgba(255,255,255,.64);
}

/* DEMONSTRATION CARD */

.bn-electronic-diagram {
  padding: 28px;
  background: #101014;
  border: 1px solid rgba(230,180,80,.19);
}

.bn-diagram-top {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  margin-bottom: 20px;
  color: rgba(255,255,255,.65);
  font-size: 11px;
}

.bn-diagram-top i {
  color: var(--color-gold);
  font-size: 20px;
}

.bn-card-head,
.bn-card-grid {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 5px;
}

.bn-card-head {margin-bottom: 5px;}

.bn-card-head span {
  background: var(--color-gold);
  color: #111;
  text-align: center;
  padding: 8px;
  font-weight: 900;
  font-size: 20px;
}

.bn-card-grid > span {
  display: grid;
  place-items: center;
  aspect-ratio: 1.22;
  background: #25252a;
  border: 1px solid rgba(255,255,255,.08);
  font-size: 15px;
  transition: background .2s,color .2s;
}

.bn-card-grid > span.bn-free {
  color: var(--color-gold);
  font-size: 10px;
}

.bn-card-grid > span.bn-marked {
  background: var(--color-gold);
  color: #111;
}

.bn-demo-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 19px;
}

.bn-demo-button,
.bn-demo-reset {
  padding: 12px 16px;
  cursor: pointer;
  font-size: 12px;
  font-family: "Lato",sans-serif;
  border: 1px solid var(--color-gold);
  transition: background .2s;
}

.bn-demo-button {
  background: var(--color-gold);
  color: #111;
}

.bn-demo-reset {
  background: transparent;
  color: var(--color-gold);
}

.bn-demo-button:hover {background: #f0c979;}
.bn-demo-reset:hover {background: rgba(230,180,80,.1);}

.bn-demo-actions i {margin-right: 8px;}

.bn-demo-status {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 5px 16px;
  align-items: center;
  margin-top: 18px;
  padding-top: 15px;
  border-top: 1px solid rgba(255,255,255,.1);
}

.bn-demo-status span {
  font-size: 10px;
  color: rgba(255,255,255,.45);
}

.bn-demo-status strong {
  grid-column: 2;
  grid-row: 1 / 3;
  color: var(--color-gold);
  font-size: 29px;
}

.bn-demo-status small {
  color: rgba(255,255,255,.7);
  font-size: 11px;
}

.bn-demo-disclaimer {
  color: rgba(255,255,255,.34);
  font-size: 10px;
  margin: 14px 0 0;
}

/* FIRST VISIT */

.bn-first-time {margin-top: 90px;}

.bn-first-head {
  max-width: 820px;
  margin-bottom: 27px;
}

.bn-first-head p {
  color: rgba(255,255,255,.58);
  font-size: 14px;
  margin: 15px 0 0;
}

.bn-first-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
}

.bn-first-item {
  position: relative;
  padding: 25px;
  background: #111115;
  border-top: 2px solid rgba(230,180,80,.5);
}

.bn-first-item > span {
  position: absolute;
  top: 17px;
  right: 20px;
  color: rgba(255,255,255,.14);
  font-size: 25px;
}

.bn-first-item > i {
  display: block;
  color: var(--color-gold);
  font-size: 23px;
  margin-bottom: 23px;
}

.bn-first-item h4 {
  font-size: 16px;
  margin-bottom: 10px;
}

.bn-first-item p {
  color: rgba(255,255,255,.54);
  font-size: 12px;
  margin: 0;
}

.bn-first-note {margin-top: 12px;}

/* JACKPOTS */

.bn-jackpots {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 40px;
  align-items: center;
  margin-top: 90px;
  padding: clamp(25px,4vw,50px);
  background: #121216;
  border: 1px solid rgba(255,255,255,.08);
}

.bn-jackpot-main p {
  color: rgba(255,255,255,.6);
  font-size: 14px;
  margin: 17px 0 0;
}

.bn-jackpot-contact {
  padding: 30px;
  background: rgba(230,180,80,.065);
  border-left: 2px solid var(--color-gold);
}

.bn-jackpot-contact > i {
  color: var(--color-gold);
  font-size: 26px;
  margin-bottom: 16px;
}

.bn-jackpot-contact > span {
  display: block;
  color: rgba(255,255,255,.5);
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .12em;
}

.bn-contact-number {
  color: var(--color-gold);
  font: 500 clamp(22px,3vw,36px) "Montserrat",sans-serif;
  letter-spacing: -.045em;
  margin: 10px 0;
}

.bn-jackpot-contact p {
  color: rgba(255,255,255,.66);
  font-size: 12px;
}

.bn-jackpot-badge {
  color: rgba(255,255,255,.76);
  font-size: 10px;
  border-top: 1px solid rgba(255,255,255,.12);
  padding-top: 15px;
  margin-top: 19px;
}

.bn-jackpot-badge i {
  color: var(--color-gold);
  margin-right: 8px;
}

/* FINAL */

.bn-bottom {
  display: grid;
  grid-template-columns: 40px 1fr auto;
  align-items: center;
  gap: 22px;
  margin-top: 26px;
  padding: 25px;
  border-left: 2px solid var(--color-gold);
  background: rgba(230,180,80,.045);
}

.bn-bottom-symbol {
  color: var(--color-gold);
  font-size: 23px;
}

.bn-bottom h3 {
  font-size: 18px;
  margin-bottom: 8px;
}

.bn-bottom p {
  color: rgba(255,255,255,.57);
  font-size: 12px;
  margin: 0;
}

.bn-bottom-link {
  color: var(--color-gold);
  font-size: 11px;
  white-space: nowrap;
  text-transform: uppercase;
}

.bn-bottom-link i {margin-left: 8px;}

/* SCROLL REVEAL */

.bn-section [data-bn-reveal] {
  opacity: 1;
  transform: none;
}

.bn-motion .bn-section [data-bn-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity .55s ease,transform .55s ease;
}

.bn-motion .bn-section [data-bn-reveal].visible {
  opacity: 1;
  transform: none;
}

/* RESPONSIVE */

@media(max-width: 1100px) {
  .bn-intro {gap: 30px;}
  .bn-first-grid {grid-template-columns: repeat(2,1fr);}
  .bn-bottom {grid-template-columns: 40px 1fr;}
  .bn-bottom-link {grid-column: 2;}
}

@media(max-width: 850px) {
  .bn-intro,
  .bn-heading,
  .bn-electronic-head,
  .bn-electronic-layout,
  .bn-jackpots {
    grid-template-columns: 1fr;
  }

  .bn-intro-visual {
    max-width: 650px;
    width: 100%;
    margin: 0 auto;
  }

  .bn-schedule-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .bn-day:nth-child(2) {border-right: 0;}

  .bn-day:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255,255,255,.08);
  }

  .bn-electronic-diagram {max-width: 570px;}
}

@media(max-width: 550px) {
  .bn-section.ptb {padding: 65px 0;}

  .bn-intro {margin-bottom: 55px;}

  .bn-intro h2 {font-size: 34px;}

  .bn-intro-copy .bn-lead {font-size: 15px;}

  .bn-intro-visual {
    min-height: 320px;
    padding: 0 43px 35px 0;
  }

  .bn-photo-primary {height: 310px;}

  .bn-photo-secondary {
    height: 125px;
    border-width: 4px;
  }

  .bn-visual-stamp {
    width: 76px;
    height: 76px;
    right: 7px;
  }

  .bn-visual-stamp strong {font-size: 27px;}
  .bn-visual-stamp span {font-size: 6px;}

  .bn-schedule-grid {grid-template-columns: 1fr;}

  .bn-day {
    padding: 20px;
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.09);
  }

  .bn-session-evening {margin-top: 10px;}

  .bn-selector {padding: 20px 14px;}

  .bn-selector-controls {gap: 4px;}

  .bn-day-button {
    font-size: 10px;
    padding: 11px 2px;
  }

  .bn-selector-result {grid-template-columns: 1fr;}

  .bn-electronic,
  .bn-first-time,
  .bn-jackpots {margin-top: 65px;}

  .bn-electronic-diagram {padding: 16px;}

  .bn-card-grid > span {font-size: 12px;}

  .bn-card-head span {font-size: 16px;}

  .bn-first-grid {grid-template-columns: 1fr;}

  .bn-first-item {padding: 22px;}

  .bn-jackpots {gap: 22px;}

  .bn-jackpot-contact {padding: 23px;}

  .bn-bottom {
    grid-template-columns: 1fr;
    padding: 23px;
  }

  .bn-bottom-link {grid-column: 1;}
}

@media(prefers-reduced-motion: reduce) {
  .bn-section *,
  .bn-section *::before,
  .bn-section *::after {
    transition: none !important;
    animation: none !important;
  }

  .bn-motion .bn-section [data-bn-reveal] {
    opacity: 1;
    transform: none;
  }
}

/* ========================================
   BINGO — COMPLETE REDESIGN
   Isolated bng- classes
======================================== */

.bng-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: #19191e;
}

.bng-section::before {
  content: "";
  position: absolute;
  top: -230px;
  right: -180px;
  width: 580px;
  height: 580px;
  border: 1px solid rgba(230,180,80,.12);
  border-radius: 50%;
  pointer-events: none;
  z-index: -1;
  box-shadow:
    0 0 0 75px rgba(230,180,80,.015),
    0 0 0 150px rgba(230,180,80,.007);
}

.bng-section h2,
.bng-section h3,
.bng-section h4 {
  text-transform: none;
  letter-spacing: -.03em;
}

.bng-section p {
  line-height: 1.72;
}

.bng-kicker {
  display: block;
  margin-bottom: 17px;
  color: var(--color-gold);
  font-size: 10px;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.bng-kicker i {
  margin-right: 8px;
}

.bng-intro,
.bng-electronic,
.bng-rules,
.bng-first,
.bng-prizes {
  min-width: 0;
}

/* INTRO */

.bng-intro {
  display: grid;
  grid-template-columns: 1.06fr .94fr;
  gap: clamp(28px,5vw,70px);
  align-items: center;
  margin-bottom: 80px;
}

.bng-intro h2 {
  font-size: clamp(35px,4.3vw,62px);
  line-height: 1.08;
  margin-bottom: 24px;
}

.bng-intro-content > p {
  font-size: 14px;
  color: rgba(255,255,255,.65);
  margin-bottom: 16px;
}

.bng-intro-content > .bng-lead {
  color: rgba(255,255,255,.87);
  font-size: 17px;
}

.bng-intro-facts {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 8px;
  margin-top: 27px;
}

.bng-intro-facts > div {
  min-width: 0;
  padding: 18px 14px;
  background: #111115;
  border: 1px solid rgba(255,255,255,.07);
}

.bng-fact-number,
.bng-intro-facts i {
  display: block;
  margin-bottom: 10px;
  color: var(--color-gold);
  font: 500 29px/1 "Montserrat",sans-serif;
}

.bng-intro-facts i {
  font-size: 25px;
}

.bng-intro-facts span:last-child {
  color: rgba(255,255,255,.7);
  font-size: 11px;
  line-height: 1.5;
}

/* ASYMMETRIC PHOTO COMPOSITION */

.bng-intro-photos {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 250px 150px;
  gap: 10px;
  padding: 0 24px 24px 0;
}

.bng-photo-main,
.bng-photo-detail {
  position: relative;
  overflow: hidden;
  margin: 0;
  background: #101014;
}

.bng-photo-main {
  grid-column: 1 / 3;
  grid-row: 1 / 3;
}

.bng-photo-detail {
  grid-column: 2 / 3;
  grid-row: 2 / 3;
  z-index: 2;
  border: 7px solid #19191e;
  transform: translate(24px,24px);
}

.bng-photo-main img,
.bng-photo-detail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .6s ease;
}

.bng-photo-main:hover img,
.bng-photo-detail:hover img {
  transform: scale(1.04);
}

.bng-photo-main::after {
  content: "";
  position: absolute;
  inset: 50% 0 0;
  background: linear-gradient(transparent,rgba(0,0,0,.52));
  pointer-events: none;
}

.bng-photo-decor {
  position: absolute;
  left: -23px;
  bottom: 36px;
  z-index: 3;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  font: 600 11px "Montserrat",sans-serif;
  color: var(--color-gold);
  letter-spacing: .35em;
}

/* HEADING */

.bng-heading {
  display: grid;
  grid-template-columns: 1fr .85fr;
  gap: 35px;
  align-items: end;
  margin-bottom: 25px;
}

.bng-heading h3,
.bng-electronic-header h3,
.bng-rules-intro h3,
.bng-first-header h3,
.bng-prizes h3 {
  font-size: clamp(27px,3vw,42px);
  line-height: 1.18;
  margin-bottom: 0;
}

.bng-heading > p {
  margin: 0;
  color: rgba(255,255,255,.58);
  font-size: 14px;
}

/* SCHEDULE */

.bng-schedule {
  background: #111115;
  border: 1px solid rgba(255,255,255,.08);
}

.bng-schedule-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 10px;
  padding: 15px;
  align-items: start;
}

.bng-day {
  min-width: 0;
  padding: 22px;
  background: #212126;
  border: 1px solid rgba(255,255,255,.055);
  transition: border-color .3s,background .3s;
}

.bng-day:hover,
.bng-day.bng-today {
  border-color: rgba(230,180,80,.38);
  background: #27262a;
}

.bng-day-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  color: var(--color-gold);
  font-size: 9px;
  letter-spacing: .12em;
  text-transform: uppercase;
  margin-bottom: 14px;
}

.bng-day-top i {
  font-size: 15px;
}

.bng-day h4 {
  font-size: 22px;
  margin-bottom: 17px;
}

.bng-session-row {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 12px 0;
  border-top: 1px solid rgba(255,255,255,.08);
}

.bng-session-row span {
  color: rgba(255,255,255,.47);
  font-size: 10px;
  text-transform: uppercase;
}

.bng-session-row strong {
  color: #fff;
  font-size: 14px;
  font-weight: 600;
}

.bng-session-count {
  display: inline-block;
  margin-top: 12px;
  color: var(--color-gold);
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .09em;
}

.bng-schedule-note {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  padding: 19px 24px;
  border-top: 1px solid rgba(255,255,255,.08);
}

.bng-schedule-note i {
  flex-shrink: 0;
  color: var(--color-gold);
  margin-top: 3px;
}

.bng-schedule-note p {
  color: rgba(255,255,255,.58);
  font-size: 12px;
  margin: 0;
}

/* ELECTRONIC BINGO */

.bng-electronic {
  margin-top: 85px;
}

.bng-electronic-header {
  max-width: 910px;
  margin-bottom: 30px;
}

.bng-electronic-header p {
  color: rgba(255,255,255,.6);
  font-size: 15px;
  margin: 18px 0 0;
}

.bng-electronic-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: start;
  gap: 20px;
}

.bng-electronic-text {
  min-width: 0;
  padding: 30px;
  background: #111115;
  border-left: 2px solid var(--color-gold);
}

.bng-electronic-text h4 {
  font-size: 23px;
  line-height: 1.25;
  margin-bottom: 18px;
}

.bng-electronic-text p {
  color: rgba(255,255,255,.63);
  font-size: 13px;
  margin-bottom: 15px;
}

.bng-electronic-text p:last-child {
  margin-bottom: 0;
}

.bng-electronic-points {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  align-items: start;
}

.bng-point {
  position: relative;
  padding: 24px 20px;
  background: #25252b;
  border: 1px solid rgba(255,255,255,.07);
}

.bng-point > span {
  display: block;
  margin-bottom: 15px;
  color: rgba(255,255,255,.24);
  font-size: 11px;
}

.bng-point > i {
  position: absolute;
  top: 20px;
  right: 19px;
  color: var(--color-gold);
  font-size: 18px;
}

.bng-point h4 {
  font-size: 15px;
  line-height: 1.3;
  margin-bottom: 10px;
}

.bng-point p {
  margin: 0;
  color: rgba(255,255,255,.56);
  font-size: 12px;
}

/* RULES / NATIVE ACCORDION */

.bng-rules {
  display: grid;
  grid-template-columns: .7fr 1.3fr;
  align-items: start;
  gap: 50px;
  margin-top: 90px;
  padding-top: 43px;
  border-top: 1px solid rgba(255,255,255,.1);
}

.bng-rules-intro p {
  margin: 18px 0 0;
  font-size: 14px;
  color: rgba(255,255,255,.59);
}

.bng-rules-list {
  border-top: 1px solid rgba(255,255,255,.1);
}

.bng-rule {
  border-bottom: 1px solid rgba(255,255,255,.1);
}

.bng-rule summary {
  display: grid;
  grid-template-columns: 33px 1fr 20px;
  align-items: center;
  gap: 14px;
  padding: 20px 4px;
  cursor: pointer;
  list-style: none;
  color: #fff;
  font-family: "Montserrat",sans-serif;
  font-size: 14px;
}

.bng-rule summary::-webkit-details-marker {
  display: none;
}

.bng-rule-index {
  color: var(--color-gold);
  font-size: 11px;
}

.bng-rule summary i {
  color: var(--color-gold);
  transition: transform .25s;
}

.bng-rule[open] summary i {
  transform: rotate(45deg);
}

.bng-rule[open] summary {
  color: var(--color-gold);
}

.bng-rule-answer {
  padding: 0 35px 22px 51px;
}

.bng-rule-answer p {
  color: rgba(255,255,255,.62);
  font-size: 13px;
  margin: 0 0 13px;
}

.bng-rule-answer p:last-child {
  margin-bottom: 0;
}

/* FIRST TIME */

.bng-first {
  margin-top: 90px;
}

.bng-first-header {
  max-width: 850px;
  margin-bottom: 27px;
}

.bng-first-header p {
  color: rgba(255,255,255,.57);
  font-size: 14px;
  margin: 17px 0 0;
}

.bng-first-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
  align-items: start;
}

.bng-first-item {
  padding: 25px 22px;
  border-top: 2px solid rgba(230,180,80,.4);
  background: #111115;
  min-width: 0;
}

.bng-first-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 23px;
}

.bng-first-top span {
  color: rgba(255,255,255,.2);
  font-size: 23px;
}

.bng-first-top i {
  color: var(--color-gold);
  font-size: 20px;
}

.bng-first-item h4 {
  font-size: 16px;
  line-height: 1.32;
  margin-bottom: 12px;
}

.bng-first-item p {
  color: rgba(255,255,255,.57);
  font-size: 12px;
  margin: 0;
}

/* JACKPOTS */

.bng-prizes {
  display: grid;
  grid-template-columns: 1.12fr .88fr;
  gap: 32px;
  align-items: start;
  margin-top: 90px;
  padding: 38px;
  background: #111115;
  border: 1px solid rgba(255,255,255,.07);
}

.bng-prizes-copy p {
  color: rgba(255,255,255,.62);
  font-size: 14px;
  margin: 16px 0 0;
}

.bng-prizes-contact {
  padding: 27px;
  background: rgba(230,180,80,.07);
  border-left: 2px solid var(--color-gold);
}

.bng-contact-label {
  color: var(--color-gold);
  font-size: 10px;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.bng-contact-label i {
  margin-right: 9px;
}

.bng-contact-number {
  color: #fff;
  font: 500 clamp(23px,3vw,35px) "Montserrat",sans-serif;
  letter-spacing: -.045em;
  margin: 17px 0;
  overflow-wrap: anywhere;
}

.bng-prizes-contact p {
  color: rgba(255,255,255,.62);
  font-size: 12px;
  margin-bottom: 17px;
}

.bng-contact-rule {
  padding-top: 16px;
  border-top: 1px solid rgba(255,255,255,.12);
  color: var(--color-gold);
  font-size: 11px;
  line-height: 1.6;
}

.bng-contact-rule i {
  margin-right: 7px;
}

/* FINAL */

.bng-bottom {
  display: grid;
  grid-template-columns: 38px minmax(0,1fr) auto;
  align-items: center;
  gap: 21px;
  margin-top: 22px;
  padding: 25px;
  background: rgba(230,180,80,.045);
  border-left: 2px solid var(--color-gold);
}

.bng-bottom-icon {
  color: var(--color-gold);
  font-size: 23px;
}

.bng-bottom h3 {
  font-size: 18px;
  margin-bottom: 8px;
}

.bng-bottom p {
  margin: 0;
  color: rgba(255,255,255,.58);
  font-size: 12px;
}

.bng-bottom-link {
  color: var(--color-gold);
  font-size: 11px;
  text-transform: uppercase;
  white-space: nowrap;
  letter-spacing: .04em;
}

.bng-bottom-link i {
  margin-left: 9px;
}

/* ANIMATION */

.bng-section [data-bng-reveal] {
  opacity: 1;
  transform: none;
}

.bng-motion .bng-section [data-bng-reveal] {
  opacity: 0;
  transform: translateY(15px);
  transition: opacity .6s ease, transform .6s ease;
}

.bng-motion .bng-section [data-bng-reveal].is-visible {
  opacity: 1;
  transform: none;
}

/* RESPONSIVE */

@media (max-width: 1100px) {
  .bng-intro {
    gap: 35px;
  }

  .bng-intro-photos {
    grid-template-rows: 210px 130px;
  }

  .bng-schedule-grid,
  .bng-first-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .bng-electronic-columns {
    grid-template-columns: 1fr;
  }

  .bng-bottom {
    grid-template-columns: 38px 1fr;
  }

  .bng-bottom-link {
    grid-column: 2;
  }
}

@media (max-width: 800px) {
  .bng-intro,
  .bng-heading,
  .bng-rules,
  .bng-prizes {
    grid-template-columns: 1fr;
  }

  .bng-intro {
    margin-bottom: 60px;
  }

  .bng-intro-photos {
    max-width: 600px;
    width: 100%;
    grid-template-rows: 260px 160px;
    margin: 0 auto;
  }

  .bng-heading {
    gap: 15px;
  }

  .bng-rules {
    gap: 26px;
  }

  .bng-prizes {
    gap: 23px;
  }
}

@media (max-width: 560px) {
  .bng-section.ptb {
    padding: 68px 0;
  }

  .bng-intro h2 {
    font-size: 34px;
  }

  .bng-intro-content > .bng-lead {
    font-size: 15px;
  }

  .bng-intro-facts {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 5px;
  }

  .bng-intro-facts > div {
    padding: 13px 9px;
  }

  .bng-fact-number {
    font-size: 24px;
  }

  .bng-intro-facts span:last-child {
    font-size: 10px;
  }

  .bng-intro-photos {
    grid-template-rows: 190px 110px;
    padding: 0 13px 13px 0;
  }

  .bng-photo-detail {
    transform: translate(13px,13px);
    border-width: 4px;
  }

  .bng-schedule-grid,
  .bng-first-grid,
  .bng-electronic-points {
    grid-template-columns: 1fr;
  }

  .bng-schedule-grid {
    padding: 9px;
    gap: 8px;
  }

  .bng-day {
    padding: 20px;
  }

  .bng-electronic,
  .bng-rules,
  .bng-first,
  .bng-prizes {
    margin-top: 62px;
  }

  .bng-electronic-text {
    padding: 23px;
  }

  .bng-point {
    padding: 19px;
  }

  .bng-rule summary {
    font-size: 12px;
    gap: 9px;
  }

  .bng-rule-answer {
    padding-left: 37px;
  }

  .bng-first-item {
    padding: 22px;
  }

  .bng-prizes {
    padding: 23px;
  }

  .bng-prizes-contact {
    padding: 22px;
  }

  .bng-bottom {
    grid-template-columns: 1fr;
    padding: 23px;
  }

  .bng-bottom-link {
    grid-column: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .bng-section *,
  .bng-section *::before,
  .bng-section *::after {
    animation: none !important;
    transition: none !important;
  }

  .bng-motion .bng-section [data-bng-reveal] {
    opacity: 1;
    transform: none;
  }
}

/* ===== EQUAL HEIGHT BINGO CARDS ===== */

.bng-first-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    align-items: stretch;
}

.bng-first-item {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    padding: 25px 22px;
}

.bng-first-top {
    flex-shrink: 0;
}

.bng-first-item h4 {
    margin-bottom: 12px;
}

.bng-first-item p {
    flex-grow: 1;
    margin: 0;
}

/* Tablet */
@media (max-width: 1100px) {
    .bng-first-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Mobile */
@media (max-width: 560px) {
    .bng-first-grid {
        grid-template-columns: 1fr;
    }

    .bng-first-item {
        padding: 22px;
    }
}

/* ==========================================
   RACEBOOK — EDITORIAL RACING DESIGN
========================================== */

.rc-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: #0f1013;
}

.rc-section::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse at 90% 4%,
      rgba(230,180,80,.09),transparent 33%),
    repeating-linear-gradient(90deg,
      transparent 0,
      transparent calc(20% - 1px),
      rgba(255,255,255,.014) 20%);
}

.rc-section h2,
.rc-section h3,
.rc-section h4 {
  text-transform: none;
  letter-spacing: -.03em;
}

.rc-section p {
  line-height: 1.7;
}

.rc-kicker {
  display: block;
  margin-bottom: 17px;
  color: var(--color-gold);
  font-size: 10px;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.rc-kicker i {margin-right: 9px;}

.rc-heading {
  max-width: 870px;
  margin-bottom: 28px;
}

.rc-heading h3,
.rc-world h3,
.rc-wagers h3,
.rc-visit h3 {
  margin-bottom: 16px;
  font-size: clamp(27px,3vw,42px);
  line-height: 1.18;
}

.rc-heading p,
.rc-wagers-heading p {
  color: rgba(255,255,255,.58);
  font-size: 14px;
  margin: 0;
}

/* INTRO */

.rc-intro {
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(290px,.65fr);
  gap: clamp(30px,5vw,90px);
  align-items: center;
  margin-bottom: 85px;
}

.rc-intro h2 {
  font-size: clamp(37px,4.5vw,65px);
  line-height: 1.08;
  margin-bottom: 25px;
}

.rc-intro-main > p {
  max-width: 840px;
  color: rgba(255,255,255,.64);
  font-size: 14px;
  margin-bottom: 16px;
}

.rc-intro-main .rc-lead {
  color: rgba(255,255,255,.88);
  font-size: 18px;
}

.rc-intro-side {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  padding: 26px;
  background: #1c1d22;
  border: 1px solid rgba(230,180,80,.16);
}

.rc-intro-emblem {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 14px;
  height: 190px;
  overflow: hidden;
  background: #111216;
}

.rc-intro-emblem > i {
  position: relative;
  z-index: 1;
  color: var(--color-gold);
  font-size: 42px;
}

.rc-intro-emblem > span {
  position: relative;
  z-index: 1;
  color: #fff;
  font-size: 11px;
  letter-spacing: .28em;
}

.rc-emblem-ring {
  position: absolute;
  width: 165px;
  height: 165px;
  border: 1px solid rgba(230,180,80,.3);
  border-radius: 50%;
  box-shadow:
    0 0 0 24px rgba(230,180,80,.025),
    0 0 0 48px rgba(230,180,80,.012);
}

.rc-intro-facts > div {
  display: grid;
  grid-template-columns: 112px 1fr;
  gap: 13px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.rc-intro-facts > div:last-child {border-bottom: 0;}

.rc-intro-facts span {
  color: var(--color-gold);
  font-size: 10px;
}

.rc-intro-facts p {
  margin: 0;
  color: #eee;
  font-size: 12px;
}

/* DISCIPLINES */

.rc-discipline-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 14px;
  align-items: stretch;
}

.rc-discipline {
  display: flex;
  flex-direction: column;
  padding: 34px;
  background: #202126;
  border: 1px solid rgba(255,255,255,.08);
  transition: border-color .3s ease;
}

.rc-discipline:hover {
  border-color: rgba(230,180,80,.35);
}

.rc-discipline-feature {
  background:
    linear-gradient(135deg,
      rgba(230,180,80,.085),transparent 65%),
    #202126;
}

.rc-discipline-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  margin-bottom: 25px;
}

.rc-discipline-top span {
  color: var(--color-gold);
  font-size: 10px;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.rc-discipline-top i {
  color: var(--color-gold);
  font-size: 23px;
}

.rc-discipline h4 {
  font-size: 28px;
  margin-bottom: 15px;
}

.rc-discipline p {
  color: rgba(255,255,255,.59);
  font-size: 13px;
  margin-bottom: 15px;
}

.rc-discipline .rc-discipline-lead {
  color: #eee;
  font-size: 16px;
}

.rc-discipline-details {
  margin-top: auto;
  border-top: 1px solid rgba(255,255,255,.1);
}

.rc-discipline-details > div {
  display: grid;
  grid-template-columns: 145px 1fr;
  gap: 15px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.rc-discipline-details span {
  color: var(--color-gold);
  font-size: 10px;
}

.rc-discipline-details p {
  margin: 0;
  color: rgba(255,255,255,.76);
  font-size: 12px;
}

/* INTERNATIONAL RACING */

.rc-world {
  display: grid;
  grid-template-columns: 1.2fr .8fr;
  align-items: center;
  gap: 45px;
  margin-top: 95px;
  padding: 44px;
  background: #1c1d22;
  border: 1px solid rgba(255,255,255,.07);
}

.rc-world-intro p {
  color: rgba(255,255,255,.62);
  font-size: 14px;
  margin: 0 0 17px;
}

.rc-world-visual {
  position: relative;
  display: grid;
  place-items: center;
  min-height: 290px;
  overflow: hidden;
  background:
    radial-gradient(circle,
      rgba(230,180,80,.085),transparent 65%),
    #121316;
}

.rc-orbit {
  position: absolute;
  width: 215px;
  height: 215px;
  border: 1px solid rgba(230,180,80,.21);
  border-radius: 50%;
}

.rc-orbit-two {
  width: 295px;
  height: 295px;
  border-color: rgba(230,180,80,.1);
}

.rc-world-center {
  display: grid;
  justify-items: center;
  gap: 12px;
  z-index: 1;
}

.rc-world-center i {
  font-size: 42px;
  color: var(--color-gold);
}

.rc-world-center span {
  font-size: 9px;
  color: #fff;
  letter-spacing: .2em;
}

.rc-world-tag {
  position: absolute;
  z-index: 2;
  padding: 7px 10px;
  background: #25252a;
  border: 1px solid rgba(230,180,80,.25);
  color: rgba(255,255,255,.8);
  font-size: 10px;
}

.rc-tag-one {top: 25px;left: 14px;}
.rc-tag-two {top: 45px;right: 12px;}
.rc-tag-three {bottom: 28px;left: 18px;}
.rc-tag-four {bottom: 45px;right: 15px;}

/* RACING INFORMATION */

.rc-information {margin-top: 95px;}

.rc-info-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
}

.rc-info-item {
  position: relative;
  padding: 27px 23px;
  background: #1b1c21;
  border-top: 2px solid rgba(230,180,80,.38);
}

.rc-info-item > span {
  position: absolute;
  top: 17px;
  right: 19px;
  color: rgba(255,255,255,.16);
  font-size: 22px;
}

.rc-info-item > i {
  display: block;
  margin-bottom: 23px;
  color: var(--color-gold);
  font-size: 22px;
}

.rc-info-item h4 {
  font-size: 17px;
  margin-bottom: 11px;
}

.rc-info-item p {
  margin: 0;
  color: rgba(255,255,255,.55);
  font-size: 12px;
}

/* WAGER ACCORDION */

.rc-wagers {margin-top: 95px;}

.rc-wagers-heading {
  max-width: 850px;
  margin-bottom: 28px;
}

.rc-wager-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 11px;
  align-items: start;
}

.rc-wager {
  background: #1e1f24;
  border: 1px solid rgba(255,255,255,.08);
}

.rc-wager summary {
  display: grid;
  grid-template-columns: 33px 1fr 17px;
  gap: 13px;
  align-items: center;
  padding: 21px 22px;
  cursor: pointer;
  list-style: none;
  font-size: 15px;
  color: #fff;
}

.rc-wager summary::-webkit-details-marker {display: none;}

.rc-wager summary span,
.rc-wager summary i {color: var(--color-gold);}

.rc-wager summary span {font-size: 11px;}

.rc-wager summary i {transition: transform .25s;}

.rc-wager[open] summary i {transform: rotate(45deg);}

.rc-wager > div {
  padding: 0 23px 21px 68px;
}

.rc-wager > div p {
  color: rgba(255,255,255,.58);
  font-size: 13px;
  margin: 0;
}

/* COMPARISON */

.rc-comparison {margin-top: 95px;}

.rc-compare-table-wrap {
  overflow-x: auto;
  border: 1px solid rgba(255,255,255,.09);
}

.rc-compare-table {
  width: 100%;
  min-width: 650px;
  border-collapse: collapse;
  background: #1c1d22;
}

.rc-compare-table th,
.rc-compare-table td {
  padding: 19px 22px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid rgba(255,255,255,.08);
  font-size: 13px;
}

.rc-compare-table thead th {
  background: rgba(230,180,80,.065);
  color: var(--color-gold);
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.rc-compare-table tbody th {
  color: #fff;
  font-weight: 600;
}

.rc-compare-table td {color: rgba(255,255,255,.66);}

.rc-compare-table tbody tr:last-child > * {border-bottom: 0;}

/* FIRST VISIT */

.rc-visit {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 45px;
  align-items: start;
  margin-top: 95px;
}

.rc-visit-content p {
  margin-bottom: 16px;
  color: rgba(255,255,255,.62);
  font-size: 14px;
}

.rc-visit-steps {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 11px;
}

.rc-visit-steps > div {
  padding: 24px;
  background: #202126;
  border: 1px solid rgba(255,255,255,.07);
}

.rc-visit-steps span {
  display: block;
  color: var(--color-gold);
  font-size: 12px;
  margin-bottom: 17px;
}

.rc-visit-steps p {
  color: rgba(255,255,255,.72);
  font-size: 12px;
  margin: 0;
}

/* FINAL */

.rc-final {
  display: grid;
  grid-template-columns: 40px minmax(0,1fr) auto;
  gap: 20px;
  align-items: center;
  margin-top: 75px;
  padding: 26px;
  border-left: 2px solid var(--color-gold);
  background: rgba(230,180,80,.055);
}

.rc-final-symbol {
  color: var(--color-gold);
  font-size: 22px;
}

.rc-final h3 {
  font-size: 18px;
  margin-bottom: 9px;
}

.rc-final p {
  margin: 0;
  color: rgba(255,255,255,.6);
  font-size: 12px;
}

.rc-final-link {
  color: var(--color-gold);
  font-size: 11px;
  letter-spacing: .06em;
  text-transform: uppercase;
  white-space: nowrap;
}

.rc-final-link i {margin-left: 8px;}

/* RESPONSIVE */

@media (max-width: 1100px) {
  .rc-info-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .rc-final {
    grid-template-columns: 40px 1fr;
  }

  .rc-final-link {grid-column: 2;}
}

@media (max-width: 850px) {
  .rc-intro,
  .rc-world,
  .rc-visit {
    grid-template-columns: 1fr;
  }

  .rc-intro-side {
    grid-template-columns: .7fr 1.3fr;
    align-items: center;
  }

  .rc-world-visual {min-height: 280px;}
}

@media (max-width: 620px) {
  .rc-section.ptb {padding: 68px 0;}

  .rc-intro {margin-bottom: 60px;}

  .rc-intro h2 {font-size: 36px;}

  .rc-intro-main .rc-lead {font-size: 15px;}

  .rc-intro-side,
  .rc-discipline-grid,
  .rc-info-grid,
  .rc-wager-grid,
  .rc-visit-steps {
    grid-template-columns: 1fr;
  }

  .rc-discipline {padding: 25px 21px;}

  .rc-discipline-details > div {
    grid-template-columns: 112px 1fr;
  }

  .rc-world {
    margin-top: 65px;
    padding: 25px 19px;
  }

  .rc-information,
  .rc-wagers,
  .rc-comparison,
  .rc-visit {margin-top: 65px;}

  .rc-world-visual {min-height: 270px;}

  .rc-wager summary {padding: 18px 15px;}

  .rc-wager > div {padding: 0 17px 20px 60px;}

  .rc-final {
    grid-template-columns: 1fr;
    padding: 22px;
    margin-top: 55px;
  }

  .rc-final-link {grid-column: 1;}
}

@media (prefers-reduced-motion: reduce) {
  .rc-section *,
  .rc-section *::before,
  .rc-section *::after {
    animation: none !important;
    transition: none !important;
  }
}

/* ==========================================
   CASINO PROMOTIONS — ORIGINAL DESIGN
========================================== */

.pr-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: #18181d;
}

.pr-section::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse at 95% 0%,
      rgba(230,180,80,.09),transparent 30%),
    repeating-linear-gradient(90deg,
      transparent 0,
      transparent calc(25% - 1px),
      rgba(255,255,255,.012) 25%);
}

.pr-section h2,
.pr-section h3,
.pr-section h4,
.pr-section h5 {
  text-transform: none;
  letter-spacing: -.03em;
}

.pr-section p {line-height: 1.7;}

.pr-kicker,
.pr-section-index {
  display: block;
  margin-bottom: 15px;
  color: var(--color-gold);
  font-size: 10px;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.pr-kicker i {margin-right: 8px;}

/* INTRO */

.pr-intro {
  display: grid;
  grid-template-columns: 1fr 310px;
  align-items: center;
  gap: 65px;
  margin-bottom: 70px;
}

.pr-intro h2 {
  font-size: clamp(35px,4.2vw,62px);
  line-height: 1.08;
  margin-bottom: 24px;
}

.pr-intro-main p {
  max-width: 850px;
  color: rgba(255,255,255,.62);
  font-size: 14px;
  margin-bottom: 15px;
}

.pr-intro-main .pr-lead {
  color: rgba(255,255,255,.85);
  font-size: 18px;
}

.pr-intro-aside {
  padding: 25px;
  background: #111115;
  border: 1px solid rgba(230,180,80,.15);
}

.pr-aside-label {
  display: block;
  margin-bottom: 22px;
  color: var(--color-gold);
  font-size: 10px;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.pr-aside-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
}

.pr-aside-grid > div {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 19px 14px;
  background: #222227;
}

.pr-aside-grid i {
  color: var(--color-gold);
  font-size: 22px;
}

.pr-aside-grid span {
  font-size: 11px;
  color: #e8e8e8;
}

.pr-intro-aside small {
  display: block;
  margin-top: 18px;
  color: rgba(255,255,255,.4);
  font-size: 10px;
}

/* FILTERS */

.pr-filter-wrap {margin-bottom: 22px;}

.pr-filter-heading h3,
.pr-heading h3,
.pr-conditions h3 {
  font-size: clamp(27px,3vw,40px);
  line-height: 1.2;
  margin-bottom: 20px;
}

.pr-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.pr-filter {
  display: inline-flex;
  align-items: center;
  gap: 15px;
  padding: 12px 19px;
  background: transparent;
  border: 1px solid rgba(255,255,255,.14);
  color: #ddd;
  cursor: pointer;
  font: 400 12px "Lato",sans-serif;
  transition: background .25s,border-color .25s;
}

.pr-filter span {
  color: var(--color-gold);
  font-size: 10px;
}

.pr-filter.active,
.pr-filter:hover {
  background: rgba(230,180,80,.09);
  border-color: var(--color-gold);
}

.pr-filter:focus-visible {
  outline: 2px solid var(--color-gold);
  outline-offset: 3px;
}

/* TOURNAMENT FEATURE */

.pr-tournament {
  background: #202025;
  border: 1px solid rgba(230,180,80,.27);
  margin-bottom: 80px;
}

.pr-tournament-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  padding: 18px 28px;
  background: rgba(230,180,80,.065);
  border-bottom: 1px solid rgba(230,180,80,.17);
  color: var(--color-gold);
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .12em;
}

.pr-tournament-top i {margin-right: 9px;}

.pr-tournament-date {
  color: rgba(255,255,255,.58);
}

.pr-tournament-layout {
  display: grid;
  grid-template-columns: 1.08fr .92fr;
  align-items: start;
}

.pr-tournament-copy {
  padding: clamp(27px,4vw,53px);
}

.pr-tournament-copy h3 {
  font-size: clamp(32px,3.7vw,52px);
  line-height: 1.12;
  margin-bottom: 23px;
}

.pr-tournament-copy p {
  color: rgba(255,255,255,.59);
  font-size: 14px;
  margin-bottom: 17px;
}

.pr-tournament-copy .pr-tournament-lead {
  color: rgba(255,255,255,.88);
  font-size: 17px;
}

.pr-tournament-facts {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 8px;
  margin-top: 28px;
}

.pr-tournament-facts > div {
  padding: 17px 13px;
  background: #121216;
  border: 1px solid rgba(255,255,255,.07);
}

.pr-tournament-facts span {
  display: block;
  margin-bottom: 8px;
  color: rgba(255,255,255,.4);
  font-size: 9px;
}

.pr-tournament-facts strong {
  font-size: 12px;
  line-height: 1.45;
  font-weight: 600;
  overflow-wrap: anywhere;
}

.pr-tournament-schedule {
  padding: 36px;
  background: #111115;
  border-left: 1px solid rgba(255,255,255,.08);
}

.pr-timeline-label {
  display: block;
  color: var(--color-gold);
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .14em;
  margin-bottom: 26px;
}

.pr-timeline {
  position: relative;
  padding-left: 29px;
}

.pr-timeline::before {
  content: "";
  position: absolute;
  left: 5px;
  top: 8px;
  bottom: 35px;
  width: 1px;
  background: rgba(230,180,80,.35);
}

.pr-timeline-item {
  position: relative;
  padding-bottom: 25px;
}

.pr-timeline-item:last-child {padding-bottom: 0;}

.pr-timeline-dot {
  position: absolute;
  left: -29px;
  top: 5px;
  width: 11px;
  height: 11px;
  background: var(--color-gold);
  border: 3px solid #111115;
  box-shadow: 0 0 0 1px var(--color-gold);
  border-radius: 50%;
}

.pr-timeline-item time {
  display: block;
  color: var(--color-gold);
  font-size: 10px;
  letter-spacing: .07em;
  margin-bottom: 7px;
}

.pr-timeline-item h4 {
  font-size: 17px;
  margin-bottom: 7px;
}

.pr-timeline-item p {
  font-size: 12px;
  color: rgba(255,255,255,.54);
  margin: 0;
}

.pr-tournament-warning {
  display: flex;
  gap: 12px;
  padding: 17px;
  margin-top: 28px;
  background: rgba(230,180,80,.055);
  border-left: 2px solid var(--color-gold);
}

.pr-tournament-warning i {
  color: var(--color-gold);
  margin-top: 3px;
}

.pr-tournament-warning p {
  margin: 0;
  font-size: 11px;
  color: rgba(255,255,255,.6);
}

/* SECTION HEADINGS */

.pr-heading {
  display: grid;
  grid-template-columns: 1fr .8fr;
  align-items: end;
  gap: 40px;
  margin-bottom: 25px;
}

.pr-heading h3 {margin-bottom: 0;}

.pr-heading > p {
  margin: 0;
  color: rgba(255,255,255,.56);
  font-size: 14px;
}

/* OFFER CARDS */

.pr-offer-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 13px;
  align-items: start;
}

.pr-offer {
  padding: 31px;
  background: #111115;
  border: 1px solid rgba(255,255,255,.08);
  min-width: 0;
}

.pr-offer-large {
  grid-column: 1 / -1;
  background:
    linear-gradient(125deg,
      rgba(230,180,80,.07),transparent 65%),
    #111115;
}

.pr-offer-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  margin-bottom: 24px;
}

.pr-offer-top span {
  color: var(--color-gold);
  font-size: 10px;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.pr-offer-top i {
  font-size: 23px;
  color: var(--color-gold);
}

.pr-offer h4 {
  font-size: clamp(24px,2.5vw,35px);
  margin-bottom: 16px;
}

.pr-offer > p {
  font-size: 13px;
  color: rgba(255,255,255,.6);
  margin-bottom: 15px;
}

.pr-offer-headline {
  display: flex;
  justify-content: space-between;
  gap: 35px;
  align-items: center;
  margin-bottom: 25px;
}

.pr-offer-headline h4 {margin-bottom: 8px;}

.pr-offer-headline p {
  color: rgba(255,255,255,.47);
  font-size: 12px;
  margin: 0;
}

.pr-offer-big {
  text-align: right;
}

.pr-offer-big strong {
  display: block;
  font: 500 55px/1 "Montserrat",sans-serif;
  color: var(--color-gold);
  letter-spacing: -.075em;
}

.pr-offer-big span {
  display: block;
  max-width: 170px;
  margin-top: 7px;
  color: rgba(255,255,255,.48);
  font-size: 10px;
}

.pr-draw-panel {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 28px;
  margin-top: 24px;
  padding: 24px;
  background: #202025;
}

.pr-draw-panel h5 {
  grid-column: 1 / -1;
  margin: 14px 0 7px;
  color: var(--color-gold);
  font-size: 12px;
}

.pr-draw-panel h5:first-child {margin-top: 0;}

.pr-draw-row {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 13px 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.pr-draw-row span {
  flex-shrink: 0;
  color: var(--color-gold);
  font-size: 13px;
}

.pr-draw-row p {
  color: rgba(255,255,255,.65);
  font-size: 12px;
  margin: 0;
}

.pr-offer-amount {
  padding: 19px 22px;
  background: #202025;
  border-left: 2px solid var(--color-gold);
  margin-bottom: 23px;
}

.pr-offer-amount span {
  display: block;
  color: rgba(255,255,255,.43);
  font-size: 10px;
  margin-bottom: 6px;
}

.pr-offer-amount strong {
  color: var(--color-gold);
  font: 500 clamp(23px,2.5vw,32px) "Montserrat",sans-serif;
}

.pr-mini-calendar {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
  margin-top: 25px;
}

.pr-mini-calendar > div {
  padding: 18px;
  background: #202025;
}

.pr-mini-calendar span {
  display: block;
  font-size: 11px;
  color: rgba(255,255,255,.47);
  margin-bottom: 7px;
}

.pr-mini-calendar strong {
  color: #fff;
  font-size: 15px;
}

.pr-booster-scale {
  display: grid;
  gap: 15px;
  margin-top: 25px;
}

.pr-booster-scale > div {
  display: grid;
  grid-template-columns: 95px 1fr;
  align-items: center;
  gap: 7px 15px;
}

.pr-booster-scale span {
  color: rgba(255,255,255,.53);
  font-size: 12px;
}

.pr-booster-scale strong {
  text-align: right;
  color: #eee;
  font-size: 12px;
}

.pr-booster-scale i {
  grid-column: 1 / -1;
  display: block;
  width: 100%;
  height: 5px;
  background:
    linear-gradient(to right,
      var(--color-gold) 0 var(--bar),
      rgba(255,255,255,.09) var(--bar) 100%);
}

.pr-offer-foot {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-top: 23px;
  padding-top: 19px;
  border-top: 1px solid rgba(255,255,255,.09);
}

.pr-offer-foot i {
  flex-shrink: 0;
  color: var(--color-gold);
  margin-top: 3px;
}

.pr-offer-foot p {
  color: rgba(255,255,255,.49);
  font-size: 11px;
  margin: 0;
}

/* OTHER OFFERS */

.pr-secondary-heading {margin-top: 90px;}

.pr-extra-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 13px;
  align-items: start;
}

.pr-extra {
  min-width: 0;
  padding: 28px;
  background: #222227;
  border-top: 2px solid rgba(230,180,80,.4);
  transition: border-color .3s,transform .3s;
}

.pr-extra:hover {
  border-color: var(--color-gold);
  transform: translateY(-3px);
}

.pr-extra-type {
  display: block;
  margin-bottom: 22px;
  color: var(--color-gold);
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .1em;
}

.pr-extra-type i {margin-right: 9px;}

.pr-extra h4 {
  font-size: 22px;
  margin-bottom: 10px;
}

.pr-extra-date {
  color: var(--color-gold) !important;
  font-size: 11px !important;
}

.pr-extra > p {
  color: rgba(255,255,255,.6);
  font-size: 13px;
  margin-bottom: 15px;
}

.pr-extra-detail {
  padding: 17px;
  margin: 23px 0 17px;
  background: #121216;
}

.pr-extra-detail span {
  display: block;
  margin-bottom: 5px;
  color: rgba(255,255,255,.44);
  font-size: 10px;
}

.pr-extra-detail strong {
  color: var(--color-gold);
  font-size: 13px;
}

.pr-extra small {
  display: block;
  color: rgba(255,255,255,.47);
  font-size: 11px;
  line-height: 1.6;
}

/* CONDITIONS */

.pr-conditions {
  margin-top: 95px;
  padding: 35px;
  background: #101014;
}

.pr-conditions-heading {
  max-width: 840px;
  margin-bottom: 25px;
}

.pr-conditions-heading p {
  color: rgba(255,255,255,.56);
  font-size: 14px;
}

.pr-condition-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 10px;
  align-items: start;
}

.pr-condition-grid > div {
  padding: 24px;
  background: #232328;
}

.pr-condition-grid i {
  display: block;
  color: var(--color-gold);
  font-size: 23px;
  margin-bottom: 22px;
}

.pr-condition-grid h4 {
  font-size: 17px;
  margin-bottom: 12px;
}

.pr-condition-grid p {
  font-size: 12px;
  color: rgba(255,255,255,.54);
  margin: 0;
}

/* FINAL */

.pr-final {
  display: grid;
  grid-template-columns: 42px minmax(0,1fr) auto;
  gap: 22px;
  align-items: center;
  padding: 28px;
  margin-top: 20px;
  background: rgba(230,180,80,.055);
  border-left: 2px solid var(--color-gold);
}

.pr-final-icon {
  color: var(--color-gold);
  font-size: 23px;
}

.pr-final h3 {
  font-size: 19px;
  margin-bottom: 9px;
}

.pr-final p {
  color: rgba(255,255,255,.58);
  font-size: 12px;
  margin: 0;
}

.pr-final-link {
  color: var(--color-gold);
  font-size: 11px;
  text-transform: uppercase;
  white-space: nowrap;
}

.pr-final-link i {margin-left: 8px;}

/* FILTER STATE */

.pr-section [data-pr-category][hidden] {
  display: none !important;
}

.pr-section.pr-filtered .pr-heading,
.pr-section.pr-filtered .pr-secondary-heading {
  display: none;
}

.pr-section.pr-filtered .pr-offer-grid,
.pr-section.pr-filtered .pr-extra-grid {
  margin-top: 20px;
}

/* RESPONSIVE */

@media (max-width: 1100px) {
  .pr-intro {
    grid-template-columns: 1fr 275px;
    gap: 30px;
  }

  .pr-extra-grid,
  .pr-condition-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .pr-final {
    grid-template-columns: 42px 1fr;
  }

  .pr-final-link {grid-column: 2;}
}

@media (max-width: 800px) {
  .pr-intro,
  .pr-tournament-layout,
  .pr-heading {
    grid-template-columns: 1fr;
  }

  .pr-intro-aside {max-width: 500px;}

  .pr-tournament-schedule {
    border-left: 0;
    border-top: 1px solid rgba(255,255,255,.08);
  }

  .pr-offer-grid {
    grid-template-columns: 1fr;
  }

  .pr-offer-large {grid-column: 1;}

  .pr-heading {gap: 13px;}
}

@media (max-width: 580px) {
  .pr-section.ptb {padding: 65px 0;}

  .pr-intro {margin-bottom: 52px;}

  .pr-intro h2 {font-size: 34px;}

  .pr-intro-main .pr-lead {font-size: 15px;}

  .pr-tournament-copy,
  .pr-tournament-schedule,
  .pr-offer,
  .pr-extra {
    padding: 23px 20px;
  }

  .pr-tournament-facts,
  .pr-extra-grid,
  .pr-condition-grid {
    grid-template-columns: 1fr;
  }

  .pr-offer-headline {
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
  }

  .pr-offer-big {text-align: left;}

  .pr-draw-panel {grid-template-columns: 1fr;}

  .pr-mini-calendar {grid-template-columns: 1fr;}

  .pr-secondary-heading,
  .pr-conditions {margin-top: 65px;}

  .pr-conditions {padding: 22px;}

  .pr-final {
    grid-template-columns: 1fr;
    padding: 23px 20px;
  }

  .pr-final-link {grid-column: 1;}

  .pr-filter {
    padding: 10px 12px;
    gap: 8px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .pr-section *,
  .pr-section *::before,
  .pr-section *::after {
    transition: none !important;
    animation: none !important;
  }
}

/* ===== FILTER CLEANUP & BONUS BAR EFFECT ===== */

.pr-section .pr-offer-grid[hidden],
.pr-section .pr-extra-grid[hidden],
.pr-section .pr-heading[hidden] {
  display: none !important;
}

.pr-section.pr-filtered .pr-heading:not([hidden]) {
  display: grid;
}

.pr-booster-scale i {
  transform-origin: left center;
  transition: transform .75s ease;
}

.pr-booster-scale i.pr-bar-visible {
  animation: prBarReveal .75s ease both;
}

@keyframes prBarReveal {
  from { transform: scaleX(0); }
  to { transform: scaleX(1); }
}

@media (prefers-reduced-motion: reduce) {
  .pr-booster-scale i.pr-bar-visible {
    animation: none;
  }
}

/* =========================================
   PROMOTIONS — EQUAL HEIGHT CARDS
========================================= */

/* Casino Floor offers */

.pr-offer-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
    align-items: stretch;
}

.pr-offer {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    min-width: 0;
}

.pr-offer-large {
    grid-column: 1 / -1;
}

.pr-offer-foot {
    margin-top: auto;
    padding-top: 20px;
}

/* Sportsbook & Dining offers */

.pr-extra-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 13px;
    align-items: stretch;
}

.pr-extra {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    min-width: 0;
}

.pr-extra-detail {
    margin-top: auto;
}

/* Participation Conditions */

.pr-condition-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    align-items: stretch;
}

.pr-condition-grid > div {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    min-width: 0;
}

/* Tournament facts */

.pr-tournament-facts {
    align-items: stretch;
}

.pr-tournament-facts > div {
    display: flex;
    flex-direction: column;
    height: 100%;
}

/* Filter compatibility */

.pr-section [data-pr-category][hidden] {
    display: none !important;
}

/* Tablet */

@media (max-width: 1100px) {
    .pr-extra-grid,
    .pr-condition-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Mobile */

@media (max-width: 580px) {
    .pr-offer-grid,
    .pr-extra-grid,
    .pr-condition-grid {
        grid-template-columns: 1fr;
    }

    .pr-offer-large {
        grid-column: 1;
    }
}


/* ==========================================
   ENCORE REWARDS — MEMBERSHIP EDITORIAL
========================================== */

.rw-section {
  position: relative;
  isolation: isolate;
  background: #111115;
  overflow: hidden;
}

.rw-section::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(ellipse 46% 18% at 95% 0%,
      rgba(230,180,80,.08),transparent),
    repeating-linear-gradient(90deg,
      transparent 0,
      transparent calc(25% - 1px),
      rgba(255,255,255,.012) 25%);
}

.rw-section h2,
.rw-section h3,
.rw-section h4 {
  text-transform: none;
  letter-spacing: -.03em;
}

.rw-section p {line-height: 1.72;}

.rw-kicker {
  display: block;
  margin-bottom: 17px;
  color: var(--color-gold);
  font-size: 10px;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.rw-kicker i {margin-right: 9px;}

/* INTRO */

.rw-intro {
  display: grid;
  grid-template-columns: 1.12fr .88fr;
  gap: clamp(25px,4vw,60px);
  align-items: center;
  margin-bottom: 85px;
}

.rw-intro h2 {
  font-size: clamp(35px,4.3vw,62px);
  line-height: 1.09;
  margin-bottom: 23px;
}

.rw-intro-copy > p {
  color: rgba(255,255,255,.61);
  font-size: 14px;
  margin-bottom: 16px;
}

.rw-intro-copy .rw-lead {
  color: rgba(255,255,255,.87);
  font-size: 17px;
}

.rw-intro-facts {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 9px;
  margin-top: 27px;
  align-items: stretch;
}

.rw-intro-facts > div {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 17px 13px;
  border: 1px solid rgba(230,180,80,.13);
  background: #1e1e23;
}

.rw-intro-facts i {
  font-size: 21px;
  color: var(--color-gold);
  margin-bottom: 15px;
}

.rw-intro-facts span {
  color: rgba(255,255,255,.43);
  font-size: 10px;
  margin-bottom: 6px;
}

.rw-intro-facts strong {
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  margin-top: auto;
}

/* PHOTO */

.rw-intro-visual {
  position: relative;
  padding: 0 23px 24px 0;
}

.rw-intro-visual::before {
  content: "";
  position: absolute;
  inset: 25px 0 0 25px;
  border: 1px solid rgba(230,180,80,.3);
}

.rw-photo-main {
  position: relative;
  margin: 0;
  height: clamp(310px,32vw,465px);
  overflow: hidden;
  background: #212126;
}

.rw-photo-main img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .65s ease;
}

.rw-photo-main:hover img {transform: scale(1.035);}

.rw-photo-main::after {
  content: "";
  position: absolute;
  inset: 40% 0 0;
  background: linear-gradient(transparent,rgba(5,5,7,.89));
}

.rw-photo-overlay {
  position: absolute;
  z-index: 2;
  left: 27px;
  right: 48px;
  bottom: 46px;
}

.rw-photo-overlay span,
.rw-photo-overlay small {
  display: block;
  color: var(--color-gold);
  font-size: 9px;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.rw-photo-overlay strong {
  display: block;
  max-width: 340px;
  font: 500 clamp(20px,2.3vw,32px)/1.17
    "Montserrat",sans-serif;
  margin: 9px 0;
}

.rw-photo-overlay small {
  color: rgba(255,255,255,.72);
  letter-spacing: .03em;
}

.rw-vertical-label {
  position: absolute;
  z-index: 3;
  top: 32px;
  right: 7px;
  writing-mode: vertical-rl;
  color: var(--color-gold);
  font-size: 9px;
  letter-spacing: .25em;
}

/* COMMON HEADINGS */

.rw-heading {
  display: grid;
  grid-template-columns: 1fr .84fr;
  gap: 40px;
  align-items: end;
  margin-bottom: 28px;
}

.rw-heading h3,
.rw-redemption h3,
.rw-rules h3 {
  font-size: clamp(27px,3vw,42px);
  line-height: 1.2;
  margin-bottom: 0;
}

.rw-heading > p {
  margin: 0;
  color: rgba(255,255,255,.57);
  font-size: 14px;
}

/* ENROLMENT */

.rw-enrolment {
  display: grid;
  grid-template-columns: minmax(0,1.2fr) minmax(270px,.8fr);
  gap: 15px;
  align-items: start;
}

.rw-enrolment-steps {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
  align-items: stretch;
}

.rw-enrolment-steps article {
  display: grid;
  grid-template-columns: 32px minmax(0,1fr);
  gap: 12px;
  align-content: start;
  height: 100%;
  padding: 25px;
  background: #202025;
  border: 1px solid rgba(255,255,255,.07);
}

.rw-step-number {
  color: var(--color-gold);
  font-size: 11px;
}

.rw-enrolment-steps h4 {
  font-size: 16px;
  margin: 0 0 10px;
}

.rw-enrolment-steps p {
  color: rgba(255,255,255,.57);
  font-size: 12px;
  margin: 0;
}

.rw-enrolment-note {
  padding: 30px;
  background:
    linear-gradient(135deg,rgba(230,180,80,.075),transparent),
    #1c1c20;
  border-left: 2px solid var(--color-gold);
}

.rw-note-icon {
  display: grid;
  place-items: center;
  width: 49px;
  height: 49px;
  margin-bottom: 24px;
  border: 1px solid rgba(230,180,80,.3);
  color: var(--color-gold);
  font-size: 23px;
}

.rw-enrolment-note h4 {
  font-size: 24px;
  margin-bottom: 15px;
}

.rw-enrolment-note > p {
  font-size: 13px;
  color: rgba(255,255,255,.64);
  margin-bottom: 20px;
}

.rw-note-line {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 0;
  border-top: 1px solid rgba(255,255,255,.09);
  font-size: 11px;
}

.rw-note-line span {color: rgba(255,255,255,.52);}
.rw-note-line strong {font-weight: 600;color: #fff;}

/* POINT EARNING */

.rw-earn,
.rw-tiers,
.rw-redemption,
.rw-benefits,
.rw-rules {
  margin-top: 90px;
}

.rw-earn-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 12px;
  align-items: stretch;
}

.rw-earn-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: 100%;
  padding: 28px;
  background: #202025;
  border-top: 2px solid rgba(230,180,80,.44);
}

.rw-earn-card-top {
  display: flex;
  align-items: center;
  gap: 12px;
  color: rgba(255,255,255,.8);
  font-size: 11px;
}

.rw-earn-card-top i {
  color: var(--color-gold);
  font-size: 20px;
}

.rw-earn-metric {
  padding: 20px 0;
  margin: 22px 0 17px;
  border-top: 1px solid rgba(255,255,255,.09);
  border-bottom: 1px solid rgba(255,255,255,.09);
}

.rw-earn-metric strong {
  display: block;
  color: var(--color-gold);
  font: 500 39px/1.15 "Montserrat",sans-serif;
}

.rw-earn-metric span {
  font-size: 11px;
  color: rgba(255,255,255,.63);
}

.rw-earn-card p {
  color: rgba(255,255,255,.59);
  font-size: 12px;
  margin: 0;
}

.rw-earn-note {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  padding: 20px;
  margin-top: 12px;
  background: rgba(230,180,80,.045);
}

.rw-earn-note i {
  color: var(--color-gold);
  margin-top: 4px;
}

.rw-earn-note p {
  margin: 0;
  color: rgba(255,255,255,.62);
  font-size: 12px;
}

/* STATUS TIERS */

.rw-tier-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 11px;
  align-items: stretch;
}

.rw-tier {
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: 100%;
  padding: 27px 22px;
  border: 1px solid rgba(255,255,255,.08);
  background: #1d1d22;
}

.rw-tier-elite {
  border-color: rgba(230,180,80,.38);
  background: linear-gradient(140deg,
    rgba(230,180,80,.11),transparent 70%),#1d1d22;
}

.rw-tier-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 29px;
}

.rw-tier-head span {
  color: rgba(255,255,255,.4);
  font-size: 9px;
  letter-spacing: .13em;
}

.rw-tier-head i {
  color: var(--color-gold);
  font-size: 21px;
}

.rw-tier h4 {
  font-size: 17px;
  margin-bottom: 16px;
}

.rw-tier > strong {
  color: var(--color-gold);
  font: 500 clamp(19px,2vw,27px)/1.2 "Montserrat",sans-serif;
  letter-spacing: -.05em;
}

.rw-tier-unit {
  font-size: 10px;
  color: rgba(255,255,255,.43);
  margin-top: 7px;
}

.rw-tier-bottom {
  margin-top: auto;
  padding-top: 24px;
}

.rw-accelerator {
  display: inline-block;
  padding: 7px 10px;
  margin-bottom: 15px;
  background: rgba(230,180,80,.1);
  color: var(--color-gold);
  font-size: 10px;
}

.rw-tier-bottom p {
  color: rgba(255,255,255,.58);
  font-size: 12px;
  margin: 0;
}

.rw-cycle {
  display: grid;
  grid-template-columns: .65fr 1.35fr;
  gap: 30px;
  align-items: center;
  padding: 25px;
  margin-top: 13px;
  background: #202025;
}

.rw-cycle-date {
  display: flex;
  align-items: center;
  gap: 15px;
}

.rw-cycle-date i {
  color: var(--color-gold);
  font-size: 25px;
}

.rw-cycle-date span {
  display: block;
  color: rgba(255,255,255,.4);
  font-size: 10px;
  margin-bottom: 5px;
}

.rw-cycle-date strong {font-size: 13px;}

.rw-cycle > p {
  margin: 0;
  color: rgba(255,255,255,.6);
  font-size: 12px;
}

/* REDEMPTION */

.rw-redemption {
  display: grid;
  grid-template-columns: 1fr .82fr;
  align-items: start;
  gap: 32px;
}

.rw-redemption-main > p {
  color: rgba(255,255,255,.63);
  font-size: 14px;
  margin: 19px 0 0;
}

.rw-redemption-methods {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
  margin-top: 25px;
}

.rw-redemption-methods > div {
  padding: 20px;
  background: #202025;
}

.rw-redemption-methods i {
  display: block;
  color: var(--color-gold);
  font-size: 20px;
  margin-bottom: 17px;
}

.rw-redemption-methods span {
  display: block;
  font-size: 10px;
  color: rgba(255,255,255,.47);
  margin-bottom: 9px;
}

.rw-redemption-methods strong {
  font-size: 13px;
  font-weight: 600;
}

.rw-converter {
  padding: 30px;
  background: #202025;
  border: 1px solid rgba(230,180,80,.25);
}

.rw-converter-label {
  display: flex;
  gap: 10px;
  color: var(--color-gold);
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .12em;
  margin-bottom: 23px;
}

.rw-converter-screen {
  display: grid;
  gap: 11px;
  padding: 25px;
  background: #111115;
}

.rw-converter-screen > span {
  color: rgba(255,255,255,.49);
  font-size: 11px;
}

.rw-converter-screen input {
  width: 100%;
  min-width: 0;
  padding: 11px 12px;
  font: 500 25px "Montserrat",sans-serif;
  background: #202025;
  color: #fff;
  border: 1px solid rgba(230,180,80,.35);
}

.rw-converter-screen input:focus-visible {
  outline: 2px solid var(--color-gold);
  outline-offset: 2px;
}

.rw-value-divider {
  width: 100%;
  height: 1px;
  background: rgba(255,255,255,.09);
  margin: 10px 0;
}

.rw-converter-screen > strong {
  font: 500 43px/1.2 "Montserrat",sans-serif;
  color: var(--color-gold);
}

.rw-converter-presets {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 7px;
  margin-top: 14px;
}

.rw-converter-presets button {
  border: 1px solid rgba(230,180,80,.3);
  color: var(--color-gold);
  background: transparent;
  padding: 11px 5px;
  cursor: pointer;
  font-size: 11px;
}

.rw-converter-presets button:hover,
.rw-converter-presets button.active {
  background: rgba(230,180,80,.12);
}

.rw-converter > p {
  color: rgba(255,255,255,.45);
  font-size: 11px;
  margin: 16px 0 0;
}

/* BENEFITS */

.rw-benefit-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 13px;
  align-items: stretch;
}

.rw-benefit-panel {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 32px;
  background: #202025;
  border: 1px solid rgba(255,255,255,.08);
}

.rw-benefit-type {
  font-size: 10px;
  color: var(--color-gold);
  letter-spacing: .12em;
  text-transform: uppercase;
}

.rw-benefit-panel > i {
  font-size: 26px;
  margin: 29px 0 20px;
  color: var(--color-gold);
}

.rw-benefit-panel h4 {
  font-size: 24px;
  margin-bottom: 15px;
}

.rw-benefit-panel > p {
  font-size: 13px;
  color: rgba(255,255,255,.63);
  margin-bottom: 20px;
}

.rw-benefit-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-top: auto;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,.1);
}

.rw-benefit-footer span {
  color: rgba(255,255,255,.47);
  font-size: 11px;
}

.rw-benefit-footer i,
.rw-benefit-footer a {
  color: var(--color-gold);
  font-size: 11px;
}

/* RULES */

.rw-rules {
  display: grid;
  grid-template-columns: .7fr 1.3fr;
  align-items: start;
  gap: 45px;
}

.rw-rules-list {
  border-top: 1px solid rgba(255,255,255,.1);
}

.rw-rules-list details {
  border-bottom: 1px solid rgba(255,255,255,.1);
}

.rw-rules-list summary {
  display: grid;
  grid-template-columns: 32px 1fr 18px;
  gap: 12px;
  align-items: center;
  padding: 19px 0;
  cursor: pointer;
  list-style: none;
  color: #fff;
  font-size: 14px;
}

.rw-rules-list summary::-webkit-details-marker {display: none;}

.rw-rules-list summary span,
.rw-rules-list summary i {
  color: var(--color-gold);
}

.rw-rules-list summary i {transition: transform .25s;}

.rw-rules-list details[open] summary i {
  transform: rotate(45deg);
}

.rw-rules-list details > p {
  padding: 0 30px 22px 44px;
  color: rgba(255,255,255,.63);
  font-size: 13px;
  margin: 0;
}

/* FINAL */

.rw-final {
  display: grid;
  grid-template-columns: 45px minmax(0,1fr) auto;
  gap: 20px;
  align-items: center;
  margin-top: 80px;
  padding: 26px;
  border-left: 2px solid var(--color-gold);
  background: rgba(230,180,80,.05);
}

.rw-final-icon {
  color: var(--color-gold);
  font-size: 24px;
}

.rw-final h3 {
  font-size: 18px;
  margin-bottom: 9px;
}

.rw-final p {
  font-size: 12px;
  color: rgba(255,255,255,.62);
  margin: 0;
}

.rw-final-link {
  white-space: nowrap;
  color: var(--color-gold);
  font-size: 11px;
  text-transform: uppercase;
}

.rw-final-link i {margin-left: 8px;}

/* RESPONSIVE */

@media (max-width: 1100px) {
  .rw-enrolment {grid-template-columns: 1fr;}
  .rw-tier-grid {grid-template-columns: repeat(2,minmax(0,1fr));}
  .rw-final {grid-template-columns: 45px 1fr;}
  .rw-final-link {grid-column: 2;}
}

@media (max-width: 850px) {
  .rw-intro,
  .rw-heading,
  .rw-redemption,
  .rw-rules {
    grid-template-columns: 1fr;
    gap: 27px;
  }

  .rw-intro-visual {max-width: 650px;}
  .rw-earn-grid {grid-template-columns: 1fr;}
  .rw-rules {gap: 20px;}
}

@media (max-width: 600px) {
  .rw-section.ptb {padding: 65px 0;}
  .rw-intro {margin-bottom: 60px;}
  .rw-intro h2 {font-size: 34px;}
  .rw-intro-copy .rw-lead {font-size: 15px;}

  .rw-intro-facts {gap: 5px;}
  .rw-intro-facts > div {padding: 13px 9px;}
  .rw-intro-facts strong {font-size: 11px;}

  .rw-photo-main {height: 280px;}

  .rw-enrolment-steps,
  .rw-tier-grid,
  .rw-redemption-methods,
  .rw-benefit-grid,
  .rw-cycle {
    grid-template-columns: 1fr;
  }

  .rw-earn,
  .rw-tiers,
  .rw-redemption,
  .rw-benefits,
  .rw-rules {margin-top: 65px;}

  .rw-enrolment-steps article,
  .rw-enrolment-note,
  .rw-tier,
  .rw-earn-card,
  .rw-benefit-panel {padding: 23px 20px;}

  .rw-converter {padding: 20px;}
  .rw-converter-screen {padding: 19px;}
  .rw-converter-screen > strong {font-size: 33px;}
  .rw-cycle {gap: 13px;}

  .rw-rules-list summary {
    font-size: 12px;
    gap: 7px;
  }

  .rw-rules-list details > p {padding-left: 38px;}

  .rw-final {
    grid-template-columns: 1fr;
    padding: 22px;
    margin-top: 55px;
  }

  .rw-final-link {grid-column: 1;}
}

@media (prefers-reduced-motion: reduce) {
  .rw-section *,
  .rw-section *::before,
  .rw-section *::after {
    animation: none !important;
    transition: none !important;
  }
}


/* =======================================
   FIRST VISIT — EDITORIAL DESIGN
======================================= */

.fv-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: #1b1b20;
}

.fv-section::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(ellipse at 94% 2%,
      rgba(230,180,80,.075),transparent 30%),
    repeating-linear-gradient(90deg,
      transparent 0,
      transparent calc(25% - 1px),
      rgba(255,255,255,.012) 25%);
}

.fv-section h2,
.fv-section h3,
.fv-section h4 {
  text-transform: none;
  letter-spacing: -.03em;
}

.fv-section p {line-height: 1.72;}

.fv-kicker {
  display: block;
  margin-bottom: 17px;
  color: var(--color-gold);
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .15em;
}

.fv-kicker i {margin-right: 9px;}

.fv-heading {
  display: grid;
  grid-template-columns: 1fr .8fr;
  align-items: end;
  gap: 35px;
  margin-bottom: 27px;
}

.fv-heading h3,
.fv-id-heading h3,
.fv-money h3,
.fv-conduct h3,
.fv-questions h3 {
  font-size: clamp(27px,3vw,41px);
  line-height: 1.19;
  margin-bottom: 0;
}

.fv-heading > p {
  margin: 0;
  color: rgba(255,255,255,.59);
  font-size: 14px;
}

/* INTRO */

.fv-intro {
  display: grid;
  grid-template-columns: minmax(0,1fr) 315px;
  gap: clamp(30px,5vw,75px);
  align-items: center;
  margin-bottom: 86px;
}

.fv-intro h2 {
  font-size: clamp(35px,4.3vw,61px);
  line-height: 1.09;
  margin-bottom: 23px;
}

.fv-intro-copy > p {
  max-width: 840px;
  margin-bottom: 16px;
  color: rgba(255,255,255,.65);
  font-size: 14px;
}

.fv-intro-copy .fv-lead {
  color: rgba(255,255,255,.87);
  font-size: 17px;
}

/* ENTRY DISPLAY */

.fv-entry-display {
  padding: 26px;
  background: #101014;
  border: 1px solid rgba(230,180,80,.25);
  box-shadow: 0 25px 55px rgba(0,0,0,.12);
}

.fv-display-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  color: var(--color-gold);
  font-size: 10px;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.fv-display-top i {font-size: 21px;}

.fv-display-age {
  text-align: center;
  padding: 25px 0;
}

.fv-display-age > span {
  display: block;
  color: rgba(255,255,255,.47);
  font-size: 10px;
  letter-spacing: .13em;
}

.fv-display-age strong {
  display: block;
  margin: 8px 0;
  color: var(--color-gold);
  font: 500 108px/.95 "Montserrat",sans-serif;
  letter-spacing: -.09em;
}

.fv-display-age strong span {font-size: 50px;}

.fv-display-divider {
  height: 1px;
  background: rgba(230,180,80,.22);
  margin-bottom: 12px;
}

.fv-display-rule {
  display: grid;
  grid-template-columns: 25px 1fr;
  gap: 13px;
  align-items: start;
  padding: 13px 0;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.fv-display-rule:last-child {border-bottom: 0;}

.fv-display-rule > i {
  color: var(--color-gold);
  font-size: 16px;
  margin-top: 4px;
}

.fv-display-rule span {
  display: block;
  color: #eee;
  font-size: 12px;
}

.fv-display-rule p {
  margin: 4px 0 0;
  color: rgba(255,255,255,.47);
  font-size: 11px;
}

/* EQUAL HEIGHT ENTRY CARDS */

.fv-entry-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
  align-items: stretch;
}

.fv-entry-card {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  min-width: 0;
  padding: 26px 23px;
  background: #111115;
  border-top: 2px solid rgba(230,180,80,.45);
  transition: border-color .3s,background .3s;
}

.fv-entry-card:hover {
  background: #25242a;
  border-color: var(--color-gold);
}

.fv-entry-icon {
  display: grid;
  place-items: center;
  width: 43px;
  height: 43px;
  border: 1px solid rgba(230,180,80,.23);
  color: var(--color-gold);
  font-size: 19px;
  margin-bottom: 23px;
}

.fv-card-number {
  position: absolute;
  top: 18px;
  right: 20px;
  color: rgba(255,255,255,.17);
  font-size: 23px;
}

.fv-entry-card h4 {
  font-size: 17px;
  margin-bottom: 13px;
}

.fv-entry-card p {
  color: rgba(255,255,255,.58);
  font-size: 12px;
  margin: 0;
}

/* IDENTIFICATION PANEL */

.fv-id-panel {
  margin-top: 28px;
  padding: 34px;
  background: #242429;
  border: 1px solid rgba(255,255,255,.07);
}

.fv-id-heading {max-width: 850px;}

.fv-id-heading p {
  color: rgba(255,255,255,.59);
  font-size: 14px;
  margin: 16px 0 24px;
}

.fv-id-list {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 9px;
}

.fv-id-list > div {
  display: grid;
  grid-template-columns: 18px 1fr;
  gap: 12px;
  align-items: start;
  padding: 16px;
  background: #17171c;
  font-size: 12px;
  color: rgba(255,255,255,.73);
  line-height: 1.5;
}

.fv-id-list i {
  color: var(--color-gold);
  margin-top: 2px;
}

.fv-id-warning,
.fv-money-note {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  padding: 20px 0 0;
}

.fv-id-warning i,
.fv-money-note i {
  color: var(--color-gold);
  margin-top: 3px;
}

.fv-id-warning p,
.fv-money-note p {
  margin: 0;
  color: rgba(255,255,255,.56);
  font-size: 12px;
}

/* PROCESS */

.fv-process {margin-top: 90px;}

.fv-process-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
  align-items: stretch;
}

.fv-process-item {
  position: relative;
  height: 100%;
  padding: 25px 22px;
  background: #111115;
  border: 1px solid rgba(255,255,255,.07);
}

.fv-process-item > span {
  position: absolute;
  right: 20px;
  top: 18px;
  font-size: 23px;
  color: rgba(255,255,255,.14);
}

.fv-process-item > i {
  display: block;
  margin-bottom: 24px;
  color: var(--color-gold);
  font-size: 22px;
}

.fv-process-item h4 {
  font-size: 16px;
  margin-bottom: 11px;
}

.fv-process-item p {
  color: rgba(255,255,255,.58);
  font-size: 12px;
  margin: 0;
}

/* MONEY SECTION */

.fv-money {margin-top: 95px;}

.fv-money-heading {
  max-width: 850px;
  margin-bottom: 29px;
}

.fv-money-heading p {
  color: rgba(255,255,255,.59);
  font-size: 14px;
  margin: 17px 0 0;
}

.fv-money-layout {
  display: grid;
  grid-template-columns: minmax(0,1.13fr) minmax(0,.87fr);
  gap: 20px;
  align-items: start;
}

.fv-money-flow {
  background: #111115;
  padding: 12px 27px;
  border: 1px solid rgba(255,255,255,.08);
}

.fv-money-step {
  display: grid;
  grid-template-columns: 47px 1fr;
  gap: 18px;
  padding: 20px 0;
  border-bottom: 1px solid rgba(255,255,255,.09);
}

.fv-money-step:last-child {border-bottom: 0;}

.fv-money-symbol {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(230,180,80,.26);
  color: var(--color-gold);
  font-size: 18px;
}

.fv-money-step span {
  display: block;
  color: var(--color-gold);
  font-size: 9px;
  letter-spacing: .12em;
  margin-bottom: 6px;
}

.fv-money-step h4 {
  font-size: 17px;
  margin-bottom: 8px;
}

.fv-money-step p {
  font-size: 12px;
  color: rgba(255,255,255,.61);
  margin: 0;
}

/* VOUCHER */

.fv-voucher {
  padding: 24px;
  background: #242429;
  border: 1px solid rgba(230,180,80,.16);
}

.fv-voucher-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  color: var(--color-gold);
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .1em;
}

.fv-voucher-art {
  display: grid;
  place-items: center;
  padding: 35px 20px;
  margin: 21px 0;
  background: repeating-linear-gradient(135deg,
    #111115 0,
    #111115 20px,
    #19191e 21px,
    #19191e 22px);
}

.fv-voucher-paper {
  width: min(100%,215px);
  padding: 22px;
  background: #e9e0c9;
  color: #181818;
  text-align: center;
  transform: rotate(-5deg);
  box-shadow: 12px 15px 25px rgba(0,0,0,.3);
  transition: transform .35s;
}

.fv-voucher-paper:hover {
  transform: rotate(0deg);
}

.fv-voucher-paper > span,
.fv-voucher-paper small {
  display: block;
  font-size: 9px;
  letter-spacing: .1em;
}

.fv-voucher-paper > i {
  display: block;
  font-size: 26px;
  margin: 16px 0;
}

.fv-voucher-bars {
  height: 44px;
  margin-bottom: 14px;
  background: repeating-linear-gradient(90deg,
    #1b1b1b 0 2px,
    transparent 2px 5px,
    #1b1b1b 5px 7px,
    transparent 7px 11px);
}

.fv-voucher-details > div {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  padding: 11px 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
  font-size: 11px;
}

.fv-voucher-details span {
  color: rgba(255,255,255,.46);
}

.fv-voucher-details strong {
  color: #fff;
  text-align: right;
}

.fv-voucher > p {
  color: rgba(255,255,255,.56);
  font-size: 12px;
  margin: 18px 0 0;
}

.fv-money-note {
  padding: 18px 22px;
  margin-top: 13px;
  background: rgba(230,180,80,.045);
  border-left: 2px solid var(--color-gold);
}

/* NON-GAMING OPTIONS */

.fv-options {margin-top: 95px;}

.fv-options-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 12px;
  align-items: stretch;
}

.fv-option {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-width: 0;
  padding: 29px 25px;
  background: #111115;
  border: 1px solid rgba(255,255,255,.08);
}

.fv-option-index {
  font-size: 9px;
  letter-spacing: .12em;
  color: var(--color-gold);
  text-transform: uppercase;
}

.fv-option > i {
  color: var(--color-gold);
  font-size: 24px;
  margin: 29px 0 23px;
}

.fv-option h4 {
  font-size: 19px;
  margin-bottom: 15px;
}

.fv-option p {
  color: rgba(255,255,255,.59);
  font-size: 12px;
  margin-bottom: 22px;
}

.fv-option > a {
  align-self: flex-start;
  color: var(--color-gold);
  margin-top: auto;
  font-size: 11px;
  text-transform: uppercase;
}

.fv-option > a i {margin-left: 9px;}

/* CONDUCT */

.fv-conduct {margin-top: 95px;}

.fv-conduct-heading {
  max-width: 850px;
  margin-bottom: 30px;
}

.fv-conduct-heading > p {
  color: rgba(255,255,255,.59);
  font-size: 14px;
  margin: 16px 0 0;
}

.fv-conduct-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
  align-items: stretch;
}

.fv-conduct-item {
  display: grid;
  grid-template-columns: 42px 1fr;
  align-content: start;
  column-gap: 18px;
  padding: 25px;
  background: #242429;
  border-left: 2px solid rgba(230,180,80,.33);
}

.fv-conduct-item > i {
  grid-row: span 2;
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  color: var(--color-gold);
  border: 1px solid rgba(230,180,80,.2);
  font-size: 17px;
}

.fv-conduct-item h4 {
  font-size: 17px;
  margin: 0 0 9px;
}

.fv-conduct-item p {
  margin: 0;
  font-size: 12px;
  color: rgba(255,255,255,.6);
}

/* QUESTIONS */

.fv-questions {
  display: grid;
  grid-template-columns: .76fr 1.24fr;
  gap: 45px;
  align-items: start;
  margin-top: 95px;
  padding-top: 45px;
  border-top: 1px solid rgba(255,255,255,.11);
}

.fv-questions-intro > p {
  color: rgba(255,255,255,.57);
  font-size: 14px;
  margin: 19px 0 0;
}

.fv-accordion {
  border-top: 1px solid rgba(255,255,255,.1);
}

.fv-accordion details {
  border-bottom: 1px solid rgba(255,255,255,.1);
}

.fv-accordion summary {
  display: grid;
  grid-template-columns: 30px minmax(0,1fr) 19px;
  gap: 12px;
  align-items: center;
  padding: 19px 0;
  color: #fff;
  font-family: "Montserrat",sans-serif;
  font-size: 13px;
  line-height: 1.5;
  list-style: none;
  cursor: pointer;
}

.fv-accordion summary::-webkit-details-marker {display:none;}

.fv-accordion summary > span,
.fv-accordion summary > i {
  color: var(--color-gold);
}

.fv-accordion summary > i {
  transition: transform .25s;
}

.fv-accordion details[open] summary > i {
  transform: rotate(45deg);
}

.fv-accordion details > div {
  padding: 0 30px 20px 42px;
}

.fv-accordion details p {
  margin: 0;
  color: rgba(255,255,255,.61);
  font-size: 12px;
}

/* FINAL */

.fv-final {
  display: grid;
  grid-template-columns: 43px minmax(0,1fr) auto;
  align-items: center;
  gap: 21px;
  padding: 26px;
  margin-top: 80px;
  background: rgba(230,180,80,.055);
  border-left: 2px solid var(--color-gold);
}

.fv-final-icon {
  color: var(--color-gold);
  font-size: 22px;
}

.fv-final h3 {
  font-size: 18px;
  margin-bottom: 9px;
}

.fv-final p {
  margin: 0;
  color: rgba(255,255,255,.61);
  font-size: 12px;
}

.fv-final-link {
  color: var(--color-gold);
  white-space: nowrap;
  font-size: 11px;
  text-transform: uppercase;
}

.fv-final-link i {margin-left: 9px;}

/* RESPONSIVE */

@media (max-width: 1100px) {
  .fv-intro {
    grid-template-columns: minmax(0,1fr) 285px;
    gap: 30px;
  }

  .fv-entry-grid,
  .fv-process-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .fv-final {
    grid-template-columns: 43px 1fr;
  }

  .fv-final-link {grid-column: 2;}
}

@media (max-width: 850px) {
  .fv-intro,
  .fv-heading,
  .fv-money-layout,
  .fv-questions {
    grid-template-columns: 1fr;
  }

  .fv-entry-display {
    width: 100%;
    max-width: 500px;
  }

  .fv-heading {gap: 13px;}

  .fv-questions {gap: 20px;}

  .fv-options-grid {grid-template-columns: 1fr;}
}

@media (max-width: 600px) {
  .fv-section.ptb {padding: 65px 0;}

  .fv-intro {margin-bottom: 62px;}

  .fv-intro h2 {font-size: 34px;}

  .fv-intro-copy .fv-lead {font-size: 15px;}

  .fv-entry-grid,
  .fv-process-grid,
  .fv-id-list,
  .fv-conduct-grid {
    grid-template-columns: 1fr;
  }

  .fv-id-panel {padding: 22px;}

  .fv-process,
  .fv-money,
  .fv-options,
  .fv-conduct,
  .fv-questions {
    margin-top: 65px;
  }

  .fv-money-flow {padding: 10px 19px;}

  .fv-money-step {
    grid-template-columns: 40px 1fr;
    gap: 12px;
  }

  .fv-voucher {padding: 19px;}

  .fv-conduct-item {padding: 20px;}

  .fv-accordion summary {font-size: 12px;}

  .fv-final {
    grid-template-columns: 1fr;
    margin-top: 55px;
    padding: 22px;
  }

  .fv-final-link {grid-column: 1;}
}

@media (prefers-reduced-motion: reduce) {
  .fv-section *,
  .fv-section *::before,
  .fv-section *::after {
    animation: none !important;
    transition: none !important;
  }
}


/* ==========================================
   DINING — THE WELL PUBLIC HOUSE
   One photograph / balanced equal-height cards
========================================== */

.dwp-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: #17171c;
}

.dwp-section *,
.dwp-section *::before,
.dwp-section *::after {
  box-sizing: border-box;
}

.dwp-section::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse at 95% 0%,
      rgba(230,180,80,.075), transparent 33%),
    repeating-linear-gradient(90deg,
      transparent 0 calc(25% - 1px),
      rgba(255,255,255,.012) 25%);
}

.dwp-section h2,
.dwp-section h3,
.dwp-section h4 {
  text-transform: none;
  letter-spacing: -.035em;
}

.dwp-section p {
  line-height: 1.72;
}

.dwp-eyebrow {
  display: block;
  margin-bottom: 16px;
  color: #e6b450;
  font-size: 10px;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.dwp-eyebrow i { margin-right: 8px; }

.dwp-section-heading {
  max-width: 790px;
  margin-bottom: 25px;
}

.dwp-section-heading h3,
.dwp-happy h3,
.dwp-visit h3 {
  font-size: clamp(27px, 3vw, 42px);
  line-height: 1.2;
  margin-bottom: 15px;
}

.dwp-section-heading > p {
  margin: 0;
  color: rgba(255,255,255,.6);
  font-size: 14px;
}

/* HERO */

.dwp-hero {
  display: grid;
  grid-template-columns: minmax(0,1.12fr) minmax(0,.88fr);
  gap: clamp(28px,4vw,60px);
  align-items: center;
  margin-bottom: 80px;
}

.dwp-hero-copy {
  min-width: 0;
}

.dwp-hero h2 {
  font-size: clamp(38px,4.4vw,65px);
  line-height: 1.08;
  margin-bottom: 24px;
}

.dwp-hero-copy > p {
  color: rgba(255,255,255,.64);
  font-size: 14px;
  margin-bottom: 16px;
}

.dwp-hero-copy > .dwp-lead {
  color: rgba(255,255,255,.87);
  font-size: 17px;
}

.dwp-hero-stats {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 8px;
  margin-top: 26px;
  align-items: stretch;
}

.dwp-hero-stats > div {
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: 100%;
  padding: 17px 12px;
  background: #242429;
  border-bottom: 2px solid rgba(230,180,80,.6);
}

.dwp-hero-stats span {
  color: rgba(255,255,255,.48);
  font-size: 10px;
  margin-bottom: 9px;
}

.dwp-hero-stats strong {
  margin-top: auto;
  color: #fff;
  font-size: 12px;
  line-height: 1.4;
}

/* THE ONLY PHOTO */

.dwp-hero-media {
  position: relative;
  min-width: 0;
  padding: 0 23px 25px 0;
}

.dwp-hero-media::before {
  content: "";
  position: absolute;
  inset: 25px 0 0 23px;
  border: 1px solid rgba(230,180,80,.32);
  pointer-events: none;
}

.dwp-hero-photo {
  position: relative;
  overflow: hidden;
  margin: 0;
  height: clamp(350px,36vw,515px);
  background: #25252a;
}

.dwp-hero-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .6s ease;
}

.dwp-hero-photo:hover img {
  transform: scale(1.035);
}

.dwp-hero-photo::after {
  content: "";
  position: absolute;
  inset: 45% 0 0;
  background: linear-gradient(transparent,rgba(5,5,8,.85));
  pointer-events: none;
}

.dwp-photo-caption {
  position: absolute;
  z-index: 2;
  left: 28px;
  bottom: 51px;
  right: 46px;
}

.dwp-photo-caption span {
  display: block;
  color: #e6b450;
  font-size: 10px;
  letter-spacing: .14em;
}

.dwp-photo-caption strong {
  display: block;
  margin-top: 9px;
  color: #fff;
  font: 500 clamp(23px,2.6vw,36px)/1.18
    "Montserrat",sans-serif;
}

.dwp-photo-vertical {
  position: absolute;
  z-index: 2;
  top: 24px;
  right: 8px;
  writing-mode: vertical-rl;
  color: #e6b450;
  font-size: 9px;
  letter-spacing: .18em;
}

/* HOURS */

.dwp-hours {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  align-items: start;
  gap: 40px;
  padding-top: 27px;
  margin-bottom: 90px;
  border-top: 1px solid rgba(230,180,80,.25);
}

.dwp-hours-cards {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
  align-items: stretch;
}

.dwp-hours-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: 100%;
  padding: 24px;
  background: #25252a;
  border-top: 2px solid #e6b450;
}

.dwp-hours-day {
  color: rgba(255,255,255,.7);
  font-size: 12px;
}

.dwp-hours-main {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 19px 0 7px;
}

.dwp-hours-main i {
  color: #e6b450;
  font-size: 18px;
}

.dwp-hours-main strong {
  color: #fff;
  font: 500 clamp(17px,1.7vw,23px)/1.25
    "Montserrat",sans-serif;
}

.dwp-hours-type {
  color: #e6b450;
  font-size: 10px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.dwp-hours-bottom {
  display: flex;
  flex-direction: column;
  gap: 7px;
  padding-top: 19px;
  margin-top: auto;
  border-top: 1px solid rgba(255,255,255,.09);
}

.dwp-hours-bottom span {
  color: rgba(255,255,255,.47);
  font-size: 10px;
}

.dwp-hours-bottom strong {
  color: #eee;
  font-size: 13px;
}

/* MENU */

.dwp-menu-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 17px;
}

.dwp-tab {
  padding: 12px 17px;
  border: 1px solid rgba(255,255,255,.12);
  background: #25252a;
  color: #dedede;
  font: 500 11px "Montserrat",sans-serif;
  cursor: pointer;
  transition: border-color .2s,background .2s,color .2s;
}

.dwp-tab:hover,
.dwp-tab.is-active {
  color: #e6b450;
  border-color: #e6b450;
  background: rgba(230,180,80,.1);
}

.dwp-tab:focus-visible,
.dwp-section a:focus-visible {
  outline: 2px solid #e6b450;
  outline-offset: 3px;
}

.dwp-menu-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  align-items: stretch;
  gap: 12px;
}

.dwp-menu-item {
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: 100%;
  padding: 25px 23px;
  background: #101014;
  border: 1px solid rgba(255,255,255,.08);
  transition: border-color .2s,background .2s;
}

.dwp-menu-item:hover {
  border-color: rgba(230,180,80,.35);
  background: #18181d;
}

.dwp-menu-item[hidden] {
  display: none !important;
}

.dwp-item-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 19px;
}

.dwp-item-top span {
  color: #e6b450;
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: .13em;
}

.dwp-item-top i {
  color: rgba(230,180,80,.7);
  font-size: 19px;
}

.dwp-menu-item h4 {
  font-size: 18px;
  line-height: 1.32;
  margin-bottom: 12px;
}

.dwp-menu-item > p {
  color: rgba(255,255,255,.56);
  font-size: 12px;
  margin: 0 0 20px;
}

.dwp-item-price {
  color: #e6b450;
  font: 500 23px/1.2 "Montserrat",sans-serif;
  margin-top: auto;
  padding-top: 15px;
  border-top: 1px solid rgba(255,255,255,.09);
}

/* MEALTIMES */

.dwp-mealtimes {
  margin-top: 90px;
}

.dwp-mealtimes-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 12px;
  align-items: stretch;
}

.dwp-mealtime {
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: 100%;
  padding: 28px 25px;
  background: #25252a;
  border-top: 2px solid rgba(230,180,80,.45);
}

.dwp-mealtime-index {
  color: #e6b450;
  font-size: 10px;
  letter-spacing: .12em;
}

.dwp-mealtime > i {
  font-size: 24px;
  color: #e6b450;
  margin: 25px 0;
}

.dwp-mealtime h4 {
  font-size: 20px;
  margin-bottom: 13px;
}

.dwp-mealtime p {
  color: rgba(255,255,255,.61);
  font-size: 12px;
  margin: 0 0 22px;
}

.dwp-mealtime-foot {
  margin-top: auto;
  padding-top: 15px;
  border-top: 1px solid rgba(255,255,255,.09);
  color: #e6b450;
  font-size: 11px;
}

/* HAPPY HOUR */

.dwp-happy {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 45px;
  align-items: start;
  margin-top: 95px;
}

.dwp-happy-intro > p {
  color: rgba(255,255,255,.63);
  font-size: 14px;
  margin-bottom: 18px;
}

.dwp-happy-time {
  display: flex;
  align-items: center;
  gap: 17px;
  margin: 25px 0;
  padding: 23px;
  background: rgba(230,180,80,.075);
  border-left: 2px solid #e6b450;
}

.dwp-happy-time > i {
  color: #e6b450;
  font-size: 25px;
}

.dwp-happy-time span {
  display: block;
  color: rgba(255,255,255,.53);
  font-size: 10px;
  letter-spacing: .12em;
  margin-bottom: 7px;
}

.dwp-happy-time strong {
  color: #fff;
  font: 500 clamp(19px,2vw,27px)/1.25
    "Montserrat",sans-serif;
}

.dwp-happy-note {
  font-size: 12px !important;
  color: rgba(255,255,255,.48) !important;
}

.dwp-happy-menu {
  padding: 26px;
  background: #101014;
  border: 1px solid rgba(230,180,80,.25);
}

.dwp-happy-menu-head {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  padding-bottom: 17px;
  margin-bottom: 5px;
  border-bottom: 1px solid rgba(230,180,80,.3);
  color: #e6b450;
  font-size: 10px;
  letter-spacing: .13em;
}

.dwp-happy-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 20px;
  padding: 13px 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
  font-size: 12px;
  color: rgba(255,255,255,.76);
}

.dwp-happy-row:last-child {
  border-bottom: 0;
}

.dwp-happy-row strong {
  color: #e6b450;
  white-space: nowrap;
  font-size: 15px;
}

/* DAILY FEATURES */

.dwp-features {
  margin-top: 95px;
}

.dwp-feature-grid {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 10px;
  align-items: stretch;
}

.dwp-feature {
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: 100%;
  padding: 22px 18px;
  background: #25252a;
  border-top: 2px solid rgba(230,180,80,.55);
}

.dwp-feature > span {
  color: #e6b450;
  font-size: 10px;
  letter-spacing: .14em;
  margin-bottom: 23px;
}

.dwp-feature h4 {
  font-size: 17px;
  line-height: 1.35;
  margin-bottom: 11px;
}

.dwp-feature p {
  color: rgba(255,255,255,.54);
  font-size: 12px;
  margin-bottom: 21px;
}

.dwp-feature-price {
  color: #e6b450;
  font: 500 19px "Montserrat",sans-serif;
  padding-top: 13px;
  margin-top: auto;
  border-top: 1px solid rgba(255,255,255,.09);
}

/* VISIT INFORMATION */

.dwp-visit {
  display: grid;
  grid-template-columns: minmax(0,1.05fr) minmax(0,.95fr);
  gap: 30px;
  align-items: start;
  margin-top: 95px;
  padding: 34px;
  background: #222227;
  border-left: 2px solid #e6b450;
}

.dwp-visit-main > p {
  color: rgba(255,255,255,.64);
  font-size: 13px;
  margin-bottom: 15px;
}

.dwp-visit-main > p:last-child {
  margin-bottom: 0;
}

.dwp-visit-details {
  display: grid;
  gap: 10px;
}

.dwp-visit-details > div {
  display: grid;
  grid-template-columns: 23px minmax(0,1fr);
  gap: 13px;
  align-items: center;
  padding: 17px 19px;
  background: #111115;
  border: 1px solid rgba(255,255,255,.06);
}

.dwp-visit-details i {
  color: #e6b450;
  font-size: 17px;
}

.dwp-visit-details p {
  color: rgba(255,255,255,.72);
  font-size: 12px;
  margin: 0;
}

/* FINAL */

.dwp-final {
  display: grid;
  grid-template-columns: 38px minmax(0,1fr) auto;
  align-items: center;
  gap: 22px;
  margin-top: 25px;
  padding: 26px;
  background: rgba(230,180,80,.05);
  border-left: 2px solid #e6b450;
}

.dwp-final-icon {
  color: #e6b450;
  font-size: 23px;
}

.dwp-final h3 {
  font-size: 18px;
  margin-bottom: 8px;
}

.dwp-final p {
  color: rgba(255,255,255,.6);
  font-size: 12px;
  margin: 0;
}

.dwp-final-link {
  color: #e6b450;
  font-size: 11px;
  text-transform: uppercase;
  white-space: nowrap;
}

.dwp-final-link i {
  margin-left: 8px;
}

/* RESPONSIVE */

@media (max-width: 1100px) {
  .dwp-hero {
    gap: 28px;
  }

  .dwp-hours {
    grid-template-columns: 1fr;
    gap: 15px;
  }

  .dwp-menu-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .dwp-feature-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .dwp-final {
    grid-template-columns: 38px 1fr;
  }

  .dwp-final-link {
    grid-column: 2;
  }
}

@media (max-width: 850px) {
  .dwp-hero,
  .dwp-happy,
  .dwp-visit {
    grid-template-columns: 1fr;
  }

  .dwp-hero-media {
    max-width: 620px;
    width: 100%;
  }

  .dwp-hero-photo {
    height: 430px;
  }

  .dwp-mealtimes-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .dwp-visit {
    gap: 22px;
  }
}

@media (max-width: 600px) {
  .dwp-section.ptb {
    padding: 65px 0;
  }

  .dwp-hero {
    margin-bottom: 60px;
  }

  .dwp-hero h2 {
    font-size: 35px;
  }

  .dwp-hero-copy > .dwp-lead {
    font-size: 15px;
  }

  .dwp-hero-stats {
    gap: 5px;
  }

  .dwp-hero-stats > div {
    padding: 13px 9px;
  }

  .dwp-hero-stats strong {
    font-size: 10px;
  }

  .dwp-hero-photo {
    height: 320px;
  }

  .dwp-photo-caption {
    left: 18px;
    bottom: 40px;
  }

  .dwp-hours {
    margin-bottom: 65px;
  }

  .dwp-hours-cards,
  .dwp-menu-grid,
  .dwp-mealtimes-grid {
    grid-template-columns: 1fr;
  }

  .dwp-menu-controls {
    gap: 6px;
  }

  .dwp-tab {
    padding: 10px 12px;
  }

  .dwp-menu-item {
    padding: 22px;
  }

  .dwp-mealtimes,
  .dwp-happy,
  .dwp-features,
  .dwp-visit {
    margin-top: 65px;
  }

  .dwp-happy-menu {
    padding: 19px;
  }

  .dwp-feature-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .dwp-feature {
    padding: 19px 15px;
  }

  .dwp-visit {
    padding: 22px;
  }

  .dwp-final {
    grid-template-columns: 1fr;
    padding: 22px;
  }

  .dwp-final-link {
    grid-column: 1;
  }
}

@media (max-width: 380px) {
  .dwp-feature-grid {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  .dwp-section *,
  .dwp-section *::before,
  .dwp-section *::after {
    transition: none !important;
    animation: none !important;
  }
}

/* ==========================================
   LIVE ENTERTAINMENT / EVENTS
   Isolated le- styles
========================================== */

.le-section {
  --le-gold: #e6b450;
  --le-bg: #111115;
  --le-panel: #222227;
  --le-line: rgba(255,255,255,.09);
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: #111115;
}

.le-section *,
.le-section *::before,
.le-section *::after {
  box-sizing: border-box;
}

.le-section::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse at 92% 3%,
      rgba(230,180,80,.095), transparent 35%),
    repeating-linear-gradient(90deg,
      transparent 0 calc(25% - 1px),
      rgba(255,255,255,.012) 25%);
}

.le-section h2,
.le-section h3,
.le-section h4 {
  text-transform: none;
  letter-spacing: -.035em;
}

.le-section p { line-height: 1.7; }

.le-kicker {
  display: block;
  margin-bottom: 17px;
  color: var(--le-gold);
  font-size: 10px;
  line-height: 1.5;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.le-kicker i { margin-right: 8px; }

/* INTRO */

.le-intro {
  display: grid;
  grid-template-columns: minmax(0,1.14fr) minmax(0,.86fr);
  align-items: center;
  gap: clamp(26px,4vw,65px);
  margin-bottom: 88px;
}

.le-intro-copy {
  min-width: 0;
}

.le-intro h2 {
  font-size: clamp(37px,4.5vw,66px);
  line-height: 1.08;
  margin-bottom: 24px;
}

.le-intro-copy > p {
  color: rgba(255,255,255,.62);
  font-size: 14px;
  margin-bottom: 16px;
}

.le-intro-copy > .le-lead {
  color: rgba(255,255,255,.88);
  font-size: 17px;
}

.le-intro-facts {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  align-items: stretch;
  gap: 9px;
  margin-top: 27px;
}

.le-intro-facts > div {
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: 100%;
  padding: 17px 13px;
  background: #222227;
  border-bottom: 2px solid rgba(230,180,80,.5);
}

.le-intro-facts i {
  color: var(--le-gold);
  font-size: 19px;
  margin-bottom: 13px;
}

.le-intro-facts span {
  display: block;
  color: rgba(255,255,255,.48);
  font-size: 10px;
  line-height: 1.4;
  margin-bottom: 8px;
}

.le-intro-facts strong {
  display: block;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  margin-top: auto;
}

/* PHOTO */

.le-intro-media {
  position: relative;
  min-width: 0;
  padding: 0 23px 23px 0;
}

.le-intro-media::before {
  content: "";
  position: absolute;
  inset: 24px 0 0 24px;
  border: 1px solid rgba(230,180,80,.36);
  pointer-events: none;
}

.le-photo {
  margin: 0;
  position: relative;
  overflow: hidden;
  background: #25252a;
}

.le-photo-main {
  height: clamp(350px,36vw,505px);
}

.le-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .6s ease;
}

.le-photo:hover img {
  transform: scale(1.035);
}

.le-photo-main::after {
  content: "";
  position: absolute;
  inset: 48% 0 0;
  background: linear-gradient(
    transparent,
    rgba(0,0,0,.85)
  );
  pointer-events: none;
}

.le-photo-mark {
  position: absolute;
  right: 0;
  top: 24px;
  z-index: 2;
  width: 90px;
  height: 90px;
  display: flex;
  flex-direction: column;
  gap: 9px;
  justify-content: center;
  align-items: center;
  color: #111;
  background: var(--le-gold);
  transform: translateX(15px) rotate(6deg);
  box-shadow: 0 15px 30px rgba(0,0,0,.18);
}

.le-photo-mark i {
  font-size: 25px;
}

.le-photo-mark span {
  font-weight: 700;
  font-size: 12px;
  letter-spacing: .16em;
}

.le-photo-bottom {
  position: absolute;
  z-index: 2;
  left: 25px;
  right: 40px;
  bottom: 47px;
}

.le-photo-bottom span {
  display: block;
  color: var(--le-gold);
  font-size: 10px;
  letter-spacing: .15em;
  margin-bottom: 9px;
}

.le-photo-bottom strong {
  color: #fff;
  font: 500 clamp(20px,2.2vw,29px)/1.2
    "Montserrat",sans-serif;
}

/* CALENDAR INTRO */

.le-event-header {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: end;
  gap: 24px;
  margin-bottom: 25px;
}

.le-event-header h3,
.le-venue h3,
.le-details h3 {
  font-size: clamp(27px,3vw,42px);
  line-height: 1.2;
  margin-bottom: 14px;
}

.le-event-header p {
  max-width: 720px;
  color: rgba(255,255,255,.6);
  font-size: 14px;
  margin: 0;
}

.le-event-stamp {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 6px;
  padding-left: 24px;
  border-left: 2px solid var(--le-gold);
  white-space: nowrap;
}

.le-event-stamp span {
  font-size: 9px;
  color: rgba(255,255,255,.47);
  letter-spacing: .1em;
}

.le-event-stamp strong {
  font-size: 16px;
  color: var(--le-gold);
}

/* MONTH SELECTOR */

.le-calendar-toolbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px;
  margin-bottom: 15px;
}

.le-calendar-tabs {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
}

.le-month {
  padding: 11px 20px;
  border: 1px solid rgba(255,255,255,.14);
  background: #232328;
  color: rgba(255,255,255,.74);
  cursor: pointer;
  font: 500 11px "Montserrat",sans-serif;
  transition: background .2s,border-color .2s;
}

.le-month:hover,
.le-month.is-active {
  color: var(--le-gold);
  background: rgba(230,180,80,.09);
  border-color: var(--le-gold);
}

.le-month:focus-visible,
.le-section a:focus-visible {
  outline: 2px solid var(--le-gold);
  outline-offset: 3px;
}

.le-calendar-meta {
  display: flex;
  align-items: center;
  gap: 10px;
  color: rgba(255,255,255,.58);
  font-size: 11px;
}

.le-calendar-meta i {
  color: var(--le-gold);
}

/* EVENT GRID / UNIFORM CARDS */

.le-event-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 12px;
  align-items: stretch;
  grid-auto-flow: row;
}

.le-event {
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: 100%;
  padding: 25px;
  background: #222227;
  border: 1px solid rgba(255,255,255,.08);
  border-top: 2px solid rgba(230,180,80,.55);
  transition: border-color .25s,background .25s;
}

.le-event:hover {
  background: #29282d;
  border-color: rgba(230,180,80,.45);
}

.le-event[hidden] {
  display: none !important;
}

.le-event-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 15px;
  margin-bottom: 26px;
}

.le-event-date {
  display: flex;
  align-items: baseline;
  gap: 8px;
}

.le-event-date strong {
  color: var(--le-gold);
  font: 500 39px/1 "Montserrat",sans-serif;
  letter-spacing: -.06em;
}

.le-event-date span {
  color: rgba(255,255,255,.52);
  font-size: 11px;
  letter-spacing: .12em;
}

.le-event-badge {
  padding: 8px 9px;
  border: 1px solid rgba(230,180,80,.2);
  color: var(--le-gold);
  font-size: 9px;
  letter-spacing: .1em;
}

.le-event-content {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
}

.le-event-category {
  display: block;
  color: var(--le-gold);
  font-size: 10px;
  letter-spacing: .05em;
  margin-bottom: 10px;
}

.le-event h4 {
  font-size: 22px;
  line-height: 1.22;
  margin-bottom: 14px;
}

.le-event-content > p {
  color: rgba(255,255,255,.61);
  font-size: 12px;
  margin: 0;
}

.le-event-bottom {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 25px;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,.1);
}

.le-event-bottom > div {
  display: flex;
  align-items: center;
  gap: 8px;
  color: rgba(255,255,255,.77);
  font-size: 11px;
}

.le-event-bottom i {
  color: var(--le-gold);
}

.le-program-note {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 18px 20px;
  margin-top: 13px;
  background: rgba(230,180,80,.045);
  border-left: 2px solid var(--le-gold);
}

.le-program-note i {
  color: var(--le-gold);
  margin-top: 4px;
}

.le-program-note p {
  margin: 0;
  color: rgba(255,255,255,.56);
  font-size: 12px;
}

/* VENUE */

.le-venue {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,.85fr);
  gap: 38px;
  align-items: start;
  margin-top: 95px;
  padding: 35px;
  background: #1c1c21;
  border: 1px solid rgba(255,255,255,.08);
}

.le-venue-copy > p {
  color: rgba(255,255,255,.62);
  font-size: 13px;
  margin-bottom: 15px;
}

.le-venue-copy > p:last-child {
  margin-bottom: 0;
}

.le-venue-specs {
  display: grid;
  gap: 9px;
}

.le-venue-spec {
  position: relative;
  padding: 18px 46px 18px 19px;
  background: #101014;
  border-left: 2px solid rgba(230,180,80,.48);
}

.le-venue-spec > span {
  display: block;
  color: rgba(255,255,255,.44);
  font-size: 9px;
  letter-spacing: .1em;
  margin-bottom: 8px;
}

.le-venue-spec > strong {
  display: block;
  font-size: 14px;
  line-height: 1.4;
  font-weight: 500;
  color: #fff;
}

.le-venue-spec > i {
  position: absolute;
  top: 21px;
  right: 18px;
  color: var(--le-gold);
  font-size: 17px;
}

/* VISITOR DETAILS */

.le-details {
  margin-top: 95px;
}

.le-details-heading {
  max-width: 800px;
  margin-bottom: 27px;
}

.le-details-heading > p {
  color: rgba(255,255,255,.57);
  font-size: 14px;
  margin: 0;
}

.le-details-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
  align-items: stretch;
}

.le-detail {
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: 100%;
  padding: 25px 22px;
  background: #222227;
  border-top: 2px solid rgba(230,180,80,.42);
}

.le-detail-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(230,180,80,.25);
  color: var(--le-gold);
  font-size: 19px;
  margin-bottom: 24px;
}

.le-detail h4 {
  font-size: 17px;
  line-height: 1.35;
  margin-bottom: 13px;
}

.le-detail p {
  margin: 0;
  color: rgba(255,255,255,.6);
  font-size: 12px;
}

/* FOOTER */

.le-final {
  display: grid;
  grid-template-columns: 40px minmax(0,1fr) auto;
  align-items: center;
  gap: 22px;
  margin-top: 25px;
  padding: 26px;
  background: rgba(230,180,80,.06);
  border-left: 2px solid var(--le-gold);
}

.le-final-mark {
  color: var(--le-gold);
  font-size: 24px;
}

.le-final-copy > span {
  display: block;
  color: var(--le-gold);
  font-size: 9px;
  letter-spacing: .13em;
  margin-bottom: 8px;
}

.le-final h3 {
  font-size: 19px;
  margin-bottom: 9px;
}

.le-final p {
  margin: 0;
  color: rgba(255,255,255,.59);
  font-size: 12px;
}

.le-final-link {
  color: var(--le-gold);
  white-space: nowrap;
  font-size: 11px;
  text-transform: uppercase;
}

.le-final-link i { margin-left: 9px; }

/* RESPONSIVE */

@media (max-width: 1100px) {
  .le-event-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .le-details-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .le-final {
    grid-template-columns: 40px 1fr;
  }

  .le-final-link { grid-column: 2; }
}

@media (max-width: 850px) {
  .le-intro,
  .le-venue {
    grid-template-columns: 1fr;
  }

  .le-intro-media {
    max-width: 600px;
    width: 100%;
  }

  .le-photo-main { height: 380px; }

  .le-venue { gap: 24px; }
}

@media (max-width: 600px) {
  .le-section.ptb { padding: 65px 0; }

  .le-intro { margin-bottom: 65px; }

  .le-intro h2 { font-size: 35px; }

  .le-intro-copy > .le-lead { font-size: 15px; }

  .le-intro-facts { gap: 5px; }

  .le-intro-facts > div { padding: 13px 9px; }

  .le-intro-facts strong { font-size: 10px; }

  .le-photo-main { height: 300px; }

  .le-photo-mark {
    width: 70px;
    height: 70px;
  }

  .le-photo-mark i { font-size: 20px; }

  .le-photo-bottom {
    left: 18px;
    bottom: 40px;
  }

  .le-event-header {
    grid-template-columns: 1fr;
  }

  .le-event-stamp {
    align-items: flex-start;
  }

  .le-event-grid,
  .le-details-grid {
    grid-template-columns: 1fr;
  }

  .le-event { padding: 22px; }

  .le-venue,
  .le-details {
    margin-top: 65px;
  }

  .le-venue { padding: 23px; }

  .le-final {
    grid-template-columns: 1fr;
    padding: 22px;
  }

  .le-final-link { grid-column: 1; }
}

@media (prefers-reduced-motion: reduce) {
  .le-section *,
  .le-section *::before,
  .le-section *::after {
    animation: none !important;
    transition: none !important;
  }
}

/* ==========================================
   VISIT INFORMATION — LOCATION & HOURS
========================================== */

.vl-section {
  --vl-gold: #e6b450;
  --vl-dark: #111115;
  --vl-panel: #222227;
  --vl-border: rgba(255,255,255,.09);
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: #1b1b20;
}

.vl-section *,
.vl-section *::before,
.vl-section *::after {
  box-sizing: border-box;
}

.vl-section::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse at 100% 0%,
      rgba(230,180,80,.08),transparent 32%),
    repeating-linear-gradient(90deg,
      transparent 0 calc(25% - 1px),
      rgba(255,255,255,.012) 25%);
}

.vl-section h2,
.vl-section h3,
.vl-section h4 {
  text-transform: none;
  letter-spacing: -.035em;
}

.vl-section p {
  line-height: 1.72;
}

.vl-label {
  display: block;
  color: var(--vl-gold);
  font-size: 10px;
  letter-spacing: .15em;
  line-height: 1.5;
  text-transform: uppercase;
  margin-bottom: 17px;
}

.vl-label i {
  margin-right: 8px;
}

.vl-section-head {
  max-width: 820px;
  margin-bottom: 27px;
}

.vl-section-head h3,
.vl-parking h3,
.vl-access h3,
.vl-contact h3 {
  font-size: clamp(27px,3vw,42px);
  line-height: 1.18;
  margin-bottom: 15px;
}

.vl-section-head > p {
  color: rgba(255,255,255,.6);
  font-size: 14px;
  margin: 0;
}

/* HERO */

.vl-hero {
  display: grid;
  grid-template-columns: minmax(0,1.13fr) minmax(0,.87fr);
  gap: clamp(28px,4vw,60px);
  align-items: center;
  margin-bottom: 83px;
}

.vl-hero-copy {
  min-width: 0;
}

.vl-hero h2 {
  font-size: clamp(37px,4.3vw,65px);
  line-height: 1.08;
  margin-bottom: 24px;
}

.vl-hero-copy > p {
  color: rgba(255,255,255,.63);
  font-size: 14px;
  margin-bottom: 16px;
}

.vl-hero-copy > .vl-lead {
  color: rgba(255,255,255,.88);
  font-size: 17px;
}

.vl-address {
  display: grid;
  grid-template-columns: 38px minmax(0,1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 20px;
  margin-top: 24px;
  background: #101014;
  border-left: 2px solid var(--vl-gold);
}

.vl-address-icon {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(230,180,80,.3);
  color: var(--vl-gold);
  font-size: 18px;
}

.vl-address-copy {
  min-width: 0;
}

.vl-address-copy > span {
  display: block;
  margin-bottom: 8px;
  color: rgba(255,255,255,.45);
  font-size: 10px;
}

.vl-address-copy > strong {
  color: #fff;
  font-size: 13px;
  line-height: 1.6;
  font-weight: 600;
}

.vl-copy-address {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 11px 12px;
  background: rgba(230,180,80,.09);
  border: 1px solid rgba(230,180,80,.3);
  color: var(--vl-gold);
  font-size: 10px;
  cursor: pointer;
  white-space: nowrap;
  transition: background .2s;
}

.vl-copy-address:hover {
  background: rgba(230,180,80,.19);
}

.vl-copy-address:focus-visible {
  outline: 2px solid var(--vl-gold);
  outline-offset: 3px;
}

.vl-hero-details {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
  margin-top: 11px;
  align-items: stretch;
}

.vl-hero-details > div {
  display: grid;
  grid-template-columns: 22px minmax(0,1fr);
  gap: 5px 10px;
  align-content: center;
  min-width: 0;
  height: 100%;
  padding: 16px;
  background: #26262b;
}

.vl-hero-details i {
  color: var(--vl-gold);
  grid-row: 1 / 3;
  margin-top: 3px;
}

.vl-hero-details span {
  color: rgba(255,255,255,.47);
  font-size: 10px;
}

.vl-hero-details strong {
  font-size: 13px;
  color: #fff;
}

/* SINGLE PHOTO */

.vl-hero-visual {
  position: relative;
  min-width: 0;
  padding: 0 23px 24px 0;
}

.vl-hero-visual::before {
  content: "";
  position: absolute;
  inset: 24px 0 0 24px;
  border: 1px solid rgba(230,180,80,.35);
  pointer-events: none;
}

.vl-hero-photo {
  position: relative;
  margin: 0;
  height: clamp(350px,36vw,505px);
  overflow: hidden;
  background: #25252a;
}

.vl-hero-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .6s ease;
}

.vl-hero-photo:hover img {
  transform: scale(1.035);
}

.vl-hero-photo::after {
  content: "";
  position: absolute;
  inset: 47% 0 0;
  background: linear-gradient(transparent,rgba(0,0,0,.83));
}

.vl-photo-panel {
  position: absolute;
  z-index: 2;
  left: 25px;
  bottom: 48px;
  right: 40px;
}

.vl-photo-panel > span {
  display: block;
  color: var(--vl-gold);
  font-size: 9px;
  letter-spacing: .14em;
  margin-bottom: 9px;
}

.vl-photo-panel > strong {
  display: block;
  color: #fff;
  font: 500 clamp(20px,2.3vw,31px)/1.2
    "Montserrat",sans-serif;
}

.vl-photo-panel > small {
  display: block;
  margin-top: 11px;
  color: rgba(255,255,255,.72);
  font-size: 10px;
}

.vl-photo-coordinate {
  position: absolute;
  z-index: 2;
  top: 20px;
  right: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
  width: 80px;
  padding: 17px 10px;
  color: #131313;
  background: var(--vl-gold);
}

.vl-photo-coordinate span {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .08em;
}

.vl-photo-coordinate i {
  font-size: 21px;
}

/* HOURS */

.vl-hours,
.vl-services,
.vl-transport,
.vl-access {
  margin-top: 90px;
}

.vl-hours-board {
  background: #101014;
  border: 1px solid rgba(230,180,80,.18);
}

.vl-hours-title {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  padding: 21px 24px;
  border-bottom: 1px solid rgba(255,255,255,.1);
}

.vl-hours-title > i {
  color: var(--vl-gold);
  font-size: 19px;
}

.vl-hours-title > span {
  color: #fff;
  font-size: 13px;
}

.vl-hours-title > small {
  color: rgba(255,255,255,.42);
  font-size: 10px;
  margin-left: auto;
}

.vl-hours-days {
  display: grid;
  grid-template-columns: repeat(7,minmax(0,1fr));
  gap: 1px;
  padding: 14px;
  background: #101014;
}

.vl-day {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  min-width: 0;
  padding: 22px 7px;
  background: #222227;
  border-top: 2px solid transparent;
  transition: background .2s,border-color .2s;
}

.vl-day-weekend {
  background: #29272a;
  border-color: rgba(230,180,80,.65);
}

.vl-day.vl-is-today {
  border-color: var(--vl-gold);
  background: rgba(230,180,80,.14);
}

.vl-day > span {
  color: rgba(255,255,255,.55);
  font-size: 11px;
  text-transform: uppercase;
}

.vl-day > strong {
  color: #fff;
  font: 500 clamp(14px,1.6vw,19px)/1.2
    "Montserrat",sans-serif;
}

.vl-day > small {
  color: var(--vl-gold);
  font-size: 12px;
}

.vl-hours-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 13px 27px;
  padding: 18px 22px;
  border-top: 1px solid rgba(255,255,255,.08);
}

.vl-hours-legend > div {
  display: flex;
  align-items: center;
  gap: 9px;
  color: rgba(255,255,255,.6);
  font-size: 11px;
}

.vl-legend-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #67676b;
}

.vl-legend-weekend {
  background: var(--vl-gold);
}

/* SERVICE HOURS */

.vl-services-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 12px;
  align-items: stretch;
}

.vl-service {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-width: 0;
  padding: 26px;
  background: #25252a;
  border-top: 2px solid rgba(230,180,80,.47);
}

.vl-service-top {
  display: flex;
  align-items: center;
  gap: 11px;
  color: var(--vl-gold);
  font-size: 9px;
  letter-spacing: .12em;
  margin-bottom: 21px;
}

.vl-service-top i {
  font-size: 20px;
}

.vl-service h4 {
  font-size: 19px;
  line-height: 1.3;
  margin-bottom: 19px;
}

.vl-service-time {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 12px;
  align-items: baseline;
  padding: 13px 0;
  border-top: 1px solid rgba(255,255,255,.08);
}

.vl-service-time span {
  color: rgba(255,255,255,.55);
  font-size: 11px;
}

.vl-service-time strong {
  color: #fff;
  font-size: 12px;
  white-space: nowrap;
}

.vl-service > p {
  margin: auto 0 0;
  padding-top: 22px;
  color: rgba(255,255,255,.53);
  font-size: 12px;
}

/* TRANSPORT */

.vl-transport-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 12px;
  align-items: stretch;
}

.vl-transport-item {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-width: 0;
  padding: 27px 24px;
  background: #101014;
  border: 1px solid var(--vl-border);
}

.vl-transport-number {
  align-self: flex-end;
  color: rgba(255,255,255,.2);
  font-size: 24px;
}

.vl-transport-icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border: 1px solid rgba(230,180,80,.3);
  color: var(--vl-gold);
  font-size: 21px;
  margin: -13px 0 22px;
}

.vl-transport-item h4 {
  font-size: 20px;
  margin-bottom: 13px;
}

.vl-transport-item > p {
  color: rgba(255,255,255,.6);
  font-size: 12px;
  margin: 0 0 22px;
}

.vl-transport-foot {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin-top: auto;
  padding-top: 16px;
  border-top: 1px solid rgba(255,255,255,.1);
  color: var(--vl-gold);
  font-size: 10px;
  line-height: 1.5;
}

.vl-transport-foot i {
  margin-top: 2px;
}

/* PARKING */

.vl-parking {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(270px,.7fr);
  gap: 30px;
  align-items: start;
  margin-top: 90px;
  padding: 35px;
  background: #101014;
  border: 1px solid rgba(255,255,255,.08);
}

.vl-parking-copy > p {
  color: rgba(255,255,255,.62);
  font-size: 14px;
  margin: 0 0 16px;
}

.vl-parking-copy > p:last-child {
  margin-bottom: 0;
}

.vl-parking-aside {
  position: relative;
  overflow: hidden;
  padding: 26px;
  background:
    linear-gradient(145deg,rgba(230,180,80,.1),transparent 73%),
    #242429;
  border: 1px solid rgba(230,180,80,.18);
}

.vl-parking-symbol {
  color: var(--vl-gold);
  font-size: 29px;
  margin-bottom: 23px;
}

.vl-parking-stat > span {
  color: rgba(255,255,255,.58);
  font-size: 9px;
  letter-spacing: .12em;
}

.vl-parking-stat > strong {
  display: block;
  color: var(--vl-gold);
  font: 500 clamp(64px,8vw,105px)/1.12
    "Montserrat",sans-serif;
  letter-spacing: -.08em;
  margin: 10px 0;
}

.vl-parking-stat > small {
  color: rgba(255,255,255,.65);
  font-size: 11px;
}

.vl-parking-caution {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  padding-top: 18px;
  margin-top: 23px;
  border-top: 1px solid rgba(255,255,255,.11);
}

.vl-parking-caution i {
  color: var(--vl-gold);
  margin-top: 3px;
}

.vl-parking-caution p {
  color: rgba(255,255,255,.56);
  font-size: 11px;
  margin: 0;
}

/* ACCESSIBILITY */

.vl-access-heading {
  max-width: 830px;
  margin-bottom: 26px;
}

.vl-access-heading > p {
  color: rgba(255,255,255,.6);
  font-size: 14px;
  margin: 0;
}

.vl-access-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
  align-items: stretch;
}

.vl-access-item {
  display: grid;
  grid-template-columns: 44px minmax(0,1fr);
  gap: 16px;
  align-content: start;
  min-width: 0;
  height: 100%;
  padding: 25px;
  background: #25252a;
  border-left: 2px solid rgba(230,180,80,.46);
}

.vl-access-item > i {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  color: var(--vl-gold);
  font-size: 19px;
  border: 1px solid rgba(230,180,80,.23);
}

.vl-access-item h4 {
  font-size: 17px;
  margin-bottom: 10px;
}

.vl-access-item p {
  color: rgba(255,255,255,.58);
  font-size: 12px;
  margin: 0;
}

/* CONTACT */

.vl-contact {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  align-items: start;
  margin-top: 90px;
  padding: 34px;
  background: #101014;
  border: 1px solid rgba(230,180,80,.18);
}

.vl-contact-main > p {
  color: rgba(255,255,255,.62);
  font-size: 14px;
  margin: 0 0 25px;
}

.vl-contact-phone {
  display: flex;
  align-items: center;
  gap: 17px;
  padding: 20px;
  background: rgba(230,180,80,.065);
  border-left: 2px solid var(--vl-gold);
}

.vl-contact-phone > i {
  color: var(--vl-gold);
  font-size: 24px;
}

.vl-contact-phone span {
  display: block;
  color: rgba(255,255,255,.45);
  font-size: 9px;
  letter-spacing: .11em;
  margin-bottom: 6px;
}

.vl-contact-phone strong {
  font: 500 clamp(20px,2.4vw,29px)/1.2
    "Montserrat",sans-serif;
  color: #fff;
}

.vl-contact-details {
  display: grid;
  gap: 1px;
  background: rgba(255,255,255,.08);
}

.vl-contact-details > div {
  padding: 17px 20px;
  background: #222227;
}

.vl-contact-details span {
  display: block;
  margin-bottom: 8px;
  color: var(--vl-gold);
  font-size: 9px;
  letter-spacing: .12em;
}

.vl-contact-details p {
  margin: 0;
  color: rgba(255,255,255,.78);
  font-size: 12px;
  overflow-wrap: anywhere;
}

/* FINAL */

.vl-final {
  display: grid;
  grid-template-columns: 40px minmax(0,1fr) auto;
  align-items: center;
  gap: 20px;
  padding: 26px;
  margin-top: 23px;
  background: rgba(230,180,80,.06);
  border-left: 2px solid var(--vl-gold);
}

.vl-final-icon {
  color: var(--vl-gold);
  font-size: 22px;
}

.vl-final h3 {
  font-size: 18px;
  margin-bottom: 9px;
}

.vl-final p {
  margin: 0;
  color: rgba(255,255,255,.61);
  font-size: 12px;
}

.vl-final-link {
  color: var(--vl-gold);
  font-size: 11px;
  text-transform: uppercase;
  white-space: nowrap;
}

.vl-final-link i {
  margin-left: 8px;
}

/* RESPONSIVE */

@media(max-width:1100px) {
  .vl-hero {
    gap: 28px;
  }

  .vl-address {
    grid-template-columns: 38px minmax(0,1fr);
  }

  .vl-copy-address {
    grid-column: 2;
    justify-self: start;
  }

  .vl-services-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .vl-final {
    grid-template-columns: 40px 1fr;
  }

  .vl-final-link {
    grid-column: 2;
  }
}

@media(max-width:850px) {
  .vl-hero,
  .vl-parking,
  .vl-contact {
    grid-template-columns: 1fr;
  }

  .vl-hero-visual {
    width: 100%;
    max-width: 630px;
  }

  .vl-hero-photo {
    height: 420px;
  }

  .vl-hours-days {
    grid-template-columns: repeat(4,minmax(0,1fr));
  }

  .vl-transport-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}

@media(max-width:600px) {
  .vl-section.ptb {
    padding: 65px 0;
  }

  .vl-hero {
    margin-bottom: 65px;
  }

  .vl-hero h2 {
    font-size: 35px;
  }

  .vl-hero-copy > .vl-lead {
    font-size: 15px;
  }

  .vl-hero-photo {
    height: 315px;
  }

  .vl-photo-panel {
    left: 17px;
    right: 34px;
    bottom: 38px;
  }

  .vl-photo-coordinate {
    width: 64px;
  }

  .vl-hours,
  .vl-services,
  .vl-transport,
  .vl-parking,
  .vl-access,
  .vl-contact {
    margin-top: 65px;
  }

  .vl-hours-days {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 6px;
    padding: 10px;
  }

  .vl-day {
    padding: 15px;
    gap: 8px;
  }

  .vl-hours-title > small {
    margin-left: 0;
  }

  .vl-services-grid,
  .vl-transport-grid,
  .vl-access-grid {
    grid-template-columns: 1fr;
  }

  .vl-service,
  .vl-transport-item,
  .vl-parking-aside,
  .vl-access-item {
    padding: 22px;
  }

  .vl-parking,
  .vl-contact {
    padding: 23px;
  }

  .vl-contact-phone {
    padding: 16px;
  }

  .vl-final {
    grid-template-columns: 1fr;
    padding: 22px;
  }

  .vl-final-link {
    grid-column: 1;
  }
}

@media(max-width:390px) {
  .vl-hero-details {
    grid-template-columns: 1fr;
  }

  .vl-hours-days {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .vl-service-time {
    grid-template-columns: 1fr;
    gap: 5px;
  }
}

@media(prefers-reduced-motion:reduce) {
  .vl-section *,
  .vl-section *::before,
  .vl-section *::after {
    transition: none !important;
    animation: none !important;
  }
}


/* ==========================================
   FAQ — QUICK REFERENCE DESIGN
========================================== */

.fq-section {
  --fq-gold: #e6b450;
  --fq-line: rgba(255,255,255,.09);
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: #111115;
}

.fq-section *,
.fq-section *::before,
.fq-section *::after {
  box-sizing: border-box;
}

.fq-section::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(ellipse at 90% 0%,
      rgba(230,180,80,.065), transparent 35%);
}

.fq-section h2,
.fq-section h3,
.fq-section h4 {
  text-transform: none;
  letter-spacing: -.035em;
}

.fq-section p {
  line-height: 1.7;
}

.fq-eyebrow {
  display: block;
  margin-bottom: 17px;
  color: var(--fq-gold);
  font-size: 10px;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.fq-eyebrow i {
  margin-right: 9px;
}

/* HEADER */

.fq-header {
  display: grid;
  grid-template-columns: minmax(0,1fr) 190px;
  gap: 30px;
  align-items: center;
  margin-bottom: 35px;
}

.fq-heading h2 {
  font-size: clamp(37px,4.3vw,62px);
  line-height: 1.1;
  margin-bottom: 23px;
}

.fq-heading > p {
  color: rgba(255,255,255,.63);
  font-size: 15px;
  max-width: 740px;
  margin: 0;
}

.fq-header-aside {
  position: relative;
  overflow: hidden;
  padding: 23px;
  background: #212126;
  border: 1px solid rgba(230,180,80,.24);
}

.fq-header-aside > span {
  position: relative;
  z-index: 1;
  color: var(--fq-gold);
  font-size: 9px;
  letter-spacing: .12em;
}

.fq-header-aside > strong {
  position: relative;
  z-index: 1;
  display: block;
  color: #fff;
  font: 500 58px/1.2 "Montserrat",sans-serif;
  margin: 10px 0;
}

.fq-header-aside > small {
  position: relative;
  z-index: 1;
  color: rgba(255,255,255,.59);
  font-size: 11px;
}

.fq-aside-mark {
  position: absolute;
  right: -12px;
  bottom: -43px;
  color: rgba(230,180,80,.065);
  font: 700 180px/1 "Montserrat",sans-serif;
  pointer-events: none;
}

/* FILTERS */

.fq-categories {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding-bottom: 24px;
  border-bottom: 1px solid rgba(230,180,80,.24);
  margin-bottom: 28px;
}

.fq-category {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 13px 17px;
  background: #222227;
  border: 1px solid var(--fq-line);
  color: rgba(255,255,255,.73);
  font: 500 11px "Montserrat",sans-serif;
  cursor: pointer;
  transition: border-color .2s,background .2s;
}

.fq-category i {
  color: var(--fq-gold);
}

.fq-category:hover,
.fq-category.is-active {
  background: rgba(230,180,80,.09);
  border-color: var(--fq-gold);
  color: #fff;
}

.fq-category:focus-visible,
.fq-section a:focus-visible,
.fq-item summary:focus-visible {
  outline: 2px solid var(--fq-gold);
  outline-offset: 3px;
}

/* CONTENT GRID */

.fq-content {
  columns: 2 360px;
  column-gap: 17px;
}

.fq-group {
  display: inline-block;
  width: 100%;
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
  margin: 0 0 17px;
  padding: 25px;
  vertical-align: top;
  background: #1d1d22;
  border: 1px solid rgba(255,255,255,.08);
}

.fq-group[hidden] {
  display: none !important;
}

.fq-group-heading {
  display: flex;
  align-items: center;
  gap: 13px;
  padding-bottom: 17px;
  margin-bottom: 4px;
  border-bottom: 1px solid rgba(230,180,80,.25);
}

.fq-group-heading > span {
  color: var(--fq-gold);
  font-size: 11px;
}

.fq-group-heading h3 {
  font-size: 20px;
  line-height: 1.3;
  margin: 0;
}

.fq-group-heading > i {
  margin-left: auto;
  color: var(--fq-gold);
  font-size: 19px;
}

/* QUESTIONS */

.fq-item {
  border-bottom: 1px solid var(--fq-line);
}

.fq-item:last-child {
  border-bottom: none;
}

.fq-item summary {
  display: grid;
  grid-template-columns: minmax(0,1fr) 16px;
  gap: 12px;
  align-items: center;
  padding: 17px 0;
  list-style: none;
  cursor: pointer;
}

.fq-item summary::-webkit-details-marker {
  display: none;
}

.fq-item summary > span {
  color: rgba(255,255,255,.88);
  font-size: 13px;
  line-height: 1.5;
}

.fq-item summary > i {
  color: var(--fq-gold);
  font-size: 12px;
  transition: transform .22s;
}

.fq-item[open] summary > i {
  transform: rotate(45deg);
}

.fq-item[open] summary > span {
  color: var(--fq-gold);
}

/* ANSWERS */

.fq-answer {
  padding: 0 19px 18px 0;
}

.fq-answer p {
  color: rgba(255,255,255,.62);
  font-size: 12px;
  margin: 0 0 12px;
}

.fq-answer a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--fq-gold);
  font-size: 11px;
  text-decoration: none;
}

.fq-answer a i {
  transition: transform .2s;
}

.fq-answer a:hover i {
  transform: translateX(4px);
}

/* BOTTOM */

.fq-bottom {
  display: grid;
  grid-template-columns: 39px minmax(0,1fr) auto;
  gap: 20px;
  align-items: center;
  margin-top: 20px;
  padding: 25px;
  background: rgba(230,180,80,.055);
  border-left: 2px solid var(--fq-gold);
}

.fq-bottom-icon {
  color: var(--fq-gold);
  font-size: 22px;
}

.fq-bottom h3 {
  font-size: 18px;
  margin-bottom: 8px;
}

.fq-bottom p {
  color: rgba(255,255,255,.6);
  font-size: 12px;
  margin: 0;
}

.fq-bottom-link {
  color: var(--fq-gold);
  white-space: nowrap;
  font-size: 11px;
  text-decoration: none;
  text-transform: uppercase;
}

.fq-bottom-link i {
  margin-left: 8px;
}

/* RESPONSIVE */

@media (max-width: 900px) {
  .fq-content {
    columns: 2 280px;
  }

  .fq-bottom {
    grid-template-columns: 39px 1fr;
  }

  .fq-bottom-link {
    grid-column: 2;
  }
}

@media (max-width: 650px) {
  .fq-section.ptb {
    padding: 65px 0;
  }

  .fq-header {
    grid-template-columns: 1fr;
    gap: 21px;
  }

  .fq-heading h2 {
    font-size: 35px;
  }

  .fq-header-aside {
    max-width: 230px;
  }

  .fq-content {
    columns: 1;
  }

  .fq-group {
    display: block;
    padding: 22px 19px;
  }

  .fq-category {
    padding: 11px 13px;
    font-size: 10px;
  }

  .fq-bottom {
    grid-template-columns: 1fr;
    padding: 22px;
  }

  .fq-bottom-link {
    grid-column: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .fq-section *,
  .fq-section *::before,
  .fq-section *::after {
    animation: none !important;
    transition: none !important;
  }
}

/* ===== Maple Ridge Casino: unified header, footer & legal pages ===== */
.header #logo img {width:128px!important;max-width:128px!important;height:auto!important;object-fit:contain;}
.footer .footer-logo img {width:142px;max-width:142px!important;height:auto!important;object-fit:contain;}
.footer .footer-description{font-size:13px;line-height:1.7;color:rgba(255,255,255,.73)}
.footer .footer-legal-links{margin-top:20px}
.legal-hero{padding:94px 0 67px;background:radial-gradient(ellipse at 88% 12%,rgba(230,180,80,.13),transparent 48%),#18181d;border-bottom:1px solid rgba(230,180,80,.23)}
.legal-hero-inner{max-width:1080px}
.legal-kicker{display:block;color:#e6b450;font-size:11px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:22px}
.legal-hero h1{font:600 clamp(37px,5vw,66px)/1.12 Montserrat,sans-serif;letter-spacing:-.035em;color:#fff;margin:0 0 22px;text-transform:none}
.legal-hero p{max-width:780px;color:rgba(255,255,255,.73);font-size:16px;line-height:1.7;margin:0 0 22px}
.legal-meta{display:flex;gap:16px 30px;flex-wrap:wrap;color:#d6ba81;font-size:12px}
.legal-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:clamp(25px,4vw,65px);align-items:start;padding-top:58px;padding-bottom:96px}
.legal-toc{position:sticky;top:115px;padding:24px;background:#1e1e24;border-top:2px solid #e6b450;max-height:calc(100vh - 130px);overflow:auto}
.legal-toc h2{font:600 17px Montserrat,sans-serif;color:#fff;margin:0 0 18px;text-transform:none}
.legal-toc a{display:block;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.07);font-size:12px;line-height:1.5;color:rgba(255,255,255,.68);text-decoration:none}
.legal-toc a:hover{color:#e6b450}
.legal-content{min-width:0}
.legal-content .legal-section{padding:24px 0 29px;border-bottom:1px solid rgba(255,255,255,.12)}
.legal-content .legal-section:first-of-type{padding-top:8px}
.legal-content .legal-section h2{font:600 clamp(19px,2.2vw,27px)/1.35 Montserrat,sans-serif;color:#fff;letter-spacing:-.03em;text-transform:none;margin:0 0 18px}
.legal-content p{font-size:14px;color:rgba(255,255,255,.73);line-height:1.83;margin:0 0 16px;overflow-wrap:anywhere}
.legal-content p:last-child{margin-bottom:0}
.legal-callout{padding:24px 27px;background:rgba(230,180,80,.065);border-left:3px solid #e6b450;margin:0 0 15px}
.legal-callout strong{color:#e6b450;display:block;margin-bottom:9px;font-size:13px}
.legal-next{margin-top:40px;padding:28px;background:#202025}
.legal-next h2{font:600 19px Montserrat,sans-serif;color:#fff;margin:0 0 15px;text-transform:none}
.legal-next>div{display:flex;flex-wrap:wrap;gap:12px}
.legal-next a{display:inline-flex;align-items:center;gap:9px;padding:11px 14px;border:1px solid rgba(230,180,80,.28);color:#e6b450;text-decoration:none;font-size:12px}
.legal-next a:hover{background:rgba(230,180,80,.1)}
@media(max-width:990px){.header #logo img{width:108px!important;max-width:108px!important}.legal-layout{grid-template-columns:1fr}.legal-toc{position:static;max-height:none;display:flex;flex-wrap:wrap;gap:7px 15px}.legal-toc h2{flex-basis:100%}.legal-toc a{border:0}}
@media(max-width:560px){.legal-hero{padding:64px 0 43px}.legal-layout{padding-top:31px;padding-bottom:65px}.legal-toc{padding:18px}.legal-next{padding:20px}.header #logo img{width:100px!important;max-width:100px!important}}

/* ===== Cross-device refinement, October 2026 ===== */
html { max-width:100%; }
body { max-width:100%; overflow-x:clip; }
img, video, iframe, svg { max-width:100%; }
.header-content, .wrapper-header-content, .footer, .footer-grid { min-width:0; }
.header-content .btn { display:inline-flex; align-items:center; justify-content:center; text-align:center; min-height:44px; }
@media (max-width:1150px) {
  #navigation { width:min(320px, 88vw); }
}
@media (max-width:767px) {
  .container { padding-left:16px; padding-right:16px; }
  .footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .footer-col { min-width:0; overflow-wrap:anywhere; }
  .wrapper-header-content { min-height:100svh; padding:105px 16px 52px; }
  .header-content h1 { font-size:clamp(28px,7vw,42px); }
  .header-content p { max-width:100%!important; }
  .vl-hours-days { display:grid; grid-template-columns:repeat(7,minmax(88px,1fr)); gap:6px; overflow-x:auto; overscroll-behavior-x:contain; }
  .vl-day { min-width:88px; }
  .rc-compare-table-wrap { overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .rc-compare-table { min-width:650px; }
}
@media (max-width:480px) {
  .footer-grid { grid-template-columns:1fr; }
  .footer-bottom-inner { flex-direction:column; gap:8px; text-align:center; }
  .footer-col { width:100%; }
  .header-content .btn { max-width:100%; }
  .vl-copy-address { max-width:100%; white-space:normal; }
  .dn-menu-controls,.dwp-menu-controls,.fq-categories { max-width:100%; }
  .le-event-stamp { white-space:normal; }
}
