/*******************************************************
    Template Name    : Spice - Food & Resturant Responsive Landing Page Template
    Author           : Cute Themes
    Version          : 1.0
    Created          : 2024
    File Description : Main css file of the template
********************************************************/

/**************************************
    -- Css Table of Content
    01.Generale Css
    02.Preloader Section Css
    03.Navber Section Css
    04.Home Slider Section Css
    05.About Section Css
    06.Discount Menu Section Css
    07.Hire Section Css
    08.Menu Section Css
    09.Gallery Section Css
    10.Testimonial Section Css
    11.Team Section Css
    12.Faq Section Css
    13.Partner Logo Section Css
    14.Counter Section Css
    15.Blog Section Css
    16.Contact Section Css
    17.Footer Section Css
 *************************************/


/**************************************
 * 01. Generale Css
 **************************************/
*, *:before, *:after {
  box-sizing: inherit;
}

* {
  scroll-behavior: inherit !important;
}

html, body {
  height: auto;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  box-sizing: border-box;
}

body {
	background: #ffffff;
	color: #333;
	font-family: 'DM Sans', sans-serif;
	font-size: 15px;
	font-weight: normal;
	line-height: 30px;
	overflow-x: hidden;
	margin: 0 auto;
	padding: 0;
	letter-spacing: 0.5px;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0;
	font-family: 'DM Sans', sans-serif;
	font-weight: normal;
	color: #333;
	line-height: 1.5;
}
a {
	color: #ffbf12;
	text-decoration: none !important;
	-moz-transition: all 0.5s ease-in-out 0s;
	-ms-transition: all 0.5s ease-in-out 0s;
	-o-transition: all 0.5s ease-in-out 0s;
	-webkit-transition: all 0.5s ease-in-out 0s;
	transition: all 0.5s ease-in-out 0s;
}
img {
	max-width: 100%;
}
a:hover {
	color: #ffbf12;
	-moz-transition: all 0.4s ease-in-out 0s;
	-ms-transition: all 0.4s ease-in-out 0s;
	-o-transition: all 0.4s ease-in-out 0s;
	-webkit-transition: all 0.4s ease-in-out 0s;
	transition: all 0.4s ease-in-out 0s;
}
a:hover,
a:focus {
	color: #ffbf12;
	text-decoration: none;
}
p {
	padding: 0;
	margin: 0;
	font-size: 15px;
	color: #555;
	font-weight: 500;
	line-height: 30px;
	letter-spacing: 0.5px;
	font-family: 'DM Sans', sans-serif;
}

.z-index {
	z-index: 9;
}
.position-relative {
	position: relative!important;
}
.form-control:focus {
	box-shadow: none;
	outline: 0 none;
	border-bottom: 1px solid #ffbf12;
}
.btn:focus {
	outline: none !important;
	box-shadow: none;
}
button:focus {
	outline: 0 none;
	box-shadow: none;
}
.button:focus {
	outline: none;
	box-shadow: none;
}
.button {
	position: relative;
	z-index: 2;
	display: inline-block;
	padding: 10px 35px;
	text-align: center;
	font-size: 15px;
	text-transform: capitalize;
	letter-spacing: 0.7px;
	font-weight: 700;
	border: 2px solid #ffbf12;
	border-radius: 30px;
	color: #ffbf12;
	background: none;
	cursor: pointer;
	margin-top: 25px;
	overflow: hidden;
	transition: all .3s ease;
	-moz-transition: all .3s ease;
	-webkit-transition: all .3s ease;
	-ms-transition: all .3s ease;
	-o-transition: all .3s ease;
}
.button:hover {
	color: #fff;
}
.button:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	opacity: .5;
	background-color: #ffbf12;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	-webkit-transform: scaleY(0);
	-ms-transform: scaleY(0);
	transform: scaleY(0);
	-webkit-transform-origin: left top;
	-ms-transform-origin: left top;
	transform-origin: left top;
}
.button:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	background-color: #ffbf12;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	-webkit-transform: scaleY(0);
	-ms-transform: scaleY(0);
	transform: scaleY(0);
	-webkit-transform-origin: left top;
	-ms-transform-origin: left top;
	transform-origin: left top;
}
.button:hover:before {
	-webkit-transform: scaleY(1);
	-ms-transform: scaleY(1);
	transform: scaleY(1);
}
.button:hover:after {
	-webkit-transition-delay: 0.2s;
	-o-transition-delay: 0.2s;
	transition-delay: 0.2s;
	-webkit-transform: scaleY(1);
	-ms-transform: scaleY(1);
	transform: scaleY(1);
}
.button-two {
	position: relative;
	z-index: 2;
	display: inline-block;
	padding: 10px 35px;
	text-align: center;
	font-size: 15px;
	text-transform: capitalize;
	letter-spacing: 0.7px;
	font-weight: 700;
	border: 2px solid #ffffff;
	border-radius: 30px;
	color: #ffffff;
	background: none;
	cursor: pointer;
	margin-top: 25px;
	overflow: hidden;
	transition: all .3s ease;
	-moz-transition: all .3s ease;
	-webkit-transition: all .3s ease;
	-ms-transition: all .3s ease;
	-o-transition: all .3s ease;
}
.button-two:hover {
	color: #ffbf12;
}
.button-two:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	opacity: .5;
	background-color: #ffffff;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	-webkit-transform: scaleY(0);
	-ms-transform: scaleY(0);
	transform: scaleY(0);
	-webkit-transform-origin: left top;
	-ms-transform-origin: left top;
	transform-origin: left top;
}
.button-two:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	background-color: #ffffff;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	-webkit-transform: scaleY(0);
	-ms-transform: scaleY(0);
	transform: scaleY(0);
	-webkit-transform-origin: left top;
	-ms-transform-origin: left top;
	transform-origin: left top;
}
.button-two:hover:before {
	-webkit-transform: scaleY(1);
	-ms-transform: scaleY(1);
	transform: scaleY(1);
}
.button-two:hover:after {
	-webkit-transition-delay: 0.2s;
	-o-transition-delay: 0.2s;
	transition-delay: 0.2s;
	-webkit-transform: scaleY(1);
	-ms-transform: scaleY(1);
	transform: scaleY(1);
}

.pb-20 {
	padding-bottom: 20px;
}
.pb-30 {
	padding-bottom: 30px;
}
.pb-40 {
	padding-bottom: 40px;
}
.pb-50 {
	padding-bottom: 50px;
}
.pb-70 {
	padding-bottom: 70px;
}
.pb-80 {
	padding-bottom: 80px;
}

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

.pt-20 {
	padding-top: 20px;
}
.pt-30 {
	padding-top: 30px;
}
.pt-40 {
	padding-top: 40px;
}
.pt-50 {
	padding-top: 50px;
}
.pt-70 {
	padding-top: 70px;
}
.pt-80 {
	padding-top: 80px;
}
.pt-100 {
	padding-top: 100px;
}

.bg-dark {
	background-color: #060d20 !important;
}

.bg-grey {
	background-color: #f8f8f9;
}

.bg-gradient {
	background-color: transparent;
	background-image: radial-gradient(at center center, #ffffff 0%, #6abff3 100%);;
}

.bg-none {
	background: none !important;
}
.color-text {
	color: #ffbf12;
}
dl,
ol,
ul {
	padding: 0;
	margin: 0;
	list-style: none;
}
.mr-15 {
	margin-right: 15px;
}
.d-table {
	width: 100%;
	height: 100%;
}

.d-table-cell {
	vertical-align: middle;
}
.bg-fixed {
	background-attachment: fixed;
}
.bg-img {
	background-size: cover;
	background-repeat: no-repeat;
}
.section-padding {
	padding: 100px 0;
}
.section-title {
	text-align: center;
	margin-bottom: 70px;
}
.section-title h5,
.sub-title {
	color: #ffbf12;
	font-size: 25px;
	font-weight: 700;
	margin-bottom: 10px;
	letter-spacing: 1.3px;
	text-transform: uppercase;
	font-family: "Cookie", cursive;
}
.section-title h2 {
	color: #333;
	font-size: 40px;
	font-weight: 700;
	line-height: 1.3;
	text-transform: capitalize;
	font-family: 'Fondamento', cursive;
}
.display-table {
	width: 100%;
	height: 100%;
	display: table;
}
.table-cell {
	display: table-cell;
	vertical-align: middle;
}
.mr-0 {
	margin: 0;
}
.mr-top-50 {
	margin-top: 50px;
}
.back-to-top {
	position: fixed;
	z-index: 4;
	top: 0;
	right: 15px;
	color: #ffffff;
	width: 45px;
	height: 45px;
	line-height: 45px;
	text-align: center;
	cursor: pointer;
	background-color: #ffbf12;
	opacity: 0;
	visibility: hidden;
    border-radius: 5px;
    overflow: hidden;
	-webkit-transition: .9s;
	transition: .9s;
}
.back-to-top:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	background: #ffc518;
	opacity: 0;
	visibility: hidden;
	-webkit-transition: 0.5s;
	transition: 0.5s;
}
.back-to-top:hover:before,
.back-to-top:focus:before {
	opacity: 1;
	visibility: visible;
}
.back-to-top:hover,
.back-to-top:focus {
	color: #ffffff;
}
.back-to-top.active {
	top: 97%;
	-webkit-transform: translateY(-98%);
	transform: translateY(-98%);
	opacity: 1;
	visibility: visible;
}
.back-to-top i:last-child {
	opacity: 0;
	visibility: hidden;
	top: 60%;
}
.back-to-top:hover i:first-child,
.back-to-top:focus i:first-child {
	opacity: 0;
	top: 0;
	visibility: hidden;
}
.back-to-top:hover i:last-child,
.back-to-top:focus i:last-child {
	opacity: 1;
	visibility: visible;
	top: 50%;
}
.back-to-top i {
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	left: 0;
	right: 0;
	margin: 0 auto;
	-webkit-transition: 0.5s;
	transition: 0.5s;
	font-size: 25px;
}
.v-middle {
	position: absolute;
	width: 100%;
	top: 50%;
	left: 0;
	-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);
}
.valign {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
/* [ Start Overlay ] */

[data-overlay-dark],
[data-overlay-light] {
	position: relative;
}
[data-overlay-dark] .container,
[data-overlay-light] .container {
	position: relative;
	z-index: 2;
}
[data-overlay-dark]:before,
[data-overlay-light]:before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}
[data-overlay-dark]:before {
	background: #02050b;
}
[data-overlay-light]:before {
	background: #fff;
}
[data-overlay-dark] h1,
[data-overlay-dark] h2,
[data-overlay-dark] h3,
[data-overlay-dark] h4,
[data-overlay-dark] h5,
[data-overlay-dark] h6,
[data-overlay-dark] span,
.bg-dark h1,
.bg-dark h2,
.bg-dark h3,
.bg-dark h4,
.bg-dark h5,
.bg-dark h6,
.bg-dark span,
.bg-color h1,
.bg-color h2,
.bg-color h3,
.bg-color h4,
.bg-color h5,
.bg-color h6,
.bg-color span {
	color: #fff;
}
[data-overlay-dark] p,
.bg-dark p,
.bg-color p {
	color: #dad6d6;
}
[data-overlay-dark="0"]:before,
[data-overlay-light="0"]:before {
	opacity: 0;
}
[data-overlay-dark="1"]:before,
[data-overlay-light="1"]:before {
	opacity: .1;
}
[data-overlay-dark="2"]:before,
[data-overlay-light="2"]:before {
	opacity: .2;
}
[data-overlay-dark="3"]:before,
[data-overlay-light="3"]:before {
	opacity: .3;
}
[data-overlay-dark="4"]:before,
[data-overlay-light="4"]:before {
	opacity: .4;
}
[data-overlay-dark="5"]:before,
[data-overlay-light="5"]:before {
	opacity: .5;
}
[data-overlay-dark="6"]:before,
[data-overlay-light="6"]:before {
	opacity: .6;
}
[data-overlay-dark="7"]:before,
[data-overlay-light="7"]:before {
	opacity: .7;
}
[data-overlay-dark="8"]:before,
[data-overlay-light="8"]:before {
	opacity: .8;
}
[data-overlay-dark="9"]:before,
[data-overlay-light="9"]:before,
[data-overlay-color="9"]:before {
	opacity: .9;
}
[data-overlay-dark="10"]:before,
[data-overlay-light="10"]:before {
	opacity: 1;
}
/* [ End Overlay ] */

/* owl theme */

.owl-theme .owl-nav.disabled+.owl-dots {
	margin-top: 20px;
}
.owl-theme .owl-dots .owl-dot span {
	width: 7px;
	height: 7px;
	margin: 5px 5px;
	background-color: rgba(0, 0, 0, 0.1);
	display: block;
	-webkit-backface-visibility: visible;
	transition: opacity .2s ease;
	border-radius: 5px;
	transition: .3s;
	border: 2px solid transparent;
}
.owl-theme .owl-dots .owl-dot.active span {
	background-color: #ffbf12 !important;
	width: 7px;
	height: 7px;
	transition: .3s;
	-webkit-box-shadow: 0 1px 5px #ffbf12;
	box-shadow: 0 1px 5px #ffbf12;
}
.owl-theme .owl-dots .owl-dot:hover span {
	background-color: transparent;
	border: 2px solid #ffbf12;
	transition: .3s;
}

/**************************************
 * 02.Preloader Section Css
 **************************************/
.preloader {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #ffffff;
	z-index: 999999;
}
.preloader .preloader-inner {
	width: 100px;
	height: 100px;
	display: inline-block;
	padding: 0px;
	text-align: left;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.preloader .preloader-inner span {
	position: absolute;
	display: inline-block;
	width: 100px;
	height: 100px;
	border-radius: 100%;
	background-color: #2f5bea !important;
	-webkit-animation: preloader 1.3s linear infinite;
	animation: preloader 1.3s linear infinite;
}
.preloader .preloader-inner span:last-child {
	-webkit-animation-delay: -0.8s;
	animation-delay: -0.8s;
}
@keyframes preloader {
	0% {
		-webkit-transform: scale(0, 0);
		transform: scale(0, 0);
		opacity: 0.5;
	}
	100% {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		opacity: 0;
	}
}
@-webkit-keyframes preloader {
	0% {
		-webkit-transform: scale(0, 0);
		opacity: 0.5;
	}
	100% {
		-webkit-transform: scale(1, 1);
		opacity: 0;
	}
}

/**************************************
 * 03.Navber Section Css
 **************************************/
.navbar-b {
	transition: all .5s ease-in-out;
	background-color: transparent;
	padding-top: 1.563rem;
	padding-bottom: 1.563rem;
}
.navbar-b.navbar-reduce {
	box-shadow: 0px 6px 9px 0px rgba(0, 0, 0, 0.06);
}
.navbar-b.navbar-trans .nav-item,
.navbar-b.navbar-reduce .nav-item {
	position: relative;
	padding-right: 10px;
	padding-left: 0;
}
.navbar-b.navbar-trans .nav-link,
.navbar-b.navbar-reduce .nav-link {
	color: #fff;
	text-transform: capitalize;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0.5px;
}
.navbar-b.navbar-trans .nav-link:hover,
.navbar-b.navbar-reduce .nav-link:hover {
	color: #1B1B1B;
}
.navbar-b.navbar-trans .nav-link:hover {
	color: #fff;
}
.navbar-b.navbar-trans .show > .nav-link,
.navbar-b.navbar-trans .active > .nav-link,
.navbar-b.navbar-trans .nav-link.show,
.navbar-b.navbar-trans .nav-link.active {
	color: #fff;
}
.navbar-b.navbar-reduce {
	transition: all .5s ease-in-out;
	background-color: #fff;
	padding-top: 20px;
	padding-bottom: 20px;
	-webkit-animation: 500ms ease-in-out 0s normal fadeInDown;
	animation: 500ms ease-in-out 0s normal fadeInDown;
	-webkit-transition: 0.6s;
	transition: 0.6s;
}
.navbar-b.navbar-reduce .nav-link {
	color: #757575;
}
.navbar-b.navbar-reduce .nav-link:hover {
	color: #505050;
}
.navbar-b.navbar-reduce .show > .nav-link,
.navbar-b.navbar-reduce .active > .nav-link,
.navbar-b.navbar-reduce .nav-link.show,
.navbar-b.navbar-reduce .nav-link.active {
	color: #ffbf12;
	background: #efefef;
    border-radius: 3px;
}
.navbar-b.navbar-reduce .navbar-brand {
	color: #333;
}
.navbar-b.navbar-reduce .navbar-toggler span {
	background-color: #1B1B1B;
}
.navbar-b .navbar-brand {
	color: #fff;
	font-size: 1.6rem;
	font-weight: 700;
}
.navbar-b .navbar-nav .dropdown-item.show .dropdown-menu,
.navbar-b .dropdown.show .dropdown-menu,
.navbar-b .dropdown-btn.show .dropdown-menu {
	-webkit-transform: translate3d(0px, 0px, 0px);
	transform: translate3d(0px, 0px, 0px);
	visibility: visible !important;
}
.navbar-b .dropdown-menu {
	margin: 1.12rem 0 0;
	border-radius: 0;
}
.navbar-b .dropdown-menu .dropdown-item {
	padding: .7rem 1.7rem;
	transition: all 500ms ease;
}
.navbar-b .dropdown-menu .dropdown-item:hover {
	background-color: #ffbf12;
	color: #fff;
	transition: all 500ms ease;
}
.navbar-b .dropdown-menu .dropdown-item.active {
	background-color: #ffbf12;
}
.navbar-toggler {
	position: relative;
	
}
.navbar-toggler:focus,
.navbar-toggler:active {
	outline: 0;
	box-shadow: none;
}
.navbar-toggler span {
	display: block;
	background-color: #fff;
	height: 3px;
	width: 25px;
	margin-top: 4px;
	margin-bottom: 4px;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
	left: 0;
	opacity: 1;
}
.navbar-toggler span:nth-child(1),
.navbar-toggler span:nth-child(3) {
	transition: -webkit-transform .35s ease-in-out;
	transition: transform .35s ease-in-out;
	transition: transform .35s ease-in-out, -webkit-transform .35s ease-in-out;
}
.navbar-toggler:not(.collapsed) span:nth-child(1) {
	position: absolute;
	left: 12px;
	top: 10px;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	opacity: 0.9;
}
.navbar-toggler:not(.collapsed) span:nth-child(2) {
	height: 12px;
	visibility: hidden;
	background-color: transparent;
}
.navbar-toggler:not(.collapsed) span:nth-child(3) {
	position: absolute;
	left: 12px;
	top: 10px;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	opacity: 0.9;
}
.navbar-b .black-logo {
	display: none;
}
.navbar-b.navbar-reduce .navbar-brand .white-logo {
	display: none;
}
.navbar-b.navbar-reduce .navbar-brand .black-logo {
	display: block;
}
.navbar-area {
	position: absolute;
	z-index: 999;
	left: 0;
	width: 100%;
	height: auto;
	background-color: transparent;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

.navbar-area.is-sticky {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 999;
	-webkit-box-shadow: 0 2px 28px 0 rgba(0, 0, 0, 0.06);
	box-shadow: 0 2px 28px 0 rgba(0, 0, 0, 0.06);
	background: #ffffff !important;
	-webkit-animation: 500ms ease-in-out 0s normal fadeInDown;
	animation: 500ms ease-in-out 0s normal fadeInDown;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

.navbar-area.is-sticky .navbar-nav .nav-item a {
	color: #505050;
}

/*
.navbar-area.is-sticky .navbar-nav .nav-item a:hover,
.navbar-area.is-sticky .navbar-nav .nav-item a:focus,
.navbar-area.is-sticky .navbar-nav .nav-item a.active {
	color: #ffbf12;
	background: #efefef;
    border-radius: 3px;
}
*/

.navbar-area.is-sticky .navbar-brand .white-logo {
	display: none;
}

.navbar-area.is-sticky .navbar-brand .black-logo {
	display: block;
}
/*
.navbar-area.is-sticky .navbar-toggler span {
    display: block;
    background-color: #333;
    height: 3px;
    width: 25px;
    margin-top: 4px;
    margin-bottom: 4px;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    left: 0;
    opacity: 1;
}
*/

/***************************************
 ** - 04 - Home Slider Section CSS
 ***************************************/
.slider {
	position: relative;
}

.slider.fixed-slider {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
}

.slider .swiper-slide-active {
	z-index: 3;
}

.slider .parallax-slider {
	position: relative;
	height: 800px;
	min-height: 100vh;
}

.slider .parallax-slider .swiper-slide {
	position: relative;
	width: 100%;
	overflow: hidden;
	padding-bottom: 50px;
}

.slider .parallax-slider .swiper-slide .bg-img {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-size: cover;
	background-position: center;
}

.slider .parallax-slider .swiper-slide .bg-img:before {
	background-color: #131c30 !important;
}

.slider .parallax-slider .caption {
	text-align: center;
	padding-top: 50px;
}

.slider .parallax-slider .caption h3 {
	color: #fff;
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 5px;
    text-transform: uppercase;
    margin-bottom: 10px;
}
.slider .parallax-slider .swiper-slide-active .caption h3 {
	animation: fadeInRight .8s;
	-webkit-animation-delay: 0.2s;
	animation-delay: 0.2s;
}

.slider .parallax-slider .caption h1 {
	color: #fff;
	font-size: 75px;
	font-weight: 900;
	opacity: 1;
	visibility: visible;
	line-height: 1.2;
	margin-bottom: 0px
}

.slider .parallax-slider .swiper-slide-active .caption h1 {
	animation: fadeInLeft .8s;
	-webkit-animation-delay: 0.3s;
	animation-delay: 0.3s;
}

.slider .parallax-slider .caption p {
	color: #fff;
	font-size: 17px;
	margin-top: 15px;
	margin-bottom: 5px
}

.slider .parallax-slider .swiper-slide-active .caption p {
	animation: fadeInRight .8s;
}

.slider .parallax-slider .swiper-slide-active .caption .home-slider-btn {
	animation: fadeInLeft .8s;
	-webkit-animation-delay: 0.3s;
	animation-delay: 0.3s;
}

.slider .control-text {
	position: absolute;
	z-index: 8;
	top: 50%;
	width: 100%;
	height: auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.slider .control-text .swiper-nav-ctrl {
	position: static;
	width: auto;
	height: auto;
	color: #fff;
	font-size: 15px;
	font-weight: 600;
	padding: 5px 10px;
	border-radius: 3px;
	display: inline-block;
	background-color: transparent;
	margin-left: 15px;
	margin-right: 15px;
}

.slider .control-text .swiper-nav-ctrl:after {
	font-size: 20px;
    width: 60px;
    height: 60px;
    display: block;
    line-height: 60px;
    border-radius: 50%;
    text-align: center;
    background-color: rgb(0, 0, 0, 0.3);
}
.slider .swiper-pagination-bullets {
	bottom: 20px;
}
.slider .swiper-pagination-bullet {
	opacity: .4;
	background-color: #fff;
}
.slider .swiper-pagination-bullet-active {
	opacity: 1;
	background-color: #fff;
}

.slider .parallax-slider .swiper-slide-active .caption .social-icon-list {
	animation: fadeInUp .8s;
	-webkit-animation-delay: .3s;
	animation-delay: .3s;
}

.slider .parallax-slider .caption .social-icon-list {
    margin-bottom: 20px;
}

.slider .parallax-slider .caption .social-icon-list li {
    display: inline-block;
    margin: 5px 5px;
}

.slider .parallax-slider .caption .social-icon-list li a {
    color: #fff !important;
    font-size: 18px !important;
    width: 40px;
    height: 40px;
    line-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border: 1px solid rgb(255, 255, 255, 0.3);
    background-color: transparent;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.slider .parallax-slider .caption .social-icon-list li a:hover {
    color: #fff;
    border: 1px solid #ffbf12;
    background-color: #ffbf12;
}

/**************************************
 * 05.About Section Css
 **************************************/
.about-area {
	position: relative;
    z-index: 1;
    display: block;
    padding: 100px 0;
}

.about-image {
	margin-right: 10px;
}

.about-image img {
    border-radius: 12px;
}

.about-content {
    padding-right: 0px;
}

.about-content h2 {
    font-size: 38px;
    font-weight: 700;
    margin-bottom: 10px;
    letter-spacing: 0px;
}
.about-content p {
    margin-bottom: 18px;
}
.about-cv-info p {
    margin-bottom: 5px;
}
.about-cv-info p:last-child {
    margin-bottom: 0px;
}
.about-cv-info p i {
    color: #ffbf12;
    margin-right: 4px;
}

/**************************************
 * 06.Discount Menu Section Css
 **************************************/
.discount-menu-item {
    display: flex;
    align-items: center;
    flex-direction: row;
    gap: 35px;
    padding: 20px 20px;
    background-color: #ffffff;
    border-radius: 12px;
	margin-bottom: 35px;
	-webkit-box-shadow: 0px 5px 30px 0px rgba(148, 146, 245, 0.15);
	box-shadow: 0px 5px 30px 0px rgba(148, 146, 245, 0.15);
}

.discount-menu-img {
    max-width: 263px;
    width: 100%;
    overflow: hidden;
    border-radius: 10px;
    flex-shrink: 0;
}

.discount-menu-info .rating-box {
    margin-bottom: 5px;
}
.discount-menu-info .rating-box ul li {
	display: inline-block;
}
.discount-menu-info .rating-box ul li i {
	color: #ffce39;
	font-size: 18px;
}

.discount-menu-info h3 {
    font-size: 22px;
    font-weight: 700;
    margin-top: 0px;
    margin-bottom: 10px;
}
.discount-menu-info h4 {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 5px;
	font-family: 'Fondamento', cursive;
}

.discount-menu-info h4 del {
    color: #FF9800;
}
.discount-menu-info .button {
	padding: 8px 30px;
    margin-top: 20px;
}

/**************************************
 * 07. Hire Section Css
 **************************************/
.hire-area {
	position: relative;
	z-index: 1;
	text-align: center;
	background-image: url(../img/banner-bg.jpg);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
	background-attachment: fixed;
}
.hire-area::before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	opacity: .7;
	background: #181e3e;
}
.hire-container {
	position: absolute;
	z-index: 3;
	width: 100%;
	height: 100%;
}
.hire-content h5 {
	color: #fff;
	font-size: 22px;
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 10px;
}
.hire-content h2 {
	color: #ffffff;
	font-size: 45px;
	font-weight: 700;
	text-transform: capitalize;
	font-family: 'Fondamento', cursive;
}
.hire-content h3 {
	color: #ffffff;
    font-size: 35px;
    font-weight: 800;
    display: block;
    margin-top: 20px;
}
.hire-content .call-button {
	color: #ffbf12;
    display: inline-block;
}

.hire-content .video-btn {
	position: relative;
	display: block;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background: transparent;
	margin: 0 auto;
	-webkit-animation: ripple-white 1s linear infinite;
	animation: ripple-white 1s linear infinite;
	-webkit-transition: .5s;
	margin-bottom: 50px;
}
.iq-video.video-btn i {
	font-size: 70px;
	color: #ffffff;
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 1;
	-webkit-transform: translateY(-50%) translateX(-50%);
	transform: translateY(-50%) translateX(-50%);
}

@-webkit-keyframes ripple-white {
	0% {
		-webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.4), 0 0 0 10px rgba(255, 255, 255, 0.4), 0 0 0 20px rgba(255, 255, 255, 0.4);
		box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.4), 0 0 0 10px rgba(255, 255, 255, 0.4), 0 0 0 20px rgba(255, 255, 255, 0.4);
	}
	100% {
		-webkit-box-shadow: 0 0 0 10px rgba(255, 255, 255, 0.4), 0 0 0 20px rgba(255, 255, 255, 0.4), 0 0 0 30px rgba(255, 255, 255, 0);
		box-shadow: 0 0 0 10px rgba(255, 255, 255, 0.4), 0 0 0 20px rgba(255, 255, 255, 0.4), 0 0 0 30px rgba(255, 255, 255, 0);
	}
}
@keyframes ripple-white {
	0% {
		-webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.4), 0 0 0 10px rgba(255, 255, 255, 0.4), 0 0 0 20px rgba(255, 255, 255, 0.4);
		box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.4), 0 0 0 10px rgba(255, 255, 255, 0.4), 0 0 0 20px rgba(255, 255, 255, 0.4);
	}
	100% {
		-webkit-box-shadow: 0 0 0 10px rgba(255, 255, 255, 0.4), 0 0 0 20px rgba(255, 255, 255, 0.4), 0 0 0 30px rgba(255, 255, 255, 0);
		box-shadow: 0 0 0 10px rgba(255, 255, 255, 0.4), 0 0 0 20px rgba(255, 255, 255, 0.4), 0 0 0 30px rgba(255, 255, 255, 0);
	}
}

/*************************************
 * 08. Menu Section Css
 *************************************/
.menu-day-area {
	position: relative;
	z-index: 1;
	background: url(../img/menu-bg.png);
	background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}
.menu-day-area::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  opacity: .35;
  z-index: -1;
}

.bg--cover {
	background-position: 50% 50% !important;
	background-size: cover !important;
}
.menu-day-area {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-flow: row nowrap;
	flex-flow: row nowrap;
}

.menu-day-product-content .menu-day-tab-header {
	text-align: center;
	margin-bottom: 30px;
}
.menu-day-product-content .menu-day-tab-list {
	padding: 30px 0;
}
.menu-day-product-content .menu-day-tab-list li {
	display: inline-block;
	padding-right: 30px;
	margin-right: 30px;
	border-right: 1px dashed #bbb;
	vertical-align: top;
}
.menu-day-product-content .menu-day-tab-list li a {
    display: block;
    color: #555;
    font-size: 20px;
    text-transform: capitalize;
    line-height: 30px;
    font-weight: 700;
}
.menu-day-product-content .menu-day-tab-list li a i {
	font-size: 35px;
    vertical-align: middle;
}
.menu-single-tab-content.active {
	display: block;
}
.menu-single-tab-content {
	display: none;
}
.menu-day-product-content .menu-single-product-horizontal {
	border-bottom: 1px dashed #bbb;
	padding: 15px 0;
}
.menu-single-product-horizontal {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-flow: row nowrap;
	flex-flow: row nowrap;
}
.menu-single-product-horizontal .menu-product-info-box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-flow: row nowrap;
	flex-flow: row nowrap;
	width: 100%;
    justify-content: space-between;
}

.menu-single-product-horizontal .menu-product-title {
	font-size: 18px;
	font-weight: 600;
	color: #333;
}
.menu-single-product-horizontal .menu-product-details p {
	margin-bottom: 0;
	color: #333;
}
.menu-single-product-horizontal .menu-product-price {
	max-width: 80px;
	padding-left: 15px;
	text-align: right;
}
.menu-single-product-horizontal .menu-product-price span {
	color: #fbc31b;
	font-size: 18px;
	font-weight: 600;
}
.menu-day-product-content .menu-day-tab-list li a:hover {
	color: #fbc31b;
}
.menu-day-product-content .menu-day-tab-list li a:hover i {
	color: inherit;
}
.menu-day-product-content .menu-day-tab-list li a:hover i:before {
	color: inherit;
}
.menu-day-product-content .menu-day-tab-list li:last-child {
	margin-right: 0;
	padding-right: 0;
	border-right: none;
}
.menu-day-product-content .menu-day-tab-list li.active a {
	color: #fbc31b;
}
.menu-day-product-content .menu-day-tab-list li.active a i {
	color: inherit;
}
.menu-day-product-content .menu-day-tab-list li.active a i:before {
	color: inherit;
}
.menu-day-product-content .menu-single-product-horizontal {
	border-bottom: 1px dashed #bbb;
	padding: 15px 0;
}
.menu-day-product-content .menu-single-product-horizontal:last-child {
	padding-bottom: 0;
	border-bottom: none;
}

/**************************************
 * 09.Gallery Section Css
 **************************************/
.single-gallery-item {
	position: relative;
	overflow: hidden;
	display: block;
	border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
	margin-bottom: 30px;
}

.single-gallery-item:before {
    content: "";
    position: absolute;
    top: 0%;
    left: 0%;
    width: 100%;
    height: 100%;
    opacity: 0;
	visibility: hidden;
	background-color: #ff9800;
    transition: 0.5s;
}
.single-gallery-item:hover:before {
    opacity: 0.8;
	visibility: visible;
}

.single-gallery-item .gallery-overlay-info {
	position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;
    width: 100%;
    opacity: 0;
    visibility: hidden;
    text-align: center;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    margin-top: 30px;
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease;
}
.single-gallery-item .gallery-overlay-info i {
	color: #fff;
    font-size: 30px;
}

.single-gallery-item:hover .gallery-overlay-info {
    opacity: 1;
    visibility: visible;
    margin-top: 0;
}

/**************************************
 * 10.Testimonial Section Css
 **************************************/
.testimonial-section {
	position: relative;
	z-index: 1;
	text-align: center;
	background: url(../img/banner-bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
.testimonial-section:after {
	position: absolute;
	z-index: -1;
	content: "";
	top: 0;
	left: 0;
	padding: 0;
	height: 100%;
	width: 100%;
	opacity: .7;
	background: #181e3e;
}

.testimonial-section .section-title h2 {
	color: #fff;
}

.single-testimonial {
	position: relative;
	padding: 0px 15px;
	margin: 10px;
}
.rating-box ul li {
	display: inline-block;
}
.rating-box ul li i {
	color: #ffce39;
	font-size: 22px;
}
.testimonial-content {
	margin-top: 15px;
	margin-bottom: 25px;
}
.testimonial-content p {
	color: #fff;
	font-size: 18px;
	font-style: italic;
}
.single-testimonial .testimonial-bio .avatar img {
    width: 115px;
    padding: 3px;
	border-radius: 50%;
    border: 5px solid #e3e3e3;
    margin: 0 auto;
}
.single-testimonial .testimonial-bio .bio-info {
	text-align: center;
	margin-top: 15px;
}
.single-testimonial .testimonial-bio .bio-info .name {
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	margin-top: 0;
	margin-bottom: 2px;
}
.single-testimonial .testimonial-bio .bio-info span {
	color: #ffbf12;
	font-size: 14px;
	font-weight: 600;
	display: block;
}
.testimonial-section .owl-theme .owl-nav.disabled+.owl-dots {
	position: unset;
	right: 0;
	top: 50%;
	transform: none;
	margin-top: 20px;
}
.testimonial-section .owl-theme .owl-dots .owl-dot span {
	background-color: #ddd;
}
.slider-bg-grey .owl-theme .owl-dots .owl-dot span {
	background-color: #cacaca;
}

/**************************************
 * 11.Team Section Css
 **************************************/
.team-area {
}

.team-area .section-title {
	margin-bottom: 35px;
}
.single-team-box {
	margin-top: 30px;
	-webkit-transition: 0.5s;
	transition: 0.5s;
}
.team-image {
	border-radius: 10px;
	overflow: hidden;
}
.single-team-box .team-image img {
	width: 100%;
	height: auto;
}
.team-info {
	padding: 20px 15px 30px;
	text-align: center;
	-webkit-transition: 0.5s;
	transition: 0.5s;
}
.team-info h3 {
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 5px;
}
.team-info span {
	color: #ffbf12;
	font-size: 14px;
	font-weight: 600;
	display: block;
}
.team-social-icon {
	display: block;
	margin-top: 15px;
}
.single-team-box .team-social-icon a {
	position: relative;
	z-index: 1;
	color: inherit;
	font-size: 18px;
	width: 38px;
	height: 38px;
	line-height: 38px;
	text-align: center;
	border-radius: 10px;
	margin: 0 5px;
	display: inline-block;
	vertical-align: middle;
	background: transparent;
}
.single-team-box .team-social-icon a:after {
	top: 0px;
	left: 0px;
	z-index: -1;
	position: absolute;
	width: 100%;
	height: 100%;
	content: '';
	-webkit-transform: scale(1.4);
	-ms-transform: scale(1.4);
	-o-transform: scale(1.4);
	transform: scale(1.4);
	opacity: 0;
	-webkit-transition: all 0.5s;
	-o-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	transition: all 0.5s;
	background: inherit;
	border-radius: inherit;
}
.single-team-box .team-social-icon a:hover:after {
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
	opacity: 1;
}
.single-team-box .team-social-icon a:hover i:before {
	color: #fff;
	-webkit-transition: all 0.5s;
	-o-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	transition: all 0.5s;
}
.social-color-1:hover:after {
	background-color: #3b5998 !important;
}
.social-color-2:hover:after {
	background-color: #00acee !important;
}
.social-color-3:hover:after {
	background-color: #0e76a8 !important;
}
.social-color-1 {
	color: #3b5998 !important;
	background-color: transparent;
	border: 1px dashed #3b5998;
}
.social-color-2 {
	color: #00acee !important;
	background-color: transparent;
	border: 1px dashed #00acee;
}
.social-color-3 {
	color: #0e76a8 !important;
	background-color: transparent;
	border: 1px dashed #0e76a8;
}
.mt-70 {
	margin-top: 70px !important;
}

/**************************************
 * 12.Faq Section Css
 **************************************/
.faq-area {}
.faq-area .faq-item .accordion .accordion-item {
	margin-bottom: 30px;
	border: 0;
}
.faq-area .faq-item .accordion .accordion-item:last-child {
	margin-bottom: 0px;
}
.faq-area .faq-item .accordion .title {
	padding-bottom: 12px;
	background-color: transparent;
	border-radius: 0;
	cursor: pointer;
	position: relative;
	-webkit-transition: all .4s;
	transition: all .4s;
	border-bottom: 1px solid #dadada;
}
.faq-area .faq-item .accordion .title:after {
	content: '\f067';
	font-family: 'FontAwesome';
	font-weight: 400;
	font-size: 14px;
	position: absolute;
	right: 10px;
	color: #333;
	top: 50%;
	z-index: 1;
	-webkit-transform: translateY(-50%) translateX(-50%);
	transform: translateY(-50%) translateX(-50%);
}
.faq-area .faq-item .accordion .title h6 {
	font-size: 16px;
	font-weight: 700;
	padding-right: 20px;
}
.faq-area .faq-item .accordion .title h6 span {
	color: #333;
}
.faq-area .faq-item .accordion .active .title h6 span {
	color: #ffbf12;
}
.faq-area .faq-item .accordion .accordion-info {
	display: none;
	padding: 0;
	margin-top: 10px;
	margin-left: 0;
	border: 0;
	background: transparent;
	border-radius: 0;
}
.faq-area .faq-item .accordion .accordion-info p {
	font-size: 14px;
}
.faq-area .faq-item .accordion .active {
	display: block;
}
.faq-area .faq-item .accordion .active .title {
	color: #ffbf12;
	background: transparent;
}
.faq-area .faq-item .accordion .active .title:after {
	content: '\f068';
	color: #ffbf12;
}
.faq-area .faq-item .accordion .active .title h6 {
	color: #ffbf12;
}

/**************************************
 * 13.Partner Logo Section Css
 **************************************/
.partner-area .section-title {
    margin-bottom: 60px;
}
.partner-single-item {
	background: #ffffff;
    padding: 5px 20px;
	border-radius: 5px;
    -webkit-box-shadow: 0 0.3em 1em -0.125em rgba(10,10,10,.1), 0 0 0 1px rgba(10,10,10,.02);
	box-shadow: 0 0.3em 1em -0.125em rgba(10,10,10,.1), 0 0 0 1px rgba(10,10,10,.02);
    margin: 15px 15px;
}
.partner-single-item img {
	margin: 0 auto;
}

/**************************************
 * 14.Counter Section Css
 **************************************/
.counter-area {
	position: relative;
	z-index: 1;
	text-align: center;
	background: url(../img/banner-bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
}
.counter-area::after {
	position: absolute;
	z-index: -1;
	content: "";
	top: 0;
	left: 0;
	padding: 0;
	height: 100%;
	width: 100%;
	opacity: .7;
	background: #181e3e;
}
.counter-area .section-title h5 {
	color: #ffffff;
}
.counter-area .section-title h2 {
	color: #fff;
}
.counter-contents h2 {
	color: #fff;
	font-size: 45px;
	font-weight: 700;
	margin-bottom: 5px;
	word-spacing: -10px;
}
.counter-contents h3 {
	color: #fff;
	font-size: 18px;
	font-weight: 700;
}

/**************************************
 * 15. Blog Section Css
 **************************************/
.blog-area {
	text-align: center;
}
.blog-area .section-title {
	text-align: center;
    margin-bottom: 35px;
}
.blog-area .single-blog {
	position: relative;
	background: #ffffff;
	border-radius: 5px;
    margin-top: 35px;
	-webkit-box-shadow: 0px 5px 30px 0px rgba(148, 146, 245, 0.15);
	box-shadow: 0px 5px 30px 0px rgba(148, 146, 245, 0.15);
	overflow: hidden;
}
.blog-area .post-img {
	position: relative;
	overflow: hidden;
}
.blog-area .single-blog img {
	-webkit-transition: all .5s;
	transition: all .5s;
}
.blog-area .single-blog:hover img {
	-webkit-filter: none;
	filter: none;
	-webkit-transform: rotate(3deg) scale(1.1, 1.1);
	-ms-transform: rotate(3deg) scale(1.1, 1.1);
	transform: rotate(3deg) scale(1.1, 1.1);
}
.single-blog .blog-tag {
	position: absolute;
	z-index: 2;
	top: 15px;
	right: 15px;
	background: #ffbf12;
	color: #fff;
	font-size: 12px;
	font-weight: 500;
	border-radius: 5px;
	text-align: center;
	text-transform: uppercase;
}
.single-blog .blog-tag a {
	color: #fff;
	font-size: 12px;
	padding: 5px 10px;
	font-weight: 700;
	display: block;
}
.blog-area .single-blog .blog-text {
	padding: 30px 25px;
	text-align: left;
}
.blog-category {
	margin-bottom: 15px;
}
.blog-area .single-blog .blog-type {
	font-weight: 700;
	color: #ffbf12;
	font-size: 14px;
	display: inline-block;
}
.blog-area .single-blog .blog-type:hover {
	color: #ffbf12;
	text-decoration: underline !important;
}
.blog-area .single-blog .blog-text h5 a {
	color: #333;
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 15px;
	display: block;
}
.blog-area .single-blog .blog-text h5 a:hover {
	color: #ffbf12;
	text-decoration: underline !important;
}
.blog-bottom-text-link {
	display: flex;
	justify-content: space-between;
	margin-top: 20px;
}
.blog-bottom-text-link span {
	font-size: 14px;
	color: #5a5a5a;
	font-weight: 700;
}
.single-blog .blog-text .blog-bottom-text-link a {
	font-size: 14px;
	font-weight: 700;
	color: #555;
	margin-bottom: 5px;
	display: block;
}
.single-blog .blog-text .blog-bottom-text-link a:hover {
	color: #ffbf12;
	text-decoration: underline !important;
}
.blog-more-btn {
	text-align: center;
	margin-top: 20px;
}

/**************************************
 * 16. Contact Section Css
 **************************************/
.contact-box-item {
	margin-bottom: 30px;
}
.contact-box-item:last-child {
	margin-bottom: 0px;
}
.contact-info h3 {
	font-size: 22px;
	font-weight: 700;
	margin-bottom: 20px;
}

.contact-info p {
	color: #333;
	margin-top: 7px;
	margin-bottom: 0;
}

.contact-info p i {
	color: #fbc31b;
	font-size: 16px;
	margin-right: 5px;
}

.contact-info p a {
	color: #333;
}

.contact-info p a:hover {
	color: #fbc31b;
}

.contact-info p.opening-hours {
	overflow: hidden;
	padding: 0;
	text-align: left;
}

.contact-info p.opening-hours span {
	float: right;
	margin-right: 25px;
}

.contact-area .form input,
.contact-area .form textarea {
	width: 100%;
	padding: 12px 20px;
	background-color: #f5f5fa;
	font-weight: 500;
	border-radius: 5px;
	border: 0;
	border-left: 3px solid #ffbf12;
}
.contact-area .form textarea {
	max-height: 120px;
	max-width: 100%;
}
#contact-form .button {
	margin: 0;
}
.form-group {
	margin-bottom: 25px;
}
button,
input,
textarea {
	color: #505050;
}
button,
input,
textarea:focus {
	border: none;
	outline: none;
}
.contact-area .form-message.success {
	background: #03b103;
	color: #fff;
	padding: 10px 15px;
	border-radius: 3px;
	margin-bottom: 35px;
}
.contact-area .form-message.error {
	background: #ff4d15;
	color: #fff;
	padding: 10px 15px;
	border-radius: 3px;
	margin-bottom: 35px;
}

/*******************************
 ** - 16 - Map Section CSS
 *******************************/
.map-section {
    margin-bottom: -10px;
}

.map-section .google-map iframe {
    width: 100%;
    height: 450px;
    border: 0;
}

/**************************************
 * 17.Footer Section Css
 **************************************/
.footer-top-wrapper {
	background-color: #202438
}
.footer-bottom-wrapper {
	padding: 30px 0;
	background-color: #1a1c2d;
}
.footer-about .footer-logo {
	color: #fff;
	font-size: 30px;
	font-weight: 700;
	margin-bottom: 30px;
	display: block;
}
.footer-about p {
	color: #fff;
}
.pl-50 {
	padding-left: 50px;
}
.pr-50 {
	padding-right: 50px;
}
.footer-list h5 {
	font-size: 18px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 18px;
}
.footer-list ul li a {
	display: inline-block;
	color: #dadada;
	padding: 5px 0;
	font-weight: 600;
}
.footer-list ul li a:hover {
	color: #ffbf12;
}
.footer-social-icon {
	margin-top: 20px;
}
.footer-social-icon li {
	display: inline-block;
	margin-right: 10px;
}
.footer-social-icon li a {
	color: #fff;
	font-size: 18px;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	display: block;
	border-radius: 30px;
	background-color: #ffbf12;
	transition: all 0.5s;
	-webkit-transition: all 0.5s;
}
.footer-social-icon li a:hover {
	color: #ffbf12;
	background: #fff;
}
.footer-list .input-box {
	padding-top: 10px;
}
.footer-list .input-box input {
	width: 100%;
	line-height: 50px;
	background: #151725;
	border-radius: 30px;
	color: #ffffff;
	font-size: 14px;
	font-weight: 600;
	border: 0;
	padding-left: 25px;
}
.footer-list .input-box input::-webkit-input-placeholder {
	/* Edge */
	color: #dadada;
}
.footer-list .input-box input:-ms-input-placeholder {
	/* Internet Explorer */
	color: #dadada;
}
.footer-list .input-box input::placeholder {
	color: #dadada;
}
.footer-list .input-box button {
	width: 100%;
	border: 0;
	margin-top: 20px;
	background: #ffbf12;
	color: #ffffff;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 1px;
	line-height: 48px;
	border-radius: 30px;
}
.footer-list .input-box button i {
	font-size: 14px;
	padding-left: 5px;
}
.footer-copyright-text p {
	color: #fff;
}

/**************************************
 * Cairns Casino Navbar
 **************************************/

.cairns-navbar {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 9999;
	background: rgba(6, 13, 32, 0.92);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.18);
	padding-top: 16px;
	padding-bottom: 16px;
	transition: all 0.35s ease;
}

.cairns-navbar .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.cairns-navbar .navbar-brand {
	display: flex;
	align-items: center;
	padding: 0;
	margin-right: 24px;
}

.cairns-navbar .navbar-brand img {
	max-height: 42px;
	width: auto;
	display: block;
}

.cairns-navbar .black-logo {
	display: none !important;
}

.cairns-navbar .white-logo {
	display: block !important;
}

.cairns-navbar .navbar-nav {
	display: flex;
	align-items: center;
	gap: 4px;
}

.cairns-navbar .navbar-nav .nav-item {
	padding-right: 0;
}

.cairns-navbar .navbar-nav .nav-link {
	position: relative;
	color: #ffffff;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.3px;
	text-transform: uppercase;
	padding: 10px 9px;
	transition: color 0.3s ease;
}

.cairns-navbar .navbar-nav .nav-link:hover,
.cairns-navbar .navbar-nav .nav-link:focus,
.cairns-navbar .navbar-nav .nav-link.active {
	color: #d4af37;
	background: transparent;
}

.cairns-navbar .navbar-nav .nav-link:after {
	content: "";
	position: absolute;
	left: 9px;
	right: 9px;
	bottom: 5px;
	height: 1px;
	background: #d4af37;
	transform: scaleX(0);
	transform-origin: center;
	transition: transform 0.3s ease;
}

.cairns-navbar .navbar-nav .nav-link:hover:after,
.cairns-navbar .navbar-nav .nav-link.active:after {
	transform: scaleX(1);
}

.cairns-navbar .navbar-play-btn,
.cairns-navbar .mobile-play-btn {
	margin-top: 0;
	padding: 9px 24px;
	border-radius: 30px;
	border: 2px solid #d4af37;
	background: #d4af37;
	color: #07111f;
	font-size: 14px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	white-space: nowrap;
	box-shadow: 0 8px 20px rgba(212, 175, 55, 0.25);
}

.cairns-navbar .navbar-play-btn:hover,
.cairns-navbar .mobile-play-btn:hover {
	background: transparent;
	color: #d4af37;
	border-color: #d4af37;
}

.cairns-navbar .navbar-play-btn:before,
.cairns-navbar .navbar-play-btn:after,
.cairns-navbar .mobile-play-btn:before,
.cairns-navbar .mobile-play-btn:after {
	display: none;
}

.cairns-navbar .mobile-play-btn {
	display: none;
}

/* Prevent fixed navbar from covering sections */
#home,
#about,
#advantages,
#bonuses,
#games,
#app,
#payments,
#faq {
	scroll-margin-top: 90px;
}

/* Mobile Navbar */
@media only screen and (max-width: 991px) {
	.cairns-navbar {
		padding-top: 12px;
		padding-bottom: 12px;
	}

	.cairns-navbar .container {
		flex-wrap: nowrap;
	}

	.cairns-navbar .navbar-brand {
		margin-right: 12px;
		max-width: 58%;
	}

	.cairns-navbar .navbar-brand img {
		max-height: 34px;
	}

	.cairns-navbar .navbar-collapse,
	.cairns-navbar .navbar-toggler {
		display: none !important;
	}

	.cairns-navbar .mobile-play-btn {
		display: inline-block;
		padding: 8px 18px;
		font-size: 12px;
	}

	body {
		padding-top: 64px;
	}
}

@media only screen and (min-width: 992px) {
	body {
		padding-top: 0;
	}

	.cairns-navbar .navbar-collapse {
		display: flex !important;
	}
}

/**************************************
 * Hero Banner Section
 **************************************/

.hero-area {
	position: relative;
	min-height: 100vh;
	display: flex;
	align-items: center;
	padding: 160px 0 110px;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	overflow: hidden;
}

.hero-overlay {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(90deg, rgba(3, 8, 20, 0.92) 0%, rgba(6, 13, 32, 0.78) 42%, rgba(6, 13, 32, 0.28) 100%),
		linear-gradient(180deg, rgba(0, 0, 0, 0.22) 0%, rgba(0, 0, 0, 0.38) 100%);
	z-index: 1;
}

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

.hero-content {
	max-width: 720px;
	text-align: left;
}

.hero-label {
	display: inline-block;
	margin-bottom: 18px;
	padding: 8px 18px;
	border: 1px solid rgba(212, 175, 55, 0.55);
	border-radius: 50px;
	color: #d4af37;
	background: rgba(212, 175, 55, 0.08);
	font-size: 13px;
	font-weight: 800;
	line-height: 1.2;
	text-transform: uppercase;
	letter-spacing: 1.4px;
}

.hero-content h1 {
	color: #ffffff;
	font-size: 58px;
	font-weight: 900;
	line-height: 1.12;
	margin-bottom: 24px;
	letter-spacing: -0.8px;
}

.hero-content p {
	max-width: 650px;
	color: #e6e8ee;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.8;
	margin-bottom: 0;
}

.hero-highlights {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
	margin: 32px 0 36px;
	max-width: 690px;
}

.hero-highlight-item {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 72px;
	padding: 16px 18px;
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.08);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.18);
}

.hero-highlight-item i {
	flex: 0 0 auto;
	color: #d4af37;
	font-size: 20px;
}

.hero-highlight-item span {
	color: #ffffff;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
}

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

.hero-primary-btn,
.hero-secondary-btn {
	margin-top: 0;
	padding: 12px 34px;
	border-radius: 50px;
	font-size: 15px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.hero-primary-btn {
	border-color: #d4af37;
	background: #d4af37;
	color: #07111f;
	box-shadow: 0 12px 28px rgba(212, 175, 55, 0.28);
}

.hero-primary-btn:hover {
	background: transparent;
	color: #d4af37;
	border-color: #d4af37;
}

.hero-secondary-btn {
	border-color: rgba(255, 255, 255, 0.82);
	color: #ffffff;
}

.hero-secondary-btn:hover {
	background: #ffffff;
	color: #07111f;
	border-color: #ffffff;
}

.hero-primary-btn:before,
.hero-primary-btn:after,
.hero-secondary-btn:before,
.hero-secondary-btn:after {
	display: none;
}

.hero-note {
	margin-top: 24px !important;
	color: rgba(255, 255, 255, 0.72) !important;
	font-size: 13px !important;
	line-height: 1.6 !important;
}

/* Mobile Hero */
@media only screen and (max-width: 991px) {
	.hero-area {
		min-height: auto;
		padding: 120px 0 80px;
		background-position: center center;
	}

	.hero-overlay {
		background:
			linear-gradient(90deg, rgba(3, 8, 20, 0.94) 0%, rgba(6, 13, 32, 0.82) 100%),
			linear-gradient(180deg, rgba(0, 0, 0, 0.28) 0%, rgba(0, 0, 0, 0.45) 100%);
	}

	.hero-content h1 {
		font-size: 38px;
		line-height: 1.18;
	}

	.hero-content p {
		font-size: 16px;
		line-height: 1.7;
	}

	.hero-highlights {
		grid-template-columns: 1fr;
		gap: 12px;
		margin: 28px 0 32px;
	}

	.hero-highlight-item {
		min-height: auto;
		padding: 14px 16px;
	}

	.hero-actions {
		gap: 12px;
	}

	.hero-primary-btn,
	.hero-secondary-btn {
		width: 100%;
		text-align: center;
		padding: 12px 24px;
	}
}

@media only screen and (max-width: 575px) {
	.hero-area {
		padding: 105px 0 65px;
	}

	.hero-label {
		font-size: 11px;
		letter-spacing: 1px;
		padding: 7px 14px;
	}

	.hero-content h1 {
		font-size: 31px;
	}

	.hero-content p {
		font-size: 15px;
	}

	.hero-note {
		font-size: 12px !important;
	}
}

/**************************************
 * Games Section
 **************************************/

.games-area {
	position: relative;
	background:
		linear-gradient(180deg, #ffffff 0%, #f8f4ea 48%, #ffffff 100%);
	overflow: hidden;
}

.games-area:before {
	content: "";
	position: absolute;
	top: -180px;
	right: -180px;
	width: 430px;
	height: 430px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, rgba(212, 175, 55, 0) 70%);
	pointer-events: none;
}

.games-area:after {
	content: "";
	position: absolute;
	left: -160px;
	bottom: -160px;
	width: 390px;
	height: 390px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(7, 17, 31, 0.12) 0%, rgba(7, 17, 31, 0) 70%);
	pointer-events: none;
}

.games-area .container {
	position: relative;
	z-index: 2;
}

.games-area .section-title {
	margin-bottom: 46px;
}

.games-area .sub-title {
	color: #d4af37;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 12px;
}

.games-area .section-title h2 {
	color: #07111f;
	font-family: 'DM Sans', sans-serif;
	font-size: 42px;
	font-weight: 900;
	line-height: 1.22;
	text-transform: none;
	margin-bottom: 18px;
}

.games-area .section-intro {
	max-width: 860px;
	margin: 0 auto;
	color: #555f6f;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
}

.games-feature-row {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
	margin-bottom: 48px;
}

.games-feature-card {
	position: relative;
	padding: 30px 28px;
	border-radius: 22px;
	background: #ffffff;
	border: 1px solid rgba(212, 175, 55, 0.28);
	box-shadow: 0 16px 45px rgba(6, 13, 32, 0.08);
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
	overflow: hidden;
}

.games-feature-card:before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, rgba(212, 175, 55, 0.13), rgba(212, 175, 55, 0));
	opacity: 0;
	transition: opacity 0.3s ease;
}

.games-feature-card:hover {
	transform: translateY(-6px);
	border-color: rgba(212, 175, 55, 0.58);
	box-shadow: 0 24px 55px rgba(6, 13, 32, 0.12);
}

.games-feature-card:hover:before {
	opacity: 1;
}

.games-feature-card i,
.games-feature-card h4,
.games-feature-card p {
	position: relative;
	z-index: 2;
}

.games-feature-card i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	margin-bottom: 18px;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 22px;
}

.games-feature-card h4 {
	color: #07111f;
	font-size: 20px;
	font-weight: 800;
	margin-bottom: 10px;
}

.games-feature-card p {
	color: #5f6878;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.7;
}

.games-grid {
	margin-top: 0;
}

.game-card {
	position: relative;
	overflow: hidden;
	border-radius: 18px;
	background: #07111f;
	border: 1px solid rgba(212, 175, 55, 0.3);
	box-shadow: 0 18px 42px rgba(6, 13, 32, 0.14);
	transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.game-card:before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	border-radius: inherit;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(212, 175, 55, 0.09));
	pointer-events: none;
}

.game-card img {
	position: relative;
	z-index: 0;
	width: 100%;
	height: auto;
	display: block;
	border-radius: 18px;
	transition: transform 0.45s ease, filter 0.45s ease;
}

.game-card:hover {
	transform: translateY(-7px);
	border-color: rgba(212, 175, 55, 0.75);
	box-shadow: 0 28px 65px rgba(6, 13, 32, 0.22);
}

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

.game-card-overlay {
	position: absolute;
	inset: 0;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
	text-align: center;
	padding: 18px;
	background:
		linear-gradient(180deg, rgba(5, 11, 22, 0.02) 0%, rgba(5, 11, 22, 0.42) 45%, rgba(5, 11, 22, 0.9) 100%);
	transition: background 0.35s ease;
}

.game-card:hover .game-card-overlay {
	background:
		linear-gradient(180deg, rgba(5, 11, 22, 0.16) 0%, rgba(5, 11, 22, 0.62) 42%, rgba(5, 11, 22, 0.95) 100%);
}

.game-card-overlay h4 {
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1.25;
	margin-bottom: 12px;
	text-transform: uppercase;
	letter-spacing: 0.35px;
	text-shadow: 0 3px 12px rgba(0, 0, 0, 0.58);
}

.game-card-overlay a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 108px;
	padding: 8px 16px;
	border-radius: 30px;
	background: #d4af37;
	color: #07111f;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 10px 22px rgba(212, 175, 55, 0.24);
	opacity: 0;
	transform: translateY(10px);
	transition: opacity 0.3s ease, transform 0.3s ease, background 0.3s ease;
}

.game-card:hover .game-card-overlay a {
	opacity: 1;
	transform: translateY(0);
}

.game-card-overlay a:hover {
	background: #ffffff;
	color: #07111f;
}

.games-bottom-box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	margin-top: 36px;
	padding: 34px 38px;
	border-radius: 24px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
	border: 1px solid rgba(212, 175, 55, 0.34);
	box-shadow: 0 24px 60px rgba(6, 13, 32, 0.18);
}

.games-bottom-box h3 {
	color: #ffffff;
	font-size: 26px;
	font-weight: 900;
	margin-bottom: 10px;
}

.games-bottom-box p {
	max-width: 780px;
	color: #d8dde7;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
}

.games-bottom-btn {
	flex: 0 0 auto;
	margin-top: 0;
	padding: 12px 30px;
	border-radius: 50px;
	border-color: #d4af37;
	background: #d4af37;
	color: #07111f;
	font-size: 14px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 12px 28px rgba(212, 175, 55, 0.25);
}

.games-bottom-btn:hover {
	background: transparent;
	color: #d4af37;
	border-color: #d4af37;
}

.games-bottom-btn:before,
.games-bottom-btn:after {
	display: none;
}

@media only screen and (max-width: 991px) {
	.games-area .section-title h2 {
		font-size: 34px;
	}

	.games-feature-row {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.games-bottom-box {
		flex-direction: column;
		align-items: flex-start;
		padding: 30px 26px;
	}

	.games-bottom-btn {
		width: 100%;
		text-align: center;
	}
}

@media only screen and (max-width: 575px) {
	.games-area .section-title h2 {
		font-size: 28px;
	}

	.games-area .section-intro {
		font-size: 15px;
	}

	.games-feature-card {
		padding: 26px 22px;
	}

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

	.game-card img {
		border-radius: 14px;
	}

	.game-card-overlay {
		padding: 12px;
	}

	.game-card-overlay h4 {
		font-size: 10.5px;
		margin-bottom: 8px;
	}

	.game-card-overlay a {
		min-width: auto;
		padding: 7px 12px;
		font-size: 10px;
	}

	.games-bottom-box h3 {
		font-size: 22px;
	}
}


/**************************************
 * Live Games Section
 **************************************/

.live-games-area {
	position: relative;
	background:
		linear-gradient(180deg, #07111f 0%, #101b2d 48%, #07111f 100%);
	overflow: hidden;
}

.live-games-area:before {
	content: "";
	position: absolute;
	top: -180px;
	left: -180px;
	width: 420px;
	height: 420px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.18) 0%, rgba(212, 175, 55, 0) 70%);
	pointer-events: none;
}

.live-games-area:after {
	content: "";
	position: absolute;
	right: -160px;
	bottom: -160px;
	width: 420px;
	height: 420px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0) 70%);
	pointer-events: none;
}

.live-games-area .container {
	position: relative;
	z-index: 2;
}

.live-games-area .section-title {
	margin-bottom: 42px;
}

.live-games-area .sub-title {
	color: #d4af37;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 12px;
}

.live-games-area .section-title h2 {
	color: #ffffff;
	font-family: 'DM Sans', sans-serif;
	font-size: 42px;
	font-weight: 900;
	line-height: 1.22;
	text-transform: none;
	margin-bottom: 18px;
}

.live-games-area .section-intro {
	max-width: 860px;
	margin: 0 auto;
	color: #d8dde7;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
}

.live-games-info {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
	margin-bottom: 46px;
}

.live-games-info-item {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	padding: 18px 20px;
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(212, 175, 55, 0.24);
	box-shadow: 0 18px 45px rgba(0, 0, 0, 0.18);
}

.live-games-info-item i {
	color: #d4af37;
	font-size: 20px;
}

.live-games-info-item span {
	color: #ffffff;
	font-size: 14px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.live-games-grid {
	margin-top: 0;
}

.live-game-card {
	position: relative;
	overflow: hidden;
	border-radius: 18px;
	background: #050b16;
	border: 1px solid rgba(212, 175, 55, 0.26);
	box-shadow: 0 18px 42px rgba(0, 0, 0, 0.34);
	transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.live-game-card:before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	border-radius: inherit;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(212, 175, 55, 0.08));
	pointer-events: none;
}

.live-game-card img {
	position: relative;
	z-index: 0;
	width: 100%;
	height: auto;
	display: block;
	border-radius: 18px;
	transition: transform 0.45s ease, filter 0.45s ease;
}

.live-game-card:hover {
	transform: translateY(-7px);
	border-color: rgba(212, 175, 55, 0.72);
	box-shadow: 0 28px 65px rgba(0, 0, 0, 0.46);
}

.live-game-card:hover img {
	transform: scale(1.06);
	filter: brightness(0.58);
}

.live-game-overlay {
	position: absolute;
	inset: 0;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
	text-align: center;
	padding: 18px;
	background:
		linear-gradient(180deg, rgba(5, 11, 22, 0.02) 0%, rgba(5, 11, 22, 0.45) 42%, rgba(5, 11, 22, 0.92) 100%);
	opacity: 1;
	transition: background 0.35s ease;
}

.live-game-card:hover .live-game-overlay {
	background:
		linear-gradient(180deg, rgba(5, 11, 22, 0.16) 0%, rgba(5, 11, 22, 0.62) 42%, rgba(5, 11, 22, 0.95) 100%);
}

.live-game-overlay h4 {
	color: #ffffff;
	font-size: 15px;
	font-weight: 900;
	line-height: 1.25;
	margin-bottom: 12px;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	text-shadow: 0 3px 12px rgba(0, 0, 0, 0.55);
}

.live-game-overlay a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 108px;
	padding: 8px 16px;
	border-radius: 30px;
	background: #d4af37;
	color: #07111f;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 10px 22px rgba(212, 175, 55, 0.24);
	opacity: 0;
	transform: translateY(10px);
	transition: opacity 0.3s ease, transform 0.3s ease, background 0.3s ease;
}

.live-game-card:hover .live-game-overlay a {
	opacity: 1;
	transform: translateY(0);
}

.live-game-overlay a:hover {
	background: #ffffff;
	color: #07111f;
}

.live-games-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	margin-top: 36px;
	padding: 34px 38px;
	border-radius: 24px;
	background: #ffffff;
	border: 1px solid rgba(212, 175, 55, 0.34);
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.25);
}

.live-games-bottom h3 {
	color: #07111f;
	font-size: 26px;
	font-weight: 900;
	margin-bottom: 10px;
}

.live-games-bottom p {
	max-width: 780px;
	color: #5f6878;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
}

.live-games-btn {
	flex: 0 0 auto;
	margin-top: 0;
	padding: 12px 30px;
	border-radius: 50px;
	border-color: #d4af37;
	background: #d4af37;
	color: #07111f;
	font-size: 14px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 12px 28px rgba(212, 175, 55, 0.25);
}

.live-games-btn:hover {
	background: transparent;
	color: #d4af37;
	border-color: #d4af37;
}

.live-games-btn:before,
.live-games-btn:after {
	display: none;
}

@media only screen and (max-width: 991px) {
	.live-games-area .section-title h2 {
		font-size: 34px;
	}

	.live-games-info {
		grid-template-columns: 1fr;
		gap: 14px;
	}

	.live-games-info-item {
		justify-content: flex-start;
	}

	.live-games-bottom {
		flex-direction: column;
		align-items: flex-start;
		padding: 30px 26px;
	}

	.live-games-btn {
		width: 100%;
		text-align: center;
	}
}

@media only screen and (max-width: 575px) {
	.live-games-area .section-title h2 {
		font-size: 28px;
	}

	.live-games-area .section-intro {
		font-size: 15px;
	}

	.live-game-card {
		border-radius: 14px;
	}

	.live-game-card img {
		border-radius: 14px;
	}

	.live-game-overlay {
		padding: 12px;
	}

	.live-game-overlay h4 {
		font-size: 11px;
		margin-bottom: 8px;
	}

	.live-game-overlay a {
		min-width: auto;
		padding: 7px 12px;
		font-size: 10px;
	}

	.live-games-bottom h3 {
		font-size: 22px;
	}
}

/**************************************
 * Feature Games Section
 **************************************/

.feature-games-area {
	position: relative;
	background:
		linear-gradient(180deg, #ffffff 0%, #f7f1e3 50%, #ffffff 100%);
	overflow: hidden;
}

.feature-games-area:before {
	content: "";
	position: absolute;
	top: -180px;
	right: -180px;
	width: 430px;
	height: 430px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, rgba(212, 175, 55, 0) 70%);
	pointer-events: none;
}

.feature-games-area:after {
	content: "";
	position: absolute;
	left: -160px;
	bottom: -160px;
	width: 390px;
	height: 390px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(7, 17, 31, 0.12) 0%, rgba(7, 17, 31, 0) 70%);
	pointer-events: none;
}

.feature-games-area .container {
	position: relative;
	z-index: 2;
}

.feature-games-area .section-title {
	margin-bottom: 42px;
}

.feature-games-area .sub-title {
	color: #d4af37;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 12px;
}

.feature-games-area .section-title h2 {
	color: #07111f;
	font-family: 'DM Sans', sans-serif;
	font-size: 42px;
	font-weight: 900;
	line-height: 1.22;
	text-transform: none;
	margin-bottom: 18px;
}

.feature-games-area .section-intro {
	max-width: 860px;
	margin: 0 auto;
	color: #555f6f;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
}

.feature-games-top {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
	margin-bottom: 46px;
}

.feature-games-top-item {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	padding: 18px 20px;
	border-radius: 18px;
	background: #ffffff;
	border: 1px solid rgba(212, 175, 55, 0.28);
	box-shadow: 0 18px 45px rgba(6, 13, 32, 0.08);
}

.feature-games-top-item i {
	color: #d4af37;
	font-size: 20px;
}

.feature-games-top-item span {
	color: #07111f;
	font-size: 14px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.feature-games-grid {
	margin-top: 0;
}

.feature-game-card {
	position: relative;
	overflow: hidden;
	border-radius: 18px;
	background: #07111f;
	border: 1px solid rgba(212, 175, 55, 0.3);
	box-shadow: 0 18px 42px rgba(6, 13, 32, 0.14);
	transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.feature-game-card:before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	border-radius: inherit;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(212, 175, 55, 0.1));
	pointer-events: none;
}

.feature-game-card img {
	position: relative;
	z-index: 0;
	width: 100%;
	height: auto;
	display: block;
	border-radius: 18px;
	transition: transform 0.45s ease, filter 0.45s ease;
}

.feature-game-card:hover {
	transform: translateY(-7px);
	border-color: rgba(212, 175, 55, 0.75);
	box-shadow: 0 28px 65px rgba(6, 13, 32, 0.22);
}

.feature-game-card:hover img {
	transform: scale(1.06);
	filter: brightness(0.58);
}

.feature-game-overlay {
	position: absolute;
	inset: 0;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
	text-align: center;
	padding: 18px;
	background:
		linear-gradient(180deg, rgba(5, 11, 22, 0.02) 0%, rgba(5, 11, 22, 0.42) 45%, rgba(5, 11, 22, 0.9) 100%);
	transition: background 0.35s ease;
}

.feature-game-card:hover .feature-game-overlay {
	background:
		linear-gradient(180deg, rgba(5, 11, 22, 0.16) 0%, rgba(5, 11, 22, 0.62) 42%, rgba(5, 11, 22, 0.95) 100%);
}

.feature-game-overlay h4 {
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1.25;
	margin-bottom: 12px;
	text-transform: uppercase;
	letter-spacing: 0.35px;
	text-shadow: 0 3px 12px rgba(0, 0, 0, 0.55);
}

.feature-game-overlay a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 108px;
	padding: 8px 16px;
	border-radius: 30px;
	background: #d4af37;
	color: #07111f;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 10px 22px rgba(212, 175, 55, 0.24);
	opacity: 0;
	transform: translateY(10px);
	transition: opacity 0.3s ease, transform 0.3s ease, background 0.3s ease;
}

.feature-game-card:hover .feature-game-overlay a {
	opacity: 1;
	transform: translateY(0);
}

.feature-game-overlay a:hover {
	background: #ffffff;
	color: #07111f;
}

.feature-games-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	margin-top: 36px;
	padding: 34px 38px;
	border-radius: 24px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
	border: 1px solid rgba(212, 175, 55, 0.34);
	box-shadow: 0 24px 60px rgba(6, 13, 32, 0.18);
}

.feature-games-bottom h3 {
	color: #ffffff;
	font-size: 26px;
	font-weight: 900;
	margin-bottom: 10px;
}

.feature-games-bottom p {
	max-width: 780px;
	color: #d8dde7;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
}

.feature-games-btn {
	flex: 0 0 auto;
	margin-top: 0;
	padding: 12px 30px;
	border-radius: 50px;
	border-color: #d4af37;
	background: #d4af37;
	color: #07111f;
	font-size: 14px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 12px 28px rgba(212, 175, 55, 0.25);
}

.feature-games-btn:hover {
	background: transparent;
	color: #d4af37;
	border-color: #d4af37;
}

.feature-games-btn:before,
.feature-games-btn:after {
	display: none;
}

@media only screen and (max-width: 991px) {
	.feature-games-area .section-title h2 {
		font-size: 34px;
	}

	.feature-games-top {
		grid-template-columns: 1fr;
		gap: 14px;
	}

	.feature-games-top-item {
		justify-content: flex-start;
	}

	.feature-games-bottom {
		flex-direction: column;
		align-items: flex-start;
		padding: 30px 26px;
	}

	.feature-games-btn {
		width: 100%;
		text-align: center;
	}
}

@media only screen and (max-width: 575px) {
	.feature-games-area .section-title h2 {
		font-size: 28px;
	}

	.feature-games-area .section-intro {
		font-size: 15px;
	}

	.feature-game-card {
		border-radius: 14px;
	}

	.feature-game-card img {
		border-radius: 14px;
	}

	.feature-game-overlay {
		padding: 12px;
	}

	.feature-game-overlay h4 {
		font-size: 10.5px;
		margin-bottom: 8px;
	}

	.feature-game-overlay a {
		min-width: auto;
		padding: 7px 12px;
		font-size: 10px;
	}

	.feature-games-bottom h3 {
		font-size: 22px;
	}
}

/**************************************
 * Table Games Section
 **************************************/

.table-games-area {
	position: relative;
	background:
		linear-gradient(180deg, #f9f6ed 0%, #ffffff 44%, #f6efe0 100%);
	overflow: hidden;
}

.table-games-area:before {
	content: "";
	position: absolute;
	top: -170px;
	left: -170px;
	width: 420px;
	height: 420px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.18) 0%, rgba(212, 175, 55, 0) 70%);
	pointer-events: none;
}

.table-games-area:after {
	content: "";
	position: absolute;
	right: -160px;
	bottom: -160px;
	width: 390px;
	height: 390px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(7, 17, 31, 0.12) 0%, rgba(7, 17, 31, 0) 70%);
	pointer-events: none;
}

.table-games-area .container {
	position: relative;
	z-index: 2;
}

.table-games-area .section-title {
	margin-bottom: 42px;
}

.table-games-area .sub-title {
	color: #d4af37;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 12px;
}

.table-games-area .section-title h2 {
	color: #07111f;
	font-family: 'DM Sans', sans-serif;
	font-size: 42px;
	font-weight: 900;
	line-height: 1.22;
	text-transform: none;
	margin-bottom: 18px;
}

.table-games-area .section-intro {
	max-width: 850px;
	margin: 0 auto;
	color: #555f6f;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
}

.table-games-top {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
	margin-bottom: 46px;
}

.table-games-top-item {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	padding: 18px 20px;
	border-radius: 18px;
	background: #ffffff;
	border: 1px solid rgba(212, 175, 55, 0.3);
	box-shadow: 0 18px 45px rgba(6, 13, 32, 0.08);
}

.table-games-top-item i {
	color: #d4af37;
	font-size: 20px;
}

.table-games-top-item span {
	color: #07111f;
	font-size: 14px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.table-games-grid {
	margin-top: 0;
}

.table-game-card {
	position: relative;
	overflow: hidden;
	border-radius: 18px;
	background: #07111f;
	border: 1px solid rgba(212, 175, 55, 0.3);
	box-shadow: 0 18px 42px rgba(6, 13, 32, 0.14);
	transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.table-game-card:before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	border-radius: inherit;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(212, 175, 55, 0.08));
	pointer-events: none;
}

.table-game-card img {
	position: relative;
	z-index: 0;
	width: 100%;
	height: auto;
	display: block;
	border-radius: 18px;
	transition: transform 0.45s ease, filter 0.45s ease;
}

.table-game-card:hover {
	transform: translateY(-7px);
	border-color: rgba(212, 175, 55, 0.75);
	box-shadow: 0 28px 65px rgba(6, 13, 32, 0.22);
}

.table-game-card:hover img {
	transform: scale(1.06);
	filter: brightness(0.58);
}

.table-game-overlay {
	position: absolute;
	inset: 0;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
	text-align: center;
	padding: 18px;
	background:
		linear-gradient(180deg, rgba(5, 11, 22, 0.02) 0%, rgba(5, 11, 22, 0.38) 45%, rgba(5, 11, 22, 0.9) 100%);
	transition: background 0.35s ease;
}

.table-game-card:hover .table-game-overlay {
	background:
		linear-gradient(180deg, rgba(5, 11, 22, 0.16) 0%, rgba(5, 11, 22, 0.62) 42%, rgba(5, 11, 22, 0.95) 100%);
}

.table-game-overlay h4 {
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1.25;
	margin-bottom: 12px;
	text-transform: uppercase;
	letter-spacing: 0.35px;
	text-shadow: 0 3px 12px rgba(0, 0, 0, 0.55);
}

.table-game-overlay a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 108px;
	padding: 8px 16px;
	border-radius: 30px;
	background: #d4af37;
	color: #07111f;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 10px 22px rgba(212, 175, 55, 0.24);
	opacity: 0;
	transform: translateY(10px);
	transition: opacity 0.3s ease, transform 0.3s ease, background 0.3s ease;
}

.table-game-card:hover .table-game-overlay a {
	opacity: 1;
	transform: translateY(0);
}

.table-game-overlay a:hover {
	background: #ffffff;
	color: #07111f;
}

.table-games-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	margin-top: 36px;
	padding: 34px 38px;
	border-radius: 24px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
	border: 1px solid rgba(212, 175, 55, 0.34);
	box-shadow: 0 24px 60px rgba(6, 13, 32, 0.18);
}

.table-games-bottom h3 {
	color: #ffffff;
	font-size: 26px;
	font-weight: 900;
	margin-bottom: 10px;
}

.table-games-bottom p {
	max-width: 780px;
	color: #d8dde7;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
}

.table-games-btn {
	flex: 0 0 auto;
	margin-top: 0;
	padding: 12px 30px;
	border-radius: 50px;
	border-color: #d4af37;
	background: #d4af37;
	color: #07111f;
	font-size: 14px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 12px 28px rgba(212, 175, 55, 0.25);
}

.table-games-btn:hover {
	background: transparent;
	color: #d4af37;
	border-color: #d4af37;
}

.table-games-btn:before,
.table-games-btn:after {
	display: none;
}

@media only screen and (max-width: 991px) {
	.table-games-area .section-title h2 {
		font-size: 34px;
	}

	.table-games-top {
		grid-template-columns: 1fr;
		gap: 14px;
	}

	.table-games-top-item {
		justify-content: flex-start;
	}

	.table-games-bottom {
		flex-direction: column;
		align-items: flex-start;
		padding: 30px 26px;
	}

	.table-games-btn {
		width: 100%;
		text-align: center;
	}
}

@media only screen and (max-width: 575px) {
	.table-games-area .section-title h2 {
		font-size: 28px;
	}

	.table-games-area .section-intro {
		font-size: 15px;
	}

	.table-game-card {
		border-radius: 14px;
	}

	.table-game-card img {
		border-radius: 14px;
	}

	.table-game-overlay {
		padding: 12px;
	}

	.table-game-overlay h4 {
		font-size: 10.5px;
		margin-bottom: 8px;
	}

	.table-game-overlay a {
		min-width: auto;
		padding: 7px 12px;
		font-size: 10px;
	}

	.table-games-bottom h3 {
		font-size: 22px;
	}
}

/**************************************
 * Jackpot Games Section
 **************************************/

.jackpot-games-area {
	position: relative;
	background:
		linear-gradient(180deg, #07111f 0%, #111c2f 48%, #07111f 100%);
	overflow: hidden;
}

.jackpot-games-area:before {
	content: "";
	position: absolute;
	top: -190px;
	right: -190px;
	width: 460px;
	height: 460px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.22) 0%, rgba(212, 175, 55, 0) 70%);
	pointer-events: none;
}

.jackpot-games-area:after {
	content: "";
	position: absolute;
	left: -170px;
	bottom: -170px;
	width: 410px;
	height: 410px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0) 70%);
	pointer-events: none;
}

.jackpot-games-area .container {
	position: relative;
	z-index: 2;
}

.jackpot-games-area .section-title {
	margin-bottom: 42px;
}

.jackpot-games-area .sub-title {
	color: #d4af37;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 12px;
}

.jackpot-games-area .section-title h2 {
	color: #ffffff;
	font-family: 'DM Sans', sans-serif;
	font-size: 42px;
	font-weight: 900;
	line-height: 1.22;
	text-transform: none;
	margin-bottom: 18px;
}

.jackpot-games-area .section-intro {
	max-width: 870px;
	margin: 0 auto;
	color: #d8dde7;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
}

.jackpot-games-top {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
	margin-bottom: 46px;
}

.jackpot-games-top-item {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	padding: 18px 20px;
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(212, 175, 55, 0.3);
	box-shadow: 0 18px 45px rgba(0, 0, 0, 0.22);
}

.jackpot-games-top-item i {
	color: #d4af37;
	font-size: 20px;
}

.jackpot-games-top-item span {
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.jackpot-games-grid {
	margin-top: 0;
}

.jackpot-game-card {
	position: relative;
	overflow: hidden;
	border-radius: 18px;
	background: #050b16;
	border: 1px solid rgba(212, 175, 55, 0.32);
	box-shadow: 0 18px 42px rgba(0, 0, 0, 0.34);
	transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.jackpot-game-card:before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	border-radius: inherit;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.09), rgba(212, 175, 55, 0.1));
	pointer-events: none;
}

.jackpot-game-card img {
	position: relative;
	z-index: 0;
	width: 100%;
	height: auto;
	display: block;
	border-radius: 18px;
	transition: transform 0.45s ease, filter 0.45s ease;
}

.jackpot-game-card:hover {
	transform: translateY(-7px);
	border-color: rgba(212, 175, 55, 0.78);
	box-shadow: 0 28px 65px rgba(0, 0, 0, 0.46);
}

.jackpot-game-card:hover img {
	transform: scale(1.06);
	filter: brightness(0.58);
}

.jackpot-game-overlay {
	position: absolute;
	inset: 0;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
	text-align: center;
	padding: 18px;
	background:
		linear-gradient(180deg, rgba(5, 11, 22, 0.02) 0%, rgba(5, 11, 22, 0.44) 42%, rgba(5, 11, 22, 0.92) 100%);
	transition: background 0.35s ease;
}

.jackpot-game-card:hover .jackpot-game-overlay {
	background:
		linear-gradient(180deg, rgba(5, 11, 22, 0.16) 0%, rgba(5, 11, 22, 0.64) 42%, rgba(5, 11, 22, 0.96) 100%);
}

.jackpot-game-overlay h4 {
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1.25;
	margin-bottom: 12px;
	text-transform: uppercase;
	letter-spacing: 0.35px;
	text-shadow: 0 3px 12px rgba(0, 0, 0, 0.58);
}

.jackpot-game-overlay a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 108px;
	padding: 8px 16px;
	border-radius: 30px;
	background: #d4af37;
	color: #07111f;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 10px 22px rgba(212, 175, 55, 0.26);
	opacity: 0;
	transform: translateY(10px);
	transition: opacity 0.3s ease, transform 0.3s ease, background 0.3s ease;
}

.jackpot-game-card:hover .jackpot-game-overlay a {
	opacity: 1;
	transform: translateY(0);
}

.jackpot-game-overlay a:hover {
	background: #ffffff;
	color: #07111f;
}

.jackpot-games-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	margin-top: 36px;
	padding: 34px 38px;
	border-radius: 24px;
	background: #ffffff;
	border: 1px solid rgba(212, 175, 55, 0.34);
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.25);
}

.jackpot-games-bottom h3 {
	color: #07111f;
	font-size: 26px;
	font-weight: 900;
	margin-bottom: 10px;
}

.jackpot-games-bottom p {
	max-width: 780px;
	color: #5f6878;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
}

.jackpot-games-btn {
	flex: 0 0 auto;
	margin-top: 0;
	padding: 12px 30px;
	border-radius: 50px;
	border-color: #d4af37;
	background: #d4af37;
	color: #07111f;
	font-size: 14px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 12px 28px rgba(212, 175, 55, 0.25);
}

.jackpot-games-btn:hover {
	background: transparent;
	color: #d4af37;
	border-color: #d4af37;
}

.jackpot-games-btn:before,
.jackpot-games-btn:after {
	display: none;
}

@media only screen and (max-width: 991px) {
	.jackpot-games-area .section-title h2 {
		font-size: 34px;
	}

	.jackpot-games-top {
		grid-template-columns: 1fr;
		gap: 14px;
	}

	.jackpot-games-top-item {
		justify-content: flex-start;
	}

	.jackpot-games-bottom {
		flex-direction: column;
		align-items: flex-start;
		padding: 30px 26px;
	}

	.jackpot-games-btn {
		width: 100%;
		text-align: center;
	}
}

@media only screen and (max-width: 575px) {
	.jackpot-games-area .section-title h2 {
		font-size: 28px;
	}

	.jackpot-games-area .section-intro {
		font-size: 15px;
	}

	.jackpot-game-card {
		border-radius: 14px;
	}

	.jackpot-game-card img {
		border-radius: 14px;
	}

	.jackpot-game-overlay {
		padding: 12px;
	}

	.jackpot-game-overlay h4 {
		font-size: 10.5px;
		margin-bottom: 8px;
	}

	.jackpot-game-overlay a {
		min-width: auto;
		padding: 7px 12px;
		font-size: 10px;
	}

	.jackpot-games-bottom h3 {
		font-size: 22px;
	}
}

/**************************************
 * About Section
 **************************************/

.about-area {
	position: relative;
	background:
		linear-gradient(180deg, #ffffff 0%, #f8f4ea 48%, #ffffff 100%);
	overflow: hidden;
}

.about-area .container {
	position: relative;
	z-index: 2;
}

.about-decor {
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
	z-index: 1;
}

.about-decor-one {
	top: -180px;
	right: -180px;
	width: 460px;
	height: 460px;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, rgba(212, 175, 55, 0) 70%);
}

.about-decor-two {
	left: -170px;
	bottom: -170px;
	width: 410px;
	height: 410px;
	background: radial-gradient(circle, rgba(7, 17, 31, 0.12) 0%, rgba(7, 17, 31, 0) 70%);
}

.about-area .section-title {
	margin-bottom: 48px;
}

.about-area .sub-title {
	color: #d4af37;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 12px;
}

.about-area .section-title h2 {
	color: #07111f;
	font-family: 'DM Sans', sans-serif;
	font-size: 42px;
	font-weight: 900;
	line-height: 1.22;
	text-transform: none;
	margin-bottom: 18px;
}

.about-area .section-intro {
	max-width: 920px;
	margin: 0 auto;
	color: #555f6f;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
}

.about-hero-panel {
	display: grid;
	grid-template-columns: minmax(0, 1.7fr) minmax(280px, 0.8fr);
	gap: 30px;
	padding: 42px;
	border-radius: 30px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
	border: 1px solid rgba(212, 175, 55, 0.36);
	box-shadow: 0 28px 70px rgba(6, 13, 32, 0.2);
	margin-bottom: 34px;
	overflow: hidden;
	position: relative;
}

.about-hero-panel:before {
	content: "";
	position: absolute;
	top: -120px;
	right: -120px;
	width: 320px;
	height: 320px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.18) 0%, rgba(212, 175, 55, 0) 70%);
}

.about-hero-content,
.about-hero-side {
	position: relative;
	z-index: 2;
}

.about-label,
.about-small-title {
	display: inline-block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.8px;
	margin-bottom: 12px;
}

.about-hero-content h3,
.about-text-block h3,
.about-table-heading h3,
.about-process-title h3,
.about-highlight-content h3 {
	color: #07111f;
	font-size: 30px;
	font-weight: 900;
	line-height: 1.25;
	margin-bottom: 18px;
}

.about-hero-content h3 {
	color: #ffffff;
	font-size: 34px;
}

.about-hero-content p {
	color: #d8dde7;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin-bottom: 16px;
}

.about-hero-content p:last-child {
	margin-bottom: 0;
}

.about-hero-content strong {
	color: #ffffff;
	font-weight: 900;
}

.about-hero-side {
	display: grid;
	gap: 16px;
	align-content: center;
}

.about-score-card {
	padding: 22px 24px;
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(212, 175, 55, 0.28);
}

.about-score-card span {
	display: block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 8px;
}

.about-score-card strong {
	display: block;
	color: #ffffff;
	font-size: 19px;
	font-weight: 900;
	line-height: 1.3;
}

.about-card-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px;
	margin-bottom: 34px;
}

.about-card {
	position: relative;
	padding: 30px 24px;
	border-radius: 24px;
	background: #ffffff;
	border: 1px solid rgba(212, 175, 55, 0.28);
	box-shadow: 0 18px 45px rgba(6, 13, 32, 0.08);
	overflow: hidden;
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.about-card:before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, rgba(212, 175, 55, 0.12), rgba(212, 175, 55, 0));
	opacity: 0;
	transition: opacity 0.3s ease;
}

.about-card:hover {
	transform: translateY(-6px);
	border-color: rgba(212, 175, 55, 0.58);
	box-shadow: 0 26px 58px rgba(6, 13, 32, 0.13);
}

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

.about-card-icon,
.about-card h4,
.about-card p {
	position: relative;
	z-index: 2;
}

.about-card-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 22px;
	margin-bottom: 18px;
}

.about-card h4 {
	color: #07111f;
	font-size: 20px;
	font-weight: 900;
	margin-bottom: 12px;
}

.about-card p {
	color: #5f6878;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.75;
}

.about-two-column {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(340px, 0.9fr);
	gap: 30px;
	margin-bottom: 34px;
}

.about-text-block,
.about-feature-box,
.about-table-wrap,
.about-process,
.about-note {
	border-radius: 26px;
	background: #ffffff;
	border: 1px solid rgba(212, 175, 55, 0.28);
	box-shadow: 0 18px 45px rgba(6, 13, 32, 0.08);
}

.about-text-block {
	padding: 36px;
}

.about-text-block p {
	color: #555f6f;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin-bottom: 22px;
}

.about-check-list {
	display: grid;
	gap: 14px;
	margin-top: 20px;
}

.about-check-list li {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	color: #4f5968;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.55;
}

.about-check-list i {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: rgba(212, 175, 55, 0.14);
	color: #d4af37;
	font-size: 12px;
	margin-top: 1px;
}

.about-feature-box {
	padding: 30px;
	background:
		linear-gradient(180deg, #ffffff 0%, #fbf7ed 100%);
}

.about-feature-header {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 22px;
}

.about-feature-header i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 20px;
}

.about-feature-header h4 {
	color: #07111f;
	font-size: 22px;
	font-weight: 900;
	margin: 0;
}

.about-feature-list {
	display: grid;
	gap: 16px;
}

.about-feature-item {
	display: grid;
	grid-template-columns: 48px minmax(0, 1fr);
	gap: 14px;
	align-items: flex-start;
	padding: 18px;
	border-radius: 18px;
	background: #ffffff;
	border: 1px solid rgba(7, 17, 31, 0.08);
}

.about-feature-item > span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: rgba(212, 175, 55, 0.16);
	color: #a77f13;
	font-size: 13px;
	font-weight: 900;
}

.about-feature-item h5 {
	color: #07111f;
	font-size: 17px;
	font-weight: 900;
	margin-bottom: 6px;
}

.about-feature-item p {
	color: #5f6878;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.65;
	margin: 0;
}

.about-table-wrap {
	padding: 34px;
	margin-bottom: 34px;
}

.about-table-heading {
	text-align: center;
	margin-bottom: 24px;
}

.about-info-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	border-radius: 18px;
	background: #ffffff;
	border: 1px solid rgba(7, 17, 31, 0.08);
}

.about-info-table th,
.about-info-table td {
	padding: 18px 20px;
	border-bottom: 1px solid rgba(7, 17, 31, 0.08);
	vertical-align: top;
	font-size: 15px;
	line-height: 1.6;
}

.about-info-table tr:last-child th,
.about-info-table tr:last-child td {
	border-bottom: none;
}

.about-info-table th {
	width: 32%;
	color: #07111f;
	background: #f7f1e3;
	font-weight: 900;
}

.about-info-table td {
	color: #5f6878;
	font-weight: 600;
	background: #ffffff;
}

.about-columns-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
	margin-bottom: 34px;
}

.about-list-box {
	padding: 30px 28px;
	border-radius: 24px;
	background: #ffffff;
	border: 1px solid rgba(212, 175, 55, 0.28);
	box-shadow: 0 18px 45px rgba(6, 13, 32, 0.08);
}

.about-list-box h4 {
	color: #07111f;
	font-size: 20px;
	font-weight: 900;
	margin-bottom: 18px;
}

.about-list-box ul {
	display: grid;
	gap: 12px;
	padding-left: 0;
	margin: 0;
	list-style: none;
}

.about-list-box li {
	position: relative;
	color: #5f6878;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.6;
	padding-left: 22px;
}

.about-list-box li:before {
	content: "";
	position: absolute;
	left: 0;
	top: 10px;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #d4af37;
}

.about-process {
	padding: 34px;
	margin-bottom: 34px;
}

.about-process-title {
	text-align: center;
	margin-bottom: 28px;
}

.about-process-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px;
}

.about-process-step {
	position: relative;
	padding: 28px 22px;
	border-radius: 22px;
	background:
		linear-gradient(180deg, #ffffff 0%, #fbf7ed 100%);
	border: 1px solid rgba(212, 175, 55, 0.25);
}

.about-process-step span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 16px;
	font-weight: 900;
	margin-bottom: 18px;
}

.about-process-step h4 {
	color: #07111f;
	font-size: 18px;
	font-weight: 900;
	margin-bottom: 10px;
}

.about-process-step p {
	color: #5f6878;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.7;
	margin: 0;
}

.about-highlight-strip {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	padding: 38px 42px;
	border-radius: 28px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
	border: 1px solid rgba(212, 175, 55, 0.34);
	box-shadow: 0 24px 60px rgba(6, 13, 32, 0.2);
	margin-bottom: 24px;
}

.about-highlight-content span {
	display: inline-block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.8px;
	margin-bottom: 10px;
}

.about-highlight-content h3 {
	color: #ffffff;
	font-size: 28px;
	margin-bottom: 12px;
}

.about-highlight-content p {
	max-width: 820px;
	color: #d8dde7;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
	margin: 0;
}

.about-cta-btn {
	flex: 0 0 auto;
	margin-top: 0;
	padding: 12px 32px;
	border-radius: 50px;
	border-color: #d4af37;
	background: #d4af37;
	color: #07111f;
	font-size: 14px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 12px 28px rgba(212, 175, 55, 0.25);
}

.about-cta-btn:hover {
	background: transparent;
	color: #d4af37;
	border-color: #d4af37;
}

.about-cta-btn:before,
.about-cta-btn:after {
	display: none;
}

.about-note {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 22px 24px;
	background: #fffaf0;
}

.about-note i {
	color: #d4af37;
	font-size: 20px;
	margin-top: 4px;
}

.about-note p {
	color: #5f6878;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.7;
	margin: 0;
}

@media only screen and (max-width: 991px) {
	.about-area .section-title h2 {
		font-size: 34px;
	}

	.about-hero-panel,
	.about-two-column {
		grid-template-columns: 1fr;
	}

	.about-hero-panel {
		padding: 34px 28px;
	}

	.about-card-grid,
	.about-columns-grid,
	.about-process-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.about-highlight-strip {
		flex-direction: column;
		align-items: flex-start;
		padding: 34px 28px;
	}

	.about-cta-btn {
		width: 100%;
		text-align: center;
	}
}

@media only screen and (max-width: 767px) {
	.about-card-grid,
	.about-columns-grid,
	.about-process-grid,
	.about-feature-row {
		grid-template-columns: 1fr;
	}

	.about-info-table th,
	.about-info-table td {
		display: block;
		width: 100%;
	}

	.about-info-table th {
		border-bottom: none;
		padding-bottom: 8px;
	}

	.about-info-table td {
		padding-top: 8px;
	}
}

@media only screen and (max-width: 575px) {
	.about-area .section-title h2 {
		font-size: 28px;
	}

	.about-area .section-intro {
		font-size: 15px;
	}

	.about-hero-content h3 {
		font-size: 27px;
	}

	.about-hero-panel,
	.about-text-block,
	.about-feature-box,
	.about-table-wrap,
	.about-process {
		padding: 28px 22px;
		border-radius: 22px;
	}

	.about-hero-content p,
	.about-text-block p {
		font-size: 15px;
	}

	.about-card,
	.about-list-box {
		padding: 26px 22px;
	}

	.about-highlight-content h3 {
		font-size: 24px;
	}

	.about-note {
		padding: 20px;
	}
}

/**************************************
 * Advantages Section
 **************************************/

.advantages-area {
	position: relative;
	background:
		linear-gradient(180deg, #07111f 0%, #101b2d 46%, #07111f 100%);
	overflow: hidden;
}

.advantages-area .container {
	position: relative;
	z-index: 2;
}

.advantages-decor {
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
	z-index: 1;
}

.advantages-decor-one {
	top: -190px;
	right: -190px;
	width: 470px;
	height: 470px;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.22) 0%, rgba(212, 175, 55, 0) 70%);
}

.advantages-decor-two {
	left: -170px;
	bottom: -170px;
	width: 420px;
	height: 420px;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0) 70%);
}

.advantages-area .section-title {
	margin-bottom: 46px;
}

.advantages-area .sub-title {
	color: #d4af37;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 12px;
}

.advantages-area .section-title h2 {
	color: #ffffff;
	font-family: 'DM Sans', sans-serif;
	font-size: 42px;
	font-weight: 900;
	line-height: 1.22;
	text-transform: none;
	margin-bottom: 18px;
}

.advantages-area .section-intro {
	max-width: 900px;
	margin: 0 auto;
	color: #d8dde7;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
}

.advantages-main-panel {
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) minmax(300px, 0.9fr);
	gap: 30px;
	align-items: center;
	padding: 42px;
	margin-bottom: 34px;
	border-radius: 30px;
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(212, 175, 55, 0.32);
	box-shadow: 0 28px 70px rgba(0, 0, 0, 0.28);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

.advantages-label,
.advantages-small-title {
	display: inline-block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.8px;
	margin-bottom: 12px;
}

.advantages-main-content h3,
.advantages-comparison-heading h3,
.advantages-highlight-content h3 {
	color: #ffffff;
	font-size: 30px;
	font-weight: 900;
	line-height: 1.25;
	margin-bottom: 16px;
}

.advantages-main-content p {
	color: #d8dde7;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin: 0;
}

.advantages-main-stats {
	display: grid;
	gap: 16px;
}

.advantages-stat {
	padding: 22px 24px;
	border-radius: 20px;
	background: #ffffff;
	border: 1px solid rgba(212, 175, 55, 0.32);
	box-shadow: 0 18px 45px rgba(0, 0, 0, 0.16);
}

.advantages-stat strong {
	display: block;
	color: #07111f;
	font-size: 24px;
	font-weight: 900;
	line-height: 1.2;
	margin-bottom: 6px;
}

.advantages-stat span {
	display: block;
	color: #5f6878;
	font-size: 14px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.advantages-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px;
	margin-bottom: 34px;
}

.advantage-card {
	position: relative;
	padding: 30px 24px;
	border-radius: 24px;
	background: #ffffff;
	border: 1px solid rgba(212, 175, 55, 0.28);
	box-shadow: 0 18px 45px rgba(0, 0, 0, 0.18);
	overflow: hidden;
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.advantage-card:before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, rgba(212, 175, 55, 0.13), rgba(212, 175, 55, 0));
	opacity: 0;
	transition: opacity 0.3s ease;
}

.advantage-card:hover {
	transform: translateY(-7px);
	border-color: rgba(212, 175, 55, 0.62);
	box-shadow: 0 28px 60px rgba(0, 0, 0, 0.26);
}

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

.advantage-icon,
.advantage-card h4,
.advantage-card p {
	position: relative;
	z-index: 2;
}

.advantage-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	margin-bottom: 18px;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 22px;
}

.advantage-card h4 {
	color: #07111f;
	font-size: 19px;
	font-weight: 900;
	line-height: 1.3;
	margin-bottom: 12px;
}

.advantage-card p {
	color: #5f6878;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.75;
	margin: 0;
}

.advantages-comparison {
	padding: 34px;
	margin-bottom: 34px;
	border-radius: 28px;
	background: #ffffff;
	border: 1px solid rgba(212, 175, 55, 0.34);
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.22);
}

.advantages-comparison-heading {
	text-align: center;
	margin-bottom: 26px;
}

.advantages-comparison-heading h3 {
	color: #07111f;
}

.advantages-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	border-radius: 18px;
	background: #ffffff;
	border: 1px solid rgba(7, 17, 31, 0.08);
}

.advantages-table th,
.advantages-table td {
	padding: 18px 20px;
	border-bottom: 1px solid rgba(7, 17, 31, 0.08);
	vertical-align: top;
	font-size: 15px;
	line-height: 1.6;
}

.advantages-table tr:last-child td {
	border-bottom: none;
}

.advantages-table th {
	color: #07111f;
	background: #f7f1e3;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
}

.advantages-table td {
	color: #5f6878;
	font-weight: 600;
	background: #ffffff;
}

.advantages-table td:first-child {
	color: #07111f;
	font-weight: 900;
	background: #fbf7ed;
	width: 22%;
}

.advantages-highlight {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	padding: 38px 42px;
	border-radius: 28px;
	background: #ffffff;
	border: 1px solid rgba(212, 175, 55, 0.34);
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.22);
}

.advantages-highlight-content span {
	display: inline-block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.8px;
	margin-bottom: 10px;
}

.advantages-highlight-content h3 {
	color: #07111f;
	font-size: 28px;
	margin-bottom: 12px;
}

.advantages-highlight-content p {
	max-width: 820px;
	color: #5f6878;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
	margin: 0;
}

.advantages-cta-btn {
	flex: 0 0 auto;
	margin-top: 0;
	padding: 12px 32px;
	border-radius: 50px;
	border-color: #d4af37;
	background: #d4af37;
	color: #07111f;
	font-size: 14px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 12px 28px rgba(212, 175, 55, 0.25);
}

.advantages-cta-btn:hover {
	background: transparent;
	color: #d4af37;
	border-color: #d4af37;
}

.advantages-cta-btn:before,
.advantages-cta-btn:after {
	display: none;
}

@media only screen and (max-width: 1199px) {
	.advantages-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media only screen and (max-width: 991px) {
	.advantages-area .section-title h2 {
		font-size: 34px;
	}

	.advantages-main-panel {
		grid-template-columns: 1fr;
		padding: 34px 28px;
	}

	.advantages-highlight {
		flex-direction: column;
		align-items: flex-start;
		padding: 34px 28px;
	}

	.advantages-cta-btn {
		width: 100%;
		text-align: center;
	}
}

@media only screen and (max-width: 767px) {
	.advantages-grid {
		grid-template-columns: 1fr;
	}

	.advantages-table th,
	.advantages-table td {
		display: block;
		width: 100%;
	}

	.advantages-table th {
		display: none;
	}

	.advantages-table td:first-child {
		width: 100%;
		border-bottom: none;
		padding-bottom: 8px;
	}

	.advantages-table td:nth-child(2):before {
		content: "Onsite Casino";
		display: block;
		color: #07111f;
		font-size: 12px;
		font-weight: 900;
		text-transform: uppercase;
		letter-spacing: 0.5px;
		margin-bottom: 6px;
	}

	.advantages-table td:nth-child(3):before {
		content: "Online Casino Access";
		display: block;
		color: #07111f;
		font-size: 12px;
		font-weight: 900;
		text-transform: uppercase;
		letter-spacing: 0.5px;
		margin-bottom: 6px;
	}
}

@media only screen and (max-width: 575px) {
	.advantages-area .section-title h2 {
		font-size: 28px;
	}

	.advantages-area .section-intro {
		font-size: 15px;
	}

	.advantages-main-content h3,
	.advantages-comparison-heading h3,
	.advantages-highlight-content h3 {
		font-size: 24px;
	}

	.advantages-main-panel,
	.advantages-comparison {
		padding: 28px 22px;
		border-radius: 22px;
	}

	.advantage-card {
		padding: 26px 22px;
	}

	.advantages-highlight {
		padding: 28px 22px;
		border-radius: 22px;
	}
}

/**************************************
 * Getting Started Section
 **************************************/

.start-area {
	position: relative;
	background:
		linear-gradient(180deg, #ffffff 0%, #f8f4ea 48%, #ffffff 100%);
	overflow: hidden;
}

.start-area .container {
	position: relative;
	z-index: 2;
}

.start-decor {
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
	z-index: 1;
}

.start-decor-one {
	top: -180px;
	right: -180px;
	width: 450px;
	height: 450px;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, rgba(212, 175, 55, 0) 70%);
}

.start-decor-two {
	left: -160px;
	bottom: -160px;
	width: 390px;
	height: 390px;
	background: radial-gradient(circle, rgba(7, 17, 31, 0.12) 0%, rgba(7, 17, 31, 0) 70%);
}

.start-area .section-title {
	margin-bottom: 48px;
}

.start-area .sub-title {
	color: #d4af37;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 12px;
}

.start-area .section-title h2 {
	color: #07111f;
	font-family: 'DM Sans', sans-serif;
	font-size: 42px;
	font-weight: 900;
	line-height: 1.22;
	text-transform: none;
	margin-bottom: 18px;
}

.start-area .section-intro {
	max-width: 900px;
	margin: 0 auto;
	color: #555f6f;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
}

.start-layout {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(340px, 0.85fr);
	gap: 34px;
	align-items: stretch;
}

.start-content-panel,
.start-bonus-card {
	position: relative;
	border-radius: 30px;
	box-shadow: 0 24px 60px rgba(6, 13, 32, 0.14);
	overflow: hidden;
}

.start-content-panel {
	padding: 42px;
	background: #ffffff;
	border: 1px solid rgba(212, 175, 55, 0.3);
}

.start-content-panel:before {
	content: "";
	position: absolute;
	top: -130px;
	right: -130px;
	width: 310px;
	height: 310px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.18) 0%, rgba(212, 175, 55, 0) 70%);
	pointer-events: none;
}

.start-label,
.start-bonus-label {
	position: relative;
	z-index: 2;
	display: inline-block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.8px;
	margin-bottom: 12px;
}

.start-content-panel h3 {
	position: relative;
	z-index: 2;
	color: #07111f;
	font-size: 32px;
	font-weight: 900;
	line-height: 1.25;
	margin-bottom: 16px;
}

.start-content-panel > p {
	position: relative;
	z-index: 2;
	color: #5f6878;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin-bottom: 30px;
}

.start-steps {
	position: relative;
	z-index: 2;
	display: grid;
	gap: 18px;
}

.start-step {
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr);
	gap: 18px;
	padding: 22px;
	border-radius: 22px;
	background: linear-gradient(180deg, #ffffff 0%, #fbf7ed 100%);
	border: 1px solid rgba(212, 175, 55, 0.26);
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.start-step:hover {
	transform: translateY(-5px);
	border-color: rgba(212, 175, 55, 0.58);
	box-shadow: 0 18px 45px rgba(6, 13, 32, 0.1);
}

.start-step-number {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 15px;
	font-weight: 900;
	letter-spacing: 0.5px;
}

.start-step-content h4 {
	color: #07111f;
	font-size: 19px;
	font-weight: 900;
	line-height: 1.3;
	margin-bottom: 8px;
}

.start-step-content p {
	color: #5f6878;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.65;
	margin: 0;
}

.start-bonus-panel {
	display: flex;
}

.start-bonus-card {
	width: 100%;
	padding: 42px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
	border: 1px solid rgba(212, 175, 55, 0.38);
	color: #ffffff;
}

.start-bonus-card:before {
	content: "";
	position: absolute;
	top: -120px;
	right: -120px;
	width: 330px;
	height: 330px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.24) 0%, rgba(212, 175, 55, 0) 70%);
	pointer-events: none;
}

.start-bonus-card:after {
	content: "";
	position: absolute;
	left: -90px;
	bottom: -90px;
	width: 220px;
	height: 220px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0) 70%);
	pointer-events: none;
}

.start-bonus-card h3,
.start-bonus-value,
.start-bonus-card p,
.start-bonus-list,
.start-bonus-btn,
.start-bonus-note {
	position: relative;
	z-index: 2;
}

.start-bonus-card h3 {
	color: #ffffff;
	font-size: 26px;
	font-weight: 800;
	line-height: 1.2;
	margin-bottom: 12px;
}

.start-bonus-value {
	margin-bottom: 22px;
	padding: 24px;
	border-radius: 24px;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(212, 175, 55, 0.32);
}

.start-bonus-value strong {
	display: block;
	color: #d4af37;
	font-size: 46px;
	font-weight: 1000;
	line-height: 1;
	letter-spacing: -1px;
	margin-bottom: 8px;
}

.start-bonus-value span {
	display: block;
	color: #ffffff;
	font-size: 22px;
	font-weight: 900;
	line-height: 1.25;
}

.start-bonus-card p {
	color: #d8dde7;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
	margin-bottom: 22px;
}

.start-bonus-list {
	display: grid;
	gap: 12px;
	margin-bottom: 28px;
}

.start-bonus-list li {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	color: #ffffff;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.5;
}

.start-bonus-list i {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: rgba(212, 175, 55, 0.16);
	color: #d4af37;
	font-size: 12px;
	margin-top: 1px;
}

.start-bonus-btn {
	width: 100%;
	margin-top: 0;
	padding: 13px 30px;
	border-radius: 50px;
	border-color: #d4af37;
	background: #d4af37;
	color: #07111f;
	font-size: 14px;
	font-weight: 900;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 12px 28px rgba(212, 175, 55, 0.28);
}

.start-bonus-btn:hover {
	background: transparent;
	color: #d4af37;
	border-color: #d4af37;
}

.start-bonus-btn:before,
.start-bonus-btn:after {
	display: none;
}

.start-bonus-note {
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid rgba(255, 255, 255, 0.14);
	color: rgba(255, 255, 255, 0.7);
	font-size: 12px;
	font-weight: 600;
	line-height: 1.6;
}

@media only screen and (max-width: 991px) {
	.start-area .section-title h2 {
		font-size: 34px;
	}

	.start-layout {
		grid-template-columns: 1fr;
	}

	.start-content-panel,
	.start-bonus-card {
		padding: 34px 28px;
	}
}

@media only screen and (max-width: 575px) {
	.start-area .section-title h2 {
		font-size: 28px;
	}

	.start-area .section-intro {
		font-size: 15px;
	}

	.start-content-panel h3 {
		font-size: 26px;
	}

	.start-step {
		grid-template-columns: 1fr;
		gap: 14px;
	}

	.start-bonus-value strong {
		font-size: 38px;
	}

	.start-bonus-value span {
		font-size: 19px;
	}
}

/**************************************
 * Bonuses Section
 **************************************/

.bonuses-area {
	position: relative;
	background:
		linear-gradient(180deg, #07111f 0%, #101b2d 44%, #07111f 100%);
	overflow: hidden;
}

.bonuses-area .container {
	position: relative;
	z-index: 2;
}

.bonuses-decor {
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
	z-index: 1;
}

.bonuses-decor-one {
	top: -190px;
	right: -190px;
	width: 470px;
	height: 470px;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.22) 0%, rgba(212, 175, 55, 0) 70%);
}

.bonuses-decor-two {
	left: -170px;
	bottom: -170px;
	width: 420px;
	height: 420px;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0) 70%);
}

.bonuses-area .section-title {
	margin-bottom: 46px;
}

.bonuses-area .sub-title {
	color: #d4af37;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 12px;
}

.bonuses-area .section-title h2 {
	color: #ffffff;
	font-family: 'DM Sans', sans-serif;
	font-size: 42px;
	font-weight: 900;
	line-height: 1.22;
	text-transform: none;
	margin-bottom: 18px;
}

.bonuses-area .section-intro {
	max-width: 920px;
	margin: 0 auto;
	color: #d8dde7;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
}

.bonuses-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(340px, 0.75fr);
	gap: 30px;
	align-items: stretch;
	margin-bottom: 34px;
}

.bonuses-hero-content,
.bonuses-welcome-card,
.bonuses-info-card,
.bonus-program-card,
.bonuses-rewards-panel,
.bonuses-current-promos,
.bonuses-terms-box {
	border: 1px solid rgba(212, 175, 55, 0.32);
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.24);
}

.bonuses-hero-content {
	padding: 42px;
	border-radius: 30px;
	background: rgba(255, 255, 255, 0.07);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

.bonuses-label,
.bonuses-small-title {
	display: inline-block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.8px;
	margin-bottom: 12px;
}

.bonuses-hero-content h3,
.bonuses-section-heading h3,
.bonuses-rewards-content h3,
.bonuses-current-heading h3,
.bonuses-terms-box h3 {
	color: #ffffff;
	font-size: 30px;
	font-weight: 900;
	line-height: 1.25;
	margin-bottom: 16px;
}

.bonuses-hero-content p {
	color: #d8dde7;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin-bottom: 28px;
}

.bonuses-hero-list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
}

.bonuses-hero-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 16px;
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.1);
}

.bonuses-hero-item i {
	color: #d4af37;
	font-size: 19px;
}

.bonuses-hero-item span {
	color: #ffffff;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.35;
}

.bonuses-welcome-card {
	position: relative;
	padding: 38px;
	border-radius: 30px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.96), rgba(32, 19, 55, 0.96));
	overflow: hidden;
}

.bonuses-welcome-card:before {
	content: "";
	position: absolute;
	top: -120px;
	right: -120px;
	width: 320px;
	height: 320px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.25) 0%, rgba(212, 175, 55, 0) 70%);
	pointer-events: none;
}

.bonuses-welcome-card span,
.bonuses-welcome-card h3,
.bonuses-welcome-card strong,
.bonuses-welcome-card p,
.bonuses-welcome-card a,
.bonuses-welcome-card small {
	position: relative;
	z-index: 2;
}

.bonuses-welcome-card span {
	display: block;
	color: #d4af37;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.4px;
	margin-bottom: 18px;
}

.bonuses-welcome-card h3 {
	color: #ffffff;
	font-size: 24px;
	font-weight: 800;
	margin-bottom: 10px;
}

.bonuses-welcome-card strong {
	display: block;
	color: #d4af37;
	font-size: 46px;
	font-weight: 1000;
	line-height: 1;
	letter-spacing: -1px;
	margin-bottom: 10px;
}

.bonuses-welcome-card p {
	color: #ffffff;
	font-size: 22px;
	font-weight: 900;
	line-height: 1.25;
	margin-bottom: 24px;
}

.bonuses-main-btn {
	width: 100%;
	margin-top: 0;
	padding: 13px 30px;
	border-radius: 50px;
	border-color: #d4af37;
	background: #d4af37;
	color: #07111f;
	font-size: 14px;
	font-weight: 900;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 12px 28px rgba(212, 175, 55, 0.28);
}

.bonuses-main-btn:hover {
	background: transparent;
	color: #d4af37;
	border-color: #d4af37;
}

.bonuses-main-btn:before,
.bonuses-main-btn:after,
.bonuses-cta-btn:before,
.bonuses-cta-btn:after {
	display: none;
}

.bonuses-welcome-card small {
	display: block;
	margin-top: 16px;
	color: rgba(255, 255, 255, 0.68);
	font-size: 12px;
	font-weight: 600;
	line-height: 1.6;
}

.bonuses-tabs-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
	margin-bottom: 44px;
}

.bonuses-info-card {
	position: relative;
	padding: 30px 26px;
	border-radius: 24px;
	background: #ffffff;
	overflow: hidden;
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.bonuses-info-card:before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, rgba(212, 175, 55, 0.13), rgba(212, 175, 55, 0));
	opacity: 0;
	transition: opacity 0.3s ease;
}

.bonuses-info-card:hover {
	transform: translateY(-6px);
	border-color: rgba(212, 175, 55, 0.62);
	box-shadow: 0 28px 60px rgba(0, 0, 0, 0.26);
}

.bonuses-info-card:hover:before {
	opacity: 1;
}

.bonuses-info-icon,
.bonuses-info-card h4,
.bonuses-info-card p {
	position: relative;
	z-index: 2;
}

.bonuses-info-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	margin-bottom: 18px;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 22px;
}

.bonuses-info-card h4 {
	color: #07111f;
	font-size: 20px;
	font-weight: 900;
	margin-bottom: 12px;
}

.bonuses-info-card p {
	color: #5f6878;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.75;
	margin: 0;
}

.bonuses-section-heading {
	text-align: center;
	max-width: 900px;
	margin: 0 auto 34px;
}

.bonuses-section-heading p,
.bonuses-current-heading p {
	color: #d8dde7;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
	margin: 0;
}

.bonus-offers-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
	margin-bottom: 48px;
}

.bonus-offer-card {
	position: relative;
	min-height: 250px;
	padding: 34px;
	border-radius: 28px;
	background: #141923;
	border: 1px solid rgba(212, 175, 55, 0.28);
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.24);
	overflow: hidden;
}

.bonus-offer-card:before {
	content: "";
	position: absolute;
	right: -80px;
	bottom: -80px;
	width: 260px;
	height: 260px;
	border-radius: 50%;
	opacity: 0.72;
	pointer-events: none;
}

.bonus-offer-red:before {
	background: radial-gradient(circle, rgba(255, 48, 48, 0.4) 0%, rgba(255, 48, 48, 0) 70%);
}

.bonus-offer-gold:before {
	background: radial-gradient(circle, rgba(212, 175, 55, 0.42) 0%, rgba(212, 175, 55, 0) 70%);
}

.bonus-offer-green:before {
	background: radial-gradient(circle, rgba(20, 180, 110, 0.4) 0%, rgba(20, 180, 110, 0) 70%);
}

.bonus-offer-purple:before {
	background: radial-gradient(circle, rgba(160, 80, 255, 0.4) 0%, rgba(160, 80, 255, 0) 70%);
}

.bonus-offer-blue:before {
	background: radial-gradient(circle, rgba(50, 130, 255, 0.42) 0%, rgba(50, 130, 255, 0) 70%);
}

.bonus-offer-emerald:before {
	background: radial-gradient(circle, rgba(30, 210, 130, 0.4) 0%, rgba(30, 210, 130, 0) 70%);
}

.bonus-offer-ruby:before {
	background: radial-gradient(circle, rgba(255, 35, 95, 0.4) 0%, rgba(255, 35, 95, 0) 70%);
}

.bonus-offer-violet:before {
	background: radial-gradient(circle, rgba(140, 80, 255, 0.4) 0%, rgba(140, 80, 255, 0) 70%);
}

.bonus-offer-card span,
.bonus-offer-card h4,
.bonus-offer-card p,
.bonus-offer-card a {
	position: relative;
	z-index: 2;
}

.bonus-offer-card span {
	display: block;
	color: #d4af37;
	font-size: 16px;
	font-weight: 800;
	margin-bottom: 18px;
}

.bonus-offer-card h4 {
	color: #ffffff;
	font-size: 34px;
	font-weight: 1000;
	line-height: 1.2;
	margin-bottom: 10px;
}

.bonus-offer-card p {
	color: #d8dde7;
	font-size: 21px;
	font-weight: 800;
	line-height: 1.35;
	margin-bottom: 28px;
}

.bonus-offer-card a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 130px;
	padding: 11px 24px;
	border-radius: 50px;
	border: 2px solid rgba(255, 255, 255, 0.78);
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
}

.bonus-offer-card a:hover {
	background: #d4af37;
	border-color: #d4af37;
	color: #07111f;
}

.bonus-program-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
	margin-bottom: 48px;
}

.bonus-program-card {
	position: relative;
	padding: 30px 26px;
	border-radius: 24px;
	background: #ffffff;
	overflow: hidden;
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.bonus-program-card:hover {
	transform: translateY(-6px);
	border-color: rgba(212, 175, 55, 0.62);
	box-shadow: 0 28px 60px rgba(0, 0, 0, 0.26);
}

.bonus-program-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	margin-bottom: 18px;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 22px;
}

.bonus-program-card h4 {
	color: #07111f;
	font-size: 20px;
	font-weight: 900;
	margin-bottom: 10px;
}

.bonus-program-card strong {
	display: block;
	color: #d4af37;
	font-size: 22px;
	font-weight: 1000;
	line-height: 1.25;
	margin-bottom: 12px;
}

.bonus-program-card p {
	color: #5f6878;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.75;
	margin: 0;
}

.bonuses-rewards-panel {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(360px, 0.85fr);
	gap: 30px;
	padding: 38px;
	border-radius: 30px;
	background: #ffffff;
	margin-bottom: 34px;
}

.bonuses-rewards-content h3,
.bonuses-current-heading h3 {
	color: #07111f;
}

.bonuses-rewards-content p {
	color: #5f6878;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin-bottom: 24px;
}

.bonuses-check-list {
	display: grid;
	gap: 14px;
}

.bonuses-check-list li {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	color: #4f5968;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.55;
}

.bonuses-check-list i {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: rgba(212, 175, 55, 0.14);
	color: #d4af37;
	font-size: 12px;
	margin-top: 1px;
}

.bonuses-rewards-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	border-radius: 18px;
	border: 1px solid rgba(7, 17, 31, 0.08);
}

.bonuses-rewards-table th,
.bonuses-rewards-table td {
	padding: 17px 18px;
	border-bottom: 1px solid rgba(7, 17, 31, 0.08);
	vertical-align: top;
	font-size: 14px;
	line-height: 1.6;
}

.bonuses-rewards-table tr:last-child th,
.bonuses-rewards-table tr:last-child td {
	border-bottom: none;
}

.bonuses-rewards-table th {
	width: 34%;
	color: #07111f;
	background: #f7f1e3;
	font-weight: 900;
}

.bonuses-rewards-table td {
	color: #5f6878;
	font-weight: 600;
	background: #ffffff;
}

.bonuses-current-promos {
	padding: 38px;
	border-radius: 30px;
	background: #ffffff;
	margin-bottom: 34px;
}

.bonuses-current-heading {
	text-align: center;
	max-width: 860px;
	margin: 0 auto 28px;
}

.bonuses-current-heading p {
	color: #5f6878;
}

.bonuses-current-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

.bonuses-current-item {
	padding: 24px 22px;
	border-radius: 20px;
	background: linear-gradient(180deg, #ffffff 0%, #fbf7ed 100%);
	border: 1px solid rgba(212, 175, 55, 0.28);
}

.bonuses-current-item h4 {
	color: #07111f;
	font-size: 18px;
	font-weight: 900;
	margin-bottom: 10px;
}

.bonuses-current-item p {
	color: #5f6878;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.7;
	margin: 0;
}

.bonuses-terms-box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	padding: 38px 42px;
	border-radius: 28px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
}

.bonuses-terms-box p {
	max-width: 850px;
	color: #d8dde7;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
	margin: 0;
}

.bonuses-cta-btn {
	flex: 0 0 auto;
	margin-top: 0;
	padding: 12px 32px;
	border-radius: 50px;
	border-color: #d4af37;
	background: #d4af37;
	color: #07111f;
	font-size: 14px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 12px 28px rgba(212, 175, 55, 0.25);
}

.bonuses-cta-btn:hover {
	background: transparent;
	color: #d4af37;
	border-color: #d4af37;
}

@media only screen and (max-width: 1199px) {
	.bonuses-current-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media only screen and (max-width: 991px) {
	.bonuses-area .section-title h2 {
		font-size: 34px;
	}

	.bonuses-hero,
	.bonuses-rewards-panel {
		grid-template-columns: 1fr;
	}

	.bonuses-hero-list,
	.bonuses-tabs-grid,
	.bonus-program-grid {
		grid-template-columns: 1fr;
	}

	.bonus-offers-grid {
		grid-template-columns: 1fr;
	}

	.bonuses-terms-box {
		flex-direction: column;
		align-items: flex-start;
		padding: 34px 28px;
	}

	.bonuses-cta-btn {
		width: 100%;
		text-align: center;
	}
}

@media only screen and (max-width: 575px) {
	.bonuses-area .section-title h2 {
		font-size: 28px;
	}

	.bonuses-area .section-intro {
		font-size: 15px;
	}

	.bonuses-hero-content,
	.bonuses-welcome-card,
	.bonuses-rewards-panel,
	.bonuses-current-promos {
		padding: 28px 22px;
		border-radius: 22px;
	}

	.bonus-offer-card {
		padding: 28px 22px;
		border-radius: 22px;
	}

	.bonus-offer-card h4 {
		font-size: 27px;
	}

	.bonus-offer-card p {
		font-size: 18px;
	}

	.bonuses-current-grid {
		grid-template-columns: 1fr;
	}

	.bonuses-rewards-table th,
	.bonuses-rewards-table td {
		display: block;
		width: 100%;
	}

	.bonuses-rewards-table th {
		border-bottom: none;
		padding-bottom: 8px;
	}

	.bonuses-rewards-table td {
		padding-top: 8px;
	}

	.bonuses-terms-box h3 {
		font-size: 24px;
	}
}

/**************************************
 * Gaming Opportunities Section
 **************************************/

.gaming-area {
	position: relative;
	background:
		linear-gradient(180deg, #ffffff 0%, #f8f4ea 46%, #ffffff 100%);
	overflow: hidden;
}

.gaming-area .container {
	position: relative;
	z-index: 2;
}

.gaming-decor {
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
	z-index: 1;
}

.gaming-decor-one {
	top: -190px;
	right: -190px;
	width: 470px;
	height: 470px;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, rgba(212, 175, 55, 0) 70%);
}

.gaming-decor-two {
	left: -170px;
	bottom: -170px;
	width: 420px;
	height: 420px;
	background: radial-gradient(circle, rgba(7, 17, 31, 0.12) 0%, rgba(7, 17, 31, 0) 70%);
}

.gaming-area .section-title {
	margin-bottom: 48px;
}

.gaming-area .sub-title {
	color: #d4af37;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 12px;
}

.gaming-area .section-title h2 {
	color: #07111f;
	font-family: 'DM Sans', sans-serif;
	font-size: 42px;
	font-weight: 900;
	line-height: 1.22;
	text-transform: none;
	margin-bottom: 18px;
}

.gaming-area .section-intro {
	max-width: 940px;
	margin: 0 auto;
	color: #555f6f;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
}

.gaming-hero-panel {
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) minmax(320px, 0.8fr);
	gap: 30px;
	align-items: stretch;
	margin-bottom: 34px;
}

.gaming-hero-content,
.gaming-hours-card,
.gaming-category-card,
.gaming-info-panel,
.gaming-online-panel,
.gaming-table-wrap,
.gaming-highlight {
	border: 1px solid rgba(212, 175, 55, 0.32);
	box-shadow: 0 24px 60px rgba(6, 13, 32, 0.14);
}

.gaming-hero-content {
	position: relative;
	padding: 42px;
	border-radius: 30px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
	overflow: hidden;
}

.gaming-hero-content:before {
	content: "";
	position: absolute;
	top: -120px;
	right: -120px;
	width: 330px;
	height: 330px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, rgba(212, 175, 55, 0) 70%);
	pointer-events: none;
}

.gaming-label,
.gaming-small-title {
	position: relative;
	z-index: 2;
	display: inline-block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.8px;
	margin-bottom: 12px;
}

.gaming-hero-content h3,
.gaming-online-heading h3,
.gaming-table-heading h3,
.gaming-highlight-content h3,
.gaming-info-panel h3 {
	position: relative;
	z-index: 2;
	color: #ffffff;
	font-size: 30px;
	font-weight: 900;
	line-height: 1.25;
	margin-bottom: 16px;
}

.gaming-hero-content p {
	position: relative;
	z-index: 2;
	color: #d8dde7;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin-bottom: 16px;
}

.gaming-hero-content p:last-child {
	margin-bottom: 0;
}

.gaming-hours-card {
	padding: 34px;
	border-radius: 30px;
	background: #ffffff;
}

.gaming-hours-card > span {
	display: block;
	color: #d4af37;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.4px;
	margin-bottom: 22px;
}

.gaming-hours-row {
	padding: 22px;
	border-radius: 20px;
	background: linear-gradient(180deg, #ffffff 0%, #fbf7ed 100%);
	border: 1px solid rgba(212, 175, 55, 0.26);
	margin-bottom: 16px;
}

.gaming-hours-row strong {
	display: block;
	color: #07111f;
	font-size: 18px;
	font-weight: 900;
	margin-bottom: 8px;
}

.gaming-hours-row p {
	color: #5f6878;
	font-size: 18px;
	font-weight: 800;
	margin: 0;
}

.gaming-hours-card small {
	display: block;
	color: #6c7480;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.6;
	margin-top: 12px;
}

.gaming-stats-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px;
	margin-bottom: 34px;
}

.gaming-stat-card {
	padding: 28px 24px;
	border-radius: 24px;
	background: #ffffff;
	border: 1px solid rgba(212, 175, 55, 0.28);
	box-shadow: 0 18px 45px rgba(6, 13, 32, 0.08);
	text-align: center;
}

.gaming-stat-card strong {
	display: block;
	color: #07111f;
	font-size: 34px;
	font-weight: 1000;
	line-height: 1;
	margin-bottom: 10px;
}

.gaming-stat-card span {
	display: block;
	color: #5f6878;
	font-size: 14px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	line-height: 1.4;
}

.gaming-category-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px;
	margin-bottom: 34px;
}

.gaming-category-card {
	position: relative;
	padding: 30px 24px;
	border-radius: 24px;
	background: #ffffff;
	overflow: hidden;
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.gaming-category-card:before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, rgba(212, 175, 55, 0.13), rgba(212, 175, 55, 0));
	opacity: 0;
	transition: opacity 0.3s ease;
}

.gaming-category-card:hover {
	transform: translateY(-6px);
	border-color: rgba(212, 175, 55, 0.62);
	box-shadow: 0 28px 60px rgba(6, 13, 32, 0.14);
}

.gaming-category-card:hover:before {
	opacity: 1;
}

.gaming-category-icon,
.gaming-category-card h4,
.gaming-category-card p,
.gaming-category-card ul {
	position: relative;
	z-index: 2;
}

.gaming-category-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	margin-bottom: 18px;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 22px;
}

.gaming-category-card h4 {
	color: #07111f;
	font-size: 20px;
	font-weight: 900;
	margin-bottom: 12px;
}

.gaming-category-card p {
	color: #5f6878;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.75;
	margin-bottom: 18px;
}

.gaming-category-card ul {
	display: grid;
	gap: 9px;
	padding-left: 0;
	margin: 0;
	list-style: none;
}

.gaming-category-card li {
	position: relative;
	color: #4f5968;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.45;
	padding-left: 18px;
}

.gaming-category-card li:before {
	content: "";
	position: absolute;
	left: 0;
	top: 9px;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #d4af37;
}

.gaming-two-column {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
	margin-bottom: 34px;
}

.gaming-info-panel {
	padding: 34px;
	border-radius: 28px;
	background: #ffffff;
}

.gaming-info-panel h3 {
	color: #07111f;
}

.gaming-info-panel p {
	color: #5f6878;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin-bottom: 24px;
}

.gaming-dark-panel {
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
}

.gaming-dark-panel h3 {
	color: #ffffff;
}

.gaming-dark-panel p {
	color: #d8dde7;
}

.gaming-benefit-list {
	display: grid;
	gap: 14px;
}

.gaming-benefit-item {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	color: #4f5968;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.55;
}

.gaming-dark-panel .gaming-benefit-item {
	color: #ffffff;
}

.gaming-benefit-item i {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: rgba(212, 175, 55, 0.14);
	color: #d4af37;
	font-size: 12px;
	margin-top: 1px;
}

.gaming-online-panel {
	padding: 38px;
	border-radius: 30px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(6, 32, 25, 0.96));
	margin-bottom: 34px;
}

.gaming-online-heading {
	text-align: center;
	max-width: 880px;
	margin: 0 auto 32px;
}

.gaming-online-heading p {
	color: #d8dde7;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
	margin: 0;
}

.gaming-online-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px;
}

.gaming-online-column {
	padding: 26px 24px;
	border-radius: 22px;
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(212, 175, 55, 0.22);
}

.gaming-online-column h4 {
	color: #ffffff;
	font-size: 24px;
	font-weight: 900;
	margin-bottom: 22px;
}

.gaming-online-column ul {
	display: grid;
	gap: 14px;
	padding-left: 0;
	margin: 0;
	list-style: none;
}

.gaming-online-column li {
	color: #d4af37;
	font-size: 16px;
	font-weight: 800;
	line-height: 1.4;
}

.gaming-table-wrap {
	padding: 34px;
	border-radius: 28px;
	background: #ffffff;
	margin-bottom: 34px;
}

.gaming-table-heading {
	text-align: center;
	margin-bottom: 24px;
}

.gaming-table-heading h3 {
	color: #07111f;
}

.gaming-info-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	border-radius: 18px;
	border: 1px solid rgba(7, 17, 31, 0.08);
}

.gaming-info-table th,
.gaming-info-table td {
	padding: 18px 20px;
	border-bottom: 1px solid rgba(7, 17, 31, 0.08);
	vertical-align: top;
	font-size: 15px;
	line-height: 1.6;
}

.gaming-info-table tr:last-child th,
.gaming-info-table tr:last-child td {
	border-bottom: none;
}

.gaming-info-table th {
	width: 30%;
	color: #07111f;
	background: #f7f1e3;
	font-weight: 900;
}

.gaming-info-table td {
	color: #5f6878;
	font-weight: 600;
	background: #ffffff;
}

.gaming-highlight {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	padding: 38px 42px;
	border-radius: 28px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
}

.gaming-highlight-content span {
	display: inline-block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.8px;
	margin-bottom: 10px;
}

.gaming-highlight-content h3 {
	color: #ffffff;
	font-size: 28px;
	margin-bottom: 12px;
}

.gaming-highlight-content p {
	max-width: 850px;
	color: #d8dde7;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
	margin: 0;
}

.gaming-cta-btn {
	flex: 0 0 auto;
	margin-top: 0;
	padding: 12px 32px;
	border-radius: 50px;
	border-color: #d4af37;
	background: #d4af37;
	color: #07111f;
	font-size: 14px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 12px 28px rgba(212, 175, 55, 0.25);
}

.gaming-cta-btn:hover {
	background: transparent;
	color: #d4af37;
	border-color: #d4af37;
}

.gaming-cta-btn:before,
.gaming-cta-btn:after {
	display: none;
}

@media only screen and (max-width: 1199px) {
	.gaming-category-grid,
	.gaming-online-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media only screen and (max-width: 991px) {
	.gaming-area .section-title h2 {
		font-size: 34px;
	}

	.gaming-hero-panel,
	.gaming-two-column {
		grid-template-columns: 1fr;
	}

	.gaming-stats-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.gaming-highlight {
		flex-direction: column;
		align-items: flex-start;
		padding: 34px 28px;
	}

	.gaming-cta-btn {
		width: 100%;
		text-align: center;
	}
}

@media only screen and (max-width: 575px) {
	.gaming-area .section-title h2 {
		font-size: 28px;
	}

	.gaming-area .section-intro {
		font-size: 15px;
	}

	.gaming-hero-content,
	.gaming-hours-card,
	.gaming-online-panel,
	.gaming-table-wrap,
	.gaming-info-panel {
		padding: 28px 22px;
		border-radius: 22px;
	}

	.gaming-hero-content h3,
	.gaming-online-heading h3,
	.gaming-table-heading h3,
	.gaming-info-panel h3 {
		font-size: 24px;
	}

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

	.gaming-info-table th,
	.gaming-info-table td {
		display: block;
		width: 100%;
	}

	.gaming-info-table th {
		border-bottom: none;
		padding-bottom: 8px;
	}

	.gaming-info-table td {
		padding-top: 8px;
	}

	.gaming-highlight {
		padding: 28px 22px;
		border-radius: 22px;
	}
}

/**************************************
 * Slots Section
 **************************************/

.slots-area {
	position: relative;
	background:
		linear-gradient(180deg, #07111f 0%, #101b2d 46%, #07111f 100%);
	overflow: hidden;
}

.slots-area .container {
	position: relative;
	z-index: 2;
}

.slots-decor {
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
	z-index: 1;
}

.slots-decor-one {
	top: -190px;
	right: -190px;
	width: 470px;
	height: 470px;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.22) 0%, rgba(212, 175, 55, 0) 70%);
}

.slots-decor-two {
	left: -170px;
	bottom: -170px;
	width: 420px;
	height: 420px;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0) 70%);
}

.slots-area .section-title {
	margin-bottom: 48px;
}

.slots-area .sub-title {
	color: #d4af37;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 12px;
}

.slots-area .section-title h2 {
	color: #ffffff;
	font-family: 'DM Sans', sans-serif;
	font-size: 42px;
	font-weight: 900;
	line-height: 1.22;
	text-transform: none;
	margin-bottom: 18px;
}

.slots-area .section-intro {
	max-width: 940px;
	margin: 0 auto;
	color: #d8dde7;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
}

.slots-hero-panel {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(340px, 0.75fr);
	gap: 30px;
	align-items: stretch;
	margin-bottom: 34px;
}

.slots-hero-content,
.slots-hero-card,
.slots-category-card,
.slots-how-panel,
.slots-info-card,
.slots-table-wrap,
.slots-providers-panel,
.slots-comparison-wrap,
.slots-highlight {
	border: 1px solid rgba(212, 175, 55, 0.32);
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.24);
}

.slots-hero-content {
	position: relative;
	padding: 42px;
	border-radius: 30px;
	background: rgba(255, 255, 255, 0.07);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	overflow: hidden;
}

.slots-hero-content:before {
	content: "";
	position: absolute;
	top: -120px;
	right: -120px;
	width: 330px;
	height: 330px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, rgba(212, 175, 55, 0) 70%);
	pointer-events: none;
}

.slots-label,
.slots-small-title {
	position: relative;
	z-index: 2;
	display: inline-block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.8px;
	margin-bottom: 12px;
}

.slots-hero-content h3,
.slots-how-content h3,
.slots-info-card h3,
.slots-table-heading h3,
.slots-providers-content h3,
.slots-highlight-content h3 {
	position: relative;
	z-index: 2;
	color: #ffffff;
	font-size: 30px;
	font-weight: 900;
	line-height: 1.25;
	margin-bottom: 16px;
}

.slots-hero-content p {
	position: relative;
	z-index: 2;
	color: #d8dde7;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin-bottom: 16px;
}

.slots-hero-content p:last-child {
	margin-bottom: 0;
}

.slots-hero-card {
	position: relative;
	padding: 38px;
	border-radius: 30px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(32, 19, 55, 0.96));
	overflow: hidden;
}

.slots-hero-card:before {
	content: "";
	position: absolute;
	top: -120px;
	right: -120px;
	width: 320px;
	height: 320px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.25) 0%, rgba(212, 175, 55, 0) 70%);
	pointer-events: none;
}

.slots-hero-card span,
.slots-hero-card h3,
.slots-hero-card strong,
.slots-hero-card p,
.slots-hero-card a {
	position: relative;
	z-index: 2;
}

.slots-hero-card span {
	display: block;
	color: #d4af37;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.4px;
	margin-bottom: 18px;
}

.slots-hero-card h3 {
	color: #ffffff;
	font-size: 24px;
	font-weight: 800;
	margin-bottom: 12px;
}

.slots-hero-card strong {
	display: block;
	color: #d4af37;
	font-size: 42px;
	font-weight: 1000;
	line-height: 1.05;
	margin-bottom: 14px;
}

.slots-hero-card p {
	color: #d8dde7;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
	margin-bottom: 24px;
}

.slots-main-btn,
.slots-cta-btn {
	margin-top: 0;
	padding: 12px 32px;
	border-radius: 50px;
	border-color: #d4af37;
	background: #d4af37;
	color: #07111f;
	font-size: 14px;
	font-weight: 900;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 12px 28px rgba(212, 175, 55, 0.25);
}

.slots-main-btn {
	width: 100%;
}

.slots-main-btn:hover,
.slots-cta-btn:hover {
	background: transparent;
	color: #d4af37;
	border-color: #d4af37;
}

.slots-main-btn:before,
.slots-main-btn:after,
.slots-cta-btn:before,
.slots-cta-btn:after {
	display: none;
}

.slots-category-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px;
	margin-bottom: 34px;
}

.slots-category-card {
	position: relative;
	padding: 30px 24px;
	border-radius: 24px;
	background: #ffffff;
	overflow: hidden;
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.slots-category-card:before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, rgba(212, 175, 55, 0.13), rgba(212, 175, 55, 0));
	opacity: 0;
	transition: opacity 0.3s ease;
}

.slots-category-card:hover {
	transform: translateY(-6px);
	border-color: rgba(212, 175, 55, 0.62);
	box-shadow: 0 28px 60px rgba(0, 0, 0, 0.26);
}

.slots-category-card:hover:before {
	opacity: 1;
}

.slots-category-icon,
.slots-category-card h4,
.slots-category-card p,
.slots-category-card ul {
	position: relative;
	z-index: 2;
}

.slots-category-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	margin-bottom: 18px;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 22px;
}

.slots-category-card h4 {
	color: #07111f;
	font-size: 20px;
	font-weight: 900;
	margin-bottom: 12px;
}

.slots-category-card p {
	color: #5f6878;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.75;
	margin-bottom: 18px;
}

.slots-category-card ul {
	display: grid;
	gap: 9px;
	padding-left: 0;
	margin: 0;
	list-style: none;
}

.slots-category-card li {
	position: relative;
	color: #4f5968;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.45;
	padding-left: 18px;
}

.slots-category-card li:before {
	content: "";
	position: absolute;
	left: 0;
	top: 9px;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #d4af37;
}

.slots-how-panel {
	padding: 38px;
	border-radius: 30px;
	background: #ffffff;
	margin-bottom: 34px;
}

.slots-how-content {
	text-align: center;
	max-width: 900px;
	margin: 0 auto 30px;
}

.slots-how-content h3 {
	color: #07111f;
}

.slots-how-content p,
.slots-table-heading p,
.slots-providers-content p {
	color: #5f6878;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin: 0;
}

.slots-mechanics-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px;
}

.slots-mechanic-item {
	padding: 26px 22px;
	border-radius: 22px;
	background: linear-gradient(180deg, #ffffff 0%, #fbf7ed 100%);
	border: 1px solid rgba(212, 175, 55, 0.26);
}

.slots-mechanic-item span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 15px;
	font-weight: 900;
	margin-bottom: 16px;
}

.slots-mechanic-item h4 {
	color: #07111f;
	font-size: 18px;
	font-weight: 900;
	margin-bottom: 10px;
}

.slots-mechanic-item p {
	color: #5f6878;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.7;
	margin: 0;
}

.slots-two-column {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
	margin-bottom: 34px;
}

.slots-info-card {
	padding: 34px;
	border-radius: 28px;
	background: #ffffff;
}

.slots-info-card h3 {
	color: #07111f;
}

.slots-info-card p {
	color: #5f6878;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin-bottom: 24px;
}

.slots-dark-card {
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
}

.slots-dark-card h3 {
	color: #ffffff;
}

.slots-dark-card p {
	color: #d8dde7;
}

.slots-check-list {
	display: grid;
	gap: 14px;
}

.slots-check-list li {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	color: #4f5968;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.55;
}

.slots-dark-card .slots-check-list li {
	color: #ffffff;
}

.slots-check-list i {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: rgba(212, 175, 55, 0.14);
	color: #d4af37;
	font-size: 12px;
	margin-top: 1px;
}

.slots-table-wrap,
.slots-comparison-wrap {
	padding: 34px;
	border-radius: 28px;
	background: #ffffff;
	margin-bottom: 34px;
}

.slots-table-heading {
	text-align: center;
	max-width: 880px;
	margin: 0 auto 26px;
}

.slots-table-heading h3,
.slots-providers-content h3 {
	color: #07111f;
}

.slots-info-table,
.slots-comparison-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	border-radius: 18px;
	border: 1px solid rgba(7, 17, 31, 0.08);
}

.slots-info-table th,
.slots-info-table td,
.slots-comparison-table th,
.slots-comparison-table td {
	padding: 17px 18px;
	border-bottom: 1px solid rgba(7, 17, 31, 0.08);
	vertical-align: top;
	font-size: 14px;
	line-height: 1.6;
}

.slots-info-table tr:last-child td,
.slots-comparison-table tr:last-child td {
	border-bottom: none;
}

.slots-info-table th,
.slots-comparison-table th {
	color: #07111f;
	background: #f7f1e3;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
}

.slots-info-table td,
.slots-comparison-table td {
	color: #5f6878;
	font-weight: 600;
	background: #ffffff;
}

.slots-info-table td:first-child,
.slots-comparison-table td:first-child {
	color: #07111f;
	font-weight: 900;
	background: #fbf7ed;
}

.slots-providers-panel {
	display: grid;
	grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
	gap: 30px;
	align-items: center;
	padding: 38px;
	border-radius: 30px;
	background: #ffffff;
	margin-bottom: 34px;
}

.slots-provider-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
}

.slots-provider-item {
	padding: 16px 18px;
	border-radius: 18px;
	background: linear-gradient(180deg, #ffffff 0%, #fbf7ed 100%);
	border: 1px solid rgba(212, 175, 55, 0.26);
	color: #07111f;
	font-size: 14px;
	font-weight: 900;
	text-align: center;
}

.slots-highlight {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	padding: 38px 42px;
	border-radius: 28px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
}

.slots-highlight-content span {
	display: inline-block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.8px;
	margin-bottom: 10px;
}

.slots-highlight-content h3 {
	color: #ffffff;
	font-size: 28px;
	margin-bottom: 12px;
}

.slots-highlight-content p {
	max-width: 850px;
	color: #d8dde7;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
	margin: 0;
}

.slots-cta-btn {
	flex: 0 0 auto;
}

@media only screen and (max-width: 1199px) {
	.slots-category-grid,
	.slots-mechanics-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.slots-provider-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media only screen and (max-width: 991px) {
	.slots-area .section-title h2 {
		font-size: 34px;
	}

	.slots-hero-panel,
	.slots-two-column,
	.slots-providers-panel {
		grid-template-columns: 1fr;
	}

	.slots-highlight {
		flex-direction: column;
		align-items: flex-start;
		padding: 34px 28px;
	}

	.slots-cta-btn {
		width: 100%;
		text-align: center;
	}
}

@media only screen and (max-width: 575px) {
	.slots-area .section-title h2 {
		font-size: 28px;
	}

	.slots-area .section-intro {
		font-size: 15px;
	}

	.slots-hero-content,
	.slots-hero-card,
	.slots-how-panel,
	.slots-info-card,
	.slots-table-wrap,
	.slots-providers-panel,
	.slots-comparison-wrap {
		padding: 28px 22px;
		border-radius: 22px;
	}

	.slots-hero-content h3,
	.slots-how-content h3,
	.slots-info-card h3,
	.slots-table-heading h3,
	.slots-providers-content h3 {
		font-size: 24px;
	}

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

	.slots-info-table th,
	.slots-info-table td,
	.slots-comparison-table th,
	.slots-comparison-table td {
		display: block;
		width: 100%;
	}

	.slots-info-table th,
	.slots-comparison-table th {
		display: none;
	}

	.slots-info-table td:first-child,
	.slots-comparison-table td:first-child {
		border-bottom: none;
		padding-bottom: 8px;
	}

	.slots-highlight {
		padding: 28px 22px;
		border-radius: 22px;
	}
}

/**************************************
 * Table & Live Casino Section
 **************************************/

.table-live-area {
	position: relative;
	background:
		linear-gradient(180deg, #ffffff 0%, #f8f4ea 46%, #ffffff 100%);
	overflow: hidden;
}

.table-live-area .container {
	position: relative;
	z-index: 2;
}

.table-live-decor {
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
	z-index: 1;
}

.table-live-decor-one {
	top: -190px;
	right: -190px;
	width: 470px;
	height: 470px;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, rgba(212, 175, 55, 0) 70%);
}

.table-live-decor-two {
	left: -170px;
	bottom: -170px;
	width: 420px;
	height: 420px;
	background: radial-gradient(circle, rgba(7, 17, 31, 0.12) 0%, rgba(7, 17, 31, 0) 70%);
}

.table-live-area .section-title {
	margin-bottom: 48px;
}

.table-live-area .sub-title {
	color: #d4af37;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 12px;
}

.table-live-area .section-title h2 {
	color: #07111f;
	font-family: 'DM Sans', sans-serif;
	font-size: 42px;
	font-weight: 900;
	line-height: 1.22;
	text-transform: none;
	margin-bottom: 18px;
}

.table-live-area .section-intro {
	max-width: 950px;
	margin: 0 auto;
	color: #555f6f;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
}

.table-live-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(340px, 0.75fr);
	gap: 30px;
	align-items: stretch;
	margin-bottom: 34px;
}

.table-live-hero-content,
.table-live-side-card,
.table-live-card,
.table-live-panel,
.table-live-online,
.table-live-how,
.table-live-comparison,
.table-live-titles,
.table-live-providers,
.table-live-highlight {
	border: 1px solid rgba(212, 175, 55, 0.32);
	box-shadow: 0 24px 60px rgba(6, 13, 32, 0.14);
}

.table-live-hero-content {
	position: relative;
	padding: 42px;
	border-radius: 30px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
	overflow: hidden;
}

.table-live-hero-content:before {
	content: "";
	position: absolute;
	top: -120px;
	right: -120px;
	width: 330px;
	height: 330px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, rgba(212, 175, 55, 0) 70%);
	pointer-events: none;
}

.table-live-label,
.table-live-small-title {
	position: relative;
	z-index: 2;
	display: inline-block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.8px;
	margin-bottom: 12px;
}

.table-live-hero-content h3,
.table-live-panel-content h3,
.table-live-online-heading h3,
.table-live-how-heading h3,
.table-live-table-heading h3,
.table-live-providers-content h3,
.table-live-highlight-content h3 {
	position: relative;
	z-index: 2;
	color: #ffffff;
	font-size: 30px;
	font-weight: 900;
	line-height: 1.25;
	margin-bottom: 16px;
}

.table-live-hero-content p {
	position: relative;
	z-index: 2;
	color: #d8dde7;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin-bottom: 16px;
}

.table-live-hero-content p:last-child {
	margin-bottom: 0;
}

.table-live-side-card {
	padding: 34px;
	border-radius: 30px;
	background: #ffffff;
}

.table-live-side-card > span {
	display: block;
	color: #d4af37;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.4px;
	margin-bottom: 22px;
}

.table-live-side-card ul {
	display: grid;
	gap: 14px;
	margin-bottom: 28px;
}

.table-live-side-card li {
	display: flex;
	align-items: center;
	gap: 12px;
	color: #07111f;
}

.table-live-side-card i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: rgba(212, 175, 55, 0.14);
	color: #d4af37;
	font-size: 12px;
}

.table-live-side-card strong {
	font-size: 15px;
	font-weight: 900;
	line-height: 1.4;
}

.table-live-main-btn,
.table-live-cta-btn {
	margin-top: 0;
	padding: 12px 32px;
	border-radius: 50px;
	border-color: #d4af37;
	background: #d4af37;
	color: #07111f;
	font-size: 14px;
	font-weight: 900;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 12px 28px rgba(212, 175, 55, 0.25);
}

.table-live-main-btn {
	width: 100%;
}

.table-live-main-btn:hover,
.table-live-cta-btn:hover {
	background: transparent;
	color: #d4af37;
	border-color: #d4af37;
}

.table-live-main-btn:before,
.table-live-main-btn:after,
.table-live-cta-btn:before,
.table-live-cta-btn:after {
	display: none;
}

.table-live-stats {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px;
	margin-bottom: 34px;
}

.table-live-stat {
	padding: 28px 24px;
	border-radius: 24px;
	background: #ffffff;
	border: 1px solid rgba(212, 175, 55, 0.28);
	box-shadow: 0 18px 45px rgba(6, 13, 32, 0.08);
	text-align: center;
}

.table-live-stat strong {
	display: block;
	color: #07111f;
	font-size: 27px;
	font-weight: 1000;
	line-height: 1;
	margin-bottom: 10px;
}

.table-live-stat span {
	display: block;
	color: #5f6878;
	font-size: 14px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	line-height: 1.4;
}

.table-live-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
	margin-bottom: 34px;
}

.table-live-card {
	position: relative;
	padding: 30px 24px;
	border-radius: 24px;
	background: #ffffff;
	overflow: hidden;
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.table-live-card:before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, rgba(212, 175, 55, 0.13), rgba(212, 175, 55, 0));
	opacity: 0;
	transition: opacity 0.3s ease;
}

.table-live-card:hover {
	transform: translateY(-6px);
	border-color: rgba(212, 175, 55, 0.62);
	box-shadow: 0 28px 60px rgba(6, 13, 32, 0.14);
}

.table-live-card:hover:before {
	opacity: 1;
}

.table-live-icon,
.table-live-card h4,
.table-live-card p,
.table-live-card ul {
	position: relative;
	z-index: 2;
}

.table-live-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	margin-bottom: 18px;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 22px;
}

.table-live-card h4 {
	color: #07111f;
	font-size: 20px;
	font-weight: 900;
	margin-bottom: 12px;
}

.table-live-card p {
	color: #5f6878;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.75;
	margin-bottom: 18px;
}

.table-live-card ul {
	display: grid;
	gap: 9px;
	padding-left: 0;
	margin: 0;
	list-style: none;
}

.table-live-card li {
	position: relative;
	color: #4f5968;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.45;
	padding-left: 18px;
}

.table-live-card li:before {
	content: "";
	position: absolute;
	left: 0;
	top: 9px;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #d4af37;
}

.table-live-panel {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(320px, 0.75fr);
	gap: 30px;
	align-items: center;
	padding: 38px;
	border-radius: 30px;
	background: #ffffff;
	margin-bottom: 34px;
}

.table-live-panel-content h3,
.table-live-table-heading h3,
.table-live-providers-content h3 {
	color: #07111f;
}

.table-live-panel-content p,
.table-live-online-heading p,
.table-live-titles p,
.table-live-providers-content p {
	color: #5f6878;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin-bottom: 24px;
}

.table-live-benefits {
	display: grid;
	gap: 14px;
}

.table-live-benefit {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	color: #4f5968;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.55;
}

.table-live-benefit i {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: rgba(212, 175, 55, 0.14);
	color: #d4af37;
	font-size: 12px;
	margin-top: 1px;
}

.table-live-panel-box {
	padding: 28px 26px;
	border-radius: 24px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
}

.table-live-panel-box h4 {
	color: #ffffff;
	font-size: 20px;
	font-weight: 900;
	line-height: 1.3;
	margin-bottom: 18px;
}

.table-live-panel-box ul {
	display: grid;
	gap: 12px;
}

.table-live-panel-box li {
	color: #d8dde7;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.45;
}

.table-live-online {
	padding: 38px;
	border-radius: 30px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(6, 32, 25, 0.96));
	margin-bottom: 34px;
}

.table-live-online-heading {
	text-align: center;
	max-width: 900px;
	margin: 0 auto 32px;
}

.table-live-online-heading p {
	color: #d8dde7;
	margin-bottom: 0;
}

.table-live-online-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px;
}

.table-live-online-column {
	padding: 26px 24px;
	border-radius: 22px;
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(212, 175, 55, 0.22);
}

.table-live-online-column h4 {
	color: #ffffff;
	font-size: 23px;
	font-weight: 900;
	margin-bottom: 22px;
}

.table-live-online-column ul {
	display: grid;
	gap: 14px;
	padding-left: 0;
	margin: 0;
	list-style: none;
}

.table-live-online-column li {
	color: #d4af37;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.4;
}

.table-live-how {
	padding: 38px;
	border-radius: 30px;
	background: #ffffff;
	margin-bottom: 34px;
}

.table-live-how-heading {
	text-align: center;
	margin-bottom: 28px;
}

.table-live-how-heading h3 {
	color: #07111f;
}

.table-live-how-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px;
}

.table-live-how-item {
	padding: 26px 22px;
	border-radius: 22px;
	background: linear-gradient(180deg, #ffffff 0%, #fbf7ed 100%);
	border: 1px solid rgba(212, 175, 55, 0.26);
}

.table-live-how-item span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 15px;
	font-weight: 900;
	margin-bottom: 16px;
}

.table-live-how-item h4 {
	color: #07111f;
	font-size: 18px;
	font-weight: 900;
	margin-bottom: 10px;
}

.table-live-how-item p {
	color: #5f6878;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.7;
	margin: 0;
}

.table-live-comparison,
.table-live-titles {
	padding: 34px;
	border-radius: 28px;
	background: #ffffff;
	margin-bottom: 34px;
}

.table-live-table-heading {
	text-align: center;
	max-width: 900px;
	margin: 0 auto 26px;
}

.table-live-table-heading h3 {
	color: #07111f;
}

.table-live-table-heading p {
	color: #5f6878;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin: 0;
}

.table-live-info-table,
.table-live-titles-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	border-radius: 18px;
	border: 1px solid rgba(7, 17, 31, 0.08);
}

.table-live-info-table th,
.table-live-info-table td,
.table-live-titles-table th,
.table-live-titles-table td {
	padding: 17px 18px;
	border-bottom: 1px solid rgba(7, 17, 31, 0.08);
	vertical-align: top;
	font-size: 14px;
	line-height: 1.6;
}

.table-live-info-table tr:last-child td,
.table-live-titles-table tr:last-child td {
	border-bottom: none;
}

.table-live-info-table th,
.table-live-titles-table th {
	color: #07111f;
	background: #f7f1e3;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
}

.table-live-info-table td,
.table-live-titles-table td {
	color: #5f6878;
	font-weight: 600;
	background: #ffffff;
}

.table-live-info-table td:first-child,
.table-live-titles-table td:first-child {
	color: #07111f;
	font-weight: 900;
	background: #fbf7ed;
}

.table-live-providers {
	display: grid;
	grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
	gap: 30px;
	align-items: center;
	padding: 38px;
	border-radius: 30px;
	background: #ffffff;
	margin-bottom: 34px;
}

.table-live-providers-content h3 {
	color: #07111f;
}

.table-live-provider-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.table-live-provider-item {
	padding: 16px 18px;
	border-radius: 18px;
	background: linear-gradient(180deg, #ffffff 0%, #fbf7ed 100%);
	border: 1px solid rgba(212, 175, 55, 0.26);
	color: #07111f;
	font-size: 14px;
	font-weight: 900;
	text-align: center;
}

.table-live-highlight {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	padding: 38px 42px;
	border-radius: 28px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
}

.table-live-highlight-content span {
	display: inline-block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.8px;
	margin-bottom: 10px;
}

.table-live-highlight-content h3 {
	color: #ffffff;
	font-size: 28px;
	margin-bottom: 12px;
}

.table-live-highlight-content p {
	max-width: 850px;
	color: #d8dde7;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
	margin: 0;
}

.table-live-cta-btn {
	flex: 0 0 auto;
}

@media only screen and (max-width: 1199px) {
	.table-live-grid,
	.table-live-online-grid,
	.table-live-how-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media only screen and (max-width: 991px) {
	.table-live-area .section-title h2 {
		font-size: 34px;
	}

	.table-live-hero,
	.table-live-panel,
	.table-live-providers {
		grid-template-columns: 1fr;
	}

	.table-live-stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.table-live-highlight {
		flex-direction: column;
		align-items: flex-start;
		padding: 34px 28px;
	}

	.table-live-cta-btn {
		width: 100%;
		text-align: center;
	}
}

@media only screen and (max-width: 575px) {
	.table-live-area .section-title h2 {
		font-size: 28px;
	}

	.table-live-area .section-intro {
		font-size: 15px;
	}

	.table-live-hero-content,
	.table-live-side-card,
	.table-live-panel,
	.table-live-online,
	.table-live-how,
	.table-live-comparison,
	.table-live-titles,
	.table-live-providers {
		padding: 28px 22px;
		border-radius: 22px;
	}

	.table-live-hero-content h3,
	.table-live-panel-content h3,
	.table-live-online-heading h3,
	.table-live-how-heading h3,
	.table-live-table-heading h3,
	.table-live-providers-content h3 {
		font-size: 24px;
	}

	.table-live-stats,
	.table-live-grid,
	.table-live-online-grid,
	.table-live-how-grid,
	.table-live-provider-grid {
		grid-template-columns: 1fr;
	}

	.table-live-info-table th,
	.table-live-info-table td,
	.table-live-titles-table th,
	.table-live-titles-table td {
		display: block;
		width: 100%;
	}

	.table-live-info-table th,
	.table-live-titles-table th {
		display: none;
	}

	.table-live-info-table td:first-child,
	.table-live-titles-table td:first-child {
		border-bottom: none;
		padding-bottom: 8px;
	}

	.table-live-highlight {
		padding: 28px 22px;
		border-radius: 22px;
	}
}

/**************************************
 * App Section
 **************************************/

.app-area {
	position: relative;
	background: linear-gradient(180deg, #ffffff 0%, #f8f4ea 48%, #ffffff 100%);
	overflow: hidden;
}

.app-area .container {
	position: relative;
	z-index: 2;
}

.app-decor {
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
	z-index: 1;
}

.app-decor-one {
	top: -180px;
	right: -180px;
	width: 420px;
	height: 420px;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.18) 0%, rgba(212, 175, 55, 0) 70%);
}

.app-decor-two {
	left: -160px;
	bottom: -160px;
	width: 380px;
	height: 380px;
	background: radial-gradient(circle, rgba(7, 17, 31, 0.10) 0%, rgba(7, 17, 31, 0) 70%);
}

.app-area .section-title {
	margin-bottom: 48px;
}

.app-area .sub-title {
	color: #d4af37;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 12px;
}

.app-area .section-title h2 {
	color: #07111f;
	font-family: 'DM Sans', sans-serif;
	font-size: 42px;
	font-weight: 900;
	line-height: 1.22;
	margin-bottom: 18px;
}

.app-area .section-intro {
	max-width: 920px;
	margin: 0 auto;
	color: #555f6f;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
}

.app-layout {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 28px;
	align-items: start;
}

.app-column {
	display: grid;
	gap: 28px;
}

.app-content-card,
.app-image-card {
	border-radius: 28px;
	background: #ffffff;
	border: 1px solid rgba(212, 175, 55, 0.26);
	box-shadow: 0 20px 55px rgba(6, 13, 32, 0.10);
	overflow: hidden;
}

.app-content-card {
	padding: 34px 32px;
}

.app-label {
	display: inline-block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.8px;
	margin-bottom: 12px;
}

.app-content-card h3,
.app-image-content h3 {
	color: #07111f;
	font-size: 28px;
	font-weight: 900;
	line-height: 1.3;
	margin-bottom: 16px;
}

.app-content-card p,
.app-image-content p {
	color: #5f6878;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.85;
	margin-bottom: 16px;
}

.app-content-card p:last-child,
.app-image-content p:last-child {
	margin-bottom: 0;
}

.app-feature-list {
	display: grid;
	gap: 18px;
	margin-top: 26px;
}

.app-feature-item {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	padding: 18px 18px;
	border-radius: 18px;
	background: linear-gradient(180deg, #ffffff 0%, #fbf7ed 100%);
	border: 1px solid rgba(212, 175, 55, 0.22);
}

.app-feature-item i {
	flex: 0 0 auto;
	width: 48px;
	height: 48px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 20px;
}

.app-feature-item h4 {
	color: #07111f;
	font-size: 18px;
	font-weight: 800;
	margin-bottom: 8px;
}

.app-feature-item p {
	color: #5f6878;
	font-size: 14px;
	line-height: 1.75;
	margin: 0;
}

.app-check-list {
	display: grid;
	gap: 14px;
	margin-top: 22px;
	padding-left: 0;
	list-style: none;
}

.app-check-list li {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	color: #4f5968;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.6;
}

.app-check-list i {
	flex: 0 0 auto;
	width: 24px;
	height: 24px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(212, 175, 55, 0.14);
	color: #d4af37;
	font-size: 12px;
	margin-top: 1px;
}

.app-image-card {
	background: #ffffff;
}

.app-image-wrap {
	padding: 24px 24px 0;
}

.app-image-wrap img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 22px;
	background: #f6f6f6;
}

.app-image-content {
	padding: 28px 30px 32px;
}

.app-store-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 24px;
}

.app-store-buttons a {
	display: inline-flex;
	align-items: center;
}

.app-store-buttons img {
	height: 54px;
	width: auto;
	display: block;
}

.app-install-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
	margin-top: 10px;
}

.app-install-box {
	padding: 22px 20px;
	border-radius: 20px;
	background: linear-gradient(180deg, #ffffff 0%, #fbf7ed 100%);
	border: 1px solid rgba(212, 175, 55, 0.22);
}

.app-install-title {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 14px;
}

.app-install-title i {
	width: 42px;
	height: 42px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 20px;
}

.app-install-title h4 {
	color: #07111f;
	font-size: 18px;
	font-weight: 800;
	margin: 0;
}

.app-install-box ol {
	margin: 0;
	padding-left: 18px;
}

.app-install-box li {
	color: #5f6878;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.75;
	margin-bottom: 8px;
}

.app-install-box li:last-child {
	margin-bottom: 0;
}

.app-note-box {
	margin-top: 24px;
	padding: 24px 24px;
	border-radius: 22px;
	background: linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
	border: 1px solid rgba(212, 175, 55, 0.28);
}

.app-note-box h4 {
	color: #ffffff;
	font-size: 22px;
	font-weight: 900;
	margin-bottom: 12px;
}

.app-note-box p {
	color: #d8dde7;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
	margin: 0;
}

@media only screen and (max-width: 991px) {
	.app-area .section-title h2 {
		font-size: 34px;
	}

	.app-layout {
		grid-template-columns: 1fr;
	}

	.app-install-grid {
		grid-template-columns: 1fr;
	}
}

@media only screen and (max-width: 575px) {
	.app-area .section-title h2 {
		font-size: 28px;
	}

	.app-area .section-intro {
		font-size: 15px;
	}

	.app-content-card,
	.app-image-content {
		padding: 28px 22px;
	}

	.app-image-wrap {
		padding: 18px 18px 0;
	}

	.app-content-card h3,
	.app-image-content h3 {
		font-size: 24px;
	}

	.app-store-buttons img {
		height: 48px;
	}
}

/**************************************
 * Payments Section
 **************************************/

.payments-area {
	position: relative;
	background:
		linear-gradient(180deg, #ffffff 0%, #f8f4ea 48%, #ffffff 100%);
	overflow: hidden;
}

.payments-area .container {
	position: relative;
	z-index: 2;
}

.payments-decor {
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
	z-index: 1;
}

.payments-decor-one {
	top: -180px;
	right: -180px;
	width: 450px;
	height: 450px;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, rgba(212, 175, 55, 0) 70%);
}

.payments-decor-two {
	left: -160px;
	bottom: -160px;
	width: 390px;
	height: 390px;
	background: radial-gradient(circle, rgba(7, 17, 31, 0.12) 0%, rgba(7, 17, 31, 0) 70%);
}

.payments-area .section-title {
	margin-bottom: 48px;
}

.payments-area .sub-title {
	color: #d4af37;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 12px;
}

.payments-area .section-title h2 {
	color: #07111f;
	font-family: 'DM Sans', sans-serif;
	font-size: 42px;
	font-weight: 900;
	line-height: 1.22;
	margin-bottom: 18px;
}

.payments-area .section-intro {
	max-width: 920px;
	margin: 0 auto;
	color: #555f6f;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
}

.payments-intro-panel {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.75fr);
	gap: 30px;
	align-items: stretch;
	margin-bottom: 34px;
}

.payments-intro-content,
.payments-table-panel,
.payments-info-card,
.payments-note-box {
	border: 1px solid rgba(212, 175, 55, 0.32);
	box-shadow: 0 24px 60px rgba(6, 13, 32, 0.14);
}

.payments-intro-content {
	position: relative;
	padding: 42px;
	border-radius: 30px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
	overflow: hidden;
}

.payments-intro-content:before {
	content: "";
	position: absolute;
	top: -120px;
	right: -120px;
	width: 330px;
	height: 330px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, rgba(212, 175, 55, 0) 70%);
	pointer-events: none;
}

.payments-label {
	position: relative;
	z-index: 2;
	display: inline-block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.8px;
	margin-bottom: 12px;
}

.payments-intro-content h3,
.payments-note-box h3 {
	position: relative;
	z-index: 2;
	color: #ffffff;
	font-size: 30px;
	font-weight: 900;
	line-height: 1.25;
	margin-bottom: 16px;
}

.payments-intro-content p {
	position: relative;
	z-index: 2;
	color: #d8dde7;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin-bottom: 16px;
}

.payments-intro-content p:last-child {
	margin-bottom: 0;
}

.payments-intro-stats {
	display: grid;
	gap: 16px;
}

.payments-stat-card {
	padding: 24px;
	border-radius: 22px;
	background: #ffffff;
	border: 1px solid rgba(212, 175, 55, 0.28);
	box-shadow: 0 18px 45px rgba(6, 13, 32, 0.08);
}

.payments-stat-card strong {
	display: block;
	color: #07111f;
	font-size: 24px;
	font-weight: 1000;
	line-height: 1.2;
	margin-bottom: 8px;
}

.payments-stat-card span {
	display: block;
	color: #5f6878;
	font-size: 14px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	line-height: 1.45;
}

.payments-table-panel {
	max-width: 980px;
	margin: 0 auto 42px;
	padding: 28px;
	border-radius: 30px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
}

.payments-table-panel input[type="radio"] {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.payments-tabs {
	display: flex;
	justify-content: center;
	gap: 14px;
	margin-bottom: 26px;
}

.payments-tabs label {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 170px;
	padding: 11px 22px;
	border-radius: 50px;
	border: 1px solid rgba(212, 175, 55, 0.45);
	color: #ffffff;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	cursor: pointer;
	transition: all 0.3s ease;
}

#payment-tab-deposit:checked ~ .payments-tabs label[for="payment-tab-deposit"],
#payment-tab-withdrawal:checked ~ .payments-tabs label[for="payment-tab-withdrawal"] {
	background: #d4af37;
	border-color: #d4af37;
	color: #07111f;
	box-shadow: 0 12px 28px rgba(212, 175, 55, 0.24);
}

.payments-table-wrap {
	display: none;
}

#payment-tab-deposit:checked ~ .payments-deposit-table {
	display: block;
}

#payment-tab-withdrawal:checked ~ .payments-withdrawal-table {
	display: block;
}

.payments-table-title {
	text-align: center;
	max-width: 760px;
	margin: 0 auto 24px;
}

.payments-table-title h3 {
	color: #ffffff;
	font-size: 26px;
	font-weight: 900;
	line-height: 1.25;
	margin-bottom: 10px;
}

.payments-table-title p {
	color: #d8dde7;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.7;
	margin: 0;
}

.payments-table {
	display: grid;
	gap: 10px;
}

.payment-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	min-height: 64px;
	padding: 12px 18px;
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.08);
	transition: border-color 0.3s ease, background 0.3s ease, transform 0.3s ease;
}

.payment-row:hover {
	transform: translateY(-2px);
	background: rgba(255, 255, 255, 0.09);
	border-color: rgba(212, 175, 55, 0.35);
}

.payment-method {
	display: flex;
	align-items: center;
	gap: 14px;
	min-width: 0;
}

.payment-method strong {
	color: #ffffff;
	font-size: 15px;
	font-weight: 900;
	line-height: 1.3;
}

.payment-icon-group {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	flex: 0 0 auto;
}

.payment-icon {
	width: 52px;
	height: 52px;
	min-width: 52px;
	max-width: 52px;
	object-fit: contain;
	padding: 7px;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.08);
	display: inline-block;
}

.payment-icon-group .payment-icon {
	width: 46px;
	height: 46px;
	min-width: 46px;
	max-width: 46px;
}
.payment-limit {
	flex: 0 0 auto;
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	white-space: nowrap;
}

.payments-info-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
	margin-bottom: 34px;
}

.payments-info-card {
	position: relative;
	padding: 30px 26px;
	border-radius: 24px;
	background: #ffffff;
	overflow: hidden;
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.payments-info-card:before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, rgba(212, 175, 55, 0.13), rgba(212, 175, 55, 0));
	opacity: 0;
	transition: opacity 0.3s ease;
}

.payments-info-card:hover {
	transform: translateY(-6px);
	border-color: rgba(212, 175, 55, 0.62);
	box-shadow: 0 28px 60px rgba(6, 13, 32, 0.14);
}

.payments-info-card:hover:before {
	opacity: 1;
}

.payments-info-icon,
.payments-info-card h4,
.payments-info-card p {
	position: relative;
	z-index: 2;
}

.payments-info-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	margin-bottom: 18px;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 22px;
}

.payments-info-card h4 {
	color: #07111f;
	font-size: 20px;
	font-weight: 900;
	margin-bottom: 12px;
}

.payments-info-card p {
	color: #5f6878;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.75;
	margin: 0;
}

.payments-note-box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	padding: 38px 42px;
	border-radius: 28px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
}

.payments-note-box p {
	max-width: 850px;
	color: #d8dde7;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
	margin: 0;
}

.payments-cta-btn {
	flex: 0 0 auto;
	margin-top: 0;
	padding: 12px 32px;
	border-radius: 50px;
	border-color: #d4af37;
	background: #d4af37;
	color: #07111f;
	font-size: 14px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 12px 28px rgba(212, 175, 55, 0.25);
}

.payments-cta-btn:hover {
	background: transparent;
	color: #d4af37;
	border-color: #d4af37;
}

.payments-cta-btn:before,
.payments-cta-btn:after {
	display: none;
}

@media only screen and (max-width: 991px) {
	.payments-area .section-title h2 {
		font-size: 34px;
	}

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

	.payments-info-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.payments-note-box {
		flex-direction: column;
		align-items: flex-start;
		padding: 34px 28px;
	}

	.payments-cta-btn {
		width: 100%;
		text-align: center;
	}
}

@media only screen and (max-width: 767px) {
	.payments-table-panel {
		padding: 20px;
		border-radius: 24px;
	}

	.payments-tabs {
		flex-direction: column;
		gap: 10px;
	}

	.payments-tabs label {
		width: 100%;
		min-width: 0;
	}

	.payment-row {
		align-items: flex-start;
		flex-direction: column;
		gap: 10px;
	}

	.payment-limit {
		padding-left: 52px;
	}

	.payments-info-grid {
		grid-template-columns: 1fr;
	}
}

@media only screen and (max-width: 575px) {
	.payments-area .section-title h2 {
		font-size: 28px;
	}

	.payments-area .section-intro {
		font-size: 15px;
	}

	.payments-intro-content {
		padding: 28px 22px;
		border-radius: 22px;
	}

	.payments-intro-content h3,
	.payments-note-box h3 {
		font-size: 24px;
	}

	.payments-table-title h3 {
		font-size: 22px;
	}

	.payment-method strong {
		font-size: 14px;
	}

	.payment-icon {
		width: 34px;
		height: 34px;
		min-width: 34px;
		max-width: 34px;
		padding: 7px;
	}

	.payment-limit {
		font-size: 13px;
		padding-left: 48px;
	}

	.payments-info-card {
		padding: 26px 22px;
	}

	.payments-note-box {
		padding: 28px 22px;
		border-radius: 22px;
	}
}

/**************************************
 * Land-Based Casino Visitor Guide
 **************************************/

.visitor-area {
	position: relative;
	background:
		linear-gradient(180deg, #ffffff 0%, #f8f4ea 48%, #ffffff 100%);
	overflow: hidden;
}

.visitor-area .container {
	position: relative;
	z-index: 2;
}

.visitor-decor {
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
	z-index: 1;
}

.visitor-decor-one {
	top: -190px;
	right: -190px;
	width: 470px;
	height: 470px;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, rgba(212, 175, 55, 0) 70%);
}

.visitor-decor-two {
	left: -170px;
	bottom: -170px;
	width: 420px;
	height: 420px;
	background: radial-gradient(circle, rgba(7, 17, 31, 0.12) 0%, rgba(7, 17, 31, 0) 70%);
}

.visitor-area .section-title {
	margin-bottom: 48px;
}

.visitor-area .sub-title {
	color: #d4af37;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 12px;
}

.visitor-area .section-title h2 {
	color: #07111f;
	font-family: 'DM Sans', sans-serif;
	font-size: 42px;
	font-weight: 900;
	line-height: 1.22;
	margin-bottom: 18px;
}

.visitor-area .section-intro {
	max-width: 980px;
	margin: 0 auto;
	color: #555f6f;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
}

.visitor-hero-panel {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(340px, 0.75fr);
	gap: 30px;
	align-items: stretch;
	margin-bottom: 34px;
}

.visitor-hero-content,
.visitor-quick-card,
.visitor-hours-panel,
.visitor-info-card,
.visitor-dress-panel,
.visitor-gaming-panel,
.visitor-table-wrap,
.visitor-dining-panel,
.visitor-text-card,
.visitor-service-card,
.visitor-family-panel,
.visitor-faq-panel,
.visitor-responsible-panel {
	border: 1px solid rgba(212, 175, 55, 0.32);
	box-shadow: 0 24px 60px rgba(6, 13, 32, 0.14);
}

.visitor-hero-content {
	position: relative;
	padding: 42px;
	border-radius: 30px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
	overflow: hidden;
}

.visitor-hero-content:before {
	content: "";
	position: absolute;
	top: -120px;
	right: -120px;
	width: 330px;
	height: 330px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, rgba(212, 175, 55, 0) 70%);
	pointer-events: none;
}

.visitor-label,
.visitor-small-title {
	position: relative;
	z-index: 2;
	display: inline-block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.8px;
	margin-bottom: 12px;
}

.visitor-hero-content h3,
.visitor-hours-content h3,
.visitor-panel-heading h3,
.visitor-table-heading h3,
.visitor-text-card h3,
.visitor-family-content h3,
.visitor-responsible-panel h3 {
	position: relative;
	z-index: 2;
	color: #ffffff;
	font-size: 30px;
	font-weight: 900;
	line-height: 1.25;
	margin-bottom: 16px;
}

.visitor-hero-content p {
	position: relative;
	z-index: 2;
	color: #d8dde7;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin-bottom: 16px;
}

.visitor-hero-content p:last-child {
	margin-bottom: 0;
}

.visitor-hero-content strong {
	color: #ffffff;
	font-weight: 900;
}

.visitor-quick-card {
	padding: 34px;
	border-radius: 30px;
	background: #ffffff;
}

.visitor-quick-card > span {
	display: block;
	color: #d4af37;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.4px;
	margin-bottom: 22px;
}

.visitor-quick-row {
	padding: 20px 22px;
	border-radius: 20px;
	background: linear-gradient(180deg, #ffffff 0%, #fbf7ed 100%);
	border: 1px solid rgba(212, 175, 55, 0.26);
	margin-bottom: 14px;
}

.visitor-quick-row:last-child {
	margin-bottom: 0;
}

.visitor-quick-row strong {
	display: block;
	color: #07111f;
	font-size: 16px;
	font-weight: 900;
	margin-bottom: 6px;
}

.visitor-quick-row p {
	color: #5f6878;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.55;
	margin: 0;
}

.visitor-hours-panel {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	gap: 30px;
	align-items: center;
	padding: 38px;
	border-radius: 30px;
	background: #ffffff;
	margin-bottom: 34px;
}

.visitor-hours-content h3,
.visitor-panel-heading h3,
.visitor-table-heading h3,
.visitor-text-card h3,
.visitor-family-content h3 {
	color: #07111f;
}

.visitor-hours-content p,
.visitor-panel-heading p,
.visitor-family-content p {
	color: #5f6878;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin: 0;
}

.visitor-hours-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.visitor-hour-card {
	padding: 22px;
	border-radius: 20px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
	border: 1px solid rgba(212, 175, 55, 0.28);
}

.visitor-hour-card strong {
	display: block;
	color: #d4af37;
	font-size: 15px;
	font-weight: 900;
	margin-bottom: 8px;
}

.visitor-hour-card span {
	display: block;
	color: #ffffff;
	font-size: 17px;
	font-weight: 900;
	line-height: 1.35;
}

.visitor-info-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px;
	margin-bottom: 34px;
}

.visitor-info-card,
.visitor-gaming-card,
.visitor-dining-card,
.visitor-service-card,
.visitor-faq-item {
	position: relative;
	padding: 30px 24px;
	border-radius: 24px;
	background: #ffffff;
	overflow: hidden;
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.visitor-info-card:before,
.visitor-gaming-card:before,
.visitor-dining-card:before,
.visitor-service-card:before,
.visitor-faq-item:before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, rgba(212, 175, 55, 0.13), rgba(212, 175, 55, 0));
	opacity: 0;
	transition: opacity 0.3s ease;
}

.visitor-info-card:hover,
.visitor-gaming-card:hover,
.visitor-dining-card:hover,
.visitor-service-card:hover,
.visitor-faq-item:hover {
	transform: translateY(-6px);
	border-color: rgba(212, 175, 55, 0.62);
	box-shadow: 0 28px 60px rgba(6, 13, 32, 0.14);
}

.visitor-info-card:hover:before,
.visitor-gaming-card:hover:before,
.visitor-dining-card:hover:before,
.visitor-service-card:hover:before,
.visitor-faq-item:hover:before {
	opacity: 1;
}

.visitor-info-icon,
.visitor-info-card h4,
.visitor-info-card p,
.visitor-info-card ul,
.visitor-gaming-icon,
.visitor-gaming-card h4,
.visitor-gaming-card p,
.visitor-gaming-card ul,
.visitor-dining-card h4,
.visitor-dining-card p,
.visitor-service-icon,
.visitor-service-card h4,
.visitor-service-card p,
.visitor-faq-item h4,
.visitor-faq-item p {
	position: relative;
	z-index: 2;
}

.visitor-info-icon,
.visitor-gaming-icon,
.visitor-service-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	margin-bottom: 18px;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 22px;
}

.visitor-info-card h4,
.visitor-gaming-card h4,
.visitor-dining-card h4,
.visitor-service-card h4,
.visitor-faq-item h4 {
	color: #07111f;
	font-size: 20px;
	font-weight: 900;
	margin-bottom: 12px;
	line-height: 1.3;
}

.visitor-info-card p,
.visitor-gaming-card p,
.visitor-dining-card p,
.visitor-service-card p,
.visitor-faq-item p {
	color: #5f6878;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.75;
	margin-bottom: 18px;
}

.visitor-service-card p,
.visitor-dining-card p,
.visitor-faq-item p {
	margin-bottom: 0;
}

.visitor-info-card ul,
.visitor-gaming-card ul,
.visitor-dress-card ul {
	display: grid;
	gap: 9px;
	padding-left: 0;
	margin: 0;
	list-style: none;
}

.visitor-info-card li,
.visitor-gaming-card li,
.visitor-dress-card li {
	position: relative;
	color: #4f5968;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.45;
	padding-left: 18px;
}

.visitor-info-card li:before,
.visitor-gaming-card li:before,
.visitor-dress-card li:before {
	content: "";
	position: absolute;
	left: 0;
	top: 9px;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #d4af37;
}

.visitor-dress-panel,
.visitor-gaming-panel,
.visitor-dining-panel,
.visitor-faq-panel {
	padding: 38px;
	border-radius: 30px;
	background: #ffffff;
	margin-bottom: 34px;
}

.visitor-dress-content,
.visitor-panel-heading,
.visitor-table-heading {
	text-align: center;
	max-width: 900px;
	margin: 0 auto 30px;
}

.visitor-dress-content h3 {
	color: #07111f;
	font-size: 30px;
	font-weight: 900;
	line-height: 1.25;
	margin-bottom: 16px;
}

.visitor-dress-content p {
	color: #5f6878;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin: 0;
}

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

.visitor-dress-card {
	padding: 28px 24px;
	border-radius: 22px;
	background: linear-gradient(180deg, #ffffff 0%, #fbf7ed 100%);
	border: 1px solid rgba(212, 175, 55, 0.26);
}

.visitor-dress-card h4 {
	color: #07111f;
	font-size: 20px;
	font-weight: 900;
	margin-bottom: 18px;
}

.visitor-gaming-grid,
.visitor-dining-grid,
.visitor-service-grid,
.visitor-faq-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px;
}

.visitor-gaming-grid,
.visitor-dining-grid,
.visitor-faq-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.visitor-table-wrap {
	padding: 34px;
	border-radius: 28px;
	background: #ffffff;
	margin-bottom: 34px;
}

.visitor-info-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	border-radius: 18px;
	border: 1px solid rgba(7, 17, 31, 0.08);
}

.visitor-info-table th,
.visitor-info-table td {
	padding: 18px 20px;
	border-bottom: 1px solid rgba(7, 17, 31, 0.08);
	vertical-align: top;
	font-size: 15px;
	line-height: 1.6;
}

.visitor-info-table tr:last-child th,
.visitor-info-table tr:last-child td {
	border-bottom: none;
}

.visitor-info-table th {
	width: 30%;
	color: #07111f;
	background: #f7f1e3;
	font-weight: 900;
}

.visitor-info-table td {
	color: #5f6878;
	font-weight: 600;
	background: #ffffff;
}

.visitor-two-column {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
	margin-bottom: 34px;
}

.visitor-text-card {
	padding: 34px;
	border-radius: 28px;
	background: #ffffff;
}

.visitor-text-card p {
	color: #5f6878;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin-bottom: 24px;
}

.visitor-dark-card {
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
}

.visitor-dark-card h3 {
	color: #ffffff;
}

.visitor-dark-card p {
	color: #d8dde7;
}

.visitor-check-list {
	display: grid;
	gap: 14px;
}

.visitor-check-list li {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	color: #4f5968;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.55;
}

.visitor-dark-card .visitor-check-list li {
	color: #ffffff;
}

.visitor-check-list i {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: rgba(212, 175, 55, 0.14);
	color: #d4af37;
	font-size: 12px;
	margin-top: 1px;
}

.visitor-service-grid {
	margin-bottom: 34px;
}

.visitor-family-panel {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(340px, 0.8fr);
	gap: 30px;
	align-items: center;
	padding: 38px;
	border-radius: 30px;
	background: #ffffff;
	margin-bottom: 34px;
}

.visitor-family-list {
	display: grid;
	gap: 14px;
}

.visitor-family-item {
	padding: 20px 22px;
	border-radius: 20px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
	border: 1px solid rgba(212, 175, 55, 0.28);
}

.visitor-family-item strong {
	display: block;
	color: #d4af37;
	font-size: 15px;
	font-weight: 900;
	margin-bottom: 7px;
}

.visitor-family-item span {
	display: block;
	color: #ffffff;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.45;
}

.visitor-responsible-panel {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	padding: 38px 42px;
	border-radius: 28px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
}

.visitor-responsible-panel p {
	max-width: 870px;
	color: #d8dde7;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
	margin: 0;
}

.visitor-cta-btn {
	flex: 0 0 auto;
	margin-top: 0;
	padding: 12px 32px;
	border-radius: 50px;
	border-color: #d4af37;
	background: #d4af37;
	color: #07111f;
	font-size: 14px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 12px 28px rgba(212, 175, 55, 0.25);
}

.visitor-cta-btn:hover {
	background: transparent;
	color: #d4af37;
	border-color: #d4af37;
}

.visitor-cta-btn:before,
.visitor-cta-btn:after {
	display: none;
}

@media only screen and (max-width: 1199px) {
	.visitor-info-grid,
	.visitor-service-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media only screen and (max-width: 991px) {
	.visitor-area .section-title h2 {
		font-size: 34px;
	}

	.visitor-hero-panel,
	.visitor-hours-panel,
	.visitor-two-column,
	.visitor-family-panel {
		grid-template-columns: 1fr;
	}

	.visitor-responsible-panel {
		flex-direction: column;
		align-items: flex-start;
		padding: 34px 28px;
	}

	.visitor-cta-btn {
		width: 100%;
		text-align: center;
	}
}

@media only screen and (max-width: 767px) {
	.visitor-hours-grid,
	.visitor-info-grid,
	.visitor-dress-grid,
	.visitor-gaming-grid,
	.visitor-dining-grid,
	.visitor-service-grid,
	.visitor-faq-grid {
		grid-template-columns: 1fr;
	}

	.visitor-info-table th,
	.visitor-info-table td {
		display: block;
		width: 100%;
	}

	.visitor-info-table th {
		border-bottom: none;
		padding-bottom: 8px;
	}

	.visitor-info-table td {
		padding-top: 8px;
	}
}

@media only screen and (max-width: 575px) {
	.visitor-area .section-title h2 {
		font-size: 28px;
	}

	.visitor-area .section-intro {
		font-size: 15px;
	}

	.visitor-hero-content,
	.visitor-quick-card,
	.visitor-hours-panel,
	.visitor-dress-panel,
	.visitor-gaming-panel,
	.visitor-table-wrap,
	.visitor-dining-panel,
	.visitor-text-card,
	.visitor-family-panel,
	.visitor-faq-panel {
		padding: 28px 22px;
		border-radius: 22px;
	}

	.visitor-hero-content h3,
	.visitor-hours-content h3,
	.visitor-panel-heading h3,
	.visitor-table-heading h3,
	.visitor-text-card h3,
	.visitor-family-content h3,
	.visitor-responsible-panel h3,
	.visitor-dress-content h3 {
		font-size: 24px;
	}

	.visitor-info-card,
	.visitor-gaming-card,
	.visitor-dining-card,
	.visitor-service-card,
	.visitor-faq-item {
		padding: 26px 22px;
	}

	.visitor-responsible-panel {
		padding: 28px 22px;
		border-radius: 22px;
	}
}

/**************************************
 * Trust, Safety & Responsible Casino Operations
 **************************************/

.trust-area {
	position: relative;
	background:
		linear-gradient(180deg, #07111f 0%, #101b2d 46%, #07111f 100%);
	overflow: hidden;
}

.trust-area .container {
	position: relative;
	z-index: 2;
}

.trust-decor {
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
	z-index: 1;
}

.trust-decor-one {
	top: -190px;
	right: -190px;
	width: 470px;
	height: 470px;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.22) 0%, rgba(212, 175, 55, 0) 70%);
}

.trust-decor-two {
	left: -170px;
	bottom: -170px;
	width: 420px;
	height: 420px;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0) 70%);
}

.trust-area .section-title {
	margin-bottom: 48px;
}

.trust-area .sub-title {
	color: #d4af37;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 12px;
}

.trust-area .section-title h2 {
	color: #ffffff;
	font-family: 'DM Sans', sans-serif;
	font-size: 42px;
	font-weight: 900;
	line-height: 1.22;
	margin-bottom: 18px;
}

.trust-area .section-intro {
	max-width: 980px;
	margin: 0 auto;
	color: #d8dde7;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
}

.trust-hero-panel {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(340px, 0.75fr);
	gap: 30px;
	align-items: stretch;
	margin-bottom: 34px;
}

.trust-hero-content,
.trust-status-card,
.trust-card,
.trust-process-panel,
.trust-table-wrap,
.trust-support-panel,
.trust-warning-box {
	border: 1px solid rgba(212, 175, 55, 0.32);
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.24);
}

.trust-hero-content {
	position: relative;
	padding: 42px;
	border-radius: 30px;
	background: rgba(255, 255, 255, 0.07);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	overflow: hidden;
}

.trust-hero-content:before {
	content: "";
	position: absolute;
	top: -120px;
	right: -120px;
	width: 330px;
	height: 330px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, rgba(212, 175, 55, 0) 70%);
	pointer-events: none;
}

.trust-label,
.trust-small-title {
	position: relative;
	z-index: 2;
	display: inline-block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.8px;
	margin-bottom: 12px;
}

.trust-hero-content h3,
.trust-panel-heading h3,
.trust-table-heading h3,
.trust-support-content h3,
.trust-warning-box h3 {
	position: relative;
	z-index: 2;
	color: #ffffff;
	font-size: 30px;
	font-weight: 900;
	line-height: 1.25;
	margin-bottom: 16px;
}

.trust-hero-content p {
	position: relative;
	z-index: 2;
	color: #d8dde7;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin-bottom: 16px;
}

.trust-hero-content p:last-child {
	margin-bottom: 0;
}

.trust-status-card {
	padding: 34px;
	border-radius: 30px;
	background: #ffffff;
}

.trust-status-card > span {
	display: block;
	color: #d4af37;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.4px;
	margin-bottom: 22px;
}

.trust-status-row {
	padding: 20px 22px;
	border-radius: 20px;
	background: linear-gradient(180deg, #ffffff 0%, #fbf7ed 100%);
	border: 1px solid rgba(212, 175, 55, 0.26);
	margin-bottom: 14px;
}

.trust-status-row:last-child {
	margin-bottom: 0;
}

.trust-status-row strong {
	display: block;
	color: #07111f;
	font-size: 16px;
	font-weight: 900;
	margin-bottom: 6px;
}

.trust-status-row p {
	color: #5f6878;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.55;
	margin: 0;
}

.trust-pill-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
	margin-bottom: 34px;
}

.trust-pill {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	padding: 18px 20px;
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(212, 175, 55, 0.3);
	box-shadow: 0 18px 45px rgba(0, 0, 0, 0.22);
}

.trust-pill i {
	color: #d4af37;
	font-size: 20px;
}

.trust-pill span {
	color: #ffffff;
	font-size: 14px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	text-align: center;
}

.trust-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px;
	margin-bottom: 34px;
}

.trust-card {
	position: relative;
	padding: 30px 24px;
	border-radius: 24px;
	background: #ffffff;
	overflow: hidden;
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.trust-card:before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, rgba(212, 175, 55, 0.13), rgba(212, 175, 55, 0));
	opacity: 0;
	transition: opacity 0.3s ease;
}

.trust-card:hover {
	transform: translateY(-6px);
	border-color: rgba(212, 175, 55, 0.62);
	box-shadow: 0 28px 60px rgba(0, 0, 0, 0.26);
}

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

.trust-card-icon,
.trust-card h4,
.trust-card p,
.trust-card ul {
	position: relative;
	z-index: 2;
}

.trust-card-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	margin-bottom: 18px;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 22px;
}

.trust-card h4 {
	color: #07111f;
	font-size: 19px;
	font-weight: 900;
	line-height: 1.3;
	margin-bottom: 12px;
}

.trust-card p {
	color: #5f6878;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.75;
	margin-bottom: 18px;
}

.trust-card ul {
	display: grid;
	gap: 9px;
	padding-left: 0;
	margin: 0;
	list-style: none;
}

.trust-card li {
	position: relative;
	color: #4f5968;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.45;
	padding-left: 18px;
}

.trust-card li:before {
	content: "";
	position: absolute;
	left: 0;
	top: 9px;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #d4af37;
}

.trust-process-panel,
.trust-table-wrap,
.trust-support-panel {
	padding: 38px;
	border-radius: 30px;
	background: #ffffff;
	margin-bottom: 34px;
}

.trust-panel-heading,
.trust-table-heading {
	text-align: center;
	max-width: 900px;
	margin: 0 auto 30px;
}

.trust-panel-heading h3,
.trust-table-heading h3,
.trust-support-content h3 {
	color: #07111f;
}

.trust-panel-heading p,
.trust-support-content p {
	color: #5f6878;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.85;
	margin: 0;
}

.trust-process-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px;
}

.trust-process-step {
	padding: 26px 22px;
	border-radius: 22px;
	background: linear-gradient(180deg, #ffffff 0%, #fbf7ed 100%);
	border: 1px solid rgba(212, 175, 55, 0.26);
}

.trust-process-step span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 15px;
	font-weight: 900;
	margin-bottom: 16px;
}

.trust-process-step h4 {
	color: #07111f;
	font-size: 18px;
	font-weight: 900;
	margin-bottom: 10px;
}

.trust-process-step p {
	color: #5f6878;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.7;
	margin: 0;
}

.trust-info-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	border-radius: 18px;
	border: 1px solid rgba(7, 17, 31, 0.08);
}

.trust-info-table th,
.trust-info-table td {
	padding: 18px 20px;
	border-bottom: 1px solid rgba(7, 17, 31, 0.08);
	vertical-align: top;
	font-size: 15px;
	line-height: 1.6;
}

.trust-info-table tr:last-child th,
.trust-info-table tr:last-child td {
	border-bottom: none;
}

.trust-info-table th {
	width: 30%;
	color: #07111f;
	background: #f7f1e3;
	font-weight: 900;
}

.trust-info-table td {
	color: #5f6878;
	font-weight: 600;
	background: #ffffff;
}

.trust-support-panel {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
	gap: 30px;
	align-items: center;
}

.trust-support-content p {
	margin-bottom: 24px;
}

.trust-check-list {
	display: grid;
	gap: 14px;
}

.trust-check-list li {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	color: #4f5968;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.55;
}

.trust-check-list i {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: rgba(212, 175, 55, 0.14);
	color: #d4af37;
	font-size: 12px;
	margin-top: 1px;
}

.trust-contact-card {
	padding: 30px 28px;
	border-radius: 24px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
	border: 1px solid rgba(212, 175, 55, 0.28);
}

.trust-contact-card span {
	display: inline-block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	margin-bottom: 12px;
}

.trust-contact-card h4 {
	color: #ffffff;
	font-size: 22px;
	font-weight: 900;
	line-height: 1.3;
	margin-bottom: 14px;
}

.trust-contact-card p {
	color: #d8dde7;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.75;
	margin-bottom: 18px;
}

.trust-contact-card strong {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 20px;
	border-radius: 50px;
	background: #d4af37;
	color: #07111f;
	font-size: 18px;
	font-weight: 1000;
}

.trust-warning-box {
	padding: 38px 42px;
	border-radius: 28px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
}

.trust-warning-box p {
	max-width: 900px;
	color: #d8dde7;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
	margin: 0;
}

@media only screen and (max-width: 1199px) {
	.trust-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.trust-process-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media only screen and (max-width: 991px) {
	.trust-area .section-title h2 {
		font-size: 34px;
	}

	.trust-hero-panel,
	.trust-support-panel {
		grid-template-columns: 1fr;
	}

	.trust-pill-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media only screen and (max-width: 767px) {
	.trust-grid,
	.trust-process-grid,
	.trust-pill-grid {
		grid-template-columns: 1fr;
	}

	.trust-info-table th,
	.trust-info-table td {
		display: block;
		width: 100%;
	}

	.trust-info-table th {
		border-bottom: none;
		padding-bottom: 8px;
	}

	.trust-info-table td {
		padding-top: 8px;
	}
}

@media only screen and (max-width: 575px) {
	.trust-area .section-title h2 {
		font-size: 28px;
	}

	.trust-area .section-intro {
		font-size: 15px;
	}

	.trust-hero-content,
	.trust-status-card,
	.trust-process-panel,
	.trust-table-wrap,
	.trust-support-panel,
	.trust-warning-box {
		padding: 28px 22px;
		border-radius: 22px;
	}

	.trust-hero-content h3,
	.trust-panel-heading h3,
	.trust-table-heading h3,
	.trust-support-content h3,
	.trust-warning-box h3 {
		font-size: 24px;
	}

	.trust-card {
		padding: 26px 22px;
	}

	.trust-contact-card strong {
		width: 100%;
		font-size: 16px;
	}
}

/**************************************
 * FAQ Section
 **************************************/

.faq-area {
	position: relative;
	background:
		linear-gradient(180deg, #ffffff 0%, #f8f4ea 48%, #ffffff 100%);
	overflow: hidden;
}

.faq-area .container {
	position: relative;
	z-index: 2;
}

.faq-decor {
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
	z-index: 1;
}

.faq-decor-one {
	top: -180px;
	right: -180px;
	width: 450px;
	height: 450px;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, rgba(212, 175, 55, 0) 70%);
}

.faq-decor-two {
	left: -160px;
	bottom: -160px;
	width: 390px;
	height: 390px;
	background: radial-gradient(circle, rgba(7, 17, 31, 0.12) 0%, rgba(7, 17, 31, 0) 70%);
}

.faq-area .section-title {
	margin-bottom: 48px;
}

.faq-area .sub-title {
	color: #d4af37;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 12px;
}

.faq-area .section-title h2 {
	color: #07111f;
	font-family: 'DM Sans', sans-serif;
	font-size: 42px;
	font-weight: 900;
	line-height: 1.22;
	margin-bottom: 18px;
}

.faq-area .section-intro {
	max-width: 900px;
	margin: 0 auto;
	color: #555f6f;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
}

.faq-layout {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
	margin-bottom: 36px;
}

.faq-column {
	display: grid;
	gap: 16px;
	align-content: start;
}

.faq-item {
	border-radius: 20px;
	background: #ffffff;
	border: 1px solid rgba(212, 175, 55, 0.28);
	box-shadow: 0 16px 42px rgba(6, 13, 32, 0.08);
	overflow: hidden;
	transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.faq-item:hover {
	border-color: rgba(212, 175, 55, 0.6);
	box-shadow: 0 24px 55px rgba(6, 13, 32, 0.12);
}

.faq-item input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.faq-question {
	position: relative;
	display: grid;
	grid-template-columns: 46px minmax(0, 1fr) 26px;
	gap: 16px;
	align-items: center;
	width: 100%;
	padding: 22px 24px;
	cursor: pointer;
	margin: 0;
}

.faq-question span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 13px;
	font-weight: 900;
}

.faq-question strong {
	color: #07111f;
	font-size: 17px;
	font-weight: 900;
	line-height: 1.4;
}

.faq-question i {
	color: #d4af37;
	font-size: 15px;
	text-align: right;
	transition: transform 0.3s ease;
}

.faq-answer {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.35s ease;
}

.faq-answer p {
	padding: 0 24px 24px 86px;
	color: #5f6878;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
	margin: 0;
}

.faq-item input:checked ~ .faq-question {
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
}

.faq-item input:checked ~ .faq-question strong {
	color: #ffffff;
}

.faq-item input:checked ~ .faq-question span {
	background: #d4af37;
	color: #07111f;
}

.faq-item input:checked ~ .faq-question i {
	transform: rotate(45deg);
}

.faq-item input:checked ~ .faq-answer {
	max-height: 260px;
}

.faq-item input:checked ~ .faq-answer p {
	padding-top: 22px;
}

.faq-bottom-box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	padding: 38px 42px;
	border-radius: 28px;
	background:
		linear-gradient(135deg, rgba(7, 17, 31, 0.98), rgba(19, 32, 55, 0.96));
	border: 1px solid rgba(212, 175, 55, 0.34);
	box-shadow: 0 24px 60px rgba(6, 13, 32, 0.18);
}

.faq-bottom-box h3 {
	color: #ffffff;
	font-size: 26px;
	font-weight: 900;
	margin-bottom: 10px;
}

.faq-bottom-box p {
	max-width: 800px;
	color: #d8dde7;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
	margin: 0;
}

.faq-cta-btn {
	flex: 0 0 auto;
	margin-top: 0;
	padding: 12px 32px;
	border-radius: 50px;
	border-color: #d4af37;
	background: #d4af37;
	color: #07111f;
	font-size: 14px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	box-shadow: 0 12px 28px rgba(212, 175, 55, 0.25);
}

.faq-cta-btn:hover {
	background: transparent;
	color: #d4af37;
	border-color: #d4af37;
}

.faq-cta-btn:before,
.faq-cta-btn:after {
	display: none;
}

@media only screen and (max-width: 991px) {
	.faq-area .section-title h2 {
		font-size: 34px;
	}

	.faq-layout {
		grid-template-columns: 1fr;
	}

	.faq-bottom-box {
		flex-direction: column;
		align-items: flex-start;
		padding: 34px 28px;
	}

	.faq-cta-btn {
		width: 100%;
		text-align: center;
	}
}

@media only screen and (max-width: 575px) {
	.faq-area .section-title h2 {
		font-size: 28px;
	}

	.faq-area .section-intro {
		font-size: 15px;
	}

	.faq-question {
		grid-template-columns: 38px minmax(0, 1fr) 22px;
		gap: 12px;
		padding: 20px 18px;
	}

	.faq-question span {
		width: 36px;
		height: 36px;
		font-size: 12px;
	}

	.faq-question strong {
		font-size: 15px;
	}

	.faq-answer p {
		padding: 0 18px 22px 68px;
		font-size: 14px;
	}

	.faq-item input:checked ~ .faq-answer {
		max-height: 360px;
	}

	.faq-bottom-box {
		padding: 28px 22px;
		border-radius: 22px;
	}

	.faq-bottom-box h3 {
		font-size: 22px;
	}
}

/**************************************
 * Player Reviews Section
 **************************************/

.reviews-area {
	position: relative;
	background:
		linear-gradient(180deg, #07111f 0%, #101b2d 46%, #07111f 100%);
	overflow: hidden;
}

.reviews-area .container {
	position: relative;
	z-index: 2;
}

.reviews-decor {
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
	z-index: 1;
}

.reviews-decor-one {
	top: -190px;
	right: -190px;
	width: 470px;
	height: 470px;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.22) 0%, rgba(212, 175, 55, 0) 70%);
}

.reviews-decor-two {
	left: -170px;
	bottom: -170px;
	width: 420px;
	height: 420px;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0) 70%);
}

.reviews-area .section-title {
	margin-bottom: 48px;
}

.reviews-area .sub-title {
	color: #d4af37;
	font-family: 'DM Sans', sans-serif;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 12px;
}

.reviews-area .section-title h2 {
	color: #ffffff;
	font-family: 'DM Sans', sans-serif;
	font-size: 42px;
	font-weight: 900;
	line-height: 1.22;
	margin-bottom: 18px;
}

.reviews-area .section-intro {
	max-width: 920px;
	margin: 0 auto;
	color: #d8dde7;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
}

.reviews-layout {
	display: grid;
	grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
	gap: 34px;
	align-items: stretch;
}

.reviews-image-card,
.review-card {
	border: 1px solid rgba(212, 175, 55, 0.32);
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.24);
}

.reviews-image-card {
	position: relative;
	height: 100%;
	min-height: 620px;
	border-radius: 30px;
	overflow: hidden;
	background: #07111f;
}

.reviews-image-card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transform: scale(1.02);
}

.reviews-image-card:before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(180deg, rgba(7, 17, 31, 0.05) 0%, rgba(7, 17, 31, 0.42) 38%, rgba(7, 17, 31, 0.94) 100%);
	z-index: 1;
}

.reviews-image-overlay {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	padding: 38px;
}

.reviews-image-overlay span {
	display: inline-block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.8px;
	margin-bottom: 12px;
}

.reviews-image-overlay h3 {
	color: #ffffff;
	font-size: 30px;
	font-weight: 900;
	line-height: 1.25;
	margin-bottom: 14px;
}

.reviews-image-overlay p {
	color: #d8dde7;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
	margin: 0;
}

.reviews-content-column {
	display: flex;
	align-items: center;
}

.reviews-carousel {
	width: 100%;
}

.review-card {
	position: relative;
	min-height: 560px;
	padding: 44px;
	border-radius: 30px;
	background: #ffffff;
	overflow: hidden;
}

.review-card:before {
	content: "“";
	position: absolute;
	top: -38px;
	right: 28px;
	color: rgba(212, 175, 55, 0.18);
	font-size: 190px;
	font-family: Georgia, serif;
	font-weight: 900;
	line-height: 1;
	pointer-events: none;
}

.review-top,
.review-card > p,
.review-author {
	position: relative;
	z-index: 2;
}

.review-top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 22px;
	margin-bottom: 26px;
}

.review-category {
	display: inline-block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	margin-bottom: 12px;
}

.review-top h3 {
	color: #07111f;
	font-size: 29px;
	font-weight: 900;
	line-height: 1.28;
	margin: 0;
}

.review-stars {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	gap: 4px;
	padding: 10px 12px;
	border-radius: 50px;
	background: #f7f1e3;
	border: 1px solid rgba(212, 175, 55, 0.24);
}

.review-stars i {
	color: #d4af37;
	font-size: 14px;
}

.review-card > p {
	color: #5f6878;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.9;
	margin-bottom: 34px;
}

.review-author {
	display: flex;
	align-items: center;
	gap: 14px;
	padding-top: 26px;
	border-top: 1px solid rgba(7, 17, 31, 0.08);
}

.review-avatar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	border-radius: 50%;
	background: #07111f;
	color: #d4af37;
	font-size: 20px;
	font-weight: 1000;
}

.review-author strong {
	display: block;
	color: #07111f;
	font-size: 17px;
	font-weight: 900;
	margin-bottom: 4px;
}

.review-author span {
	display: block;
	color: #6b7280;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.4px;
}

.reviews-controls {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
	margin-top: 26px;
}

.reviews-control-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	border-radius: 50%;
	border: 1px solid rgba(212, 175, 55, 0.4);
	background: rgba(255, 255, 255, 0.08);
	color: #d4af37;
	font-size: 22px;
	cursor: pointer;
	transition: all 0.3s ease;
}

.reviews-control-btn:hover {
	background: #d4af37;
	color: #07111f;
	border-color: #d4af37;
}

.reviews-indicators {
	position: static;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin: 0;
}

.reviews-indicators [data-bs-target] {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	border: none;
	background: rgba(255, 255, 255, 0.35);
	opacity: 1;
	margin: 0;
	transition: all 0.3s ease;
}

.reviews-indicators .active {
	width: 28px;
	border-radius: 30px;
	background: #d4af37;
}

@media only screen and (max-width: 991px) {
	.reviews-area .section-title h2 {
		font-size: 34px;
	}

	.reviews-layout {
		grid-template-columns: 1fr;
	}

	.reviews-image-card {
		min-height: 440px;
	}

	.review-card {
		min-height: auto;
	}
}

@media only screen and (max-width: 575px) {
	.reviews-area .section-title h2 {
		font-size: 28px;
	}

	.reviews-area .section-intro {
		font-size: 15px;
	}

	.reviews-image-card {
		min-height: 380px;
		border-radius: 22px;
	}

	.reviews-image-overlay {
		padding: 28px 22px;
	}

	.reviews-image-overlay h3 {
		font-size: 24px;
	}

	.review-card {
		padding: 30px 22px;
		border-radius: 22px;
	}

	.review-top {
		flex-direction: column;
	}

	.review-top h3 {
		font-size: 23px;
	}

	.review-card > p {
		font-size: 15px;
		line-height: 1.8;
	}

	.review-author {
		align-items: flex-start;
	}

	.reviews-controls {
		gap: 12px;
	}

	.reviews-control-btn {
		width: 42px;
		height: 42px;
	}
}

/**************************************
 * Footer Section
 **************************************/

.footer-section {
	position: relative;
	background: #07111f;
	overflow: hidden;
}

.footer-top-wrapper {
	position: relative;
	background:
		linear-gradient(180deg, #07111f 0%, #101b2d 54%, #07111f 100%);
	overflow: hidden;
}

.footer-top-wrapper .container {
	position: relative;
	z-index: 2;
}

.footer-decor {
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
	z-index: 1;
}

.footer-decor-one {
	top: -180px;
	right: -180px;
	width: 440px;
	height: 440px;
	background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, rgba(212, 175, 55, 0) 70%);
}

.footer-decor-two {
	left: -160px;
	bottom: -160px;
	width: 390px;
	height: 390px;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.07) 0%, rgba(255, 255, 255, 0) 70%);
}

.footer-about {
	padding-right: 30px;
}

.footer-logo {
	display: inline-flex;
	align-items: center;
	margin-bottom: 24px;
}

.footer-logo img {
	display: block;
	max-width: 250px;
	width: auto;
	height: auto;
}

.footer-about p {
	color: #d8dde7;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.85;
	margin-bottom: 22px;
}

.footer-trust-note {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 16px 18px;
	margin-bottom: 24px;
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(212, 175, 55, 0.28);
}

.footer-trust-note i {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: rgba(212, 175, 55, 0.14);
	color: #d4af37;
	font-size: 13px;
	margin-top: 2px;
}

.footer-trust-note span {
	color: #ffffff;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.6;
}

.footer-social-icon {
	display: flex;
	align-items: center;
	gap: 10px;
	padding-left: 0;
	margin: 0;
	list-style: none;
}

.footer-social-icon li a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(212, 175, 55, 0.28);
	color: #d4af37;
	font-size: 15px;
	transition: all 0.3s ease;
}

.footer-social-icon li a:hover {
	background: #d4af37;
	border-color: #d4af37;
	color: #07111f;
	transform: translateY(-3px);
}

.footer-list {
	margin-bottom: 30px;
}

.footer-list .title {
	position: relative;
	color: #ffffff;
	font-size: 18px;
	font-weight: 900;
	line-height: 1.3;
	margin-bottom: 24px;
	padding-bottom: 14px;
}

.footer-list .title:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 46px;
	height: 3px;
	border-radius: 3px;
	background: #d4af37;
}

.footer-list ul {
	display: grid;
	gap: 12px;
	padding-left: 0;
	margin: 0;
	list-style: none;
}

.footer-list ul li a {
	position: relative;
	display: inline-flex;
	align-items: center;
	color: #d8dde7;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.45;
	transition: color 0.3s ease, transform 0.3s ease;
}

.footer-list ul li a:before {
	content: "";
	width: 7px;
	height: 7px;
	margin-right: 10px;
	border-radius: 50%;
	background: rgba(212, 175, 55, 0.7);
	transition: background 0.3s ease, transform 0.3s ease;
}

.footer-list ul li a:hover {
	color: #d4af37;
	transform: translateX(4px);
}

.footer-list ul li a:hover:before {
	background: #d4af37;
	transform: scale(1.2);
}

.footer-payment-box {
	margin-top: 26px;
	padding: 20px;
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(212, 175, 55, 0.28);
}

.footer-payment-box span {
	display: block;
	color: #d4af37;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 14px;
}

.footer-payment-icons {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.footer-payment-icons img {
	width: 42px;
	height: 42px;
	min-width: 42px;
	max-width: 42px;
	object-fit: contain;
	padding: 7px;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.08);
}

.footer-disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	margin-top: 28px;
	padding: 24px 26px;
	border-radius: 22px;
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(212, 175, 55, 0.28);
}

.footer-disclaimer-icon {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: #d4af37;
	color: #07111f;
	font-size: 18px;
}

.footer-disclaimer p {
	color: #d8dde7;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.8;
	margin: 0;
}

.footer-bottom-wrapper {
	position: relative;
	background: #050b16;
	border-top: 1px solid rgba(212, 175, 55, 0.22);
	padding: 22px 0;
}

.footer-bottom-content {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

.footer-copyright-text p {
	color: #d8dde7;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.6;
	margin: 0;
}

.footer-bottom-links {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 18px;
}

.footer-bottom-links a {
	color: #d8dde7;
	font-size: 13px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.4px;
	transition: color 0.3s ease;
}

.footer-bottom-links a:hover {
	color: #d4af37;
}

@media only screen and (max-width: 991px) {
	.footer-about {
		padding-right: 0;
		margin-bottom: 34px;
	}

	.footer-bottom-content {
		flex-direction: column;
		text-align: center;
	}

	.footer-bottom-links {
		justify-content: center;
	}
}

@media only screen and (max-width: 575px) {
	.footer-logo img {
		max-width: 220px;
	}

	.footer-disclaimer {
		flex-direction: column;
		padding: 22px;
	}

	.footer-payment-icons img {
		width: 38px;
		height: 38px;
		min-width: 38px;
		max-width: 38px;
	}

	.footer-bottom-links {
		gap: 12px;
	}

	.footer-bottom-links a {
		font-size: 12px;
	}
}

/*************************************************
 * SHARED PAGE WIDTH
 *************************************************/

.townsville-navbar > .container,
.hero-area > .container,
.casino-experience-section > .container,
.casino-games-section > .container,
.vip-experience-section > .container {
	width: 100% !important;
	max-width: 1320px !important;
	margin-right: auto !important;
	margin-left: auto !important;
	padding-right: 32px !important;
	padding-left: 32px !important;
	box-sizing: border-box;
}

@media only screen and (max-width: 767px) {
	.townsville-navbar > .container,
	.hero-area > .container,
	.casino-experience-section > .container,
	.casino-games-section > .container,
	.vip-experience-section > .container {
		padding-right: 22px !important;
		padding-left: 22px !important;
	}
}

@media only screen and (max-width: 575px) {
	.townsville-navbar > .container,
	.hero-area > .container,
	.casino-experience-section > .container,
	.casino-games-section > .container,
	.vip-experience-section > .container {
		padding-right: 18px !important;
		padding-left: 18px !important;
	}
}


/*************************************************
 * COMPACT TOWNSVILLE CASINO HEADER
 *************************************************/

.townsville-navbar {
	min-height: 68px !important;
	padding: 8px 0 !important;
}

.townsville-navbar .container {
	min-height: 52px !important;
}

.townsville-navbar .navbar-brand {
	width: 190px !important;
	height: 48px !important;
	max-width: 190px !important;
	max-height: 48px !important;
	margin: 0 18px 0 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

.townsville-navbar .navbar-brand img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: 190px !important;
	max-height: 48px !important;
	object-fit: contain !important;
	object-position: left center !important;
}

.townsville-navbar .navbar-play-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	min-width: 104px !important;
	height: 40px !important;
	min-height: 40px !important;
	max-height: 40px !important;
	margin: 0 0 0 14px !important;
	padding: 0 18px !important;
	border-width: 1px !important;
	border-radius: 22px !important;
	font-size: 11px !important;
	line-height: 1 !important;
	letter-spacing: 0.55px !important;
	white-space: nowrap !important;
}


/*************************************************
 * FIXED HEADER BACKGROUND
 *************************************************/

.townsville-navbar,
.navbar-area.townsville-navbar,
.townsville-navbar.is-sticky,
.townsville-navbar.navbar-reduce,
.navbar-area.townsville-navbar.navbar-reduce {
	background:
		linear-gradient(
			90deg,
			rgba(8, 19, 20, 0.97) 0%,
			rgba(26, 24, 24, 0.96) 52%,
			rgba(39, 27, 22, 0.97) 100%
		) !important;
	border-bottom: 1px solid rgba(210, 169, 99, 0.28) !important;
	box-shadow:
		0 12px 35px rgba(0, 0, 0, 0.32),
		inset 0 -1px 0 rgba(255, 255, 255, 0.025) !important;
	backdrop-filter: blur(16px) !important;
	-webkit-backdrop-filter: blur(16px) !important;
}

.townsville-navbar .navbar-nav .nav-link,
.townsville-navbar.navbar-reduce .navbar-nav .nav-link,
.navbar-area.townsville-navbar.navbar-reduce .navbar-nav .nav-link {
	color: rgba(255, 255, 255, 0.88) !important;
}

.townsville-navbar .navbar-nav .nav-link:hover,
.townsville-navbar .navbar-nav .nav-link:focus,
.townsville-navbar .navbar-nav .nav-link.active,
.townsville-navbar.navbar-reduce .navbar-nav .nav-link:hover,
.townsville-navbar.navbar-reduce .navbar-nav .nav-link.active {
	color: #e2c78f !important;
	background: transparent !important;
}

.townsville-navbar .black-logo,
.townsville-navbar.navbar-reduce .black-logo {
	display: none !important;
}

.townsville-navbar .white-logo,
.townsville-navbar.navbar-reduce .white-logo {
	display: block !important;
}

.townsville-navbar .navbar-play-btn,
.townsville-navbar.navbar-reduce .navbar-play-btn {
	border-color: #d8ad54 !important;
	background: rgba(197, 147, 49, 0.1) !important;
	color: #f0bd42 !important;
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.18) !important;
}

.townsville-navbar .navbar-play-btn:hover,
.townsville-navbar .navbar-play-btn:focus {
	border-color: #e6c16d !important;
	background: #d8ad54 !important;
	color: #11171a !important;
}


/*************************************************
 * HEADER RESPONSIVE
 *************************************************/

@media only screen and (max-width: 1199px) {
	.townsville-navbar {
		min-height: 62px !important;
	}

	.townsville-navbar .navbar-brand {
		width: 165px !important;
		height: 42px !important;
		max-width: 165px !important;
		max-height: 42px !important;
		margin-right: auto !important;
	}

	.townsville-navbar .navbar-brand img {
		max-width: 165px !important;
		max-height: 42px !important;
	}

	.townsville-navbar .navbar-play-btn {
		min-width: 98px !important;
		height: 38px !important;
		min-height: 38px !important;
		max-height: 38px !important;
		margin-left: 10px !important;
		padding: 0 15px !important;
		font-size: 10px !important;
	}
}

@media only screen and (max-width: 991px) {
	.townsville-navbar .navbar-collapse {
		margin-top: 8px;
		padding: 15px 18px;
		border: 1px solid rgba(210, 169, 99, 0.2);
		border-radius: 7px;
		background: rgba(19, 20, 21, 0.98) !important;
		box-shadow: 0 20px 40px rgba(0, 0, 0, 0.32);
	}
}

@media only screen and (max-width: 575px) {
	.townsville-navbar .navbar-brand {
		width: 140px !important;
		height: 38px !important;
		max-width: 140px !important;
		max-height: 38px !important;
	}

	.townsville-navbar .navbar-brand img {
		max-width: 140px !important;
		max-height: 38px !important;
	}

	.townsville-navbar .navbar-play-btn {
		min-width: 92px !important;
		height: 36px !important;
		min-height: 36px !important;
		max-height: 36px !important;
		padding: 0 13px !important;
	}
}


/*************************************************
 * HERO BACKGROUND
 *************************************************/

.hero-area .hero-overlay {
	background:
		linear-gradient(
			90deg,
			rgba(3, 12, 14, 0.86) 0%,
			rgba(5, 18, 20, 0.70) 38%,
			rgba(5, 18, 20, 0.23) 70%,
			rgba(5, 18, 20, 0.08) 100%
		),
		linear-gradient(
			180deg,
			rgba(0, 0, 0, 0.08) 0%,
			rgba(0, 0, 0, 0.12) 58%,
			rgba(0, 0, 0, 0.32) 100%
		) !important;
}

.hero-area::after {
	background:
		linear-gradient(
			180deg,
			transparent 0%,
			rgba(5, 16, 18, 0.38) 100%
		) !important;
}


/*************************************************
 * CASINO EXPERIENCE SECTION
 *************************************************/

.casino-experience-section {
	position: relative;
	z-index: 1;
	padding: 115px 0 105px;
	background:
		radial-gradient(
			circle at 88% 24%,
			rgba(200, 168, 107, 0.09) 0%,
			rgba(200, 168, 107, 0.025) 22%,
			transparent 43%
		),
		radial-gradient(
			circle at 7% 67%,
			rgba(35, 72, 67, 0.11) 0%,
			transparent 38%
		),
		linear-gradient(
			180deg,
			#091315 0%,
			#0c1719 22%,
			#101b1c 58%,
			#15191a 100%
		);
	color: #f4f0e8;
	overflow: hidden;
	isolation: isolate;
}

.casino-experience-section::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	z-index: -1;
	height: 150px;
	background:
		linear-gradient(
			180deg,
			rgba(5, 16, 18, 0.82) 0%,
			rgba(5, 16, 18, 0) 100%
		);
	pointer-events: none;
}

.casino-experience-section::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0;
	z-index: -1;
	width: min(1180px, 86vw);
	height: 1px;
	background:
		linear-gradient(
			90deg,
			transparent,
			rgba(200, 168, 107, 0.38),
			transparent
		);
	transform: translateX(-50%);
	pointer-events: none;
}

.casino-experience-section .container {
	position: relative;
	z-index: 2;
}

.casino-experience-glow {
	position: absolute;
	z-index: -1;
	border-radius: 50%;
	pointer-events: none;
}

.casino-experience-glow-one {
	top: 18%;
	left: -240px;
	width: 520px;
	height: 520px;
	background:
		radial-gradient(
			circle,
			rgba(31, 72, 65, 0.14) 0%,
			transparent 68%
		);
}

.casino-experience-glow-two {
	right: -260px;
	bottom: 8%;
	width: 600px;
	height: 600px;
	background:
		radial-gradient(
			circle,
			rgba(200, 168, 107, 0.07) 0%,
			transparent 70%
		);
}


/* Casino section heading */

.casino-experience-heading-row {
	position: relative;
	margin-bottom: 65px;
	padding-bottom: 28px;
}

.casino-experience-heading-row::after {
	content: "";
	position: absolute;
	right: 15px;
	bottom: 0;
	left: 15px;
	height: 1px;
	background:
		linear-gradient(
			90deg,
			rgba(200, 168, 107, 0.7) 0%,
			rgba(200, 168, 107, 0.18) 58%,
			transparent 100%
		);
}

.casino-section-label {
	display: inline-flex;
	align-items: center;
	margin-bottom: 16px;
	color: #c8a86b;
	font-family: "DM Sans", sans-serif;
	font-size: 12px;
	font-weight: 800;
	line-height: 1.3;
	letter-spacing: 1.8px;
	text-transform: uppercase;
}

.casino-section-label::before {
	content: "";
	width: 34px;
	height: 1px;
	margin-right: 12px;
	background: #c8a86b;
}

.casino-experience-heading h2 {
	max-width: 760px;
	margin: 0;
	color: #ffffff;
	font-family: "DM Sans", sans-serif;
	font-size: clamp(40px, 4.4vw, 62px);
	font-weight: 800;
	line-height: 1.08;
	letter-spacing: -1px;
}

.casino-heading-note {
	max-width: 390px;
	margin: 0 0 5px auto;
	padding-left: 22px;
	border-left: 1px solid rgba(200, 168, 107, 0.45);
	color: #b9c2be;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.75;
	letter-spacing: 0.1px;
}


/* Casino image composition */

.casino-experience-main-row {
	position: relative;
	margin-bottom: 85px;
}

.casino-experience-gallery {
	position: relative;
	min-height: 620px;
	padding: 0 55px 70px 0;
}

.casino-main-image {
	position: relative;
	width: 92%;
	height: 500px;
	border: 1px solid rgba(200, 168, 107, 0.24);
	border-radius: 6px;
	overflow: hidden;
	box-shadow: 0 30px 65px rgba(0, 0, 0, 0.38);
}

.casino-main-image::after {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(
			180deg,
			rgba(2, 9, 10, 0.02) 40%,
			rgba(2, 9, 10, 0.35) 100%
		),
		linear-gradient(
			90deg,
			rgba(2, 9, 10, 0.08) 0%,
			transparent 48%
		);
	pointer-events: none;
}

.casino-main-image img,
.casino-secondary-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.casino-main-image img {
	object-position: center center;
}

.casino-secondary-image {
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 3;
	width: 255px;
	height: 390px;
	padding: 7px;
	border: 1px solid rgba(226, 199, 143, 0.52);
	border-radius: 5px;
	background: #0a1b1b;
	box-shadow: 0 28px 60px rgba(0, 0, 0, 0.48);
	overflow: hidden;
}

.casino-secondary-image::after {
	content: "";
	position: absolute;
	inset: 7px;
	background:
		linear-gradient(
			180deg,
			transparent 62%,
			rgba(2, 9, 10, 0.32) 100%
		);
	pointer-events: none;
}

.casino-secondary-image img {
	object-position: center top;
}

.casino-gallery-detail {
	position: absolute;
	bottom: 28px;
	left: 22px;
	display: flex;
	align-items: center;
	gap: 7px;
}

.casino-gallery-detail span {
	display: block;
	width: 5px;
	height: 5px;
	border: 1px solid rgba(226, 199, 143, 0.65);
	transform: rotate(45deg);
}

.casino-gallery-detail span:nth-child(2) {
	background: #c8a86b;
}


/* Casino main copy */

.casino-experience-content {
	position: relative;
	max-width: 510px;
	margin-left: auto;
	padding: 34px 0 30px 38px;
}

.casino-experience-content::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	height: 165px;
	background:
		linear-gradient(
			180deg,
			#c8a86b 0%,
			rgba(200, 168, 107, 0) 100%
		);
}

.casino-experience-content h3 {
	margin: 0 0 22px;
	color: #ffffff;
	font-family: "DM Sans", sans-serif;
	font-size: 30px;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: -0.4px;
}

.casino-experience-content > p {
	margin: 0 0 18px;
	color: #bac4c0;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.85;
	letter-spacing: 0.08px;
}

.casino-service-note {
	display: flex;
	align-items: flex-start;
	gap: 15px;
	margin-top: 30px;
	padding: 21px 22px;
	border: 1px solid rgba(200, 168, 107, 0.2);
	border-radius: 6px;
	background:
		linear-gradient(
			135deg,
			rgba(255, 255, 255, 0.06) 0%,
			rgba(255, 255, 255, 0.025) 100%
		);
	box-shadow: 0 18px 38px rgba(0, 0, 0, 0.18);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

.casino-service-icon {
	display: inline-flex;
	flex: 0 0 42px;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border: 1px solid rgba(200, 168, 107, 0.44);
	border-radius: 50%;
	color: #e2c78f;
	font-size: 15px;
}

.casino-service-text {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.casino-service-text strong {
	color: #f4f0e8;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.35;
	letter-spacing: 0.65px;
	text-transform: uppercase;
}

.casino-service-text span {
	color: #aeb9b5;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.7;
}


/* Casino feature cards */

.casino-feature-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	margin: 0 0 55px;
}

.casino-feature-card {
	position: relative;
	min-height: 315px;
	padding: 32px 28px 30px;
	border: 1px solid rgba(200, 168, 107, 0.18);
	border-radius: 7px;
	background:
		linear-gradient(
			145deg,
			rgba(255, 255, 255, 0.065) 0%,
			rgba(255, 255, 255, 0.025) 72%
		);
	box-shadow: 0 22px 48px rgba(0, 0, 0, 0.17);
	overflow: hidden;
	transition:
		transform 0.3s ease,
		border-color 0.3s ease,
		background 0.3s ease;
}

.casino-feature-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 72px;
	height: 1px;
	background: #c8a86b;
}

.casino-feature-card::after {
	content: "";
	position: absolute;
	top: -80px;
	right: -80px;
	width: 190px;
	height: 190px;
	border-radius: 50%;
	background:
		radial-gradient(
			circle,
			rgba(200, 168, 107, 0.08) 0%,
			transparent 70%
		);
	pointer-events: none;
}

.casino-feature-card:hover {
	border-color: rgba(200, 168, 107, 0.38);
	background:
		linear-gradient(
			145deg,
			rgba(255, 255, 255, 0.085) 0%,
			rgba(255, 255, 255, 0.03) 72%
		);
	transform: translateY(-5px);
}

.casino-feature-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	margin-bottom: 25px;
	border: 1px solid rgba(200, 168, 107, 0.44);
	border-radius: 50%;
	background: rgba(200, 168, 107, 0.06);
	color: #e2c78f;
	font-size: 17px;
}

.casino-feature-content h3 {
	margin: 0 0 15px;
	color: #ffffff;
	font-size: 21px;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -0.15px;
}

.casino-feature-content p {
	margin: 0;
	color: #aeb9b5;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.78;
}


/* Casino closing statement */

.casino-experience-statement {
	position: relative;
	display: flex;
	align-items: center;
	max-width: 1010px;
	min-height: 155px;
	margin: 0 auto;
	padding: 35px 60px 35px 92px;
	border-top: 1px solid rgba(200, 168, 107, 0.34);
	border-bottom: 1px solid rgba(200, 168, 107, 0.16);
	background:
		linear-gradient(
			90deg,
			transparent 0%,
			rgba(255, 255, 255, 0.035) 18%,
			rgba(255, 255, 255, 0.035) 82%,
			transparent 100%
		);
}

.casino-statement-mark {
	position: absolute;
	top: 18px;
	left: 24px;
	color: rgba(200, 168, 107, 0.52);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 88px;
	line-height: 1;
}

.casino-experience-statement p {
	margin: 0;
	color: #e7e4dc;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 21px;
	font-weight: 400;
	font-style: italic;
	line-height: 1.65;
	letter-spacing: 0.1px;
	text-align: center;
}


/*************************************************
 * CASINO RESPONSIVE
 *************************************************/

@media only screen and (max-width: 1199px) {
	.casino-experience-section {
		padding: 95px 0 90px;
	}

	.casino-experience-gallery {
		min-height: 570px;
		padding-right: 35px;
	}

	.casino-main-image {
		width: 94%;
		height: 450px;
	}

	.casino-secondary-image {
		width: 225px;
		height: 350px;
	}

	.casino-experience-content {
		padding-left: 26px;
	}

	.casino-feature-card {
		min-height: 340px;
		padding: 29px 24px;
	}
}

@media only screen and (max-width: 991px) {
	.casino-experience-section {
		padding: 85px 0 80px;
	}

	.casino-experience-heading-row {
		margin-bottom: 48px;
	}

	.casino-heading-note {
		max-width: 620px;
		margin: 24px 0 0;
	}

	.casino-experience-main-row {
		margin-bottom: 65px;
	}

	.casino-experience-gallery {
		max-width: 760px;
		min-height: 600px;
		margin: 0 auto 55px;
		padding-right: 65px;
	}

	.casino-main-image {
		width: 94%;
		height: 475px;
	}

	.casino-secondary-image {
		width: 245px;
		height: 375px;
	}

	.casino-experience-content {
		max-width: 760px;
		margin: 0 auto;
		padding: 32px 0 0 28px;
	}

	.casino-feature-grid {
		grid-template-columns: 1fr;
		max-width: 760px;
		margin-right: auto;
		margin-left: auto;
	}

	.casino-feature-card {
		display: grid;
		grid-template-columns: 58px 1fr;
		gap: 20px;
		min-height: 0;
		padding: 27px 28px;
	}

	.casino-feature-icon {
		margin: 0;
	}
}

@media only screen and (max-width: 767px) {
	.casino-experience-section {
		padding: 75px 0 70px;
	}

	.casino-experience-heading h2 {
		font-size: 41px;
	}

	.casino-experience-gallery {
		min-height: 520px;
		padding: 0 35px 60px 0;
	}

	.casino-main-image {
		width: 96%;
		height: 400px;
	}

	.casino-secondary-image {
		width: 190px;
		height: 305px;
	}

	.casino-experience-content h3 {
		font-size: 27px;
	}

	.casino-experience-statement {
		padding: 34px 30px 34px 70px;
	}

	.casino-statement-mark {
		left: 13px;
	}

	.casino-experience-statement p {
		font-size: 18px;
	}
}

@media only screen and (max-width: 575px) {
	.casino-experience-section {
		padding: 65px 0 60px;
	}

	.casino-experience-heading-row {
		margin-bottom: 38px;
		padding-bottom: 23px;
	}

	.casino-section-label {
		font-size: 10px;
		letter-spacing: 1.45px;
	}

	.casino-section-label::before {
		width: 25px;
		margin-right: 9px;
	}

	.casino-experience-heading h2 {
		font-size: 34px;
		line-height: 1.14;
	}

	.casino-heading-note {
		padding-left: 15px;
		font-size: 13px;
	}

	.casino-experience-main-row {
		margin-bottom: 50px;
	}

	.casino-experience-gallery {
		display: grid;
		grid-template-columns: 1fr 0.64fr;
		gap: 10px;
		min-height: 0;
		margin-bottom: 42px;
		padding: 0;
	}

	.casino-main-image {
		width: 100%;
		height: 330px;
		border-radius: 4px;
	}

	.casino-secondary-image {
		position: relative;
		right: auto;
		bottom: auto;
		width: 100%;
		height: 330px;
		padding: 4px;
		border-radius: 4px;
	}

	.casino-secondary-image::after {
		inset: 4px;
	}

	.casino-gallery-detail {
		display: none;
	}

	.casino-experience-content {
		padding: 27px 0 0 18px;
	}

	.casino-experience-content::before {
		height: 115px;
	}

	.casino-experience-content h3 {
		margin-bottom: 18px;
		font-size: 24px;
	}

	.casino-experience-content > p {
		font-size: 14px;
		line-height: 1.78;
	}

	.casino-service-note {
		gap: 12px;
		padding: 17px 16px;
	}

	.casino-service-icon {
		flex-basis: 38px;
		width: 38px;
		height: 38px;
	}

	.casino-feature-grid {
		gap: 12px;
		margin-bottom: 42px;
	}

	.casino-feature-card {
		display: block;
		padding: 25px 22px;
	}

	.casino-feature-icon {
		width: 46px;
		height: 46px;
		margin-bottom: 20px;
	}

	.casino-feature-content h3 {
		font-size: 19px;
	}

	.casino-feature-content p {
		font-size: 13px;
		line-height: 1.72;
	}

	.casino-experience-statement {
		min-height: 0;
		padding: 45px 20px 28px;
	}

	.casino-statement-mark {
		top: 8px;
		left: 50%;
		font-size: 62px;
		transform: translateX(-50%);
	}

	.casino-experience-statement p {
		font-size: 16px;
		line-height: 1.65;
	}
}/**************************************
 * Townsville Casino Games Section
 **************************************/

.casino-games-section {
	position: relative;
	z-index: 1;
	padding: 115px 0 105px;
	background:
		radial-gradient(circle at 8% 18%, rgba(49, 103, 88, 0.2), transparent 29%),
		radial-gradient(circle at 92% 46%, rgba(200, 168, 107, 0.09), transparent 31%),
		linear-gradient(180deg, #102925 0%, #142e2a 34%, #102622 68%, #0b1b1b 100%);
	color: #f4f0e8;
	overflow: hidden;
	isolation: isolate;
}

.casino-games-section::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	z-index: -1;
	width: min(1180px, 86vw);
	height: 1px;
	background: linear-gradient(
		90deg,
		transparent,
		rgba(200, 168, 107, 0.38),
		transparent
	);
	transform: translateX(-50%);
}

.casino-games-section .container {
	position: relative;
	z-index: 2;
}

.games-background-detail {
	position: absolute;
	z-index: -1;
	border-radius: 50%;
	pointer-events: none;
}

.games-background-detail-one {
	top: 9%;
	right: -320px;
	width: 680px;
	height: 680px;
	background: radial-gradient(
		circle,
		rgba(200, 168, 107, 0.07),
		transparent 68%
	);
}

.games-background-detail-two {
	left: -300px;
	bottom: 13%;
	width: 620px;
	height: 620px;
	background: radial-gradient(
		circle,
		rgba(37, 103, 84, 0.19),
		transparent 70%
	);
}

/* Heading */

.games-heading-row {
	position: relative;
	margin-bottom: 72px;
	padding-bottom: 30px;
}

.games-heading-row::after {
	content: "";
	position: absolute;
	left: 15px;
	right: 15px;
	bottom: 0;
	height: 1px;
	background: linear-gradient(
		90deg,
		rgba(200, 168, 107, 0.72),
		rgba(200, 168, 107, 0.14),
		transparent
	);
}

.games-section-label,
.games-content-kicker {
	display: inline-flex;
	align-items: center;
	color: #c8a86b;
	font-family: "DM Sans", sans-serif;
	font-size: 11px;
	font-weight: 800;
	line-height: 1.3;
	letter-spacing: 1.65px;
	text-transform: uppercase;
}

.games-section-label {
	margin-bottom: 16px;
}

.games-section-label::before {
	content: "";
	width: 34px;
	height: 1px;
	margin-right: 12px;
	background: #c8a86b;
}

.games-section-heading h2 {
	max-width: 800px;
	margin: 0;
	color: #ffffff;
	font-size: clamp(40px, 4.4vw, 62px);
	font-weight: 800;
	line-height: 1.08;
	letter-spacing: -1px;
}

.games-heading-note {
	max-width: 390px;
	margin: 0 0 5px auto;
	padding-left: 22px;
	border-left: 1px solid rgba(200, 168, 107, 0.45);
	color: #b9c2be;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.75;
}

.games-introduction-content h3,
.poker-games-content > h3,
.signature-games-heading h3,
.modern-games-content h3,
.sports-games-heading h3 {
	margin: 12px 0 22px;
	color: #ffffff;
	font-size: 34px;
	font-weight: 750;
	line-height: 1.2;
	letter-spacing: -0.5px;
}

/* Introduction */

.games-introduction {
	margin-bottom: 95px;
}

.games-introduction-content {
	max-width: 550px;
	padding-right: 35px;
}

.games-introduction-content p,
.modern-games-content > p {
	margin: 0 0 18px;
	color: #bac4c0;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.84;
}

.games-introduction-image {
	position: relative;
	height: 445px;
	border: 1px solid rgba(200, 168, 107, 0.25);
	border-radius: 7px;
	overflow: hidden;
	box-shadow: 0 30px 65px rgba(0, 0, 0, 0.34);
}

.games-introduction-image::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		180deg,
		transparent 50%,
		rgba(3, 12, 12, 0.72) 100%
	);
	pointer-events: none;
}

.games-introduction-image img,
.poker-games-image img,
.signature-game-image img,
.modern-games-image img,
.sports-games-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.games-image-caption {
	position: absolute;
	left: 24px;
	right: 24px;
	bottom: 20px;
	z-index: 2;
	display: flex;
	align-items: center;
	gap: 11px;
	color: #f4f0e8;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.35px;
	text-transform: uppercase;
}

.games-image-caption i {
	color: #e2c78f;
	font-size: 15px;
}

/* Category heading */

.games-category-heading {
	display: grid;
	grid-template-columns: minmax(260px, 0.7fr) minmax(360px, 1fr);
	align-items: end;
	gap: 55px;
	margin-bottom: 32px;
	padding-bottom: 24px;
	border-bottom: 1px solid rgba(200, 168, 107, 0.2);
}

.games-category-heading > div {
	display: flex;
	align-items: center;
	gap: 15px;
}

.games-category-number {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border: 1px solid rgba(200, 168, 107, 0.5);
	border-radius: 50%;
	color: #e2c78f;
	font-size: 13px;
}

.games-category-heading h3 {
	margin: 0;
	color: #ffffff;
	font-size: 30px;
	font-weight: 750;
	line-height: 1.2;
}

.games-category-heading > p {
	max-width: 650px;
	margin: 0;
	color: #aeb9b5;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.75;
}

/* Classic games */

.classic-games-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	margin-bottom: 105px;
}

.game-detail-card {
	position: relative;
	min-height: 390px;
	padding: 31px 28px 27px;
	border: 1px solid rgba(200, 168, 107, 0.17);
	border-radius: 7px;
	background: linear-gradient(
		145deg,
		rgba(255, 255, 255, 0.065),
		rgba(255, 255, 255, 0.022)
	);
	box-shadow: 0 22px 48px rgba(0, 0, 0, 0.17);
	overflow: hidden;
	transition:
		transform 0.3s ease,
		border-color 0.3s ease;
}

.game-detail-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 76px;
	height: 1px;
	background: #c8a86b;
}

.game-detail-card-featured {
	border-color: rgba(200, 168, 107, 0.38);
	background: linear-gradient(
		145deg,
		rgba(200, 168, 107, 0.105),
		rgba(255, 255, 255, 0.028)
	);
	transform: translateY(-10px);
}

.game-detail-card:hover {
	border-color: rgba(200, 168, 107, 0.48);
	transform: translateY(-6px);
}

.game-detail-card-featured:hover {
	transform: translateY(-15px);
}

.game-detail-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	margin-bottom: 25px;
	border: 1px solid rgba(200, 168, 107, 0.46);
	border-radius: 50%;
	background: rgba(200, 168, 107, 0.06);
	color: #e2c78f;
	font-size: 17px;
}

.game-type-label,
.signature-small-label {
	display: block;
	margin-bottom: 8px;
	color: #c8a86b;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 1.35px;
	text-transform: uppercase;
}

.game-detail-card h4 {
	margin: 0 0 15px;
	color: #ffffff;
	font-size: 25px;
	font-weight: 750;
	line-height: 1.2;
}

.game-detail-card > p {
	margin: 0;
	color: #aeb9b5;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.76;
}

.game-detail-meta {
	position: absolute;
	left: 28px;
	right: 28px;
	bottom: 25px;
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
}

.game-detail-meta span {
	padding: 5px 9px;
	border: 1px solid rgba(200, 168, 107, 0.2);
	border-radius: 20px;
	color: #d6d8d2;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.55px;
	text-transform: uppercase;
}

/* Poker */

.poker-games-layout {
	display: grid;
	grid-template-columns: minmax(360px, 0.84fr) minmax(480px, 1.16fr);
	min-height: 710px;
	margin-bottom: 110px;
	border: 1px solid rgba(200, 168, 107, 0.2);
	border-radius: 8px;
	background: rgba(4, 17, 17, 0.42);
	box-shadow: 0 32px 70px rgba(0, 0, 0, 0.24);
	overflow: hidden;
}

.poker-games-image {
	position: relative;
	min-height: 710px;
}

.poker-games-image::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		180deg,
		transparent 54%,
		rgba(3, 12, 12, 0.82) 100%
	);
	pointer-events: none;
}

.poker-image-overlay {
	position: absolute;
	left: 30px;
	right: 30px;
	bottom: 28px;
	z-index: 2;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.poker-image-overlay span {
	color: #c8a86b;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 1.4px;
	text-transform: uppercase;
}

.poker-image-overlay strong {
	max-width: 340px;
	color: #ffffff;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.45;
}

.poker-games-content {
	padding: 58px 52px 42px;
}

.poker-game-list {
	margin-top: 28px;
}

.poker-game-item {
	display: grid;
	grid-template-columns: 48px 1fr;
	gap: 17px;
	padding: 24px 0;
	border-top: 1px solid rgba(200, 168, 107, 0.16);
}

.poker-game-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border: 1px solid rgba(200, 168, 107, 0.38);
	border-radius: 50%;
	color: #e2c78f;
	font-size: 14px;
}

.poker-game-item h4 {
	margin: 0 0 8px;
	color: #ffffff;
	font-size: 20px;
	font-weight: 700;
}

.poker-game-item p {
	margin: 0;
	color: #aeb9b5;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.72;
}

/* Signature games */

.signature-games-block {
	position: relative;
	margin-bottom: 110px;
	padding: 85px 70px 72px;
	border-top: 1px solid rgba(200, 168, 107, 0.28);
	border-bottom: 1px solid rgba(200, 168, 107, 0.2);
	background:
		radial-gradient(
			circle at 50% 0%,
			rgba(200, 168, 107, 0.09),
			transparent 38%
		),
		linear-gradient(
			135deg,
			rgba(4, 15, 16, 0.88),
			rgba(10, 28, 27, 0.84)
		);
	box-shadow: 0 35px 75px rgba(0, 0, 0, 0.2);
}

.signature-games-heading {
	max-width: 700px;
	margin: 0 auto 48px;
	text-align: center;
}

.signature-games-heading .games-content-kicker {
	justify-content: center;
}

.signature-games-heading p {
	max-width: 600px;
	margin: 0 auto;
	color: #aeb9b5;
	font-size: 14px;
	line-height: 1.75;
}

.signature-games-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}

.signature-game-card {
	position: relative;
	border: 1px solid rgba(200, 168, 107, 0.24);
	border-radius: 7px;
	background: rgba(255, 255, 255, 0.035);
	overflow: hidden;
}

.signature-game-image {
	height: 310px;
}

.signature-game-image img {
	object-position: center center;
}

.signature-game-content {
	padding: 29px 30px 31px;
}

.signature-game-title {
	margin-bottom: 15px;
}

.signature-game-title i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 35px;
	height: 35px;
	margin-right: 10px;
	border: 1px solid rgba(200, 168, 107, 0.42);
	border-radius: 50%;
	color: #e2c78f;
	font-size: 12px;
	vertical-align: middle;
}

.signature-game-title h4 {
	display: inline;
	margin: 0;
	color: #ffffff;
	font-size: 24px;
	font-weight: 750;
	line-height: 1.25;
	vertical-align: middle;
}

.signature-game-content > p {
	margin: 0 0 19px;
	color: #aeb9b5;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.76;
}

.signature-game-note {
	display: inline-block;
	padding-top: 14px;
	border-top: 1px solid rgba(200, 168, 107, 0.2);
	color: #d8d3c9;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.7px;
	text-transform: uppercase;
}

.signature-blackjack-card {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 100%;
	padding: 35px;
	background:
		radial-gradient(
			circle at 50% 28%,
			rgba(200, 168, 107, 0.13),
			transparent 34%
		),
		rgba(255, 255, 255, 0.035);
}

.signature-blackjack-card .signature-game-content {
	padding: 20px 10px 0;
	text-align: center;
}

.signature-blackjack-card .signature-game-title h4 {
	display: block;
	font-size: 29px;
}

.signature-game-emblem {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	align-self: center;
	width: 118px;
	height: 118px;
	border: 1px solid rgba(200, 168, 107, 0.48);
	border-radius: 50%;
	color: #e2c78f;
	font-size: 37px;
	box-shadow: inset 0 0 40px rgba(200, 168, 107, 0.06);
}

/* Modern machines */

.modern-games-section {
	margin-bottom: 110px;
	padding: 34px;
	border: 1px solid rgba(200, 168, 107, 0.17);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.025);
}

.modern-games-content {
	max-width: 550px;
	padding: 25px 38px 25px 15px;
}

.modern-games-image {
	position: relative;
	height: 540px;
	border-radius: 6px;
	overflow: hidden;
	box-shadow: 0 28px 60px rgba(0, 0, 0, 0.32);
}

.modern-games-image::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		180deg,
		transparent 60%,
		rgba(3, 12, 12, 0.58) 100%
	);
	pointer-events: none;
}

.modern-games-stat {
	position: absolute;
	left: 22px;
	bottom: 20px;
	z-index: 2;
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 11px 15px;
	border: 1px solid rgba(226, 199, 143, 0.4);
	border-radius: 5px;
	background: rgba(4, 15, 16, 0.78);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.modern-games-stat strong {
	color: #e2c78f;
	font-size: 24px;
	font-weight: 850;
}

.modern-games-stat span {
	color: #ffffff;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.75px;
	text-transform: uppercase;
}

.modern-game-points {
	display: grid;
	gap: 11px;
	margin-top: 28px;
}

.modern-game-point {
	display: grid;
	grid-template-columns: 34px 1fr;
	align-items: center;
	gap: 12px;
	padding: 12px 14px;
	border: 1px solid rgba(200, 168, 107, 0.14);
	border-radius: 5px;
	background: rgba(255, 255, 255, 0.025);
}

.modern-game-point i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	color: #e2c78f;
	background: rgba(200, 168, 107, 0.08);
	font-size: 12px;
}

.modern-game-point span {
	color: #d1d6d2;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.5;
}

/* TAB, Keno and sport */

.sports-games-section {
	margin-bottom: 70px;
}

.sports-games-heading {
	display: grid;
	grid-template-columns: minmax(340px, 0.8fr) minmax(420px, 1fr);
	align-items: end;
	gap: 65px;
	margin-bottom: 35px;
}

.sports-games-heading p {
	margin: 0;
	padding-left: 22px;
	border-left: 1px solid rgba(200, 168, 107, 0.4);
	color: #aeb9b5;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.75;
}

.sports-games-content {
	display: grid;
	grid-template-columns: minmax(480px, 1.15fr) minmax(380px, 0.85fr);
	border: 1px solid rgba(200, 168, 107, 0.2);
	border-radius: 8px;
	background: rgba(4, 16, 17, 0.44);
	overflow: hidden;
	box-shadow: 0 30px 68px rgba(0, 0, 0, 0.23);
}

.sports-games-image {
	position: relative;
	min-height: 590px;
}

.sports-games-image::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		90deg,
		transparent 70%,
		rgba(4, 16, 17, 0.42) 100%
	);
	pointer-events: none;
}

.sports-game-cards {
	display: grid;
	align-content: center;
	padding: 34px 40px;
}

.sports-game-card {
	display: grid;
	grid-template-columns: 48px 1fr;
	gap: 17px;
	padding: 25px 0;
	border-bottom: 1px solid rgba(200, 168, 107, 0.16);
}

.sports-game-card:last-child {
	border-bottom: 0;
}

.sports-game-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border: 1px solid rgba(200, 168, 107, 0.42);
	border-radius: 50%;
	color: #e2c78f;
	font-size: 13px;
}

.sports-game-card h4 {
	margin: 0 0 8px;
	color: #ffffff;
	font-size: 20px;
	font-weight: 700;
}

.sports-game-card p {
	margin: 0;
	color: #aeb9b5;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.7;
}

/* Closing statement */

.games-closing-statement {
	display: flex;
	align-items: center;
	gap: 22px;
	max-width: 1020px;
	margin: 0 auto;
	padding: 28px 40px;
	border-top: 1px solid rgba(200, 168, 107, 0.34);
	border-bottom: 1px solid rgba(200, 168, 107, 0.15);
	background: linear-gradient(
		90deg,
		transparent,
		rgba(255, 255, 255, 0.035),
		transparent
	);
}

.games-closing-statement i {
	flex: 0 0 auto;
	color: #e2c78f;
	font-size: 20px;
}

.games-closing-statement p {
	margin: 0;
	color: #e4e4dc;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 18px;
	font-style: italic;
	line-height: 1.7;
	text-align: center;
}

/* Tablet */

@media only screen and (max-width: 1199px) {
	.casino-games-section {
		padding: 95px 0 90px;
	}

	.games-introduction-image {
		height: 405px;
	}

	.game-detail-card {
		min-height: 420px;
		padding: 28px 24px;
	}

	.game-detail-meta {
		left: 24px;
		right: 24px;
	}

	.poker-games-layout {
		grid-template-columns: 0.78fr 1.22fr;
	}

	.poker-games-content {
		padding: 50px 38px 35px;
	}

	.signature-games-block {
		padding: 75px 45px 62px;
	}

	.modern-games-image {
		height: 500px;
	}

	.sports-games-content {
		grid-template-columns: 1.05fr 0.95fr;
	}

	.sports-game-cards {
		padding: 25px 30px;
	}
}

/* Small tablet */

@media only screen and (max-width: 991px) {
	.casino-games-section {
		padding: 85px 0 80px;
	}

	.games-heading-row {
		margin-bottom: 52px;
	}

	.games-heading-note {
		max-width: 650px;
		margin: 24px 0 0;
	}

	.games-introduction {
		margin-bottom: 75px;
	}

	.games-introduction-content {
		max-width: none;
		margin-bottom: 38px;
		padding-right: 0;
	}

	.games-introduction-image {
		height: 470px;
	}

	.games-category-heading {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.classic-games-grid {
		grid-template-columns: 1fr;
		margin-bottom: 80px;
	}

	.game-detail-card,
	.game-detail-card-featured {
		min-height: 0;
		transform: none;
	}

	.game-detail-card:hover,
	.game-detail-card-featured:hover {
		transform: translateY(-4px);
	}

	.game-detail-meta {
		position: static;
		margin-top: 20px;
	}

	.poker-games-layout {
		grid-template-columns: 1fr;
		min-height: 0;
		margin-bottom: 85px;
	}

	.poker-games-image {
		min-height: 620px;
	}

	.signature-games-block {
		margin-bottom: 85px;
		padding: 65px 35px 52px;
	}

	.signature-games-grid {
		grid-template-columns: 1fr;
	}

	.signature-blackjack-card {
		min-height: 500px;
	}

	.modern-games-section {
		margin-bottom: 85px;
		padding: 28px;
	}

	.modern-games-image {
		height: 500px;
		margin-bottom: 30px;
	}

	.modern-games-content {
		max-width: none;
		padding: 15px 5px;
	}

	.sports-games-heading {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.sports-games-heading p {
		max-width: 700px;
	}

	.sports-games-content {
		grid-template-columns: 1fr;
	}

	.sports-games-image {
		min-height: 500px;
	}

	.sports-games-image::after {
		background: linear-gradient(
			180deg,
			transparent 72%,
			rgba(4, 16, 17, 0.55) 100%
		);
	}
}

/* Mobile landscape */

@media only screen and (max-width: 767px) {
	.games-section-heading h2 {
		font-size: 41px;
	}

	.games-introduction-content h3,
	.poker-games-content > h3,
	.signature-games-heading h3,
	.modern-games-content h3,
	.sports-games-heading h3 {
		font-size: 29px;
	}

	.games-introduction-image {
		height: 390px;
	}

	.poker-games-image {
		min-height: 530px;
	}

	.poker-games-content {
		padding: 42px 28px 30px;
	}

	.signature-games-block {
		padding: 55px 24px 44px;
	}

	.signature-game-image {
		height: 280px;
	}

	.signature-blackjack-card {
		min-height: 440px;
		padding: 28px;
	}

	.modern-games-image {
		height: 410px;
	}

	.sports-games-image {
		min-height: 420px;
	}
}

/* Mobile */

@media only screen and (max-width: 575px) {
	.casino-games-section {
		padding: 65px 0 60px;
	}

	.games-heading-row {
		margin-bottom: 42px;
		padding-bottom: 23px;
	}

	.games-section-label,
	.games-content-kicker {
		font-size: 9px;
		letter-spacing: 1.25px;
	}

	.games-section-label::before {
		width: 25px;
		margin-right: 9px;
	}

	.games-section-heading h2 {
		font-size: 34px;
		line-height: 1.14;
	}

	.games-heading-note {
		padding-left: 15px;
		font-size: 13px;
	}

	.games-introduction {
		margin-bottom: 60px;
	}

	.games-introduction-content h3,
	.poker-games-content > h3,
	.signature-games-heading h3,
	.modern-games-content h3,
	.sports-games-heading h3 {
		margin-bottom: 17px;
		font-size: 25px;
	}

	.games-introduction-content p,
	.modern-games-content > p {
		font-size: 14px;
		line-height: 1.75;
	}

	.games-introduction-image {
		height: 300px;
	}

	.games-image-caption {
		left: 15px;
		right: 15px;
		bottom: 14px;
		font-size: 9px;
	}

	.games-category-heading {
		margin-bottom: 22px;
	}

	.games-category-heading h3 {
		font-size: 25px;
	}

	.games-category-heading > p {
		font-size: 13px;
	}

	.classic-games-grid {
		gap: 12px;
		margin-bottom: 65px;
	}

	.game-detail-card {
		padding: 25px 21px;
	}

	.game-detail-icon {
		width: 46px;
		height: 46px;
		margin-bottom: 20px;
	}

	.game-detail-card h4 {
		font-size: 22px;
	}

	.game-detail-card > p {
		font-size: 13px;
		line-height: 1.72;
	}

	.poker-games-layout {
		margin-bottom: 65px;
	}

	.poker-games-image {
		min-height: 420px;
	}

	.poker-image-overlay {
		left: 20px;
		right: 20px;
		bottom: 20px;
	}

	.poker-games-content {
		padding: 35px 20px 22px;
	}

	.poker-game-item {
		grid-template-columns: 42px 1fr;
		gap: 13px;
		padding: 21px 0;
	}

	.poker-game-icon {
		width: 39px;
		height: 39px;
	}

	.poker-game-item h4 {
		font-size: 18px;
	}

	.signature-games-block {
		margin-right: -15px;
		margin-bottom: 65px;
		margin-left: -15px;
		padding: 48px 15px 38px;
	}

	.signature-games-heading {
		margin-bottom: 34px;
	}

	.signature-game-image {
		height: 240px;
	}

	.signature-game-content {
		padding: 24px 20px 26px;
	}

	.signature-game-title h4 {
		font-size: 21px;
	}

	.signature-game-content > p {
		font-size: 13px;
		line-height: 1.72;
	}

	.signature-blackjack-card {
		min-height: 400px;
		padding: 20px;
	}

	.signature-game-emblem {
		width: 96px;
		height: 96px;
		font-size: 30px;
	}

	.signature-blackjack-card .signature-game-title h4 {
		font-size: 25px;
	}

	.modern-games-section {
		margin-bottom: 65px;
		padding: 15px;
	}

	.modern-games-image {
		height: 330px;
	}

	.modern-games-stat {
		left: 13px;
		bottom: 12px;
		padding: 8px 11px;
	}

	.modern-games-stat strong {
		font-size: 20px;
	}

	.modern-game-point {
		grid-template-columns: 31px 1fr;
		padding: 10px;
	}

	.sports-games-heading p {
		padding-left: 15px;
		font-size: 13px;
	}

	.sports-games-image {
		min-height: 300px;
	}

	.sports-game-cards {
		padding: 18px 20px;
	}

	.sports-game-card {
		grid-template-columns: 42px 1fr;
		gap: 13px;
		padding: 21px 0;
	}

	.sports-game-icon {
		width: 39px;
		height: 39px;
	}

	.sports-game-card h4 {
		font-size: 18px;
	}

	.sports-game-card p {
		font-size: 12px;
	}

	.games-closing-statement {
		flex-direction: column;
		gap: 15px;
		padding: 25px 18px;
	}

	.games-closing-statement p {
		font-size: 16px;
		line-height: 1.65;
	}
}

/*************************************************
 * GAMES SECTION — BACKGROUND & SIGNATURE FIX
 *************************************************/


.casino-games-section {
	background:
		radial-gradient(
			ellipse at 10% 12%,
			rgba(176, 112, 59, 0.18) 0%,
			rgba(176, 112, 59, 0.06) 25%,
			transparent 48%
		),
		radial-gradient(
			ellipse at 92% 45%,
			rgba(192, 151, 93, 0.12) 0%,
			transparent 39%
		),
		radial-gradient(
			ellipse at 30% 88%,
			rgba(68, 76, 98, 0.14) 0%,
			transparent 44%
		),
		linear-gradient(
			180deg,
			#171518 0%,
			#211a18 30%,
			#1d1818 59%,
			#16171b 80%,
			#10141a 100%
		) !important;

	color: #f4f0e8;
	box-shadow:
		inset 0 100px 130px rgba(0, 0, 0, 0.13),
		inset 0 -90px 120px rgba(0, 0, 0, 0.16);
}


.casino-games-section::before {
	width: min(1180px, 86vw);
	height: 1px;
	background:
		linear-gradient(
			90deg,
			transparent,
			rgba(212, 174, 108, 0.72),
			rgba(212, 174, 108, 0.22),
			transparent
		);
	box-shadow: 0 0 28px rgba(190, 135, 71, 0.16);
}


.games-background-detail-one {
	top: 4%;
	right: -270px;
	width: 640px;
	height: 640px;
	background:
		radial-gradient(
			circle,
			rgba(190, 128, 69, 0.15) 0%,
			rgba(190, 128, 69, 0.04) 39%,
			transparent 71%
		);
}

.games-background-detail-two {
	left: -310px;
	bottom: 9%;
	width: 650px;
	height: 650px;
	background:
		radial-gradient(
			circle,
			rgba(76, 84, 107, 0.14) 0%,
			transparent 70%
		);
}


.games-heading-row::after {
	background:
		linear-gradient(
			90deg,
			rgba(207, 162, 92, 0.78),
			rgba(207, 162, 92, 0.16),
			transparent
		);
}


.game-detail-card {
	border-color: rgba(210, 167, 99, 0.2);
	background:
		linear-gradient(
			145deg,
			rgba(85, 61, 47, 0.34),
			rgba(31, 28, 30, 0.72)
		);
	box-shadow:
		0 24px 55px rgba(0, 0, 0, 0.2),
		inset 0 1px 0 rgba(255, 255, 255, 0.025);
}

.game-detail-card-featured {
	border-color: rgba(218, 175, 105, 0.46);
	background:
		linear-gradient(
			145deg,
			rgba(112, 77, 51, 0.39),
			rgba(35, 29, 29, 0.83)
		);
}

.game-detail-card:hover {
	border-color: rgba(220, 177, 107, 0.58);
}


.poker-games-layout {
	border-color: rgba(210, 166, 98, 0.24);
	background:
		linear-gradient(
			145deg,
			rgba(39, 31, 31, 0.96),
			rgba(20, 21, 25, 0.96)
		);
	box-shadow: 0 34px 75px rgba(0, 0, 0, 0.3);
}

.poker-games-image::after {
	background:
		linear-gradient(
			180deg,
			transparent 51%,
			rgba(18, 14, 15, 0.88) 100%
		);
}


.signature-games-block {
	border-top-color: rgba(215, 171, 101, 0.42);
	border-bottom-color: rgba(215, 171, 101, 0.22);
	background:
		radial-gradient(
			circle at 50% 0%,
			rgba(199, 144, 76, 0.16),
			transparent 39%
		),
		linear-gradient(
			135deg,
			rgba(47, 33, 29, 0.96),
			rgba(25, 23, 26, 0.97)
		);
	box-shadow:
		0 38px 80px rgba(0, 0, 0, 0.27),
		inset 0 1px 0 rgba(255, 255, 255, 0.025);
}


.signature-games-grid {
	align-items: stretch;
}

.signature-game-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	border-color: rgba(212, 169, 101, 0.27);
	background:
		linear-gradient(
			160deg,
			rgba(86, 61, 45, 0.23),
			rgba(24, 23, 26, 0.76)
		);
	box-shadow: 0 24px 55px rgba(0, 0, 0, 0.23);
}


.signature-blackjack-card {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	min-height: 0;
	padding: 0;
	background:
		linear-gradient(
			160deg,
			rgba(86, 61, 45, 0.23),
			rgba(24, 23, 26, 0.76)
		);
}

.signature-blackjack-card .signature-game-content,
.signature-wheel-card .signature-game-content {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 29px 30px 31px;
	text-align: left;
}

.signature-blackjack-card .signature-game-title h4 {
	display: inline;
	font-size: 24px;
}

.signature-game-content > p {
	flex-grow: 1;
}

.signature-game-note {
	margin-top: auto;
}


.signature-blackjack-image {
	position: relative;
	overflow: hidden;
}

.signature-blackjack-image img {
	object-position: center 47%;
	transition: transform 0.7s ease;
}

.signature-blackjack-card:hover .signature-blackjack-image img,
.signature-wheel-card:hover .signature-game-image img {
	transform: scale(1.025);
}

.signature-blackjack-image::after {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(
			180deg,
			rgba(13, 12, 14, 0.02) 38%,
			rgba(18, 14, 15, 0.72) 100%
		);
	pointer-events: none;
}


.signature-image-badge {
	position: absolute;
	left: 22px;
	bottom: 19px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 13px;
	border: 1px solid rgba(229, 196, 136, 0.42);
	border-radius: 30px;
	background: rgba(21, 17, 18, 0.74);
	color: #eee4d2;
	backdrop-filter: blur(9px);
	-webkit-backdrop-filter: blur(9px);
}

.signature-image-badge i {
	color: #e2c78f;
	font-size: 12px;
}

.signature-image-badge span {
	font-size: 9px;
	font-weight: 800;
	letter-spacing: 1px;
	text-transform: uppercase;
}


.signature-game-emblem {
	display: none;
}


.modern-games-section {
	border-color: rgba(211, 167, 99, 0.23);
	background:
		linear-gradient(
			135deg,
			rgba(71, 51, 41, 0.28),
			rgba(24, 24, 28, 0.65)
		);
	box-shadow: 0 30px 68px rgba(0, 0, 0, 0.19);
}

.modern-games-image::after {
	background:
		linear-gradient(
			180deg,
			transparent 56%,
			rgba(18, 14, 15, 0.7) 100%
		);
}

.modern-games-stat {
	background: rgba(26, 20, 20, 0.82);
	border-color: rgba(226, 199, 143, 0.46);
}


.modern-game-point {
	border-color: rgba(208, 165, 98, 0.19);
	background:
		linear-gradient(
			90deg,
			rgba(105, 73, 49, 0.16),
			rgba(255, 255, 255, 0.018)
		);
}


.sports-games-content {
	border-color: rgba(211, 168, 100, 0.24);
	background:
		linear-gradient(
			145deg,
			rgba(42, 32, 31, 0.97),
			rgba(19, 21, 25, 0.97)
		);
	box-shadow: 0 34px 75px rgba(0, 0, 0, 0.29);
}

.sports-games-image::after {
	background:
		linear-gradient(
			90deg,
			transparent 67%,
			rgba(25, 20, 21, 0.54) 100%
		);
}


.games-closing-statement {
	background:
		linear-gradient(
			90deg,
			transparent,
			rgba(132, 91, 57, 0.13),
			rgba(255, 255, 255, 0.025),
			transparent
		);
}


@media only screen and (max-width: 991px) {
	.signature-blackjack-card {
		min-height: 0;
	}

	.sports-games-image::after {
		background:
			linear-gradient(
				180deg,
				transparent 68%,
				rgba(25, 20, 21, 0.64) 100%
			);
	}
}



@media only screen and (max-width: 575px) {
	.signature-blackjack-card .signature-game-content,
	.signature-wheel-card .signature-game-content {
		padding: 24px 20px 26px;
	}

	.signature-blackjack-card .signature-game-title h4 {
		font-size: 21px;
	}

	.signature-image-badge {
		left: 14px;
		bottom: 13px;
		padding: 8px 11px;
	}

	.signature-image-badge span {
		font-size: 8px;
	}
}
/*************************************************
 * TOWNSVILLE CASINO — VIP SECTION
 *************************************************/


.vip-experience-section {
	position: relative;
	z-index: 1;
	padding: 115px 0 105px;
	background:
		radial-gradient(
			ellipse at 8% 12%,
			rgba(112, 82, 128, 0.2) 0%,
			rgba(112, 82, 128, 0.05) 30%,
			transparent 52%
		),
		radial-gradient(
			ellipse at 92% 40%,
			rgba(199, 151, 81, 0.13) 0%,
			transparent 38%
		),
		radial-gradient(
			ellipse at 38% 88%,
			rgba(53, 70, 107, 0.18) 0%,
			transparent 43%
		),
		linear-gradient(
			180deg,
			#11161f 0%,
			#151a27 31%,
			#191827 62%,
			#121622 82%,
			#0c111a 100%
		);
	color: #f5f1e9;
	overflow: hidden;
	isolation: isolate;
}

.vip-experience-section::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	z-index: -1;
	width: min(1180px, 86vw);
	height: 1px;
	background:
		linear-gradient(
			90deg,
			transparent,
			rgba(216, 177, 108, 0.72),
			rgba(216, 177, 108, 0.18),
			transparent
		);
	transform: translateX(-50%);
}

.vip-experience-section .container {
	position: relative;
	z-index: 2;
}


.vip-background-detail {
	position: absolute;
	z-index: -1;
	border-radius: 50%;
	pointer-events: none;
}

.vip-background-detail-one {
	top: 6%;
	right: -310px;
	width: 690px;
	height: 690px;
	background:
		radial-gradient(
			circle,
			rgba(196, 149, 80, 0.1),
			transparent 68%
		);
}

.vip-background-detail-two {
	left: -330px;
	bottom: 12%;
	width: 680px;
	height: 680px;
	background:
		radial-gradient(
			circle,
			rgba(97, 75, 124, 0.17),
			transparent 70%
		);
}


.vip-heading-row {
	position: relative;
	margin-bottom: 80px;
	padding-bottom: 30px;
}

.vip-heading-row::after {
	content: "";
	position: absolute;
	left: 15px;
	right: 15px;
	bottom: 0;
	height: 1px;
	background:
		linear-gradient(
			90deg,
			rgba(211, 170, 100, 0.78),
			rgba(211, 170, 100, 0.15),
			transparent
		);
}

.vip-section-label,
.vip-content-kicker,
.vip-card-label {
	display: inline-flex;
	align-items: center;
	color: #d1aa67;
	font-family: "DM Sans", sans-serif;
	font-size: 11px;
	font-weight: 800;
	line-height: 1.3;
	letter-spacing: 1.65px;
	text-transform: uppercase;
}

.vip-section-label {
	margin-bottom: 16px;
}

.vip-section-label::before {
	content: "";
	width: 34px;
	height: 1px;
	margin-right: 12px;
	background: #d1aa67;
}

.vip-section-heading h2 {
	max-width: 850px;
	margin: 0;
	color: #ffffff;
	font-size: clamp(40px, 4.4vw, 62px);
	font-weight: 800;
	line-height: 1.08;
	letter-spacing: -1px;
}

.vip-heading-note {
	max-width: 390px;
	margin: 0 0 5px auto;
	padding-left: 22px;
	border-left: 1px solid rgba(211, 170, 100, 0.45);
	color: #b8bdc8;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.75;
}


.vip-introduction-content h3,
.vip-subheading h3,
.vip-tier-heading h3,
.orpheus-room-heading h3,
.vip-service-heading h3 {
	margin: 12px 0 22px;
	color: #ffffff;
	font-size: 34px;
	font-weight: 750;
	line-height: 1.2;
	letter-spacing: -0.5px;
}


.vip-introduction {
	margin-bottom: 110px;
}

.vip-introduction-content {
	max-width: 560px;
	padding-right: 35px;
}

.vip-introduction-content > p {
	margin: 0 0 18px;
	color: #b9bec9;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.84;
}


.vip-conversion-highlight {
	display: grid;
	grid-template-columns: 54px 1fr;
	align-items: center;
	gap: 16px;
	max-width: 430px;
	margin-top: 31px;
	padding: 18px 20px;
	border: 1px solid rgba(212, 171, 101, 0.29);
	border-radius: 7px;
	background:
		linear-gradient(
			90deg,
			rgba(178, 126, 67, 0.13),
			rgba(255, 255, 255, 0.025)
		);
}

.vip-conversion-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	border: 1px solid rgba(224, 190, 130, 0.48);
	border-radius: 50%;
	color: #e3c58d;
	background: rgba(213, 170, 99, 0.06);
	font-size: 17px;
}

.vip-conversion-highlight strong {
	display: block;
	margin-bottom: 4px;
	color: #ffffff;
	font-size: 18px;
	font-weight: 750;
}

.vip-conversion-highlight span {
	display: block;
	color: #aeb4c0;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.3px;
}


.vip-card-showcase {
	position: relative;
	width: 100%;
	max-width: 570px;
	min-height: 445px;
	margin-left: auto;
}

.vip-membership-card {
	position: absolute;
	width: 430px;
	height: 238px;
	padding: 28px 30px;
	border: 1px solid rgba(228, 198, 143, 0.34);
	border-radius: 18px;
	box-shadow:
		0 32px 65px rgba(0, 0, 0, 0.35),
		inset 0 1px 0 rgba(255, 255, 255, 0.08);
	overflow: hidden;
}

.vip-membership-card::before {
	content: "";
	position: absolute;
	top: -90px;
	right: -60px;
	width: 250px;
	height: 250px;
	border: 1px solid rgba(231, 204, 153, 0.13);
	border-radius: 50%;
	box-shadow:
		0 0 0 35px rgba(231, 204, 153, 0.025),
		0 0 0 70px rgba(231, 204, 153, 0.018);
}

.vip-membership-card::after {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(
			125deg,
			transparent 0%,
			rgba(255, 255, 255, 0.055) 38%,
			transparent 58%
		);
	pointer-events: none;
}

.vip-membership-card-standard {
	top: 20px;
	left: 0;
	z-index: 1;
	background:
		radial-gradient(
			circle at 80% 15%,
			rgba(195, 160, 102, 0.17),
			transparent 36%
		),
		linear-gradient(
			145deg,
			#202a3a,
			#111723 62%,
			#0c121b
		);
	transform: rotate(-4deg);
}

.vip-membership-card-premium {
	top: 165px;
	right: 0;
	z-index: 2;
	background:
		radial-gradient(
			circle at 82% 15%,
			rgba(226, 187, 117, 0.21),
			transparent 38%
		),
		linear-gradient(
			145deg,
			#4a354d,
			#282033 57%,
			#171720
		);
	transform: rotate(4deg);
}

.vip-card-top,
.vip-card-centre,
.vip-card-bottom {
	position: relative;
	z-index: 2;
}

.vip-card-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	color: #e4c68f;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 1.4px;
	text-transform: uppercase;
}

.vip-card-top i {
	font-size: 19px;
}

.vip-card-centre {
	margin-top: 46px;
}

.vip-card-centre span {
	display: block;
	margin-bottom: 7px;
	color: rgba(255, 255, 255, 0.55);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 1.2px;
	text-transform: uppercase;
}

.vip-card-centre strong {
	display: block;
	max-width: 340px;
	color: #ffffff;
	font-size: 23px;
	font-weight: 750;
	line-height: 1.25;
}

.vip-card-bottom {
	position: absolute;
	left: 30px;
	right: 30px;
	bottom: 24px;
	display: flex;
	gap: 17px;
}

.vip-card-bottom span {
	color: rgba(255, 255, 255, 0.57);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.9px;
	text-transform: uppercase;
}

.vip-card-caption {
	position: absolute;
	right: 15px;
	bottom: 0;
	max-width: 340px;
	margin: 0;
	color: #878e9c;
	font-size: 10px;
	font-weight: 500;
	line-height: 1.55;
	text-align: right;
}


.vip-balances-section {
	margin-bottom: 110px;
}

.vip-subheading {
	max-width: 760px;
	margin-bottom: 38px;
}

.vip-subheading > p {
	max-width: 650px;
	margin: 0;
	color: #aeb5c1;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.78;
}

.vip-balances-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}

.vip-balance-card {
	position: relative;
	display: grid;
	grid-template-columns: 68px 1fr;
	gap: 22px;
	min-height: 350px;
	padding: 36px 34px;
	border: 1px solid rgba(210, 170, 102, 0.2);
	border-radius: 8px;
	background:
		linear-gradient(
			145deg,
			rgba(49, 56, 76, 0.47),
			rgba(22, 25, 36, 0.75)
		);
	box-shadow: 0 25px 58px rgba(0, 0, 0, 0.2);
	overflow: hidden;
}

.vip-balance-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 85px;
	height: 1px;
	background: #d1aa67;
}

.vip-balance-card-featured {
	border-color: rgba(213, 170, 100, 0.38);
	background:
		linear-gradient(
			145deg,
			rgba(79, 55, 79, 0.48),
			rgba(27, 25, 39, 0.82)
		);
}

.vip-balance-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 62px;
	height: 62px;
	border: 1px solid rgba(221, 184, 119, 0.43);
	border-radius: 50%;
	color: #e2c58e;
	background: rgba(211, 170, 100, 0.055);
	font-size: 19px;
}

.vip-card-label {
	display: block;
	margin-bottom: 9px;
	font-size: 9px;
	letter-spacing: 1.35px;
}

.vip-balance-content h4 {
	margin: 0 0 16px;
	color: #ffffff;
	font-size: 27px;
	font-weight: 750;
	line-height: 1.2;
}

.vip-balance-content > p {
	margin: 0;
	color: #aeb5c1;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.76;
}

.vip-balance-uses {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 23px;
}

.vip-balance-uses span {
	padding: 6px 10px;
	border: 1px solid rgba(211, 170, 100, 0.19);
	border-radius: 30px;
	color: #d3d5dc;
	background: rgba(255, 255, 255, 0.018);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.5px;
	text-transform: uppercase;
}


.vip-tier-section {
	margin-bottom: 110px;
}

.vip-tier-heading {
	display: grid;
	grid-template-columns: minmax(380px, 0.9fr) minmax(420px, 1.1fr);
	align-items: end;
	gap: 65px;
	margin-bottom: 35px;
	padding-bottom: 27px;
	border-bottom: 1px solid rgba(211, 170, 100, 0.2);
}

.vip-tier-heading p {
	max-width: 610px;
	margin: 0;
	padding-left: 22px;
	border-left: 1px solid rgba(211, 170, 100, 0.42);
	color: #aeb5c1;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.76;
}

.vip-tier-groups {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}

.vip-tier-group {
	position: relative;
	min-height: 390px;
	padding: 35px 34px 31px;
	border: 1px solid rgba(210, 170, 102, 0.21);
	border-radius: 8px;
	background:
		linear-gradient(
			150deg,
			rgba(44, 52, 72, 0.48),
			rgba(19, 23, 34, 0.75)
		);
	box-shadow: 0 25px 58px rgba(0, 0, 0, 0.19);
}

.vip-tier-group-premium {
	border-color: rgba(217, 176, 105, 0.4);
	background:
		radial-gradient(
			circle at 90% 10%,
			rgba(206, 158, 88, 0.1),
			transparent 34%
		),
		linear-gradient(
			150deg,
			rgba(72, 49, 75, 0.57),
			rgba(25, 23, 37, 0.83)
		);
}

.vip-tier-group-heading {
	display: grid;
	grid-template-columns: 58px 1fr;
	align-items: center;
	gap: 17px;
	margin-bottom: 28px;
}

.vip-tier-group-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 55px;
	height: 55px;
	border: 1px solid rgba(220, 183, 117, 0.43);
	border-radius: 50%;
	color: #e2c58e;
	font-size: 17px;
}

.vip-tier-group-heading span {
	display: block;
	margin-bottom: 5px;
	color: #cfa865;
	font-size: 9px;
	font-weight: 800;
	letter-spacing: 1.2px;
	text-transform: uppercase;
}

.vip-tier-group-heading h4 {
	margin: 0;
	color: #ffffff;
	font-size: 24px;
	font-weight: 750;
}

.vip-tier-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 25px;
}

.vip-tier-list span {
	padding: 8px 12px;
	border: 1px solid rgba(210, 170, 102, 0.19);
	border-radius: 30px;
	color: #d5d7df;
	background: rgba(255, 255, 255, 0.025);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.35px;
}

.vip-tier-list .vip-tier-exclusive {
	border-color: rgba(226, 190, 125, 0.58);
	color: #f0d49f;
	background: rgba(211, 170, 100, 0.09);
}

.vip-tier-group > p {
	margin: 0;
	color: #aeb5c1;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.75;
}

/* Orpheus Room */

.orpheus-room-section {
	margin-bottom: 110px;
}

.orpheus-room-inner {
	position: relative;
	padding: 78px 65px 58px;
	border: 1px solid rgba(222, 183, 113, 0.35);
	border-radius: 10px;
	background:
		radial-gradient(
			circle at 50% 0%,
			rgba(213, 164, 92, 0.17),
			transparent 34%
		),
		radial-gradient(
			circle at 100% 75%,
			rgba(98, 69, 116, 0.15),
			transparent 35%
		),
		linear-gradient(
			145deg,
			rgba(36, 40, 57, 0.98),
			rgba(23, 21, 34, 0.98) 61%,
			rgba(15, 19, 28, 0.99)
		);
	box-shadow:
		0 42px 90px rgba(0, 0, 0, 0.34),
		inset 0 1px 0 rgba(255, 255, 255, 0.045);
	overflow: hidden;
}

.orpheus-room-inner::before {
	content: "";
	position: absolute;
	top: -210px;
	left: 50%;
	width: 520px;
	height: 520px;
	border: 1px solid rgba(223, 187, 122, 0.07);
	border-radius: 50%;
	box-shadow:
		0 0 0 60px rgba(223, 187, 122, 0.018),
		0 0 0 120px rgba(223, 187, 122, 0.012);
	transform: translateX(-50%);
	pointer-events: none;
}

.orpheus-room-heading {
	position: relative;
	z-index: 2;
	max-width: 760px;
	margin: 0 auto 43px;
	text-align: center;
}

.orpheus-room-emblem {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 82px;
	height: 82px;
	margin-bottom: 27px;
	border: 1px solid rgba(229, 195, 134, 0.53);
	border-radius: 50%;
	color: #e5c790;
	background: rgba(211, 170, 100, 0.05);
	font-size: 25px;
	box-shadow:
		inset 0 0 35px rgba(211, 170, 100, 0.065),
		0 15px 35px rgba(0, 0, 0, 0.2);
}

.orpheus-room-heading .vip-content-kicker {
	justify-content: center;
}

.orpheus-room-heading h3 {
	font-size: 43px;
}

.orpheus-room-heading > p {
	max-width: 700px;
	margin: 0 auto;
	color: #b6bbc6;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.82;
}


.orpheus-access-line {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	margin-bottom: 35px;
	padding: 19px 22px;
	border-top: 1px solid rgba(214, 173, 105, 0.25);
	border-bottom: 1px solid rgba(214, 173, 105, 0.16);
	background:
		linear-gradient(
			90deg,
			transparent,
			rgba(211, 170, 100, 0.045),
			transparent
		);
}

.orpheus-access-line > span {
	flex: 0 0 auto;
	color: #d1aa67;
	font-size: 9px;
	font-weight: 800;
	letter-spacing: 1.25px;
	text-transform: uppercase;
}

.orpheus-access-line > div {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 8px;
}

.orpheus-access-line strong {
	padding: 6px 10px;
	border: 1px solid rgba(220, 183, 117, 0.19);
	border-radius: 30px;
	color: #dde0e7;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.4px;
}


.orpheus-features-grid {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 13px;
}

.orpheus-feature {
	min-height: 255px;
	padding: 26px 22px;
	border: 1px solid rgba(213, 172, 103, 0.17);
	border-radius: 7px;
	background:
		linear-gradient(
			150deg,
			rgba(255, 255, 255, 0.047),
			rgba(255, 255, 255, 0.012)
		);
}

.orpheus-feature-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	margin-bottom: 22px;
	border: 1px solid rgba(221, 184, 119, 0.41);
	border-radius: 50%;
	color: #e2c58e;
	font-size: 15px;
}

.orpheus-feature h4 {
	margin: 0 0 13px;
	color: #ffffff;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.35;
}

.orpheus-feature p {
	margin: 0;
	color: #aeb5c1;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.7;
}

.orpheus-room-note {
	position: relative;
	z-index: 2;
	max-width: 760px;
	margin: 27px auto 0;
	color: #8e95a2;
	font-size: 10px;
	font-weight: 500;
	line-height: 1.65;
	text-align: center;
}

/* VIP Services */

.vip-service-section {
	margin-bottom: 85px;
}

.vip-service-heading {
	max-width: 760px;
	margin-bottom: 38px;
}

.vip-service-heading > p {
	max-width: 680px;
	margin: 0;
	color: #aeb5c1;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.78;
}

.vip-service-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.vip-service-card {
	position: relative;
	min-height: 400px;
	padding: 31px 27px 28px;
	border: 1px solid rgba(210, 170, 102, 0.19);
	border-radius: 8px;
	background:
		linear-gradient(
			150deg,
			rgba(48, 54, 73, 0.44),
			rgba(21, 24, 35, 0.73)
		);
	box-shadow: 0 24px 52px rgba(0, 0, 0, 0.18);
	overflow: hidden;
	transition:
		transform 0.3s ease,
		border-color 0.3s ease;
}

.vip-service-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 70px;
	height: 1px;
	background: #d1aa67;
}

.vip-service-card:hover {
	border-color: rgba(218, 177, 108, 0.44);
	transform: translateY(-5px);
}

.vip-service-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	margin-bottom: 25px;
	border: 1px solid rgba(220, 183, 117, 0.43);
	border-radius: 50%;
	color: #e2c58e;
	background: rgba(211, 170, 100, 0.05);
	font-size: 16px;
}

.vip-service-card h4 {
	margin: 8px 0 15px;
	color: #ffffff;
	font-size: 23px;
	font-weight: 750;
	line-height: 1.3;
}

.vip-service-card > p {
	margin: 0;
	color: #aeb5c1;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.76;
}


.vip-programme-details {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin-bottom: 75px;
}

.vip-programme-detail {
	display: grid;
	grid-template-columns: 38px 1fr;
	align-items: start;
	gap: 13px;
	padding: 18px 19px;
	border: 1px solid rgba(210, 170, 102, 0.14);
	border-radius: 6px;
	background: rgba(255, 255, 255, 0.018);
}

.vip-programme-detail i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	color: #d8b578;
	background: rgba(211, 170, 100, 0.07);
	font-size: 12px;
}

.vip-programme-detail p {
	margin: 0;
	color: #969eab;
	font-size: 10px;
	font-weight: 500;
	line-height: 1.65;
}


.vip-closing-statement {
	display: flex;
	align-items: center;
	gap: 22px;
	max-width: 1020px;
	margin: 0 auto;
	padding: 29px 40px;
	border-top: 1px solid rgba(215, 175, 107, 0.36);
	border-bottom: 1px solid rgba(215, 175, 107, 0.15);
	background:
		linear-gradient(
			90deg,
			transparent,
			rgba(100, 73, 116, 0.1),
			rgba(211, 170, 100, 0.04),
			transparent
		);
}

.vip-closing-statement i {
	flex: 0 0 auto;
	color: #e2c58e;
	font-size: 20px;
}

.vip-closing-statement p {
	margin: 0;
	color: #e4e3e7;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 18px;
	font-style: italic;
	line-height: 1.7;
	text-align: center;
}

/*************************************************
 * RESPONSIVE
 *************************************************/

@media only screen and (max-width: 1199px) {
	.vip-experience-section {
		padding: 95px 0 90px;
	}

	.vip-card-showcase {
		max-width: 520px;
	}

	.vip-membership-card {
		width: 390px;
		height: 225px;
	}

	.vip-membership-card-premium {
		top: 155px;
	}

	.vip-card-centre {
		margin-top: 39px;
	}

	.orpheus-room-inner {
		padding: 70px 43px 50px;
	}

	.orpheus-features-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.orpheus-feature {
		min-height: 225px;
	}
}

@media only screen and (max-width: 991px) {
	.vip-experience-section {
		padding: 85px 0 80px;
	}

	.vip-heading-row {
		margin-bottom: 58px;
	}

	.vip-heading-note {
		max-width: 680px;
		margin: 24px 0 0;
	}

	.vip-introduction {
		margin-bottom: 85px;
	}

	.vip-introduction-content {
		max-width: none;
		margin-bottom: 45px;
		padding-right: 0;
	}

	.vip-card-showcase {
		max-width: 600px;
		margin: 0 auto;
	}

	.vip-membership-card {
		width: 430px;
	}

	.vip-balances-section,
	.vip-tier-section,
	.orpheus-room-section {
		margin-bottom: 85px;
	}

	.vip-balances-grid,
	.vip-tier-groups {
		grid-template-columns: 1fr;
	}

	.vip-balance-card,
	.vip-tier-group {
		min-height: 0;
	}

	.vip-tier-heading {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.vip-tier-heading p {
		max-width: 700px;
	}

	.orpheus-access-line {
		align-items: flex-start;
		flex-direction: column;
	}

	.orpheus-access-line > div {
		justify-content: flex-start;
	}

	.vip-service-grid {
		grid-template-columns: 1fr;
	}

	.vip-service-card {
		min-height: 0;
	}

	.vip-programme-details {
		grid-template-columns: 1fr;
	}
}

@media only screen and (max-width: 767px) {
	.vip-section-heading h2 {
		font-size: 41px;
	}

	.vip-introduction-content h3,
	.vip-subheading h3,
	.vip-tier-heading h3,
	.orpheus-room-heading h3,
	.vip-service-heading h3 {
		font-size: 29px;
	}

	.vip-card-showcase {
		min-height: 420px;
	}

	.vip-membership-card {
		width: 390px;
		height: 220px;
		padding: 25px 26px;
	}

	.vip-membership-card-premium {
		top: 150px;
	}

	.vip-card-bottom {
		left: 26px;
		right: 26px;
	}

	.vip-balance-card {
		grid-template-columns: 58px 1fr;
		padding: 30px 26px;
	}

	.vip-balance-icon {
		width: 54px;
		height: 54px;
	}

	.orpheus-room-inner {
		padding: 58px 27px 42px;
	}

	.orpheus-room-heading h3 {
		font-size: 36px;
	}

	.orpheus-features-grid {
		grid-template-columns: 1fr;
	}

	.orpheus-feature {
		min-height: 0;
	}

	.vip-closing-statement {
		padding: 27px 25px;
	}
}

@media only screen and (max-width: 575px) {
	.vip-experience-section {
		padding: 65px 0 60px;
	}

	.vip-heading-row {
		margin-bottom: 43px;
		padding-bottom: 23px;
	}

	.vip-section-label,
	.vip-content-kicker,
	.vip-card-label {
		font-size: 9px;
		letter-spacing: 1.25px;
	}

	.vip-section-label::before {
		width: 25px;
		margin-right: 9px;
	}

	.vip-section-heading h2 {
		font-size: 34px;
		line-height: 1.14;
	}

	.vip-heading-note {
		padding-left: 15px;
		font-size: 13px;
	}

	.vip-introduction-content h3,
	.vip-subheading h3,
	.vip-tier-heading h3,
	.orpheus-room-heading h3,
	.vip-service-heading h3 {
		margin-bottom: 17px;
		font-size: 25px;
	}

	.vip-introduction-content > p {
		font-size: 14px;
		line-height: 1.75;
	}

	.vip-conversion-highlight {
		grid-template-columns: 47px 1fr;
		padding: 15px;
	}

	.vip-conversion-icon {
		width: 44px;
		height: 44px;
	}

	.vip-conversion-highlight strong {
		font-size: 16px;
	}


	.vip-card-showcase {
		display: grid;
		gap: 13px;
		min-height: 0;
	}

	.vip-membership-card {
		position: relative;
		top: auto;
		right: auto;
		left: auto;
		width: 100%;
		height: 205px;
		padding: 23px 22px;
		transform: none;
	}

	.vip-card-centre {
		margin-top: 33px;
	}

	.vip-card-centre strong {
		font-size: 19px;
	}

	.vip-card-bottom {
		left: 22px;
		right: 22px;
		bottom: 20px;
		gap: 12px;
	}

	.vip-card-caption {
		position: relative;
		right: auto;
		bottom: auto;
		max-width: none;
		margin-top: 3px;
		text-align: left;
	}

	.vip-balances-section,
	.vip-tier-section,
	.orpheus-room-section {
		margin-bottom: 65px;
	}

	.vip-subheading {
		margin-bottom: 27px;
	}

	.vip-balance-card {
		grid-template-columns: 1fr;
		gap: 18px;
		padding: 27px 21px;
	}

	.vip-balance-content h4 {
		font-size: 23px;
	}

	.vip-balance-content > p {
		font-size: 13px;
		line-height: 1.72;
	}

	.vip-tier-heading {
		margin-bottom: 25px;
	}

	.vip-tier-heading p {
		padding-left: 15px;
		font-size: 13px;
	}

	.vip-tier-group {
		padding: 27px 21px;
	}

	.vip-tier-group-heading {
		grid-template-columns: 50px 1fr;
	}

	.vip-tier-group-icon {
		width: 47px;
		height: 47px;
	}

	.vip-tier-group-heading h4 {
		font-size: 21px;
	}

	.vip-tier-group > p {
		font-size: 12px;
	}

	.orpheus-room-inner {
		margin-right: -15px;
		margin-left: -15px;
		padding: 48px 20px 35px;
		border-right: 0;
		border-left: 0;
		border-radius: 0;
	}

	.orpheus-room-emblem {
		width: 68px;
		height: 68px;
		margin-bottom: 22px;
		font-size: 21px;
	}

	.orpheus-room-heading h3 {
		font-size: 30px;
	}

	.orpheus-room-heading > p {
		font-size: 13px;
		line-height: 1.74;
	}

	.orpheus-access-line {
		padding: 17px 4px;
	}

	.orpheus-feature {
		padding: 23px 19px;
	}

	.vip-service-section {
		margin-bottom: 65px;
	}

	.vip-service-card {
		padding: 27px 21px;
	}

	.vip-service-card h4 {
		font-size: 21px;
	}

	.vip-service-card > p {
		font-size: 13px;
		line-height: 1.72;
	}

	.vip-programme-details {
		margin-bottom: 55px;
	}

	.vip-programme-detail {
		padding: 15px;
	}

	.vip-closing-statement {
		flex-direction: column;
		gap: 15px;
		padding: 25px 18px;
	}

	.vip-closing-statement p {
		font-size: 16px;
		line-height: 1.65;
	}
}

/*************************************************
 * Townsville Casino Visit Section
 *************************************************/

.visit-section {
	position: relative;
	padding: 115px 0 105px;
	background:
		radial-gradient(
			circle at 10% 16%,
			rgba(38, 104, 100, 0.16),
			transparent 29%
		),
		radial-gradient(
			circle at 91% 75%,
			rgba(171, 123, 67, 0.12),
			transparent 27%
		),
		linear-gradient(
			145deg,
			#111b1d 0%,
			#171c1f 52%,
			#121719 100%
		);
	overflow: hidden;
}

.visit-section .container {
	position: relative;
	z-index: 2;
	max-width: 1320px;
	padding-right: 30px;
	padding-left: 30px;
}

.visit-orbit {
	position: absolute;
	border: 1px solid rgba(219, 188, 130, 0.06);
	border-radius: 50%;
	pointer-events: none;
}

.visit-orbit-left {
	top: 8%;
	left: -170px;
	width: 420px;
	height: 420px;
	box-shadow: 0 0 0 70px rgba(36, 103, 98, 0.018);
}

.visit-orbit-right {
	right: -150px;
	bottom: 12%;
	width: 360px;
	height: 360px;
	box-shadow: 0 0 0 55px rgba(191, 144, 76, 0.015);
}

.visit-heading-row {
	margin-bottom: 68px;
	padding-bottom: 31px;
	border-bottom: 1px solid rgba(215, 180, 116, 0.22);
}

.visit-section-label,
.visit-content-kicker {
	display: inline-flex;
	align-items: center;
	margin-bottom: 15px;
	color: #d7b979;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 1.75px;
	text-transform: uppercase;
}

.visit-section-label::before {
	content: "";
	width: 36px;
	height: 1px;
	margin-right: 12px;
	background: #d7b979;
}

.visit-section-heading h2,
.visit-arrival-copy h3,
.visit-hours-intro h3,
.visit-subheading h3,
.visit-safer-heading h3 {
	color: #ffffff;
	font-family: Georgia, "Times New Roman", serif;
	font-weight: 400;
}

.visit-section-heading h2 {
	margin: 0;
	font-size: 54px;
	line-height: 1.12;
}

.visit-heading-note {
	max-width: 390px;
	margin: 0 0 5px auto;
	padding-left: 21px;
	border-left: 1px solid rgba(215, 180, 116, 0.42);
	color: #aeb9b7;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.75;
}

.visit-arrival-panel {
	display: grid;
	grid-template-columns: minmax(350px, 0.76fr) minmax(620px, 1.24fr);
	gap: 48px;
	margin-bottom: 105px;
	padding: 48px;
	border: 1px solid rgba(215, 180, 116, 0.2);
	border-radius: 9px;
	background:
		linear-gradient(
			135deg,
			rgba(49, 76, 76, 0.34),
			rgba(21, 27, 30, 0.8)
		);
	box-shadow: 0 32px 75px rgba(0, 0, 0, 0.22);
}

.visit-arrival-copy {
	padding: 9px 15px 5px 0;
}

.visit-arrival-copy h3,
.visit-hours-intro h3,
.visit-subheading h3,
.visit-safer-heading h3 {
	margin: 0 0 21px;
	font-size: 36px;
	line-height: 1.2;
}

.visit-arrival-copy p,
.visit-hours-intro p,
.visit-subheading > p,
.visit-safer-heading > p {
	color: #adb8b6;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.8;
}

.visit-arrival-copy p {
	margin: 0 0 17px;
}

.visit-ready-grid,
.visit-guidance-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 15px;
}

.visit-ready-card,
.visit-guidance-card {
	position: relative;
	padding: 29px 23px;
	border: 1px solid rgba(215, 180, 116, 0.18);
	border-radius: 7px;
	background: rgba(255, 255, 255, 0.025);
	overflow: hidden;
}

.visit-ready-card {
	min-height: 335px;
}

.visit-ready-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 60px;
	height: 1px;
	background: #d7b979;
}

.visit-card-icon,
.visit-limit-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	margin-bottom: 25px;
	border: 1px solid rgba(222, 191, 133, 0.43);
	border-radius: 50%;
	color: #e4c98f;
	background: rgba(215, 180, 116, 0.045);
	font-size: 16px;
}

.visit-card-label,
.visit-limit-heading span {
	display: block;
	margin-bottom: 7px;
	color: #cba865;
	font-size: 9px;
	font-weight: 800;
	letter-spacing: 1.2px;
	text-transform: uppercase;
}

.visit-ready-card h4,
.visit-guidance-card h4,
.visit-limit-heading h4,
.visit-support-card h4 {
	margin: 0 0 14px;
	color: #ffffff;
	font-weight: 700;
}

.visit-ready-card h4 {
	font-size: 19px;
}

.visit-ready-card p,
.visit-guidance-card p {
	margin: 0;
	color: #a8b3b1;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.72;
}

.visit-hours-section {
	display: grid;
	grid-template-columns: minmax(350px, 0.82fr) minmax(520px, 1.18fr);
	align-items: center;
	gap: 75px;
	margin-bottom: 105px;
}

.visit-hours-intro {
	max-width: 490px;
}

.visit-hours-intro p,
.visit-subheading > p {
	margin: 0;
}

.visit-hours-board {
	padding: 12px 36px 15px;
	border-top: 1px solid rgba(215, 180, 116, 0.36);
	border-bottom: 1px solid rgba(215, 180, 116, 0.2);
	background:
		linear-gradient(
			90deg,
			transparent,
			rgba(255, 255, 255, 0.028),
			transparent
		);
}

.visit-hours-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	padding: 26px 3px;
	border-bottom: 1px solid rgba(215, 180, 116, 0.15);
}

.visit-hours-row span,
.visit-hours-row small {
	display: block;
}

.visit-hours-row span {
	margin-bottom: 5px;
	color: #ffffff;
	font-size: 16px;
	font-weight: 700;
}

.visit-hours-row small {
	color: #7f8e8b;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.55px;
	text-transform: uppercase;
}

.visit-hours-row strong {
	color: #e3c78e;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 29px;
	font-weight: 400;
	white-space: nowrap;
}

.visit-hours-row strong i {
	margin: 0 7px;
	color: #74827f;
	font-family: "DM Sans", sans-serif;
	font-size: 10px;
	font-style: normal;
	font-weight: 700;
	text-transform: uppercase;
}

.visit-hours-row-featured strong {
	color: #f0d7a4;
}

.visit-hours-note {
	margin: 14px 3px 0;
	color: #778481;
	font-size: 9px;
	font-weight: 500;
	line-height: 1.55;
}

.visit-first-time-section {
	margin-bottom: 105px;
}

.visit-subheading {
	max-width: 770px;
	margin-bottom: 37px;
}

.visit-guidance-card {
	min-height: 315px;
	padding: 32px 29px;
	background:
		linear-gradient(
			150deg,
			rgba(47, 68, 69, 0.38),
			rgba(22, 28, 31, 0.74)
		);
	box-shadow: 0 24px 55px rgba(0, 0, 0, 0.16);
	transition:
		transform 0.3s ease,
		border-color 0.3s ease;
}

.visit-guidance-card:hover {
	border-color: rgba(220, 185, 121, 0.4);
	transform: translateY(-5px);
}

.visit-guidance-card h4 {
	font-size: 23px;
}

.visit-guidance-card p {
	font-size: 13px;
	line-height: 1.76;
}

.visit-safer-section {
	margin-bottom: 72px;
	padding: 72px 64px 62px;
	border: 1px solid rgba(219, 183, 118, 0.28);
	border-radius: 10px;
	background:
		radial-gradient(
			circle at 85% 5%,
			rgba(177, 128, 67, 0.11),
			transparent 29%
		),
		linear-gradient(
			145deg,
			rgba(35, 51, 53, 0.94),
			rgba(19, 25, 28, 0.98)
		);
	box-shadow: 0 38px 80px rgba(0, 0, 0, 0.27);
}

.visit-safer-heading,
.visit-safer-layout {
	display: grid;
	grid-template-columns: minmax(390px, 0.9fr) minmax(430px, 1.1fr);
	gap: 65px;
}

.visit-safer-heading {
	align-items: end;
	margin-bottom: 41px;
	padding-bottom: 28px;
	border-bottom: 1px solid rgba(215, 180, 116, 0.2);
}

.visit-safer-heading h3 {
	margin-bottom: 0;
}

.visit-safer-heading > p {
	margin: 0;
	padding-left: 22px;
	border-left: 1px solid rgba(215, 180, 116, 0.4);
}

.visit-safer-layout {
	gap: 25px;
}

.visit-limit-plan {
	padding: 34px;
	border: 1px solid rgba(215, 180, 116, 0.21);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.025);
}

.visit-limit-heading {
	display: grid;
	grid-template-columns: 62px 1fr;
	align-items: center;
	gap: 17px;
	margin-bottom: 28px;
}

.visit-limit-icon {
	width: 58px;
	height: 58px;
	margin: 0;
}

.visit-limit-heading h4 {
	font-size: 23px;
}

.visit-limit-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.visit-limit-list li {
	display: grid;
	grid-template-columns: 27px 1fr;
	gap: 12px;
	padding: 15px 0;
	border-top: 1px solid rgba(215, 180, 116, 0.13);
}

.visit-limit-list i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	color: #dfc183;
	background: rgba(215, 180, 116, 0.08);
	font-size: 9px;
}

.visit-limit-list span {
	color: #b2bcba;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.65;
}

.visit-support-list {
	display: grid;
	gap: 12px;
}

.visit-support-card {
	display: grid;
	grid-template-columns: 48px 1fr;
	gap: 17px;
	padding: 23px 24px;
	border: 1px solid rgba(215, 180, 116, 0.17);
	border-radius: 7px;
	background: rgba(255, 255, 255, 0.022);
}

.visit-support-card > i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border: 1px solid rgba(222, 191, 133, 0.37);
	border-radius: 50%;
	color: #e1c389;
	font-size: 14px;
}

.visit-support-card h4 {
	margin-bottom: 8px;
	font-size: 18px;
}

.visit-support-card p {
	margin: 0;
	color: #a6b1af;
	font-size: 11px;
	font-weight: 500;
	line-height: 1.7;
}

.visit-entry-note {
	display: flex;
	align-items: center;
	gap: 20px;
	max-width: 1040px;
	margin: 0 auto;
	padding: 26px 36px;
	border-top: 1px solid rgba(215, 180, 116, 0.34);
	border-bottom: 1px solid rgba(215, 180, 116, 0.16);
	background:
		linear-gradient(
			90deg,
			transparent,
			rgba(255, 255, 255, 0.03),
			transparent
		);
}

.visit-entry-note i {
	flex: 0 0 auto;
	color: #e2c58c;
	font-size: 19px;
}

.visit-entry-note p {
	margin: 0;
	color: #c3cbc9;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.72;
	text-align: center;
}

/* Tablet */

@media only screen and (max-width: 1199px) {
	.visit-section {
		padding: 95px 0 90px;
	}

	.visit-arrival-panel {
		grid-template-columns: 1fr;
	}

	.visit-arrival-copy {
		max-width: 820px;
	}

	.visit-ready-card {
		min-height: 295px;
	}

	.visit-safer-section {
		padding: 65px 44px 55px;
	}
}

/* Small tablet */

@media only screen and (max-width: 991px) {
	.visit-section {
		padding: 85px 0 80px;
	}

	.visit-heading-row {
		margin-bottom: 55px;
	}

	.visit-heading-note {
		max-width: 680px;
		margin: 24px 0 0;
	}

	.visit-arrival-panel,
	.visit-hours-section,
	.visit-first-time-section {
		margin-bottom: 85px;
	}

	.visit-ready-grid,
	.visit-guidance-grid {
		grid-template-columns: 1fr;
	}

	.visit-ready-card,
	.visit-guidance-card {
		min-height: 0;
	}

	.visit-hours-section {
		grid-template-columns: 1fr;
		gap: 38px;
	}

	.visit-hours-intro {
		max-width: 720px;
	}

	.visit-safer-heading,
	.visit-safer-layout {
		grid-template-columns: 1fr;
	}

	.visit-safer-heading {
		gap: 20px;
	}

	.visit-safer-heading > p {
		max-width: 720px;
	}
}

/* Mobile landscape */

@media only screen and (max-width: 767px) {
	.visit-section .container {
		padding-right: 20px;
		padding-left: 20px;
	}

	.visit-section-heading h2 {
		font-size: 41px;
	}

	.visit-arrival-copy h3,
	.visit-hours-intro h3,
	.visit-subheading h3,
	.visit-safer-heading h3 {
		font-size: 29px;
	}

	.visit-arrival-panel {
		padding: 35px 28px;
	}

	.visit-safer-section {
		padding: 54px 28px 45px;
	}
}

/* Mobile */

@media only screen and (max-width: 575px) {
	.visit-section {
		padding: 65px 0 60px;
	}

	.visit-section .container {
		padding-right: 15px;
		padding-left: 15px;
	}

	.visit-heading-row {
		margin-bottom: 42px;
		padding-bottom: 23px;
	}

	.visit-section-label,
	.visit-content-kicker {
		font-size: 9px;
		letter-spacing: 1.25px;
	}

	.visit-section-label::before {
		width: 25px;
		margin-right: 9px;
	}

	.visit-section-heading h2 {
		font-size: 34px;
		line-height: 1.14;
	}

	.visit-heading-note {
		padding-left: 15px;
		font-size: 13px;
	}

	.visit-arrival-panel,
	.visit-hours-section,
	.visit-first-time-section {
		margin-bottom: 65px;
	}

	.visit-arrival-panel {
		margin-right: -15px;
		margin-left: -15px;
		padding: 42px 15px 28px;
		border-right: 0;
		border-left: 0;
		border-radius: 0;
	}

	.visit-arrival-copy {
		padding: 0;
	}

	.visit-arrival-copy h3,
	.visit-hours-intro h3,
	.visit-subheading h3,
	.visit-safer-heading h3 {
		margin-bottom: 17px;
		font-size: 25px;
	}

	.visit-arrival-copy p,
	.visit-hours-intro p,
	.visit-subheading > p,
	.visit-safer-heading > p {
		font-size: 13px;
		line-height: 1.74;
	}

	.visit-ready-card,
	.visit-guidance-card {
		padding: 25px 21px;
	}

	.visit-hours-board {
		padding-right: 6px;
		padding-left: 6px;
	}

	.visit-hours-row {
		align-items: flex-start;
		flex-direction: column;
		gap: 13px;
		padding: 22px 4px;
	}

	.visit-hours-row strong {
		font-size: 26px;
	}

	.visit-guidance-card h4 {
		font-size: 21px;
	}

	.visit-safer-section {
		margin-right: -15px;
		margin-bottom: 55px;
		margin-left: -15px;
		padding: 47px 15px 35px;
		border-right: 0;
		border-left: 0;
		border-radius: 0;
	}

	.visit-safer-heading > p {
		padding-left: 15px;
	}

	.visit-limit-plan {
		padding: 25px 20px;
	}

	.visit-limit-heading {
		grid-template-columns: 52px 1fr;
	}

	.visit-limit-icon {
		width: 49px;
		height: 49px;
	}

	.visit-limit-heading h4 {
		font-size: 20px;
	}

	.visit-support-card {
		grid-template-columns: 42px 1fr;
		gap: 13px;
		padding: 20px 17px;
	}

	.visit-support-card > i {
		width: 39px;
		height: 39px;
	}

	.visit-entry-note {
		flex-direction: column;
		gap: 14px;
		padding: 24px 17px;
	}

	.visit-entry-note p {
		font-size: 12px;
	}
}
/*************************************************
 * Final Section Width Control
 *************************************************/

html,
body {
	width: 100%;
	max-width: 100%;
	overflow-x: hidden;
}

.vip-experience-section,
.visit-section {
	width: 100%;
	max-width: 100%;
	overflow: hidden;
}

.vip-experience-section > .container,
.visit-section > .container {
	width: 100% !important;
	max-width: 1320px !important;
	margin-right: auto !important;
	margin-left: auto !important;
	padding-right: 48px !important;
	padding-left: 48px !important;
	box-sizing: border-box !important;
}

@media only screen and (min-width: 992px) {
	.vip-experience-section > .container {
		width: calc(100% - 96px) !important;
		max-width: 1180px !important;
		padding-right: 24px !important;
		padding-left: 24px !important;
	}
}

.vip-service-grid,
.vip-balances-grid,
.vip-tier-groups,
.vip-programme-details,
.visit-ready-grid,
.visit-guidance-grid,
.visit-safer-layout {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.vip-service-card,
.vip-balance-card,
.vip-tier-group,
.vip-programme-detail,
.visit-ready-card,
.visit-guidance-card,
.visit-limit-plan,
.visit-support-card {
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
}

@media only screen and (max-width: 1199px) {
	.vip-experience-section > .container,
	.visit-section > .container {
		padding-right: 38px !important;
		padding-left: 38px !important;
	}
}

@media only screen and (max-width: 991px) {
	.vip-experience-section > .container,
	.visit-section > .container {
		padding-right: 28px !important;
		padding-left: 28px !important;
	}
}

@media only screen and (max-width: 575px) {
	.vip-experience-section > .container,
	.visit-section > .container {
		padding-right: 18px !important;
		padding-left: 18px !important;
	}
}
/*************************************************
 * Townsville Casino Dining Section
 *************************************************/

.dining-section {
	position: relative;
	z-index: 1;
	padding: 115px 0 105px;
	background:
		radial-gradient(ellipse at 8% 10%, rgba(124, 57, 45, 0.23), transparent 57%),
		radial-gradient(ellipse at 92% 42%, rgba(188, 129, 65, 0.15), transparent 40%),
		radial-gradient(ellipse at 38% 92%, rgba(89, 63, 45, 0.22), transparent 42%),
		linear-gradient(145deg, #211817 0%, #171416 48%, #211a18 100%);
	overflow: hidden;
	isolation: isolate;
	scroll-margin-top: 86px;
}

.dining-section::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	z-index: -1;
	width: min(1180px, 86vw);
	height: 1px;
	background: linear-gradient(
		90deg,
		transparent,
		rgba(218, 170, 98, 0.72),
		rgba(218, 170, 98, 0.18),
		transparent
	);
	transform: translateX(-50%);
}

.dining-section > .container {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 1320px;
	margin-right: auto;
	margin-left: auto;
	padding-right: 32px;
	padding-left: 32px;
	box-sizing: border-box;
}

.dining-section *,
.dining-section *::before,
.dining-section *::after {
	box-sizing: border-box;
}

.dining-section img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.dining-background-detail {
	position: absolute;
	z-index: -1;
	border-radius: 50%;
	pointer-events: none;
}

.dining-background-detail-one {
	top: 7%;
	right: -330px;
	width: 720px;
	height: 720px;
	border: 1px solid rgba(222, 174, 101, 0.055);
	box-shadow:
		0 0 0 70px rgba(164, 100, 59, 0.014),
		0 0 0 140px rgba(164, 100, 59, 0.009);
}

.dining-background-detail-two {
	bottom: 9%;
	left: -250px;
	width: 560px;
	height: 560px;
	background: radial-gradient(
		circle,
		rgba(127, 72, 54, 0.11),
		transparent 68%
	);
}

/* Section heading */

.dining-heading-row {
	margin-bottom: 68px;
	padding-bottom: 31px;
	border-bottom: 1px solid rgba(218, 169, 96, 0.22);
}

.dining-section-label,
.dining-content-kicker,
.dining-card-label {
	color: #d7ad6b;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 1.65px;
	text-transform: uppercase;
}

.dining-section-label,
.dining-content-kicker {
	display: inline-flex;
	align-items: center;
	margin-bottom: 15px;
}

.dining-section-label::before {
	content: "";
	width: 36px;
	height: 1px;
	margin-right: 12px;
	background: #d7ad6b;
}

.dining-section-heading h2,
.dining-introduction-content h3,
.dining-featured-heading h3,
.dining-subheading h3,
.dining-casino-side-content h3,
.dining-poolside-copy h3,
.dining-ardo-heading h3 {
	color: #ffffff;
	font-family: Georgia, "Times New Roman", serif;
	font-weight: 400;
}

.dining-section-heading h2 {
	margin: 0;
	font-size: 54px;
	line-height: 1.12;
}

.dining-heading-note {
	max-width: 400px;
	margin: 0 0 5px auto;
	padding-left: 21px;
	border-left: 1px solid rgba(218, 169, 96, 0.44);
	color: #b8ada8;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.76;
}

/* Introduction */

.dining-introduction {
	margin-bottom: 105px;
}

.dining-introduction-content {
	max-width: 520px;
	padding-right: 30px;
}

.dining-introduction-content h3,
.dining-featured-heading h3,
.dining-subheading h3,
.dining-casino-side-content h3,
.dining-poolside-copy h3,
.dining-ardo-heading h3 {
	margin: 0 0 21px;
	font-size: 37px;
	line-height: 1.2;
}

.dining-introduction-content > p,
.dining-featured-copy p,
.dining-subheading > p,
.dining-casino-side-content > p,
.dining-poolside-copy > p,
.dining-ardo-heading > p {
	color: #b3aaa6;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.8;
}

.dining-introduction-content > p {
	margin: 0 0 17px;
}

.dining-introduction-note {
	display: grid;
	grid-template-columns: 43px 1fr;
	align-items: start;
	gap: 14px;
	margin-top: 29px;
	padding: 18px 19px;
	border: 1px solid rgba(218, 169, 96, 0.2);
	border-radius: 7px;
	background: linear-gradient(
		135deg,
		rgba(141, 81, 56, 0.12),
		rgba(255, 255, 255, 0.02)
	);
}

.dining-introduction-note i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border: 1px solid rgba(224, 183, 116, 0.4);
	border-radius: 50%;
	color: #e3bf82;
	font-size: 13px;
}

.dining-introduction-note p {
	margin: 0;
	color: #9f9692;
	font-size: 11px;
	font-weight: 500;
	line-height: 1.67;
}

.dining-feature-image {
	position: relative;
	height: 570px;
	border: 1px solid rgba(218, 169, 96, 0.2);
	border-radius: 9px;
	box-shadow: 0 34px 75px rgba(0, 0, 0, 0.32);
	overflow: hidden;
}

.dining-feature-image::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		180deg,
		transparent 48%,
		rgba(20, 13, 13, 0.75) 100%
	);
	pointer-events: none;
}

.dining-feature-image img {
	object-position: center;
	transition: transform 0.7s ease;
}

.dining-feature-image:hover img {
	transform: scale(1.025);
}

.dining-feature-caption {
	position: absolute;
	right: 25px;
	bottom: 24px;
	left: 25px;
	z-index: 2;
	padding-left: 17px;
	border-left: 1px solid rgba(232, 199, 139, 0.7);
}

.dining-feature-caption span,
.dining-feature-caption strong {
	display: block;
}

.dining-feature-caption span {
	margin-bottom: 5px;
	color: #dcb879;
	font-size: 9px;
	font-weight: 800;
	letter-spacing: 1.2px;
	text-transform: uppercase;
}

.dining-feature-caption strong {
	color: #ffffff;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 25px;
	font-weight: 400;
}

/* Miss Songs */

.dining-featured-venue {
	margin-bottom: 105px;
	padding: 52px 55px 45px;
	border-top: 1px solid rgba(218, 169, 96, 0.38);
	border-bottom: 1px solid rgba(218, 169, 96, 0.2);
	background: linear-gradient(
		90deg,
		transparent,
		rgba(117, 63, 51, 0.13),
		rgba(190, 126, 66, 0.045),
		transparent
	);
}

.dining-featured-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 35px;
	margin-bottom: 30px;
	padding-bottom: 25px;
	border-bottom: 1px solid rgba(218, 169, 96, 0.16);
}

.dining-featured-heading h3 {
	margin-bottom: 0;
}

.dining-hours-compact {
	display: grid;
	grid-template-columns: 42px 1fr;
	align-items: center;
	gap: 13px;
	min-width: 245px;
	padding: 12px 15px;
	border: 1px solid rgba(218, 169, 96, 0.18);
	border-radius: 6px;
	background: rgba(255, 255, 255, 0.02);
}

.dining-hours-compact i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	color: #dfba7a;
	background: rgba(218, 169, 96, 0.07);
	font-size: 12px;
}

.dining-hours-compact span,
.dining-hours-compact strong {
	display: block;
}

.dining-hours-compact span {
	margin-bottom: 3px;
	color: #8f8581;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.7px;
	text-transform: uppercase;
}

.dining-hours-compact strong {
	color: #ded8d4;
	font-size: 12px;
	font-weight: 700;
}

.dining-featured-copy {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 42px;
}

.dining-featured-copy p {
	margin: 0;
}

.dining-feature-points,
.dining-card-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.dining-feature-points {
	margin-top: 30px;
}

.dining-feature-points span,
.dining-card-tags span {
	padding: 7px 11px;
	border: 1px solid rgba(218, 169, 96, 0.2);
	border-radius: 30px;
	color: #d3cbc6;
	background: rgba(255, 255, 255, 0.018);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.45px;
	text-transform: uppercase;
}

/* Venue cards */

.dining-choice-section {
	margin-bottom: 110px;
}

.dining-subheading {
	max-width: 770px;
	margin-bottom: 38px;
}

.dining-subheading > p {
	max-width: 650px;
	margin: 0;
}

.dining-choice-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.dining-choice-card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	min-height: 635px;
	border: 1px solid rgba(218, 169, 96, 0.19);
	border-radius: 8px;
	background: linear-gradient(
		150deg,
		rgba(61, 43, 41, 0.78),
		rgba(27, 23, 25, 0.94)
	);
	box-shadow: 0 25px 58px rgba(0, 0, 0, 0.22);
	overflow: hidden;
	transition:
		transform 0.3s ease,
		border-color 0.3s ease;
}

.dining-choice-card:hover {
	border-color: rgba(224, 177, 103, 0.44);
	transform: translateY(-5px);
}

.dining-choice-card-featured {
	border-color: rgba(222, 174, 101, 0.34);
	background: linear-gradient(
		150deg,
		rgba(86, 51, 43, 0.8),
		rgba(29, 24, 25, 0.96)
	);
}

.dining-choice-image {
	position: relative;
	height: 275px;
	overflow: hidden;
}

.dining-choice-image::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		180deg,
		transparent 55%,
		rgba(23, 17, 18, 0.68) 100%
	);
	pointer-events: none;
}

.dining-choice-image img {
	transition: transform 0.6s ease;
}

.dining-choice-card:hover .dining-choice-image img {
	transform: scale(1.035);
}

.dining-image-label {
	position: absolute;
	right: 15px;
	bottom: 14px;
	left: 15px;
	z-index: 2;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 9px 11px;
	border: 1px solid rgba(231, 195, 132, 0.3);
	border-radius: 5px;
	background: rgba(28, 19, 19, 0.72);
	backdrop-filter: blur(9px);
	-webkit-backdrop-filter: blur(9px);
}

.dining-image-label i {
	color: #e0bb7a;
	font-size: 11px;
}

.dining-image-label span {
	color: #eee6df;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.5px;
	text-transform: uppercase;
}

.dining-choice-content {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 29px 27px 27px;
}

.dining-card-label {
	display: block;
	margin-bottom: 9px;
}

.dining-choice-content h4 {
	margin: 0 0 15px;
	color: #ffffff;
	font-size: 25px;
	font-weight: 750;
	line-height: 1.25;
}

.dining-choice-content > p {
	margin: 0;
	color: #aca39f;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.76;
}

.dining-card-tags {
	margin-top: auto;
	padding-top: 24px;
}

.dining-card-tags span {
	padding: 6px 9px;
	font-size: 8px;
}

/* Sports Bar */

.dining-casino-side-section {
	display: grid;
	grid-template-columns: minmax(500px, 1.08fr) minmax(420px, 0.92fr);
	min-height: 660px;
	margin-bottom: 110px;
	border: 1px solid rgba(218, 169, 96, 0.24);
	border-radius: 9px;
	background: linear-gradient(
		145deg,
		rgba(48, 39, 39, 0.88),
		rgba(23, 21, 24, 0.97)
	);
	box-shadow: 0 35px 78px rgba(0, 0, 0, 0.28);
	overflow: hidden;
}

.dining-casino-side-image {
	position: relative;
	min-height: 660px;
	overflow: hidden;
}

.dining-casino-side-image::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		90deg,
		transparent 62%,
		rgba(29, 24, 26, 0.76) 100%
	);
	pointer-events: none;
}

.dining-sports-emblem {
	position: absolute;
	right: 24px;
	bottom: 23px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 66px;
	height: 66px;
	border: 1px solid rgba(231, 195, 132, 0.55);
	border-radius: 50%;
	color: #e7c98f;
	background: rgba(27, 20, 21, 0.72);
	backdrop-filter: blur(9px);
	-webkit-backdrop-filter: blur(9px);
	font-size: 20px;
}

.dining-casino-side-content {
	align-self: center;
	padding: 55px 48px;
}

.dining-casino-side-content > p {
	margin: 0 0 17px;
}

.dining-sports-details {
	display: grid;
	gap: 10px;
	margin-top: 30px;
}

.dining-sports-detail {
	display: grid;
	grid-template-columns: 39px 1fr;
	align-items: center;
	gap: 13px;
	padding: 13px 14px;
	border: 1px solid rgba(218, 169, 96, 0.15);
	border-radius: 6px;
	background: rgba(255, 255, 255, 0.02);
}

.dining-sports-detail i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	color: #dcb676;
	background: rgba(218, 169, 96, 0.07);
	font-size: 12px;
}

.dining-sports-detail strong,
.dining-sports-detail span {
	display: block;
}

.dining-sports-detail strong {
	margin-bottom: 3px;
	color: #e7e1dd;
	font-size: 12px;
	font-weight: 700;
}

.dining-sports-detail span {
	color: #8f8783;
	font-size: 9px;
	font-weight: 600;
	line-height: 1.5;
}

/* Splash Bar */

.dining-poolside-section {
	display: grid;
	grid-template-columns: minmax(420px, 0.9fr) minmax(500px, 1.1fr);
	align-items: stretch;
	min-height: 590px;
	margin-bottom: 110px;
	border-top: 1px solid rgba(218, 169, 96, 0.3);
	border-bottom: 1px solid rgba(218, 169, 96, 0.17);
	background: linear-gradient(
		90deg,
		rgba(76, 48, 43, 0.21),
		rgba(255, 255, 255, 0.012)
	);
}

.dining-poolside-copy {
	align-self: center;
	padding: 55px 55px 55px 10px;
}

.dining-poolside-copy > p {
	margin: 0 0 17px;
}

.dining-poolside-hours {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	margin-top: 29px;
}

.dining-poolside-hours > div {
	padding: 15px 16px;
	border: 1px solid rgba(218, 169, 96, 0.18);
	border-radius: 6px;
	background: rgba(255, 255, 255, 0.02);
}

.dining-poolside-hours span,
.dining-poolside-hours strong {
	display: block;
}

.dining-poolside-hours span {
	margin-bottom: 5px;
	color: #938985;
	font-size: 8px;
	font-weight: 800;
	letter-spacing: 0.7px;
	text-transform: uppercase;
}

.dining-poolside-hours strong {
	color: #dfc18c;
	font-size: 13px;
	font-weight: 700;
}

.dining-poolside-image {
	position: relative;
	min-height: 590px;
	overflow: hidden;
}

.dining-poolside-image::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		90deg,
		rgba(29, 22, 22, 0.4),
		transparent 35%
	);
	pointer-events: none;
}

/* Ardo */

.dining-ardo-section {
	margin-bottom: 100px;
	padding: 72px 64px 62px;
	border: 1px solid rgba(218, 169, 96, 0.28);
	border-radius: 10px;
	background:
		radial-gradient(circle at 86% 7%, rgba(120, 78, 95, 0.14), transparent 33%),
		linear-gradient(145deg, rgba(58, 39, 43, 0.92), rgba(24, 22, 27, 0.98));
	box-shadow: 0 38px 82px rgba(0, 0, 0, 0.29);
}

.dining-ardo-heading {
	display: grid;
	grid-template-columns: minmax(360px, 0.88fr) minmax(430px, 1.12fr);
	align-items: end;
	gap: 65px;
	margin-bottom: 40px;
	padding-bottom: 28px;
	border-bottom: 1px solid rgba(218, 169, 96, 0.19);
}

.dining-ardo-heading h3 {
	margin-bottom: 0;
}

.dining-ardo-heading > p {
	margin: 0;
	padding-left: 22px;
	border-left: 1px solid rgba(218, 169, 96, 0.4);
}

.dining-ardo-layout {
	display: grid;
	grid-template-columns: minmax(480px, 1.1fr) minmax(390px, 0.9fr);
	gap: 24px;
}

.dining-ardo-image {
	position: relative;
	min-height: 610px;
	border-radius: 8px;
	box-shadow: 0 27px 58px rgba(0, 0, 0, 0.28);
	overflow: hidden;
}

.dining-ardo-image::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		180deg,
		transparent 55%,
		rgba(24, 18, 22, 0.75) 100%
	);
	pointer-events: none;
}

.dining-ardo-image-caption {
	position: absolute;
	right: 23px;
	bottom: 22px;
	left: 23px;
	z-index: 2;
}

.dining-ardo-image-caption span,
.dining-ardo-image-caption strong {
	display: block;
}

.dining-ardo-image-caption span {
	margin-bottom: 6px;
	color: #deb979;
	font-size: 9px;
	font-weight: 800;
	letter-spacing: 1.15px;
	text-transform: uppercase;
}

.dining-ardo-image-caption strong {
	color: #ffffff;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 24px;
	font-weight: 400;
}

.dining-ardo-venues {
	display: grid;
	align-content: stretch;
	gap: 12px;
}

.dining-ardo-card {
	display: grid;
	grid-template-columns: 50px 1fr;
	gap: 17px;
	padding: 26px 24px;
	border: 1px solid rgba(218, 169, 96, 0.17);
	border-radius: 7px;
	background: rgba(255, 255, 255, 0.025);
}

.dining-ardo-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 47px;
	height: 47px;
	border: 1px solid rgba(225, 184, 115, 0.4);
	border-radius: 50%;
	color: #dfbd82;
	font-size: 14px;
}

.dining-ardo-card span {
	display: block;
	margin-bottom: 5px;
	color: #c79e62;
	font-size: 8px;
	font-weight: 800;
	letter-spacing: 0.95px;
	text-transform: uppercase;
}

.dining-ardo-card h4 {
	margin: 0 0 10px;
	color: #ffffff;
	font-size: 21px;
	font-weight: 750;
}

.dining-ardo-card p {
	margin: 0;
	color: #a49b98;
	font-size: 11px;
	font-weight: 500;
	line-height: 1.7;
}

/* Practical notes */

.dining-practical-notes {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin-bottom: 72px;
}

.dining-practical-note {
	display: grid;
	grid-template-columns: 40px 1fr;
	gap: 13px;
	padding: 18px 19px;
	border: 1px solid rgba(218, 169, 96, 0.14);
	border-radius: 6px;
	background: rgba(255, 255, 255, 0.018);
}

.dining-practical-note i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 37px;
	height: 37px;
	border-radius: 50%;
	color: #d8b273;
	background: rgba(218, 169, 96, 0.07);
	font-size: 12px;
}

.dining-practical-note strong,
.dining-practical-note span {
	display: block;
}

.dining-practical-note strong {
	margin-bottom: 5px;
	color: #ded7d3;
	font-size: 12px;
	font-weight: 700;
}

.dining-practical-note span {
	color: #908783;
	font-size: 9px;
	font-weight: 500;
	line-height: 1.6;
}

.dining-closing-statement {
	display: flex;
	align-items: center;
	gap: 22px;
	max-width: 1020px;
	margin: 0 auto;
	padding: 29px 40px;
	border-top: 1px solid rgba(218, 169, 96, 0.36);
	border-bottom: 1px solid rgba(218, 169, 96, 0.15);
	background: linear-gradient(
		90deg,
		transparent,
		rgba(126, 67, 53, 0.11),
		rgba(218, 169, 96, 0.04),
		transparent
	);
}

.dining-closing-statement i {
	flex: 0 0 auto;
	color: #e2bd7d;
	font-size: 20px;
}

.dining-closing-statement p {
	margin: 0;
	color: #e7dfda;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 18px;
	font-style: italic;
	line-height: 1.7;
	text-align: center;
}

/* Large tablet */

@media only screen and (max-width: 1199px) {
	.dining-section {
		padding: 95px 0 90px;
	}

	.dining-feature-image {
		height: 520px;
	}

	.dining-choice-card {
		min-height: 660px;
	}

	.dining-casino-side-section {
		grid-template-columns: 1fr 0.95fr;
	}

	.dining-casino-side-content {
		padding: 45px 35px;
	}

	.dining-poolside-copy {
		padding-right: 40px;
	}

	.dining-ardo-section {
		padding: 65px 42px 55px;
	}

	.dining-ardo-layout {
		grid-template-columns: 1fr 0.94fr;
	}
}

/* Tablet */

@media only screen and (max-width: 991px) {
	.dining-section {
		padding: 85px 0 80px;
	}

	.dining-heading-row {
		margin-bottom: 55px;
	}

	.dining-heading-note {
		max-width: 680px;
		margin: 24px 0 0;
	}

	.dining-introduction,
	.dining-featured-venue,
	.dining-choice-section,
	.dining-casino-side-section,
	.dining-poolside-section {
		margin-bottom: 85px;
	}

	.dining-introduction-content {
		max-width: none;
		margin-bottom: 40px;
		padding-right: 0;
	}

	.dining-feature-image {
		height: 500px;
	}

	.dining-featured-heading {
		align-items: flex-start;
		flex-direction: column;
	}

	.dining-featured-copy,
	.dining-choice-grid,
	.dining-practical-notes {
		grid-template-columns: 1fr;
	}

	.dining-choice-card {
		display: grid;
		grid-template-columns: minmax(300px, 0.85fr) minmax(380px, 1.15fr);
		min-height: 0;
	}

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

	.dining-casino-side-section,
	.dining-poolside-section,
	.dining-ardo-heading,
	.dining-ardo-layout {
		grid-template-columns: 1fr;
	}

	.dining-casino-side-image {
		min-height: 520px;
	}

	.dining-casino-side-image::after {
		background: linear-gradient(
			180deg,
			transparent 65%,
			rgba(29, 24, 26, 0.72) 100%
		);
	}

	.dining-casino-side-content {
		padding: 45px 38px;
	}

	.dining-poolside-copy {
		padding: 48px 35px;
	}

	.dining-poolside-image {
		min-height: 500px;
	}

	.dining-ardo-heading {
		gap: 20px;
	}

	.dining-ardo-heading > p {
		max-width: 720px;
	}

	.dining-ardo-image {
		min-height: 540px;
	}
}

/* Mobile landscape */

@media only screen and (max-width: 767px) {
	.dining-section > .container {
		padding-right: 22px;
		padding-left: 22px;
	}

	.dining-section-heading h2 {
		font-size: 41px;
	}

	.dining-introduction-content h3,
	.dining-featured-heading h3,
	.dining-subheading h3,
	.dining-casino-side-content h3,
	.dining-poolside-copy h3,
	.dining-ardo-heading h3 {
		font-size: 29px;
	}

	.dining-feature-image {
		height: 430px;
	}

	.dining-featured-venue {
		padding: 45px 30px 38px;
	}

	.dining-choice-card {
		grid-template-columns: 1fr;
	}

	.dining-choice-image {
		height: 310px;
		min-height: 0;
	}

	.dining-casino-side-image,
	.dining-poolside-image,
	.dining-ardo-image {
		min-height: 430px;
	}

	.dining-ardo-section {
		padding: 54px 28px 45px;
	}
}

/* Mobile */

@media only screen and (max-width: 575px) {
	.dining-section {
		padding: 65px 0 60px;
	}

	.dining-section > .container {
		padding-right: 18px;
		padding-left: 18px;
	}

	.dining-heading-row {
		margin-bottom: 42px;
		padding-bottom: 23px;
	}

	.dining-section-label,
	.dining-content-kicker,
	.dining-card-label {
		font-size: 9px;
		letter-spacing: 1.25px;
	}

	.dining-section-label::before {
		width: 25px;
		margin-right: 9px;
	}

	.dining-section-heading h2 {
		font-size: 34px;
		line-height: 1.14;
	}

	.dining-heading-note {
		padding-left: 15px;
		font-size: 13px;
	}

	.dining-introduction,
	.dining-featured-venue,
	.dining-choice-section,
	.dining-casino-side-section,
	.dining-poolside-section,
	.dining-ardo-section {
		margin-bottom: 65px;
	}

	.dining-introduction-content h3,
	.dining-featured-heading h3,
	.dining-subheading h3,
	.dining-casino-side-content h3,
	.dining-poolside-copy h3,
	.dining-ardo-heading h3 {
		margin-bottom: 17px;
		font-size: 25px;
	}

	.dining-introduction-content > p,
	.dining-featured-copy p,
	.dining-subheading > p,
	.dining-casino-side-content > p,
	.dining-poolside-copy > p,
	.dining-ardo-heading > p {
		font-size: 13px;
		line-height: 1.74;
	}

	.dining-introduction-note {
		grid-template-columns: 38px 1fr;
		padding: 15px;
	}

	.dining-introduction-note i {
		width: 36px;
		height: 36px;
	}

	.dining-feature-image {
		height: 330px;
	}

	.dining-feature-caption {
		right: 16px;
		bottom: 15px;
		left: 16px;
	}

	.dining-feature-caption strong {
		font-size: 21px;
	}

	.dining-featured-venue {
		padding: 36px 18px 31px;
	}

	.dining-hours-compact {
		width: 100%;
		min-width: 0;
	}

	.dining-featured-copy {
		gap: 17px;
	}

	.dining-choice-grid {
		gap: 13px;
	}

	.dining-choice-image {
		height: 250px;
	}

	.dining-choice-content {
		padding: 25px 21px;
	}

	.dining-choice-content h4 {
		font-size: 22px;
	}

	.dining-choice-content > p {
		font-size: 13px;
		line-height: 1.72;
	}

	.dining-casino-side-image,
	.dining-poolside-image,
	.dining-ardo-image {
		min-height: 330px;
	}

	.dining-sports-emblem {
		right: 15px;
		bottom: 14px;
		width: 55px;
		height: 55px;
	}

	.dining-casino-side-content {
		padding: 37px 20px;
	}

	.dining-sports-detail {
		grid-template-columns: 35px 1fr;
		padding: 11px;
	}

	.dining-sports-detail i {
		width: 33px;
		height: 33px;
	}

	.dining-poolside-copy {
		padding: 38px 20px;
	}

	.dining-poolside-hours {
		grid-template-columns: 1fr;
	}

	.dining-ardo-section {
		padding: 44px 18px 35px;
	}

	.dining-ardo-heading > p {
		padding-left: 15px;
	}

	.dining-ardo-image-caption {
		right: 16px;
		bottom: 15px;
		left: 16px;
	}

	.dining-ardo-image-caption strong {
		font-size: 20px;
	}

	.dining-ardo-card {
		grid-template-columns: 43px 1fr;
		gap: 13px;
		padding: 22px 18px;
	}

	.dining-ardo-icon {
		width: 40px;
		height: 40px;
	}

	.dining-ardo-card h4 {
		font-size: 19px;
	}

	.dining-practical-notes {
		margin-bottom: 55px;
	}

	.dining-practical-note {
		padding: 15px;
	}

	.dining-closing-statement {
		flex-direction: column;
		gap: 15px;
		padding: 25px 18px;
	}

	.dining-closing-statement p {
		font-size: 16px;
		line-height: 1.65;
	}
}
/* =========================================================
   Townsville Casino - Resort Section
   ========================================================= */

.townsville-resort-section,
.townsville-resort-section * {
    box-sizing: border-box;
}

.townsville-resort-section {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: 100%;
    padding: 118px 0 112px;
    scroll-margin-top: 88px;
    color: #f5f2ec;
    background:
        radial-gradient(
            circle at 10% 20%,
            rgba(38, 116, 118, 0.16) 0,
            rgba(38, 116, 118, 0) 34%
        ),
        radial-gradient(
            circle at 88% 75%,
            rgba(176, 128, 67, 0.12) 0,
            rgba(176, 128, 67, 0) 32%
        ),
        linear-gradient(
            145deg,
            #101d24 0%,
            #14252b 42%,
            #111c23 72%,
            #0d171d 100%
        );
}

.townsville-resort-section::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: -220px;
    right: -180px;
    width: 560px;
    height: 560px;
    border: 1px solid rgba(221, 185, 119, 0.09);
    border-radius: 50%;
    box-shadow:
        0 0 0 70px rgba(221, 185, 119, 0.025),
        0 0 0 140px rgba(221, 185, 119, 0.018);
    pointer-events: none;
}

.townsville-resort-section::after {
    content: "";
    position: absolute;
    z-index: -1;
    bottom: -260px;
    left: -220px;
    width: 620px;
    height: 620px;
    border-radius: 50%;
    background: rgba(20, 92, 92, 0.08);
    filter: blur(20px);
    pointer-events: none;
}

.townsville-resort-container {
    position: relative;
    width: 100%;
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 36px;
}

/* Resort introduction */

.resort-intro {
    margin-bottom: 52px;
}

.resort-section-label {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 24px;
    color: #ddb977;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: 2.7px;
    text-transform: uppercase;
}

.resort-label-line {
    display: block;
    width: 52px;
    height: 1px;
    background: linear-gradient(
        90deg,
        rgba(221, 185, 119, 0.2),
        #ddb977
    );
}

.resort-intro-layout {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    gap: 70px;
    align-items: end;
}

.resort-intro-layout h2 {
    max-width: 610px;
    margin: 0;
    color: #ffffff;
    font-size: clamp(44px, 5vw, 72px);
    font-weight: 700;
    line-height: 1.02;
    letter-spacing: -2.6px;
}

.resort-intro-layout p {
    max-width: 650px;
    margin: 0;
    color: rgba(229, 234, 234, 0.76);
    font-size: 18px;
    font-weight: 500;
    line-height: 1.85;
}

/* Main resort photograph */

.resort-visual {
    position: relative;
    min-height: 585px;
    margin-bottom: 38px;
    overflow: hidden;
    border: 1px solid rgba(221, 185, 119, 0.28);
    border-radius: 30px;
    background: #15242a;
    box-shadow:
        0 30px 80px rgba(0, 0, 0, 0.35),
        inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.resort-visual::before {
    content: "";
    position: absolute;
    z-index: 2;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(5, 13, 17, 0.9) 0%,
            rgba(5, 13, 17, 0.54) 35%,
            rgba(5, 13, 17, 0.05) 70%
        ),
        linear-gradient(
            0deg,
            rgba(6, 14, 18, 0.72) 0%,
            rgba(6, 14, 18, 0) 52%
        );
    pointer-events: none;
}

.resort-visual::after {
    content: "";
    position: absolute;
    z-index: 3;
    top: 0;
    left: 55px;
    width: 110px;
    height: 3px;
    background: linear-gradient(90deg, #ddb977, #a9773f);
    box-shadow: 0 0 24px rgba(221, 185, 119, 0.3);
}

.resort-visual img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform 0.8s ease;
}

.resort-visual:hover img {
    transform: scale(1.025);
}

.resort-visual-overlay {
    position: absolute;
    z-index: 4;
    left: 58px;
    bottom: 52px;
    width: min(570px, calc(100% - 116px));
}

.resort-visual-kicker {
    display: block;
    margin-bottom: 14px;
    color: #e1be7c;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: 2.4px;
    text-transform: uppercase;
}

.resort-visual-overlay h3 {
    margin: 0 0 20px;
    color: #ffffff;
    font-size: clamp(31px, 3.5vw, 49px);
    font-weight: 700;
    line-height: 1.12;
    letter-spacing: -1.4px;
}

.resort-visual-overlay p {
    max-width: 550px;
    margin: 0;
    color: rgba(244, 244, 240, 0.82);
    font-size: 16px;
    font-weight: 500;
    line-height: 1.75;
}

.resort-visual-badge {
    position: absolute;
    z-index: 5;
    top: 38px;
    right: 38px;
    display: flex;
    align-items: center;
    gap: 13px;
    min-width: 138px;
    padding: 14px 18px;
    border: 1px solid rgba(238, 205, 143, 0.4);
    border-radius: 50px;
    color: #f0ce8c;
    background: rgba(9, 20, 25, 0.68);
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.22);
    backdrop-filter: blur(13px);
    -webkit-backdrop-filter: blur(13px);
}

.resort-visual-badge i {
    font-size: 22px;
}

.resort-visual-badge span {
    font-size: 10px;
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: 1.6px;
    text-transform: uppercase;
}

/* Accommodation block */

.resort-stay-block {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 0.92fr);
    gap: 32px;
    margin-bottom: 32px;
}

.resort-stay-copy,
.resort-room-selection {
    min-width: 0;
    padding: 48px;
    border: 1px solid rgba(221, 185, 119, 0.18);
    border-radius: 24px;
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.055),
            rgba(255, 255, 255, 0.018)
        );
    box-shadow:
        0 22px 50px rgba(0, 0, 0, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.resort-stay-copy {
    position: relative;
    overflow: hidden;
}

.resort-stay-copy::after {
    content: "";
    position: absolute;
    right: -80px;
    bottom: -90px;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: rgba(43, 119, 116, 0.08);
    pointer-events: none;
}

.resort-content-kicker {
    display: block;
    margin-bottom: 13px;
    color: #ddb977;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: 2.2px;
    text-transform: uppercase;
}

.resort-stay-copy h3,
.resort-comfort-heading h3 {
    margin: 0 0 22px;
    color: #ffffff;
    font-size: clamp(29px, 3vw, 41px);
    font-weight: 700;
    line-height: 1.14;
    letter-spacing: -1px;
}

.resort-stay-copy p {
    position: relative;
    z-index: 1;
    margin: 0 0 17px;
    color: rgba(222, 229, 229, 0.72);
    font-size: 16px;
    font-weight: 500;
    line-height: 1.78;
}

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

.resort-room-selection {
    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(221, 185, 119, 0.1),
            transparent 33%
        ),
        rgba(8, 20, 25, 0.55);
}

.resort-room-heading {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 30px;
    padding-bottom: 24px;
    border-bottom: 1px solid rgba(221, 185, 119, 0.16);
}

.resort-room-heading > i {
    flex: 0 0 58px;
    width: 58px;
    height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(221, 185, 119, 0.38);
    border-radius: 50%;
    color: #e5c382;
    background: rgba(221, 185, 119, 0.06);
    font-size: 21px;
}

.resort-room-heading div {
    min-width: 0;
}

.resort-room-heading span {
    display: block;
    margin-bottom: 5px;
    color: #ddb977;
    font-size: 10px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.resort-room-heading strong {
    display: block;
    color: #f7f4ed;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.4;
}

.resort-room-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 11px;
}

.resort-room-tags span {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 9px 15px;
    border: 1px solid rgba(221, 185, 119, 0.18);
    border-radius: 30px;
    color: rgba(238, 238, 232, 0.78);
    background: rgba(255, 255, 255, 0.035);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: 0.2px;
}

/* Resort experiences */

.resort-experience-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 32px;
}

.resort-experience-card {
    position: relative;
    min-width: 0;
    min-height: 470px;
    padding: 40px 34px 34px;
    overflow: hidden;
    border: 1px solid rgba(221, 185, 119, 0.18);
    border-radius: 23px;
    background:
        linear-gradient(
            155deg,
            rgba(255, 255, 255, 0.055),
            rgba(255, 255, 255, 0.015)
        );
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.resort-experience-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 34px;
    width: 72px;
    height: 2px;
    background: linear-gradient(90deg, #ddb977, rgba(221, 185, 119, 0.2));
}

.resort-experience-card::after {
    content: "";
    position: absolute;
    right: -95px;
    bottom: -105px;
    width: 230px;
    height: 230px;
    border-radius: 50%;
    pointer-events: none;
}

.resort-pool-card::after {
    background: rgba(33, 132, 139, 0.1);
}

.resort-spa-card::after {
    background: rgba(131, 94, 112, 0.1);
}

.resort-gym-card::after {
    background: rgba(158, 118, 64, 0.09);
}

.resort-card-icon {
    position: relative;
    z-index: 1;
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 31px;
    border: 1px solid rgba(221, 185, 119, 0.4);
    border-radius: 50%;
    color: #e4c17f;
    background: rgba(221, 185, 119, 0.055);
    font-size: 22px;
}

.resort-card-kicker {
    position: relative;
    z-index: 1;
    display: block;
    margin-bottom: 12px;
    color: #d9af65;
    font-size: 10px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.resort-experience-card h3 {
    position: relative;
    z-index: 1;
    margin: 0 0 19px;
    color: #ffffff;
    font-size: 27px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.5px;
}

.resort-experience-card > p {
    position: relative;
    z-index: 1;
    margin: 0 0 28px;
    color: rgba(221, 228, 228, 0.7);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.75;
}

.resort-card-detail {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: flex-start;
    gap: 13px;
    margin-top: auto;
    padding-top: 22px;
    border-top: 1px solid rgba(221, 185, 119, 0.14);
}

.resort-card-detail i {
    flex: 0 0 22px;
    width: 22px;
    padding-top: 3px;
    color: #ddb977;
    font-size: 15px;
    text-align: center;
}

.resort-card-detail span {
    color: rgba(239, 237, 229, 0.67);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.65;
}

/* Guest comfort panel */

.resort-comfort-panel {
    display: grid;
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
    gap: 60px;
    align-items: center;
    margin-bottom: 32px;
    padding: 52px;
    border: 1px solid rgba(221, 185, 119, 0.19);
    border-radius: 25px;
    background:
        radial-gradient(
            circle at 85% 20%,
            rgba(35, 116, 117, 0.11),
            transparent 35%
        ),
        rgba(8, 19, 24, 0.48);
    box-shadow:
        0 24px 56px rgba(0, 0, 0, 0.19),
        inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.resort-comfort-heading {
    min-width: 0;
}

.resort-comfort-heading p {
    margin: 0;
    color: rgba(222, 229, 229, 0.7);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.75;
}

.resort-comfort-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}

.resort-comfort-item {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 66px;
    padding: 14px 17px;
    border: 1px solid rgba(221, 185, 119, 0.13);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.028);
}

.resort-comfort-item i {
    flex: 0 0 35px;
    width: 35px;
    height: 35px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #dfba76;
    background: rgba(221, 185, 119, 0.075);
    font-size: 14px;
}

.resort-comfort-item span {
    color: rgba(241, 240, 234, 0.78);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.45;
}

/* Resort closing statement */

.resort-closing {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 25px;
    align-items: center;
    padding: 34px 40px;
    border: 1px solid rgba(221, 185, 119, 0.22);
    border-radius: 22px;
    background:
        linear-gradient(
            90deg,
            rgba(221, 185, 119, 0.065),
            rgba(255, 255, 255, 0.018)
        );
}

.resort-closing-emblem {
    width: 66px;
    height: 66px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(221, 185, 119, 0.44);
    border-radius: 50%;
    color: #e2bd77;
    background: rgba(221, 185, 119, 0.055);
    font-size: 21px;
}

.resort-closing-copy {
    min-width: 0;
}

.resort-closing-copy > span {
    display: block;
    margin-bottom: 8px;
    color: #ddb977;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.resort-closing-copy p {
    max-width: 1030px;
    margin: 0;
    color: rgba(230, 233, 229, 0.73);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.72;
}

/* Resort responsive layout */

@media (max-width: 1199px) {
    .townsville-resort-section {
        padding: 105px 0 100px;
    }

    .townsville-resort-container {
        padding: 0 30px;
    }

    .resort-intro-layout {
        gap: 45px;
    }

    .resort-visual {
        min-height: 540px;
    }

    .resort-stay-copy,
    .resort-room-selection {
        padding: 40px;
    }

    .resort-experience-card {
        padding: 38px 28px 30px;
    }

    .resort-comfort-panel {
        gap: 42px;
        padding: 45px;
    }
}

@media (max-width: 991px) {
    .townsville-resort-section {
        padding: 92px 0 88px;
    }

    .resort-intro-layout {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .resort-intro-layout p {
        max-width: 760px;
    }

    .resort-visual {
        min-height: 520px;
    }

    .resort-stay-block {
        grid-template-columns: 1fr;
    }

    .resort-experience-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .resort-gym-card {
        grid-column: 1 / -1;
        min-height: 390px;
    }

    .resort-comfort-panel {
        grid-template-columns: 1fr;
        gap: 32px;
    }
}

@media (max-width: 767px) {
    .townsville-resort-section {
        padding: 78px 0 74px;
        scroll-margin-top: 76px;
    }

    .townsville-resort-container {
        padding: 0 20px;
    }

    .resort-intro {
        margin-bottom: 38px;
    }

    .resort-intro-layout h2 {
        font-size: 43px;
        letter-spacing: -1.5px;
    }

    .resort-intro-layout p {
        font-size: 16px;
        line-height: 1.75;
    }

    .resort-visual {
        min-height: 560px;
        border-radius: 23px;
    }

    .resort-visual::before {
        background:
            linear-gradient(
                0deg,
                rgba(5, 13, 17, 0.94) 0%,
                rgba(5, 13, 17, 0.62) 46%,
                rgba(5, 13, 17, 0.08) 76%
            );
    }

    .resort-visual img {
        object-position: 57% center;
    }

    .resort-visual-overlay {
        left: 28px;
        bottom: 31px;
        width: calc(100% - 56px);
    }

    .resort-visual-overlay h3 {
        font-size: 34px;
    }

    .resort-visual-overlay p {
        font-size: 14px;
        line-height: 1.65;
    }

    .resort-visual-badge {
        top: 23px;
        right: 23px;
    }

    .resort-stay-copy,
    .resort-room-selection {
        padding: 32px 26px;
        border-radius: 20px;
    }

    .resort-experience-grid {
        grid-template-columns: 1fr;
    }

    .resort-gym-card {
        grid-column: auto;
    }

    .resort-experience-card,
    .resort-gym-card {
        min-height: auto;
    }

    .resort-comfort-panel {
        padding: 34px 26px;
        border-radius: 20px;
    }

    .resort-comfort-list {
        grid-template-columns: 1fr;
    }

    .resort-closing {
        grid-template-columns: 1fr;
        padding: 30px 26px;
    }
}

@media (max-width: 575px) {
    .townsville-resort-container {
        padding: 0 16px;
    }

    .resort-section-label {
        gap: 10px;
        font-size: 10px;
        letter-spacing: 2px;
    }

    .resort-label-line {
        width: 36px;
    }

    .resort-intro-layout h2 {
        font-size: 37px;
    }

    .resort-visual {
        min-height: 585px;
        margin-bottom: 24px;
    }

    .resort-visual::after {
        left: 28px;
        width: 74px;
    }

    .resort-visual-badge {
        top: 20px;
        right: 20px;
        min-width: auto;
        padding: 11px 14px;
    }

    .resort-visual-badge i {
        font-size: 18px;
    }

    .resort-visual-badge span {
        font-size: 8px;
        letter-spacing: 1.2px;
    }

    .resort-visual-overlay {
        left: 22px;
        bottom: 25px;
        width: calc(100% - 44px);
    }

    .resort-visual-overlay h3 {
        font-size: 29px;
        letter-spacing: -0.7px;
    }

    .resort-visual-overlay p {
        font-size: 13px;
    }

    .resort-stay-copy,
    .resort-room-selection,
    .resort-comfort-panel {
        padding: 28px 22px;
    }

    .resort-stay-copy h3,
    .resort-comfort-heading h3 {
        font-size: 29px;
    }

    .resort-room-heading {
        align-items: flex-start;
    }

    .resort-room-heading > i {
        flex-basis: 50px;
        width: 50px;
        height: 50px;
    }

    .resort-room-tags {
        gap: 8px;
    }

    .resort-room-tags span {
        width: 100%;
        justify-content: center;
        text-align: center;
    }

    .resort-experience-card {
        padding: 34px 24px 28px;
    }

    .resort-experience-card h3 {
        font-size: 25px;
    }

    .resort-comfort-item {
        padding: 13px 14px;
    }

    .resort-closing {
        padding: 28px 22px;
    }

    .resort-closing-emblem {
        width: 58px;
        height: 58px;
    }
}

/* =========================================================
   Townsville Casino - FAQ Section
   ========================================================= */

.townsville-faq-section,
.townsville-faq-section * {
    box-sizing: border-box;
}

.townsville-faq-section {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: 100%;
    padding: 116px 0 110px;
    scroll-margin-top: 88px;
    color: #f4f1ed;
    background:
        radial-gradient(
            circle at 12% 18%,
            rgba(116, 72, 103, 0.15) 0,
            rgba(116, 72, 103, 0) 34%
        ),
        radial-gradient(
            circle at 90% 82%,
            rgba(177, 128, 63, 0.1) 0,
            rgba(177, 128, 63, 0) 31%
        ),
        linear-gradient(
            145deg,
            #17151d 0%,
            #1c1822 42%,
            #15151c 72%,
            #11131a 100%
        );
}

.townsville-faq-section::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: -260px;
    left: 50%;
    width: 720px;
    height: 720px;
    border: 1px solid rgba(221, 185, 119, 0.07);
    border-radius: 50%;
    transform: translateX(-50%);
    box-shadow:
        0 0 0 90px rgba(221, 185, 119, 0.018),
        0 0 0 180px rgba(221, 185, 119, 0.012);
    pointer-events: none;
}

.townsville-faq-section::after {
    content: "";
    position: absolute;
    z-index: -1;
    right: -170px;
    bottom: -220px;
    width: 480px;
    height: 480px;
    border-radius: 50%;
    background: rgba(89, 51, 82, 0.1);
    filter: blur(25px);
    pointer-events: none;
}

.townsville-faq-container {
    position: relative;
    width: 100%;
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 36px;
}

/* FAQ introduction */

.faq-intro {
    margin-bottom: 52px;
}

.faq-section-label {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 24px;
    color: #ddb977;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: 2.7px;
    text-transform: uppercase;
}

.faq-label-line {
    display: block;
    width: 52px;
    height: 1px;
    background: linear-gradient(
        90deg,
        rgba(221, 185, 119, 0.2),
        #ddb977
    );
}

.faq-intro-layout {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
    gap: 76px;
    align-items: end;
}

.faq-intro-heading,
.faq-intro-copy {
    min-width: 0;
}

.faq-intro-heading h2 {
    max-width: 650px;
    margin: 0;
    color: #ffffff;
    font-size: clamp(43px, 5vw, 70px);
    font-weight: 700;
    line-height: 1.04;
    letter-spacing: -2.4px;
}

.faq-intro-copy > p {
    max-width: 650px;
    margin: 0 0 25px;
    color: rgba(229, 225, 228, 0.74);
    font-size: 17px;
    font-weight: 500;
    line-height: 1.82;
}

.faq-topic-line {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    color: #d8b472;
    font-size: 10px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: 1.8px;
    text-transform: uppercase;
}

.faq-topic-line i {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #a57357;
    box-shadow: 0 0 12px rgba(221, 185, 119, 0.4);
}

/* Two-column accordion */

.faq-columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    align-items: start;
}

.faq-column {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.faq-item {
    position: relative;
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(221, 185, 119, 0.18);
    border-radius: 19px;
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.052),
            rgba(255, 255, 255, 0.018)
        );
    box-shadow:
        0 18px 42px rgba(0, 0, 0, 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.03);
    transition:
        border-color 0.3s ease,
        background 0.3s ease,
        box-shadow 0.3s ease,
        transform 0.3s ease;
}

.faq-item::before {
    content: "";
    position: absolute;
    z-index: 2;
    top: 0;
    left: 30px;
    width: 62px;
    height: 2px;
    background: linear-gradient(
        90deg,
        #ddb977,
        rgba(221, 185, 119, 0.1)
    );
    transition: width 0.35s ease;
}

.faq-item:hover {
    border-color: rgba(221, 185, 119, 0.33);
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.068),
            rgba(255, 255, 255, 0.022)
        );
    box-shadow:
        0 22px 50px rgba(0, 0, 0, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.04);
    transform: translateY(-2px);
}

.faq-item[open] {
    border-color: rgba(221, 185, 119, 0.38);
    background:
        radial-gradient(
            circle at 10% 15%,
            rgba(124, 76, 108, 0.1),
            transparent 34%
        ),
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.07),
            rgba(255, 255, 255, 0.022)
        );
    box-shadow:
        0 26px 58px rgba(0, 0, 0, 0.24),
        inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

.faq-item[open]::before {
    width: 118px;
}

.faq-item-resort {
    border-color: rgba(118, 157, 151, 0.2);
}

.faq-item-resort::before {
    background: linear-gradient(
        90deg,
        #c7ab70,
        rgba(84, 139, 132, 0.28)
    );
}

/* Accordion question */

.faq-item summary {
    position: relative;
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr) 34px;
    gap: 18px;
    align-items: center;
    min-height: 116px;
    padding: 28px 27px 27px 29px;
    color: #ffffff;
    cursor: pointer;
    list-style: none;
    user-select: none;
    -webkit-user-select: none;
}

.faq-item summary::-webkit-details-marker {
    display: none;
}

.faq-item summary::marker {
    display: none;
    content: "";
}

.faq-item summary:focus {
    outline: none;
}

.faq-item summary:focus-visible {
    outline: 2px solid rgba(221, 185, 119, 0.72);
    outline-offset: -4px;
    border-radius: 17px;
}

.faq-question-icon {
    width: 52px;
    height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(221, 185, 119, 0.35);
    border-radius: 50%;
    color: #e0bb77;
    background: rgba(221, 185, 119, 0.055);
    font-size: 17px;
    transition:
        color 0.3s ease,
        background 0.3s ease,
        border-color 0.3s ease;
}

.faq-item-resort .faq-question-icon {
    color: #d6bc83;
    border-color: rgba(115, 158, 151, 0.35);
    background: rgba(72, 128, 121, 0.07);
}

.faq-item[open] .faq-question-icon {
    color: #17151d;
    border-color: #ddb977;
    background: #ddb977;
}

.faq-question-text {
    min-width: 0;
    color: rgba(250, 248, 244, 0.94);
    font-size: 18px;
    font-weight: 700;
    line-height: 1.45;
    letter-spacing: -0.2px;
}

.faq-toggle {
    position: relative;
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(221, 185, 119, 0.25);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.025);
    transition:
        border-color 0.3s ease,
        background 0.3s ease,
        transform 0.35s ease;
}

.faq-toggle::before,
.faq-toggle::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 12px;
    height: 1px;
    background: #ddb977;
    transform: translate(-50%, -50%);
    transition:
        opacity 0.3s ease,
        transform 0.3s ease;
}

.faq-toggle::after {
    transform: translate(-50%, -50%) rotate(90deg);
}

.faq-item[open] .faq-toggle {
    border-color: rgba(221, 185, 119, 0.5);
    background: rgba(221, 185, 119, 0.08);
    transform: rotate(180deg);
}

.faq-item[open] .faq-toggle::after {
    opacity: 0;
    transform: translate(-50%, -50%) rotate(0);
}

/* Accordion answer */

.faq-answer {
    position: relative;
    padding: 0 31px 32px 99px;
}

.faq-answer::before {
    content: "";
    position: absolute;
    top: 0;
    right: 30px;
    left: 99px;
    height: 1px;
    background: linear-gradient(
        90deg,
        rgba(221, 185, 119, 0.2),
        rgba(221, 185, 119, 0.02)
    );
}

.faq-answer p {
    margin: 0;
    padding-top: 23px;
    color: rgba(222, 219, 222, 0.72);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.78;
}

/* Closing note */

.faq-closing-note {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 18px;
    align-items: center;
    margin-top: 28px;
    padding: 25px 29px;
    border: 1px solid rgba(221, 185, 119, 0.16);
    border-radius: 17px;
    background: rgba(8, 10, 15, 0.24);
}

.faq-closing-icon {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(221, 185, 119, 0.3);
    border-radius: 50%;
    color: #dcb875;
    background: rgba(221, 185, 119, 0.05);
    font-size: 16px;
}

.faq-closing-note p {
    margin: 0;
    color: rgba(218, 215, 217, 0.63);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.68;
}

/* FAQ responsive layout */

@media (max-width: 1199px) {
    .townsville-faq-section {
        padding: 104px 0 98px;
    }

    .townsville-faq-container {
        padding: 0 30px;
    }

    .faq-intro-layout {
        gap: 48px;
    }

    .faq-item summary {
        grid-template-columns: 48px minmax(0, 1fr) 32px;
        gap: 15px;
        padding-right: 23px;
        padding-left: 25px;
    }

    .faq-question-icon {
        width: 48px;
        height: 48px;
    }

    .faq-answer {
        padding-right: 27px;
        padding-left: 88px;
    }

    .faq-answer::before {
        right: 27px;
        left: 88px;
    }
}

@media (max-width: 991px) {
    .townsville-faq-section {
        padding: 92px 0 88px;
    }

    .faq-intro-layout {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .faq-intro-copy > p {
        max-width: 760px;
    }

    .faq-columns {
        gap: 18px;
    }

    .faq-item summary {
        grid-template-columns: 43px minmax(0, 1fr) 30px;
        gap: 13px;
        min-height: 108px;
        padding: 25px 20px;
    }

    .faq-question-icon {
        width: 43px;
        height: 43px;
        font-size: 15px;
    }

    .faq-question-text {
        font-size: 16px;
    }

    .faq-toggle {
        width: 30px;
        height: 30px;
    }

    .faq-answer {
        padding: 0 23px 27px 76px;
    }

    .faq-answer::before {
        right: 23px;
        left: 76px;
    }

    .faq-answer p {
        font-size: 14px;
    }
}

@media (max-width: 767px) {
    .townsville-faq-section {
        padding: 78px 0 74px;
        scroll-margin-top: 76px;
    }

    .townsville-faq-container {
        padding: 0 20px;
    }

    .faq-intro {
        margin-bottom: 39px;
    }

    .faq-intro-heading h2 {
        font-size: 43px;
        letter-spacing: -1.5px;
    }

    .faq-intro-copy > p {
        font-size: 16px;
        line-height: 1.74;
    }

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

    .faq-column {
        gap: 16px;
    }

    .faq-item summary {
        min-height: 102px;
    }

    .faq-question-text {
        font-size: 17px;
    }

    .faq-closing-note {
        padding: 23px;
    }
}

@media (max-width: 575px) {
    .townsville-faq-container {
        padding: 0 16px;
    }

    .faq-section-label {
        gap: 10px;
        font-size: 10px;
        letter-spacing: 2px;
    }

    .faq-label-line {
        width: 36px;
    }

    .faq-intro-heading h2 {
        font-size: 37px;
    }

    .faq-topic-line {
        gap: 9px;
        font-size: 9px;
        letter-spacing: 1.3px;
    }

    .faq-item {
        border-radius: 17px;
    }

    .faq-item::before {
        left: 21px;
    }

    .faq-item summary {
        grid-template-columns: 40px minmax(0, 1fr) 28px;
        gap: 11px;
        min-height: 96px;
        padding: 22px 17px;
    }

    .faq-question-icon {
        width: 40px;
        height: 40px;
        font-size: 14px;
    }

    .faq-question-text {
        font-size: 15px;
        line-height: 1.4;
    }

    .faq-toggle {
        width: 28px;
        height: 28px;
    }

    .faq-toggle::before,
    .faq-toggle::after {
        width: 10px;
    }

    .faq-answer {
        padding: 0 19px 24px;
    }

    .faq-answer::before {
        right: 19px;
        left: 19px;
    }

    .faq-answer p {
        padding-top: 20px;
        font-size: 13px;
        line-height: 1.72;
    }

    .faq-closing-note {
        grid-template-columns: 1fr;
        padding: 22px 20px;
    }

    .faq-closing-icon {
        width: 38px;
        height: 38px;
    }
}
/* Native FAQ answer visibility fix */

.townsville-faq-section details.faq-item .faq-answer {
    max-height: 1000px;
    overflow: visible;
    transition: none;
}
/* =========================================================
   Townsville Casino - Footer
   ========================================================= */

.townsville-footer,
.townsville-footer * {
    box-sizing: border-box;
}

.townsville-footer {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: 100%;
    color: #f5f1e9;
    background: #090d12;
    border-top: 1px solid rgba(221, 185, 119, 0.24);
}

.townsville-footer::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: -210px;
    right: -170px;
    width: 520px;
    height: 520px;
    border-radius: 50%;
    background: rgba(103, 70, 92, 0.11);
    filter: blur(20px);
    pointer-events: none;
}

.townsville-footer::after {
    content: "";
    position: absolute;
    z-index: -1;
    bottom: -260px;
    left: -220px;
    width: 560px;
    height: 560px;
    border-radius: 50%;
    background: rgba(29, 91, 91, 0.09);
    filter: blur(20px);
    pointer-events: none;
}

.townsville-footer-container {
    position: relative;
    width: 100%;
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 36px;
}

.townsville-footer-main {
    position: relative;
    padding: 84px 0 68px;
    background:
        radial-gradient(
            circle at 88% 12%,
            rgba(221, 185, 119, 0.065),
            transparent 30%
        ),
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.018),
            rgba(255, 255, 255, 0)
        );
}

.townsville-footer-main::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: min(1248px, calc(100% - 72px));
    height: 1px;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(221, 185, 119, 0.5),
        transparent
    );
    transform: translateX(-50%);
}

.townsville-footer-grid {
    display: grid;
    grid-template-columns:
        minmax(0, 1.12fr)
        minmax(0, 0.95fr)
        minmax(0, 0.93fr);
    gap: 62px;
    align-items: start;
}

.townsville-footer-about,
.townsville-footer-navigation,
.townsville-footer-visit {
    min-width: 0;
}

/* Footer brand */

.townsville-footer-logo {
    display: inline-flex;
    align-items: center;
    margin-bottom: 27px;
}

.townsville-footer-logo img {
    display: block;
    width: auto;
    max-width: 255px;
    height: auto;
}

.townsville-footer-description {
    max-width: 470px;
    margin: 0 0 27px;
    color: rgba(224, 225, 223, 0.72);
    font-size: 15px;
    font-weight: 500;
    line-height: 1.82;
}

.townsville-footer-responsible {
    display: grid;
    grid-template-columns: 45px minmax(0, 1fr);
    gap: 16px;
    align-items: start;
    max-width: 480px;
    padding: 19px 20px;
    border: 1px solid rgba(221, 185, 119, 0.19);
    border-radius: 17px;
    background:
        linear-gradient(
            135deg,
            rgba(221, 185, 119, 0.07),
            rgba(255, 255, 255, 0.018)
        );
}

.townsville-footer-responsible-icon {
    width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(221, 185, 119, 0.36);
    border-radius: 50%;
    color: #dfbb78;
    background: rgba(221, 185, 119, 0.06);
    font-size: 16px;
}

.townsville-footer-responsible strong {
    display: block;
    margin-bottom: 5px;
    color: #e1bd79;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: 1.1px;
    text-transform: uppercase;
}

.townsville-footer-responsible span {
    display: block;
    color: rgba(225, 225, 220, 0.66);
    font-size: 12px;
    font-weight: 600;
    line-height: 1.62;
}

/* Footer navigation */

.townsville-footer-navigation {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px;
}

.townsville-footer-heading {
    position: relative;
    display: block;
    margin-bottom: 24px;
    padding-bottom: 14px;
    color: #ffffff;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: 1.7px;
    text-transform: uppercase;
}

.townsville-footer-heading::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 42px;
    height: 2px;
    background: linear-gradient(
        90deg,
        #ddb977,
        rgba(221, 185, 119, 0.14)
    );
}

.townsville-footer-buttons {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.townsville-footer-nav-button {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding: 9px 0;
    border: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.055);
    border-radius: 0;
    color: rgba(229, 229, 224, 0.7);
    background: transparent;
    box-shadow: none;
    font-family: inherit;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.45;
    text-align: left;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    transition:
        color 0.25s ease,
        padding-left 0.25s ease,
        border-color 0.25s ease;
}

.townsville-footer-nav-button i {
    flex: 0 0 auto;
    color: rgba(221, 185, 119, 0.6);
    font-size: 13px;
    transition: transform 0.25s ease;
}

.townsville-footer-nav-button:hover,
.townsville-footer-nav-button:focus-visible {
    padding-left: 5px;
    color: #ddb977;
    border-color: rgba(221, 185, 119, 0.18);
    outline: none;
}

.townsville-footer-nav-button:hover i,
.townsville-footer-nav-button:focus-visible i {
    transform: translateX(3px);
}

.townsville-footer-nav-button:last-child:hover i,
.townsville-footer-nav-button:last-child:focus-visible i {
    transform: translateY(-3px);
}

/* Visit information */

.townsville-footer-information {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.townsville-footer-info-item {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 15px;
    align-items: start;
}

.townsville-footer-info-icon {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(221, 185, 119, 0.28);
    border-radius: 50%;
    color: #ddb977;
    background: rgba(221, 185, 119, 0.045);
    font-size: 16px;
}

.townsville-footer-info-item > div:last-child {
    min-width: 0;
    padding-top: 2px;
}

.townsville-footer-info-item span {
    display: block;
    margin-bottom: 6px;
    color: #caa866;
    font-size: 9px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.townsville-footer-info-item strong {
    display: block;
    margin-bottom: 9px;
    color: rgba(245, 242, 235, 0.82);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.65;
}

.townsville-footer-info-item strong:last-child {
    margin-bottom: 0;
}

.townsville-footer-availability {
    display: grid;
    grid-template-columns: 23px minmax(0, 1fr);
    gap: 11px;
    margin-top: 25px;
    padding-top: 20px;
    border-top: 1px solid rgba(221, 185, 119, 0.12);
}

.townsville-footer-availability i {
    padding-top: 3px;
    color: #cfae6e;
    font-size: 14px;
    text-align: center;
}

.townsville-footer-availability p {
    margin: 0;
    color: rgba(215, 216, 213, 0.57);
    font-size: 11px;
    font-weight: 600;
    line-height: 1.65;
}

/* Footer bottom */

.townsville-footer-bottom {
    position: relative;
    padding: 22px 0;
    border-top: 1px solid rgba(221, 185, 119, 0.13);
    background: rgba(2, 5, 8, 0.55);
}

.townsville-footer-bottom-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
}

.townsville-footer-copyright {
    margin: 0;
    color: rgba(222, 222, 218, 0.65);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.2px;
}

.townsville-footer-status {
    display: flex;
    align-items: center;
    gap: 10px;
    color: rgba(222, 222, 218, 0.52);
    font-size: 10px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.townsville-footer-status-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #ddb977;
    box-shadow: 0 0 12px rgba(221, 185, 119, 0.5);
}

/* Footer responsive layout */

@media (max-width: 1199px) {
    .townsville-footer-container {
        padding: 0 30px;
    }

    .townsville-footer-grid {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 50px 44px;
    }

    .townsville-footer-about {
        grid-column: 1 / -1;
    }

    .townsville-footer-description,
    .townsville-footer-responsible {
        max-width: 680px;
    }
}

@media (max-width: 767px) {
    .townsville-footer-main {
        padding: 68px 0 54px;
    }

    .townsville-footer-container {
        padding: 0 20px;
    }

    .townsville-footer-main::before {
        width: calc(100% - 40px);
    }

    .townsville-footer-grid {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .townsville-footer-about {
        grid-column: auto;
    }

    .townsville-footer-navigation {
        gap: 28px;
    }

    .townsville-footer-bottom-inner {
        flex-direction: column;
        gap: 12px;
        text-align: center;
    }

    .townsville-footer-status {
        justify-content: center;
    }
}

@media (max-width: 575px) {
    .townsville-footer-container {
        padding: 0 16px;
    }

    .townsville-footer-main::before {
        width: calc(100% - 32px);
    }

    .townsville-footer-logo img {
        max-width: 225px;
    }

    .townsville-footer-description {
        font-size: 14px;
    }

    .townsville-footer-responsible {
        grid-template-columns: 40px minmax(0, 1fr);
        padding: 17px;
    }

    .townsville-footer-responsible-icon {
        width: 40px;
        height: 40px;
    }

    .townsville-footer-navigation {
        grid-template-columns: 1fr;
        gap: 38px;
    }

    .townsville-footer-nav-button {
        min-height: 42px;
        font-size: 14px;
    }

    .townsville-footer-info-item {
        grid-template-columns: 41px minmax(0, 1fr);
    }

    .townsville-footer-info-icon {
        width: 41px;
        height: 41px;
    }

    .townsville-footer-bottom {
        padding: 20px 0;
    }

    .townsville-footer-copyright {
        font-size: 11px;
    }

    .townsville-footer-status {
        font-size: 9px;
    }
}

/* =====================================================
   Townsville Casino legal pages
   Gold palette aligned with the main website
===================================================== */

:root {
    --legal-gold: #ffbf12;
    --legal-gold-light: #ffd65a;
    --legal-gold-soft: rgba(255, 191, 18, 0.14);
    --legal-navy: #060d20;
    --legal-navy-soft: #101a31;
    --legal-ink: #252525;
    --legal-copy: #555555;
    --legal-cream: #fffaf0;
    --legal-border: rgba(255, 191, 18, 0.32);
}

.townsville-footer-grid {
    grid-template-columns: 1.15fr 0.85fr 0.85fr 1fr;
}

.townsville-footer-link {
    width: 100%;
    text-align: left;
}

.legal-page {
    background: var(--legal-cream);
    color: var(--legal-copy);
}

.legal-header {
    position: relative;
    z-index: 20;
    background: var(--legal-navy);
    border-bottom: 1px solid var(--legal-border);
}

.legal-header-inner {
    min-height: 92px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
}

.legal-logo img {
    width: 175px;
    max-height: 62px;
    object-fit: contain;
}

.legal-header-nav {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 22px;
}

.legal-header-nav a {
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.35px;
}

.legal-header-nav a:hover,
.legal-header-nav a:focus {
    color: var(--legal-gold);
}

.legal-hero {
    position: relative;
    overflow: hidden;
    padding: 105px 0 92px;
    background:
        radial-gradient(circle at 82% 20%, rgba(255, 191, 18, 0.20), transparent 30%),
        linear-gradient(135deg, #060d20 0%, #111b31 100%);
}

.legal-hero::before,
.legal-hero::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    border: 1px solid rgba(255, 191, 18, 0.18);
}

.legal-hero::before {
    width: 320px;
    height: 320px;
    right: -110px;
    top: -120px;
}

.legal-hero::after {
    width: 180px;
    height: 180px;
    right: 110px;
    bottom: -105px;
}

.legal-hero-content {
    position: relative;
    z-index: 2;
    max-width: 850px;
}

.legal-kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
    color: var(--legal-gold);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.2px;
    text-transform: uppercase;
}

.legal-kicker::before {
    content: "";
    width: 42px;
    height: 2px;
    background: var(--legal-gold);
}

.legal-hero h1 {
    color: #ffffff;
    font-size: clamp(42px, 6vw, 72px);
    line-height: 1.08;
    font-weight: 800;
    margin-bottom: 22px;
}

.legal-hero p {
    max-width: 750px;
    color: rgba(255,255,255,0.78);
    font-size: 17px;
    line-height: 1.8;
}

.legal-updated {
    display: inline-flex;
    margin-top: 30px;
    padding: 9px 15px;
    border: 1px solid var(--legal-border);
    border-radius: 999px;
    color: #ffffff;
    background: rgba(255,255,255,0.04);
    font-size: 13px;
    font-weight: 700;
}

.legal-content-section {
    padding: 84px 0 105px;
}

.legal-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 285px;
    gap: 52px;
    align-items: start;
}

.legal-article {
    background: #ffffff;
    border: 1px solid rgba(6, 13, 32, 0.08);
    border-top: 4px solid var(--legal-gold);
    border-radius: 14px;
    padding: 48px;
    box-shadow: 0 20px 55px rgba(6, 13, 32, 0.08);
}

.legal-section + .legal-section {
    margin-top: 42px;
    padding-top: 42px;
    border-top: 1px solid rgba(6, 13, 32, 0.10);
}

.legal-section h2 {
    color: var(--legal-navy);
    font-size: 29px;
    font-weight: 800;
    margin-bottom: 16px;
}

.legal-section h3 {
    color: var(--legal-ink);
    font-size: 20px;
    font-weight: 800;
    margin: 25px 0 10px;
}

.legal-section p,
.legal-section li {
    color: var(--legal-copy);
    font-size: 15px;
    line-height: 1.9;
}

.legal-section p + p {
    margin-top: 15px;
}

.legal-section ul {
    margin: 16px 0 0;
    padding: 0;
}

.legal-section li {
    position: relative;
    padding-left: 24px;
    margin-bottom: 10px;
}

.legal-section li::before {
    content: "";
    position: absolute;
    top: 12px;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--legal-gold);
    box-shadow: 0 0 0 4px var(--legal-gold-soft);
}

.legal-section a {
    color: #a87500;
    font-weight: 700;
    text-decoration: underline !important;
    text-decoration-color: rgba(168,117,0,0.35) !important;
    text-underline-offset: 3px;
}

.legal-section a:hover {
    color: var(--legal-navy);
}

.legal-note {
    margin-top: 22px;
    padding: 20px 22px;
    border-left: 4px solid var(--legal-gold);
    border-radius: 0 10px 10px 0;
    background: #fff8df;
}

.legal-note strong {
    display: block;
    color: var(--legal-navy);
    margin-bottom: 4px;
}

.legal-sidebar {
    position: sticky;
    top: 28px;
    padding: 28px;
    border-radius: 14px;
    background: var(--legal-navy);
    box-shadow: 0 20px 45px rgba(6, 13, 32, 0.16);
}

.legal-sidebar-title {
    display: block;
    color: var(--legal-gold);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.8px;
    text-transform: uppercase;
    margin-bottom: 17px;
}

.legal-sidebar a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 0;
    color: rgba(255,255,255,0.82);
    border-bottom: 1px solid rgba(255,255,255,0.10);
    font-size: 14px;
    font-weight: 700;
}

.legal-sidebar a:last-child {
    border-bottom: 0;
}

.legal-sidebar a:hover {
    color: var(--legal-gold);
    padding-left: 5px;
}

.legal-footer {
    background: #030817;
    border-top: 1px solid var(--legal-border);
    padding: 50px 0 24px;
}

.legal-footer-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 40px;
    padding-bottom: 35px;
}

.legal-footer-brand img {
    width: 165px;
    margin-bottom: 17px;
}

.legal-footer-brand p {
    max-width: 470px;
    color: rgba(255,255,255,0.63);
    line-height: 1.8;
}

.legal-footer-links {
    display: grid;
    grid-template-columns: repeat(2, minmax(150px, 1fr));
    gap: 10px 28px;
}

.legal-footer-links a {
    color: rgba(255,255,255,0.74);
    font-size: 14px;
    font-weight: 700;
}

.legal-footer-links a:hover {
    color: var(--legal-gold);
}

.legal-footer-bottom {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding-top: 22px;
    border-top: 1px solid rgba(255,255,255,0.10);
}

.legal-footer-bottom p {
    color: rgba(255,255,255,0.50);
    font-size: 13px;
}

@media (max-width: 1199px) {
    .townsville-footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 991px) {
    .legal-layout {
        grid-template-columns: 1fr;
    }

    .legal-sidebar {
        position: static;
    }

    .legal-header-inner,
    .legal-footer-top,
    .legal-footer-bottom {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 767px) {
    .townsville-footer-grid {
        grid-template-columns: 1fr;
    }

    .legal-header-inner {
        padding: 18px 0;
    }

    .legal-header-nav {
        gap: 12px 18px;
        justify-content: flex-start;
    }

    .legal-hero {
        padding: 74px 0 65px;
    }

    .legal-content-section {
        padding: 55px 0 75px;
    }

    .legal-article {
        padding: 28px 22px;
    }

    .legal-section h2 {
        font-size: 25px;
    }

    .legal-footer-links {
        grid-template-columns: 1fr;
    }
}
