/*
    Name: Gden || Casino & Gambling HTML Template
    Author: hastagthemes
    Support: 
    Description: Gden || Casino & Gambling HTML Template for casino.
    Version: 1.0.1

    Create Date: 09-05-2022

    */
    /* CSS Index
    -----------------------------------
    01. Default CSS
    02. Navbar CSS
    03. Hero CSS
    04. About CSS
    05. Game CSS
    06. Faq CSS
    07. Pricing CSS
    08. Team CSS
    09. Testimonial CSS
    10. Footer CSS
*/

/**** Default CSS ****/
@import url('https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@300;400;600;700;800;900&family=Open+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap');

html {
    scroll-behavior: smooth;
    overflow-x: hidden;
}

body {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-style: normal;
    color: #ffffff;
    overflow-x: hidden;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

a:focus,
input:focus,
textarea:focus,
button:focus,
.btn:focus,
.btn.focus,
.btn:not(:disabled):not(.disabled).active,
.btn:not(:disabled):not(.disabled):active {
    text-decoration: none;
    outline: none;
    box-shadow: none;
}

a:hover {
    color: #dddddd;
}

a {
    transition: all .3s ease-out 0s;
}

a,
a:focus,
a:hover {
    text-decoration: none;
}

i,
span,
a {
    display: inline-block;
}

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family:  'Nunito Sans', sans-serif;
    font-weight: 900;
    margin: 0;
    color: #ebebeb;
}

.section-title p {
    font-size: 18px;
    line-height: 28px;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    color: inherit;
}

h1 {
    font-size: 50px;
}

h2 {
    font-size: 42px;
}

h3 {
    font-size: 30px;
}

h4 {
    font-size: 26px;
}

h5 {
    font-size: 18px;
}

h6 {
    font-size: 16px;
}

ul,
ol {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

p {
    font-size: 16px;
    font-weight: 400;
    line-height: 25px;
    margin: 0;
}

img{
    max-width: 100%;
}

.top-greadient::before {
    content: '';
    position: absolute;
    right: -500px;
    top: -500px;
    width: 1000px;
    height: 1000px;
    z-index: -1;
}

.left-greadient::before {
    content: '';
    position: absolute;
    left: -500px;
    width: 1000px;
    height: 1000px;
    z-index: -1;
}

.right-greadient::before {
    content: '';
    position: absolute;
    right: -500px;
    width: 1000px;
    height: 1000px;
    z-index: -1;
}

.common-gre-color{
    font-size: 50px !important;
    background: linear-gradient(0deg, #ff9c19 40%, #ffdd2d 110%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.error {
    color: #ff4500;
}

.success {
    color: #008000;
}

.main-btn {
    display: inline-block;
    font-weight: 500;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    user-select: none;
    padding: 20px 40px;
    font-size: 18px;
    border-radius: 50px;
    color: #fff;
    cursor: pointer;
    z-index: 5;
    transition: all .4s ease-in-out;
    border: none;
    background: linear-gradient(85deg, #ff9c19 40%, #ffdd2d 110%);
    overflow: hidden;
    box-shadow: 1px 1px 20px 0px rgb(255 200 39 / 40%), 1px 1px 15px 0px rgb(255 82 1 / 20%);
}

.main-btn:hover {
    color: #fff;
    background: linear-gradient(1705deg, #ff9c19 40%, #ffdd2d 110%);
    box-shadow: 1px 1px 300px 0px rgb(255 200 39 / 40%), 1px 1px 30px 0px rgb(255 82 1 / 20%);
}

.main-btn.border-btn {
    border: 2px solid #ffdd2d;
    background: 0 0;
    color: #ffffff;
}

.play-btn {
    position: relative;
    display: inline-block;
    font-weight: 500;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    user-select: none;
    padding: 10px 30px;
    font-size: 18px;
    border-radius: 50px;
    color: #fff;
    cursor: pointer;
    z-index: 5;
    transition: all .4s ease-in-out;
    border: none;
    background: linear-gradient(85deg, #ff9c19 40%, #ffdd2d 110%);
    box-shadow: 1px 1px 20px 0px rgb(255 200 39 / 40%), 1px 1px 15px 0px rgb(255 82 1 / 20%);
}

.play-btn:hover {
    color: #fff;
    background: linear-gradient(1705deg, #ff9c19 40%, #ffdd2d 110%);
    box-shadow: 1px 1px 300px 0px rgb(255 200 39 / 40%), 1px 1px 30px 0px rgb(255 82 1 / 20%);

}

.play-btn.border-btn {
    border: 2px solid #ffdd2d;
    background: 0 0;
    color: #ffffff;
}

.btn-hover {
    position: relative;
}

.btn-hover::after {
    content: '';
    position: absolute;
    width: 0%;
    height: 0%;
    border-radius: 50%;
    background: rgba(0, 0, 0, .05);
    top: 50%;
    left: 50%;
    padding: 50%;
    z-index: -1;
    transition: all .3s ease-out 0s;
    transform: translate3d(-50%, -50%, 0) scale(0);
}

.btn-hover:hover::after {
    transform: translate3d(-50%, -50%, 0) scale(1.3);
}

.scroll-top {
    width: 45px;
    height: 45px;
    background: linear-gradient(85deg, #ff9c19 40%, #ffdd2d 110%);
    box-shadow: 1px 1px 20px 0px rgb(255 200 39 / 40%), 1px 1px 15px 0px rgb(255 82 1 / 20%);   
    display: none;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    color: #fff;
    border-radius: 5px;
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 9;
    cursor: pointer;
    transition: all .3s ease-out 0s;
}

.scroll-top:hover {
    color: #fff;
    background: linear-gradient(1705deg, #ff9c19 40%, #ffdd2d 110%);
    box-shadow: 1px 1px 300px 0px rgb(255 200 39 / 40%), 1px 1px 30px 0px rgb(255 82 1 / 20%);
}

.preloader {
    position: fixed;
    top: 0;
    left: 0;
    display: table;
    height: 100%;
    width: 100%;
    background: #fff;
    z-index: 99999;
}

.preloader .loader {
    
    vertical-align: middle;
    text-align: center;
}

.preloader .loader .spinner {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 64px;
    margin-left: -32px;
    z-index: 18;
    pointer-events: none;
}

.preloader .loader .spinner .spinner-container {
    pointer-events: none;
    position: absolute;
    width: 100%;
    padding-bottom: 100%;
    top: 50%;
    left: 50%;
    margin-top: -50%;
    margin-left: -50%;
    animation: spinner-linspin 1568.2353ms linear infinite;
}

.preloader .loader .spinner .spinner-container .spinner-rotator {
    position: absolute;
    width: 100%;
    height: 100%;
    animation: spinner-easespin 5332ms cubic-bezier(.4, 0, .2, 1) infinite both;
}

.preloader .loader .spinner .spinner-container .spinner-rotator .spinner-left {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    overflow: hidden;
    right: 50%;
}

.preloader .loader .spinner .spinner-container .spinner-rotator .spinner-right {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
    left: 50%;
}

.preloader .loader .spinner-circle {
    box-sizing: border-box;
    position: absolute;
    width: 200%;
    height: 100%;
    border-style: solid;
    
    border-radius: 50%;
    border-width: 6px;
}

.preloader .loader .spinner-left .spinner-circle {
    left: 0;
    right: -100%;
    border-right-color: #ddd;
    animation: spinner-left-spin 1333ms cubic-bezier(.4, 0, .2, 1) infinite both;
}

.preloader .loader .spinner-right .spinner-circle {
    left: -100%;
    right: 0;
    border-left-color: #ddd;
    animation: right-spin 1333ms cubic-bezier(.4, 0, .2, 1) infinite both;
}

@keyframes spinner-linspin {
    to {
        transform: rotate(360deg);
    }
}

@keyframes spinner-easespin {
    12.5% {
        transform: rotate(135deg);
    }
    25% {
        transform: rotate(270deg);
    }
    37.5% {
        transform: rotate(405deg);
    }
    50% {
        transform: rotate(540deg);
    }
    62.5% {
        transform: rotate(675deg);
    }
    75% {
        transform: rotate(810deg);
    }
    87.5% {
        transform: rotate(945deg);
    }
    to {
        transform: rotate(1080deg);
    }
}

@keyframes spinner-left-spin {
    0% {
        transform: rotate(130deg);
    }
    50% {
        transform: rotate(-5deg);
    }
    to {
        transform: rotate(130deg);
    }
}

@keyframes right-spin {
    0% {
        transform: rotate(-130deg);
    }
    50% {
        transform: rotate(5deg);
    }
    to {
        transform: rotate(-130deg);
    }
}

.box-inner-shadow{
    position: relative;
}

.box-inner-shadow::after{
    content: '';
    width: 100%;
    height: 100%;
    background: #5ce81d12;
    position: absolute;
    left: 0;
    top: 0;
    transform: rotate(3deg);
    border-radius: 10px;
    z-index: -1;
    box-shadow: inset 1px 1px 20px 0px rgba(255, 255, 255, 0.1), inset 1px 1px 20px 0px rgba(176, 176, 176, 0.1);
}


/**** Navbar CSS ****/
.navbar-area {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 99;
    transition: all .3s ease-out 0s;
}

.sticky {
    position: fixed;
    z-index: 99;
    box-shadow: 1px 1px 20px 0px rgb(255 200 39 / 40%), 1px 1px 15px 0px rgb(255 82 1 / 20%);
    transition: all .3s ease-out 0s;
}

.sticky .navbar {
    padding: 17px 0;
}

.sticky .navbar .navbar-nav .nav-item a {
    color: #ffffff;
}

.sticky .navbar .navbar-toggler .toggler-icon {
    background: #ffffff;
}

.navbar {
    padding: 0;
    border-radius: 5px;
    position: relative;
    transition: all .3s ease-out 0s;
    padding: 20px 0;
}

.navbar-brand {
    padding: 0;
}

.navbar-brand img {
    max-width: 180px;
}

.navbar-toggler {
    padding: 0;
}

.navbar-toggler:focus {
    outline: none;
    box-shadow: none;
}

.navbar-toggler .toggler-icon {
    width: 30px;
    height: 2px;
    background-color: #ffffff;
    display: block;
    margin: 5px 0;
    position: relative;
    transition: all .3s ease-out 0s;
}

.navbar-toggler.active .toggler-icon:nth-of-type(1) {
    transform: rotate(45deg);
    top: 7px;
}

.navbar-toggler.active .toggler-icon:nth-of-type(2) {
    opacity: 0;
}

.navbar-toggler.active .toggler-icon:nth-of-type(3) {
    transform: rotate(135deg);
    top: -7px;
}

.navbar-nav .nav-item {
    position: relative;
    margin-left: 40px;
}

.navbar-nav .nav-item a {
    font-size: 18px;
    font-weight: 400;
    color: #ffffff;
    transition: all .3s ease-out 0s;
    padding: 10px 0;
    position: relative;
}

.navbar-nav .nav-item a::before {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    left: auto;
    width: 0;
    height: 2px;
    background: linear-gradient(0deg, #ff9c19 40%, #ffdd2d 110%);
    z-index: -1;
    opacity: 0;
    border-radius: 10px;
    transition: all .3s ease-out 0s;
}

.navbar-nav .nav-item a:hover,
.navbar-nav .nav-item a.active {
    background: linear-gradient(0deg, #ff9c19 40%, #ffdd2d 110%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.navbar-nav .nav-item a:hover::before,
.navbar-nav .nav-item a.active::before {
    right: auto;
    left: 0;
    opacity: 1;
    width: 100%;
}

/**** Hero CSS ****/
.hero-section {
    position: relative;
    z-index: 1;
    padding: 220px 0 87px;
}

.hero-section::before{
    content: '';
    position: absolute;
    left: 10px;
    top: 20px;
    width: 400px;
    height: 320px;
    background: url(../img/hero/hero-bg-02.png) center;
    background-repeat: no-repeat;
}

.hero-section::after{
    content: '';
    position: absolute;
    right: 10px;
    bottom: 0;
    width: 319px;
    height: 321px;
    background: url(../img/hero/hero-bg-03.png) center;
    background-repeat: no-repeat;
}

@-webkit-keyframes go-zoom {
    0% {
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }
    50% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    100% {
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }
}

@keyframes go-zoom {
    0% {
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }
    50% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    100% {
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }
}

.go-zoom-1::before {
    animation-name: go-zoom;
    animation-duration: 5s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
    -webkit-animation-name: go-zoom;
    -webkit-animation-duration: 5s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    -moz-animation-name: go-zoom;
    -moz-animation-duration: 5s;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: linear;
    -ms-animation-name: go-zoom;
    -ms-animation-duration: 5s;
    -ms-animation-iteration-count: infinite;
    -ms-animation-timing-function: linear;
    -o-animation-name: go-zoom;
    -o-animation-duration: 5s;
    -o-animation-iteration-count: infinite;
    -o-animation-timing-function: linear;
}

.go-zoom-1::after {
    animation-name: go-zoom;
    animation-duration: 5s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
    -webkit-animation-name: go-zoom;
    -webkit-animation-duration: 5s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    -moz-animation-name: go-zoom;
    -moz-animation-duration: 5s;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: linear;
    -ms-animation-name: go-zoom;
    -ms-animation-duration: 5s;
    -ms-animation-iteration-count: infinite;
    -ms-animation-timing-function: linear;
    -o-animation-name: go-zoom;
    -o-animation-duration: 5s;
    -o-animation-iteration-count: infinite;
    -o-animation-timing-function: linear;
}

.hero-section .hero-content span {
    font-family: 'Nunito Sans', sans-serif;
    font-size: 30px;
    font-weight: 800;
    background: linear-gradient(0deg, #ff9c19 40%, #ffdd2d 110%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.hero-section .hero-content h1 {
    font-size: 50px;
    margin-bottom: 35px;
}

.hero-section .hero-content p {
    margin-bottom: 40px;
}

.hero-section .hero-shape .shape {
    position: absolute;
    z-index: -1;
}

.hero-section .hero-shape .shape.shape-1 {
    top: -285px;
    right: -300px;
}

.how-item{
    position: relative;
}

.how-item-thumb {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 120px;
    height: 120px;
    border-radius: 10px;
    font-size: 46px;
    margin: 0 30px 15px 0;
    position: relative;
    box-shadow: inset 1px 1px 8px 0px rgb(255 200 39 / 40%), inset 1px 1px 8px 0px rgb(255 82 1 / 20%);
    transition: all .3s ease-out 0s;
}

.how-item-thumb .badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    padding: 7px;
    line-height: 0.75;
    font-size: 14px;
    font-weight: 500;
    position: absolute;
    right: -10px;
    top: 10px;
    width: 30px;
    height: 30px;
    color: #1f1f23 !important;
}

.how-item:hover .how-item-thumb,
.how-item-none:hover .how-item-thumb{
    box-shadow: inset 1px 1px 30px 0px rgba(250, 194, 24, 0.4), inset 1px 1px 30px 0px rgba(246, 93, 21, 0.2);
}
  
.how-item-thumb .badge{
    background: linear-gradient(0deg, #ff9c19 40%, #ffdd2d 110%);
}

.how-item::before {
    position: absolute;
    content: '';
    width: 100%;
    height: 0;
    border: 1px dashed rgba(255, 200, 39, 0.7);
    top: 60px;
    left: 50%;
}

.how-item-content .title{
    font-size: 12px;
}

/**** About CSS ****/
.about-section{
    position: relative;
}

.about-section .about-img img {
    width: 100%;
}

.about-section .accordion .single-faq {
    margin-bottom: 20px;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 0 35px #f2f4f9;
}

.about-section .accordion .single-faq button {
    padding: 20px 30px 15px;
    border: none;
    background: 0 0;
    font-size: 20px;
    font-weight: 500;
    color: #313450;
    position: relative;
}

.about-section .accordion .single-faq button::after {
    content: "\eb2c";
    font: normal normal normal 1em/1 "LineIcons";
    position: absolute;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);
    transition: all .3s ease-out 0s;
}

.about-section .accordion .single-faq button.collapsed::after {
    content: "\eb53";
}

.about-section .accordion .single-faq .faq-content {
    padding: 0 30px;
    padding-bottom: 20px;
}

.about-section .single-counter{
    padding: 20px;
    text-align: center;
    border-radius: 10px;
    box-shadow: inset 1px 1px 8px 0px rgb(255 200 39 / 40%), inset 1px 1px 8px 0px rgb(255 82 1 / 20%);
    transition: all .3s ease-out 0s;
}

.about-section .single-counter:hover{
    box-shadow: inset 1px 1px 30px 0px rgba(250, 194, 24, 0.4), inset 1px 1px 30px 0px rgba(246, 93, 21, 0.2);
}

.about-section .single-counter .countup{
    background: linear-gradient(0deg, #ff9c19 40%, #ffdd2d 110%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

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

.today-item-thumb {
    width: 100px;
    height: 100px;
    margin: 0 auto 25px;
    border-radius: 50%;
    position: relative;
}

.about-section .tns-outer button,
.about-section .tns-outer .tns-liveregion{
    visibility: hidden;
    display: none;
}

.today-item-thumb {
    display: flex;
    align-items: center;
    justify-content: center;
}

.today-item-thumb img {
    border-radius: 50%;
    width: 80px;
    height: 80px;
    box-shadow: 1px 1px 15px 0px rgba(255, 201, 39, 0.513), 1px 1px 15px 0px rgba(255, 81, 1, 0.39);
    transition: all .3s ease-out 0s;
    z-index: 1;
    border: 6px solid #ffffff00;
}

.today-item-content .name {
    font-size: 16px;
    font-weight: 400;
}

.today-item .amount {
    position: absolute;
    background: linear-gradient(0deg, #ff9c19 40%, #ffdd2d 110%);
    padding: 0px 10px;
    border-radius: 20px;
    font-size: 13px;
    top: calc(100% - 15px);
    left: 50%;
    transform: translateX(-50%);
    color: #1f1f23;
    font-weight: 600;
}

.today-title{
    text-align: center;
    font-size: 30px;
    background: linear-gradient(0deg, #ff9c19 40%, #ffdd2d 110%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/**** Faq CSS ****/
.faq-section .accordion .single-faq {
    margin-bottom: 20px;
    border-radius: 10px;
    box-shadow: inset 1px 1px 8px 0px rgb(255 200 39 / 40%), inset 1px 1px 8px 0px rgb(255 82 1 / 20%);
    transition: all .3s ease-out 0s;
}

.faq-section .accordion .single-faq:hover{
    box-shadow: inset 1px 1px 20px 0px rgba(247, 191, 24, 0.4), inset 1px 1px 20px 0px rgba(253, 89, 13, 0.2);
}

.faq-section .accordion .single-faq button {
    padding: 20px 30px 15px;
    border: none;
    background: 0 0;
    font-size: 20px;
    font-weight: 700;
    color: #ffffff;
    position: relative;
}

.faq-section .accordion .single-faq button::after {
    content: "\e905";
    font-family: 'gden' !important;
    position: absolute;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);
    transition: all .3s ease-out 0s;
    background: linear-gradient(0deg, #ff9c19 40%, #ffdd2d 110%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.faq-section .accordion .single-faq button.collapsed::after {
    content: "\e904";
}

.faq-section .accordion .single-faq .faq-content {
    padding: 0 30px;
    padding-bottom: 20px;
}

.faq-section .accordion .text-start.collapsed{
    background: linear-gradient(0deg, #ff9c19 40%, #ffdd2d 110%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/**** Game CSS ****/
.game-section{
    position: relative;
}

.game-section .single-game {
    text-align: center;
    padding: 35px;
    border-radius: 10px;
    margin-bottom: 30px;
    box-shadow: inset 1px 1px 15px 0px rgb(255 200 39 / 40%), inset 1px 1px 15px 0px rgb(255 82 1 / 20%);
    transition: all .3s ease-out 0s;
}

.game-section .single-game:hover{
    box-shadow: inset 1px 1px 30px 0px rgba(250, 194, 24, 0.4), inset 1px 1px 30px 0px rgba(246, 93, 21, 0.2);
}

.game-section .single-game .gmae-content h3 {
    font-size: 24px;
    margin-bottom: 15px;
}

/**** Team CSS ****/
.team-section{
    position: relative;
}

.team-section .single-team {
    border-radius: 10px;
    box-shadow: inset 1px 1px 15px 0px rgb(255 200 39 / 40%), inset 1px 1px 15px 0px rgb(255 82 1 / 20%);
    transition: all .3s ease-out 0s;
    padding: 30px;
    margin-bottom: 30px;
    text-align: center;
}

.team-section .single-team:hover{
    box-shadow: inset 1px 1px 35px 0px rgb(255 200 39 / 40%), inset 1px 1px 35px 0px rgb(255 82 1 / 20%);
}

.team-section .single-team .image {
    border-radius: 50%;
    margin-bottom: 25px;
    overflow: hidden;
}

.team-section .single-team .image img {
    width: 100%;
}

.team-section .single-team .content h3 {
    font-size: 24px;
    margin-bottom: 10px;
    background: linear-gradient(0deg, #ff9c19 40%, #ffdd2d 110%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.team-section .single-team .content p {
    font-size: 18px;
}

/**** Pricing CSS ****/
.pricing-section {
    position: relative;
    z-index: 1;
}

.pricing-section .pricing-content {
    padding: 160px 0;
    position: relative;
    z-index: 1;
}

.pricing-section .pricing-content .image {
    position: absolute;
    top: 50%;
    left: -50px;
    transform: translateY(-50%);
    z-index: -1;
}

.pricing-section .pricing-active-wrapper {
    position: relative;
}

.pricing-section .pricing-active-wrapper .tns-controls {
    position: absolute;
    bottom: 60px;
    left: -200px;
    z-index: 2;
}

.pricing-section .pricing-active-wrapper .tns-controls button {
    width: 60px;
    height: 45px;
    border-radius: 30px;
    background: linear-gradient(85deg, #ff9c19 40%, #ffdd2d 110%);
    overflow: hidden;
    box-shadow: 1px 1px 20px 0px rgb(255 200 39 / 40%), 1px 1px 15px 0px rgb(255 82 1 / 20%);
    color: #ffffff;
    transition: all .3s ease-out 0s;
    border: none;
    margin: 0 10px;
}

.pricing-section .pricing-active-wrapper .tns-controls button:hover {
    color: #fff;
    background: linear-gradient(1705deg, #ff9c19 40%, #ffdd2d 110%);
    box-shadow: 1px 1px 300px 0px rgb(255 200 39 / 40%), 1px 1px 30px 0px rgb(255 82 1 / 20%);
}

.pricing-section .pricing-active-wrapper .pricing-active .single-pricing {
    border-radius: 10px;
    box-shadow: inset 1px 1px 15px 0px rgb(255 200 39 / 40%), inset 1px 1px 15px 0px rgb(255 82 1 / 20%);
    transition: all .3s ease-out 0s;
    padding: 35px 30px;
    text-align: center;
    margin: 15px;
}

.pricing-section .pricing-active-wrapper .pricing-active .single-pricing:hover{
    box-shadow: inset 1px 1px 35px 0px rgb(255 200 39 / 40%), inset 1px 1px 35px 0px rgb(255 82 1 / 20%);
}

.pricing-section .pricing-active-wrapper .pricing-active .single-pricing .price-header {
    position: relative;
    z-index: 1;
    width: 150px;
    height: 140px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: auto;
    margin-bottom: 25px;
}

.pricing-section .pricing-active-wrapper .pricing-active .single-pricing .price-header .shape {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    margin-bottom: 30px;
    z-index: -1;
}

.pricing-section .pricing-active-wrapper .pricing-active .single-pricing .price-header .package-name {
    margin-bottom: 20px;
}

.pricing-section .pricing-active-wrapper .pricing-active .single-pricing .price-header .price {
    font-size: 30px;
    background: linear-gradient(0deg, #ff9c19 40%, #ffdd2d 110%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.pricing-section .pricing-active-wrapper .pricing-active .single-pricing ul.content {
    margin-bottom: 30px;
}

.pricing-section .pricing-active-wrapper .pricing-active .single-pricing ul.content li {
    font-size: 16px;
    line-height: 35px;
}

.pricing-section .pricing-active-wrapper .pricing-active .single-pricing .pricing-btn {
    margin-right: 1px;
}

/**** Testimonial CSS ****/

.testimonial-section, 
.testimonial-section .testimonial-active-wrapper {
    position: relative;
}

.testimonial-section .testimonial-active-wrapper .tns-nav {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    left: 0;
    bottom: -35px;
    z-index: 1;
}

.testimonial-section .testimonial-active-wrapper .tns-nav button {
    text-indent: -9999px;
    border: none;
    background: linear-gradient(1705deg, #ff9c19 40%, #ffdd2d 110%);
    box-shadow: 1px 1px 300px 0px rgb(255 200 39 / 40%), 1px 1px 30px 0px rgb(255 82 1 / 20%);
    width: 12px;
    height: 12px;
    border-radius: 50%;
    transition: all .3s ease-out 0s;
    margin: 8px;
}

.testimonial-section .testimonial-active-wrapper .tns-nav button.tns-nav-active {
    box-shadow: inset 1px 1px 15px 0px rgb(255 200 39 / 40%), inset 1px 1px 15px 0px rgb(255 82 1 / 20%);

}

.testimonial-section .testimonial-active-wrapper .single-testimonial{
    text-align: center;
}

.testimonial-section .testimonial-active-wrapper .single-testimonial .testimonial-con-all{
    margin: 0 15px;
    padding: 30px;
    box-shadow: inset 1px 1px 15px 0px rgb(255 200 39 / 40%), inset 1px 1px 15px 0px rgb(255 82 1 / 20%);
    transition: all .3s ease-out 0s;
    border-radius: 10px;
}

.testimonial-section .testimonial-active-wrapper .single-testimonial .testimonial-con-all:hover{
    box-shadow: inset 1px 1px 35px 0px rgb(255 200 39 / 40%), inset 1px 1px 35px 0px rgb(255 82 1 / 20%);
}

.testimonial-section .testimonial-active-wrapper .single-testimonial .testimonial-con-all .info h4{
    background: linear-gradient(0deg, #ff9c19 40%, #ffdd2d 110%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.testimonial-section .testimonial-active-wrapper .single-testimonial .image {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    overflow: hidden;
    margin: auto;
    margin-bottom: 20px;
}

.testimonial-section .testimonial-active-wrapper .single-testimonial .image img {
    width: 100%;
}

.testimonial-section .testimonial-active-wrapper .single-testimonial .content {
    position: relative;
    text-align: center;
}

.testimonial-section .testimonial-active-wrapper .single-testimonial .content .quote {
    position: absolute;
    z-index: -1;
    left: 0;
    right: 0;
    top: -50px;
    margin: auto;
    font-size: 130px;
    line-height: 1;
    color: rgba(78, 110, 241, .2);
    transform: rotate(180deg);
}

.testimonial-section .testimonial-active-wrapper .single-testimonial .content p {
    font-size: 20px;
    line-height: 35px;
    margin-bottom: 30px;
}

/**** Footer CSS ****/
.footer {
    position: relative;
}

.footer .widget-wrapper {
    margin-bottom: 20px;
}

.footer .widget-wrapper ul{
    margin: 0 auto;
    max-width: 500px;
    border-radius: 25px;
    box-shadow: inset 1px 1px 15px 0px rgb(255 200 39 / 40%), inset 1px 1px 15px 0px rgb(255 82 1 / 20%);
    transition: all .3s ease-out 0s;
}

.footer .widget-wrapper ul:hover {
    box-shadow: inset 1px 1px 20px 0px rgba(247, 191, 24, 0.4), inset 1px 1px 20px 0px rgba(253, 89, 13, 0.2);
}

.footer .widget-wrapper ul li {
    font-size: 18px;
    line-height: 36px;
    display: inline-block;
    padding: 10px 20px;
}

.footer .widget-wrapper ul li a {
    color: #ffffff;
}

.footer .widget-wrapper ul li a:hover {
    background: linear-gradient(0deg, #ff9c19 40%, #ffdd2d 110%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.footer .copy-right {
    text-align: center;
    padding: 30px 0;
}

/* Medicine Hat – Game Cards */
.mh-game-card {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    background: #111;
    box-shadow: inset 1px 1px 15px rgba(255, 200, 39, 0.4),
                inset 1px 1px 10px rgba(255, 82, 1, 0.2);
    transition: all .3s ease-out;
}

.mh-game-card img {
    width: 100%;
    height: auto;
    display: block;
}

.mh-game-card:hover {
    transform: translateY(-5px);
    box-shadow: inset 1px 1px 35px rgba(255, 200, 39, 0.45),
                inset 1px 1px 25px rgba(255, 82, 1, 0.25);
}

/* Hover Play Button */
.mh-play-btn {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(85deg, #ff9c19 40%, #ffdd2d 110%);
    color: #fff;
    text-align: center;
    padding: 12px 0;
    font-size: 18px;
    font-weight: 600;
    opacity: 0;
    transform: translateY(100%);
    transition: all .3s ease;
    border-radius: 0;
}

.mh-game-card:hover .mh-play-btn {
    opacity: 1;
    transform: translateY(0);
}

/* RESPONSIVE GRID FIXES */
@media (max-width: 991px) {
    .mh-game-card {
        border-radius: 10px;
    }
}

@media (max-width: 768px) {
    #top-games .col-md-4 {
        margin-bottom: 20px;
    }
}

@media (max-width: 576px) {
    #top-games .col-6 {
        margin-bottom: 20px;
    }
}

/* BONUS MOVING RIBBON */
.mh-bonus-ribbon {
    width: 100%;
    overflow: hidden;
    padding: 12px 0;
    background: rgba(255, 180, 0, 0.08);
    box-shadow: inset 1px 1px 15px rgba(255, 200, 39, 0.4),
                inset 1px 1px 10px rgba(255, 82, 1, 0.2);
    border-top: 1px solid rgba(255, 200, 39, 0.35);
    border-bottom: 1px solid rgba(255, 200, 39, 0.35);
}

.mh-bonus-track {
    white-space: nowrap;
    display: flex;
    animation: mh-bonus-scroll 18s linear infinite;
}

.mh-bonus-text {
    font-size: 22px;
    font-weight: 800;
    padding-right: 180px; 
    background: linear-gradient(0deg, #ff9c19 40%, #ffdd2d 110%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    letter-spacing: 2px; 
    text-transform: uppercase;
}

/* Animation */
@keyframes mh-bonus-scroll {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

/* NEW GLOW TAGS */
.bonus-tag {
    display: inline-block;
    padding: 6px 14px;
    font-size: 13px;
    font-weight: 700;
    border-radius: 999px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #fff;
    margin-bottom: 12px;
    background: linear-gradient(90deg, #ff9c19 0%, #ffd43b 100%);
    box-shadow: 0 0 14px rgba(255, 175, 0, 0.55), 
                0 0 25px rgba(255, 200, 40, 0.4);
}

/* OPTIONAL COLOR VARIANTS (Matching your examples) */
.bonus-tag.gold {
    background: linear-gradient(90deg, #ff9c19, #ffd43b);
    box-shadow: 0 0 14px rgba(255, 174, 0, .55);
}

.bonus-tag.purple {
    background: linear-gradient(90deg, #ae54ff, #d37bff);
    box-shadow: 0 0 14px rgba(175, 80, 255, .55);
}

.bonus-tag.blue {
    background: linear-gradient(90deg, #28a9ff, #61c8ff);
    box-shadow: 0 0 14px rgba(70, 160, 255, .55);
}

.bonus-tag.red {
    background: linear-gradient(90deg, #ff4141, #ff7b69);
    box-shadow: 0 0 14px rgba(255, 60, 60, .55);
}

.bonus-tag.green {
    background: linear-gradient(90deg, #32d77d, #6dfc9f);
    box-shadow: 0 0 14px rgba(50, 220, 120, .55);
}

/* MAKE BONUS CARD TWO-COLUMN FLEX WRAPPER */
.bonus-card.bonus-flex {
    display: flex;
    align-items: center; 
    justify-content: space-between;
    gap: 40px;

    padding-right: 40px !important;
}

/* LEFT COLUMN */
.bonus-left {
    flex: 1;
}

/* RIGHT COLUMN (IMAGE) */
.bonus-right {
    flex-shrink: 0;
    width: 260px; 
    display: flex;
    justify-content: center;
    align-items: center;
}

.bonus-right img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 0; 
    box-shadow: none; 
    background: transparent;
}


/* MOBILE FIXES */
@media (max-width: 992px) {
    .bonus-card.bonus-flex {
        flex-direction: column;
        text-align: center;
        padding-right: 20px !important;
    }

    .bonus-right {
        width: 65%;
        margin-top: 20px;
    }
}

/* BADGE ROW */
.badge-row {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;
}

/* MAIN BADGES */
.game-badge {
    padding: 8px 20px;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    color: #fff;
    letter-spacing: .5px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* SMALL BADGES (INLINE TAGS) */
.small-badge {
    padding: 4px 12px;
    margin-left: 8px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    color: #fff;
    text-transform: uppercase;
}

/* COLOR VARIANTS */
.badge-gold {
    background: linear-gradient(90deg, #ff9c19, #ffd43b);
    box-shadow: 0 0 12px rgba(255,180,0,.45);
}

.badge-purple {
    background: linear-gradient(90deg, #b457ff, #d88dff);
    box-shadow: 0 0 12px rgba(180,80,255,.45);
}

.badge-blue {
    background: linear-gradient(90deg, #2faaff, #72cdff);
    box-shadow: 0 0 12px rgba(60,165,255,.45);
}

.badge-red {
    background: linear-gradient(90deg, #ff4747, #ff8c6b);
    box-shadow: 0 0 12px rgba(255,70,70,.45);
}

.badge-green {
    background: linear-gradient(90deg, #2ecf6c, #65f9a0);
    box-shadow: 0 0 12px rgba(40,220,120,.45);
}

.adv-card {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.07);
    transition: 0.25s;
}
.adv-card:hover {
    transform: translateY(-6px);
    background: rgba(255, 255, 255, 0.07);
    box-shadow: 0 10px 25px rgba(0,0,0,0.25);
}

.adv-icon svg {
    height: 38px;
    width: 38px;
    filter: drop-shadow(0 0 8px rgba(255,255,255,0.2));
}

.advantages-section .section-title p {
    max-width: 760px;
    margin: 0 auto;
}

/* ============================
   ADVANTAGE CARDS — FIXED HEIGHT + GLOW
   ============================ */

.adv-card {
    background: rgba(255, 255, 255, 0.03);
    border-radius: 14px;
    padding: 30px;
    height: 100%;
    min-height: 240px; 
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    box-shadow: 
        0 0 18px rgba(255, 174, 0, 0.18), 
        0 0 30px rgba(255, 174, 0, 0.10);
    border: 1px solid rgba(255, 200, 40, 0.25);
    transition: 0.25s ease-in-out;
}

/* hover glow */
.adv-card:hover {
    box-shadow: 
        0 0 25px rgba(255, 195, 0, 0.35),
        0 0 45px rgba(255, 195, 0, 0.25);
    transform: translateY(-4px);
}

/* icons inside cards */
.adv-icon svg {
    width: 42px;
    height: 42px;
    stroke-width: 2.2;
    margin-bottom: 12px;
}

/* make titles consistent */
.adv-card h4 {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 12px !important;
}

/* make text consistent */
.adv-card p {
    font-size: 16px;
    line-height: 1.55;
    opacity: 0.9;
}

/* perfect equal-height grid */
.adv-row {
    display: flex;
    flex-wrap: wrap;
    gap: 25px;
}

.adv-col {
    flex: 1 1 calc(33.333% - 25px);
}

@media (max-width: 992px) {
    .adv-col {
        flex: 1 1 calc(50% - 25px);
    }
}
@media (max-width: 576px) {
    .adv-col {
        flex: 1 1 100%;
    }
}

.adv-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 20px;
}

.adv-icon svg {
    display: block;
    margin: 0 auto;
}

/* ============================
   PROMO BANNER
   ============================ */

.mh-promo-banner {
    background: linear-gradient(180deg, #140c23 0%, #0d0818 100%);
    position: relative;
}

.promo-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    padding: 40px 50px;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.02);
    box-shadow:
        0 0 35px rgba(255, 180, 0, 0.18),
        0 0 60px rgba(255, 180, 0, 0.08);
}

/* Left text block */
.promo-content {
    flex: 1;
}

.promo-title {
    font-size: 42px;
    font-weight: 700;
    margin-bottom: 20px;
}

.promo-text {
    font-size: 18px;
    line-height: 1.55;
    opacity: 0.9;
    margin-bottom: 30px;
}

/* Button */
.promo-btn {
    display: inline-block;
    padding: 14px 38px;
    border-radius: 30px;
    background: linear-gradient(90deg, #ff9b19, #ffd92d);
    font-size: 20px;
    font-weight: 700;
    color: #000;
    transition: 0.25s ease-in-out;
}

.promo-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 0 18px rgba(255, 195, 0, 0.9);
}

/* Right image */
.promo-image {
    flex: 0 0 40%;
    text-align: right;
}

.promo-image img {
    max-width: 380px;
    width: 100%;
    transform: translateY(0);
    transition: 0.25s ease;
}

/* hover float effect */
.promo-image img:hover {
    transform: translateY(-4px);
}

/* Responsive */
@media (max-width: 992px) {
    .promo-wrapper {
        flex-direction: column;
        text-align: center;
        padding: 40px 30px;
    }

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

    .promo-title {
        font-size: 34px;
    }
}

.slot-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
}

.slot-badge {
    padding: 8px 18px;
    border-radius: 20px;
    background: rgba(255, 180, 0, 0.12);
    border: 1px solid rgba(255, 200, 40, 0.25);
    color: #ffc041;
    font-size: 15px;
    font-weight: 600;
    text-transform: uppercase;
}

/* Image */
.app-img {
    max-width: 350px;
    filter: drop-shadow(0 0 20px rgba(255,180,0,0.25));
}

/* Feature Items */
.app-features .feat-item {
    display: flex;
    gap: 14px;
    align-items: flex-start;
}

.app-features .feat-text h4 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 3px;
}

/* Stores */
.store-buttons .store-btn {
    max-width: 150px;
    margin-right: 10px;
    cursor: pointer;
    transition: 0.25s ease;
}

.store-buttons .store-btn:hover {
    transform: translateY(-4px);
    filter: drop-shadow(0 0 12px rgba(255,200,40,0.4));
}

/* Ensure equal column height */
.mh-app-section .col-lg-6 {
    display: flex;
    flex-direction: column;
}

@media (max-width: 992px) {
    .mh-app-section .col-lg-6 {
        margin-bottom: 40px;
    }
    .app-img {
        max-width: 260px;
    }
}

.payment-select {
    width: 100%;
    padding: 14px 18px;
    background: #1d1318;
    border: 1px solid #3a3237;
    color: #fff;
    border-radius: 8px;
}

.payment-tabs .pay-tab {
    padding: 10px 26px;
    background: transparent;
    border: 1px solid #6b4a31;
    color: #fff;
    cursor: pointer;
    border-radius: 6px;
    margin: 0 8px;
    transition: .3s;
}

.payment-tabs .pay-tab.active {
    background: #6b4a31;
}

.payment-table {
    display: none;
}

.payment-table.active {
    display: block;
}

.payment-row {
    background: #1b1618;
    padding: 18px 24px;
    margin-bottom: 12px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border: 1px solid #33282c;
}

.pay-icon svg {
    width: 42px;
    height: 42px;
}

.pay-name {
    font-size: 18px;
    color: #fff;
    flex: 1;
    margin-left: 20px;
}

.pay-limit {
    color: #d1c3b5;
    font-weight: 600;
}

/* TRUST SECTION */
.trust-card {
    background: #1b161d;
    border-radius: 14px;
    padding: 30px;
    border: 1px solid rgba(255,255,255,0.08);
    height: 100%;
    transition: 0.3s ease;
    box-shadow: 0 0 20px rgba(255,170,50,0.08);
}

.trust-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 0 28px rgba(255,170,60,0.15);
}

.trust-icon img {
    width: 62px;
    height: 62px;
    margin-bottom: 18px;
    object-fit: contain;
    filter: drop-shadow(0 0 6px rgba(255,200,70,0.5));
}

.trust-title {
    font-size: 24px;
    color: #fff;
    margin-bottom: 12px;
}

.trust-text {
    font-size: 16px;
    color: #d0d0d0;
    line-height: 1.65;
    text-align: left;
}

.stars {
    font-size: 20px;
    letter-spacing: 3px;
    color: #ffcc33;
    margin-top: 12px;
    text-shadow: 0 0 6px rgba(255, 204, 51, 0.6);
}

.footer {
    background: #110d12;
    border-top: 1px solid rgba(255,255,255,0.08);
}

.footer-logo {
    width: 180px;
}

.footer-text {
    color: #c8c8c8;
    font-size: 15px;
    line-height: 1.6;
    max-width: 330px;
}

.footer-title {
    color: #fff;
    font-size: 18px;
    margin-bottom: 15px;
}

.footer-links li {
    list-style: none;
    margin-bottom: 8px;
}

.footer-links a {
    color: #d5d5d5;
    font-size: 15px;
    transition: 0.2s;
}

.footer-links a:hover {
    color: #ffb028;
}

.footer-payments img {
    width: 55px;
    height: 35px;
    object-fit: contain;
    margin: 6px;
    filter: brightness(0.95);
    transition: 0.3s;
}

.footer-payments img:hover {
    filter: brightness(1.2);
}

.footer-warning {
    color: #bdbdbd;
    font-size: 14px;
    line-height: 1.6;
}

.footer-warning a {
    color: #ffb028;
}

.copy-right p {
    color: #bdbdbd;
    font-size: 14px;
    margin-top: 10px;
}


/* ===================================
   NORTHERN LIGHTS ABOUT SECTION
=================================== */

.nl-about-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 10% 18%, rgba(255,156,25,.15), transparent 30%),
        radial-gradient(circle at 90% 82%, rgba(255,221,45,.10), transparent 32%);
}

.nl-about-section::before{
    content:"";
    position:absolute;
    top:70px;
    right:-160px;
    width:360px;
    height:360px;
    border-radius:50%;
    background:rgba(255,190,35,.07);
    filter:blur(18px);
    pointer-events:none;
}

.nl-about-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.nl-section-kicker,
.nl-small-label{
    display:inline-block;
    margin-bottom:16px;
    font-size:14px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.nl-about-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.nl-about-heading p{
    max-width:840px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

.nl-about-main{
    margin-bottom:45px;
}

.nl-about-photo{
    position:relative;
    overflow:hidden;
    border-radius:28px;
    background:rgba(255,255,255,.04);
    border:1px solid rgba(255,200,40,.22);
    box-shadow:
        0 26px 70px rgba(0,0,0,.42),
        0 0 45px rgba(255,176,40,.12);
}

.nl-about-photo img{
    width:100%;
    min-height:520px;
    object-fit:cover;
    display:block;
    transition:.45s ease;
}

.nl-about-photo:hover img{
    transform:scale(1.04);
}

.nl-about-photo::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg, transparent 42%, rgba(0,0,0,.72));
}

.nl-photo-caption{
    position:absolute;
    left:28px;
    bottom:28px;
    z-index:2;
    padding:18px 24px;
    border-radius:18px;
    background:rgba(15,12,18,.88);
    border:1px solid rgba(255,200,40,.34);
    box-shadow:0 0 28px rgba(255,180,40,.18);
}

.nl-photo-caption span{
    display:block;
    font-size:13px;
    text-transform:uppercase;
    letter-spacing:1.4px;
    color:rgba(255,255,255,.64);
}

.nl-photo-caption strong{
    display:block;
    margin-top:4px;
    font-size:24px;
    color:#fff;
}

.nl-about-story{
    padding-left:28px;
}

.nl-about-story h3,
.nl-text-block h3,
.nl-key-block h3{
    font-size:34px;
    line-height:1.28;
    margin-bottom:24px;
}

.nl-about-story p,
.nl-text-block p{
    font-size:17px;
    line-height:1.95;
    color:rgba(255,255,255,.80);
    margin-bottom:20px;
}

.nl-info-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
    margin:15px 0 65px;
}

.nl-info-card{
    position:relative;
    min-height:315px;
    padding:34px 26px;
    border-radius:24px;
    background:
        linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.13),
        0 16px 35px rgba(0,0,0,.24);
    transition:.35s ease;
}

.nl-info-card:hover{
    transform:translateY(-8px);
    border-color:rgba(255,200,40,.35);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 22px 48px rgba(0,0,0,.32),
        0 0 28px rgba(255,180,40,.12);
}

.nl-info-icon{
    width:70px;
    height:70px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:24px;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 26px rgba(255,190,40,.30);
}

.nl-info-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.nl-info-card h4{
    font-size:22px;
    line-height:1.3;
    margin-bottom:14px;
}

.nl-info-card p{
    font-size:15.5px;
    line-height:1.75;
    color:rgba(255,255,255,.76);
}

.nl-about-details{
    margin-top:5px;
}

.nl-text-block,
.nl-key-block{
    height:100%;
    border-radius:28px;
    background:rgba(255,255,255,.035);
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        0 22px 55px rgba(0,0,0,.28),
        inset 1px 1px 18px rgba(255,200,39,.10);
}

.nl-text-block{
    padding:44px;
}

.nl-key-block{
    padding:40px;
    background:
        linear-gradient(180deg, rgba(255,156,25,.13), rgba(255,255,255,.035));
    border-color:rgba(255,200,40,.23);
}

.nl-key-row{
    display:flex;
    justify-content:space-between;
    gap:22px;
    padding:18px 0;
    border-bottom:1px solid rgba(255,255,255,.09);
}

.nl-key-row:last-child{
    border-bottom:none;
    padding-bottom:0;
}

.nl-key-row span{
    min-width:120px;
    color:rgba(255,255,255,.58);
    font-size:14px;
    text-transform:uppercase;
    letter-spacing:.9px;
}

.nl-key-row strong{
    max-width:300px;
    text-align:right;
    color:#fff;
    font-size:16px;
    line-height:1.55;
}

@media (max-width:1199px){
    .nl-info-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .nl-info-card{
        min-height:260px;
    }
}

@media (max-width:991px){
    .nl-about-heading h2{
        font-size:38px;
    }

    .nl-about-story{
        padding-left:0;
    }

    .nl-about-photo img{
        min-height:420px;
    }

    .nl-about-story,
    .nl-text-block,
    .nl-key-block,
    .nl-info-card{
        text-align:center;
    }

    .nl-info-icon{
        margin-left:auto;
        margin-right:auto;
    }
}

@media (max-width:576px){
    .nl-about-heading h2{
        font-size:31px;
    }

    .nl-about-heading p,
    .nl-about-story p,
    .nl-text-block p{
        font-size:16px;
        line-height:1.8;
    }

    .nl-info-grid{
        grid-template-columns:1fr;
    }

    .nl-about-photo img{
        min-height:320px;
    }

    .nl-text-block,
    .nl-key-block{
        padding:28px 22px;
    }

    .nl-key-row{
        display:block;
        text-align:left;
    }

    .nl-key-row strong{
        display:block;
        max-width:none;
        text-align:left;
        margin-top:7px;
    }
}

/* ===================================
   CASINO FLOOR SECTION
=================================== */

.nl-floor-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 8% 18%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 92% 82%, rgba(255,221,45,.09), transparent 34%);
}

.nl-floor-section::before{
    content:"";
    position:absolute;
    left:-180px;
    top:160px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(255,180,35,.07);
    filter:blur(25px);
    pointer-events:none;
}

.nl-floor-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.nl-section-kicker,
.nl-small-label{
    display:inline-block;
    margin-bottom:16px;
    font-size:14px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.nl-floor-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.nl-floor-heading p{
    max-width:850px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

/* MAIN HERO BLOCK */

.nl-floor-hero{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:34px;
    align-items:stretch;
    margin-bottom:34px;
}

.nl-floor-image,
.nl-floor-panel{
    min-height:520px;
    border-radius:28px;
}

.nl-floor-image{
    position:relative;
    overflow:hidden;
    border:1px solid rgba(255,200,40,.22);
    background:rgba(255,255,255,.04);
    box-shadow:
        0 24px 65px rgba(0,0,0,.36),
        0 0 42px rgba(255,180,40,.10);
}

.nl-floor-image::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg, transparent 48%, rgba(0,0,0,.62));
}

.nl-floor-image img{
    width:100%;
    height:100%;
    min-height:520px;
    object-fit:cover;
    display:block;
    transition:.45s ease;
}

.nl-floor-image:hover img{
    transform:scale(1.04);
}

.nl-floor-panel{
    padding:46px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    background:
        linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 22px 55px rgba(0,0,0,.28);
}

.nl-floor-panel h3{
    font-size:36px;
    line-height:1.25;
    margin-bottom:24px;
}

.nl-floor-panel p{
    font-size:17px;
    line-height:1.95;
    color:rgba(255,255,255,.80);
    margin-bottom:20px;
}

.nl-floor-panel p:last-child{
    margin-bottom:0;
}

/* HARMONIZED CARDS */

.nl-floor-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:34px;
}

.nl-floor-card{
    min-height:300px;
    padding:32px 28px;
    border-radius:26px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    background:
        linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 18px 38px rgba(0,0,0,.24);
    transition:.35s ease;
}

.nl-floor-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 24px 50px rgba(0,0,0,.33),
        0 0 30px rgba(255,180,40,.11);
}

.nl-floor-card-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:24px;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.nl-floor-card-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.nl-floor-card h4{
    min-height:58px;
    display:flex;
    align-items:flex-start;
    margin-bottom:14px;
    font-size:23px;
    line-height:1.28;
}

.nl-floor-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

/* SUMMARY BAR */

.nl-floor-summary{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
    padding:24px;
    border-radius:28px;
    background:
        linear-gradient(135deg, rgba(255,156,25,.12), rgba(255,255,255,.035));
    border:1px solid rgba(255,200,40,.23);
    box-shadow:
        0 22px 55px rgba(0,0,0,.28),
        inset 1px 1px 18px rgba(255,200,39,.10);
}

.nl-floor-summary-item{
    min-height:110px;
    padding:22px;
    border-radius:20px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.nl-floor-summary-item span{
    display:block;
    margin-bottom:8px;
    font-size:13px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.2px;
    color:rgba(255,255,255,.58);
}

.nl-floor-summary-item strong{
    display:block;
    font-size:18px;
    line-height:1.35;
    color:#fff;
}

@media (max-width:1199px){
    .nl-floor-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .nl-floor-summary{
        grid-template-columns:repeat(2,1fr);
    }
}

@media (max-width:991px){
    .nl-floor-heading h2{
        font-size:38px;
    }

    .nl-floor-hero{
        grid-template-columns:1fr;
    }

    .nl-floor-image,
    .nl-floor-panel{
        min-height:auto;
    }

    .nl-floor-image img{
        min-height:420px;
    }

    .nl-floor-panel{
        text-align:center;
        padding:38px 30px;
    }

    .nl-floor-card{
        align-items:center;
        text-align:center;
    }

    .nl-floor-card h4{
        justify-content:center;
        min-height:auto;
    }
}

@media (max-width:576px){
    .nl-floor-heading h2{
        font-size:31px;
    }

    .nl-floor-heading p,
    .nl-floor-panel p{
        font-size:16px;
        line-height:1.8;
    }

    .nl-floor-grid,
    .nl-floor-summary{
        grid-template-columns:1fr;
    }

    .nl-floor-image img{
        min-height:320px;
    }

    .nl-floor-panel{
        padding:30px 22px;
    }

    .nl-floor-card{
        min-height:auto;
        padding:30px 24px;
    }

    .nl-floor-summary{
        padding:18px;
    }
}

/* ===================================
   SLOT MACHINES SECTION
=================================== */

.nl-slots-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 15%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 78%, rgba(255,221,45,.09), transparent 34%);
}

.nl-slots-section::before{
    content:"";
    position:absolute;
    right:-180px;
    top:140px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(255,180,35,.07);
    filter:blur(25px);
    pointer-events:none;
}

.nl-slots-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.nl-slots-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.nl-slots-heading p{
    max-width:850px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

.nl-slots-intro{
    display:grid;
    grid-template-columns:1.5fr .5fr;
    gap:28px;
    align-items:stretch;
    margin-bottom:34px;
}

.nl-slots-text,
.nl-slots-number,
.nl-slot-card,
.nl-denom-panel{
    border-radius:28px;
    background:
        linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 18px 38px rgba(0,0,0,.24);
}

.nl-slots-text{
    padding:44px;
}

.nl-slots-text h3{
    font-size:36px;
    line-height:1.25;
    margin-bottom:24px;
}

.nl-slots-text p{
    font-size:17px;
    line-height:1.95;
    color:rgba(255,255,255,.80);
    margin-bottom:20px;
}

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

.nl-slots-number{
    min-height:100%;
    padding:34px 28px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    text-align:center;
    background:
        linear-gradient(150deg, rgba(255,156,25,.16), rgba(255,255,255,.035));
    border-color:rgba(255,200,40,.24);
}

.nl-slots-number span{
    display:block;
    margin-bottom:10px;
    font-size:14px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.4px;
    color:rgba(255,255,255,.62);
}

.nl-slots-number strong{
    display:block;
    font-size:78px;
    line-height:1;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.nl-slots-number p{
    max-width:260px;
    margin:18px auto 0;
    font-size:15.5px;
    line-height:1.7;
    color:rgba(255,255,255,.76);
}

.nl-slots-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:34px;
}

.nl-slot-card{
    min-height:315px;
    padding:32px 28px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    transition:.35s ease;
}

.nl-slot-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 24px 50px rgba(0,0,0,.33),
        0 0 30px rgba(255,180,40,.11);
}

.nl-slot-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:24px;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.nl-slot-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.nl-slot-card h4{
    min-height:58px;
    display:flex;
    align-items:flex-start;
    margin-bottom:14px;
    font-size:23px;
    line-height:1.28;
}

.nl-slot-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

.nl-denom-panel{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:30px;
    align-items:center;
    padding:38px 40px;
    background:
        linear-gradient(135deg, rgba(255,156,25,.12), rgba(255,255,255,.035));
    border-color:rgba(255,200,40,.23);
}

.nl-denom-content h3{
    font-size:34px;
    line-height:1.28;
    margin-bottom:18px;
}

.nl-denom-content p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.nl-denom-list{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:14px;
}

.nl-denom-list span{
    min-width:105px;
    padding:17px 20px;
    border-radius:18px;
    text-align:center;
    font-size:22px;
    font-weight:900;
    color:#151016;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    box-shadow:0 0 24px rgba(255,190,40,.22);
}

@media (max-width:1199px){
    .nl-slots-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media (max-width:991px){
    .nl-slots-heading h2{
        font-size:38px;
    }

    .nl-slots-intro,
    .nl-denom-panel{
        grid-template-columns:1fr;
    }

    .nl-slots-text,
    .nl-denom-content{
        text-align:center;
    }

    .nl-slot-card{
        align-items:center;
        text-align:center;
    }

    .nl-slot-card h4{
        justify-content:center;
        min-height:auto;
    }

    .nl-denom-list{
        justify-content:center;
    }
}

@media (max-width:576px){
    .nl-slots-heading h2{
        font-size:31px;
    }

    .nl-slots-heading p,
    .nl-slots-text p,
    .nl-denom-content p{
        font-size:16px;
        line-height:1.8;
    }

    .nl-slots-grid{
        grid-template-columns:1fr;
    }

    .nl-slots-text,
    .nl-denom-panel{
        padding:30px 22px;
    }

    .nl-slot-card{
        min-height:auto;
        padding:30px 24px;
    }

    .nl-slots-number strong{
        font-size:64px;
    }

    .nl-denom-list span{
        min-width:88px;
        font-size:19px;
    }
}

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

.nl-tables-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 16%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 78%, rgba(255,221,45,.09), transparent 34%);
}

.nl-tables-section::before{
    content:"";
    position:absolute;
    left:-180px;
    bottom:120px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(255,180,35,.07);
    filter:blur(25px);
    pointer-events:none;
}

.nl-tables-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.nl-tables-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.nl-tables-heading p{
    max-width:850px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

.nl-tables-board{
    display:grid;
    grid-template-columns:.86fr 1.14fr;
    gap:28px;
    align-items:stretch;
    margin-bottom:32px;
}

.nl-tables-intro,
.nl-table-game-card,
.nl-table-flow-card{
    border-radius:28px;
    background:
        linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 18px 38px rgba(0,0,0,.24);
}

.nl-tables-intro{
    padding:44px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.nl-tables-intro-icon,
.nl-table-game-icon,
.nl-table-flow-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.nl-tables-intro-icon{
    margin-bottom:24px;
}

.nl-tables-intro-icon svg,
.nl-table-game-icon svg,
.nl-table-flow-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.nl-tables-intro h3{
    font-size:36px;
    line-height:1.25;
    margin-bottom:24px;
}

.nl-tables-intro p{
    font-size:17px;
    line-height:1.95;
    color:rgba(255,255,255,.80);
    margin-bottom:20px;
}

.nl-tables-intro p:last-child{
    margin-bottom:0;
}

.nl-table-games-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:22px;
}

.nl-table-game-card{
    min-height:260px;
    padding:28px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    transition:.35s ease;
}

.nl-table-game-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 24px 50px rgba(0,0,0,.33),
        0 0 30px rgba(255,180,40,.11);
}

.nl-table-game-icon{
    margin-bottom:22px;
}

.nl-table-game-card h4{
    min-height:58px;
    display:flex;
    align-items:flex-start;
    margin-bottom:12px;
    font-size:22px;
    line-height:1.28;
}

.nl-table-game-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.75;
    color:rgba(255,255,255,.76);
}

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

.nl-table-flow-card{
    min-height:245px;
    padding:32px 28px;
    text-align:center;
    transition:.35s ease;
}

.nl-table-flow-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 24px 50px rgba(0,0,0,.33),
        0 0 30px rgba(255,180,40,.11);
}

.nl-table-flow-icon{
    margin:0 auto 22px;
}

.nl-table-flow-card h4{
    margin-bottom:12px;
    font-size:22px;
    line-height:1.28;
}

.nl-table-flow-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.75;
    color:rgba(255,255,255,.76);
}

@media (max-width:1199px){
    .nl-tables-board{
        grid-template-columns:1fr;
    }
}

@media (max-width:991px){
    .nl-tables-heading h2{
        font-size:38px;
    }

    .nl-tables-intro{
        text-align:center;
        align-items:center;
    }

    .nl-table-game-card{
        align-items:center;
        text-align:center;
    }

    .nl-table-game-card h4{
        justify-content:center;
        min-height:auto;
    }

    .nl-table-flow{
        grid-template-columns:1fr;
    }
}

@media (max-width:576px){
    .nl-tables-heading h2{
        font-size:31px;
    }

    .nl-tables-heading p,
    .nl-tables-intro p{
        font-size:16px;
        line-height:1.8;
    }

    .nl-table-games-grid{
        grid-template-columns:1fr;
    }

    .nl-tables-intro,
    .nl-table-game-card,
    .nl-table-flow-card{
        padding:30px 24px;
        min-height:auto;
    }
}

/* ===================================
   PROMOTIONS SECTION
=================================== */

.nl-promos-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 16%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 82%, rgba(255,221,45,.09), transparent 34%);
}

.nl-promos-section::before{
    content:"";
    position:absolute;
    right:-180px;
    top:140px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(255,180,35,.07);
    filter:blur(25px);
    pointer-events:none;
}

.nl-promos-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.nl-promos-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.nl-promos-heading p{
    max-width:860px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

.nl-promos-hero{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:28px;
    align-items:stretch;
    margin-bottom:34px;
}

.nl-promos-main,
.nl-status-card,
.nl-promo-card,
.nl-promo-detail-card,
.nl-promos-note{
    border-radius:28px;
    background:
        linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 18px 38px rgba(0,0,0,.24);
}

.nl-promos-main{
    padding:44px;
}

.nl-promos-icon,
.nl-promo-card-icon,
.nl-detail-icon,
.nl-note-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.nl-promos-icon{
    margin-bottom:24px;
}

.nl-promos-icon svg,
.nl-promo-card-icon svg,
.nl-detail-icon svg,
.nl-note-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.nl-promos-main h3{
    font-size:36px;
    line-height:1.25;
    margin-bottom:24px;
}

.nl-promos-main p{
    font-size:17px;
    line-height:1.95;
    color:rgba(255,255,255,.80);
    margin-bottom:20px;
}

.nl-promos-main p:last-child{
    margin-bottom:0;
}

.nl-promos-status{
    display:grid;
    grid-template-columns:1fr;
    gap:18px;
}

.nl-status-card{
    padding:28px;
    background:
        linear-gradient(135deg, rgba(255,156,25,.12), rgba(255,255,255,.035));
    border-color:rgba(255,200,40,.22);
}

.nl-status-card span{
    display:block;
    margin-bottom:8px;
    font-size:13px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.2px;
    color:rgba(255,255,255,.58);
}

.nl-status-card strong{
    display:block;
    margin-bottom:10px;
    font-size:24px;
    line-height:1.25;
    color:#fff;
}

.nl-status-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.75;
    color:rgba(255,255,255,.76);
}

.nl-promos-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:34px;
}

.nl-promo-card{
    min-height:315px;
    padding:32px 28px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    transition:.35s ease;
}

.nl-promo-card:hover,
.nl-promo-detail-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 24px 50px rgba(0,0,0,.33),
        0 0 30px rgba(255,180,40,.11);
}

.nl-promo-card-icon{
    margin-bottom:24px;
}

.nl-promo-card h4{
    min-height:58px;
    display:flex;
    align-items:flex-start;
    margin-bottom:14px;
    font-size:23px;
    line-height:1.28;
}

.nl-promo-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

.nl-promos-details{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:24px;
    margin-bottom:34px;
}

.nl-promo-detail-card{
    min-height:330px;
    padding:38px;
    transition:.35s ease;
}

.nl-detail-icon{
    margin-bottom:24px;
}

.nl-promo-detail-card h3{
    font-size:30px;
    line-height:1.3;
    margin-bottom:18px;
}

.nl-promo-detail-card p{
    margin:0;
    font-size:16.5px;
    line-height:1.9;
    color:rgba(255,255,255,.78);
}

.nl-promos-note{
    display:flex;
    gap:26px;
    align-items:flex-start;
    padding:36px 40px;
    background:
        linear-gradient(135deg, rgba(255,156,25,.12), rgba(255,255,255,.035));
    border-color:rgba(255,200,40,.23);
}

.nl-note-icon{
    margin-top:4px;
}

.nl-promos-note h3{
    font-size:30px;
    line-height:1.3;
    margin-bottom:14px;
}

.nl-promos-note p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

@media (max-width:1199px){
    .nl-promos-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media (max-width:991px){
    .nl-promos-heading h2{
        font-size:38px;
    }

    .nl-promos-hero,
    .nl-promos-details{
        grid-template-columns:1fr;
    }

    .nl-promos-main,
    .nl-promo-card,
    .nl-promo-detail-card,
    .nl-promos-note{
        text-align:center;
        align-items:center;
    }

    .nl-promos-icon,
    .nl-promo-card-icon,
    .nl-detail-icon,
    .nl-note-icon{
        margin-left:auto;
        margin-right:auto;
    }

    .nl-promo-card h4{
        justify-content:center;
        min-height:auto;
    }

    .nl-promos-note{
        display:block;
    }

    .nl-note-icon{
        margin-bottom:22px;
    }
}

@media (max-width:576px){
    .nl-promos-heading h2{
        font-size:31px;
    }

    .nl-promos-heading p,
    .nl-promos-main p,
    .nl-promo-detail-card p,
    .nl-promos-note p{
        font-size:16px;
        line-height:1.8;
    }

    .nl-promos-grid{
        grid-template-columns:1fr;
    }

    .nl-promos-main,
    .nl-promo-card,
    .nl-promo-detail-card,
    .nl-promos-note{
        padding:30px 24px;
        min-height:auto;
    }
}

/* ===================================
   SIGA REWARDS SECTION
=================================== */

.nl-rewards-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 16%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 82%, rgba(255,221,45,.09), transparent 34%);
}

.nl-rewards-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.nl-rewards-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.nl-rewards-heading p{
    max-width:860px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

.nl-rewards-hero{
    display:grid;
    grid-template-columns:1.25fr .75fr;
    gap:28px;
    margin-bottom:34px;
}

.nl-rewards-main,
.nl-rewards-app,
.nl-tier-card,
.nl-benefit-card,
.nl-rewards-note{
    border-radius:28px;
    background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
    border:1px solid rgba(255,255,255,.08);
    box-shadow:inset 1px 1px 18px rgba(255,200,39,.12), 0 18px 38px rgba(0,0,0,.24);
}

.nl-rewards-main{
    padding:44px;
}

.nl-rewards-app{
    padding:38px;
    background:linear-gradient(135deg, rgba(255,156,25,.13), rgba(255,255,255,.035));
    border-color:rgba(255,200,40,.23);
}

.nl-rewards-icon,
.nl-app-icon,
.nl-tier-icon,
.nl-benefit-icon,
.nl-note-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
    margin-bottom:24px;
}

.nl-rewards-icon svg,
.nl-app-icon svg,
.nl-tier-icon svg,
.nl-benefit-icon svg,
.nl-note-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.nl-rewards-main h3,
.nl-rewards-app h3{
    font-size:34px;
    line-height:1.28;
    margin-bottom:20px;
}

.nl-rewards-main p,
.nl-rewards-app p{
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
    margin-bottom:18px;
}

.nl-rewards-main p:last-child,
.nl-rewards-app p:last-child{
    margin-bottom:0;
}

.nl-tier-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
    margin-bottom:34px;
}

.nl-tier-card{
    min-height:350px;
    padding:32px 26px;
    transition:.35s ease;
}

.nl-tier-card:hover,
.nl-benefit-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:inset 1px 1px 24px rgba(255,200,39,.18), 0 24px 50px rgba(0,0,0,.33), 0 0 30px rgba(255,180,40,.11);
}

.nl-tier-card span{
    display:block;
    min-height:42px;
    margin-bottom:12px;
    font-size:13px;
    font-weight:800;
    letter-spacing:1.1px;
    text-transform:uppercase;
    color:rgba(255,255,255,.58);
}

.nl-tier-card h4{
    margin-bottom:14px;
    font-size:27px;
    line-height:1.25;
}

.nl-tier-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

.nl-rewards-benefits{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:34px;
}

.nl-benefit-card{
    min-height:315px;
    padding:32px 28px;
    transition:.35s ease;
}

.nl-benefit-card h4{
    min-height:58px;
    display:flex;
    align-items:flex-start;
    margin-bottom:14px;
    font-size:23px;
    line-height:1.28;
}

.nl-benefit-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

.nl-rewards-note{
    display:flex;
    gap:26px;
    align-items:flex-start;
    padding:36px 40px;
    background:linear-gradient(135deg, rgba(255,156,25,.12), rgba(255,255,255,.035));
    border-color:rgba(255,200,40,.23);
}

.nl-note-icon{
    margin-bottom:0;
}

.nl-rewards-note h3{
    font-size:30px;
    line-height:1.3;
    margin-bottom:14px;
}

.nl-rewards-note p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

@media (max-width:1199px){
    .nl-tier-grid,
    .nl-rewards-benefits{
        grid-template-columns:repeat(2,1fr);
    }
}

@media (max-width:991px){
    .nl-rewards-heading h2{
        font-size:38px;
    }

    .nl-rewards-hero{
        grid-template-columns:1fr;
    }

    .nl-rewards-main,
    .nl-rewards-app,
    .nl-tier-card,
    .nl-benefit-card,
    .nl-rewards-note{
        text-align:center;
        align-items:center;
    }

    .nl-rewards-icon,
    .nl-app-icon,
    .nl-tier-icon,
    .nl-benefit-icon,
    .nl-note-icon{
        margin-left:auto;
        margin-right:auto;
    }

    .nl-benefit-card h4{
        justify-content:center;
        min-height:auto;
    }

    .nl-rewards-note{
        display:block;
    }

    .nl-note-icon{
        margin-bottom:22px;
    }
}

@media (max-width:576px){
    .nl-rewards-heading h2{
        font-size:31px;
    }

    .nl-rewards-heading p,
    .nl-rewards-main p,
    .nl-rewards-app p,
    .nl-rewards-note p{
        font-size:16px;
        line-height:1.8;
    }

    .nl-tier-grid,
    .nl-rewards-benefits{
        grid-template-columns:1fr;
    }

    .nl-rewards-main,
    .nl-rewards-app,
    .nl-tier-card,
    .nl-benefit-card,
    .nl-rewards-note{
        padding:30px 24px;
        min-height:auto;
    }
}

/* ===================================
   DINING SECTION
=================================== */

.nl-dining-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 16%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 82%, rgba(255,221,45,.09), transparent 34%);
}

.nl-dining-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.nl-dining-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.nl-dining-heading p{
    max-width:860px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

.nl-dining-hero{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:34px;
    align-items:stretch;
    margin-bottom:34px;
}

.nl-dining-image,
.nl-dining-intro,
.nl-dining-card,
.nl-drinks-panel,
.nl-dining-note{
    border-radius:28px;
    background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
    border:1px solid rgba(255,255,255,.08);
    box-shadow:inset 1px 1px 18px rgba(255,200,39,.12), 0 18px 38px rgba(0,0,0,.24);
}

.nl-dining-image{
    position:relative;
    overflow:hidden;
    min-height:520px;
    border-color:rgba(255,200,40,.22);
}

.nl-dining-image img{
    width:100%;
    height:100%;
    min-height:520px;
    object-fit:cover;
    display:block;
    transition:.45s ease;
}

.nl-dining-image:hover img{
    transform:scale(1.04);
}

.nl-dining-image::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg, transparent 45%, rgba(0,0,0,.72));
}

.nl-dining-image-badge{
    position:absolute;
    left:28px;
    bottom:28px;
    z-index:2;
    padding:18px 24px;
    border-radius:18px;
    background:rgba(15,12,18,.88);
    border:1px solid rgba(255,200,40,.34);
    box-shadow:0 0 28px rgba(255,180,40,.18);
}

.nl-dining-image-badge span{
    display:block;
    font-size:13px;
    text-transform:uppercase;
    letter-spacing:1.4px;
    color:rgba(255,255,255,.64);
}

.nl-dining-image-badge strong{
    display:block;
    margin-top:4px;
    font-size:24px;
    color:#fff;
}

.nl-dining-intro{
    padding:46px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.nl-dining-icon,
.nl-dining-card-icon,
.nl-note-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
    margin-bottom:24px;
}

.nl-dining-icon svg,
.nl-dining-card-icon svg,
.nl-note-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.nl-dining-intro h3{
    font-size:36px;
    line-height:1.25;
    margin-bottom:24px;
}

.nl-dining-intro p{
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
    margin-bottom:18px;
}

.nl-dining-intro p:last-child{
    margin-bottom:0;
}

.nl-dining-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:34px;
}

.nl-dining-card{
    min-height:330px;
    padding:32px 28px;
    transition:.35s ease;
}

.nl-dining-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:inset 1px 1px 24px rgba(255,200,39,.18), 0 24px 50px rgba(0,0,0,.33), 0 0 30px rgba(255,180,40,.11);
}

.nl-dining-card h4{
    min-height:58px;
    display:flex;
    align-items:flex-start;
    margin-bottom:14px;
    font-size:23px;
    line-height:1.28;
}

.nl-dining-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

.nl-drinks-panel{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:30px;
    align-items:center;
    padding:40px;
    margin-bottom:34px;
    background:linear-gradient(135deg, rgba(255,156,25,.12), rgba(255,255,255,.035));
    border-color:rgba(255,200,40,.23);
}

.nl-drinks-content h3{
    font-size:34px;
    line-height:1.28;
    margin-bottom:18px;
}

.nl-drinks-content p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.nl-drinks-list{
    display:grid;
    grid-template-columns:1fr;
    gap:16px;
}

.nl-drink-item{
    display:grid;
    grid-template-columns:58px 160px 1fr;
    gap:18px;
    align-items:center;
    padding:18px 20px;
    border-radius:18px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.nl-drink-item span{
    width:48px;
    height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:15px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    font-weight:900;
}

.nl-drink-item strong{
    font-size:18px;
    color:#fff;
}

.nl-drink-item p{
    margin:0;
    font-size:15px;
    line-height:1.6;
    color:rgba(255,255,255,.72);
}

.nl-dining-note{
    display:flex;
    gap:26px;
    align-items:flex-start;
    padding:36px 40px;
    background:linear-gradient(135deg, rgba(255,156,25,.12), rgba(255,255,255,.035));
    border-color:rgba(255,200,40,.23);
}

.nl-note-icon{
    margin-bottom:0;
}

.nl-dining-note h3{
    font-size:30px;
    line-height:1.3;
    margin-bottom:14px;
}

.nl-dining-note p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

@media (max-width:1199px){
    .nl-dining-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .nl-drink-item{
        grid-template-columns:58px 1fr;
    }

    .nl-drink-item p{
        grid-column:2;
    }
}

@media (max-width:991px){
    .nl-dining-heading h2{
        font-size:38px;
    }

    .nl-dining-hero,
    .nl-drinks-panel{
        grid-template-columns:1fr;
    }

    .nl-dining-intro,
    .nl-dining-card,
    .nl-drinks-content,
    .nl-dining-note{
        text-align:center;
        align-items:center;
    }

    .nl-dining-icon,
    .nl-dining-card-icon,
    .nl-note-icon{
        margin-left:auto;
        margin-right:auto;
    }

    .nl-dining-card h4{
        justify-content:center;
        min-height:auto;
    }

    .nl-dining-note{
        display:block;
    }

    .nl-note-icon{
        margin-bottom:22px;
    }
}

@media (max-width:576px){
    .nl-dining-heading h2{
        font-size:31px;
    }

    .nl-dining-heading p,
    .nl-dining-intro p,
    .nl-drinks-content p,
    .nl-dining-note p{
        font-size:16px;
        line-height:1.8;
    }

    .nl-dining-grid{
        grid-template-columns:1fr;
    }

    .nl-dining-image,
    .nl-dining-image img{
        min-height:320px;
    }

    .nl-dining-intro,
    .nl-dining-card,
    .nl-drinks-panel,
    .nl-dining-note{
        padding:30px 24px;
        min-height:auto;
    }

    .nl-drink-item{
        grid-template-columns:1fr;
        text-align:center;
    }

    .nl-drink-item span{
        margin:0 auto;
    }

    .nl-drink-item p{
        grid-column:auto;
    }
}

/* ===================================
   ENTERTAINMENT & EVENTS SECTION
=================================== */

.nl-events-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 16%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 82%, rgba(255,221,45,.09), transparent 34%);
}

.nl-events-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.nl-events-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.nl-events-heading p{
    max-width:860px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

.nl-events-board{
    display:grid;
    grid-template-columns:1.15fr .85fr;
    gap:28px;
    margin-bottom:34px;
}

.nl-events-main,
.nl-event-line,
.nl-event-card,
.nl-events-note{
    border-radius:28px;
    background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
    border:1px solid rgba(255,255,255,.08);
    box-shadow:inset 1px 1px 18px rgba(255,200,39,.12), 0 18px 38px rgba(0,0,0,.24);
}

.nl-events-main{
    padding:44px;
}

.nl-events-icon,
.nl-event-line-icon,
.nl-event-card-icon,
.nl-note-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
    margin-bottom:24px;
}

.nl-events-icon svg,
.nl-event-line-icon svg,
.nl-event-card-icon svg,
.nl-note-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.nl-events-main h3{
    font-size:36px;
    line-height:1.25;
    margin-bottom:24px;
}

.nl-events-main p{
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
    margin-bottom:18px;
}

.nl-events-main p:last-child{
    margin-bottom:0;
}

.nl-events-list{
    display:grid;
    gap:18px;
}

.nl-event-line{
    display:flex;
    gap:22px;
    align-items:center;
    padding:26px;
    transition:.35s ease;
}

.nl-event-line:hover,
.nl-event-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:inset 1px 1px 24px rgba(255,200,39,.18), 0 24px 50px rgba(0,0,0,.33), 0 0 30px rgba(255,180,40,.11);
}

.nl-event-line-icon{
    margin-bottom:0;
}

.nl-event-line h4{
    margin-bottom:8px;
    font-size:22px;
    line-height:1.28;
}

.nl-event-line p{
    margin:0;
    font-size:15.5px;
    line-height:1.7;
    color:rgba(255,255,255,.74);
}

.nl-events-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:34px;
}

.nl-event-card{
    min-height:315px;
    padding:32px 28px;
    transition:.35s ease;
}

.nl-event-card h4{
    min-height:58px;
    display:flex;
    align-items:flex-start;
    margin-bottom:14px;
    font-size:23px;
    line-height:1.28;
}

.nl-event-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

.nl-events-note{
    display:flex;
    gap:26px;
    align-items:flex-start;
    padding:36px 40px;
    background:linear-gradient(135deg, rgba(255,156,25,.12), rgba(255,255,255,.035));
    border-color:rgba(255,200,40,.23);
}

.nl-note-icon{
    margin-bottom:0;
}

.nl-events-note h3{
    font-size:30px;
    line-height:1.3;
    margin-bottom:14px;
}

.nl-events-note p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

@media (max-width:1199px){
    .nl-events-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media (max-width:991px){
    .nl-events-heading h2{
        font-size:38px;
    }

    .nl-events-board{
        grid-template-columns:1fr;
    }

    .nl-events-main,
    .nl-event-card,
    .nl-events-note{
        text-align:center;
        align-items:center;
    }

    .nl-events-icon,
    .nl-event-card-icon,
    .nl-note-icon{
        margin-left:auto;
        margin-right:auto;
    }

    .nl-event-card h4{
        justify-content:center;
        min-height:auto;
    }

    .nl-events-note{
        display:block;
    }

    .nl-note-icon{
        margin-bottom:22px;
    }
}

@media (max-width:576px){
    .nl-events-heading h2{
        font-size:31px;
    }

    .nl-events-heading p,
    .nl-events-main p,
    .nl-events-note p{
        font-size:16px;
        line-height:1.8;
    }

    .nl-events-grid{
        grid-template-columns:1fr;
    }

    .nl-events-main,
    .nl-event-card,
    .nl-events-note{
        padding:30px 24px;
        min-height:auto;
    }

    .nl-event-line{
        display:block;
        text-align:center;
    }

    .nl-event-line-icon{
        margin:0 auto 20px;
    }
}

/* ===================================
   PLAN YOUR VISIT SECTION
=================================== */

.nl-visit-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 16%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 82%, rgba(255,221,45,.09), transparent 34%);
}

.nl-visit-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.nl-visit-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.nl-visit-heading p{
    max-width:860px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

.nl-visit-hero{
    display:grid;
    grid-template-columns:1.15fr .85fr;
    gap:28px;
    margin-bottom:34px;
}

.nl-visit-main,
.nl-hours-panel,
.nl-service-card,
.nl-first-visit,
.nl-contact-card,
.nl-before-arrive{
    border-radius:28px;
    background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 18px 38px rgba(0,0,0,.24);
}

.nl-visit-main,
.nl-hours-panel{
    padding:44px;
}

.nl-visit-icon,
.nl-hours-icon,
.nl-service-icon,
.nl-first-icon,
.nl-contact-icon,
.nl-before-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
    margin-bottom:24px;
}

.nl-visit-icon svg,
.nl-hours-icon svg,
.nl-service-icon svg,
.nl-first-icon svg,
.nl-contact-icon svg,
.nl-before-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.nl-visit-main h3,
.nl-hours-panel h3,
.nl-first-visit h3,
.nl-before-arrive h3{
    font-size:34px;
    line-height:1.28;
    margin-bottom:22px;
}

.nl-visit-main p,
.nl-first-visit p,
.nl-before-arrive p{
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
    margin-bottom:18px;
}

.nl-visit-main p:last-child,
.nl-first-visit p:last-child,
.nl-before-arrive p:last-child{
    margin-bottom:0;
}

.nl-hours-panel{
    background:linear-gradient(135deg, rgba(255,156,25,.13), rgba(255,255,255,.035));
    border-color:rgba(255,200,40,.23);
}

.nl-hour-row{
    display:flex;
    justify-content:space-between;
    gap:20px;
    padding:18px 0;
    border-bottom:1px solid rgba(255,255,255,.09);
}

.nl-hour-row:last-child{
    border-bottom:none;
    padding-bottom:0;
}

.nl-hour-row span{
    min-width:130px;
    font-size:14px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1px;
    color:rgba(255,255,255,.58);
}

.nl-hour-row strong{
    max-width:330px;
    text-align:right;
    font-size:16px;
    line-height:1.55;
    color:#fff;
}

.nl-services-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:34px;
}

.nl-service-card{
    min-height:330px;
    padding:32px 28px;
    transition:.35s ease;
}

.nl-service-card:hover,
.nl-contact-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 24px 50px rgba(0,0,0,.33),
        0 0 30px rgba(255,180,40,.11);
}

.nl-service-card h4{
    min-height:58px;
    display:flex;
    align-items:flex-start;
    margin-bottom:14px;
    font-size:23px;
    line-height:1.28;
}

.nl-service-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

.nl-first-visit,
.nl-before-arrive{
    display:flex;
    gap:28px;
    align-items:flex-start;
    padding:40px;
    margin-bottom:34px;
    background:linear-gradient(135deg, rgba(255,156,25,.12), rgba(255,255,255,.035));
    border-color:rgba(255,200,40,.23);
}

.nl-first-icon,
.nl-before-icon{
    margin-bottom:0;
}

.nl-contact-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:34px;
}

.nl-contact-card{
    min-height:230px;
    padding:32px 28px;
    text-align:center;
    transition:.35s ease;
}

.nl-contact-icon{
    margin-left:auto;
    margin-right:auto;
}

.nl-contact-card h4{
    margin-bottom:12px;
    font-size:23px;
    line-height:1.28;
}

.nl-contact-card p{
    margin:0;
    font-size:16px;
    line-height:1.75;
    color:rgba(255,255,255,.78);
}

.nl-before-arrive{
    margin-bottom:0;
}

@media (max-width:1199px){
    .nl-services-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media (max-width:991px){
    .nl-visit-heading h2{
        font-size:38px;
    }

    .nl-visit-hero,
    .nl-contact-grid{
        grid-template-columns:1fr;
    }

    .nl-visit-main,
    .nl-hours-panel,
    .nl-service-card,
    .nl-first-visit,
    .nl-before-arrive{
        text-align:center;
        align-items:center;
    }

    .nl-visit-icon,
    .nl-hours-icon,
    .nl-service-icon,
    .nl-first-icon,
    .nl-before-icon{
        margin-left:auto;
        margin-right:auto;
    }

    .nl-service-card h4{
        justify-content:center;
        min-height:auto;
    }

    .nl-first-visit,
    .nl-before-arrive{
        display:block;
    }

    .nl-first-icon,
    .nl-before-icon{
        margin-bottom:22px;
    }

    .nl-hour-row{
        display:block;
        text-align:left;
    }

    .nl-hour-row strong{
        display:block;
        max-width:none;
        text-align:left;
        margin-top:7px;
    }
}

@media (max-width:576px){
    .nl-visit-heading h2{
        font-size:31px;
    }

    .nl-visit-heading p,
    .nl-visit-main p,
    .nl-first-visit p,
    .nl-before-arrive p{
        font-size:16px;
        line-height:1.8;
    }

    .nl-services-grid{
        grid-template-columns:1fr;
    }

    .nl-visit-main,
    .nl-hours-panel,
    .nl-service-card,
    .nl-first-visit,
    .nl-contact-card,
    .nl-before-arrive{
        padding:30px 24px;
        min-height:auto;
    }
}

/* ===================================
   FAQ SECTION
=================================== */

.nl-faq-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 16%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 82%, rgba(255,221,45,.09), transparent 34%);
}

.nl-faq-heading{
    max-width:900px;
    margin:0 auto 70px;
}

.nl-faq-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.nl-faq-heading p{
    max-width:760px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

.nl-faq-wrapper{
    max-width:980px;
    margin:0 auto;
    display:grid;
    gap:18px;
}

.nl-faq-item{
    border-radius:22px;
    overflow:hidden;
    background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 18px 38px rgba(0,0,0,.24);
}

.nl-faq-question{
    width:100%;
    position:relative;
    padding:24px 70px 24px 28px;
    border:none;
    background:transparent;
    color:#fff;
    text-align:left;
    font-size:20px;
    font-weight:800;
    line-height:1.35;
    cursor:pointer;
}

.nl-faq-question::after{
    content:"+";
    position:absolute;
    right:26px;
    top:50%;
    transform:translateY(-50%);
    width:36px;
    height:36px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    font-size:24px;
    font-weight:900;
    box-shadow:0 0 18px rgba(255,190,40,.28);
}

.nl-faq-question:not(.collapsed)::after{
    content:"–";
}

.nl-faq-answer{
    padding:0 28px 26px;
    font-size:16.5px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

@media (max-width:576px){
    .nl-faq-heading h2{
        font-size:31px;
    }

    .nl-faq-heading p,
    .nl-faq-answer{
        font-size:16px;
        line-height:1.8;
    }

    .nl-faq-question{
        padding:22px 62px 22px 22px;
        font-size:18px;
    }
}

/* ===================================
   LEGAL PAGES
=================================== */

.legal-header .navbar-area{
    background:rgba(17,13,18,.96);
    position:fixed;
    box-shadow:1px 1px 20px 0px rgb(255 200 39 / 20%), 1px 1px 15px 0px rgb(255 82 1 / 10%);
}

.legal-page{
    background:
        radial-gradient(circle at 12% 16%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 82%, rgba(255,221,45,.09), transparent 34%);
}

.legal-hero{
    position:relative;
    overflow:hidden;
    text-align:center;
}

.legal-hero h1{
    max-width:900px;
    margin:0 auto 22px;
    font-size:54px;
    line-height:1.12;
}

.legal-hero p{
    max-width:850px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

.legal-layout{
    display:grid;
    grid-template-columns:300px 1fr;
    gap:32px;
    align-items:start;
}

.legal-sidebar,
.legal-card{
    border-radius:28px;
    background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
    border:1px solid rgba(255,255,255,.08);
    box-shadow:inset 1px 1px 18px rgba(255,200,39,.12), 0 18px 38px rgba(0,0,0,.24);
}

.legal-sidebar{
    position:sticky;
    top:112px;
    padding:28px;
}

.legal-sidebar h3{
    font-size:22px;
    margin-bottom:20px;
}

.legal-sidebar a{
    display:block;
    padding:12px 0;
    border-bottom:1px solid rgba(255,255,255,.08);
    color:rgba(255,255,255,.78);
    font-size:15px;
}

.legal-sidebar a:hover{
    color:#ffcc33;
}

.legal-card{
    padding:46px;
}

.legal-block{
    padding-bottom:34px;
    margin-bottom:34px;
    border-bottom:1px solid rgba(255,255,255,.09);
}

.legal-block:last-child{
    padding-bottom:0;
    margin-bottom:0;
    border-bottom:none;
}

.legal-block h2{
    font-size:31px;
    line-height:1.28;
    margin-bottom:18px;
}

.legal-block p{
    font-size:16.5px;
    line-height:1.9;
    color:rgba(255,255,255,.78);
    margin-bottom:16px;
}

.legal-block p:last-child{
    margin-bottom:0;
}

.footer-small-note{
    margin-top:16px;
    font-size:14px;
}

@media (max-width:991px){
    .legal-hero h1{
        font-size:40px;
    }

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

    .legal-sidebar{
        position:relative;
        top:auto;
    }
}

@media (max-width:576px){
    .legal-hero h1{
        font-size:32px;
    }

    .legal-hero p,
    .legal-block p{
        font-size:16px;
        line-height:1.8;
    }

    .legal-card,
    .legal-sidebar{
        padding:28px 22px;
    }

    .legal-block h2{
        font-size:25px;
    }
}

/* ===================================
   CASINO & GAMING OVERVIEW SECTION
=================================== */

.gaming-overview-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 10% 18%, rgba(255,156,25,.13), transparent 30%),
        radial-gradient(circle at 90% 82%, rgba(255,221,45,.09), transparent 32%);
}

.gaming-overview-section::before{
    content:"";
    position:absolute;
    top:120px;
    right:-180px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(255,180,35,.07);
    filter:blur(28px);
    pointer-events:none;
}

/* Heading */

.gaming-overview-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.section-kicker,
.small-label{
    display:inline-block;
    margin-bottom:16px;
    font-size:14px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.gaming-overview-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.gaming-overview-heading p{
    max-width:860px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

/* Main Intro */

.gaming-overview-main{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:34px;
    align-items:stretch;
    margin-bottom:34px;
}

.gaming-overview-image,
.gaming-overview-content,
.gaming-overview-card,
.gaming-overview-summary{
    border-radius:28px;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.055),
            rgba(255,255,255,.025)
        );
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 18px 38px rgba(0,0,0,.24);
}

/* Image */

.gaming-overview-image{
    position:relative;
    overflow:hidden;
    min-height:540px;
    border-color:rgba(255,200,40,.22);
    box-shadow:
        0 24px 65px rgba(0,0,0,.36),
        0 0 42px rgba(255,180,40,.10);
}

.gaming-overview-image img{
    width:100%;
    height:100%;
    min-height:540px;
    object-fit:cover;
    display:block;
    transition:.45s ease;
}

.gaming-overview-image:hover img{
    transform:scale(1.04);
}

.gaming-overview-image::after{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            transparent 42%,
            rgba(0,0,0,.78)
        );
}

/* Image Badge */

.gaming-image-badge{
    position:absolute;
    left:28px;
    bottom:28px;
    z-index:2;
    padding:18px 24px;
    border-radius:18px;
    background:rgba(15,12,18,.90);
    border:1px solid rgba(255,200,40,.34);
    box-shadow:0 0 28px rgba(255,180,40,.18);
}

.gaming-image-badge span{
    display:block;
    margin-bottom:4px;
    font-size:13px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:1.3px;
    color:rgba(255,255,255,.60);
}

.gaming-image-badge strong{
    display:block;
    font-size:24px;
    color:#fff;
}

/* Main Content */

.gaming-overview-content{
    padding:46px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.gaming-overview-content h3{
    font-size:36px;
    line-height:1.25;
    margin-bottom:24px;
}

.gaming-overview-content p{
    margin-bottom:20px;
    font-size:17px;
    line-height:1.92;
    color:rgba(255,255,255,.80);
}

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

/* Gaming Cards */

.gaming-overview-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:34px;
}

.gaming-overview-card{
    min-height:320px;
    padding:32px 28px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    transition:.35s ease;
}

.gaming-overview-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 24px 50px rgba(0,0,0,.33),
        0 0 30px rgba(255,180,40,.11);
}

.gaming-card-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:24px;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.gaming-card-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.gaming-overview-card h4{
    min-height:58px;
    display:flex;
    align-items:flex-start;
    margin-bottom:14px;
    font-size:23px;
    line-height:1.28;
}

.gaming-overview-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

/* Bottom Summary */

.gaming-overview-summary{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
    padding:24px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.gaming-summary-item{
    min-height:110px;
    padding:22px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    border-radius:20px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.gaming-summary-item span{
    display:block;
    margin-bottom:8px;
    font-size:13px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.2px;
    color:rgba(255,255,255,.58);
}

.gaming-summary-item strong{
    display:block;
    font-size:19px;
    line-height:1.35;
    color:#fff;
}

/* Responsive */

@media (max-width:1199px){

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

    .gaming-overview-summary{
        grid-template-columns:repeat(2,1fr);
    }
}

@media (max-width:991px){

    .gaming-overview-heading h2{
        font-size:38px;
    }

    .gaming-overview-main{
        grid-template-columns:1fr;
    }

    .gaming-overview-image{
        min-height:430px;
    }

    .gaming-overview-image img{
        min-height:430px;
    }

    .gaming-overview-content{
        text-align:center;
        padding:38px 30px;
    }

    .gaming-overview-card{
        align-items:center;
        text-align:center;
    }

    .gaming-overview-card h4{
        min-height:auto;
        justify-content:center;
    }

    .gaming-summary-item{
        text-align:center;
    }
}

@media (max-width:576px){

    .gaming-overview-heading{
        margin-bottom:45px;
    }

    .gaming-overview-heading h2{
        font-size:31px;
    }

    .gaming-overview-heading p,
    .gaming-overview-content p{
        font-size:16px;
        line-height:1.8;
    }

    .gaming-overview-grid,
    .gaming-overview-summary{
        grid-template-columns:1fr;
    }

    .gaming-overview-image{
        min-height:320px;
        border-radius:22px;
    }

    .gaming-overview-image img{
        min-height:320px;
    }

    .gaming-image-badge{
        left:18px;
        right:18px;
        bottom:18px;
        padding:16px 18px;
    }

    .gaming-image-badge strong{
        font-size:20px;
    }

    .gaming-overview-content{
        padding:30px 22px;
    }

    .gaming-overview-content h3{
        font-size:29px;
    }

    .gaming-overview-card{
        min-height:auto;
        padding:30px 24px;
    }

    .gaming-overview-summary{
        padding:18px;
    }

    .gaming-summary-item{
        min-height:auto;
    }
}
.gaming-overview-main{
    display:grid;
    grid-template-columns: 0.9fr 1.1fr;
    gap:28px;
    align-items:stretch;

    max-width:1050px;
    margin:0 auto 34px;
}

/* Smaller Hero Height */
.hero-section {
    padding: 160px 0 55px;
}

.hero-section {
    padding: 105px 0 20px;
}

/* ===================================
   SLOT MACHINES SECTION
=================================== */

.slot-machines-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 16%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 82%, rgba(255,221,45,.09), transparent 34%);
}

.slot-machines-section::before{
    content:"";
    position:absolute;
    right:-180px;
    top:140px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(255,180,35,.07);
    filter:blur(25px);
    pointer-events:none;
}

/* Heading */

.slot-machines-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.slot-section-kicker,
.slot-small-label{
    display:inline-block;
    margin-bottom:16px;
    font-size:14px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.slot-machines-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.slot-machines-heading p{
    max-width:850px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

/* Main Intro */

.slot-machines-intro{
    display:grid;
    grid-template-columns:1.5fr .5fr;
    gap:28px;
    align-items:stretch;
    margin-bottom:34px;
}

.slot-machines-main,
.slot-machines-number,
.slot-machine-card,
.slot-denomination-panel,
.slot-machines-note{
    border-radius:28px;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.055),
            rgba(255,255,255,.025)
        );
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 18px 38px rgba(0,0,0,.24);
}

.slot-machines-main{
    padding:44px;
}

.slot-machines-main h3{
    font-size:36px;
    line-height:1.25;
    margin-bottom:24px;
}

.slot-machines-main p{
    font-size:17px;
    line-height:1.95;
    color:rgba(255,255,255,.80);
    margin-bottom:20px;
}

.slot-machines-main p:last-child{
    margin-bottom:0;
}

/* 600+ Number Block */

.slot-machines-number{
    min-height:100%;
    padding:34px 28px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    text-align:center;
    background:
        linear-gradient(
            150deg,
            rgba(255,156,25,.16),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.24);
}

.slot-machines-number span{
    display:block;
    margin-bottom:10px;
    font-size:14px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.4px;
    color:rgba(255,255,255,.62);
}

.slot-machines-number strong{
    display:block;
    font-size:78px;
    line-height:1;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.slot-machines-number p{
    max-width:260px;
    margin:18px auto 0;
    font-size:15.5px;
    line-height:1.7;
    color:rgba(255,255,255,.76);
}

/* Slot Type Grid */

.slot-machines-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:34px;
}

.slot-machine-card{
    min-height:315px;
    padding:32px 28px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    transition:.35s ease;
}

.slot-machine-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 24px 50px rgba(0,0,0,.33),
        0 0 30px rgba(255,180,40,.11);
}

.slot-machine-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:24px;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.slot-machine-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.slot-machine-card h4{
    min-height:58px;
    display:flex;
    align-items:flex-start;
    margin-bottom:14px;
    font-size:23px;
    line-height:1.28;
}

.slot-machine-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

/* Denomination Panel */

.slot-denomination-panel{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:30px;
    align-items:center;
    padding:38px 40px;
    margin-bottom:34px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.slot-denomination-content h3{
    font-size:34px;
    line-height:1.28;
    margin-bottom:18px;
}

.slot-denomination-content p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.slot-denomination-list{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:14px;
}

.slot-denomination-list span{
    min-width:105px;
    padding:17px 20px;
    border-radius:18px;
    text-align:center;
    font-size:22px;
    font-weight:900;
    color:#151016;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    box-shadow:0 0 24px rgba(255,190,40,.22);
}

/* Bottom Note */

.slot-machines-note{
    display:flex;
    gap:26px;
    align-items:flex-start;
    padding:36px 40px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.slot-note-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.slot-note-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.slot-machines-note h3{
    font-size:30px;
    line-height:1.3;
    margin-bottom:14px;
}

.slot-machines-note p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

/* Responsive */

@media (max-width:1199px){

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

@media (max-width:991px){

    .slot-machines-heading h2{
        font-size:38px;
    }

    .slot-machines-intro,
    .slot-denomination-panel{
        grid-template-columns:1fr;
    }

    .slot-machines-main,
    .slot-denomination-content{
        text-align:center;
    }

    .slot-machine-card{
        align-items:center;
        text-align:center;
    }

    .slot-machine-card h4{
        justify-content:center;
        min-height:auto;
    }

    .slot-denomination-list{
        justify-content:center;
    }

    .slot-machines-note{
        text-align:center;
        display:block;
    }

    .slot-note-icon{
        margin:0 auto 22px;
    }
}

@media (max-width:576px){

    .slot-machines-heading{
        margin-bottom:45px;
    }

    .slot-machines-heading h2{
        font-size:31px;
    }

    .slot-machines-heading p,
    .slot-machines-main p,
    .slot-denomination-content p,
    .slot-machines-note p{
        font-size:16px;
        line-height:1.8;
    }

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

    .slot-machines-main,
    .slot-denomination-panel,
    .slot-machines-note{
        padding:30px 22px;
    }

    .slot-machine-card{
        min-height:auto;
        padding:30px 24px;
    }

    .slot-machines-number strong{
        font-size:64px;
    }

    .slot-denomination-list span{
        min-width:88px;
        font-size:19px;
    }
}
.navbar-brand img {
    max-width: 130px;
}

/* ===================================
   POKER ROOM SECTION
=================================== */

.poker-room-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 18%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 80%, rgba(255,221,45,.09), transparent 34%);
}

.poker-room-section::before{
    content:"";
    position:absolute;
    left:-160px;
    top:120px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(255,180,35,.07);
    filter:blur(28px);
    pointer-events:none;
}

/* Heading */

.poker-room-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.poker-section-kicker,
.poker-small-label{
    display:inline-block;
    margin-bottom:16px;
    font-size:14px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.poker-room-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.poker-room-heading p{
    max-width:860px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

/* Main Layout */

.poker-room-main{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:34px;
    align-items:stretch;
    margin-bottom:34px;
}

.poker-room-image,
.poker-room-content,
.poker-hours-panel,
.poker-room-card,
.poker-difference-box,
.poker-room-note{
    border-radius:28px;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.055),
            rgba(255,255,255,.025)
        );
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 18px 38px rgba(0,0,0,.24);
}

/* Image */

.poker-room-image{
    position:relative;
    overflow:hidden;
    min-height:540px;
    border-color:rgba(255,200,40,.22);
    box-shadow:
        0 24px 65px rgba(0,0,0,.36),
        0 0 42px rgba(255,180,40,.10);
}

.poker-room-image img{
    width:100%;
    height:100%;
    min-height:540px;
    object-fit:cover;
    display:block;
    transition:.45s ease;
}

.poker-room-image:hover img{
    transform:scale(1.04);
}

.poker-room-image::after{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            transparent 42%,
            rgba(0,0,0,.78)
        );
}

.poker-image-badge{
    position:absolute;
    left:28px;
    bottom:28px;
    z-index:2;
    padding:18px 24px;
    border-radius:18px;
    background:rgba(15,12,18,.90);
    border:1px solid rgba(255,200,40,.34);
    box-shadow:0 0 28px rgba(255,180,40,.18);
}

.poker-image-badge span{
    display:block;
    margin-bottom:4px;
    font-size:13px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:1.3px;
    color:rgba(255,255,255,.60);
}

.poker-image-badge strong{
    display:block;
    font-size:24px;
    color:#fff;
}

/* Content */

.poker-room-content{
    padding:46px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.poker-room-content h3{
    font-size:36px;
    line-height:1.25;
    margin-bottom:24px;
}

.poker-room-content p{
    margin-bottom:20px;
    font-size:17px;
    line-height:1.92;
    color:rgba(255,255,255,.80);
}

.poker-room-content p:last-child{
    margin-bottom:0;
}

.poker-contact-box{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
    margin-top:10px;
}

.poker-contact-item{
    padding:20px 22px;
    border-radius:18px;
    background:rgba(0,0,0,.22);
    border:1px solid rgba(255,255,255,.08);
}

.poker-contact-item span{
    display:block;
    margin-bottom:8px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.2px;
    color:rgba(255,255,255,.58);
}

.poker-contact-item strong{
    display:block;
    font-size:20px;
    line-height:1.4;
    color:#fff;
}

/* Hours */

.poker-hours-panel{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:30px;
    align-items:center;
    padding:38px 40px;
    margin-bottom:34px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.poker-hours-content h3{
    font-size:34px;
    line-height:1.28;
    margin-bottom:18px;
}

.poker-hours-content p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.poker-hours-list{
    display:grid;
    grid-template-columns:1fr;
    gap:16px;
}

.poker-hours-card{
    padding:22px 24px;
    border-radius:20px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

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

.poker-hours-card strong{
    display:block;
    font-size:24px;
    line-height:1.35;
    color:#fff;
}

/* Format Grid */

.poker-room-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
    margin-bottom:34px;
}

.poker-room-card{
    min-height:300px;
    padding:32px 26px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    transition:.35s ease;
}

.poker-room-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 24px 50px rgba(0,0,0,.33),
        0 0 30px rgba(255,180,40,.11);
}

.poker-room-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:24px;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.poker-room-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.poker-room-card h4{
    min-height:58px;
    display:flex;
    align-items:flex-start;
    margin-bottom:14px;
    font-size:23px;
    line-height:1.28;
}

.poker-room-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

/* Difference Box */

.poker-difference-box{
    display:flex;
    gap:26px;
    align-items:flex-start;
    padding:36px 40px;
    margin-bottom:34px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.poker-difference-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.poker-difference-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.poker-difference-content h3{
    font-size:30px;
    line-height:1.3;
    margin-bottom:14px;
}

.poker-difference-content p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

/* Note */

.poker-room-note{
    display:flex;
    gap:26px;
    align-items:flex-start;
    padding:36px 40px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.poker-note-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.poker-note-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.poker-room-note h3{
    font-size:30px;
    line-height:1.3;
    margin-bottom:14px;
}

.poker-room-note p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

/* Responsive */

@media (max-width:1199px){

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

@media (max-width:991px){

    .poker-room-heading h2{
        font-size:38px;
    }

    .poker-room-main,
    .poker-hours-panel,
    .poker-contact-box{
        grid-template-columns:1fr;
    }

    .poker-room-image{
        min-height:430px;
    }

    .poker-room-image img{
        min-height:430px;
    }

    .poker-room-content,
    .poker-hours-content{
        text-align:center;
        padding:38px 30px;
    }

    .poker-room-card{
        align-items:center;
        text-align:center;
    }

    .poker-room-card h4{
        min-height:auto;
        justify-content:center;
    }

    .poker-difference-box,
    .poker-room-note{
        text-align:center;
        display:block;
    }

    .poker-difference-icon,
    .poker-note-icon{
        margin:0 auto 22px;
    }
}

@media (max-width:576px){

    .poker-room-heading{
        margin-bottom:45px;
    }

    .poker-room-heading h2{
        font-size:31px;
    }

    .poker-room-heading p,
    .poker-room-content p,
    .poker-hours-content p,
    .poker-difference-content p,
    .poker-room-note p{
        font-size:16px;
        line-height:1.8;
    }

    .poker-room-grid{
        grid-template-columns:1fr;
    }

    .poker-room-image{
        min-height:320px;
        border-radius:22px;
    }

    .poker-room-image img{
        min-height:320px;
    }

    .poker-image-badge{
        left:18px;
        right:18px;
        bottom:18px;
        padding:16px 18px;
    }

    .poker-image-badge strong{
        font-size:20px;
    }

    .poker-room-content,
    .poker-hours-panel,
    .poker-difference-box,
    .poker-room-note{
        padding:30px 22px;
    }

    .poker-room-content h3,
    .poker-hours-content h3{
        font-size:29px;
    }

    .poker-room-card{
        min-height:auto;
        padding:30px 24px;
    }
}

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

.table-games-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 10% 18%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 90% 82%, rgba(255,221,45,.09), transparent 34%);
}

.table-games-section::before{
    content:"";
    position:absolute;
    right:-180px;
    top:160px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(255,180,35,.07);
    filter:blur(28px);
    pointer-events:none;
}

/* Heading */

.table-games-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.table-section-kicker,
.table-small-label{
    display:inline-block;
    margin-bottom:16px;
    font-size:14px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.table-games-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.table-games-heading p{
    max-width:860px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

/* Main */

.table-games-main{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:34px;
    align-items:stretch;
    margin-bottom:34px;
}

.table-games-image,
.table-games-content,
.table-game-card,
.table-limit-panel,
.table-sidebets-panel,
.table-games-note{
    border-radius:28px;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.055),
            rgba(255,255,255,.025)
        );
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 18px 38px rgba(0,0,0,.24);
}

/* Image */

.table-games-image{
    position:relative;
    overflow:hidden;
    min-height:520px;
    border-color:rgba(255,200,40,.22);
}

.table-games-image img{
    width:100%;
    height:100%;
    min-height:520px;
    object-fit:cover;
    display:block;
    transition:.45s ease;
}

.table-games-image:hover img{
    transform:scale(1.04);
}

.table-games-image::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        180deg,
        transparent 44%,
        rgba(0,0,0,.78)
    );
}

.table-image-badge{
    position:absolute;
    left:28px;
    bottom:28px;
    z-index:2;
    padding:18px 24px;
    border-radius:18px;
    background:rgba(15,12,18,.90);
    border:1px solid rgba(255,200,40,.34);
    box-shadow:0 0 28px rgba(255,180,40,.18);
}

.table-image-badge span{
    display:block;
    margin-bottom:4px;
    font-size:13px;
    font-weight:700;
    letter-spacing:1.3px;
    text-transform:uppercase;
    color:rgba(255,255,255,.60);
}

.table-image-badge strong{
    display:block;
    font-size:24px;
    color:#fff;
}

/* Intro Content */

.table-games-content{
    padding:46px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.table-games-content h3{
    font-size:36px;
    line-height:1.25;
    margin-bottom:24px;
}

.table-games-content p{
    margin-bottom:20px;
    font-size:17px;
    line-height:1.92;
    color:rgba(255,255,255,.80);
}

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

/* Cards */

.table-games-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:24px;
    margin-bottom:34px;
}

.table-game-card{
    min-height:390px;
    padding:32px 28px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    transition:.35s ease;
}

.table-game-card-wide{
    grid-column:1 / -1;
    min-height:auto;
}

.table-game-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 24px 50px rgba(0,0,0,.33),
        0 0 30px rgba(255,180,40,.11);
}

.table-game-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:20px;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.table-game-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.table-game-label{
    margin-bottom:10px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.2px;
    color:rgba(255,200,40,.86);
}

.table-game-card h4{
    margin-bottom:14px;
    font-size:25px;
    line-height:1.28;
}

.table-game-card > p{
    flex:1;
    margin-bottom:22px;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

/* Limits */

.table-limit-box,
.table-side-bet{
    width:100%;
    padding:15px 18px;
    margin-top:10px;
    border-radius:16px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.table-limit-box span,
.table-side-bet span{
    display:block;
    margin-bottom:5px;
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1px;
    color:rgba(255,255,255,.55);
}

.table-limit-box strong,
.table-side-bet strong{
    display:block;
    font-size:18px;
    line-height:1.35;
    color:#fff;
}

.table-game-multi-limits{
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}

/* Limit Overview */

.table-limit-panel{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:30px;
    align-items:center;
    padding:40px;
    margin-bottom:34px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.table-limit-content h3{
    font-size:34px;
    line-height:1.28;
    margin-bottom:18px;
}

.table-limit-content p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.table-limit-summary{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
}

.table-summary-item{
    padding:24px 20px;
    text-align:center;
    border-radius:20px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.table-summary-item span{
    display:block;
    margin-bottom:10px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1px;
    color:rgba(255,255,255,.58);
}

.table-summary-item strong{
    display:block;
    font-size:32px;
    margin-bottom:6px;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.table-summary-item small{
    font-size:13px;
    color:rgba(255,255,255,.62);
}

/* Side Bets */

.table-sidebets-panel,
.table-games-note{
    display:flex;
    gap:26px;
    align-items:flex-start;
    padding:36px 40px;
    margin-bottom:34px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.table-sidebets-icon,
.table-note-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.table-sidebets-icon svg,
.table-note-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.table-sidebets-content h3,
.table-games-note h3{
    font-size:30px;
    line-height:1.3;
    margin-bottom:14px;
}

.table-sidebets-content p,
.table-games-note p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.table-games-note{
    margin-bottom:0;
}

/* Responsive */

@media (max-width:991px){

    .table-games-heading h2{
        font-size:38px;
    }

    .table-games-main,
    .table-limit-panel{
        grid-template-columns:1fr;
    }

    .table-games-image,
    .table-games-image img{
        min-height:420px;
    }

    .table-games-content,
    .table-limit-content{
        text-align:center;
    }

    .table-game-card{
        align-items:center;
        text-align:center;
    }

    .table-sidebets-panel,
    .table-games-note{
        display:block;
        text-align:center;
    }

    .table-sidebets-icon,
    .table-note-icon{
        margin:0 auto 22px;
    }
}

@media (max-width:768px){

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

    .table-game-card-wide{
        grid-column:auto;
    }

    .table-limit-summary,
    .table-game-multi-limits{
        grid-template-columns:1fr;
    }
}

@media (max-width:576px){

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

    .table-games-heading h2{
        font-size:31px;
    }

    .table-games-heading p,
    .table-games-content p,
    .table-limit-content p,
    .table-sidebets-content p,
    .table-games-note p{
        font-size:16px;
        line-height:1.8;
    }

    .table-games-image,
    .table-games-image img{
        min-height:320px;
    }

    .table-games-content,
    .table-limit-panel,
    .table-sidebets-panel,
    .table-games-note{
        padding:30px 22px;
    }

    .table-game-card{
        min-height:auto;
        padding:30px 24px;
    }

    .table-image-badge{
        left:18px;
        right:18px;
        bottom:18px;
        padding:16px 18px;
    }
}

/* ===================================
   SIDE BETS & SPECIAL FEATURES
=================================== */

.side-bets-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 16%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 82%, rgba(255,221,45,.09), transparent 34%);
}

.side-bets-section::before{
    content:"";
    position:absolute;
    left:-180px;
    top:150px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(255,180,35,.07);
    filter:blur(28px);
    pointer-events:none;
}

/* Heading */

.side-bets-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.side-bets-kicker,
.side-bets-small-label{
    display:inline-block;
    margin-bottom:16px;
    font-size:14px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.side-bets-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.side-bets-heading p{
    max-width:850px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

/* Intro */

.side-bets-intro{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:28px;
    align-items:stretch;
    margin-bottom:34px;
}

.side-bets-intro-main,
.side-bets-summary,
.side-bet-card,
.side-bets-feature,
.side-bets-note{
    border-radius:28px;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.055),
            rgba(255,255,255,.025)
        );
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 18px 38px rgba(0,0,0,.24);
}

.side-bets-intro-main{
    padding:44px;
}

.side-bets-intro-main h3{
    font-size:36px;
    line-height:1.25;
    margin-bottom:22px;
}

.side-bets-intro-main p{
    margin-bottom:18px;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.side-bets-intro-main p:last-child{
    margin-bottom:0;
}

/* Summary */

.side-bets-summary{
    padding:26px;
    display:grid;
    gap:16px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.side-bets-summary-item{
    padding:22px;
    border-radius:20px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.side-bets-summary-item span{
    display:block;
    margin-bottom:7px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,255,255,.56);
}

.side-bets-summary-item strong{
    display:block;
    font-size:20px;
    line-height:1.35;
    color:#fff;
}

/* Main Cards */

.side-bets-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:34px;
}

.side-bet-card{
    min-height:420px;
    padding:32px 28px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    transition:.35s ease;
}

.side-bet-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 24px 50px rgba(0,0,0,.33),
        0 0 30px rgba(255,180,40,.11);
}

.side-bet-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:20px;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.side-bet-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.side-bet-game{
    display:block;
    margin-bottom:9px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.2px;
    color:rgba(255,200,40,.88);
}

.side-bet-card h3{
    margin-bottom:16px;
    font-size:27px;
    line-height:1.28;
}

.side-bet-card p{
    margin-bottom:16px;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

.side-bet-status{
    width:100%;
    margin-top:auto;
    padding:16px 18px;
    border-radius:16px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.side-bet-status span{
    display:block;
    margin-bottom:5px;
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1px;
    color:rgba(255,255,255,.55);
}

.side-bet-status strong{
    display:block;
    font-size:18px;
    line-height:1.35;
    color:#fff;
}

/* Jackpot Feature */

.side-bets-feature{
    display:flex;
    gap:26px;
    align-items:flex-start;
    padding:38px 40px;
    margin-bottom:34px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.side-bets-feature-icon,
.side-bets-note-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.side-bets-feature-icon svg,
.side-bets-note-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.side-bets-feature-content h3,
.side-bets-note h3{
    font-size:30px;
    line-height:1.3;
    margin-bottom:14px;
}

.side-bets-feature-content p,
.side-bets-note p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

/* Note */

.side-bets-note{
    display:flex;
    gap:26px;
    align-items:flex-start;
    padding:36px 40px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

/* Responsive */

@media (max-width:991px){

    .side-bets-heading h2{
        font-size:38px;
    }

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

    .side-bets-grid{
        grid-template-columns:1fr;
    }

    .side-bets-intro-main,
    .side-bet-card{
        text-align:center;
        align-items:center;
    }

    .side-bets-feature,
    .side-bets-note{
        display:block;
        text-align:center;
    }

    .side-bets-feature-icon,
    .side-bets-note-icon{
        margin:0 auto 22px;
    }
}

@media (max-width:576px){

    .side-bets-heading{
        margin-bottom:45px;
    }

    .side-bets-heading h2{
        font-size:31px;
    }

    .side-bets-heading p,
    .side-bets-intro-main p,
    .side-bet-card p,
    .side-bets-feature-content p,
    .side-bets-note p{
        font-size:16px;
        line-height:1.8;
    }

    .side-bets-intro-main,
    .side-bets-feature,
    .side-bets-note{
        padding:30px 22px;
    }

    .side-bet-card{
        min-height:auto;
        padding:30px 24px;
    }
}

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

.about-casino-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 10% 18%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 90% 82%, rgba(255,221,45,.09), transparent 34%);
}

.about-casino-section::before{
    content:"";
    position:absolute;
    right:-170px;
    top:130px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(255,180,35,.07);
    filter:blur(28px);
    pointer-events:none;
}

/* Heading */

.about-casino-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.about-section-kicker,
.about-small-label{
    display:inline-block;
    margin-bottom:16px;
    font-size:14px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.about-casino-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.about-casino-heading p{
    max-width:850px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

/* Main */

.about-casino-main{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:34px;
    align-items:stretch;
    margin-bottom:34px;
}

.about-casino-image,
.about-casino-content,
.about-casino-card,
.about-district-panel,
.about-community-panel{
    border-radius:28px;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.055),
            rgba(255,255,255,.025)
        );
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 18px 38px rgba(0,0,0,.24);
}

/* Image */

.about-casino-image{
    position:relative;
    overflow:hidden;
    min-height:520px;
    border-color:rgba(255,200,40,.22);
}

.about-casino-image img{
    width:100%;
    height:100%;
    min-height:520px;
    object-fit:cover;
    display:block;
    transition:.45s ease;
}

.about-casino-image:hover img{
    transform:scale(1.04);
}

.about-casino-image::after{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            transparent 44%,
            rgba(0,0,0,.78)
        );
}

.about-image-badge{
    position:absolute;
    left:28px;
    bottom:28px;
    z-index:2;
    padding:18px 24px;
    border-radius:18px;
    background:rgba(15,12,18,.90);
    border:1px solid rgba(255,200,40,.34);
    box-shadow:0 0 28px rgba(255,180,40,.18);
}

.about-image-badge span{
    display:block;
    margin-bottom:4px;
    font-size:13px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:1.3px;
    color:rgba(255,255,255,.60);
}

.about-image-badge strong{
    display:block;
    font-size:23px;
    color:#fff;
}

/* Main Content */

.about-casino-content{
    padding:46px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.about-casino-content h3{
    font-size:36px;
    line-height:1.25;
    margin-bottom:24px;
}

.about-casino-content p{
    margin-bottom:20px;
    font-size:17px;
    line-height:1.92;
    color:rgba(255,255,255,.80);
}

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

/* Feature Grid */

.about-casino-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
    margin-bottom:34px;
}

.about-casino-card{
    min-height:310px;
    padding:32px 26px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    transition:.35s ease;
}

.about-casino-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 24px 50px rgba(0,0,0,.33),
        0 0 30px rgba(255,180,40,.11);
}

.about-card-icon,
.about-community-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:24px;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.about-card-icon svg,
.about-community-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.about-casino-card h4{
    min-height:58px;
    display:flex;
    align-items:flex-start;
    margin-bottom:14px;
    font-size:22px;
    line-height:1.28;
}

.about-casino-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

/* District */

.about-district-panel{
    display:grid;
    grid-template-columns:1.15fr .85fr;
    gap:30px;
    align-items:center;
    padding:40px;
    margin-bottom:34px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.about-district-content h3{
    font-size:34px;
    line-height:1.28;
    margin-bottom:18px;
}

.about-district-content p{
    margin-bottom:18px;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

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

.about-district-summary{
    display:grid;
    gap:16px;
}

.about-summary-item{
    padding:22px 24px;
    border-radius:20px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.about-summary-item span{
    display:block;
    margin-bottom:7px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,255,255,.56);
}

.about-summary-item strong{
    display:block;
    font-size:21px;
    line-height:1.35;
    color:#fff;
}

/* Community */

.about-community-panel{
    display:flex;
    gap:28px;
    align-items:flex-start;
    padding:40px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.about-community-icon{
    margin-bottom:0;
}

.about-community-content h3{
    font-size:30px;
    line-height:1.3;
    margin-bottom:14px;
}

.about-community-content p{
    margin-bottom:16px;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

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

/* Responsive */

@media (max-width:1199px){

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

@media (max-width:991px){

    .about-casino-heading h2{
        font-size:38px;
    }

    .about-casino-main,
    .about-district-panel{
        grid-template-columns:1fr;
    }

    .about-casino-image,
    .about-casino-image img{
        min-height:420px;
    }

    .about-casino-content,
    .about-casino-card,
    .about-district-content{
        text-align:center;
        align-items:center;
    }

    .about-casino-card h4{
        justify-content:center;
        min-height:auto;
    }

    .about-community-panel{
        display:block;
        text-align:center;
    }

    .about-community-icon{
        margin:0 auto 22px;
    }
}

@media (max-width:576px){

    .about-casino-heading{
        margin-bottom:45px;
    }

    .about-casino-heading h2{
        font-size:31px;
    }

    .about-casino-heading p,
    .about-casino-content p,
    .about-district-content p,
    .about-community-content p{
        font-size:16px;
        line-height:1.8;
    }

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

    .about-casino-image,
    .about-casino-image img{
        min-height:320px;
    }

    .about-casino-content,
    .about-district-panel,
    .about-community-panel{
        padding:30px 22px;
    }

    .about-casino-card{
        min-height:auto;
        padding:30px 24px;
    }

    .about-image-badge{
        left:18px;
        right:18px;
        bottom:18px;
        padding:16px 18px;
    }

    .about-image-badge strong{
        font-size:20px;
    }
}

/* ===================================
   OFF-TRACK BETTING SECTION
=================================== */

.betting-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 16%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 82%, rgba(255,221,45,.09), transparent 34%);
}

.betting-section::before{
    content:"";
    position:absolute;
    right:-180px;
    top:140px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(255,180,35,.07);
    filter:blur(28px);
    pointer-events:none;
}

/* Heading */

.betting-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.betting-kicker,
.betting-small-label{
    display:inline-block;
    margin-bottom:16px;
    font-size:14px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.betting-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.betting-heading p{
    max-width:850px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

/* Intro */

.betting-intro{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:28px;
    align-items:stretch;
    margin-bottom:34px;
}

.betting-intro-main,
.betting-status-panel,
.betting-card,
.betting-difference-panel,
.betting-note{
    border-radius:28px;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.055),
            rgba(255,255,255,.025)
        );
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 18px 38px rgba(0,0,0,.24);
}

.betting-intro-main{
    padding:44px;
}

.betting-intro-main h3{
    font-size:36px;
    line-height:1.25;
    margin-bottom:22px;
}

.betting-intro-main p{
    margin-bottom:18px;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.betting-intro-main p:last-child{
    margin-bottom:0;
}

/* Status Panel */

.betting-status-panel{
    padding:26px;
    display:grid;
    gap:16px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.betting-status-item{
    padding:22px;
    border-radius:20px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.betting-status-item span{
    display:block;
    margin-bottom:7px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,255,255,.56);
}

.betting-status-item strong{
    display:block;
    font-size:20px;
    line-height:1.35;
    color:#fff;
}

/* Cards */

.betting-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:34px;
}

.betting-card{
    min-height:300px;
    padding:32px 28px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    transition:.35s ease;
}

.betting-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 24px 50px rgba(0,0,0,.33),
        0 0 30px rgba(255,180,40,.11);
}

.betting-card-icon,
.betting-difference-icon,
.betting-note-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.betting-card-icon{
    margin-bottom:24px;
}

.betting-card-icon svg,
.betting-difference-icon svg,
.betting-note-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.betting-card h3{
    margin-bottom:14px;
    font-size:24px;
    line-height:1.28;
}

.betting-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

/* Difference */

.betting-difference-panel,
.betting-note{
    display:flex;
    gap:26px;
    align-items:flex-start;
    padding:36px 40px;
    margin-bottom:34px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.betting-difference-content h3,
.betting-note h3{
    font-size:30px;
    line-height:1.3;
    margin-bottom:14px;
}

.betting-difference-content p,
.betting-note p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.betting-note{
    margin-bottom:0;
}

/* Responsive */

@media (max-width:991px){

    .betting-heading h2{
        font-size:38px;
    }

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

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

    .betting-intro-main,
    .betting-card{
        text-align:center;
        align-items:center;
    }

    .betting-difference-panel,
    .betting-note{
        display:block;
        text-align:center;
    }

    .betting-difference-icon,
    .betting-note-icon{
        margin:0 auto 22px;
    }
}

@media (max-width:576px){

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

    .betting-heading h2{
        font-size:31px;
    }

    .betting-heading p,
    .betting-intro-main p,
    .betting-card p,
    .betting-difference-content p,
    .betting-note p{
        font-size:16px;
        line-height:1.8;
    }

    .betting-intro-main,
    .betting-difference-panel,
    .betting-note{
        padding:30px 22px;
    }

    .betting-card{
        min-height:auto;
        padding:30px 24px;
    }
}

/* ===================================
   BETTING LIMITS & PLAYING BUDGET
=================================== */

.limits-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 16%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 82%, rgba(255,221,45,.09), transparent 34%);
}

.limits-section::before{
    content:"";
    position:absolute;
    left:-180px;
    top:160px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(255,180,35,.07);
    filter:blur(28px);
    pointer-events:none;
}

/* Heading */

.limits-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.limits-kicker,
.limits-small-label{
    display:inline-block;
    margin-bottom:16px;
    font-size:14px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.limits-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.limits-heading p{
    max-width:850px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

/* Intro */

.limits-intro{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:28px;
    margin-bottom:34px;
}

.limits-intro-main,
.limits-overview,
.limits-table-wrapper,
.limits-budget-card,
.limits-budget-note,
.limits-availability-note{
    border-radius:28px;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.055),
            rgba(255,255,255,.025)
        );
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 18px 38px rgba(0,0,0,.24);
}

.limits-intro-main{
    padding:44px;
}

.limits-intro-main h3{
    font-size:36px;
    line-height:1.25;
    margin-bottom:22px;
}

.limits-intro-main p{
    margin-bottom:18px;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.limits-intro-main p:last-child{
    margin-bottom:0;
}

/* Overview */

.limits-overview{
    padding:26px;
    display:grid;
    gap:16px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.limits-overview-item{
    padding:22px;
    border-radius:20px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.limits-overview-item span{
    display:block;
    margin-bottom:7px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,255,255,.56);
}

.limits-overview-item strong{
    display:block;
    margin-bottom:5px;
    font-size:25px;
    line-height:1.3;
    color:#fff;
}

.limits-overview-item small{
    display:block;
    font-size:13px;
    color:rgba(255,255,255,.60);
}

/* Limits Table */

.limits-table-wrapper{
    overflow:hidden;
    margin-bottom:34px;
}

.limits-table-header,
.limits-table-row{
    display:grid;
    grid-template-columns:1.2fr .7fr .7fr 2fr;
    gap:20px;
    align-items:center;
    padding:20px 28px;
}

.limits-table-header{
    background:
        linear-gradient(
            90deg,
            rgba(255,156,25,.18),
            rgba(255,221,45,.07)
        );
    border-bottom:1px solid rgba(255,200,40,.24);
}

.limits-table-header span{
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,255,255,.65);
}

.limits-table-row{
    min-height:88px;
    border-bottom:1px solid rgba(255,255,255,.07);
}

.limits-table-row:last-child{
    border-bottom:none;
}

.limits-table-row strong{
    font-size:17px;
    line-height:1.4;
    color:#fff;
}

.limits-table-row > span{
    font-size:18px;
    font-weight:800;
    color:#ffca32;
}

.limits-table-row p{
    margin:0;
    font-size:14.5px;
    line-height:1.65;
    color:rgba(255,255,255,.70);
}

/* Budget Cards */

.limits-budget-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:34px;
}

.limits-budget-card{
    min-height:310px;
    padding:32px 28px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    transition:.35s ease;
}

.limits-budget-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 24px 50px rgba(0,0,0,.33),
        0 0 30px rgba(255,180,40,.11);
}

.limits-budget-icon,
.limits-note-icon,
.limits-warning-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.limits-budget-icon{
    margin-bottom:20px;
}

.limits-budget-icon svg,
.limits-note-icon svg,
.limits-warning-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.limits-budget-label{
    margin-bottom:10px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,200,40,.88);
}

.limits-budget-card h3{
    margin-bottom:14px;
    font-size:25px;
    line-height:1.3;
}

.limits-budget-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

/* Notes */

.limits-budget-note,
.limits-availability-note{
    display:flex;
    gap:26px;
    align-items:flex-start;
    padding:36px 40px;
    margin-bottom:34px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.limits-budget-note h3,
.limits-availability-note h3{
    font-size:30px;
    line-height:1.3;
    margin-bottom:14px;
}

.limits-budget-note p,
.limits-availability-note p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.limits-availability-note{
    margin-bottom:0;
}

/* Responsive */

@media (max-width:991px){

    .limits-heading h2{
        font-size:38px;
    }

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

    .limits-budget-grid{
        grid-template-columns:1fr;
    }

    .limits-intro-main,
    .limits-budget-card{
        text-align:center;
        align-items:center;
    }

    .limits-table-header{
        display:none;
    }

    .limits-table-row{
        grid-template-columns:1fr 1fr;
        gap:12px 20px;
        padding:24px;
    }

    .limits-table-row strong,
    .limits-table-row p{
        grid-column:1 / -1;
    }

    .limits-budget-note,
    .limits-availability-note{
        display:block;
        text-align:center;
    }

    .limits-note-icon,
    .limits-warning-icon{
        margin:0 auto 22px;
    }
}

@media (max-width:576px){

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

    .limits-heading h2{
        font-size:31px;
    }

    .limits-heading p,
    .limits-intro-main p,
    .limits-budget-card p,
    .limits-budget-note p,
    .limits-availability-note p{
        font-size:16px;
        line-height:1.8;
    }

    .limits-intro-main,
    .limits-budget-note,
    .limits-availability-note{
        padding:30px 22px;
    }

    .limits-budget-card{
        min-height:auto;
        padding:30px 24px;
    }

    .limits-table-row{
        grid-template-columns:1fr;
    }

    .limits-table-row strong,
    .limits-table-row p{
        grid-column:auto;
    }
}

/* ===================================
   DINING & SPORTS BAR SECTION
=================================== */

.dining-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 16%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 82%, rgba(255,221,45,.09), transparent 34%);
}

.dining-section::before{
    content:"";
    position:absolute;
    right:-180px;
    top:140px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(255,180,35,.07);
    filter:blur(28px);
    pointer-events:none;
}

/* Heading */

.dining-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.dining-kicker,
.dining-small-label{
    display:inline-block;
    margin-bottom:16px;
    font-size:14px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.dining-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.dining-heading p{
    max-width:850px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

/* Main */

.dining-main{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:34px;
    align-items:stretch;
    margin-bottom:34px;
}

.dining-image,
.dining-main-content,
.dining-feature-card,
.dining-hours-panel,
.dining-asian-panel,
.dining-deli-panel,
.dining-choice-card,
.dining-note{
    border-radius:28px;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.055),
            rgba(255,255,255,.025)
        );
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 18px 38px rgba(0,0,0,.24);
}

/* Image */

.dining-image{
    position:relative;
    overflow:hidden;
    min-height:520px;
    border-color:rgba(255,200,40,.22);
}

.dining-image img{
    width:100%;
    height:100%;
    min-height:520px;
    object-fit:cover;
    display:block;
    transition:.45s ease;
}

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

.dining-image::after{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            transparent 44%,
            rgba(0,0,0,.78)
        );
}

.dining-image-badge{
    position:absolute;
    left:28px;
    bottom:28px;
    z-index:2;
    padding:18px 24px;
    border-radius:18px;
    background:rgba(15,12,18,.90);
    border:1px solid rgba(255,200,40,.34);
    box-shadow:0 0 28px rgba(255,180,40,.18);
}

.dining-image-badge span{
    display:block;
    margin-bottom:4px;
    font-size:13px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:1.3px;
    color:rgba(255,255,255,.60);
}

.dining-image-badge strong{
    display:block;
    font-size:24px;
    color:#fff;
}

/* Main Content */

.dining-main-content{
    padding:46px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.dining-main-content h3{
    font-size:36px;
    line-height:1.25;
    margin-bottom:24px;
}

.dining-main-content p{
    margin-bottom:20px;
    font-size:17px;
    line-height:1.92;
    color:rgba(255,255,255,.80);
}

.dining-main-content p:last-child{
    margin-bottom:0;
}

/* Feature Cards */

.dining-features-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
    margin-bottom:34px;
}

.dining-feature-card{
    min-height:310px;
    padding:32px 26px;
    transition:.35s ease;
}

.dining-feature-card:hover,
.dining-choice-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 24px 50px rgba(0,0,0,.33),
        0 0 30px rgba(255,180,40,.11);
}

.dining-feature-icon,
.dining-asian-icon,
.dining-note-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:24px;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.dining-feature-icon svg,
.dining-asian-icon svg,
.dining-note-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.dining-feature-card h4{
    min-height:58px;
    margin-bottom:14px;
    font-size:22px;
    line-height:1.28;
}

.dining-feature-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

/* Hours */

.dining-hours-panel{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:30px;
    align-items:center;
    padding:40px;
    margin-bottom:34px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.dining-hours-content h3{
    font-size:34px;
    line-height:1.28;
    margin-bottom:18px;
}

.dining-hours-content p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.dining-hours-list{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
}

.dining-hours-item{
    padding:22px;
    border-radius:20px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.dining-hours-item span{
    display:block;
    margin-bottom:7px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,255,255,.56);
}

.dining-hours-item strong{
    display:block;
    font-size:19px;
    line-height:1.35;
    color:#fff;
}

/* Asian Cuisine */

.dining-asian-panel{
    display:flex;
    gap:28px;
    align-items:flex-start;
    padding:38px 40px;
    margin-bottom:34px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.dining-asian-icon{
    margin-bottom:0;
}

.dining-asian-content h3{
    font-size:30px;
    line-height:1.3;
    margin-bottom:14px;
}

.dining-asian-content p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

/* Deli */

.dining-deli-panel{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:30px;
    padding:40px;
    margin-bottom:34px;
}

.dining-deli-content h3{
    font-size:34px;
    line-height:1.28;
    margin-bottom:18px;
}

.dining-deli-content p{
    margin-bottom:18px;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.dining-deli-content p:last-child{
    margin-bottom:0;
}

.dining-deli-status{
    display:grid;
    gap:16px;
}

.dining-deli-item{
    padding:22px;
    border-radius:20px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.dining-deli-item span{
    display:block;
    margin-bottom:7px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,255,255,.56);
}

.dining-deli-item strong{
    display:block;
    font-size:19px;
    line-height:1.35;
    color:#fff;
}

/* Visitor Choice */

.dining-choice-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:34px;
}

.dining-choice-card{
    min-height:230px;
    padding:30px 28px;
    transition:.35s ease;
}

.dining-choice-card > span{
    display:block;
    margin-bottom:9px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,200,40,.86);
}

.dining-choice-card h4{
    margin-bottom:13px;
    font-size:23px;
    line-height:1.3;
}

.dining-choice-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

/* Note */

.dining-note{
    display:flex;
    gap:26px;
    align-items:flex-start;
    padding:36px 40px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.dining-note-icon{
    margin-bottom:0;
}

.dining-note h3{
    font-size:30px;
    line-height:1.3;
    margin-bottom:14px;
}

.dining-note p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

/* Responsive */

@media (max-width:1199px){

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

@media (max-width:991px){

    .dining-heading h2{
        font-size:38px;
    }

    .dining-main,
    .dining-hours-panel,
    .dining-deli-panel{
        grid-template-columns:1fr;
    }

    .dining-image,
    .dining-image img{
        min-height:420px;
    }

    .dining-main-content,
    .dining-hours-content,
    .dining-deli-content,
    .dining-feature-card,
    .dining-choice-card{
        text-align:center;
    }

    .dining-feature-icon{
        margin-left:auto;
        margin-right:auto;
    }

    .dining-asian-panel,
    .dining-note{
        display:block;
        text-align:center;
    }

    .dining-asian-icon,
    .dining-note-icon{
        margin:0 auto 22px;
    }

    .dining-choice-grid{
        grid-template-columns:1fr;
    }
}

@media (max-width:576px){

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

    .dining-heading h2{
        font-size:31px;
    }

    .dining-heading p,
    .dining-main-content p,
    .dining-hours-content p,
    .dining-asian-content p,
    .dining-deli-content p,
    .dining-note p{
        font-size:16px;
        line-height:1.8;
    }

    .dining-features-grid,
    .dining-hours-list{
        grid-template-columns:1fr;
    }

    .dining-image,
    .dining-image img{
        min-height:320px;
    }

    .dining-main-content,
    .dining-hours-panel,
    .dining-asian-panel,
    .dining-deli-panel,
    .dining-note{
        padding:30px 22px;
    }

    .dining-feature-card,
    .dining-choice-card{
        min-height:auto;
        padding:30px 24px;
    }

    .dining-image-badge{
        left:18px;
        right:18px;
        bottom:18px;
        padding:16px 18px;
    }

    .dining-image-badge strong{
        font-size:20px;
    }
}

/* ===================================
   LIVE MUSIC & ENTERTAINMENT SECTION
=================================== */

.entertainment-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 16%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 82%, rgba(255,221,45,.09), transparent 34%);
}

.entertainment-section::before{
    content:"";
    position:absolute;
    left:-180px;
    top:140px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(255,180,35,.07);
    filter:blur(28px);
    pointer-events:none;
}

/* Heading */

.entertainment-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.entertainment-kicker,
.entertainment-small-label{
    display:inline-block;
    margin-bottom:16px;
    font-size:14px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.entertainment-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.entertainment-heading p{
    max-width:850px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

/* Shared Panels */

.entertainment-image,
.entertainment-main-content,
.entertainment-card,
.entertainment-stage-panel,
.entertainment-comedy-panel,
.entertainment-choice-card,
.entertainment-note{
    border-radius:28px;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.055),
            rgba(255,255,255,.025)
        );
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 18px 38px rgba(0,0,0,.24);
}

/* Main */

.entertainment-main{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:34px;
    align-items:stretch;
    margin-bottom:34px;
}

/* Image */

.entertainment-image{
    position:relative;
    overflow:hidden;
    min-height:520px;
    border-color:rgba(255,200,40,.22);
}

.entertainment-image img{
    width:100%;
    height:100%;
    min-height:520px;
    object-fit:cover;
    display:block;
    transition:.45s ease;
}

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

.entertainment-image::after{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            transparent 44%,
            rgba(0,0,0,.78)
        );
}

.entertainment-image-badge{
    position:absolute;
    left:28px;
    bottom:28px;
    z-index:2;
    padding:18px 24px;
    border-radius:18px;
    background:rgba(15,12,18,.90);
    border:1px solid rgba(255,200,40,.34);
    box-shadow:0 0 28px rgba(255,180,40,.18);
}

.entertainment-image-badge span{
    display:block;
    margin-bottom:4px;
    font-size:13px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:1.3px;
    color:rgba(255,255,255,.60);
}

.entertainment-image-badge strong{
    display:block;
    font-size:24px;
    color:#fff;
}

/* Main Content */

.entertainment-main-content{
    padding:46px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.entertainment-main-content h3{
    font-size:36px;
    line-height:1.25;
    margin-bottom:24px;
}

.entertainment-main-content p{
    margin-bottom:20px;
    font-size:17px;
    line-height:1.92;
    color:rgba(255,255,255,.80);
}

.entertainment-main-content p:last-child{
    margin-bottom:0;
}

/* Cards */

.entertainment-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:34px;
}

.entertainment-card{
    min-height:290px;
    padding:32px 28px;
    transition:.35s ease;
}

.entertainment-card:hover,
.entertainment-choice-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 24px 50px rgba(0,0,0,.33),
        0 0 30px rgba(255,180,40,.11);
}

.entertainment-card-icon,
.entertainment-comedy-icon,
.entertainment-note-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:24px;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.entertainment-card-icon svg,
.entertainment-comedy-icon svg,
.entertainment-note-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.entertainment-card h4{
    margin-bottom:14px;
    font-size:23px;
    line-height:1.28;
}

.entertainment-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

/* Bayou Stage */

.entertainment-stage-panel{
    display:grid;
    grid-template-columns:1.15fr .85fr;
    gap:30px;
    align-items:center;
    padding:40px;
    margin-bottom:34px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.entertainment-stage-content h3{
    font-size:34px;
    line-height:1.28;
    margin-bottom:18px;
}

.entertainment-stage-content p{
    margin-bottom:18px;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.entertainment-stage-content p:last-child{
    margin-bottom:0;
}

.entertainment-stage-summary{
    display:grid;
    gap:16px;
}

.entertainment-summary-item{
    padding:22px 24px;
    border-radius:20px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.entertainment-summary-item span{
    display:block;
    margin-bottom:7px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,255,255,.56);
}

.entertainment-summary-item strong{
    display:block;
    font-size:20px;
    line-height:1.35;
    color:#fff;
}

/* Comedy */

.entertainment-comedy-panel{
    display:flex;
    gap:28px;
    align-items:flex-start;
    padding:40px;
    margin-bottom:34px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.entertainment-comedy-icon{
    margin-bottom:0;
}

.entertainment-comedy-content h3{
    font-size:32px;
    line-height:1.3;
    margin-bottom:15px;
}

.entertainment-comedy-content p{
    margin-bottom:17px;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.entertainment-comedy-btn{
    display:inline-block;
    margin-top:6px;
    padding:13px 28px;
    border-radius:30px;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    color:#151016;
    font-size:15px;
    font-weight:800;
    transition:.3s ease;
}

.entertainment-comedy-btn:hover{
    color:#151016;
    transform:translateY(-3px);
    box-shadow:0 0 22px rgba(255,190,40,.35);
}

/* Choice Cards */

.entertainment-choice-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:34px;
}

.entertainment-choice-card{
    min-height:230px;
    padding:30px 28px;
    transition:.35s ease;
}

.entertainment-choice-card span{
    display:block;
    margin-bottom:9px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,200,40,.86);
}

.entertainment-choice-card h4{
    margin-bottom:13px;
    font-size:23px;
    line-height:1.3;
}

.entertainment-choice-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

/* Note */

.entertainment-note{
    display:flex;
    gap:26px;
    align-items:flex-start;
    padding:36px 40px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.entertainment-note-icon{
    margin-bottom:0;
}

.entertainment-note h3{
    font-size:30px;
    line-height:1.3;
    margin-bottom:14px;
}

.entertainment-note p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

/* Responsive */

@media (max-width:991px){

    .entertainment-heading h2{
        font-size:38px;
    }

    .entertainment-main,
    .entertainment-stage-panel{
        grid-template-columns:1fr;
    }

    .entertainment-image,
    .entertainment-image img{
        min-height:420px;
    }

    .entertainment-main-content,
    .entertainment-stage-content,
    .entertainment-card,
    .entertainment-choice-card{
        text-align:center;
    }

    .entertainment-card-icon{
        margin-left:auto;
        margin-right:auto;
    }

    .entertainment-comedy-panel,
    .entertainment-note{
        display:block;
        text-align:center;
    }

    .entertainment-comedy-icon,
    .entertainment-note-icon{
        margin:0 auto 22px;
    }

    .entertainment-choice-grid{
        grid-template-columns:1fr;
    }
}

@media (max-width:768px){

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

@media (max-width:576px){

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

    .entertainment-heading h2{
        font-size:31px;
    }

    .entertainment-heading p,
    .entertainment-main-content p,
    .entertainment-stage-content p,
    .entertainment-comedy-content p,
    .entertainment-note p{
        font-size:16px;
        line-height:1.8;
    }

    .entertainment-image,
    .entertainment-image img{
        min-height:320px;
    }

    .entertainment-main-content,
    .entertainment-stage-panel,
    .entertainment-comedy-panel,
    .entertainment-note{
        padding:30px 22px;
    }

    .entertainment-card,
    .entertainment-choice-card{
        min-height:auto;
        padding:30px 24px;
    }

    .entertainment-image-badge{
        left:18px;
        right:18px;
        bottom:18px;
        padding:16px 18px;
    }

    .entertainment-image-badge strong{
        font-size:20px;
    }
}

/* ===================================
   LIVE MUSIC & ENTERTAINMENT SECTION
   NO IMAGE / NO BUTTONS
=================================== */

.entertainment-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 16%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 82%, rgba(255,221,45,.09), transparent 34%);
}

.entertainment-section::before{
    content:"";
    position:absolute;
    left:-180px;
    top:140px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(255,180,35,.07);
    filter:blur(28px);
    pointer-events:none;
}

/* Heading */

.entertainment-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.entertainment-kicker,
.entertainment-small-label{
    display:inline-block;
    margin-bottom:16px;
    font-size:14px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.entertainment-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.entertainment-heading p{
    max-width:850px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

/* Shared Blocks */

.entertainment-intro-main,
.entertainment-overview,
.entertainment-card,
.entertainment-stage-panel,
.entertainment-comedy-panel,
.entertainment-choice-card,
.entertainment-note{
    border-radius:28px;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.055),
            rgba(255,255,255,.025)
        );
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 18px 38px rgba(0,0,0,.24);
}

/* Intro */

.entertainment-intro{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:28px;
    margin-bottom:34px;
}

.entertainment-intro-main{
    padding:44px;
}

.entertainment-intro-main h3{
    font-size:36px;
    line-height:1.25;
    margin-bottom:22px;
}

.entertainment-intro-main p{
    margin-bottom:18px;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.entertainment-intro-main p:last-child{
    margin-bottom:0;
}

/* Overview */

.entertainment-overview{
    padding:26px;
    display:grid;
    gap:16px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.entertainment-overview-item,
.entertainment-summary-item,
.entertainment-comedy-info{
    padding:22px;
    border-radius:20px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.entertainment-overview-item span,
.entertainment-summary-item span,
.entertainment-comedy-info span{
    display:block;
    margin-bottom:7px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,255,255,.56);
}

.entertainment-overview-item strong,
.entertainment-summary-item strong,
.entertainment-comedy-info strong{
    display:block;
    font-size:20px;
    line-height:1.35;
    color:#fff;
}

/* Cards */

.entertainment-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:34px;
}

.entertainment-card{
    min-height:315px;
    padding:32px 28px;
    transition:.35s ease;
}

.entertainment-card:hover,
.entertainment-choice-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 24px 50px rgba(0,0,0,.33),
        0 0 30px rgba(255,180,40,.11);
}

.entertainment-card-icon,
.entertainment-comedy-icon,
.entertainment-note-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:22px;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.entertainment-card-icon svg,
.entertainment-comedy-icon svg,
.entertainment-note-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.entertainment-card-label{
    display:block;
    margin-bottom:9px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,200,40,.86);
}

.entertainment-card h3{
    margin-bottom:14px;
    font-size:24px;
    line-height:1.3;
}

.entertainment-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

/* Bayou */

.entertainment-stage-panel{
    display:grid;
    grid-template-columns:1.15fr .85fr;
    gap:30px;
    align-items:center;
    padding:40px;
    margin-bottom:34px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.entertainment-stage-content h3{
    font-size:34px;
    line-height:1.28;
    margin-bottom:18px;
}

.entertainment-stage-content p{
    margin-bottom:18px;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.entertainment-stage-content p:last-child{
    margin-bottom:0;
}

.entertainment-stage-summary{
    display:grid;
    gap:16px;
}

/* Comedy */

.entertainment-comedy-panel{
    display:flex;
    gap:28px;
    align-items:flex-start;
    padding:40px;
    margin-bottom:34px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.entertainment-comedy-icon{
    margin-bottom:0;
}

.entertainment-comedy-content{
    flex:1;
}

.entertainment-comedy-content h3{
    font-size:32px;
    line-height:1.3;
    margin-bottom:15px;
}

.entertainment-comedy-content p{
    margin-bottom:17px;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.entertainment-comedy-info{
    margin-top:8px;
    max-width:330px;
}

/* Choice Cards */

.entertainment-choice-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:34px;
}

.entertainment-choice-card{
    min-height:225px;
    padding:30px 28px;
    transition:.35s ease;
}

.entertainment-choice-card span{
    display:block;
    margin-bottom:9px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,200,40,.86);
}

.entertainment-choice-card h4{
    margin-bottom:13px;
    font-size:23px;
    line-height:1.3;
}

.entertainment-choice-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

/* Note */

.entertainment-note{
    display:flex;
    gap:26px;
    align-items:flex-start;
    padding:36px 40px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.entertainment-note-icon{
    margin-bottom:0;
}

.entertainment-note h3{
    font-size:30px;
    line-height:1.3;
    margin-bottom:14px;
}

.entertainment-note p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

/* Responsive */

@media (max-width:991px){

    .entertainment-heading h2{
        font-size:38px;
    }

    .entertainment-intro,
    .entertainment-stage-panel{
        grid-template-columns:1fr;
    }

    .entertainment-grid,
    .entertainment-choice-grid{
        grid-template-columns:1fr;
    }

    .entertainment-intro-main,
    .entertainment-card,
    .entertainment-stage-content,
    .entertainment-choice-card{
        text-align:center;
    }

    .entertainment-card-icon{
        margin-left:auto;
        margin-right:auto;
    }

    .entertainment-comedy-panel,
    .entertainment-note{
        display:block;
        text-align:center;
    }

    .entertainment-comedy-icon,
    .entertainment-note-icon{
        margin:0 auto 22px;
    }

    .entertainment-comedy-info{
        max-width:none;
    }
}

@media (max-width:576px){

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

    .entertainment-heading h2{
        font-size:31px;
    }

    .entertainment-heading p,
    .entertainment-intro-main p,
    .entertainment-card p,
    .entertainment-stage-content p,
    .entertainment-comedy-content p,
    .entertainment-note p{
        font-size:16px;
        line-height:1.8;
    }

    .entertainment-intro-main,
    .entertainment-stage-panel,
    .entertainment-comedy-panel,
    .entertainment-note{
        padding:30px 22px;
    }

    .entertainment-card,
    .entertainment-choice-card{
        min-height:auto;
        padding:30px 24px;
    }
}

/* ===================================
   LOCATION, GETTING THERE & PARKING
=================================== */

.location-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 16%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 82%, rgba(255,221,45,.09), transparent 34%);
}

.location-section::before{
    content:"";
    position:absolute;
    right:-180px;
    top:150px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(255,180,35,.07);
    filter:blur(28px);
    pointer-events:none;
}

/* Heading */

.location-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.location-kicker,
.location-small-label{
    display:inline-block;
    margin-bottom:16px;
    font-size:14px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.location-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.location-heading p{
    max-width:850px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

/* Shared Panels */

.location-main-card,
.location-overview,
.location-card,
.parking-panel,
.location-practical-card{
    border-radius:28px;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.055),
            rgba(255,255,255,.025)
        );
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 18px 38px rgba(0,0,0,.24);
}

/* Intro */

.location-intro{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:28px;
    margin-bottom:34px;
}

.location-main-card{
    padding:44px;
}

.location-main-card h3{
    font-size:36px;
    line-height:1.25;
    margin-bottom:22px;
}

.location-main-card p{
    margin-bottom:18px;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.location-address-box{
    margin-top:25px;
    padding:22px;
    border-radius:20px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.location-address-box span{
    display:block;
    margin-bottom:8px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,255,255,.56);
}

.location-address-box strong{
    display:block;
    font-size:20px;
    line-height:1.55;
    color:#fff;
}

/* Overview */

.location-overview{
    padding:26px;
    display:grid;
    gap:16px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.location-overview-item{
    padding:22px;
    border-radius:20px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.location-overview-item span{
    display:block;
    margin-bottom:7px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,255,255,.56);
}

.location-overview-item strong{
    display:block;
    font-size:20px;
    line-height:1.35;
    color:#fff;
}

/* Transport Cards */

.location-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:34px;
}

.location-card{
    min-height:300px;
    padding:32px 28px;
    transition:.35s ease;
}

.location-card:hover,
.location-practical-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 24px 50px rgba(0,0,0,.33),
        0 0 30px rgba(255,180,40,.11);
}

.location-card-icon,
.parking-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:22px;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.location-card-icon svg,
.parking-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.location-card-label{
    display:block;
    margin-bottom:9px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,200,40,.86);
}

.location-card h3{
    margin-bottom:14px;
    font-size:24px;
    line-height:1.3;
}

.location-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

/* Parking */

.parking-panel{
    display:grid;
    grid-template-columns:auto 1.2fr .8fr;
    gap:28px;
    align-items:start;
    padding:40px;
    margin-bottom:34px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.parking-icon{
    margin-bottom:0;
}

.parking-content h3{
    font-size:32px;
    line-height:1.3;
    margin-bottom:15px;
}

.parking-content p{
    margin-bottom:17px;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

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

.parking-summary{
    display:grid;
    gap:14px;
}

.parking-summary-item{
    padding:19px 20px;
    border-radius:18px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.parking-summary-item span{
    display:block;
    margin-bottom:6px;
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1px;
    color:rgba(255,255,255,.56);
}

.parking-summary-item strong{
    display:block;
    font-size:18px;
    line-height:1.35;
    color:#fff;
}

/* Practical */

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

.location-practical-card{
    min-height:220px;
    padding:30px 28px;
    transition:.35s ease;
}

.location-practical-card span{
    display:block;
    margin-bottom:9px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,200,40,.86);
}

.location-practical-card h4{
    margin-bottom:13px;
    font-size:23px;
    line-height:1.3;
}

.location-practical-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

/* Responsive */

@media (max-width:991px){

    .location-heading h2{
        font-size:38px;
    }

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

    .location-grid,
    .location-practical-grid{
        grid-template-columns:1fr;
    }

    .location-main-card,
    .location-card,
    .location-practical-card{
        text-align:center;
    }

    .location-card-icon{
        margin-left:auto;
        margin-right:auto;
    }

    .parking-panel{
        grid-template-columns:1fr;
        text-align:center;
    }

    .parking-icon{
        margin:0 auto;
    }
}

@media (max-width:576px){

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

    .location-heading h2{
        font-size:31px;
    }

    .location-heading p,
    .location-main-card p,
    .location-card p,
    .parking-content p{
        font-size:16px;
        line-height:1.8;
    }

    .location-main-card,
    .parking-panel{
        padding:30px 22px;
    }

    .location-card,
    .location-practical-card{
        min-height:auto;
        padding:30px 24px;
    }
}

/* ===================================
   OPENING HOURS & ADMISSION
=================================== */

.admission-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 16%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 82%, rgba(255,221,45,.09), transparent 34%);
}

.admission-section::before{
    content:"";
    position:absolute;
    left:-180px;
    top:150px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(255,180,35,.07);
    filter:blur(28px);
    pointer-events:none;
}

/* Heading */

.admission-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.admission-kicker,
.admission-small-label{
    display:inline-block;
    margin-bottom:16px;
    font-size:14px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.admission-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.admission-heading p{
    max-width:850px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

/* Shared */

.admission-hours-main,
.admission-hours-overview,
.admission-schedule-card,
.admission-age-panel,
.admission-id-panel,
.admission-note{
    border-radius:28px;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.055),
            rgba(255,255,255,.025)
        );
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 18px 38px rgba(0,0,0,.24);
}

/* Main Hours */

.admission-intro{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:28px;
    margin-bottom:34px;
}

.admission-hours-main{
    padding:44px;
}

.admission-hours-main h3{
    font-size:36px;
    line-height:1.25;
    margin-bottom:22px;
}

.admission-hours-main p{
    margin-bottom:18px;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.admission-main-hours{
    margin-top:25px;
    padding:22px;
    border-radius:20px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.admission-main-hours span{
    display:block;
    margin-bottom:7px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,255,255,.56);
}

.admission-main-hours strong{
    display:block;
    font-size:30px;
    color:#fff;
}

/* Overview */

.admission-hours-overview{
    padding:26px;
    display:grid;
    gap:16px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.admission-overview-item,
.admission-id-item{
    padding:22px;
    border-radius:20px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.admission-overview-item span,
.admission-id-item span{
    display:block;
    margin-bottom:7px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,255,255,.56);
}

.admission-overview-item strong,
.admission-id-item strong{
    display:block;
    font-size:20px;
    line-height:1.35;
    color:#fff;
}

/* Separate Schedules */

.admission-schedule-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:24px;
    margin-bottom:34px;
}

.admission-schedule-card{
    padding:34px 30px;
    transition:.35s ease;
}

.admission-schedule-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 24px 50px rgba(0,0,0,.33),
        0 0 30px rgba(255,180,40,.11);
}

.admission-card-icon,
.admission-age-icon,
.admission-note-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:22px;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.admission-card-icon svg,
.admission-age-icon svg,
.admission-note-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.admission-card-label{
    display:block;
    margin-bottom:9px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,200,40,.86);
}

.admission-schedule-card h3{
    margin-bottom:18px;
    font-size:26px;
    line-height:1.3;
}

.admission-time-row{
    display:flex;
    justify-content:space-between;
    gap:20px;
    padding:14px 0;
    border-bottom:1px solid rgba(255,255,255,.08);
}

.admission-time-row span{
    color:rgba(255,255,255,.65);
}

.admission-time-row strong{
    color:#fff;
    text-align:right;
}

.admission-schedule-card p{
    margin:18px 0 0;
    font-size:15.5px;
    line-height:1.75;
    color:rgba(255,255,255,.75);
}

/* Age */

.admission-age-panel{
    display:grid;
    grid-template-columns:auto 1fr .35fr;
    gap:28px;
    align-items:center;
    padding:40px;
    margin-bottom:34px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.admission-age-icon{
    margin-bottom:0;
}

.admission-age-content h3{
    font-size:32px;
    line-height:1.3;
    margin-bottom:15px;
}

.admission-age-content p{
    margin-bottom:16px;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.admission-age-number{
    text-align:center;
    padding:24px;
    border-radius:22px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.admission-age-number span{
    display:block;
    margin-bottom:7px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    color:rgba(255,255,255,.56);
}

.admission-age-number strong{
    font-size:46px;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

/* ID */

.admission-id-panel{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:30px;
    padding:40px;
    margin-bottom:34px;
}

.admission-id-content h3{
    font-size:34px;
    line-height:1.28;
    margin-bottom:18px;
}

.admission-id-content p{
    margin-bottom:18px;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.admission-id-summary{
    display:grid;
    gap:16px;
}

/* Note */

.admission-note{
    display:flex;
    gap:26px;
    align-items:flex-start;
    padding:36px 40px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.admission-note-icon{
    margin-bottom:0;
}

.admission-note h3{
    font-size:30px;
    line-height:1.3;
    margin-bottom:14px;
}

.admission-note p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

/* Responsive */

@media (max-width:991px){

    .admission-heading h2{
        font-size:38px;
    }

    .admission-intro,
    .admission-schedule-grid,
    .admission-id-panel{
        grid-template-columns:1fr;
    }

    .admission-age-panel{
        grid-template-columns:1fr;
        text-align:center;
    }

    .admission-age-icon{
        margin:0 auto;
    }

    .admission-note{
        display:block;
        text-align:center;
    }

    .admission-note-icon{
        margin:0 auto 22px;
    }
}

@media (max-width:576px){

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

    .admission-heading h2{
        font-size:31px;
    }

    .admission-heading p,
    .admission-hours-main p,
    .admission-age-content p,
    .admission-id-content p,
    .admission-note p{
        font-size:16px;
        line-height:1.8;
    }

    .admission-hours-main,
    .admission-age-panel,
    .admission-id-panel,
    .admission-note{
        padding:30px 22px;
    }

    .admission-time-row{
        display:block;
    }

    .admission-time-row strong{
        display:block;
        margin-top:5px;
        text-align:left;
    }
}

/* ===================================
   ACCESSIBILITY & GUEST SERVICES
=================================== */

.guest-services-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 16%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 82%, rgba(255,221,45,.09), transparent 34%);
}

.guest-services-section::before{
    content:"";
    position:absolute;
    right:-180px;
    top:150px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(255,180,35,.07);
    filter:blur(28px);
    pointer-events:none;
}

/* Heading */

.guest-services-heading{
    max-width:960px;
    margin:0 auto 70px;
}

.guest-services-kicker,
.guest-services-small-label{
    display:inline-block;
    margin-bottom:16px;
    font-size:14px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.guest-services-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.guest-services-heading p{
    max-width:850px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

/* Shared */

.guest-services-main,
.guest-services-contact,
.guest-services-card,
.guest-services-questions,
.guest-services-note{
    border-radius:28px;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.055),
            rgba(255,255,255,.025)
        );
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.12),
        0 18px 38px rgba(0,0,0,.24);
}

/* Intro */

.guest-services-intro{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:28px;
    margin-bottom:34px;
}

.guest-services-main{
    padding:44px;
}

.guest-services-main h3{
    font-size:36px;
    line-height:1.25;
    margin-bottom:22px;
}

.guest-services-main p{
    margin-bottom:18px;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.guest-services-main p:last-child{
    margin-bottom:0;
}

/* Contact */

.guest-services-contact{
    padding:26px;
    display:grid;
    gap:16px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.guest-services-contact-item{
    padding:22px;
    border-radius:20px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.guest-services-contact-item span{
    display:block;
    margin-bottom:7px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,255,255,.56);
}

.guest-services-contact-item strong{
    display:block;
    font-size:19px;
    line-height:1.4;
    color:#fff;
}

/* Cards */

.guest-services-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-bottom:34px;
}

.guest-services-card{
    min-height:300px;
    padding:32px 28px;
    transition:.35s ease;
}

.guest-services-card:hover{
    transform:translateY(-7px);
    border-color:rgba(255,200,40,.34);
    box-shadow:
        inset 1px 1px 24px rgba(255,200,39,.18),
        0 24px 50px rgba(0,0,0,.33),
        0 0 30px rgba(255,180,40,.11);
}

.guest-services-icon,
.guest-services-note-icon{
    width:68px;
    height:68px;
    min-width:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:22px;
    border-radius:22px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    box-shadow:0 0 24px rgba(255,190,40,.30);
}

.guest-services-icon svg,
.guest-services-note-icon svg{
    width:34px;
    height:34px;
    stroke:currentColor;
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.guest-services-card-label{
    display:block;
    margin-bottom:9px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:1.1px;
    color:rgba(255,200,40,.86);
}

.guest-services-card h3{
    margin-bottom:14px;
    font-size:24px;
    line-height:1.3;
}

.guest-services-card p{
    margin:0;
    font-size:15.5px;
    line-height:1.78;
    color:rgba(255,255,255,.76);
}

/* Questions */

.guest-services-questions{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:30px;
    padding:40px;
    margin-bottom:34px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.guest-services-questions-content h3{
    font-size:34px;
    line-height:1.28;
    margin-bottom:18px;
}

.guest-services-questions-content p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

.guest-services-question-list{
    display:grid;
    gap:14px;
}

.guest-services-question-item{
    display:grid;
    grid-template-columns:48px 1fr;
    gap:16px;
    align-items:center;
    padding:18px 20px;
    border-radius:18px;
    background:rgba(0,0,0,.20);
    border:1px solid rgba(255,255,255,.07);
}

.guest-services-question-item span{
    width:48px;
    height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:15px;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    font-size:14px;
    font-weight:900;
}

.guest-services-question-item p{
    margin:0;
    font-size:15.5px;
    line-height:1.65;
    color:rgba(255,255,255,.78);
}

/* Note */

.guest-services-note{
    display:flex;
    gap:26px;
    align-items:flex-start;
    padding:36px 40px;
    background:
        linear-gradient(
            135deg,
            rgba(255,156,25,.12),
            rgba(255,255,255,.035)
        );
    border-color:rgba(255,200,40,.23);
}

.guest-services-note-icon{
    margin-bottom:0;
}

.guest-services-note h3{
    font-size:30px;
    line-height:1.3;
    margin-bottom:14px;
}

.guest-services-note p{
    margin:0;
    font-size:17px;
    line-height:1.9;
    color:rgba(255,255,255,.80);
}

/* Responsive */

@media (max-width:991px){

    .guest-services-heading h2{
        font-size:38px;
    }

    .guest-services-intro,
    .guest-services-questions{
        grid-template-columns:1fr;
    }

    .guest-services-grid{
        grid-template-columns:1fr;
    }

    .guest-services-main,
    .guest-services-card,
    .guest-services-questions-content{
        text-align:center;
    }

    .guest-services-icon{
        margin-left:auto;
        margin-right:auto;
    }

    .guest-services-note{
        display:block;
        text-align:center;
    }

    .guest-services-note-icon{
        margin:0 auto 22px;
    }
}

@media (max-width:576px){

    .guest-services-heading{
        margin-bottom:45px;
    }

    .guest-services-heading h2{
        font-size:31px;
    }

    .guest-services-heading p,
    .guest-services-main p,
    .guest-services-card p,
    .guest-services-questions-content p,
    .guest-services-note p{
        font-size:16px;
        line-height:1.8;
    }

    .guest-services-main,
    .guest-services-questions,
    .guest-services-note{
        padding:30px 22px;
    }

    .guest-services-card{
        min-height:auto;
        padding:30px 24px;
    }

    .guest-services-question-item{
        grid-template-columns:1fr;
        text-align:center;
    }

    .guest-services-question-item span{
        margin:0 auto;
    }
}

/* ===================================
   FIRST VISIT FAQ
=================================== */

.faq-section-custom{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 16%, rgba(255,156,25,.13), transparent 32%),
        radial-gradient(circle at 88% 82%, rgba(255,221,45,.09), transparent 34%);
}

.faq-custom-heading{
    max-width:900px;
    margin:0 auto 70px;
}

.faq-custom-kicker{
    display:inline-block;
    margin-bottom:16px;
    font-size:14px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
    background:linear-gradient(90deg,#ff9c19,#ffdd2d);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

.faq-custom-heading h2{
    font-size:46px;
    line-height:1.18;
    margin-bottom:24px;
}

.faq-custom-heading p{
    max-width:760px;
    margin:0 auto;
    font-size:18px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

/* FAQ Wrapper */

.faq-custom-wrapper{
    max-width:980px;
    margin:0 auto;
    display:grid;
    gap:16px;
}

.faq-custom-item{
    overflow:hidden;
    border-radius:22px;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.055),
            rgba(255,255,255,.025)
        );
    border:1px solid rgba(255,255,255,.08);
    box-shadow:
        inset 1px 1px 18px rgba(255,200,39,.10),
        0 15px 32px rgba(0,0,0,.22);
    transition:.3s ease;
}

.faq-custom-item:hover{
    border-color:rgba(255,200,40,.26);
}

/* Question */

.faq-custom-question{
    width:100%;
    position:relative;
    padding:24px 76px 24px 28px;
    border:none;
    background:transparent;
    color:#fff;
    text-align:left;
    font-size:19px;
    font-weight:800;
    line-height:1.4;
    cursor:pointer;
}

.faq-custom-question::after{
    content:"+";
    position:absolute;
    right:26px;
    top:50%;
    transform:translateY(-50%);
    width:38px;
    height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:linear-gradient(135deg,#ff9c19,#ffdd2d);
    color:#151016;
    font-size:24px;
    font-weight:900;
    box-shadow:0 0 18px rgba(255,190,40,.25);
    transition:.3s ease;
}

.faq-custom-question:not(.collapsed)::after{
    content:"–";
}

/* Answer */

.faq-custom-answer{
    padding:0 28px 26px;
    max-width:900px;
    font-size:16.5px;
    line-height:1.85;
    color:rgba(255,255,255,.78);
}

/* Responsive */

@media (max-width:576px){

    .faq-custom-heading{
        margin-bottom:45px;
    }

    .faq-custom-heading h2{
        font-size:31px;
    }

    .faq-custom-heading p,
    .faq-custom-answer{
        font-size:16px;
        line-height:1.8;
    }

    .faq-custom-question{
        padding:22px 66px 22px 22px;
        font-size:18px;
    }

    .faq-custom-question::after{
        right:18px;
        width:34px;
        height:34px;
        font-size:21px;
    }

    .faq-custom-answer{
        padding:0 22px 23px;
    }
}

/* ===================================
   ELBOW RIVER LEGAL PAGE REFINEMENTS
=================================== */

.legal-page{
    min-height:100vh;
}

.legal-hero{
    background:
        radial-gradient(circle at 18% 20%, rgba(255,156,25,.12), transparent 30%),
        radial-gradient(circle at 82% 70%, rgba(255,221,45,.07), transparent 32%);
}

.legal-hero .nl-section-kicker{
    margin-bottom:18px;
}

.legal-sidebar{
    max-height:calc(100vh - 140px);
    overflow:auto;
}

.legal-sidebar a:last-child{
    border-bottom:none;
}

.legal-card{
    overflow:hidden;
}

.legal-block h2{
    color:#fff;
}

.legal-block p + p{
    margin-top:12px;
}

.legal-block strong{
    color:#fff;
}

.legal-header .navbar-brand img{
    max-width:130px;
}

.legal-header .navbar-nav .nav-item{
    margin-left:28px;
}

@media (max-width:1199px){
    .legal-header .navbar-nav .nav-item{
        margin-left:18px;
    }
}

@media (max-width:991px){
    .legal-sidebar{
        max-height:none;
        overflow:visible;
    }

    .legal-header .navbar-nav .nav-item{
        margin-left:0;
    }
}


/* ===================================
   HEADER PLAY NOW BUTTON
=================================== */

.navbar-nav .nav-item .header-play-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:10px 22px;
    margin-left:4px;
    border-radius:999px;
    background:linear-gradient(90deg,#ff9c19 0%,#ffdd2d 100%);
    color:#151016 !important;
    -webkit-text-fill-color:#151016 !important;
    font-weight:800;
    line-height:1;
    border:1px solid rgba(255,221,45,.75);
    box-shadow:
        0 0 0 1px rgba(255,255,255,.04) inset,
        0 8px 22px rgba(255,156,25,.26),
        0 0 18px rgba(255,221,45,.16);
    transition:transform .25s ease, box-shadow .25s ease, filter .25s ease;
}

.navbar-nav .nav-item .header-play-btn::before{
    display:none !important;
}

.navbar-nav .nav-item .header-play-btn:hover,
.navbar-nav .nav-item .header-play-btn:focus{
    color:#151016 !important;
    -webkit-text-fill-color:#151016 !important;
    background:linear-gradient(90deg,#ffab25 0%,#ffe45b 100%) !important;
    transform:translateY(-2px);
    box-shadow:
        0 10px 28px rgba(255,156,25,.34),
        0 0 24px rgba(255,221,45,.24);
}

.sticky .navbar-nav .nav-item .header-play-btn{
    color:#151016 !important;
    -webkit-text-fill-color:#151016 !important;
}

@media (max-width:991px){
    .navbar-nav .nav-item .header-play-btn{
        margin:8px 0 4px;
        padding:11px 20px;
        min-width:150px;
    }
}
