:root {
    --main-color: #18003A;
    --main-light-color: #8B809C;
    --primary-color: #FFFFFF;
    --secondary-color: #F4EDED;
    --hover-black: #000000;
    --red-color: #FF0000;
}

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

a {
    text-decoration: none;
}

.btn-check:active+.btn-info:focus,
.btn-check:checked+.btn-info:focus,
.btn-info.active:focus,
.btn-info:active:focus,
.show>.btn-info.dropdown-toggle:focus {
    box-shadow: unset;
}

:focus-visible {
    outline: unset;
}

.dropdown-item.active,
.dropdown-item:active {
    color: var(--hover-black);
    text-decoration: none;
    background-color: transparent;
}

.mt-50 {
    margin-top: 50px;
}

.container {
    padding-right: 15px;
    padding-left: 15px;
}

body {
    font-family: 'Roboto';
}

/* Loader */
.loader {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 999999;
    background-image: url(assets/images/ajax_loader.gif);
    background-position: 50% 50%;
    background-color: var(--secondary-color);
    background-repeat: no-repeat;
    opacity: .9;
}

/* bak to top */
.scrollToTop {
    position: fixed;
    right: 20px;
    bottom: 20px;
    height: 50px;
    width: 50px;
    color: var(--primary-color);
    background: var(--main-color);
    border-radius: 50%;
    font-size: 18px;
    text-align: center;
    z-index: 999;
    -webkit-box-shadow: 0 0 10px 5px rgb(255 255 255 / 50%);
    -moz-box-shadow: 0 0 10px 5px rgb(255 255 255 / 50%);
    -ms-box-shadow: 0 0 10px 5px rgb(255 255 255 / 50%);
    -o-box-shadow: 0 0 10px 5px rgb(255 255 255 / 50%);
    box-shadow: 0 0 10px 5px rgb(255 255 255 / 50%);
    transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    animation: 1s ease 0s infinite normal none running top-to-bottom;
}

@-webkit-keyframes top-to-bottom {

    0% {
        margin-top: 0;
    }

    50% {
        margin-bottom: -20px;
    }

    100% {
        margin-top: 0;
    }
}

.scrollToTop i {
    font-size: 21px;
    display: block;
    line-height: 52px;
}

.scrollToTop:hover,
.scrollToTop:focus {
    opacity: 0.7;
    color: var(--secondary-color);
}

/* top nav  */
#top {
    background: var(--main-color);
    font-family: 'Roboto';
}

.currency {
    color: var(--primary-color);
    padding-top: 12px;
}

.currency .symbol {
    display: none;
}

.currency i {
    padding-left: 7px;
}

.currency li {
    list-style: none;
}

.currency li a:hover {
    opacity: 0.5;
    transition: 1s;
}

.top-right {
    display: flex;
    justify-content: flex-end;
}

.contact-info a:hover {
    opacity: 0.5;
    transition: 1s;
}

.contact-info {
    padding-top: 12px;
}

.contact-info a {
    color: var(--primary-color);
    text-decoration: none;
}

.dropdown-menu {
    overflow: hidden;
}

/* header  */
header {
    position: relative;
    box-shadow: 0px 4px 40px 1px rgba(24, 0, 58, 0.5);
}

header.header-fixed {
    position: fixed;
    background: var(--primary-color);
    top: 0;
    left: 0;
    right: 0;
    z-index: 9;
}

header.header-fixed .logo img {
    max-width: 100px;
}

header.header-fixed .logo {
    margin-top: 0;
}

.logo {
    position: relative;
}

.logo a {
    display: block;
    text-align: center;
}

.logo img {
    margin: auto;
    width: 100px;
    float: left;
}

.slotclub-menu .main-menu {
    text-align: center;
    list-style: none;
}

.slotclub-menu .main-menu li {
    display: inline-block;
    position: relative;
    padding: 0px 10px 10px 10px;
    outline: none;
}

.slotclub-menu .main-menu li a {
    display: block;
    -webkit-transition: .5s;
    transition: .5s;
    position: relative;
    color: var(--main-color);
    font-size: 20px;
    font-weight: 400;
    font-family: 'Inter';
    text-transform: capitalize;
    letter-spacing: 0px;
    text-decoration: none;
}

.ac-button {
    width: 124px;
    height: 34px;
    color: var(--main-color);
    border: 1px solid var(--main-color);
    border-radius: 5px;
    text-align: center;
    font-size: 20px;
    background: linear-gradient(to top, var(--main-color) 50%, var(--primary-color) 50%);
    background-size: 100% 200%;
    background-position: top;
    transition: all 1s;
}

.ac-button:hover {
    background-position: bottom;
    color: var(--primary-color);
    border: 1px solid var(--main-color);
    border-radius: 5px;
}

.header-right {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* home banner slider */
.home-demo.home-banner.container-fluid .large-12.columns {
    padding: 0px;
}

.home-banner {
    position: sticky;
}

.owl-nav {
    text-align: center;
    position: absolute;
    top: calc(50% - 25px);
    display: flex;
    justify-content: space-between;
    right: 0;
    left: 0;
}

.owl-carousel-banner .owl-nav button.owl-prev,
.owl-carousel-banner .owl-nav button.owl-next {
    height: 50px;
    width: 50px;
    background: rgba(255, 255, 255, 0.3) !important;
    border: 1px solid var(--primary-color) !important;
    border-radius: 100%;
    position: relative;
    padding: 0 !important;
    font-size: 26px;
    line-height: 2px;
    color: var(--primary-color) !important;
    margin: 0 22px;
}

.owl-carousel-banner .owl-nav button.owl-prev:hover {
    background: var(--hover-black) !important;
    transition: 1s;
}

.owl-carousel-banner .owl-nav button.owl-next:hover {
    background: var(--hover-black) !important;
    transition: 1s;
}

/* Welcome to slot section */
.welcome-slot {
    display: inline-flex;
}

.slot-info {
    display: flex;
    align-items: center;
}

.slot-bg {
    padding-left: 0px;
}

.welcome-info {
    max-width: 700px;
}

.welcome-info h1 {
    font-family: 'Aclonica';
    font-style: normal;
    font-weight: 400;
    font-size: 48px;
    line-height: 54px;
    color: var(--main-color);
}

.welcome-info p {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 19px;
    color: var(--main-light-color);
}

.submenu {
    display: inline-flex;
    margin-bottom: 35px;
}

.submenu img {
    margin-right: 50px;
}

.submenu-info h2 {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 500;
    font-size: 22px;
    line-height: 26px;
    color: var(--main-color);
}

.submenu-info a {
    color: var(--main-color);
}

.submenu-info a:hover {
    opacity: 0.7;
}

/* be in control section  */
.title {
    text-align: center;
    font-family: 'Aclonica';
    font-style: normal;
    font-weight: 400;
    font-size: 48px;
    line-height: 54px;
    color: var(--main-color);
}

.advice {
    margin-top: 30px;
}

.control-banner {
    background-color: var(--main-color);
}

.control-img a:hover {
    opacity: 0.8;
    transition: 0.7s;
}

.control-info {
    padding: 35px;
}

.control-info a:hover {
    opacity: 0.7;
    transition: 0.5s;
}

.control-info h2 {
    color: var(--primary-color);
    font-family: 'Aclonica';
    font-style: normal;
    font-weight: 400;
    font-size: 22px;
    line-height: 25px;
}

.control-info p {
    color: var(--secondary-color);
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 19px;
    margin: 0px;
}

.support {
    margin-bottom: 0px !important;
}

/* offer section */
.offer-section a:hover {
    opacity: 0.7;
    transition: 0.5s;
}

/* Review section */
.review-section p {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 19px;
    text-align: center;
    color: var(--main-light-color);
}

.review-banner {
    background-color: var(--main-color);
    padding: 26px;
    display: flex;
}

.review {
    padding-left: 22px;
}

.review-sub p {
    font-size: 18px;
}

.review h2 {
    font-size: 22px;
    padding-top: 12px;
}

.review h2:hover {
    opacity: 0.7;
    transition: 0.5s;
}

.review p {
    text-align: left;
}

.review-sub {
    display: flex;
    justify-content: space-between;
}

.banner-img img {
    width: 600px;
    height: 180px;
}

.review-banner p,
h2 {
    color: var(--primary-color);
    font-family: 'Roboto';
}

.review-sub i {
    color: var(--red-color);
}

.review-sub span {
    color: var(--primary-color);
    border: 1px solid var(--primary-color);
    border-radius: 5px;
    font-size: 16px;
    padding: 0px 5px 0px 5px;
    margin-left: 22px;
    margin-right: 22px;
}

.review-desc img {
    width: 100% !important;
    height: 100% !important;
}

.review-desc p {
    font-size: 14px;
}

.detail {
    margin-bottom: 41px;
}

.review-img {
    margin: auto;
}

/* jackpot section */

.jackpot-section {
    background-color: var(--main-color);
    border-radius: 0px 0px 50px 50px;
    height: 760px;
    margin-top: 30px;
}

.jackpot-section h2 {
    padding-top: 24px;
    font-family: 'Aclonica';
    font-style: normal;
    font-weight: 400;
    font-size: 26px;
    line-height: 35px;
    text-align: center;
    text-transform: capitalize;
    color: var(--primary-color);
}

.winners {
    text-align: center;
    padding: 2px 49px 2px 49px;
    display: flex;
    justify-content: space-between;
}

.winners img {
    width: 30px;
    height: 30px;
    margin-right: 25px;
}

.winners-price {
    display: flex;
}

.winners p {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 500;
    font-size: 18px;
    line-height: 35px;
    color: var(--primary-color);
}

.line {
    text-align: center;
}

/* running jackpot */
.running {
    margin-top: 17px;
    text-align: center;
    color: var(--primary-color);
}

.running p {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 22px;
    line-height: 26px;
    padding: 11px 0px 0px 0px;
}

.running button {
    font-family: 'Aclonica';
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 20px;
    text-align: center;
    color: var(--primary-color);
    background: var(--main-color);
    border: 2px solid var(--primary-color);
    border-radius: 5px;
    width: 150px;
    height: 40px;
    transition: 1s;
    padding: 0;
    background: linear-gradient(to top, var(--primary-color) 50%, var(--main-color) 50%);
    background-size: 100% 200%;
    background-position: top;
}

.running button:hover {
    border: 2px solid var(--primary-color);
    border-radius: 5px;
    color: var(--main-color);
    background-position: bottom;
}

.running button:active {
    color: var(--main-color) !important;
    background: var(--primary-color) !important;
}

.running button:focus-visible {
    border: 2px solid var(--primary-color) !important;
}

.running i {
    font-size: 32px;
}

/* jackpot time */
.time {
    margin: auto;
    color: var(--primary-color);
    background: var(--main-color);
    border: 2px solid var(--primary-color);
    text-align: center;
    width: 150px;
    height: 150px;
    border-radius: 30px;
    font-family: 'Aclonica';
    font-style: normal;
    font-weight: 400;
    font-size: 22px;
    line-height: 35px;
}

.time h1 {
    font-size: 70px;
    font-family: 'Aclonica';
    padding-top: 36px;
}

.time p {
    margin-top: -20px;
}

.arrow {
    text-align: center;
}

.jackpot-time {
    margin-bottom: 22px;
}

/* footer */
footer {
    background-color: var(--main-color);
    color: var(--primary-color);
}

footer h5 {
    font-family: 'Aclonica';
    font-style: normal;
    font-weight: 400;
    font-size: 22px;
    line-height: 25px;
}

.footer-top {
    padding-top: 50px;
}

.contact_site a {
    color: var(--primary-color);
}

.contact_site i {
    font-size: 19px;
    margin-right: 5px;
}

.contact_site:hover {
    opacity: 0.7;
}

.site {
    margin-top: 27px;
}

.footer-logo {
    width: 100px;
    border-radius: 10px;
    background: var(--primary-color);
}

.footer-top .col-lg-2 {
    width: 20%;
}

.footer-description p {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    color: var(--secondary-color);
    margin-top: 14px;
}

.footer-jackpot {
    margin-top: 16px;
}

.game-div {
    margin-top: 28px;
}

.game-desc {
    display: flex;
}

.game-desc img {
    width: 60px;
    margin-right: 10px;
}

.game-info {
    width: 118px;
    display: flex;
    flex-direction: column;
}

.game-info a {
    margin: 0;
    line-height: 1.1;
    font-weight: 600;
    font-size: 14px;
    line-height: 14px;
    color: var(--primary-color);
}

.game-info a:hover {
    opacity: 0.7;
    transition: 0.5s;
}

.price {
    display: flex;
    justify-content: space-between;
    padding-top: 11px;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 600;
    font-size: 14px;
    line-height: 14px;
    color: #FFE600 !important;
}

.rating {
    color: var(--red-color);
    font-size: 9px;
}

.newsletter {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    color: var(--secondary-color);
    margin-top: 21px;
}

.newsletter .form-group {
    margin-bottom: 17px;
}

footer form {
    text-align: center;
}

footer form .btn-primary {
    width: 150px;
    background: var(--main-color);
    box-shadow: 0px 0px 10px 5px var(--primary-color);
    border-radius: 5px;
    border: 1px solid var(--primary-color);
}

footer form .btn-primary:hover {
    background: var(--primary-color) !important;
    color: var(--main-color);
    border: 1px solid var(--primary-color) !important;
    box-shadow: none;
    transition: 1s;
}

footer form .btn-primary:active {
    background-color: var(--main-color) !important;
}

footer form .btn-primary:focus-visible {
    background-color: var(--main-color);
    box-shadow: none;
}

.social-media {
    margin-bottom: 10px;
}

.social-media a,
.payment-method a {
    color: var(--primary-color);
    margin-right: 20px;
}

.payment-method a:hover,
.social-media a:hover {
    opacity: 0.7;
    transition: 0.5s;
}

p.copyright {
    text-align: center;
    padding: 25px;
    border-top: 1px solid var(--primary-color);
    margin-top: 30px;
    margin-bottom: 0px;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 600;
    font-size: 14px;
    line-height: 16px;
    color: var(--primary-color);
}

footer form .btn:hover {
    background: var(--main-color);
}

.toggled.active .fa-chevron-down:before {
    content: "\f077";
}

.logo-section p {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    color: var(--secondary-color);
    margin-top: 14px;
    margin-bottom: 0px;
}

/* question section  */

.question-section {
    margin-top: 30px;
}

.question {
    background-color: var(--main-color);
    border-radius: 0px 500px 500px 0px;
    height: 650px;
    display: flex;
    align-items: center;
    overflow: hidden;

}

.accordion {
    --bs-accordion-bg: var(--main-color);
    --bs-accordion-color: var(--primary-color);
    --bs-accordion-btn-color: var(--primary-color);
    --bs-accordion-btn-focus-border-color: none;
    --bs-accordion-btn-focus-box-shadow: none;
    --bs-accordion-active-bg: var(--main-color);
    --bs-accordion-active-color: var(--primary-color);
    --bs-accordion-border-width: 0px;
}

.accordion-body {
    margin-top: -8px;
    padding: 0px;
}

.question-desc {
    padding: 0px 86px;
}

.faq {
    padding-bottom: 50px;
}

.accordian-tittle {
    margin: 52px 0px 0px 65px;
}

.right-list i {
    padding-right: 23px;
}

.accordion-button img {
    display: none;
}

.accordion-button:not(.collapsed) img {
    display: block;
    width: 100%;
    margin-right: -100px;
}

.accordion-button+span .fa-circle-plus::before {
    content: "\f055" !important;
    font-family: "FontAwesome";
    margin-left: 8px;
    margin-right: 10px;
    width: auto;
    height: auto;
    font-size: 24px;
}

.accordion-button:not(.collapsed) span .fa-circle-plus::before {
    content: "\f056" !important;
}

.right-list button {
    border: none !important;
}

.right-title {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 500;
    font-size: 22px;
    line-height: 35px;
    background: var(--main-color);
    width: auto;
    padding: 5px 10px 5px 15px;
    border: 1px solid var(--primary-color);
    border-radius: 0px 50px 50px 0px !important;
}

.accordion-button:not(.collapsed) .right-title {
    border: none;
}

.accordion-button span i {
    padding: 0px 10px 0px 10px;
    font-size: 28px;
}

.accordion-button {
    display: block;
    padding: 0px 16px 0px 22px;
}

.accordion-item {
    background: none;
}

.qeustion-line {
    padding-left: 59px;
    margin-top: -15px;
}

.question h2 button {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 500;
    font-size: 22px;
    line-height: 35px;
    width: auto;
}

.accordion-button:not(.collapsed) {
    border: none;
}

.info p {
    color: var(--primary-color);
    padding-left: 99px;
    padding-right: 266px;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 19px;
}

.faq-button {
    margin-top: 0px !important;
}

.question h2 span {
    display: inline-block;
    font-size: 22px;
}

.question-img {
    text-align: right;
}

.question-img:hover {
    opacity: 0.5;
    transition: 0.7s;
}

.accordion-body-desc {
    padding-left: 53px;
    padding-right: 70px;
    padding-top: 10px;
}

.right-desc {
    padding: 0;
}

.right-list {
    margin-left: 200px !important;
}

.right-body {
    margin-left: 275px;
}

.left-list {
    padding-left: 60px;
    padding-top: 80px;
}


/* About us */
.slot-machine h1 {
    text-align: left;
}

.slot-machine p {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    color: var(--main-color);
}

.slot-machine {
    text-align: left;
}

.slot-machine button {
    font-family: 'Aclonica';
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 20px;
    text-align: center;
    color: var(--main-color);
    border: 2px solid var(--main-color);
    border-radius: 5px;
    width: 150px;
    height: 40px;
    background: linear-gradient(to top, var(--main-color) 50%, var(--primary-color) 50%);
    background-size: 100% 200%;
    background-position: top;
    transition: 1s;
}

.slot-machine button:focus-visible {
    border: 2px solid var(--main-color) !important;
}

.slot-machine button:hover {
    background-position: bottom;
    color: var(--primary-color) !important;
    border: 2px solid var(--main-color);
    border-radius: 5px;
}

/* tournament section */
.tournament {
    margin-top: 30px;
}

.tournament-section {
    background-color: var(--main-color);
    color: var(--primary-color);
}

.tournament button {
    font-family: 'Aclonica';
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 20px;
    text-align: center;
    color: var(--primary-color);
    background: var(--main-color);
    border: 2px solid var(--primary-color);
    border-radius: 5px;
    background: linear-gradient(to top, var(--primary-color) 50%, var(--main-color) 50%);
    background-size: 101% 200%;
    background-position: top;
    transition: 1s;
}

.tournament button:hover {
    border: 2px solid var(--primary-color);
    border-radius: 5px;
    color: var(--main-color) !important;
    background-position: bottom;
}

.tournament button:active {
    color: var(--main-color) !important;
    border: 2px solid var(--primary-color) !important;
}

.tournament-section {
    text-align: center;
    padding-top: 32px;
    padding-bottom: 32px;
}

.tornament-price {
    width: 162px;
    height: 108px;
    background: var(--primary-color);
    color: var(--main-color);
    font-family: 'Aclonica';
    font-style: normal;
    font-weight: 400;
    font-size: 26px;
    line-height: 29px;
    text-align: center;
    text-transform: capitalize;
    border-radius: 5px;
    padding-top: 15px;
    margin: auto;
    margin-bottom: 22px;
    box-shadow: inset 0px 0px 14px var(--hover-black);
}

.tournament-info p {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 19px;
    padding: 0px 8px 0px 8px;
    text-align: center;
}

/* account page */
.account-detail {
    margin-top: 30px;
}

.ac-title {
    font-family: 'Aclonica';
    font-style: normal;
    font-weight: 400;
    font-size: 24px;
    line-height: 27px;
    padding: 13px 30px 10px 30px;
    text-transform: capitalize;
    background: var(--main-color);
    color: var(--primary-color);
}

.account {
    margin-bottom: 50px;
}

.account,
.information,
.register-account,
.login-account {
    border: 2px solid var(--main-color);
}

.list ul {
    list-style: none;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 21px;
    color: var(--main-color) !important;
}

label.form-check-label {
    margin-top: 3px;
    margin-bottom: 10px;
}

.list ul li {
    padding-top: 20px;
}

.list ul li a {
    color: var(--main-color) !important;
}

.list ul li a:hover {
    opacity: 0.7;
}

.account-label::before {
    content: "*";
    color: var(--red-color);
}

.register-form {
    padding: 22px;
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 21px;
    color: var(--main-color);
}

.register-form input::placeholder {
    color: var(--primary-color) !important;
}

.form-input {
    background: var(--main-light-color);
    border-radius: 20px;
    padding: 8px 20px;
    color: var(--primary-color);
    margin-bottom: 10px;
    margin-top: 3px;
}

.form-check input {
    padding: 0px;
    border: 1px solid var(--hover-black);
}

.register-form button {
    border-radius: 20px;
    color: var(--main-color);
    font-family: 'Aclonica';
    font-style: normal;
    border: 1px solid var(--main-color);
    border-radius: 20px;
    font-weight: 400;
    font-size: 18px;
    line-height: 20px;
    text-transform: capitalize;
    padding: 10px 32px 10px 32px;
    background: linear-gradient(to top, var(--main-color) 50%, var(--primary-color) 50%);
    background-size: 100% 200%;
    background-position: top;
    transition: 1s;
}

.register-form button:hover {
    background-position: bottom;
    color: var(--primary-color);
    border: 1px solid var(--main-color);
    border-radius: 20px;
}

.register-form button:active {
    color: var(--primary-color) !important;
    border: 1px solid var(--main-color) !important;

}

.login-account a {
    color: var(--main-color) !important;
    font-weight: 500;
}

.login-account a:hover {
    opacity: 0.7;
    transition: 0.5s;
}

.forget_password {
    margin-bottom: 21px;
}

.form-control:focus {
    border-color: var(--main-color);
    box-shadow: none;
    color: var(--main-color);
    transition: 0.5s;
}

.form-check-input:checked {
    background-color: var(--main-light-color);
    border-color: var(--main-color);
    box-shadow: none;
}

.form-check-input:focus {
    border-color: var(--main-color);
    outline: 0;
    box-shadow: none;
}

/* contact us */

.contact-us textarea {
    background: var(--main-light-color);
    border-radius: 20px;
    padding: 8px 20px;
    color: var(--primary-color);
    margin-bottom: 10px;
    margin-top: 3px;
}

.contact-us textarea::placeholder {
    color: var(--primary-color) !important;
}

.address a {
    color: var(--main-color) !important;
}

.address-menu {
    padding-top: 1px;
}

.address i {
    margin-right: 9px;
}

.submitted {
    display: none;
    color: #5c9d22;
    margin-bottom: 15px;
    text-align: center;
}

/* media queries */
@media (min-width: 1551px) {
    .container {
        max-width: 1470px;
    }

    .question-img {
        padding-top: 30px;
    }
}

@media (min-width: 1400px) {
    .register {
        margin-right: 14px;
    }

    .header-right {
        justify-content: flex-end;
    }

}

@media (min-width: 1200px) {
    .position-footer-right {
        padding-left: 37px;
    }

}

@media (max-width: 1600px) {
    .space {
        display: none;
    }

    .submenu {
        margin-bottom: 7px;
    }
}

@media (max-width: 1200px) {
    .question-img {
        text-align: center;
        margin-top: 30px;
    }

}

@media (min-width: 992px) {

    .header_menu li a:hover,
    .header_menu li a.active {
        background-color: var(--main-color);
        border-radius: 0px 0px 20px 20px;
        color: var(--primary-color);
        transition: 1s;
    }

    .header_menu li a {
        padding: 35px 12px 25px 12px;
    }

    footer .fa-chevron-down {
        display: none;
    }

    .offer-img img {
        height: 500px;
    }

    .offer-section {
        margin-top: 30px;
    }

    .logo-section {
        display: none;
    }

    .footer-top {
        padding-top: 30px;
    }

}

@media (max-width: 991px) {

    body.active:before {
        top: 0;
        left: 0;
        content: "";
        width: 100%;
        display: block;
        position: fixed;
        height: 100%;
        background: rgba(0, 0, 0, .5);
        z-index: 1;
        transition: opacity 0.2s cubic-bezier(0, 0, .3, 1);
        transition-delay: 0.1s;
    }

    body.active {
        overflow: hidden;
    }

    .loader {
        background-size: 250px;
    }

    .phone-menu {
        text-align: right;
        padding: 0;
        z-index: 9;
    }

    #show-header_menu {
        border: none;
        border-radius: 5px;
        background: var(--main-color);
        color: var(--primary-color);
        width: 40px;
        height: 40px;
        font-size: 20px;
    }

    .welcome-img img.img-fluid {
        max-width: 80%;
    }

    .slotclub-menu .main-menu-outer {
        position: fixed;
        left: 0;
        top: 0;
        background: var(--primary-color);
        min-width: 250px;
        height: 100vh;
        overflow-x: hidden;
        overflow-y: auto;
        visibility: hidden;
        -webkit-transform: translate3d(-280px, 0, 0);
        transform: translate3d(-280px, 0, 0);
        -webkit-transition: all 0.5s ease-in-out 0s;
        transition: all 0.5s ease-in-out 0s;
    }

    .slotclub-menu .menu-title {
        background: var(--secondary-color);
        color: var(--main-color);
        font-weight: 500;
        font-size: 20px;
        padding: 10px 15px;
        text-align: left;
    }

    .slotclub-menu .menu-title i {
        float: right;
        font-size: 26px;
    }

    .slotclub-menu .main-menu {
        text-align: left;
        padding: 5px;
    }

    .slotclub-menu .main-menu li {
        padding: 10px;
        display: block;
    }

    .slotclub-menu .main-menu-outer.main-menu-active {
        visibility: visible;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }

    .toggled_tittle {
        border-bottom: 1px solid var(--primary-color);
    }

    footer .fa-chevron-down {
        float: right;
    }

    .footer-top .col-lg-2 {
        width: 100%;
    }

    .logo img {
        width: 70px;
    }

    .footer-description {
        display: none;
    }

    .footer_collaps {
        display: none;
        padding-bottom: 22px;
    }

    .footer-top {
        padding-top: 30px;
    }

    .position-footer-right {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
    }

    .toggled_tittle {
        margin-bottom: 22px;
        padding-bottom: 8px;
    }

    .owl-carousel-banner .owl-nav button.owl-prev,
    .owl-carousel-banner .owl-nav button.owl-next {
        height: 35px;
        width: 35px;
        font-size: 14px;
    }

    .control-section h1 {
        font-size: 32px;
    }

    .welcome-info h1 {
        font-size: 36px;
        line-height: 30px;
    }

    .welcome-info {
        margin: auto;
        padding: 25px 20px 0px 20px;
    }

    .title {
        font-size: 32px;
    }

    .detail {
        margin-bottom: 30px;
    }

    .offer-img {
        margin-top: 30px;
        text-align: center;
    }

    .slot-machine {
        margin-top: 30px;
    }

    .register-account,
    .login-account,
    .information_sec {
        margin-bottom: 50px;
    }

    .address_sec {
        margin-bottom: 0px;
    }

    .jackpot-slot {
        margin-top: -15px;
    }

    .account-detail {
        margin-top: 15px;
    }

    .right-body {
        margin-left: 220px;
    }

    .owl-nav {
        top: calc(50% - 15px);
    }

    p.copyright {
        margin-top: 0px;
    }

    .accordian-tittle {
        margin-left: 25px;
    }

    .accordion-body-desc {
        padding-left: 15px;
    }
}

@media (max-width: 767px) {
    .toggled_tittle {
        padding-bottom: 3px;
    }

    footer h5 {
        font-size: 18px;
    }

    .advice {
        margin-top: 15px;
    }

    .contact-info span {
        display: none;
    }

    .offer-img img {
        height: 252px;
    }

    .ac-button {
        font-size: 14px;
        padding-top: 4px;
    }

    .mt-50 {
        margin-top: 20px;
    }

    .review-sub {
        display: block;
    }

    .review-desc p {
        font-size: 12px;
    }

    .review-banner {
        padding: 12px;
    }

    .review-sub p {
        margin-bottom: 5px;
    }

    .review-rating {
        margin-bottom: 5px;
    }

    .offer-img {
        margin-top: 30px;
        text-align: center;
    }

    .standard {
        margin-bottom: 30px;
    }

    .information,
    .register-account,
    .account {
        margin-bottom: 20px;
    }

    .banner-img img {
        height: 141px;
    }

    a.banner-img {
        padding-top: 40px;
    }

    .accordion-button:not(.collapsed) {
        margin-left: 0px;
    }

    .right-list {
        margin-left: 30px !important;
    }

    .question-desc {
        padding: 0px 20px;
    }

    .right-body {
        margin-left: 72px;
    }

    .question-desc img {
        width: 330px;
    }

    .question h2 button {
        font-size: 16px;
    }

    .accordian-tittle {
        margin: 15px 0px 0px 0px;
    }

    .accordion-body-desc {
        font-size: 14px;
    }

    .accordion-button span i {
        padding-left: 0px;
        font-size: 22px;
    }

    .accordion-button:not(.collapsed) .right-title {
        padding-right: 0px;
    }

    .accordion-button {
        padding-left: 15px;
    }

    .tournament {
        margin-top: 15px;
    }

    .question-section {
        margin-top: 20px;
    }

    .faq {
        padding-bottom: 0px;
    }

    .accordion-body-desc {
        padding-left: 33px;
    }

    .accordion-button:not(.collapsed) .left-img {
        margin-right: -144px;
    }
}

@media (max-width: 676px) {
    .submenu-info h2 {
        font-size: 18px;
    }

    .welcome-info p {
        margin-top: -8px;
        font-size: 14px;
    }
}

@media (max-width: 495px) {
    .question h2 span {
        font-size: 14px !important;
    }

    .accordion-button span i {
        font-size: 18px;
    }

    .question {
        border-radius: 0px 100px 100px 0px;
    }

    .accordion-button:not(.collapsed) .left-img {
        margin-right: -200px;
    }

    .accordion-button:not(.collapsed) img {
        margin-right: -144px;
    }

    .right-body {
        margin-left: 56px;
    }
}

@media (max-width: 391px) {
    .accordian-tittle {
        margin-top: 0px !important;
    }
}

@media (max-width: 575px) {
    .control-banner {
        margin-bottom: 22px;
    }

    .welcome-info h1 {
        font-size: 28px;
    }

    .header-right {
        justify-content: center;
    }

    .register {
        margin-right: 10px;
    }

    .jackpot-section {
        max-width: 430px;
        margin-left: auto;
        margin-right: auto;
        height: auto;
        padding: 0 5px 20px 5px;
    }

    .winners p {
        line-height: 22px;
    }

    .winners img {
        width: 24px;
        height: 24px;
    }

    .time {
        width: 100px;
        height: 100px;
    }

    .time h1 {
        font-size: 40px;
        padding-top: 18px;
    }

    .time p {
        font-size: 16px;
    }

}

@media (max-width: 566px) {
    .ac-button {
        width: 80px;
        font-size: 14px;
    }

    .question h2 span {
        padding-left: 2px;
        font-size: 18px;
    }

    .qeustion-line img {
        width: 260px;
    }

    .qeustion-line {
        padding-left: 14px;
        margin-top: -23px;
    }

    .info p {
        font-size: 14px;
        padding-left: 40px;
        padding-right: 89px;
    }

    .right-list {
        padding-left: 22px;
        padding-top: 3px;
    }

    .left-list {
        padding-top: 18px;
    }

    .question-play {
        padding-top: 20px;
    }

    .question {
        height: 395px;
    }

    .right-list i {
        font-size: 18px;
        padding-right: 5px;
    }

    .question-info h2 {
        padding-top: 15px;
        padding-left: 11px;
    }

    .review-sub span {
        margin-left: 7px;
        margin-right: 0px;
    }

    .submenu img {
        margin-right: 90px;
    }

    .accordion-body-desc {
        padding-right: 42px;
        padding-left: 0px;
    }

    .accordion-body-desc p {
        font-size: 14px !important;
    }

    .question h2 button {
        margin-left: 0px;
    }

    .right-list {
        margin-left: -22px !important;
    }

    .right-title {
        padding-top: 0px;
        padding-bottom: 0px;
    }
}

@media (max-width: 487px) {
    .question h2 button {
        font-size: 12px;
        margin-top: 9px;
    }

    .question-desc img {
        width: 240px;
    }

    .right-desc {
        padding: 0px 5px;
    }

    .accordion-body-desc p {
        font-size: 12px !important;
    }

    .faq_title {
        line-height: 40px;
    }
}

@media (max-width: 438px) {
    .currency i {
        padding: 0;
    }

    .accordian-tittle {
        margin-top: 0px !important;
    }
}

@media (max-width: 432px) {
    .review-banner {
        display: block;
        text-align: center;
    }

    .review-sub {
        display: flex;
    }

    .currency .symbol {
        display: unset;
    }

    .code {
        display: none;
    }

    .welcome-info h1 {
        font-size: 22px;
    }

    .slot-machine p {
        font-size: 12px;
    }

    .review {
        padding-left: 0px;
    }

    .banner-img img {
        width: auto;
    }

}

@media (max-width: 375px) {

    .currency {
        margin: -4px;
    }

    .contact-info {
        padding-top: 9px;
    }

    .social-media a,
    .payment-method a {
        margin-right: 10px;
    }

    .ac-button {
        font-size: 12px;
        padding: 6px 4px 0px 4px;
    }

    .jackpot-section h2 {
        font-size: 22px;
        line-height: 26px;
    }

    .line img {
        width: 222px;
    }

    .winners {
        padding: 2px 35px 2px 35px;
    }

    .slot-machine h1 {
        font-size: 26px;
    }

    .top-right {
        font-size: 14px;
    }

    .question h2 button {
        font-size: 10px;
    }

    .accordion-body-desc p {
        font-size: 10px !important;
        padding-top: 8px;
    }

    .accordion-body-desc {
        margin-top: -3px;
    }

    .accordion-button:not(.collapsed) {
        margin-bottom: -12px;
    }

    .accordion-body-desc {
        padding-right: 8px;
    }

    .question-desc img {
        margin-top: 16px;
    }
}

@media (max-width: 425px) {
    .question {
        height: 369px;
    }


    .info p {
        font-size: 12px;
        padding-left: 32px;
        padding-right: 25px;
    }

    .owl-carousel-banner .owl-nav button.owl-prev,
    .owl-carousel-banner .owl-nav button.owl-next {
        height: 25px;
        width: 25px;
        font-size: 12px;
        line-height: 24px;
        margin: 0 12px;
    }

}

@media (max-width: 354px) {
    .info p {
        padding-right: 0px;
        padding-left: 10px;
    }

    .left-list {
        padding-left: 19px !important;
    }

    .qeustion-line {
        padding-left: 10px;
    }

    .welcome-info h1 {
        font-size: 20px;
    }
}

@media (max-width:380px) {
    .question h2 span {
        font-size: 10px !important;
    }

    .accordion-button span i {
        font-size: 14px;
    }

    .accordion-button:not(.collapsed) img {
        margin-right: -219px;
        height: 3px;
    }

    .accordion-button:not(.collapsed) .left-img {
        margin-right: -252px;
    }

    .accordion-body-desc {
        padding-right: 0px;
    }

}

@media (max-width: 390px) {
    .title {
        line-height: 38px;
    }
}

@media (max-width: 320px) {
    .review-rating {
        font-size: 12px;
    }

    .review-sub p {
        font-size: 14px;
    }
}

@media (max-width: 1199px) {
    .slot-machine p {
        font-size: 14px;
    }

    .review-img {
        margin-bottom: 26px;
    }
}

@media (min-width:500px) and (max-width:575px) {
    .control-img img {
        width: 545px;
    }
}

@media (min-width:1200px) and (max-width:1399px) {
    .slotclub-menu .main-menu li a {
        font-size: 18px;
        padding: 38px 12px 25px 12px;
    }
}

@media (min-width:991px) and (max-width:1199px) {

    .price p {
        margin-bottom: 3px;
    }

    .price {
        padding-top: 7px;
    }

    .game-div {
        margin-top: 20px;
    }

    .newsletter {
        margin-top: 12px;
    }

    .right-body {
        margin-left: 280px;
    }
}

@media (min-width:768px) and (max-width:1199px) {
    .ac-button {
        width: 99px;
    }
}

@media (min-width:576px) and (max-width:767px) {
    .jackpot-section h2 {
        font-size: 22px;
        line-height: 27px;
    }

    .winners {
        padding: 2px 10px 2px 10px;
    }
}

@media (min-width:768px) and (max-width:991px) {

    .qeustion-line {
        padding-left: 28px;
    }

    .info p {
        padding-left: 65px;
        padding-right: 210px;
    }

    .question h2 button {
        font-size: 20px;
    }

    .right-list {
        margin-left: 104px !important;
    }
}

@media (min-width:567px) and (max-width:767px) {
    .ac-button {
        width: 70px;
    }

    .line img {
        width: 210px;
    }

    .running img {
        width: 200px;
    }

    .running p {
        font-size: 18px;
    }

    .question h2 span {
        padding-left: 7px;
        font-size: 18px;
    }

    .qeustion-line img {
        width: 260px;
    }

    .qeustion-line {
        padding-left: 40px;
        margin-top: -20px;
    }

    .info p {
        font-size: 14px;
        padding-left: 40px;
        padding-right: 89px;
    }


    .left-list {
        padding-top: 37px;
    }

    .question-play {
        padding-top: 37px;
    }

    .question {
        height: 453px;
    }

    .accordion-body-desc {
        margin-left: 0px;
    }

}

@media (min-width:576px) and (max-width:991px) {
    .control-info {
        padding: 20px;
    }

    .control-info h2 {
        font-size: 16px;
    }

    .control-info p {
        font-size: 12px;
    }

    .tournament-info p {
        font-size: 12px;
    }

}

@media (min-width:992px) and (max-width:1199px) {
    .slotclub-menu .main-menu li a {
        font-size: 16px;
        padding: 38px 6px 28px 6px;
    }

    .rating {
        font-size: 8px;
    }

    .price {
        flex-direction: column;
    }

    .offer-img img {
        height: 342px;
    }

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

    .jackpot-section h2 {
        font-size: 20px;
        line-height: 26px;
    }

    .line img {
        width: 178px;
    }

    .winners {
        padding: 2px 10px 2px 10px;
    }

    .winners img {
        margin-right: 9px;
    }

    .running img {
        width: 181px;
    }

    .running p {
        font-size: 16px;
    }

    .slot-machine h1 {
        font-size: 34px;
    }

    .tournament-info p {
        font-size: 12px;
    }

    .banner-img img {
        width: 400px;
    }
}

@media (min-width:1200px) and (max-width:1399px) {
    .offer-img img {
        height: 408px;
    }

    .jackpot-section h2 {
        font-size: 24px;
    }

    .line img {
        width: 183px;
    }

    .winners {
        padding: 2px 16px 2px 16px;
    }

    .running img {
        width: 217px;
    }

    .running p {
        font-size: 18px;
    }

    .question h2 {
        font-size: 20px;
    }

    .question h2 span {
        padding-left: 12px;
        font-size: 20px;
    }

    .info p {
        padding-left: 90px;
        padding-right: 126px;
        font-size: 14px;
    }

    .question-list h2 {
        font-size: 20px;
    }

    .question-img {
        padding-top: 100px;
    }

    .slot-machine p {
        font-size: 16px;
    }

    .tournament-info p {
        font-size: 14px;
    }

    .banner-img img {
        width: 550px;
        height: 150px;
        margin-top: 15px;
        padding-left: 10px;
    }

    .question h2 button {
        font-size: 18px;
    }

    .right-list {
        margin-left: 100px !important;
    }


    .right-body {
        margin-left: 164px;
    }

    .accordian-tittle {
        margin-left: 30px;
    }

    .accordion-button {
        padding-left: 5px;
    }

    .left-desc {
        padding: 0px 30px;
    }
}

@media (min-width:1350px) and (max-width:1399px) {
    .detail {
        margin-bottom: 19px;
    }

    .review-banner {
        padding: 6px;
    }

    .review-desc p {
        font-size: 12px;
        margin-bottom: 4px;
    }
}

@media (min-width:1200px) and (max-width:1349px) {
    .detail {
        margin-bottom: 15px;
    }

    .review-banner {
        padding: 7px;
    }

    .review-desc p {
        font-size: 10px;
        margin-bottom: 4px;
    }

    .review h2 {
        font-size: 22px;
    }
}

@media (min-width:1400px) and (max-width:1550px) {
    .review-banner {
        padding: 12px;
    }

    .review-desc p {
        font-size: 12px;
    }

    .offer-img img {
        height: 473px;
    }

    .question-img {
        padding-top: 30px;
    }

    .right-list {
        margin-left: 130px !important;
    }

    .right-info {
        padding-left: 19px;
    }

    .right-body {
        margin-left: 240px;
    }
}

@media (min-width:992px) and (max-width:1440px) {
    .welcome-info p {
        font-size: 12px;
        margin-top: -10px;
    }

    .submenu-info h2 {
        font-size: 16px;
    }

    .submenu img {
        max-width: 83%;
        margin-right: 34px;
    }

    .submenu {
        margin-bottom: 4px;
    }
}

@media (min-width:992px) and (max-width:1463px) {
    .welcome-info h1 {
        font-size: 31px;
    }
}

/* ===== HERO BANNER (Mindil Beach Casino Resort) ===== */

.home-banner {
    position: relative;
    width: 100%;
    height: 520px;
    overflow: hidden;
}

.home-banner img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* overlay */

.banner-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.45);
}

/* text */

.banner-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    color: #fff;
    max-width: 750px;
    padding: 20px;
}

.banner-text h1 {
    font-family: 'Aclonica', sans-serif;
    font-size: 3.2rem;
    font-weight: 700;
    margin-bottom: 12px;
}

.banner-subtitle {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 12px;
}

.banner-description {
    font-size: 1.05rem;
    line-height: 1.5;
    margin-bottom: 20px;
}

.btn-banner {
    display: inline-block;
    padding: 14px 28px;
    background: #d4af37;
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 6px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.btn-banner:hover {
    background: #b8962e;
}

/* responsive */

@media (max-width: 768px) {

    .home-banner {
        height: 360px;
    }

    .banner-text h1 {
        font-size: 2rem;
    }

    .banner-subtitle {
        font-size: 1.1rem;
    }

    .banner-description {
        font-size: 0.95rem;
    }

}


.top-games-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
  padding: 0 10px;
}

.game-card {
  position: relative;
  width: calc(100% / 6 - 16px);
  background-color: #0A1931;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 10px rgba(0,0,0,0.25);
  transition: transform 0.3s ease;
}

.game-card img {
  width: 100%;
  height: 200px;
  object-fit: contain;
  padding: 10px;
  background-color: #fff;
  border-radius: 12px;
}

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

.overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.6);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}

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

.btn-play {
  background-color: #d4af37;
  color: #0A1931;
  font-weight: bold;
  text-transform: uppercase;
  padding: 10px 18px;
  border-radius: 6px;
  font-size: 0.9rem;
  text-decoration: none;
}

.btn-play:hover {
  background-color: #b8902e;
  color: #fff;
}

@media (max-width: 1200px) {
  .game-card {
    width: calc(100% / 4 - 16px);
  }
}
@media (max-width: 992px) {
  .game-card {
    width: calc(100% / 3 - 16px);
  }
}
@media (max-width: 600px) {
  .game-card {
    width: calc(100% / 2 - 16px);
  }
}
@media (max-width: 420px) {
  .game-card {
    width: 100%;
  }
}

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

.about-section-block {
    position: relative;
}

.about-layout {
    align-items: center;
}

.about-media-wrap {
    position: relative;
    padding: 30px 30px 30px 0;
}

.about-image-card {
    position: relative;
    background: var(--primary-color);
    border-radius: 22px;
    overflow: hidden;
    box-shadow: 0 18px 45px rgba(24, 0, 58, 0.16);
    border: 1px solid rgba(24, 0, 58, 0.08);
    z-index: 2;
}

.about-image-card img {
    width: 100%;
    height: 620px;
    object-fit: cover;
    display: block;
}

.about-media-accent {
    position: absolute;
    background: linear-gradient(135deg, var(--main-color), #2b0a5a);
    border-radius: 22px;
    z-index: 1;
}

.about-media-accent-top {
    width: 170px;
    height: 170px;
    top: 0;
    right: 0;
    opacity: 0.10;
}

.about-media-accent-bottom {
    width: 220px;
    height: 220px;
    left: -18px;
    bottom: 0;
    opacity: 0.08;
}

.about-floating-badge {
    position: absolute;
    left: 25px;
    bottom: 22px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: rgba(24, 0, 58, 0.92);
    color: var(--primary-color);
    padding: 12px 18px;
    border-radius: 999px;
    box-shadow: 0 10px 30px rgba(24, 0, 58, 0.25);
    font-family: 'Inter', sans-serif;
    font-size: 15px;
    font-weight: 600;
}

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

.about-content-box {
    padding: 10px 0 10px 24px;
}

.section-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
}

.section-eyebrow-line {
    width: 56px;
    height: 2px;
    background: linear-gradient(to right, var(--main-color), #d4af37);
    display: inline-block;
}

.section-eyebrow-text {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--main-color);
}

.section-title-main {
    font-family: 'Aclonica', sans-serif;
    font-size: 42px;
    line-height: 1.2;
    color: var(--main-color);
    margin-bottom: 18px;
}

.section-title-main span {
    color: #5a2ca0;
}

.section-subtitle {
    position: relative;
    font-family: 'Inter', sans-serif;
    font-size: 22px;
    line-height: 1.4;
    font-weight: 600;
    color: var(--main-color);
    margin-bottom: 22px;
    padding-left: 18px;
}

.section-subtitle::before {
    content: "";
    position: absolute;
    left: 0;
    top: 4px;
    bottom: 4px;
    width: 4px;
    border-radius: 10px;
    background: linear-gradient(to bottom, #d4af37, var(--main-color));
}

.section-description {
    font-family: 'Roboto', sans-serif;
    font-size: 17px;
    line-height: 1.75;
    color: var(--main-light-color);
    margin-bottom: 18px;
}

.about-feature-list {
    margin-top: 28px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.about-feature-item {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 18px 20px;
    background: #ffffff;
    border: 1px solid rgba(24, 0, 58, 0.08);
    border-radius: 18px;
    box-shadow: 0 10px 28px rgba(24, 0, 58, 0.06);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.about-feature-item:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 36px rgba(24, 0, 58, 0.10);
}

.about-feature-icon {
    flex: 0 0 54px;
    width: 54px;
    height: 54px;
    border-radius: 14px;
    background: linear-gradient(135deg, var(--main-color), #2b0a5a);
    color: var(--primary-color);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    box-shadow: 0 8px 18px rgba(24, 0, 58, 0.18);
}

.about-feature-text h4 {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    line-height: 1.3;
    font-weight: 700;
    color: var(--main-color);
    margin-bottom: 6px;
}

.about-feature-text p {
    margin: 0;
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    line-height: 1.65;
    color: var(--main-light-color);
}

.about-action-row {
    margin-top: 28px;
}

.about-primary-btn {
    display: inline-block;
    min-width: 220px;
    text-align: center;
    padding: 14px 28px;
    border-radius: 8px;
    background: linear-gradient(135deg, var(--main-color), #2b0a5a);
    color: var(--primary-color);
    font-family: 'Inter', sans-serif;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    text-decoration: none;
    box-shadow: 0 12px 26px rgba(24, 0, 58, 0.22);
    transition: all 0.3s ease;
}

.about-primary-btn:hover {
    color: var(--primary-color);
    transform: translateY(-2px);
    box-shadow: 0 18px 32px rgba(24, 0, 58, 0.28);
}

/* responsive */

@media (max-width: 1199px) {
    .section-title-main {
        font-size: 36px;
    }

    .section-subtitle {
        font-size: 20px;
    }

    .about-image-card img {
        height: 560px;
    }
}

@media (max-width: 991px) {
    .about-media-wrap {
        padding: 0;
        margin-bottom: 30px;
    }

    .about-content-box {
        padding: 0;
    }

    .about-image-card img {
        height: 480px;
    }
}

@media (max-width: 767px) {
    .section-title-main {
        font-size: 30px;
    }

    .section-subtitle {
        font-size: 18px;
        padding-left: 14px;
    }

    .section-description {
        font-size: 15px;
        line-height: 1.7;
    }

    .about-image-card img {
        height: 560px;
    }

    .about-feature-item {
        padding: 16px;
    }

    .about-feature-icon {
        width: 48px;
        height: 48px;
        font-size: 18px;
        flex-basis: 48px;
    }

    .about-feature-text h4 {
        font-size: 16px;
    }

    .about-feature-text p {
        font-size: 14px;
    }

    .about-floating-badge {
        left: 16px;
        bottom: 16px;
        padding: 10px 14px;
        font-size: 13px;
    }
}

/* ===== WHY CHOOSE / BENEFITS SECTION ===== */

.benefits-section-block {
    position: relative;
}

.benefits-heading {
    max-width: 900px;
    margin: 0 auto 34px;
}

.benefits-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
}

.benefits-eyebrow-line {
    width: 46px;
    height: 2px;
    background: linear-gradient(to right, var(--main-color), #d4af37);
    display: inline-block;
}

.benefits-eyebrow-text {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--main-color);
}

.benefits-title {
    font-family: 'Aclonica', sans-serif;
    font-size: 42px;
    line-height: 1.2;
    color: var(--main-color);
    margin-bottom: 16px;
}

.benefits-title span {
    color: #5a2ca0;
}

.benefits-subtitle {
    font-family: 'Roboto', sans-serif;
    font-size: 18px;
    line-height: 1.7;
    color: var(--main-light-color);
    max-width: 820px;
    margin: 0 auto;
}

.benefits-grid {
    row-gap: 26px;
}

.benefit-card {
    position: relative;
    height: 100%;
    background: linear-gradient(180deg, #ffffff 0%, #fbf9fd 100%);
    border: 1px solid rgba(24, 0, 58, 0.08);
    border-radius: 22px;
    padding: 30px 24px;
    box-shadow: 0 14px 36px rgba(24, 0, 58, 0.08);
    overflow: hidden;
    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.benefit-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 24px;
    width: 64px;
    height: 4px;
    border-radius: 20px;
    background: linear-gradient(to right, #d4af37, var(--main-color));
}

.benefit-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 42px rgba(24, 0, 58, 0.14);
    border-color: rgba(24, 0, 58, 0.16);
}

.benefit-icon {
    width: 64px;
    height: 64px;
    border-radius: 18px;
    background: linear-gradient(135deg, var(--main-color), #2b0a5a);
    color: var(--primary-color);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    margin-bottom: 22px;
    box-shadow: 0 10px 24px rgba(24, 0, 58, 0.18);
}

.benefit-card h3 {
    font-family: 'Inter', sans-serif;
    font-size: 22px;
    line-height: 1.35;
    font-weight: 700;
    color: var(--main-color);
    margin-bottom: 14px;
}

.benefit-card p {
    margin: 0;
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    line-height: 1.75;
    color: var(--main-light-color);
}

/* responsive */

@media (max-width: 1199px) {
    .benefits-title {
        font-size: 36px;
    }

    .benefit-card h3 {
        font-size: 20px;
    }
}

@media (max-width: 991px) {
    .benefits-heading {
        margin-bottom: 26px;
    }

    .benefits-subtitle {
        font-size: 17px;
    }
}

@media (max-width: 767px) {
    .benefits-title {
        font-size: 30px;
    }

    .benefits-subtitle {
        font-size: 15px;
        line-height: 1.7;
    }

    .benefit-card {
        padding: 24px 18px;
        border-radius: 18px;
    }

    .benefit-icon {
        width: 56px;
        height: 56px;
        font-size: 20px;
        margin-bottom: 18px;
    }

    .benefit-card h3 {
        font-size: 18px;
    }

    .benefit-card p {
        font-size: 14px;
        line-height: 1.7;
    }

    .benefits-eyebrow {
        gap: 10px;
    }

    .benefits-eyebrow-line {
        width: 30px;
    }
}

/* ===== PROMO / WELCOME BONUS SECTION ===== */

.promo-section-block {
    position: relative;
}

.promo-wrap {
    background: linear-gradient(180deg, #ffffff 0%, #faf7fd 100%);
    border: 1px solid rgba(24, 0, 58, 0.08);
    border-radius: 28px;
    padding: 36px;
    box-shadow: 0 18px 42px rgba(24, 0, 58, 0.08);
    overflow: hidden;
}

.promo-media {
    position: relative;
    padding-right: 22px;
}

.promo-media-shape {
    position: absolute;
    border-radius: 24px;
    background: linear-gradient(135deg, var(--main-color), #2b0a5a);
    opacity: 0.08;
}

.promo-media-shape-top {
    width: 180px;
    height: 180px;
    top: -12px;
    right: 0;
}

.promo-image-card {
    position: relative;
    z-index: 2;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 18px 40px rgba(24, 0, 58, 0.16);
    background: var(--primary-color);
}

.promo-image-card img {
    width: 100%;
    height: 620px;
    object-fit: cover;
    display: block;
}

.promo-badge {
    position: absolute;
    left: 22px;
    bottom: 22px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 12px 18px;
    border-radius: 999px;
    background: rgba(24, 0, 58, 0.92);
    color: var(--primary-color);
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 700;
    box-shadow: 0 10px 30px rgba(24, 0, 58, 0.24);
}

.promo-badge i {
    color: #d4af37;
}

.promo-content {
    padding-left: 18px;
}

.promo-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
}

.promo-eyebrow-line {
    width: 54px;
    height: 2px;
    background: linear-gradient(to right, var(--main-color), #d4af37);
    display: inline-block;
}

.promo-eyebrow-text {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--main-color);
}

.promo-title {
    font-family: 'Aclonica', sans-serif;
    font-size: 40px;
    line-height: 1.2;
    color: var(--main-color);
    margin-bottom: 16px;
}

.promo-title span {
    color: #5a2ca0;
}

.promo-subtitle {
    position: relative;
    font-family: 'Inter', sans-serif;
    font-size: 24px;
    line-height: 1.45;
    font-weight: 700;
    color: var(--main-color);
    margin-bottom: 22px;
    padding: 18px 22px;
    border-radius: 18px;
    background: rgba(24, 0, 58, 0.04);
    border-left: 4px solid #d4af37;
}

.promo-description {
    font-family: 'Roboto', sans-serif;
    font-size: 17px;
    line-height: 1.75;
    color: var(--main-light-color);
    margin-bottom: 18px;
}

.promo-steps {
    margin-top: 28px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.promo-step-item {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 18px 20px;
    background: #ffffff;
    border: 1px solid rgba(24, 0, 58, 0.08);
    border-radius: 18px;
    box-shadow: 0 10px 28px rgba(24, 0, 58, 0.06);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.promo-step-item:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 34px rgba(24, 0, 58, 0.10);
}

.promo-step-number {
    flex: 0 0 58px;
    width: 58px;
    height: 58px;
    border-radius: 16px;
    background: linear-gradient(135deg, var(--main-color), #2b0a5a);
    color: var(--primary-color);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 800;
    box-shadow: 0 8px 18px rgba(24, 0, 58, 0.18);
}

.promo-step-text h4 {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    line-height: 1.3;
    font-weight: 700;
    color: var(--main-color);
    margin-bottom: 6px;
}

.promo-step-text p {
    margin: 0;
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    line-height: 1.7;
    color: var(--main-light-color);
}

.promo-action-row {
    margin-top: 28px;
}

.promo-primary-btn {
    display: inline-block;
    min-width: 220px;
    text-align: center;
    padding: 15px 28px;
    border-radius: 8px;
    background: linear-gradient(135deg, var(--main-color), #2b0a5a);
    color: var(--primary-color);
    font-family: 'Inter', sans-serif;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    box-shadow: 0 12px 26px rgba(24, 0, 58, 0.22);
    transition: all 0.3s ease;
}

.promo-primary-btn:hover {
    color: var(--primary-color);
    transform: translateY(-2px);
    box-shadow: 0 18px 32px rgba(24, 0, 58, 0.28);
}

/* responsive */

@media (max-width: 1199px) {
    .promo-title {
        font-size: 34px;
    }

    .promo-subtitle {
        font-size: 21px;
    }

    .promo-image-card img {
        height: 560px;
    }
}

@media (max-width: 991px) {
    .promo-wrap {
        padding: 26px;
    }

    .promo-media {
        padding-right: 0;
        margin-bottom: 30px;
    }

    .promo-content {
        padding-left: 0;
    }

    .promo-image-card img {
        height: 560px;
    }
}

@media (max-width: 767px) {
    .promo-wrap {
        padding: 18px;
        border-radius: 20px;
    }

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

    .promo-subtitle {
        font-size: 18px;
        padding: 14px 16px;
        border-radius: 14px;
    }

    .promo-description {
        font-size: 15px;
        line-height: 1.7;
    }

    .promo-image-card img {
        height: 340px;
    }

    .promo-step-item {
        padding: 16px;
    }

    .promo-step-number {
        width: 50px;
        height: 50px;
        font-size: 16px;
        flex-basis: 50px;
    }

    .promo-step-text h4 {
        font-size: 16px;
    }

    .promo-step-text p {
        font-size: 14px;
    }

    .promo-badge {
        left: 14px;
        bottom: 14px;
        padding: 10px 14px;
        font-size: 12px;
    }

    .promo-primary-btn {
        width: 100%;
    }
}

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

.rewards-section-block {
    position: relative;
}

.rewards-shell {
    position: relative;
    padding: 38px;
    border-radius: 30px;
    background: linear-gradient(180deg, #ffffff 0%, #faf7fd 100%);
    border: 1px solid rgba(24, 0, 58, 0.08);
    box-shadow: 0 18px 44px rgba(24, 0, 58, 0.08);
    overflow: hidden;
}

.rewards-shell::before {
    content: "";
    position: absolute;
    top: -70px;
    right: -70px;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: rgba(90, 44, 160, 0.05);
}

.rewards-shell::after {
    content: "";
    position: absolute;
    left: -80px;
    bottom: -80px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: rgba(212, 175, 55, 0.05);
}

.rewards-top {
    position: relative;
    z-index: 2;
    max-width: 980px;
    margin: 0 auto 34px;
}

.rewards-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
}

.rewards-eyebrow-line {
    width: 46px;
    height: 2px;
    display: inline-block;
    background: linear-gradient(to right, var(--main-color), #d4af37);
}

.rewards-eyebrow-text {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--main-color);
}

.rewards-title {
    font-family: 'Aclonica', sans-serif;
    font-size: 40px;
    line-height: 1.2;
    color: var(--main-color);
    margin-bottom: 16px;
}

.rewards-title span {
    color: #5a2ca0;
}

.rewards-subtitle {
    max-width: 900px;
    margin: 0 auto;
    font-family: 'Roboto', sans-serif;
    font-size: 18px;
    line-height: 1.75;
    color: var(--main-light-color);
}

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

.rewards-panel {
    height: 100%;
    border-radius: 26px;
    padding: 30px 26px;
    position: relative;
    overflow: hidden;
}

.rewards-panel-dark {
    background: linear-gradient(135deg, var(--main-color), #2b0a5a);
    color: var(--primary-color);
    box-shadow: 0 18px 40px rgba(24, 0, 58, 0.18);
}

.rewards-panel-dark::before {
    content: "";
    position: absolute;
    right: -30px;
    top: -30px;
    width: 140px;
    height: 140px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.05);
}

.rewards-panel-light {
    background: #ffffff;
    border: 1px solid rgba(24, 0, 58, 0.08);
    box-shadow: 0 16px 36px rgba(24, 0, 58, 0.08);
}

.panel-badge {
    display: inline-flex;
    align-items: center;
    padding: 8px 14px;
    border-radius: 999px;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    margin-bottom: 18px;
    background: rgba(255, 255, 255, 0.12);
    color: #f3d57a;
    border: 1px solid rgba(255, 255, 255, 0.14);
}

.panel-badge-gold {
    background: rgba(212, 175, 55, 0.12);
    color: var(--main-color);
    border: 1px solid rgba(24, 0, 58, 0.08);
}

.panel-title {
    font-family: 'Aclonica', sans-serif;
    font-size: 30px;
    line-height: 1.28;
    color: var(--primary-color);
    margin-bottom: 18px;
}

.panel-title-dark {
    color: var(--main-color);
}

.panel-description {
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    line-height: 1.8;
    color: rgba(255, 255, 255, 0.86);
    margin-bottom: 24px;
}

.mini-highlight-list {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 28px;
}

.mini-highlight-item {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 11px 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: var(--primary-color);
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 600;
    border: 1px solid rgba(255, 255, 255, 0.10);
}

.mini-highlight-item i {
    color: #d4af37;
}

.offers-group {
    margin-top: 8px;
}

.offers-group-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 18px;
}

.offers-group-head h4 {
    margin: 0;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 700;
    color: inherit;
}

.offers-chip {
    display: inline-flex;
    align-items: center;
    padding: 7px 12px;
    border-radius: 999px;
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    background: rgba(255, 255, 255, 0.10);
    color: #f3d57a;
}

.offers-chip-dark {
    background: rgba(24, 0, 58, 0.08);
    color: var(--main-color);
}

.offer-card-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.offer-card-simple {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 16px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.07);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.offer-card-icon {
    flex: 0 0 46px;
    width: 46px;
    height: 46px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(212, 175, 55, 0.16);
    color: #f3d57a;
    font-size: 18px;
}

.offer-card-text h5 {
    margin: 0 0 6px;
    font-family: 'Inter', sans-serif;
    font-size: 17px;
    line-height: 1.3;
    font-weight: 700;
    color: var(--primary-color);
}

.offer-card-text p {
    margin: 0;
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.82);
}

/* right side */

.hero-offer-box {
    margin-bottom: 24px;
    padding: 24px 22px;
    border-radius: 22px;
    background: linear-gradient(135deg, var(--main-color), #2b0a5a);
    color: var(--primary-color);
    box-shadow: 0 16px 34px rgba(24, 0, 58, 0.18);
    position: relative;
    overflow: hidden;
}

.hero-offer-box::before {
    content: "";
    position: absolute;
    right: -24px;
    top: -24px;
    width: 110px;
    height: 110px;
    border-radius: 50%;
    background: rgba(212, 175, 55, 0.10);
}

.hero-offer-label {
    position: relative;
    z-index: 1;
    display: inline-block;
    margin-bottom: 10px;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #f3d57a;
}

.hero-offer-value {
    position: relative;
    z-index: 1;
    font-family: 'Aclonica', sans-serif;
    font-size: 28px;
    line-height: 1.35;
    margin-bottom: 12px;
    color: var(--primary-color);
}

.hero-offer-note {
    position: relative;
    z-index: 1;
    margin: 0;
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    line-height: 1.75;
    color: rgba(255, 255, 255, 0.86);
}

.offers-group-light .offers-group-head h4 {
    color: var(--main-color);
}

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

.promo-tile {
    padding: 18px;
    border-radius: 18px;
    background: linear-gradient(180deg, #ffffff 0%, #fbf9fd 100%);
    border: 1px solid rgba(24, 0, 58, 0.08);
    box-shadow: 0 10px 24px rgba(24, 0, 58, 0.06);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.promo-tile:hover {
    transform: translateY(-3px);
    box-shadow: 0 16px 30px rgba(24, 0, 58, 0.10);
}

.promo-tile-wide {
    grid-column: 1 / -1;
}

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

.promo-kind {
    display: inline-flex;
    align-items: center;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(212, 175, 55, 0.14);
    color: var(--main-color);
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.promo-tile-top i {
    color: #d4af37;
    font-size: 18px;
}

.promo-tile h5 {
    margin: 0 0 8px;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    line-height: 1.35;
    font-weight: 700;
    color: var(--main-color);
}

.promo-tile p {
    margin: 0;
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    line-height: 1.6;
    color: var(--main-light-color);
    font-weight: 600;
}

.rewards-cta-row {
    margin-top: 24px;
}

.rewards-primary-btn {
    display: inline-block;
    min-width: 220px;
    text-align: center;
    padding: 15px 28px;
    border-radius: 8px;
    background: linear-gradient(135deg, var(--main-color), #2b0a5a);
    color: var(--primary-color);
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    text-decoration: none;
    box-shadow: 0 12px 26px rgba(24, 0, 58, 0.18);
    transition: all 0.3s ease;
}

.rewards-primary-btn:hover {
    color: var(--primary-color);
    transform: translateY(-2px);
    box-shadow: 0 18px 32px rgba(24, 0, 58, 0.24);
}

/* responsive */

@media (max-width: 1199px) {
    .rewards-title {
        font-size: 34px;
    }

    .panel-title {
        font-size: 26px;
    }

    .hero-offer-value {
        font-size: 24px;
    }
}

@media (max-width: 991px) {
    .rewards-shell {
        padding: 26px;
    }

    .promo-grid-list {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 767px) {
    .rewards-shell {
        padding: 18px;
        border-radius: 22px;
    }

    .rewards-title {
        font-size: 28px;
    }

    .rewards-subtitle {
        font-size: 15px;
        line-height: 1.7;
    }

    .panel-title {
        font-size: 22px;
    }

    .panel-description {
        font-size: 15px;
    }

    .rewards-panel {
        padding: 22px 18px;
        border-radius: 20px;
    }

    .hero-offer-value {
        font-size: 20px;
    }

    .promo-grid-list {
        grid-template-columns: 1fr;
    }

    .promo-tile-wide {
        grid-column: auto;
    }

    .offers-group-head {
        flex-direction: column;
        align-items: flex-start;
    }

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

    .mini-highlight-item {
        width: 100%;
        justify-content: flex-start;
    }
}


.live-games-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
  padding: 0 10px;
}

.game-card {
  position: relative;
  width: calc(100% / 6 - 16px);
  background-color: #0A1931;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 10px rgba(0,0,0,0.25);
  transition: transform 0.3s ease;
}

.game-card img {
  width: 100%;
  height: 200px;
  object-fit: contain;
  padding: 10px;
  background-color: #fff;
  border-radius: 12px;
}

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

.overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.6);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}

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

.btn-play {
  background-color: #d4af37;
  color: #0A1931;
  font-weight: bold;
  text-transform: uppercase;
  padding: 10px 18px;
  border-radius: 6px;
  font-size: 0.9rem;
  text-decoration: none;
}

.btn-play:hover {
  background-color: #b8902e;
  color: #fff;
}

@media (max-width: 1200px) {
  .game-card {
    width: calc(100% / 4 - 16px);
  }
}
@media (max-width: 992px) {
  .game-card {
    width: calc(100% / 3 - 16px);
  }
}
@media (max-width: 600px) {
  .game-card {
    width: calc(100% / 2 - 16px);
  }
}
@media (max-width: 420px) {
  .game-card {
    width: 100%;
  }
}

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

.gaming-section-block {
    position: relative;
}

.gaming-shell {
    position: relative;
    padding: 38px;
    border-radius: 30px;
    background: linear-gradient(180deg, #ffffff 0%, #faf7fd 100%);
    border: 1px solid rgba(24, 0, 58, 0.08);
    box-shadow: 0 18px 44px rgba(24, 0, 58, 0.08);
    overflow: hidden;
}

.gaming-shell::before {
    content: "";
    position: absolute;
    top: -70px;
    right: -70px;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: rgba(90, 44, 160, 0.05);
}

.gaming-shell::after {
    content: "";
    position: absolute;
    left: -80px;
    bottom: -80px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: rgba(212, 175, 55, 0.05);
}

.gaming-top {
    position: relative;
    z-index: 2;
    max-width: 980px;
    margin: 0 auto 34px;
}

.gaming-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
}

.gaming-eyebrow-line {
    width: 46px;
    height: 2px;
    display: inline-block;
    background: linear-gradient(to right, var(--main-color), #d4af37);
}

.gaming-eyebrow-text {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--main-color);
}

.gaming-title {
    font-family: 'Aclonica', sans-serif;
    font-size: 40px;
    line-height: 1.2;
    color: var(--main-color);
    margin-bottom: 16px;
}

.gaming-title span {
    color: #5a2ca0;
}

.gaming-subtitle {
    max-width: 920px;
    margin: 0 auto;
    font-family: 'Roboto', sans-serif;
    font-size: 18px;
    line-height: 1.75;
    color: var(--main-light-color);
}

.gaming-panel {
    height: 100%;
    border-radius: 26px;
    padding: 30px 26px;
    position: relative;
    overflow: hidden;
}

.gaming-panel-dark {
    background: linear-gradient(135deg, var(--main-color), #2b0a5a);
    color: var(--primary-color);
    box-shadow: 0 18px 40px rgba(24, 0, 58, 0.18);
}

.gaming-panel-dark::before {
    content: "";
    position: absolute;
    right: -30px;
    top: -30px;
    width: 140px;
    height: 140px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.05);
}

.gaming-panel-light {
    background: #ffffff;
    border: 1px solid rgba(24, 0, 58, 0.08);
    box-shadow: 0 16px 36px rgba(24, 0, 58, 0.08);
}

.gaming-badge {
    display: inline-flex;
    align-items: center;
    padding: 8px 14px;
    border-radius: 999px;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    margin-bottom: 18px;
    background: rgba(255, 255, 255, 0.12);
    color: #f3d57a;
    border: 1px solid rgba(255, 255, 255, 0.14);
}

.gaming-badge-light {
    background: rgba(212, 175, 55, 0.12);
    color: var(--main-color);
    border: 1px solid rgba(24, 0, 58, 0.08);
}

.gaming-panel-title {
    font-family: 'Aclonica', sans-serif;
    font-size: 30px;
    line-height: 1.28;
    color: var(--primary-color);
    margin-bottom: 18px;
}

.gaming-panel-title-dark {
    color: var(--main-color);
}

.gaming-panel-description {
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    line-height: 1.8;
    color: rgba(255, 255, 255, 0.86);
    margin-bottom: 24px;
}

.gaming-panel-description-dark {
    color: var(--main-light-color);
}

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

.gaming-highlight-item {
    padding: 16px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.10);
}

.gaming-highlight-label {
    display: block;
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #f3d57a;
    margin-bottom: 8px;
}

.gaming-highlight-item strong {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    line-height: 1.4;
    color: var(--primary-color);
}

.gaming-info-cards {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

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

.gaming-info-icon {
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(212, 175, 55, 0.16);
    color: #f3d57a;
    font-size: 18px;
}

.gaming-info-text h4 {
    margin: 0 0 6px;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    line-height: 1.3;
    font-weight: 700;
    color: var(--primary-color);
}

.gaming-info-text p {
    margin: 0;
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
    line-height: 1.75;
    color: rgba(255, 255, 255, 0.82);
}

/* online categories */

.gaming-category-columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 10px;
}

.gaming-category-box {
    padding: 20px 18px;
    border-radius: 20px;
    background: linear-gradient(180deg, #ffffff 0%, #fbf9fd 100%);
    border: 1px solid rgba(24, 0, 58, 0.08);
    box-shadow: 0 10px 24px rgba(24, 0, 58, 0.06);
}

.gaming-category-box h4 {
    margin: 0 0 14px;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.3;
    color: var(--main-color);
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(24, 0, 58, 0.08);
}

.gaming-category-box ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.gaming-category-box ul li {
    position: relative;
    padding-left: 18px;
    margin-bottom: 10px;
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    line-height: 1.55;
    color: var(--main-light-color);
}

.gaming-category-box ul li:last-child {
    margin-bottom: 0;
}

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

.gaming-note-box {
    margin-top: 22px;
    padding: 18px 20px;
    border-radius: 20px;
    background: rgba(24, 0, 58, 0.04);
    border-left: 4px solid #d4af37;
}

.gaming-note-badge {
    display: inline-flex;
    align-items: center;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(212, 175, 55, 0.14);
    color: var(--main-color);
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.gaming-note-box p {
    margin: 0;
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    line-height: 1.75;
    color: var(--main-light-color);
}

/* responsive */

@media (max-width: 1199px) {
    .gaming-title {
        font-size: 34px;
    }

    .gaming-panel-title {
        font-size: 26px;
    }
}

@media (max-width: 991px) {
    .gaming-shell {
        padding: 26px;
    }
}

@media (max-width: 767px) {
    .gaming-shell {
        padding: 18px;
        border-radius: 22px;
    }

    .gaming-title {
        font-size: 28px;
    }

    .gaming-subtitle {
        font-size: 15px;
        line-height: 1.7;
    }

    .gaming-panel {
        padding: 22px 18px;
        border-radius: 20px;
    }

    .gaming-panel-title {
        font-size: 22px;
    }

    .gaming-panel-description,
    .gaming-panel-description-dark {
        font-size: 15px;
    }

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

    .gaming-info-card {
        padding: 14px;
    }

    .gaming-info-icon {
        width: 44px;
        height: 44px;
        flex-basis: 44px;
        font-size: 16px;
    }

    .gaming-info-text h4 {
        font-size: 16px;
    }

    .gaming-info-text p,
    .gaming-category-box ul li,
    .gaming-note-box p {
        font-size: 14px;
    }
}

/* SLOTS SECTION */

.slots-section-block{
position:relative;
}

.slots-shell{
padding:38px;
border-radius:28px;
background:linear-gradient(180deg,#ffffff 0%,#faf7fd 100%);
border:1px solid rgba(24,0,58,0.08);
box-shadow:0 18px 44px rgba(24,0,58,0.08);
}

.slots-heading{
max-width:900px;
margin:0 auto 34px;
}

.slots-eyebrow{
display:inline-flex;
align-items:center;
gap:14px;
margin-bottom:18px;
}

.slots-eyebrow-line{
width:46px;
height:2px;
background:linear-gradient(to right,var(--main-color),#d4af37);
}

.slots-eyebrow-text{
font-family:'Inter';
font-size:13px;
font-weight:700;
letter-spacing:.14em;
text-transform:uppercase;
color:var(--main-color);
}

.slots-title{
font-family:'Aclonica';
font-size:40px;
color:var(--main-color);
margin-bottom:14px;
}

.slots-title span{
color:#5a2ca0;
}

.slots-subtitle{
font-size:18px;
line-height:1.7;
color:var(--main-light-color);
}

/* panels */

.slots-panel{
height:100%;
border-radius:24px;
padding:28px;
}

.slots-panel-dark{
background:linear-gradient(135deg,var(--main-color),#2b0a5a);
color:#fff;
}

.slots-panel-light{
background:#fff;
border:1px solid rgba(24,0,58,0.08);
box-shadow:0 16px 36px rgba(24,0,58,0.08);
}

.slots-badge{
display:inline-block;
padding:7px 14px;
border-radius:999px;
font-size:12px;
font-weight:800;
letter-spacing:.12em;
text-transform:uppercase;
background:rgba(255,255,255,.15);
color:#f3d57a;
margin-bottom:14px;
}

.slots-badge-light{
background:rgba(212,175,55,.15);
color:var(--main-color);
}

.slots-panel-title{
font-family:'Aclonica';
font-size:28px;
margin-bottom:16px;
}

.slots-panel-title-dark{
color:var(--main-color);
}

.slots-panel-text{
line-height:1.8;
font-size:16px;
color:rgba(255,255,255,.85);
margin-bottom:22px;
}

.slots-panel-text-dark{
color:var(--main-light-color);
}

/* features */

.slots-feature-grid{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:12px;
margin-bottom:20px;
}

.slots-feature{
background:rgba(255,255,255,.08);
padding:14px;
border-radius:14px;
}

.slots-feature-label{
display:block;
font-size:11px;
text-transform:uppercase;
letter-spacing:.1em;
color:#f3d57a;
margin-bottom:4px;
}

/* categories */

.slots-category-grid{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:14px;
margin-top:12px;
}

.slot-category{
background:#faf7fd;
border:1px solid rgba(24,0,58,.08);
border-radius:16px;
padding:18px;
}

.slot-category h4{
font-size:18px;
margin-bottom:10px;
color:var(--main-color);
}

.slot-category p{
margin:0;
font-size:14px;
line-height:1.6;
}

/* providers */

.slots-providers{
margin-top:24px;
}

.provider-badges{
display:flex;
flex-wrap:wrap;
gap:10px;
margin-top:10px;
}

.provider-badges span{
padding:8px 14px;
border-radius:999px;
background:rgba(212,175,55,.15);
font-size:13px;
font-weight:600;
color:var(--main-color);
}

/* TABLE GAMES SECTION */

.tables-shell{
padding:38px;
border-radius:28px;
background:linear-gradient(180deg,#ffffff 0%,#faf7fd 100%);
border:1px solid rgba(24,0,58,0.08);
box-shadow:0 18px 44px rgba(24,0,58,0.08);
}

.tables-heading{
max-width:900px;
margin:0 auto 34px;
}

.tables-eyebrow{
display:inline-flex;
align-items:center;
gap:14px;
margin-bottom:18px;
}

.tables-eyebrow-line{
width:46px;
height:2px;
background:linear-gradient(to right,var(--main-color),#d4af37);
}

.tables-eyebrow-text{
font-size:13px;
font-weight:700;
letter-spacing:.14em;
text-transform:uppercase;
color:var(--main-color);
}

.tables-title{
font-family:'Aclonica';
font-size:40px;
color:var(--main-color);
margin-bottom:14px;
}

.tables-title span{
color:#5a2ca0;
}

.tables-subtitle{
font-size:18px;
line-height:1.7;
color:var(--main-light-color);
}

/* panels */

.tables-panel{
height:100%;
border-radius:24px;
padding:28px;
}

.tables-panel-dark{
background:linear-gradient(135deg,var(--main-color),#2b0a5a);
color:#fff;
}

.tables-panel-light{
background:#fff;
border:1px solid rgba(24,0,58,0.08);
box-shadow:0 16px 36px rgba(24,0,58,0.08);
}

.tables-badge{
display:inline-block;
padding:7px 14px;
border-radius:999px;
font-size:12px;
font-weight:800;
letter-spacing:.12em;
text-transform:uppercase;
background:rgba(255,255,255,.15);
color:#f3d57a;
margin-bottom:14px;
}

.tables-badge-light{
background:rgba(212,175,55,.15);
color:var(--main-color);
}

.tables-panel-title{
font-family:'Aclonica';
font-size:28px;
margin-bottom:16px;
}

.tables-panel-title-dark{
color:var(--main-color);
}

.tables-panel-text{
line-height:1.8;
font-size:16px;
color:rgba(255,255,255,.85);
margin-bottom:22px;
}

.tables-panel-text-dark{
color:var(--main-light-color);
}

/* cards */

.table-game-grid,
.live-game-grid{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:14px;
}

.table-card,
.live-card{
background:rgba(255,255,255,.08);
border-radius:16px;
padding:18px;
}

.tables-panel-light .live-card{
background:#faf7fd;
border:1px solid rgba(24,0,58,0.08);
}

.table-card i,
.live-card i{
font-size:20px;
color:#d4af37;
margin-bottom:8px;
}

.table-card h4,
.live-card h4{
font-size:17px;
margin-bottom:6px;
}

.table-card p,
.live-card p{
font-size:14px;
line-height:1.6;
}

/* info box */

.tables-info-box{
margin-top:20px;
padding:16px;
border-radius:16px;
background:rgba(255,255,255,.12);
}

.tables-info-box span{
font-size:12px;
letter-spacing:.12em;
text-transform:uppercase;
color:#f3d57a;
display:block;
margin-bottom:6px;
}


.bonus-games-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
  padding: 0 10px;
}

.game-card {
  position: relative;
  width: calc(100% / 6 - 16px);
  background-color: #0A1931;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 10px rgba(0,0,0,0.25);
  transition: transform 0.3s ease;
}

.game-card img {
  width: 100%;
  height: 200px;
  object-fit: contain;
  padding: 10px;
  background-color: #fff;
  border-radius: 12px;
}

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

.overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.6);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}

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

.btn-play {
  background-color: #d4af37;
  color: #0A1931;
  font-weight: bold;
  text-transform: uppercase;
  padding: 10px 18px;
  border-radius: 6px;
  font-size: 0.9rem;
  text-decoration: none;
}

.btn-play:hover {
  background-color: #b8902e;
  color: #fff;
}

@media (max-width: 1200px) {
  .game-card {
    width: calc(100% / 4 - 16px);
  }
}
@media (max-width: 992px) {
  .game-card {
    width: calc(100% / 3 - 16px);
  }
}
@media (max-width: 600px) {
  .game-card {
    width: calc(100% / 2 - 16px);
  }
}
@media (max-width: 420px) {
  .game-card {
    width: 100%;
  }
}

/* RESORT SERVICES SECTION */

.resort-shell{
padding:40px;
border-radius:28px;
background:linear-gradient(180deg,#ffffff 0%,#faf7fd 100%);
border:1px solid rgba(24,0,58,0.08);
box-shadow:0 18px 44px rgba(24,0,58,0.08);
}

.resort-heading{
max-width:900px;
margin:0 auto 36px;
}

.resort-eyebrow{
display:inline-flex;
align-items:center;
gap:14px;
margin-bottom:18px;
}

.resort-eyebrow-line{
width:46px;
height:2px;
background:linear-gradient(to right,var(--main-color),#d4af37);
}

.resort-eyebrow-text{
font-size:13px;
font-weight:700;
letter-spacing:.14em;
text-transform:uppercase;
color:var(--main-color);
}

.resort-title{
font-family:'Aclonica';
font-size:40px;
color:var(--main-color);
margin-bottom:16px;
}

.resort-title span{
color:#5a2ca0;
}

.resort-subtitle{
font-size:18px;
line-height:1.7;
color:var(--main-light-color);
}

.resort-grid{
margin-top:20px;
}

/* cards */

.resort-card{
height:100%;
padding:26px;
border-radius:20px;
background:#fff;
border:1px solid rgba(24,0,58,0.08);
box-shadow:0 12px 28px rgba(24,0,58,0.08);
transition:all .3s ease;
}

.resort-card:hover{
transform:translateY(-5px);
box-shadow:0 18px 36px rgba(24,0,58,0.15);
}

.resort-icon{
width:52px;
height:52px;
border-radius:14px;
display:flex;
align-items:center;
justify-content:center;
background:rgba(212,175,55,.15);
color:#d4af37;
font-size:20px;
margin-bottom:14px;
}

.resort-card h3{
font-size:20px;
margin-bottom:10px;
color:var(--main-color);
}

.resort-card p{
font-size:15px;
line-height:1.7;
color:var(--main-light-color);
margin:0;
}

/* bottom panel */

.resort-info-panel{
margin-top:36px;
padding:28px;
border-radius:20px;
background:linear-gradient(135deg,var(--main-color),#2b0a5a);
color:#fff;
}

.resort-info-panel h3{
font-size:26px;
margin-bottom:12px;
}

.resort-info-panel p{
font-size:16px;
line-height:1.8;
opacity:.9;
margin-bottom:10px;
}

/* VISITOR GUIDE SECTION */

.visitor-shell{
padding:40px;
border-radius:28px;
background:linear-gradient(180deg,#ffffff 0%,#faf7fd 100%);
border:1px solid rgba(24,0,58,0.08);
box-shadow:0 18px 44px rgba(24,0,58,0.08);
}

.visitor-heading{
max-width:900px;
margin:0 auto 36px;
}

.visitor-eyebrow{
display:inline-flex;
align-items:center;
gap:14px;
margin-bottom:18px;
}

.visitor-eyebrow-line{
width:46px;
height:2px;
background:linear-gradient(to right,var(--main-color),#d4af37);
}

.visitor-eyebrow-text{
font-size:13px;
font-weight:700;
letter-spacing:.14em;
text-transform:uppercase;
color:var(--main-color);
}

.visitor-title{
font-family:'Aclonica';
font-size:40px;
color:var(--main-color);
margin-bottom:16px;
}

.visitor-title span{
color:#5a2ca0;
}

.visitor-subtitle{
font-size:18px;
line-height:1.7;
color:var(--main-light-color);
}

/* cards */

.visitor-card{
height:100%;
padding:26px;
border-radius:20px;
background:#fff;
border:1px solid rgba(24,0,58,0.08);
box-shadow:0 12px 28px rgba(24,0,58,0.08);
transition:all .3s ease;
}

.visitor-card:hover{
transform:translateY(-4px);
box-shadow:0 18px 36px rgba(24,0,58,0.15);
}

.visitor-icon{
width:52px;
height:52px;
border-radius:14px;
display:flex;
align-items:center;
justify-content:center;
background:rgba(212,175,55,.15);
color:#d4af37;
font-size:20px;
margin-bottom:14px;
}

.visitor-card h3{
font-size:20px;
margin-bottom:10px;
color:var(--main-color);
}

.visitor-card p{
font-size:15px;
line-height:1.7;
color:var(--main-light-color);
margin:0;
}

/* bottom info */

.visitor-info-panel{
margin-top:36px;
padding:28px;
border-radius:20px;
background:linear-gradient(135deg,var(--main-color),#2b0a5a);
color:#fff;
}

.visitor-info-panel h3{
font-size:26px;
margin-bottom:12px;
}

.visitor-info-panel p{
font-size:16px;
line-height:1.8;
opacity:.9;
margin-bottom:10px;
}

/* PLAYER ACCESS GUIDE */

.access-shell{
padding:40px;
border-radius:28px;
background:linear-gradient(180deg,#ffffff 0%,#faf7fd 100%);
border:1px solid rgba(24,0,58,0.08);
box-shadow:0 18px 44px rgba(24,0,58,0.08);
}

.access-heading{
max-width:900px;
margin:0 auto 36px;
}

.access-eyebrow{
display:inline-flex;
align-items:center;
gap:14px;
margin-bottom:18px;
}

.access-eyebrow-line{
width:46px;
height:2px;
background:linear-gradient(to right,var(--main-color),#d4af37);
}

.access-eyebrow-text{
font-size:13px;
font-weight:700;
letter-spacing:.14em;
text-transform:uppercase;
color:var(--main-color);
}

.access-title{
font-family:'Aclonica';
font-size:40px;
color:var(--main-color);
margin-bottom:14px;
}

.access-title span{
color:#5a2ca0;
}

.access-subtitle{
font-size:18px;
line-height:1.7;
color:var(--main-light-color);
}

/* panels */

.access-panel{
padding:30px;
border-radius:24px;
height:100%;
}

.access-panel-dark{
background:linear-gradient(135deg,var(--main-color),#2b0a5a);
color:#fff;
}

.access-panel-light{
background:#fff;
border:1px solid rgba(24,0,58,0.08);
box-shadow:0 16px 36px rgba(24,0,58,0.08);
}

.access-badge{
display:inline-block;
padding:8px 14px;
border-radius:999px;
font-size:12px;
font-weight:800;
letter-spacing:.12em;
text-transform:uppercase;
background:rgba(255,255,255,.15);
color:#f3d57a;
margin-bottom:14px;
}

.access-badge-light{
background:rgba(212,175,55,.15);
color:var(--main-color);
}

.access-panel-title{
font-family:'Aclonica';
font-size:28px;
margin-bottom:16px;
}

.access-panel-title-dark{
color:var(--main-color);
}

.access-panel-text{
font-size:16px;
line-height:1.8;
margin-bottom:20px;
}

.access-panel-text-dark{
color:var(--main-light-color);
}

/* features */

.access-feature-grid{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:12px;
margin-bottom:20px;
}

.access-feature{
background:rgba(255,255,255,.08);
padding:14px;
border-radius:14px;
}

.access-panel-light .access-feature{
background:#faf7fd;
border:1px solid rgba(24,0,58,.08);
}

/* benefits */

.access-benefits{
display:flex;
flex-direction:column;
gap:12px;
margin-top:18px;
}

.benefit-item{
display:flex;
align-items:center;
gap:10px;
font-size:15px;
}

.benefit-item i{
color:#d4af37;
}

/* info boxes */

.access-info-box{
margin-top:20px;
padding:18px;
border-radius:16px;
background:rgba(255,255,255,.12);
}

.access-info-light{
background:#faf7fd;
border:1px solid rgba(24,0,58,.08);
}

.access-info-box h4{
margin-bottom:8px;
}

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

.mobile-section-block {
    position: relative;
}

.mobile-shell {
    position: relative;
    padding: 40px;
    border-radius: 30px;
    background: linear-gradient(180deg, #ffffff 0%, #faf7fd 100%);
    border: 1px solid rgba(24, 0, 58, 0.08);
    box-shadow: 0 18px 44px rgba(24, 0, 58, 0.08);
    overflow: hidden;
}

.mobile-shell::before {
    content: "";
    position: absolute;
    top: -70px;
    right: -70px;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: rgba(90, 44, 160, 0.05);
}

.mobile-shell::after {
    content: "";
    position: absolute;
    left: -80px;
    bottom: -80px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: rgba(212, 175, 55, 0.05);
}

.mobile-heading {
    position: relative;
    z-index: 2;
    max-width: 920px;
    margin: 0 auto 36px;
}

.mobile-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
}

.mobile-eyebrow-line {
    width: 46px;
    height: 2px;
    display: inline-block;
    background: linear-gradient(to right, var(--main-color), #d4af37);
}

.mobile-eyebrow-text {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--main-color);
}

.mobile-title {
    font-family: 'Aclonica', sans-serif;
    font-size: 40px;
    line-height: 1.2;
    color: var(--main-color);
    margin-bottom: 16px;
}

.mobile-title span {
    color: #5a2ca0;
}

.mobile-subtitle {
    max-width: 900px;
    margin: 0 auto;
    font-family: 'Roboto', sans-serif;
    font-size: 18px;
    line-height: 1.75;
    color: var(--main-light-color);
}

/* panels */

.mobile-panel {
    position: relative;
    height: 100%;
    border-radius: 26px;
    padding: 28px;
    overflow: hidden;
}

.mobile-panel-featured {
    background: linear-gradient(135deg, var(--main-color), #2b0a5a);
    color: var(--primary-color);
    box-shadow: 0 18px 40px rgba(24, 0, 58, 0.18);
}

.mobile-panel-featured::before {
    content: "";
    position: absolute;
    right: -36px;
    top: -36px;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.05);
}

.mobile-panel-light {
    background: #ffffff;
    border: 1px solid rgba(24, 0, 58, 0.08);
    box-shadow: 0 16px 36px rgba(24, 0, 58, 0.08);
}

.mobile-badge {
    display: inline-flex;
    align-items: center;
    padding: 8px 14px;
    border-radius: 999px;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    margin-bottom: 16px;
    background: rgba(255, 255, 255, 0.12);
    color: #f3d57a;
    border: 1px solid rgba(255, 255, 255, 0.14);
}

.mobile-badge-light {
    background: rgba(212, 175, 55, 0.12);
    color: var(--main-color);
    border: 1px solid rgba(24, 0, 58, 0.08);
}

.mobile-panel-title {
    font-family: 'Aclonica', sans-serif;
    font-size: 28px;
    line-height: 1.3;
    color: var(--primary-color);
    margin-bottom: 16px;
}

.mobile-panel-title-dark {
    color: var(--main-color);
}

.mobile-panel-text {
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    line-height: 1.8;
    color: rgba(255, 255, 255, 0.86);
    margin-bottom: 16px;
}

/* left featured image */

.mobile-app-image-wrap {
    position: relative;
    margin-bottom: 26px;
}

.mobile-app-shape {
    position: absolute;
    top: -16px;
    right: -12px;
    width: 150px;
    height: 150px;
    border-radius: 24px;
    background: linear-gradient(135deg, rgba(212, 175, 55, 0.22), rgba(255, 255, 255, 0.06));
    z-index: 1;
}

.mobile-app-card {
    position: relative;
    z-index: 2;
    border-radius: 24px;
    overflow: hidden;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 18px 34px rgba(0,0,0,0.18);

    display:flex;
    align-items:center;
    justify-content:center;
    padding:20px;
}

.mobile-app-card img {
    max-width:40%;
    height:auto;
    display:block;
}

.mobile-app-card img {
    width: 100%;
    height: 340px;
    object-fit: cover;
    display: block;
}

.mobile-panel-content {
    position: relative;
    z-index: 2;
}

.mobile-benefit-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 20px;
}

.mobile-benefit-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px 14px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.10);
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: var(--primary-color);
}

.mobile-benefit-item i {
    color: #f3d57a;
    font-size: 16px;
}

/* right content cards */

.mobile-info-grid {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-top: 8px;
}

.mobile-info-card {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 16px;
    border-radius: 18px;
    background: linear-gradient(180deg, #ffffff 0%, #fbf9fd 100%);
    border: 1px solid rgba(24, 0, 58, 0.08);
    box-shadow: 0 10px 24px rgba(24, 0, 58, 0.06);
}

.mobile-info-icon {
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(212, 175, 55, 0.14);
    color: var(--main-color);
    font-size: 20px;
}

.mobile-info-text h4 {
    margin: 0 0 6px;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    line-height: 1.3;
    font-weight: 700;
    color: var(--main-color);
}

.mobile-info-text p {
    margin: 0;
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    line-height: 1.75;
    color: var(--main-light-color);
}

/* store buttons */

.mobile-store-block {
    margin-top: 24px;
    padding: 22px;
    border-radius: 20px;
    background: rgba(24, 0, 58, 0.04);
    border-left: 4px solid #d4af37;
}

.mobile-store-block h4 {
    margin-bottom: 10px;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 700;
    color: var(--main-color);
}

.mobile-store-block p {
    margin-bottom: 16px;
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    line-height: 1.75;
    color: var(--main-light-color);
}

.mobile-store-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

.mobile-store-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 56px;
    padding: 8px 0;
}

.mobile-store-link img {
    max-height: 52px;
    width: auto;
    display: block;
}

/* bottom note */

.mobile-bottom-note {
    margin-top: 22px;
    padding: 18px 20px;
    border-radius: 20px;
    background: linear-gradient(135deg, var(--main-color), #2b0a5a);
    color: var(--primary-color);
    box-shadow: 0 14px 28px rgba(24, 0, 58, 0.16);
}

.mobile-note-badge {
    display: inline-flex;
    align-items: center;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.10);
    color: #f3d57a;
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.mobile-bottom-note p {
    margin: 0;
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    line-height: 1.75;
    color: rgba(255, 255, 255, 0.88);
}

/* responsive */

@media (max-width: 1199px) {
    .mobile-title {
        font-size: 34px;
    }

    .mobile-panel-title {
        font-size: 24px;
    }
}

@media (max-width: 991px) {
    .mobile-shell {
        padding: 26px;
    }

    .mobile-app-card img {
        height: 300px;
    }
}

@media (max-width: 767px) {
    .mobile-shell {
        padding: 18px;
        border-radius: 22px;
    }

    .mobile-title {
        font-size: 28px;
    }

    .mobile-subtitle {
        font-size: 15px;
        line-height: 1.7;
    }

    .mobile-panel {
        padding: 20px 18px;
        border-radius: 20px;
    }

    .mobile-panel-title {
        font-size: 22px;
    }

    .mobile-panel-text,
    .mobile-info-text p,
    .mobile-store-block p,
    .mobile-bottom-note p {
        font-size: 14px;
    }

    .mobile-info-card {
        padding: 14px;
    }

    .mobile-info-icon {
        width: 44px;
        height: 44px;
        flex-basis: 44px;
        font-size: 18px;
    }

    .mobile-info-text h4 {
        font-size: 16px;
    }

    .mobile-app-card img {
        height: 240px;
    }

    .mobile-store-buttons {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* ===== PARALLAX CTA BANNER ===== */

.cta-banner-section {
    --banner-overlay-opacity: 0.55; 
    --banner-min-height: 460px;     

    position: relative;
    min-height: var(--banner-min-height);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;

    background-image: url("assets/images/banners/cta-banner-bg.jpg");
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    border-radius: 28px;
}

.cta-banner-overlay {
    position: absolute;
    inset: 0;
    background: rgba(24, 0, 58, var(--banner-overlay-opacity));
    z-index: 1;
}

.cta-banner-content {
    position: relative;
    z-index: 2;
    max-width: 860px;
    margin: 0 auto;
    padding: 40px 20px;
    color: var(--primary-color);
}

.cta-banner-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 16px;
    margin-bottom: 18px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.18);
    color: #f3d57a;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.cta-banner-content h2 {
    font-family: 'Aclonica', sans-serif;
    font-size: 42px;
    line-height: 1.2;
    color: var(--primary-color);
    margin-bottom: 18px;
}

.cta-banner-content p {
    max-width: 720px;
    margin: 0 auto 26px;
    font-family: 'Roboto', sans-serif;
    font-size: 18px;
    line-height: 1.8;
    color: rgba(255, 255, 255, 0.88);
}

.cta-banner-btn {
    display: inline-block;
    min-width: 220px;
    padding: 15px 30px;
    border-radius: 8px;
    background: #d4af37;
    color: var(--primary-color);
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    text-decoration: none;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18);
    transition: all 0.3s ease;
}

.cta-banner-btn:hover {
    background: #b8962e;
    color: var(--primary-color);
    transform: translateY(-2px);
}

/* better fallback for tablets/mobile */
@media (max-width: 991px) {
    .cta-banner-section {
        min-height: 380px;
        background-attachment: scroll;
    }

    .cta-banner-content h2 {
        font-size: 34px;
    }

    .cta-banner-content p {
        font-size: 16px;
    }
}

@media (max-width: 767px) {
    .cta-banner-section {
        min-height: 320px;
        border-radius: 20px;
    }

    .cta-banner-content {
        padding: 30px 14px;
    }

    .cta-banner-content h2 {
        font-size: 28px;
    }

    .cta-banner-content p {
        font-size: 15px;
        line-height: 1.7;
    }

    .cta-banner-btn {
        width: 100%;
        max-width: 280px;
    }
}

/* PLATFORM INTEGRITY SECTION */

.integrity-shell{
padding:40px;
border-radius:28px;
background:linear-gradient(180deg,#ffffff 0%,#faf7fd 100%);
border:1px solid rgba(24,0,58,0.08);
box-shadow:0 18px 44px rgba(24,0,58,0.08);
}

.integrity-heading{
max-width:920px;
margin:0 auto 36px;
}

.integrity-eyebrow{
display:inline-flex;
align-items:center;
gap:14px;
margin-bottom:18px;
}

.integrity-eyebrow-line{
width:46px;
height:2px;
background:linear-gradient(to right,var(--main-color),#d4af37);
}

.integrity-eyebrow-text{
font-size:13px;
font-weight:700;
letter-spacing:.14em;
text-transform:uppercase;
color:var(--main-color);
}

.integrity-title{
font-family:'Aclonica';
font-size:40px;
color:var(--main-color);
margin-bottom:16px;
}

.integrity-title span{
color:#5a2ca0;
}

.integrity-subtitle{
font-size:18px;
line-height:1.7;
color:var(--main-light-color);
}

.integrity-card{
height:100%;
padding:26px;
border-radius:20px;
background:#fff;
border:1px solid rgba(24,0,58,0.08);
box-shadow:0 12px 28px rgba(24,0,58,0.08);
transition:.3s ease;
}

.integrity-card:hover{
transform:translateY(-4px);
box-shadow:0 18px 36px rgba(24,0,58,0.14);
}

.integrity-icon{
width:52px;
height:52px;
border-radius:14px;
display:flex;
align-items:center;
justify-content:center;
background:rgba(212,175,55,.15);
color:#d4af37;
font-size:20px;
margin-bottom:14px;
}

.integrity-card h3{
font-size:20px;
margin-bottom:10px;
color:var(--main-color);
}

.integrity-card p{
font-size:15px;
line-height:1.7;
color:var(--main-light-color);
}

.integrity-info-panel{
margin-top:36px;
padding:28px;
border-radius:20px;
background:linear-gradient(135deg,var(--main-color),#2b0a5a);
color:#fff;
}

.integrity-info-panel h3{
font-size:26px;
margin-bottom:12px;
}

.integrity-info-panel p{
font-size:16px;
line-height:1.8;
opacity:.9;
}

/* ===== PAYMENT METHODS SECTION ===== */

.banking-section-block {
    position: relative;
}

.banking-shell {
    position: relative;
    padding: 40px;
    border-radius: 30px;
    background: linear-gradient(180deg, #ffffff 0%, #faf7fd 100%);
    border: 1px solid rgba(24, 0, 58, 0.08);
    box-shadow: 0 18px 44px rgba(24, 0, 58, 0.08);
    overflow: hidden;
}

.banking-shell::before {
    content: "";
    position: absolute;
    top: -70px;
    right: -70px;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: rgba(90, 44, 160, 0.05);
}

.banking-shell::after {
    content: "";
    position: absolute;
    left: -80px;
    bottom: -80px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: rgba(212, 175, 55, 0.05);
}

/* heading */

.banking-heading {
    position: relative;
    z-index: 2;
    max-width: 980px;
    margin: 0 auto 34px;
}

.banking-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
}

.banking-eyebrow-line {
    width: 46px;
    height: 2px;
    display: inline-block;
    background: linear-gradient(to right, var(--main-color), #d4af37);
}

.banking-eyebrow-text {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--main-color);
}

.banking-title {
    font-family: 'Aclonica', sans-serif;
    font-size: 40px;
    line-height: 1.2;
    color: var(--main-color);
    margin-bottom: 16px;
}

.banking-title span {
    color: #5a2ca0;
}

.banking-subtitle {
    max-width: 930px;
    margin: 0 auto;
    font-family: 'Roboto', sans-serif;
    font-size: 18px;
    line-height: 1.75;
    color: var(--main-light-color);
}

/* intro cards */

.banking-intro-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin-bottom: 30px;
    position: relative;
    z-index: 2;
}

.banking-intro-card {
    border-radius: 24px;
    padding: 26px 24px;
}

.banking-intro-card-dark {
    background: linear-gradient(135deg, var(--main-color), #2b0a5a);
    color: var(--primary-color);
    box-shadow: 0 18px 40px rgba(24, 0, 58, 0.18);
}

.banking-intro-card-light {
    background: #ffffff;
    border: 1px solid rgba(24, 0, 58, 0.08);
    box-shadow: 0 16px 36px rgba(24, 0, 58, 0.08);
}

.banking-intro-badge {
    display: inline-flex;
    align-items: center;
    padding: 8px 14px;
    border-radius: 999px;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    margin-bottom: 14px;
    background: rgba(255, 255, 255, 0.12);
    color: #f3d57a;
    border: 1px solid rgba(255, 255, 255, 0.14);
}

.banking-intro-badge-light {
    background: rgba(212, 175, 55, 0.12);
    color: var(--main-color);
    border: 1px solid rgba(24, 0, 58, 0.08);
}

.banking-intro-card h3 {
    margin-bottom: 12px;
    font-family: 'Aclonica', sans-serif;
    font-size: 26px;
    line-height: 1.3;
}

.banking-intro-card-dark h3 {
    color: var(--primary-color);
}

.banking-intro-card-light h3 {
    color: var(--main-color);
}

.banking-intro-card p {
    margin-bottom: 12px;
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    line-height: 1.8;
}

.banking-intro-card-dark p {
    color: rgba(255, 255, 255, 0.86);
}

.banking-intro-card-light p {
    color: var(--main-light-color);
}

/* payment table panel */

.banking-table-panel {
    position: relative;
    z-index: 2;
    max-width: 980px;
    margin: 0 auto;
    padding: 28px 24px;
    border-radius: 28px;
    background: linear-gradient(135deg, #140028 0%, #220046 100%);
    border: 1px solid rgba(212, 175, 55, 0.20);
    box-shadow: 0 22px 44px rgba(24, 0, 58, 0.22);
}

.banking-controls {
    display: flex;
    justify-content: center;
    gap: 12px;
    margin-bottom: 24px;
}

.banking-tab-btn {
    min-width: 150px;
    border: 1px solid rgba(212, 175, 55, 0.26);
    background: rgba(255, 255, 255, 0.06);
    color: #f3d57a;
    border-radius: 10px;
    padding: 13px 22px;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    transition: all 0.3s ease;
}

.banking-tab-btn:hover,
.banking-tab-btn.active {
    background: #d4af37;
    color: #1b0034;
    border-color: #d4af37;
    box-shadow: 0 8px 18px rgba(212, 175, 55, 0.22);
}

.banking-table-wrap {
    display: none;
}

.banking-table-wrap.active {
    display: block;
}

.banking-table-inner {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.banking-table-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 14px 18px;
    border-radius: 16px;
    background: linear-gradient(90deg, rgba(52, 20, 92, 0.96) 0%, rgba(74, 34, 122, 0.92) 100%);
    border: 1px solid rgba(212, 175, 55, 0.34);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02);
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.banking-table-row:hover {
    transform: translateY(-2px);
    border-color: rgba(212, 175, 55, 0.55);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.18);
}

.banking-method {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.banking-method-icon {
    flex: 0 0 72px;
    width: 72px;
    height: 42px;
    border-radius: 10px;
    background: rgba(20, 0, 40, 0.68);
    border: 1px solid rgba(212, 175, 55, 0.26);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 6px 8px;
}

.banking-method-icon img {
    width: 52px;
    height: 24px;
    object-fit: contain;
    display: block;
}

.banking-method-name {
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    line-height: 1.4;
    color: rgba(255, 255, 255, 0.95);
    word-break: break-word;
}

.banking-method-limit {
    flex: 0 0 auto;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: #f3d57a;
    text-align: right;
    white-space: nowrap;
}

/* bottom info cards */

.banking-info-row {
    position: relative;
    z-index: 2;
    margin-top: 30px;
}

.banking-info-card {
    height: 100%;
    padding: 24px 20px;
    border-radius: 20px;
    background: #ffffff;
    border: 1px solid rgba(24, 0, 58, 0.08);
    box-shadow: 0 12px 28px rgba(24, 0, 58, 0.08);
    transition: all 0.3s ease;
}

.banking-info-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 36px rgba(24, 0, 58, 0.14);
}

.banking-info-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(212, 175, 55, 0.15);
    color: #d4af37;
    font-size: 20px;
    margin-bottom: 14px;
}

.banking-info-card h3 {
    margin-bottom: 10px;
    font-family: 'Inter', sans-serif;
    font-size: 19px;
    line-height: 1.35;
    font-weight: 700;
    color: var(--main-color);
}

.banking-info-card p {
    margin: 0;
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    line-height: 1.75;
    color: var(--main-light-color);
}

/* responsive */

@media (max-width: 1199px) {
    .banking-title {
        font-size: 34px;
    }
}

@media (max-width: 991px) {
    .banking-shell {
        padding: 26px;
    }

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

    .banking-table-panel {
        padding: 22px 16px;
    }
}

@media (max-width: 767px) {
    .banking-shell {
        padding: 18px;
        border-radius: 22px;
    }

    .banking-title {
        font-size: 28px;
    }

    .banking-subtitle {
        font-size: 15px;
        line-height: 1.7;
    }

    .banking-intro-card {
        padding: 20px 18px;
        border-radius: 20px;
    }

    .banking-intro-card h3 {
        font-size: 22px;
    }

    .banking-intro-card p,
    .banking-info-card p {
        font-size: 14px;
    }

    .banking-controls {
        flex-direction: column;
        align-items: center;
    }

    .banking-tab-btn {
        width: 100%;
        max-width: 280px;
    }

    .banking-table-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
        padding: 14px;
    }

    .banking-method {
        width: 100%;
    }

    .banking-method-limit {
        width: 100%;
        text-align: left;
        font-size: 13px;
    }

    .banking-method-icon {
        flex-basis: 68px;
        width: 68px;
        height: 40px;
    }

    .banking-method-icon img {
        width: 50px;
        height: 22px;
    }
}

/* ===== REVIEWS SECTION ===== */

.reviews-section-block {
    position: relative;
}

.reviews-shell {
    position: relative;
    padding: 40px;
    border-radius: 30px;
    background: linear-gradient(180deg, #ffffff 0%, #faf7fd 100%);
    border: 1px solid rgba(24, 0, 58, 0.08);
    box-shadow: 0 18px 44px rgba(24, 0, 58, 0.08);
    overflow: hidden;
}

.reviews-shell::before {
    content: "";
    position: absolute;
    top: -70px;
    right: -70px;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: rgba(90, 44, 160, 0.05);
}

.reviews-shell::after {
    content: "";
    position: absolute;
    left: -80px;
    bottom: -80px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: rgba(212, 175, 55, 0.05);
}

/* heading */

.reviews-heading {
    position: relative;
    z-index: 2;
    max-width: 960px;
    margin: 0 auto 34px;
}

.reviews-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
}

.reviews-eyebrow-line {
    width: 46px;
    height: 2px;
    display: inline-block;
    background: linear-gradient(to right, var(--main-color), #d4af37);
}

.reviews-eyebrow-text {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--main-color);
}

.reviews-title {
    font-family: 'Aclonica', sans-serif;
    font-size: 40px;
    line-height: 1.2;
    color: var(--main-color);
    margin-bottom: 16px;
}

.reviews-title span {
    color: #5a2ca0;
}

.reviews-subtitle {
    max-width: 900px;
    margin: 0 auto;
    font-family: 'Roboto', sans-serif;
    font-size: 18px;
    line-height: 1.75;
    color: var(--main-light-color);
}

/* main split */

.reviews-group-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.reviews-column {
    border-radius: 26px;
    padding: 28px 24px;
    height: 100%;
}

.reviews-column-dark {
    background: linear-gradient(135deg, var(--main-color), #2b0a5a);
    color: var(--primary-color);
    box-shadow: 0 18px 40px rgba(24, 0, 58, 0.18);
}

.reviews-column-light {
    background: #ffffff;
    border: 1px solid rgba(24, 0, 58, 0.08);
    box-shadow: 0 16px 36px rgba(24, 0, 58, 0.08);
}

.reviews-group-badge {
    display: inline-flex;
    align-items: center;
    padding: 8px 14px;
    border-radius: 999px;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    margin-bottom: 14px;
    background: rgba(255, 255, 255, 0.12);
    color: #f3d57a;
    border: 1px solid rgba(255, 255, 255, 0.14);
}

.reviews-group-badge-light {
    background: rgba(212, 175, 55, 0.12);
    color: var(--main-color);
    border: 1px solid rgba(24, 0, 58, 0.08);
}

.reviews-group-title {
    margin-bottom: 12px;
    font-family: 'Aclonica', sans-serif;
    font-size: 28px;
    line-height: 1.3;
    color: var(--primary-color);
}

.reviews-group-title-dark {
    color: var(--main-color);
}

.reviews-group-text {
    margin-bottom: 22px;
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    line-height: 1.8;
    color: rgba(255, 255, 255, 0.86);
}

.reviews-group-text-dark {
    color: var(--main-light-color);
}

/* review cards */

.review-card {
    border-radius: 20px;
    padding: 20px 18px;
    margin-bottom: 16px;
}

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

.review-card-dark {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.10);
}

.review-card-light {
    background: linear-gradient(180deg, #ffffff 0%, #fbf9fd 100%);
    border: 1px solid rgba(24, 0, 58, 0.08);
    box-shadow: 0 10px 24px rgba(24, 0, 58, 0.06);
}

.review-card-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 12px;
}

.review-card-top h4 {
    margin: 0 0 4px;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    line-height: 1.3;
    font-weight: 700;
}

.review-card-dark .review-card-top h4 {
    color: var(--primary-color);
}

.review-card-light .review-card-top h4 {
    color: var(--main-color);
}

.review-card-top p {
    margin: 0;
    font-family: 'Roboto', sans-serif;
    font-size: 13px;
    line-height: 1.5;
}

.review-card-dark .review-card-top p {
    color: rgba(255, 255, 255, 0.72);
}

.review-card-light .review-card-top p {
    color: var(--main-light-color);
}

.review-stars {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-wrap: nowrap;
    color: #f3d57a;
    font-size: 14px;
}

.review-stars span {
    margin-left: 6px;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 700;
    color: #f3d57a;
}

.review-stars-dark {
    color: #d4af37;
}

.review-stars-dark span {
    color: var(--main-color);
}

.review-copy {
    margin: 0;
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    line-height: 1.8;
    color: rgba(255, 255, 255, 0.88);
}

.review-copy-dark {
    color: var(--main-light-color);
}

/* bottom note */

.reviews-bottom-note {
    position: relative;
    z-index: 2;
    margin-top: 28px;
    padding: 22px 24px;
    border-radius: 22px;
    background: rgba(24, 0, 58, 0.04);
    border-left: 4px solid #d4af37;
}

.reviews-note-badge {
    display: inline-flex;
    align-items: center;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(212, 175, 55, 0.14);
    color: var(--main-color);
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.reviews-bottom-note p {
    margin: 0;
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    line-height: 1.75;
    color: var(--main-light-color);
}

/* responsive */

@media (max-width: 1199px) {
    .reviews-title {
        font-size: 34px;
    }

    .reviews-group-title {
        font-size: 24px;
    }
}

@media (max-width: 991px) {
    .reviews-shell {
        padding: 26px;
    }

    .reviews-group-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .reviews-shell {
        padding: 18px;
        border-radius: 22px;
    }

    .reviews-title {
        font-size: 28px;
    }

    .reviews-subtitle {
        font-size: 15px;
        line-height: 1.7;
    }

    .reviews-column {
        padding: 20px 18px;
        border-radius: 20px;
    }

    .reviews-group-title {
        font-size: 22px;
    }

    .reviews-group-text,
    .review-copy,
    .review-copy-dark,
    .reviews-bottom-note p {
        font-size: 14px;
    }

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

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

.faq-section-block {
    position: relative;
}

.faq-shell {
    position: relative;
    padding: 40px;
    border-radius: 30px;
    background: linear-gradient(180deg, #ffffff 0%, #faf7fd 100%);
    border: 1px solid rgba(24, 0, 58, 0.08);
    box-shadow: 0 18px 44px rgba(24, 0, 58, 0.08);
    overflow: hidden;
}

.faq-shell::before {
    content: "";
    position: absolute;
    top: -70px;
    right: -70px;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: rgba(90, 44, 160, 0.05);
}

.faq-shell::after {
    content: "";
    position: absolute;
    left: -80px;
    bottom: -80px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: rgba(212, 175, 55, 0.05);
}

/* heading */

.faq-heading {
    position: relative;
    z-index: 2;
    max-width: 960px;
    margin: 0 auto 34px;
}

.faq-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
}

.faq-eyebrow-line {
    width: 46px;
    height: 2px;
    display: inline-block;
    background: linear-gradient(to right, var(--main-color), #d4af37);
}

.faq-eyebrow-text {
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--main-color);
}

.faq-title {
    font-family: 'Aclonica', sans-serif;
    font-size: 40px;
    line-height: 1.2;
    color: var(--main-color);
    margin-bottom: 16px;
}

.faq-title span {
    color: #5a2ca0;
}

.faq-subtitle {
    max-width: 900px;
    margin: 0 auto;
    font-family: 'Roboto', sans-serif;
    font-size: 18px;
    line-height: 1.75;
    color: var(--main-light-color);
}

/* grid */

.faq-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.faq-column {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* item */

.faq-item {
    border-radius: 22px;
    background: #ffffff;
    border: 1px solid rgba(24, 0, 58, 0.08);
    box-shadow: 0 12px 28px rgba(24, 0, 58, 0.08);
    overflow: hidden;
    transition: all 0.3s ease;
}

.faq-item:hover {
    box-shadow: 0 18px 36px rgba(24, 0, 58, 0.12);
}

.faq-question {
    width: 100%;
    border: none;
    background: transparent;
    padding: 20px 22px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    text-align: left;
    cursor: pointer;
}

.faq-question span {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    line-height: 1.45;
    font-weight: 700;
    color: var(--main-color);
}

.faq-question i {
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(212, 175, 55, 0.14);
    color: #d4af37;
    font-size: 16px;
    transition: all 0.3s ease;
}

.faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.35s ease, padding 0.35s ease;
    padding: 0 22px;
}

.faq-answer p {
    margin: 0;
    padding-bottom: 0;
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    line-height: 1.8;
    color: var(--main-light-color);
}

.faq-item.active .faq-answer {
    max-height: 300px;
    padding: 0 22px 22px;
}

.faq-item.active .faq-question i {
    transform: rotate(45deg);
    background: linear-gradient(135deg, var(--main-color), #2b0a5a);
    color: var(--primary-color);
}

/* responsive */

@media (max-width: 1199px) {
    .faq-title {
        font-size: 34px;
    }
}

@media (max-width: 991px) {
    .faq-shell {
        padding: 26px;
    }

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

@media (max-width: 767px) {
    .faq-shell {
        padding: 18px;
        border-radius: 22px;
    }

    .faq-title {
        font-size: 28px;
    }

    .faq-subtitle {
        font-size: 15px;
        line-height: 1.7;
    }

    .faq-question {
        padding: 18px 16px;
    }

    .faq-question span {
        font-size: 16px;
    }

    .faq-answer {
        padding: 0 16px;
    }

    .faq-item.active .faq-answer {
        padding: 0 16px 18px;
    }

    .faq-answer p {
        font-size: 14px;
    }

    .faq-question i {
        width: 38px;
        height: 38px;
        flex-basis: 38px;
        font-size: 14px;
    }
}

/* ===== NEW FOOTER ===== */

.site-footer {
    position: relative;
    background: linear-gradient(135deg, #140028 0%, #220046 100%);
    color: var(--primary-color);
    overflow: hidden;
}

.site-footer::before {
    content: "";
    position: absolute;
    top: -90px;
    right: -90px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: rgba(212, 175, 55, 0.06);
}

.site-footer::after {
    content: "";
    position: absolute;
    left: -110px;
    bottom: -110px;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.04);
}

.footer-main {
    position: relative;
    z-index: 2;
    padding: 46px 0 24px;
}

/* brand */

.footer-brand {
    padding-right: 20px;
}

.footer-logo-link {
    display: inline-block;
    margin-bottom: 16px;
}

.footer-logo-img {
    width: 110px;
    height: auto;
    display: block;
    border-radius: 12px;
    background: #ffffff;
    padding: 6px;
}

.footer-brand-title {
    margin-bottom: 14px;
    font-family: 'Aclonica', sans-serif;
    font-size: 28px;
    line-height: 1.3;
    color: var(--primary-color);
}

.footer-brand-text {
    margin-bottom: 18px;
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    line-height: 1.85;
    color: rgba(255, 255, 255, 0.82);
}

.footer-trust-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.footer-trust-list span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(212, 175, 55, 0.18);
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.92);
}

.footer-trust-list i {
    color: #d4af37;
}

/* links */

.footer-links-block h4,
.footer-note-block h4 {
    margin-bottom: 16px;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    line-height: 1.3;
    font-weight: 700;
    color: var(--primary-color);
}

.footer-links-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-links-list li {
    margin-bottom: 10px;
}

.footer-links-list li:last-child {
    margin-bottom: 0;
}

.footer-links-list a {
    color: rgba(255, 255, 255, 0.78);
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    line-height: 1.6;
    text-decoration: none;
    transition: color 0.3s ease, padding-left 0.3s ease;
}

.footer-links-list a:hover {
    color: #f3d57a;
    padding-left: 4px;
}

/* note */

.footer-note-block p {
    margin-bottom: 12px;
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
    line-height: 1.8;
    color: rgba(255, 255, 255, 0.78);
}

/* legal panel */

.footer-legal-panel {
    margin-top: 34px;
    padding-top: 24px;
    border-top: 1px solid rgba(255, 255, 255, 0.10);
}

.footer-legal-text {
    max-width: 980px;
    margin-bottom: 18px;
}

.footer-legal-text p {
    margin: 0;
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
    line-height: 1.8;
    color: rgba(255, 255, 255, 0.72);
}

.footer-bottom-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    flex-wrap: wrap;
}

.footer-copyright {
    margin: 0;
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.76);
}

.footer-bottom-links {
    display: flex;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
}

.footer-bottom-links a {
    color: rgba(255, 255, 255, 0.78);
    text-decoration: none;
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
    transition: color 0.3s ease;
}

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

/* responsive */

@media (max-width: 991px) {
    .footer-main {
        padding: 36px 0 22px;
    }

    .footer-brand {
        padding-right: 0;
    }

    .footer-brand-title {
        font-size: 24px;
    }
}

@media (max-width: 767px) {
    .site-footer {
        border-top-left-radius: 20px;
        border-top-right-radius: 20px;
    }

    .footer-main {
        padding: 28px 0 20px;
    }

    .footer-brand-title {
        font-size: 22px;
    }

    .footer-brand-text,
    .footer-links-list a,
    .footer-note-block p,
    .footer-legal-text p,
    .footer-copyright,
    .footer-bottom-links a {
        font-size: 14px;
    }

    .footer-trust-list {
        flex-direction: column;
        align-items: flex-start;
    }

    .footer-bottom-row {
        flex-direction: column;
        align-items: flex-start;
    }

    .footer-bottom-links {
        gap: 12px;
    }
}

/* ===== HERO BANNER ===== */

.home-banner {
    position: relative;
    width: 100%;
    min-height: 620px;
    overflow: hidden;
}

.home-banner img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.banner-overlay {
    position: absolute;
    inset: 0;
    background: rgba(24, 0, 58, 0.48);
    z-index: 1;
}

.banner-content {
    position: relative;
    z-index: 2;
    width: 100%;
    min-height: 620px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 60px 20px 80px; 
}

.banner-text {
    position: relative;
    top: auto;
    left: auto;
    transform: none;
    width: 100%;
    max-width: 760px;
    margin: 0 auto;
    text-align: center;
    color: #fff;
}

.banner-text h1 {
    font-family: 'Aclonica', sans-serif;
    font-size: 3.2rem;
    line-height: 1.15;
    font-weight: 700;
    margin-bottom: 14px;
    color: #fff;
}

.banner-subtitle {
    font-size: 1.3rem;
    line-height: 1.5;
    font-weight: 600;
    margin-bottom: 14px;
    color: #fff;
}

.banner-description {
    font-size: 1.08rem;
    line-height: 1.7;
    margin-bottom: 24px;
    color: rgba(255, 255, 255, 0.95);
}

.btn-banner {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 220px;
    padding: 15px 28px;
    background: #d4af37;
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 8px;
    text-decoration: none;
    transition: all 0.3s ease;
    margin-bottom: 10px; 
}

.btn-banner:hover {
    background: #b8962e;
    color: #fff;
    transform: translateY(-2px);
}

/* ===== TABLET ===== */

@media (max-width: 991px) {
    .home-banner {
        min-height: 560px;
    }

    .banner-content {
        min-height: 560px;
        padding: 50px 18px 70px; 
    }

    .banner-text h1 {
        font-size: 2.5rem;
    }

    .banner-subtitle {
        font-size: 1.15rem;
    }

    .banner-description {
        font-size: 1rem;
    }
}

/* ===== MOBILE ===== */

@media (max-width: 767px) {
    .home-banner {
        min-height: auto;
    }

    .home-banner img {
        height: 100%;
    }

    .banner-content {
        min-height: auto;
        padding: 36px 16px 70px; 
    }

    .banner-text {
        max-width: 100%;
    }

    .banner-text h1 {
        font-size: 1.95rem;
        line-height: 1.2;
        margin-bottom: 10px;
    }

    .banner-subtitle {
        font-size: 1rem;
        line-height: 1.45;
        margin-bottom: 10px;
    }

    .banner-description {
        font-size: 0.95rem;
        line-height: 1.6;
        margin-bottom: 18px;
    }

    .btn-banner {
        width: 100%;
        max-width: 300px;
        min-width: unset;
        padding: 14px 20px;
        font-size: 14px;
    }
}

/* ===== SMALL MOBILE ===== */

@media (max-width: 480px) {
    .banner-content {
        padding: 30px 14px 60px; 
    }

    .banner-text h1 {
        font-size: 1.75rem;
    }

    .banner-subtitle {
        font-size: 0.96rem;
    }

    .banner-description {
        font-size: 0.92rem;
    }
}

/* ===== GAME CARD GRIDS ===== */

.top-games-grid,
.live-games-grid,
.bonus-games-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
    margin-top: 26px;
}

.top-games-grid .game-card,
.live-games-grid .game-card,
.bonus-games-grid .game-card {
    position: relative;
    width: 100%;
    min-width: 0;
    border-radius: 24px;
    overflow: hidden;
    background: #ffffff;
    box-shadow: 0 14px 30px rgba(24, 0, 58, 0.10);
}

.top-games-grid .game-card img,
.live-games-grid .game-card img,
.bonus-games-grid .game-card img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 3 / 4;
    object-fit: cover;
    border-radius: 24px;
}

.top-games-grid .overlay,
.live-games-grid .overlay,
.bonus-games-grid .overlay {
    position: absolute;
    inset: 0;
    background: rgba(24, 0, 58, 0.38);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
    border-radius: 24px;
}

.top-games-grid .game-card:hover .overlay,
.live-games-grid .game-card:hover .overlay,
.bonus-games-grid .game-card:hover .overlay {
    opacity: 1;
}

.top-games-grid .btn-play,
.live-games-grid .btn-play,
.bonus-games-grid .btn-play {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 140px;
    padding: 12px 20px;
    border-radius: 8px;
    background: #d4af37;
    color: #fff;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
    transition: all 0.3s ease;
}

.top-games-grid .btn-play:hover,
.live-games-grid .btn-play:hover,
.bonus-games-grid .btn-play:hover {
    background: #b8962e;
    color: #fff;
    transform: translateY(-2px);
}

/* ===== TABLET ===== */

@media (max-width: 991px) {
    .top-games-grid,
    .live-games-grid,
    .bonus-games-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 18px;
    }
}

/* ===== MOBILE ===== */

@media (max-width: 767px) {
    .top-games-grid,
    .live-games-grid,
    .bonus-games-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
        margin-top: 20px;
    }

    .top-games-grid .game-card,
    .live-games-grid .game-card,
    .bonus-games-grid .game-card {
        border-radius: 18px;
    }

    .top-games-grid .game-card img,
    .live-games-grid .game-card img,
    .bonus-games-grid .game-card img,
    .top-games-grid .overlay,
    .live-games-grid .overlay,
    .bonus-games-grid .overlay {
        border-radius: 18px;
    }

    .top-games-grid .btn-play,
    .live-games-grid .btn-play,
    .bonus-games-grid .btn-play {
        min-width: 110px;
        padding: 10px 14px;
        font-size: 12px;
    }
}

/* ===== SMALL MOBILE ===== */

@media (max-width: 420px) {
    .top-games-grid,
    .live-games-grid,
    .bonus-games-grid {
        gap: 12px;
    }

    .top-games-grid .btn-play,
    .live-games-grid .btn-play,
    .bonus-games-grid .btn-play {
        min-width: 96px;
        font-size: 11px;
        padding: 9px 12px;
    }
}
/* ==================================================
   ABOUT CASINO
================================================== */

.about-casino-section {
    padding: 100px 0;
    background:
        radial-gradient(circle at 90% 10%, rgba(24, 0, 58, 0.07), transparent 30%),
        #f7f7f9;
    color: #18003A;
}

.about-heading {
    max-width: 920px;
    margin: 0 auto 55px;
    text-align: center;
}

.about-eyebrow,
.about-small-title {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 14px;
    color: #72558f;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.6px;
    text-transform: uppercase;
}

.about-heading h2 {
    margin: 0 0 20px;
    color: #18003A;
    font-family: 'Inter', sans-serif;
    font-size: clamp(34px, 4vw, 54px);
    line-height: 1.08;
    font-weight: 700;
    letter-spacing: -1.5px;
}

.about-heading-text {
    max-width: 800px;
    margin: 0 auto;
    color: #655f6c;
    font-size: 18px;
    line-height: 1.75;
}


/* Main block */

.about-main-grid {
    display: grid;
    grid-template-columns: 1.02fr 0.98fr;
    min-height: 560px;
    margin-bottom: 28px;
    overflow: hidden;
    background: #ffffff;
    border-radius: 28px;
    box-shadow: 0 20px 60px rgba(24, 0, 58, 0.09);
}

.about-image-wrap {
    position: relative;
    min-height: 560px;
    overflow: hidden;
}

.about-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .7s ease;
}

.about-image-wrap:hover .about-image {
    transform: scale(1.025);
}

.about-image-wrap::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        180deg,
        transparent 50%,
        rgba(15, 0, 32, 0.65) 100%
    );
}

.about-image-badge {
    position: absolute;
    left: 30px;
    bottom: 30px;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 13px 19px;
    color: #fff;
    background: rgba(24, 0, 58, 0.86);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 14px;
    backdrop-filter: blur(8px);
    font-size: 14px;
}

.about-image-badge-year {
    font-size: 22px;
    font-weight: 700;
}

.about-main-content {
    padding: 58px 55px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.about-main-content h3,
.about-operator h3 {
    margin: 0 0 24px;
    color: #18003A;
    font-family: 'Inter', sans-serif;
    font-size: 34px;
    line-height: 1.2;
    font-weight: 700;
}

.about-main-content p,
.about-detail-card p,
.about-operator-content p {
    margin: 0 0 17px;
    color: #696270;
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    line-height: 1.78;
}


/* Facts */

.about-facts {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    margin: 28px 0;
}

.about-fact-card {
    display: flex;
    align-items: center;
    gap: 17px;
    min-height: 112px;
    padding: 22px;
    background: #18003A;
    border-radius: 18px;
}

.about-fact-icon {
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #18003A;
    background: #ffffff;
    border-radius: 13px;
    font-size: 19px;
}

.about-fact-content {
    display: flex;
    flex-direction: column;
}

.about-fact-value {
    margin-bottom: 4px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 22px;
    line-height: 1.1;
    font-weight: 700;
}

.about-fact-label {
    color: rgba(255,255,255,.68);
    font-size: 13px;
    line-height: 1.4;
}


/* Detail cards */

.about-details-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
    margin-top: 28px;
}

.about-detail-card {
    position: relative;
    padding: 42px;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid rgba(24, 0, 58, .08);
    border-radius: 22px;
}

.about-detail-icon {
    width: 55px;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 28px;
    color: #ffffff;
    background: #18003A;
    border-radius: 15px;
    font-size: 21px;
}

.about-detail-number {
    position: absolute;
    right: 28px;
    top: 20px;
    color: rgba(24, 0, 58, .06);
    font-family: 'Inter', sans-serif;
    font-size: 70px;
    line-height: 1;
    font-weight: 800;
}

.about-detail-card h3 {
    position: relative;
    margin: 0 0 18px;
    color: #18003A;
    font-family: 'Inter', sans-serif;
    font-size: 25px;
    font-weight: 700;
}


/* Operator */

.about-operator {
    margin-top: 28px;
    padding: 50px;
    background: #ffffff;
    border-radius: 24px;
    border-left: 5px solid #18003A;
    box-shadow: 0 14px 45px rgba(24, 0, 58, .06);
}

.about-operator-title {
    max-width: 760px;
}

.about-operator-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
}

.about-address {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-top: 25px;
    padding: 20px 24px;
    background: #f5f2f8;
    border-radius: 16px;
}

.about-address-icon {
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: #18003A;
    border-radius: 12px;
}

.about-address-label,
.about-address-value {
    display: block;
}

.about-address-label {
    margin-bottom: 3px;
    color: #8a8191;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 1.2px;
}

.about-address-value {
    color: #18003A;
    font-size: 16px;
    font-weight: 600;
}


/* Responsive */

@media (max-width: 991px) {

    .about-casino-section {
        padding: 70px 0;
    }

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

    .about-image-wrap {
        min-height: 430px;
    }

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

    .about-operator-content {
        grid-template-columns: 1fr;
        gap: 0;
    }
}

@media (max-width: 767px) {

    .about-heading {
        margin-bottom: 35px;
    }

    .about-heading h2 {
        font-size: 34px;
    }

    .about-heading-text {
        font-size: 16px;
    }

    .about-image-wrap {
        min-height: 330px;
    }

    .about-main-content {
        padding: 38px 28px;
    }

    .about-main-content h3,
    .about-operator h3 {
        font-size: 28px;
    }

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

    .about-detail-card {
        padding: 32px 27px;
    }

    .about-operator {
        padding: 35px 27px;
    }
}

@media (max-width: 575px) {

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

    .about-fact-card {
        min-height: auto;
    }

    .about-image-badge {
        left: 18px;
        right: 18px;
        bottom: 18px;
    }

    .about-address {
        align-items: flex-start;
    }
}
/* ===== DARK NAVY SITE BACKGROUND ===== */

:root {
    --site-bg: #071426;
    --site-bg-light: #0B1D33;
    --site-card: #10243D;
    --site-border: rgba(255, 255, 255, 0.10);
    --site-text: #FFFFFF;
    --site-text-muted: #AEBBCB;
}

/* Main site background */
html,
body {
    background: var(--site-bg);
    color: var(--site-text);
}

/* About section */
.about-casino-section {
    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(55, 105, 160, 0.16),
            transparent 32%
        ),
        #071426;
    color: #FFFFFF;
}

/* Main About block */
.about-main-grid,
.about-detail-card,
.about-operator {
    background: #0B1D33;
    border-color: rgba(255, 255, 255, 0.08);
}

/* Headings */
.about-heading h2,
.about-main-content h3,
.about-detail-card h3,
.about-operator h3 {
    color: #FFFFFF;
}

/* Regular text */
.about-heading-text,
.about-main-content p,
.about-detail-card p,
.about-operator-content p {
    color: #AEBBCB;
}

/* Small headings */
.about-eyebrow,
.about-small-title {
    color: #8FB4DD;
}

/* Fact cards */
.about-fact-card {
    background: #102B4C;
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.about-fact-icon {
    background: rgba(255, 255, 255, 0.10);
    color: #FFFFFF;
}

.about-fact-value {
    color: #FFFFFF;
}

.about-fact-label {
    color: #AEBBCB;
}

/* Detail cards */
.about-detail-icon {
    background: #173B64;
    color: #FFFFFF;
}

.about-detail-number {
    color: rgba(255, 255, 255, 0.05);
}

/* Operator */
.about-operator {
    border-left-color: #3C78B4;
}

/* Address */
.about-address {
    background: #10243D;
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.about-address-icon {
    background: #173B64;
    color: #FFFFFF;
}

.about-address-label {
    color: #8296AC;
}

.about-address-value {
    color: #FFFFFF;
}
/* ==================================================
   CASINO OVERVIEW
================================================== */

.casino-overview-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background: #071426;
    color: #ffffff;
}

.casino-overview-section::before {
    content: "";
    position: absolute;
    width: 600px;
    height: 600px;
    top: -250px;
    left: -250px;
    border-radius: 50%;
    background: rgba(40, 91, 145, 0.10);
    filter: blur(20px);
    pointer-events: none;
}


/* Heading */

.casino-overview-heading {
    position: relative;
    z-index: 1;
    max-width: 900px;
    margin-bottom: 55px;
}

.casino-overview-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 16px;
    color: #8fb4dd;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.6px;
    text-transform: uppercase;
}

.casino-overview-heading h2 {
    margin: 0 0 22px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: clamp(38px, 5vw, 60px);
    line-height: 1.06;
    font-weight: 700;
    letter-spacing: -1.8px;
}

.casino-overview-heading > p {
    max-width: 790px;
    margin: 0;
    color: #aebdce;
    font-family: 'Roboto', sans-serif;
    font-size: 18px;
    line-height: 1.75;
}


/* Gaming Cards */

.casino-gaming-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 28px;
}

.casino-gaming-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 610px;
    padding: 38px;
    overflow: hidden;
    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.035),
            rgba(255,255,255,.01)
        ),
        #0b1d33;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 26px;
    transition:
        transform .35s ease,
        border-color .35s ease,
        box-shadow .35s ease;
}

.casino-gaming-card:hover {
    transform: translateY(-5px);
    border-color: rgba(143,180,221,.35);
    box-shadow: 0 24px 65px rgba(0,0,0,.20);
}

.casino-gaming-card-large {
    background:
        radial-gradient(
            circle at 100% 0,
            rgba(55,112,174,.18),
            transparent 40%
        ),
        #0b1d33;
}


/* Card Top */

.casino-gaming-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    margin-bottom: 42px;
}

.casino-gaming-icon {
    width: 58px;
    height: 58px;
    flex: 0 0 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: #173b64;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 16px;
    font-size: 22px;
}

.casino-gaming-time {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 15px;
    color: #dbe7f4;
    background: rgba(255,255,255,.055);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 30px;
    font-size: 13px;
}


/* Content */

.casino-gaming-content {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.casino-gaming-label {
    margin-bottom: 9px;
    color: #8fb4dd;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

.casino-gaming-content h3 {
    margin: 0 0 21px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 31px;
    line-height: 1.18;
    font-weight: 700;
}

.casino-gaming-content > p {
    margin: 0 0 17px;
    color: #aebdce;
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    line-height: 1.75;
}


/* Slot Features */

.casino-gaming-features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 11px;
    margin: 10px 0 30px;
}

.casino-gaming-features span {
    display: flex;
    align-items: center;
    gap: 9px;
    color: #dce7f2;
    font-size: 14px;
}

.casino-gaming-features i {
    color: #719ecf;
    font-size: 13px;
}


/* Table Games */

.casino-table-list {
    display: grid;
    gap: 10px;
    margin: 10px 0 30px;
}

.casino-table-item {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 13px 16px;
    background: rgba(255,255,255,.035);
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 13px;
}

.casino-table-item > i {
    width: 27px;
    color: #8fb4dd;
    text-align: center;
    font-size: 17px;
}

.casino-table-item div {
    display: flex;
    flex-direction: column;
}

.casino-table-item span {
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
}

.casino-table-item small {
    margin-top: 2px;
    color: #8094aa;
    font-size: 12px;
}


/* Links */

.casino-gaming-link {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    width: fit-content;
    margin-top: auto;
    padding-bottom: 5px;
    color: #ffffff;
    border-bottom: 1px solid #608dbd;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 600;
    transition: gap .25s ease, color .25s ease;
}

.casino-gaming-link:hover {
    gap: 16px;
    color: #9fc3e8;
}


/* Choice Panel */

.casino-choice-panel {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 60px;
    margin-top: 28px;
    padding: 48px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.casino-choice-kicker {
    display: block;
    margin-bottom: 10px;
    color: #8fb4dd;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

.casino-choice-intro h3 {
    margin: 0 0 17px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 30px;
    line-height: 1.2;
}

.casino-choice-intro p,
.casino-choice-item p {
    margin: 0;
    color: #aebdce;
    font-size: 15px;
    line-height: 1.7;
}

.casino-choice-comparison {
    display: grid;
    gap: 24px;
}

.casino-choice-item {
    display: grid;
    grid-template-columns: 55px 1fr;
    gap: 19px;
}

.casino-choice-number {
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #a9caed;
    background: #173b64;
    border-radius: 13px;
    font-size: 13px;
    font-weight: 700;
}

.casino-choice-item h4 {
    margin: 1px 0 7px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
}


/* Quick Information */

.casino-quick-info {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
    align-items: center;
    margin-top: 28px;
    padding: 27px 35px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 20px;
}

.casino-quick-item {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
}

.casino-quick-item > i {
    color: #8fb4dd;
    font-size: 19px;
}

.casino-quick-item > div {
    display: flex;
    flex-direction: column;
}

.casino-quick-label {
    margin-bottom: 3px;
    color: #748ba4;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .8px;
    text-transform: uppercase;
}

.casino-quick-value {
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
}

.casino-quick-divider {
    width: 1px;
    height: 38px;
    background: rgba(255,255,255,.10);
}


/* Responsive */

@media (max-width: 991px) {

    .casino-overview-section {
        padding: 80px 0;
    }

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

    .casino-gaming-card {
        min-height: auto;
    }

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

    .casino-quick-info {
        grid-template-columns: 1fr 1fr;
        gap: 25px;
    }

    .casino-quick-divider {
        display: none;
    }

    .casino-quick-item {
        justify-content: flex-start;
    }
}

@media (max-width: 767px) {

    .casino-overview-section {
        padding: 65px 0;
    }

    .casino-overview-heading {
        margin-bottom: 35px;
    }

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

    .casino-overview-heading > p {
        font-size: 16px;
    }

    .casino-gaming-card {
        padding: 28px;
        border-radius: 20px;
    }

    .casino-gaming-top {
        align-items: flex-start;
        margin-bottom: 30px;
    }

    .casino-gaming-content h3 {
        font-size: 27px;
    }

    .casino-choice-panel {
        padding: 32px 27px;
    }
}

@media (max-width: 575px) {

    .casino-gaming-top {
        flex-direction: column;
    }

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

    .casino-quick-info {
        grid-template-columns: 1fr;
        padding: 25px;
    }

    .casino-choice-item {
        grid-template-columns: 45px 1fr;
    }

    .casino-choice-number {
        width: 42px;
        height: 42px;
    }
}
/* ==================================================
   SLOTS & ELECTRONIC GAMING
================================================== */

.slots-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 100% 15%,
            rgba(58, 111, 170, .12),
            transparent 28%
        ),
        #071426;
    color: #ffffff;
}


/* Heading */

.slots-heading {
    max-width: 930px;
    margin-bottom: 55px;
}

.slots-eyebrow,
.slots-small-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 13px;
    color: #8fb4dd;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.slots-heading h2 {
    margin: 0 0 21px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: clamp(38px, 5vw, 58px);
    line-height: 1.07;
    font-weight: 700;
    letter-spacing: -1.6px;
}

.slots-intro {
    max-width: 820px;
    margin: 0;
    color: #aebdce;
    font-family: 'Roboto', sans-serif;
    font-size: 18px;
    line-height: 1.75;
}


/* Main Visual */

.slots-visual-grid {
    display: grid;
    grid-template-columns: 1.08fr .92fr;
    min-height: 570px;
    overflow: hidden;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 27px;
}

.slots-image-wrap {
    position: relative;
    min-height: 570px;
    overflow: hidden;
}

.slots-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .7s ease;
}

.slots-image-wrap:hover .slots-image {
    transform: scale(1.025);
}

.slots-image-wrap::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            transparent 48%,
            rgba(3, 12, 24, .82) 100%
        );
}

.slots-image-info {
    position: absolute;
    z-index: 2;
    left: 30px;
    bottom: 30px;
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 14px 20px;
    background: rgba(7,20,38,.88);
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 15px;
    backdrop-filter: blur(8px);
}

.slots-image-number {
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 27px;
    font-weight: 700;
}

.slots-image-text {
    max-width: 110px;
    color: #aebdce;
    font-size: 12px;
    line-height: 1.35;
}

.slots-main-info {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 55px;
}

.slots-main-info h3 {
    margin: 0 0 23px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 34px;
    line-height: 1.18;
    font-weight: 700;
}

.slots-main-info > p {
    margin: 0 0 17px;
    color: #aebdce;
    font-size: 16px;
    line-height: 1.78;
}


/* Hours */

.slots-hours {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-top: 16px;
    padding: 18px 20px;
    background: #102b4c;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 15px;
}

.slots-hours-icon {
    width: 45px;
    height: 45px;
    flex: 0 0 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: #173b64;
    border-radius: 12px;
}

.slots-hours > div:last-child {
    display: flex;
    flex-direction: column;
}

.slots-hours-label {
    margin-bottom: 2px;
    color: #8ba0b6;
    font-size: 12px;
}

.slots-hours-value {
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 19px;
    font-weight: 700;
}


/* Features */

.slots-feature-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    margin-top: 28px;
}

.slots-feature-card {
    position: relative;
    min-height: 330px;
    padding: 30px;
    overflow: hidden;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 20px;
    transition:
        transform .3s ease,
        background .3s ease;
}

.slots-feature-card:hover {
    transform: translateY(-4px);
    background: #10243d;
}

.slots-feature-icon {
    width: 51px;
    height: 51px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 28px;
    color: #ffffff;
    background: #173b64;
    border-radius: 14px;
    font-size: 19px;
}

.slots-feature-number {
    position: absolute;
    top: 21px;
    right: 23px;
    color: rgba(255,255,255,.06);
    font-family: 'Inter', sans-serif;
    font-size: 45px;
    font-weight: 800;
}

.slots-feature-card h3 {
    margin: 0 0 14px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 700;
}

.slots-feature-card p {
    margin: 0;
    color: #9dafc1;
    font-size: 14px;
    line-height: 1.7;
}


/* Jackpot Panel */

.slots-jackpot-panel {
    margin-top: 28px;
    padding: 48px;
    background:
        radial-gradient(
            circle at 100% 0,
            rgba(67,125,187,.20),
            transparent 40%
        ),
        #10243d;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 25px;
}

.slots-jackpot-title {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 30px;
}

.slots-jackpot-icon {
    width: 62px;
    height: 62px;
    flex: 0 0 62px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: #173b64;
    border-radius: 17px;
    font-size: 23px;
}

.slots-jackpot-title h3 {
    margin: 0;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 30px;
    line-height: 1.2;
}

.slots-jackpot-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
}

.slots-jackpot-content p {
    margin: 0;
    color: #aebdce;
    font-size: 15px;
    line-height: 1.75;
}

.slots-jackpot-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 28px;
}

.slots-jackpot-tags span {
    padding: 9px 14px;
    color: #c7d8e9;
    background: rgba(255,255,255,.045);
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 30px;
    font-size: 12px;
}


/* Hours Comparison */

.slots-hours-panel {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 60px;
    align-items: center;
    margin-top: 28px;
    padding: 45px 48px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.slots-hours-heading h3 {
    margin: 0 0 14px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 27px;
}

.slots-hours-heading p {
    margin: 0;
    color: #9dafc1;
    font-size: 15px;
    line-height: 1.7;
}

.slots-hours-comparison {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 15px;
}

.slots-time-block {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 24px 15px;
    text-align: center;
    background: rgba(255,255,255,.03);
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 17px;
}

.slots-time-block.active {
    background: #102b4c;
    border-color: rgba(143,180,221,.25);
}

.slots-time-icon {
    margin-bottom: 12px;
    color: #8fb4dd;
    font-size: 20px;
}

.slots-time-title {
    margin-bottom: 7px;
    color: #aebdce;
    font-size: 12px;
}

.slots-time-value {
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 23px;
    font-weight: 700;
}

.slots-time-note {
    margin-top: 4px;
    color: #71869c;
    font-size: 11px;
}

.slots-time-separator {
    color: #61758a;
    font-size: 12px;
}


/* Notice */

.slots-notice {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    margin-top: 20px;
    padding: 17px 20px;
    color: #8398ad;
    background: rgba(255,255,255,.025);
    border-radius: 13px;
    font-size: 13px;
    line-height: 1.6;
}

.slots-notice i {
    margin-top: 3px;
    color: #8fb4dd;
}

.slots-notice p {
    margin: 0;
}


/* Responsive */

@media (max-width: 1199px) {

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

@media (max-width: 991px) {

    .slots-section {
        padding: 80px 0;
    }

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

    .slots-image-wrap {
        min-height: 430px;
    }

    .slots-hours-panel {
        grid-template-columns: 1fr;
        gap: 35px;
    }
}

@media (max-width: 767px) {

    .slots-section {
        padding: 65px 0;
    }

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

    .slots-intro {
        font-size: 16px;
    }

    .slots-image-wrap {
        min-height: 340px;
    }

    .slots-main-info {
        padding: 35px 28px;
    }

    .slots-main-info h3 {
        font-size: 28px;
    }

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

    .slots-feature-card {
        min-height: auto;
    }

    .slots-jackpot-panel,
    .slots-hours-panel {
        padding: 32px 27px;
    }

    .slots-jackpot-content {
        grid-template-columns: 1fr;
        gap: 18px;
    }
}

@media (max-width: 575px) {

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

    .slots-time-separator {
        padding: 2px 0;
    }

    .slots-jackpot-title {
        align-items: flex-start;
    }

    .slots-jackpot-title h3 {
        font-size: 25px;
    }

    .slots-image-info {
        left: 18px;
        bottom: 18px;
    }
}
/* ==================================================
   JACKPOTS
================================================== */

.jackpots-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 8% 15%,
            rgba(52, 111, 171, .13),
            transparent 28%
        ),
        #071426;
    color: #ffffff;
}


/* Heading */

.jackpots-heading {
    max-width: 930px;
    margin-bottom: 55px;
}

.jackpots-eyebrow,
.jackpots-small-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 13px;
    color: #8fb4dd;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.jackpots-heading h2 {
    margin: 0 0 21px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: clamp(38px, 5vw, 58px);
    line-height: 1.07;
    font-weight: 700;
    letter-spacing: -1.6px;
}

.jackpots-intro {
    max-width: 830px;
    margin: 0;
    color: #aebdce;
    font-size: 18px;
    line-height: 1.75;
}


/* Main explanation */

.jackpots-main-grid {
    display: grid;
    grid-template-columns: 1.3fr .7fr;
    gap: 28px;
}

.jackpots-main-content,
.jackpots-highlight {
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.jackpots-main-content {
    padding: 48px;
}

.jackpots-main-content h3 {
    margin: 0 0 22px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 31px;
    line-height: 1.2;
}

.jackpots-main-content p {
    margin: 0 0 16px;
    color: #aebdce;
    font-size: 16px;
    line-height: 1.78;
}


/* Highlight */

.jackpots-highlight {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 42px;
    background:
        radial-gradient(
            circle at 100% 0,
            rgba(67, 126, 191, .22),
            transparent 45%
        ),
        #10243d;
}

.jackpots-highlight-icon {
    width: 58px;
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 28px;
    color: #ffffff;
    background: #173b64;
    border-radius: 16px;
    font-size: 22px;
}

.jackpots-highlight-label {
    margin-bottom: 8px;
    color: #8ba0b6;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.jackpots-highlight-value {
    margin-bottom: 17px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 30px;
    line-height: 1.1;
    font-weight: 700;
}

.jackpots-highlight p {
    margin: 0 0 23px;
    color: #aebdce;
    font-size: 14px;
    line-height: 1.7;
}

.jackpots-highlight-note {
    display: flex;
    align-items: center;
    gap: 9px;
    color: #8fb4dd;
    font-size: 12px;
}


/* Jackpot Families */

.jackpots-family-area {
    margin-top: 28px;
    padding: 48px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.jackpots-family-heading {
    max-width: 720px;
    margin-bottom: 32px;
}

.jackpots-family-heading h3,
.jackpots-more h3,
.jackpots-table-intro h3 {
    margin: 0 0 13px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 29px;
    line-height: 1.2;
}

.jackpots-family-heading p,
.jackpots-table-intro p {
    margin: 0;
    color: #9dafc1;
    font-size: 15px;
    line-height: 1.7;
}

.jackpots-family-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.jackpot-family-card {
    min-height: 210px;
    padding: 25px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 17px;
    transition: transform .3s ease, background .3s ease;
}

.jackpot-family-card:hover {
    transform: translateY(-4px);
    background: #122a47;
}

.jackpot-family-icon {
    width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    color: #ffffff;
    background: #173b64;
    border-radius: 12px;
    font-size: 17px;
}

.jackpot-family-card h4 {
    margin: 0 0 9px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
}

.jackpot-family-card p {
    margin: 0;
    color: #92a5b9;
    font-size: 13px;
    line-height: 1.65;
}


/* More Systems */

.jackpots-more {
    margin-top: 28px;
    padding: 38px 42px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 21px;
}

.jackpots-more-title {
    margin-bottom: 22px;
}

.jackpots-tag-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.jackpots-tag-list span {
    padding: 10px 15px;
    color: #cad9e8;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 30px;
    font-size: 12px;
}


/* Table Jackpots */

.jackpots-table-panel {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 45px;
    margin-top: 28px;
    padding: 48px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

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

.jackpots-table-card {
    display: flex;
    gap: 17px;
    padding: 25px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 17px;
}

.jackpots-table-icon {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: #173b64;
    border-radius: 13px;
    font-size: 18px;
}

.jackpots-table-type {
    display: block;
    margin-bottom: 5px;
    color: #7892ad;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .8px;
}

.jackpots-table-card h4 {
    margin: 0 0 8px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 17px;
}

.jackpots-table-card p {
    margin: 0;
    color: #92a5b9;
    font-size: 13px;
    line-height: 1.6;
}


/* Notice */

.jackpots-notice {
    display: flex;
    gap: 18px;
    margin-top: 28px;
    padding: 26px 30px;
    background: rgba(255,255,255,.025);
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 17px;
}

.jackpots-notice-icon {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #8fb4dd;
    background: #10243d;
    border-radius: 11px;
}

.jackpots-notice h4 {
    margin: 0 0 7px;
    color: #ffffff;
    font-size: 16px;
}

.jackpots-notice p {
    margin: 0;
    color: #869bb0;
    font-size: 13px;
    line-height: 1.65;
}


/* Responsive */

@media (max-width: 991px) {

    .jackpots-section {
        padding: 80px 0;
    }

    .jackpots-main-grid,
    .jackpots-table-panel {
        grid-template-columns: 1fr;
    }

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

@media (max-width: 767px) {

    .jackpots-section {
        padding: 65px 0;
    }

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

    .jackpots-intro {
        font-size: 16px;
    }

    .jackpots-main-content,
    .jackpots-highlight,
    .jackpots-family-area,
    .jackpots-table-panel {
        padding: 30px 26px;
    }

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

    .jackpots-more {
        padding: 30px 26px;
    }
}

@media (max-width: 575px) {

    .jackpots-table-card {
        flex-direction: column;
    }

    .jackpots-notice {
        align-items: flex-start;
    }
}

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

.tables-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 90% 20%,
            rgba(56, 111, 171, .12),
            transparent 30%
        ),
        #071426;
    color: #ffffff;
}


/* Heading */

.tables-heading {
    max-width: 930px;
    margin-bottom: 55px;
}

.tables-eyebrow,
.tables-small-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 13px;
    color: #8fb4dd;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.tables-heading h2 {
    margin: 0 0 21px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: clamp(38px, 5vw, 58px);
    line-height: 1.07;
    font-weight: 700;
    letter-spacing: -1.6px;
}

.tables-intro {
    max-width: 820px;
    margin: 0;
    color: #aebdce;
    font-size: 18px;
    line-height: 1.75;
}


/* Main block */

.tables-main-grid {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    min-height: 570px;
    overflow: hidden;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 27px;
}

.tables-image-wrap {
    position: relative;
    min-height: 570px;
    overflow: hidden;
}

.tables-image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform .7s ease;
}

.tables-image-wrap:hover .tables-image {
    transform: scale(1.025);
}

.tables-image-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(7,20,38,.05) 35%,
            rgba(7,20,38,.88) 100%
        );
}

.tables-image-caption {
    position: absolute;
    z-index: 2;
    left: 30px;
    bottom: 30px;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 19px;
    background: rgba(7,20,38,.88);
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 15px;
    backdrop-filter: blur(8px);
}

.tables-caption-icon {
    width: 43px;
    height: 43px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: #173b64;
    border-radius: 11px;
}

.tables-image-caption div:last-child {
    display: flex;
    flex-direction: column;
}

.tables-image-caption span {
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
}

.tables-image-caption small {
    margin-top: 3px;
    color: #91a6bb;
    font-size: 11px;
}


/* Main content */

.tables-main-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 52px;
}

.tables-main-content h3 {
    margin: 0 0 22px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 34px;
    line-height: 1.18;
}

.tables-main-content > p {
    margin: 0 0 16px;
    color: #aebdce;
    font-size: 15px;
    line-height: 1.75;
}


/* Main facts */

.tables-main-facts {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-top: 17px;
}

.tables-main-fact {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 13px;
}

.tables-main-fact > i {
    color: #8fb4dd;
    font-size: 16px;
}

.tables-main-fact div {
    display: flex;
    flex-direction: column;
}

.tables-main-fact span {
    margin-bottom: 2px;
    color: #758ba2;
    font-size: 10px;
}

.tables-main-fact strong {
    color: #ffffff;
    font-size: 12px;
    font-weight: 600;
}


/* Games heading */

.tables-games-heading {
    max-width: 730px;
    margin: 65px 0 30px;
}

.tables-games-heading h3 {
    margin: 0 0 13px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 32px;
}

.tables-games-heading p {
    margin: 0;
    color: #9dafc1;
    font-size: 15px;
    line-height: 1.7;
}


/* Game Cards */

.tables-games-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.table-game-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 430px;
    padding: 32px;
    overflow: hidden;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 21px;
    transition:
        transform .3s ease,
        background .3s ease,
        border-color .3s ease;
}

.table-game-card:hover {
    transform: translateY(-5px);
    background: #10243d;
    border-color: rgba(143,180,221,.25);
}

.table-game-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 27px;
}

.table-game-icon {
    width: 53px;
    height: 53px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: #173b64;
    border-radius: 14px;
    font-size: 20px;
}

.table-game-number {
    color: rgba(255,255,255,.08);
    font-family: 'Inter', sans-serif;
    font-size: 40px;
    line-height: 1;
    font-weight: 800;
}

.table-game-type {
    margin-bottom: 8px;
    color: #7895b3;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.table-game-card h3 {
    margin: 0 0 16px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 25px;
}

.table-game-card > p {
    margin: 0 0 25px;
    color: #9dafc1;
    font-size: 14px;
    line-height: 1.72;
}

.table-game-details {
    display: grid;
    gap: 9px;
    margin-top: auto;
}

.table-game-details div {
    display: flex;
    align-items: center;
    gap: 9px;
    padding-top: 10px;
    border-top: 1px solid rgba(255,255,255,.07);
}

.table-game-details i {
    width: 19px;
    color: #8fb4dd;
    text-align: center;
    font-size: 12px;
}

.table-game-details span {
    color: #c0cedc;
    font-size: 12px;
}


/* Difference */

.tables-difference {
    display: grid;
    grid-template-columns: .75fr 1.25fr;
    gap: 55px;
    align-items: center;
    margin-top: 28px;
    padding: 45px 48px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 23px;
}

.tables-difference-title h3 {
    margin: 0 0 14px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 27px;
}

.tables-difference-title p,
.tables-difference-item p {
    margin: 0;
    color: #9dafc1;
    font-size: 14px;
    line-height: 1.68;
}

.tables-difference-grid {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 24px;
    align-items: center;
}

.tables-difference-item {
    display: flex;
    gap: 15px;
}

.tables-difference-icon {
    width: 45px;
    height: 45px;
    flex: 0 0 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: #173b64;
    border-radius: 12px;
}

.tables-difference-item span {
    display: block;
    margin-bottom: 6px;
    color: #ffffff;
    font-size: 15px;
    font-weight: 600;
}

.tables-difference-item small {
    display: block;
    margin-top: 8px;
    color: #8fb4dd;
    font-size: 12px;
}

.tables-difference-divider {
    width: 1px;
    height: 90px;
    background: rgba(255,255,255,.09);
}


/* Visitor Note */

.tables-visitor-note {
    display: flex;
    gap: 18px;
    margin-top: 28px;
    padding: 27px 30px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 17px;
}

.tables-visitor-icon {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #8fb4dd;
    background: #10243d;
    border-radius: 12px;
}

.tables-visitor-note h4 {
    margin: 0 0 8px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 17px;
}

.tables-visitor-note p {
    margin: 0;
    max-width: 900px;
    color: #8fa3b8;
    font-size: 13px;
    line-height: 1.7;
}


/* Responsive */

@media (max-width: 1100px) {

    .tables-main-facts {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 991px) {

    .tables-section {
        padding: 80px 0;
    }

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

    .tables-image-wrap {
        min-height: 430px;
    }

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

    .table-game-card {
        min-height: auto;
    }

    .tables-difference {
        grid-template-columns: 1fr;
        gap: 32px;
    }
}

@media (max-width: 767px) {

    .tables-section {
        padding: 65px 0;
    }

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

    .tables-intro {
        font-size: 16px;
    }

    .tables-image-wrap {
        min-height: 340px;
    }

    .tables-main-content {
        padding: 35px 28px;
    }

    .tables-main-content h3 {
        font-size: 28px;
    }

    .tables-difference {
        padding: 32px 27px;
    }

    .tables-difference-grid {
        grid-template-columns: 1fr;
    }

    .tables-difference-divider {
        width: 100%;
        height: 1px;
    }
}

@media (max-width: 575px) {

    .tables-image-caption {
        left: 18px;
        bottom: 18px;
    }

    .table-game-card {
        padding: 27px;
    }

    .tables-visitor-note {
        padding: 23px;
    }
}
/* ==================================================
   ROULETTE
================================================== */

.roulette-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 92% 12%,
            rgba(58, 116, 177, .12),
            transparent 28%
        ),
        #071426;
    color: #ffffff;
}


/* Heading */

.roulette-heading {
    max-width: 920px;
    margin-bottom: 55px;
}

.roulette-eyebrow,
.roulette-small-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 13px;
    color: #8fb4dd;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.roulette-heading h2 {
    margin: 0 0 21px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: clamp(38px, 5vw, 58px);
    line-height: 1.07;
    font-weight: 700;
    letter-spacing: -1.6px;
}

.roulette-intro {
    max-width: 820px;
    margin: 0;
    color: #aebdce;
    font-size: 18px;
    line-height: 1.75;
}


/* Main */

.roulette-main-grid {
    display: grid;
    grid-template-columns: 1.35fr .65fr;
    gap: 28px;
}

.roulette-main-content {
    padding: 48px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.roulette-main-content h3 {
    margin: 0 0 22px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 32px;
    line-height: 1.2;
}

.roulette-main-content p {
    margin: 0 0 16px;
    color: #aebdce;
    font-size: 15px;
    line-height: 1.78;
}


/* Number panel */

.roulette-number-panel {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 45px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 100% 0,
            rgba(72, 137, 203, .23),
            transparent 46%
        ),
        #10243d;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 24px;
}

.roulette-number-label {
    color: #8fb4dd;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.roulette-number {
    margin: 10px 0 -4px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: clamp(95px, 10vw, 145px);
    line-height: .95;
    font-weight: 800;
    letter-spacing: -7px;
}

.roulette-number-text {
    color: #aebdce;
    font-size: 16px;
    line-height: 1.4;
}

.roulette-number-line {
    width: 100%;
    height: 1px;
    margin: 30px 0 22px;
    background: rgba(255,255,255,.09);
}

.roulette-opening {
    display: flex;
    align-items: center;
    gap: 13px;
}

.roulette-opening > i {
    color: #8fb4dd;
    font-size: 19px;
}

.roulette-opening div {
    display: flex;
    flex-direction: column;
}

.roulette-opening span {
    color: #7f94aa;
    font-size: 11px;
}

.roulette-opening strong {
    margin-top: 2px;
    color: #ffffff;
    font-size: 15px;
}


/* Facts */

.roulette-facts-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    margin-top: 28px;
}

.roulette-fact-card {
    position: relative;
    min-height: 280px;
    padding: 29px;
    overflow: hidden;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 19px;
}

.roulette-fact-icon {
    width: 49px;
    height: 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 27px;
    color: #ffffff;
    background: #173b64;
    border-radius: 13px;
    font-size: 18px;
}

.roulette-fact-number {
    position: absolute;
    right: 22px;
    top: 19px;
    color: rgba(255,255,255,.06);
    font-family: 'Inter', sans-serif;
    font-size: 43px;
    font-weight: 800;
}

.roulette-fact-card h3 {
    margin: 0 0 12px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 19px;
}

.roulette-fact-card p {
    margin: 0;
    color: #92a6ba;
    font-size: 13px;
    line-height: 1.7;
}


/* First Visit */

.roulette-first-visit {
    margin-top: 28px;
    padding: 48px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.roulette-first-heading {
    max-width: 680px;
    margin-bottom: 38px;
}

.roulette-first-heading h3,
.roulette-tableau-content h3 {
    margin: 0 0 13px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 29px;
}

.roulette-first-heading p,
.roulette-tableau-content p {
    margin: 0;
    color: #9dafc1;
    font-size: 14px;
    line-height: 1.7;
}

.roulette-steps {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
    align-items: start;
}

.roulette-step {
    min-width: 0;
}

.roulette-step-number {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 17px;
    color: #b9d3ed;
    background: #173b64;
    border-radius: 11px;
    font-size: 11px;
    font-weight: 700;
}

.roulette-step h4 {
    margin: 0 0 8px;
    color: #ffffff;
    font-size: 16px;
}

.roulette-step p {
    margin: 0;
    color: #91a5b9;
    font-size: 12px;
    line-height: 1.65;
}

.roulette-step-line {
    width: 35px;
    height: 1px;
    margin: 21px 15px 0;
    background: rgba(143,180,221,.28);
}


/* Tableau */

.roulette-tableau-panel {
    display: grid;
    grid-template-columns: 1.25fr .75fr;
    gap: 55px;
    align-items: center;
    margin-top: 28px;
    padding: 46px 48px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 23px;
}

.roulette-tableau-content p + p {
    margin-top: 14px;
}

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

.roulette-tableau-facts > div {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 105px;
    padding: 17px;
    text-align: center;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 14px;
}

.roulette-tableau-value {
    margin-bottom: 6px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 22px;
    font-weight: 700;
}

.roulette-tableau-label {
    color: #7e94aa;
    font-size: 10px;
    line-height: 1.4;
}


/* Responsive */

@media (max-width: 1100px) {

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

    .roulette-steps {
        grid-template-columns: 1fr 1fr;
        gap: 30px;
    }

    .roulette-step-line {
        display: none;
    }
}

@media (max-width: 991px) {

    .roulette-section {
        padding: 80px 0;
    }

    .roulette-main-grid,
    .roulette-tableau-panel {
        grid-template-columns: 1fr;
    }

    .roulette-tableau-panel {
        gap: 30px;
    }
}

@media (max-width: 767px) {

    .roulette-section {
        padding: 65px 0;
    }

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

    .roulette-intro {
        font-size: 16px;
    }

    .roulette-main-content,
    .roulette-number-panel,
    .roulette-first-visit,
    .roulette-tableau-panel {
        padding: 30px 26px;
    }

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

    .roulette-fact-card {
        min-height: auto;
    }
}

@media (max-width: 575px) {

    .roulette-steps,
    .roulette-tableau-facts {
        grid-template-columns: 1fr;
    }

    .roulette-step {
        padding-bottom: 5px;
    }

    .roulette-number {
        font-size: 100px;
    }
}

/* ==================================================
   BLACK JACK
================================================== */

.blackjack-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 8% 15%,
            rgba(55, 112, 174, .12),
            transparent 30%
        ),
        #071426;
    color: #ffffff;
}


/* Heading */

.blackjack-heading {
    max-width: 920px;
    margin-bottom: 55px;
}

.blackjack-eyebrow,
.blackjack-small-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 13px;
    color: #8fb4dd;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.blackjack-heading h2 {
    margin: 0 0 21px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: clamp(38px, 5vw, 58px);
    line-height: 1.07;
    font-weight: 700;
    letter-spacing: -1.6px;
}

.blackjack-intro {
    max-width: 820px;
    margin: 0;
    color: #aebdce;
    font-size: 18px;
    line-height: 1.75;
}


/* Main */

.blackjack-main-grid {
    display: grid;
    grid-template-columns: 1.35fr .65fr;
    gap: 28px;
}

.blackjack-main-content {
    padding: 48px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.blackjack-main-content h3 {
    margin: 0 0 22px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 32px;
    line-height: 1.2;
}

.blackjack-main-content p {
    margin: 0 0 16px;
    color: #aebdce;
    font-size: 15px;
    line-height: 1.78;
}


/* 21 Panel */

.blackjack-21-panel {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 44px;
    background:
        radial-gradient(
            circle at 100% 0,
            rgba(69, 132, 199, .22),
            transparent 45%
        ),
        #10243d;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 24px;
}

.blackjack-21-label {
    color: #8198b0;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.1px;
    text-transform: uppercase;
}

.blackjack-21-number {
    margin: 12px 0 5px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 120px;
    line-height: .9;
    font-weight: 800;
    letter-spacing: -7px;
}

.blackjack-21-panel > p {
    margin: 13px 0 0;
    max-width: 220px;
    color: #aebdce;
    font-size: 14px;
    line-height: 1.6;
}

.blackjack-21-divider {
    height: 1px;
    margin: 28px 0 21px;
    background: rgba(255,255,255,.09);
}

.blackjack-time {
    display: flex;
    align-items: center;
    gap: 13px;
}

.blackjack-time > i {
    color: #8fb4dd;
    font-size: 19px;
}

.blackjack-time div {
    display: flex;
    flex-direction: column;
}

.blackjack-time span {
    color: #7e94aa;
    font-size: 11px;
}

.blackjack-time strong {
    margin-top: 2px;
    color: #ffffff;
    font-size: 15px;
}


/* Principles */

.blackjack-principles-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    margin-top: 28px;
}

.blackjack-principle-card {
    position: relative;
    min-height: 275px;
    padding: 29px;
    overflow: hidden;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 19px;
}

.blackjack-principle-icon {
    width: 49px;
    height: 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 27px;
    color: #ffffff;
    background: #173b64;
    border-radius: 13px;
    font-size: 18px;
}

.blackjack-principle-number {
    position: absolute;
    right: 22px;
    top: 19px;
    color: rgba(255,255,255,.06);
    font-family: 'Inter', sans-serif;
    font-size: 43px;
    font-weight: 800;
}

.blackjack-principle-card h3 {
    margin: 0 0 12px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 19px;
}

.blackjack-principle-card p {
    margin: 0;
    color: #92a6ba;
    font-size: 13px;
    line-height: 1.7;
}


/* Super Pairs */

.blackjack-pairs-panel {
    margin-top: 28px;
    padding: 48px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.blackjack-pairs-heading {
    max-width: 760px;
    margin-bottom: 31px;
}

.blackjack-pairs-heading h3,
.blackjack-first-heading h3,
.blackjack-info-main h3 {
    margin: 0 0 14px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 29px;
    line-height: 1.2;
}

.blackjack-pairs-heading p,
.blackjack-first-heading p,
.blackjack-info-main p {
    margin: 0;
    color: #9dafc1;
    font-size: 14px;
    line-height: 1.7;
}

.blackjack-info-main p + p {
    margin-top: 14px;
}

.blackjack-pairs-content {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.blackjack-pairs-card {
    padding: 27px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 17px;
}

.blackjack-pairs-icon {
    width: 47px;
    height: 47px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 21px;
    color: #ffffff;
    background: #173b64;
    border-radius: 13px;
    font-size: 17px;
}

.blackjack-pairs-card > span {
    display: block;
    margin-bottom: 6px;
    color: #7690aa;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .9px;
    text-transform: uppercase;
}

.blackjack-pairs-card h4 {
    margin: 0 0 11px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
}

.blackjack-pairs-card p {
    margin: 0;
    color: #91a5b9;
    font-size: 13px;
    line-height: 1.68;
}


/* First Round */

.blackjack-first-round {
    margin-top: 28px;
    padding: 48px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.blackjack-first-heading {
    max-width: 720px;
    margin-bottom: 37px;
}

.blackjack-steps {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
    align-items: start;
}

.blackjack-step-number {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 17px;
    color: #bfd7ef;
    background: #173b64;
    border-radius: 11px;
    font-size: 11px;
    font-weight: 700;
}

.blackjack-step h4 {
    margin: 0 0 8px;
    color: #ffffff;
    font-size: 16px;
}

.blackjack-step p {
    margin: 0;
    color: #91a5b9;
    font-size: 12px;
    line-height: 1.65;
}

.blackjack-step-line {
    width: 35px;
    height: 1px;
    margin: 21px 15px 0;
    background: rgba(143,180,221,.28);
}


/* Information */

.blackjack-info-panel {
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    gap: 50px;
    align-items: center;
    margin-top: 28px;
    padding: 45px 48px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 23px;
}

.blackjack-info-facts {
    display: grid;
    gap: 10px;
}

.blackjack-info-facts > div {
    display: grid;
    grid-template-columns: 38px 1fr auto;
    align-items: center;
    gap: 12px;
    padding: 16px 18px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 13px;
}

.blackjack-info-facts i {
    color: #8fb4dd;
    text-align: center;
}

.blackjack-info-facts span {
    color: #8095ab;
    font-size: 11px;
}

.blackjack-info-facts strong {
    color: #ffffff;
    font-size: 13px;
    font-weight: 600;
}


/* Responsive */

@media (max-width: 1100px) {
    .blackjack-principles-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 991px) {

    .blackjack-section {
        padding: 80px 0;
    }

    .blackjack-main-grid,
    .blackjack-info-panel {
        grid-template-columns: 1fr;
    }

    .blackjack-pairs-content {
        grid-template-columns: 1fr;
    }

    .blackjack-steps {
        grid-template-columns: 1fr 1fr;
        gap: 28px;
    }

    .blackjack-step-line {
        display: none;
    }
}

@media (max-width: 767px) {

    .blackjack-section {
        padding: 65px 0;
    }

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

    .blackjack-intro {
        font-size: 16px;
    }

    .blackjack-main-content,
    .blackjack-21-panel,
    .blackjack-pairs-panel,
    .blackjack-first-round,
    .blackjack-info-panel {
        padding: 30px 26px;
    }

    .blackjack-principles-grid {
        grid-template-columns: 1fr;
    }

    .blackjack-principle-card {
        min-height: auto;
    }
}

@media (max-width: 575px) {

    .blackjack-steps {
        grid-template-columns: 1fr;
    }

    .blackjack-info-facts > div {
        grid-template-columns: 35px 1fr;
    }

    .blackjack-info-facts strong {
        grid-column: 2;
    }

    .blackjack-21-number {
        font-size: 100px;
    }
}
/* ==================================================
   POKER
================================================== */

.poker-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 92% 15%,
            rgba(57, 115, 177, .13),
            transparent 30%
        ),
        #071426;
    color: #ffffff;
}


/* Heading */

.poker-heading {
    max-width: 920px;
    margin-bottom: 55px;
}

.poker-eyebrow,
.poker-small-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 13px;
    color: #8fb4dd;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.poker-heading h2 {
    margin: 0 0 21px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: clamp(38px, 5vw, 58px);
    line-height: 1.07;
    font-weight: 700;
    letter-spacing: -1.6px;
}

.poker-intro {
    max-width: 830px;
    margin: 0;
    color: #aebdce;
    font-size: 18px;
    line-height: 1.75;
}


/* Main */

.poker-main-grid {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    min-height: 560px;
    overflow: hidden;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 27px;
}

.poker-image-wrap {
    position: relative;
    min-height: 560px;
    overflow: hidden;
}

.poker-image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform .7s ease;
}

.poker-image-wrap:hover .poker-image {
    transform: scale(1.025);
}

.poker-image-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(7,20,38,.04) 40%,
            rgba(7,20,38,.9) 100%
        );
}

.poker-image-caption {
    position: absolute;
    z-index: 2;
    left: 30px;
    bottom: 30px;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 19px;
    background: rgba(7,20,38,.9);
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 15px;
    backdrop-filter: blur(8px);
}

.poker-caption-icon {
    width: 43px;
    height: 43px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: #173b64;
    border-radius: 11px;
}

.poker-image-caption > div:last-child {
    display: flex;
    flex-direction: column;
}

.poker-image-caption span {
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
}

.poker-image-caption small {
    margin-top: 3px;
    color: #91a6bb;
    font-size: 11px;
}


/* Main Content */

.poker-main-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 52px;
}

.poker-main-content h3 {
    margin: 0 0 22px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 34px;
    line-height: 1.18;
}

.poker-main-content p {
    margin: 0 0 17px;
    color: #aebdce;
    font-size: 15px;
    line-height: 1.77;
}


/* Facts */

.poker-facts-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    margin-top: 28px;
}

.poker-fact-card {
    position: relative;
    min-height: 270px;
    padding: 29px;
    overflow: hidden;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 19px;
}

.poker-fact-icon {
    width: 49px;
    height: 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 27px;
    color: #ffffff;
    background: #173b64;
    border-radius: 13px;
    font-size: 18px;
}

.poker-fact-number {
    position: absolute;
    right: 22px;
    top: 19px;
    color: rgba(255,255,255,.06);
    font-family: 'Inter', sans-serif;
    font-size: 43px;
    font-weight: 800;
}

.poker-fact-card h3 {
    margin: 0 0 12px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 19px;
}

.poker-fact-card p {
    margin: 0;
    color: #92a6ba;
    font-size: 13px;
    line-height: 1.7;
}


/* Process */

.poker-process-panel {
    margin-top: 28px;
    padding: 48px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.poker-process-heading {
    max-width: 740px;
    margin-bottom: 38px;
}

.poker-process-heading h3,
.poker-sidebets-heading h3,
.poker-limits-content h3 {
    margin: 0 0 14px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 29px;
}

.poker-process-heading p,
.poker-sidebets-heading p,
.poker-limits-content p {
    margin: 0;
    color: #9dafc1;
    font-size: 14px;
    line-height: 1.7;
}

.poker-limits-content p + p {
    margin-top: 14px;
}

.poker-process-steps {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
    align-items: start;
}

.poker-process-number {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 17px;
    color: #bed7ef;
    background: #173b64;
    border-radius: 11px;
    font-size: 11px;
    font-weight: 700;
}

.poker-process-step h4 {
    margin: 0 0 8px;
    color: #ffffff;
    font-size: 16px;
}

.poker-process-step p {
    margin: 0;
    color: #91a5b9;
    font-size: 12px;
    line-height: 1.65;
}

.poker-process-line {
    width: 35px;
    height: 1px;
    margin: 21px 15px 0;
    background: rgba(143,180,221,.28);
}


/* Side Bets */

.poker-sidebets-panel {
    margin-top: 28px;
    padding: 48px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.poker-sidebets-heading {
    max-width: 750px;
    margin-bottom: 31px;
}

.poker-sidebets-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
}

.poker-sidebet-card {
    padding: 30px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 18px;
}

.poker-sidebet-icon {
    width: 49px;
    height: 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 22px;
    color: #ffffff;
    background: #173b64;
    border-radius: 13px;
}

.poker-sidebet-type {
    display: block;
    margin-bottom: 7px;
    color: #7892ad;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.poker-sidebet-card h4 {
    margin: 0 0 12px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 21px;
}

.poker-sidebet-card p {
    margin: 0;
    color: #92a6ba;
    font-size: 13px;
    line-height: 1.68;
}

.poker-sidebet-stake {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 24px;
    padding-top: 18px;
    border-top: 1px solid rgba(255,255,255,.07);
}

.poker-sidebet-stake span {
    color: #7890a8;
    font-size: 11px;
}

.poker-sidebet-stake strong {
    color: #ffffff;
    font-size: 17px;
}


/* Limits */

.poker-limits-panel {
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    gap: 50px;
    align-items: center;
    margin-top: 28px;
    padding: 46px 48px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 23px;
}

.poker-limit-cards {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 13px;
}

.poker-limit-card {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 150px;
    padding: 22px;
    text-align: center;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 16px;
}

.poker-limit-label {
    margin-bottom: 8px;
    color: #7892aa;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .8px;
    text-transform: uppercase;
}

.poker-limit-value {
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 28px;
    font-weight: 700;
}

.poker-limit-card small {
    margin-top: 5px;
    color: #72879d;
    font-size: 10px;
}


/* Notice */

.poker-notice {
    display: flex;
    gap: 18px;
    margin-top: 28px;
    padding: 27px 30px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 17px;
}

.poker-notice-icon {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #8fb4dd;
    background: #10243d;
    border-radius: 12px;
}

.poker-notice h4 {
    margin: 0 0 8px;
    color: #ffffff;
    font-size: 17px;
}

.poker-notice p {
    margin: 0;
    max-width: 950px;
    color: #8fa3b8;
    font-size: 13px;
    line-height: 1.7;
}


/* Responsive */

@media (max-width: 1100px) {
    .poker-facts-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 991px) {

    .poker-section {
        padding: 80px 0;
    }

    .poker-main-grid,
    .poker-limits-panel {
        grid-template-columns: 1fr;
    }

    .poker-image-wrap {
        min-height: 430px;
    }

    .poker-process-steps {
        grid-template-columns: 1fr 1fr;
        gap: 28px;
    }

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

@media (max-width: 767px) {

    .poker-section {
        padding: 65px 0;
    }

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

    .poker-intro {
        font-size: 16px;
    }

    .poker-image-wrap {
        min-height: 340px;
    }

    .poker-main-content,
    .poker-process-panel,
    .poker-sidebets-panel,
    .poker-limits-panel {
        padding: 30px 26px;
    }

    .poker-facts-grid,
    .poker-sidebets-grid,
    .poker-limit-cards {
        grid-template-columns: 1fr;
    }

    .poker-fact-card {
        min-height: auto;
    }
}

@media (max-width: 575px) {

    .poker-process-steps {
        grid-template-columns: 1fr;
    }

    .poker-image-caption {
        left: 18px;
        bottom: 18px;
    }

    .poker-notice {
        padding: 23px;
    }
}

/* ==================================================
   FIRST VISIT & OPENING HOURS
================================================== */

.first-visit-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(57, 115, 177, .12),
            transparent 30%
        ),
        #071426;
    color: #ffffff;
}


/* Heading */

.first-visit-heading {
    max-width: 920px;
    margin-bottom: 55px;
}

.first-visit-eyebrow,
.first-visit-small-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 13px;
    color: #8fb4dd;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.first-visit-heading h2 {
    margin: 0 0 21px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: clamp(38px, 5vw, 58px);
    line-height: 1.07;
    font-weight: 700;
    letter-spacing: -1.6px;
}

.first-visit-intro {
    max-width: 830px;
    margin: 0;
    color: #aebdce;
    font-size: 18px;
    line-height: 1.75;
}


/* Main */

.first-visit-main-grid {
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    gap: 28px;
}

.first-visit-content,
.first-visit-orientation {
    padding: 46px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.first-visit-content h3,
.first-visit-orientation h3 {
    margin: 0 0 20px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 30px;
    line-height: 1.2;
}

.first-visit-content p {
    margin: 0 0 16px;
    color: #aebdce;
    font-size: 15px;
    line-height: 1.76;
}


/* Choice */

.first-visit-choice {
    display: grid;
    gap: 14px;
    margin-top: 25px;
}

.first-visit-choice-item {
    display: flex;
    gap: 16px;
    padding: 20px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 15px;
}

.first-visit-choice-icon {
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: #173b64;
    border-radius: 12px;
}

.first-visit-choice-item span {
    display: block;
    margin-bottom: 6px;
    color: #ffffff;
    font-weight: 600;
}

.first-visit-choice-item p {
    margin: 0;
    color: #92a6ba;
    font-size: 13px;
    line-height: 1.65;
}


/* Flow */

.first-visit-flow {
    margin-top: 28px;
    padding: 48px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.first-visit-flow-heading {
    max-width: 720px;
    margin-bottom: 38px;
}

.first-visit-flow-heading h3,
.first-visit-hours-heading h3,
.first-visit-time-guide-title h3,
.first-visit-closed-intro h3 {
    margin: 0 0 13px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 29px;
}

.first-visit-flow-heading p,
.first-visit-hours-heading p,
.first-visit-closed-intro p {
    margin: 0;
    color: #9dafc1;
    font-size: 14px;
    line-height: 1.7;
}

.first-visit-steps {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
}

.first-visit-step-number {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
    color: #bed7ef;
    background: #173b64;
    border-radius: 11px;
    font-size: 11px;
    font-weight: 700;
}

.first-visit-step h4 {
    margin: 0 0 8px;
    color: #ffffff;
    font-size: 16px;
}

.first-visit-step p {
    margin: 0;
    color: #91a5b9;
    font-size: 12px;
    line-height: 1.65;
}

.first-visit-step-line {
    width: 32px;
    height: 1px;
    margin: 21px 14px 0;
    background: rgba(143,180,221,.28);
}


/* Hours */

.first-visit-hours {
    margin-top: 28px;
    padding: 48px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.first-visit-hours-heading {
    max-width: 700px;
    margin-bottom: 30px;
}

.first-visit-hours-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
}

.first-visit-hours-card {
    padding: 32px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 18px;
}

.first-visit-hours-card.primary {
    background:
        radial-gradient(
            circle at 100% 0,
            rgba(67,126,191,.18),
            transparent 45%
        ),
        #102b4c;
}

.first-visit-hours-icon {
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 24px;
    color: #ffffff;
    background: #173b64;
    border-radius: 13px;
    font-size: 18px;
}

.first-visit-hours-type {
    display: block;
    margin-bottom: 7px;
    color: #839ab1;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.first-visit-hours-time {
    display: block;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 35px;
    line-height: 1;
    font-weight: 700;
}

.first-visit-hours-note {
    display: block;
    margin-top: 7px;
    color: #8fb4dd;
    font-size: 12px;
}

.first-visit-hours-card p {
    margin: 21px 0 0;
    color: #92a6ba;
    font-size: 13px;
    line-height: 1.68;
}


/* Time Guide */

.first-visit-time-guide {
    display: grid;
    grid-template-columns: .7fr 1.3fr;
    gap: 50px;
    margin-top: 28px;
    padding: 46px 48px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 23px;
}

.first-visit-time-list {
    display: grid;
    gap: 12px;
}

.first-visit-time-item {
    display: grid;
    grid-template-columns: 75px 1fr;
    gap: 17px;
    padding: 17px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 14px;
}

.first-visit-time-clock {
    color: #8fb4dd;
    font-family: 'Inter', sans-serif;
    font-size: 17px;
    font-weight: 700;
}

.first-visit-time-item h4 {
    margin: 0 0 5px;
    color: #ffffff;
    font-size: 14px;
}

.first-visit-time-item p {
    margin: 0;
    color: #899db1;
    font-size: 12px;
    line-height: 1.6;
}


/* Closed Days */

.first-visit-closed {
    margin-top: 28px;
    padding: 48px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.first-visit-closed-intro {
    display: flex;
    gap: 20px;
    max-width: 800px;
}

.first-visit-closed-icon {
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: #173b64;
    border-radius: 14px;
    font-size: 19px;
}

.first-visit-special-rule {
    display: flex;
    align-items: center;
    gap: 15px;
    margin: 30px 0 18px;
    padding: 19px 22px;
    background: #10243d;
    border: 1px solid rgba(143,180,221,.16);
    border-radius: 14px;
}

.first-visit-special-rule > i {
    color: #8fb4dd;
    font-size: 18px;
}

.first-visit-special-rule div {
    display: flex;
    flex-direction: column;
}

.first-visit-special-rule span {
    color: #7f94aa;
    font-size: 11px;
}

.first-visit-special-rule strong {
    margin-top: 2px;
    color: #ffffff;
    font-size: 14px;
}

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

.first-visit-closed-grid > div {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 16px 18px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 13px;
}

.first-visit-closed-grid i {
    color: #7896b5;
}

.first-visit-closed-grid span {
    color: #dce6f0;
    font-size: 13px;
}


/* Final Note */

.first-visit-note {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    margin-top: 20px;
    padding: 18px 21px;
    background: rgba(255,255,255,.025);
    border-radius: 13px;
}

.first-visit-note i {
    margin-top: 3px;
    color: #8fb4dd;
}

.first-visit-note p {
    margin: 0;
    color: #8398ad;
    font-size: 13px;
    line-height: 1.65;
}


/* Responsive */

@media (max-width: 991px) {

    .first-visit-section {
        padding: 80px 0;
    }

    .first-visit-main-grid,
    .first-visit-time-guide {
        grid-template-columns: 1fr;
    }

    .first-visit-steps {
        grid-template-columns: 1fr 1fr;
        gap: 28px;
    }

    .first-visit-step-line {
        display: none;
    }

    .first-visit-closed-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {

    .first-visit-section {
        padding: 65px 0;
    }

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

    .first-visit-intro {
        font-size: 16px;
    }

    .first-visit-content,
    .first-visit-orientation,
    .first-visit-flow,
    .first-visit-hours,
    .first-visit-time-guide,
    .first-visit-closed {
        padding: 30px 26px;
    }

    .first-visit-hours-grid,
    .first-visit-closed-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575px) {

    .first-visit-steps {
        grid-template-columns: 1fr;
    }

    .first-visit-time-item {
        grid-template-columns: 60px 1fr;
    }

    .first-visit-closed-intro {
        flex-direction: column;
    }

    .first-visit-hours-time {
        font-size: 30px;
    }
}

/* ==================================================
   ENTRY, ID & HOUSE RULES
================================================== */

.entry-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 92% 12%,
            rgba(55, 112, 174, .12),
            transparent 30%
        ),
        #071426;
    color: #ffffff;
}


/* Heading */

.entry-heading {
    max-width: 920px;
    margin-bottom: 55px;
}

.entry-eyebrow,
.entry-small-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 13px;
    color: #8fb4dd;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.entry-heading h2 {
    margin: 0 0 21px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: clamp(38px, 5vw, 58px);
    line-height: 1.07;
    font-weight: 700;
    letter-spacing: -1.6px;
}

.entry-intro {
    max-width: 830px;
    margin: 0;
    color: #aebdce;
    font-size: 18px;
    line-height: 1.75;
}


/* Main */

.entry-main-grid {
    display: grid;
    grid-template-columns: 1.35fr .65fr;
    gap: 28px;
}

.entry-main-content {
    padding: 48px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.entry-main-content h3 {
    margin: 0 0 22px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 32px;
}

.entry-main-content p {
    margin: 0 0 16px;
    color: #aebdce;
    font-size: 15px;
    line-height: 1.78;
}


/* Price */

.entry-price-panel {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 44px;
    background:
        radial-gradient(
            circle at 100% 0,
            rgba(70, 134, 199, .22),
            transparent 45%
        ),
        #10243d;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 24px;
}

.entry-price-label {
    color: #839ab1;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.entry-price-value {
    margin: 10px 0 12px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 88px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: -5px;
}

.entry-price-panel > p {
    margin: 0;
    color: #aebdce;
    font-size: 14px;
    line-height: 1.6;
}

.entry-price-divider {
    height: 1px;
    margin: 28px 0 21px;
    background: rgba(255,255,255,.09);
}

.entry-age {
    display: flex;
    align-items: center;
    gap: 13px;
}

.entry-age > i {
    color: #8fb4dd;
    font-size: 19px;
}

.entry-age div {
    display: flex;
    flex-direction: column;
}

.entry-age span {
    color: #7f94aa;
    font-size: 11px;
}

.entry-age strong {
    color: #ffffff;
    font-size: 16px;
}


/* Documents */

.entry-documents-panel,
.entry-rules-area {
    margin-top: 28px;
    padding: 48px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.entry-documents-heading,
.entry-rules-heading {
    max-width: 740px;
    margin-bottom: 31px;
}

.entry-documents-heading h3,
.entry-rules-heading h3,
.entry-ticket-content h3,
.entry-house-right h3,
.entry-dresscode-content h3 {
    margin: 0 0 13px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 29px;
}

.entry-documents-heading p,
.entry-rules-heading p,
.entry-ticket-content p,
.entry-house-right p,
.entry-dresscode-content p {
    margin: 0;
    color: #9dafc1;
    font-size: 14px;
    line-height: 1.7;
}

.entry-dresscode-content p + p {
    margin-top: 13px;
}

.entry-documents-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
}

.entry-document-card {
    padding: 28px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 18px;
}

.entry-document-title {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 24px;
}

.entry-document-icon {
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: #173b64;
    border-radius: 12px;
}

.entry-document-title span {
    color: #7892aa;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .9px;
}

.entry-document-title h4 {
    margin: 3px 0 0;
    color: #ffffff;
    font-size: 18px;
}

.entry-document-list {
    display: grid;
    gap: 10px;
}

.entry-document-list > div {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 13px 15px;
    background: rgba(255,255,255,.025);
    border-radius: 11px;
}

.entry-document-list i {
    width: 20px;
    color: #8fb4dd;
    text-align: center;
}

.entry-document-list span {
    color: #c3d0dd;
    font-size: 13px;
}


/* Ticket */

.entry-ticket-panel {
    display: flex;
    gap: 20px;
    margin-top: 28px;
    padding: 35px 40px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 20px;
}

.entry-ticket-icon {
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: #173b64;
    border-radius: 14px;
}


/* Rules */

.entry-rules-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.entry-rule-card {
    position: relative;
    min-height: 265px;
    padding: 27px;
    overflow: hidden;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 17px;
}

.entry-rule-icon {
    width: 47px;
    height: 47px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 23px;
    color: #ffffff;
    background: #173b64;
    border-radius: 13px;
}

.entry-rule-number {
    position: absolute;
    top: 18px;
    right: 21px;
    color: rgba(255,255,255,.06);
    font-family: 'Inter', sans-serif;
    font-size: 39px;
    font-weight: 800;
}

.entry-rule-card h4 {
    margin: 0 0 11px;
    color: #ffffff;
    font-size: 17px;
}

.entry-rule-card p {
    margin: 0;
    color: #91a5b9;
    font-size: 13px;
    line-height: 1.68;
}


/* House Right */

.entry-house-right {
    display: flex;
    gap: 20px;
    margin-top: 28px;
    padding: 38px 42px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 21px;
}

.entry-house-right-icon {
    width: 54px;
    height: 54px;
    flex: 0 0 54px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: #173b64;
    border-radius: 14px;
}


/* Dresscode */

.entry-dresscode {
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    gap: 50px;
    align-items: center;
    margin-top: 28px;
    padding: 46px 48px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 23px;
}

.entry-dresscode-facts {
    display: grid;
    gap: 10px;
}

.entry-dresscode-facts > div {
    display: grid;
    grid-template-columns: 38px 1fr auto;
    align-items: center;
    gap: 12px;
    padding: 16px 18px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 13px;
}

.entry-dresscode-facts i {
    color: #8fb4dd;
    text-align: center;
}

.entry-dresscode-facts span {
    color: #8297ac;
    font-size: 12px;
}

.entry-dresscode-facts strong {
    color: #ffffff;
    font-size: 12px;
    font-weight: 600;
}


/* Responsive */

@media (max-width: 991px) {

    .entry-section {
        padding: 80px 0;
    }

    .entry-main-grid,
    .entry-dresscode {
        grid-template-columns: 1fr;
    }

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

@media (max-width: 767px) {

    .entry-section {
        padding: 65px 0;
    }

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

    .entry-intro {
        font-size: 16px;
    }

    .entry-main-content,
    .entry-price-panel,
    .entry-documents-panel,
    .entry-rules-area,
    .entry-dresscode {
        padding: 30px 26px;
    }

    .entry-documents-grid,
    .entry-rules-grid {
        grid-template-columns: 1fr;
    }

    .entry-ticket-panel,
    .entry-house-right {
        padding: 28px 25px;
    }
}

@media (max-width: 575px) {

    .entry-ticket-panel,
    .entry-house-right {
        flex-direction: column;
    }

    .entry-dresscode-facts > div {
        grid-template-columns: 34px 1fr;
    }

    .entry-dresscode-facts strong {
        grid-column: 2;
    }

    .entry-price-value {
        font-size: 72px;
    }
}

/* ==================================================
   M-CARD / REWARDS
================================================== */

.rewards-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 90% 12%,
            rgba(59, 119, 181, .13),
            transparent 30%
        ),
        #071426;
    color: #ffffff;
}


/* Heading */

.rewards-heading {
    max-width: 920px;
    margin-bottom: 55px;
}

.rewards-eyebrow,
.rewards-small-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 13px;
    color: #8fb4dd;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.rewards-heading h2 {
    margin: 0 0 21px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: clamp(38px, 5vw, 58px);
    line-height: 1.07;
    font-weight: 700;
    letter-spacing: -1.6px;
}

.rewards-intro {
    max-width: 830px;
    margin: 0;
    color: #aebdce;
    font-size: 18px;
    line-height: 1.75;
}


/* Main */

.rewards-main-grid {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 28px;
}

.rewards-card-visual {
    position: relative;
    min-height: 410px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 42px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 100% 0,
            rgba(89, 154, 220, .28),
            transparent 43%
        ),
        linear-gradient(145deg, #173b64, #0b1d33);
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 28px;
    box-shadow: 0 25px 60px rgba(0,0,0,.22);
}

.rewards-card-visual::after {
    content: "";
    position: absolute;
    width: 240px;
    height: 240px;
    right: -100px;
    bottom: -110px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 50%;
}

.rewards-card-top,
.rewards-card-bottom {
    color: #8fb4dd;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.rewards-card-symbol {
    margin: 45px 0 18px;
    color: #ffffff;
    font-size: 34px;
}

.rewards-card-name {
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 52px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: -2px;
}

.rewards-card-bottom {
    margin-top: 14px;
}


/* Main content */

.rewards-main-content {
    padding: 48px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.rewards-main-content h3 {
    margin: 0 0 21px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 31px;
    line-height: 1.2;
}

.rewards-main-content > p {
    margin: 0 0 16px;
    color: #aebdce;
    font-size: 15px;
    line-height: 1.76;
}

.rewards-third-visit {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-top: 25px;
    padding: 19px 21px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 15px;
}

.rewards-third-number {
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 37px;
    font-weight: 800;
}

.rewards-third-visit span {
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
}

.rewards-third-visit p {
    margin: 3px 0 0;
    color: #8297ac;
    font-size: 12px;
}


/* Benefits */

.rewards-benefits-area {
    margin-top: 28px;
    padding: 48px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.rewards-benefits-heading {
    max-width: 700px;
    margin-bottom: 31px;
}

.rewards-benefits-heading h3,
.rewards-tech-content h3 {
    margin: 0 0 13px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 29px;
}

.rewards-benefits-heading p,
.rewards-tech-content p {
    margin: 0;
    color: #9dafc1;
    font-size: 14px;
    line-height: 1.7;
}

.rewards-tech-content p + p {
    margin-top: 14px;
}

.rewards-benefits-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

.rewards-benefit-card {
    position: relative;
    min-height: 275px;
    padding: 28px;
    overflow: hidden;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 18px;
}

.rewards-benefit-icon {
    width: 49px;
    height: 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 25px;
    color: #ffffff;
    background: #173b64;
    border-radius: 13px;
}

.rewards-benefit-number {
    position: absolute;
    top: 19px;
    right: 21px;
    color: rgba(255,255,255,.06);
    font-family: 'Inter', sans-serif;
    font-size: 42px;
    font-weight: 800;
}

.rewards-benefit-card h4 {
    margin: 0 0 11px;
    color: #ffffff;
    font-size: 17px;
}

.rewards-benefit-card p {
    margin: 0;
    color: #91a5b9;
    font-size: 13px;
    line-height: 1.68;
}


/* Technology */

.rewards-tech-panel {
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    gap: 50px;
    align-items: center;
    margin-top: 28px;
    padding: 48px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.rewards-tech-facts {
    display: grid;
    gap: 10px;
}

.rewards-tech-item {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 18px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 13px;
}

.rewards-tech-item > i {
    width: 30px;
    color: #8fb4dd;
    text-align: center;
    font-size: 17px;
}

.rewards-tech-item div {
    display: flex;
    flex-direction: column;
}

.rewards-tech-item span {
    color: #8196ab;
    font-size: 10px;
}

.rewards-tech-item strong {
    margin-top: 2px;
    color: #ffffff;
    font-size: 13px;
    font-weight: 600;
}


/* Notice */

.rewards-notice {
    display: flex;
    gap: 18px;
    margin-top: 28px;
    padding: 27px 30px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 17px;
}

.rewards-notice-icon {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #8fb4dd;
    background: #173b64;
    border-radius: 12px;
}

.rewards-notice h4 {
    margin: 0 0 8px;
    color: #ffffff;
    font-size: 17px;
}

.rewards-notice p {
    margin: 0;
    color: #8fa3b8;
    font-size: 13px;
    line-height: 1.7;
}


/* Responsive */

@media (max-width: 1100px) {

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

@media (max-width: 991px) {

    .rewards-section {
        padding: 80px 0;
    }

    .rewards-main-grid,
    .rewards-tech-panel {
        grid-template-columns: 1fr;
    }

    .rewards-card-visual {
        min-height: 340px;
    }
}

@media (max-width: 767px) {

    .rewards-section {
        padding: 65px 0;
    }

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

    .rewards-intro {
        font-size: 16px;
    }

    .rewards-main-content,
    .rewards-benefits-area,
    .rewards-tech-panel {
        padding: 30px 26px;
    }

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

    .rewards-benefit-card {
        min-height: auto;
    }

    .rewards-card-name {
        font-size: 44px;
    }
}

@media (max-width: 575px) {

    .rewards-notice {
        padding: 23px;
    }

    .rewards-third-visit {
        align-items: flex-start;
    }
}

/* ==================================================
   BAR & FOOD
================================================== */

.dining-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 92% 14%,
            rgba(57, 115, 177, .12),
            transparent 30%
        ),
        #071426;
    color: #ffffff;
}


/* Heading */

.dining-heading {
    max-width: 920px;
    margin-bottom: 55px;
}

.dining-eyebrow,
.dining-small-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 13px;
    color: #8fb4dd;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.dining-heading h2 {
    margin: 0 0 21px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: clamp(38px, 5vw, 58px);
    line-height: 1.07;
    font-weight: 700;
    letter-spacing: -1.6px;
}

.dining-intro {
    max-width: 830px;
    margin: 0;
    color: #aebdce;
    font-size: 18px;
    line-height: 1.75;
}


/* Main */

.dining-main-grid {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    min-height: 560px;
    overflow: hidden;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 27px;
}

.dining-image-wrap {
    position: relative;
    min-height: 560px;
    overflow: hidden;
}

.dining-image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform .7s ease;
}

.dining-image-wrap:hover .dining-image {
    transform: scale(1.025);
}

.dining-image-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            rgba(7,20,38,.04) 40%,
            rgba(7,20,38,.9) 100%
        );
}

.dining-image-caption {
    position: absolute;
    z-index: 2;
    left: 30px;
    bottom: 30px;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 19px;
    background: rgba(7,20,38,.9);
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 15px;
    backdrop-filter: blur(8px);
}

.dining-caption-icon {
    width: 43px;
    height: 43px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: #173b64;
    border-radius: 11px;
}

.dining-image-caption > div:last-child {
    display: flex;
    flex-direction: column;
}

.dining-image-caption span {
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
}

.dining-image-caption small {
    margin-top: 3px;
    color: #91a6bb;
    font-size: 11px;
}


/* Content */

.dining-main-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 52px;
}

.dining-main-content h3 {
    margin: 0 0 22px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 34px;
    line-height: 1.18;
}

.dining-main-content p {
    margin: 0 0 17px;
    color: #aebdce;
    font-size: 15px;
    line-height: 1.77;
}


/* Offer Cards */

.dining-offer-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    margin-top: 28px;
}

.dining-offer-card {
    position: relative;
    min-height: 255px;
    padding: 29px;
    overflow: hidden;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 19px;
}

.dining-offer-icon {
    width: 49px;
    height: 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 27px;
    color: #ffffff;
    background: #173b64;
    border-radius: 13px;
    font-size: 18px;
}

.dining-offer-number {
    position: absolute;
    right: 22px;
    top: 19px;
    color: rgba(255,255,255,.06);
    font-family: 'Inter', sans-serif;
    font-size: 43px;
    font-weight: 800;
}

.dining-offer-card h3 {
    margin: 0 0 12px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 19px;
}

.dining-offer-card p {
    margin: 0;
    color: #92a6ba;
    font-size: 13px;
    line-height: 1.7;
}


/* Break Panel */

.dining-break-panel {
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    gap: 50px;
    align-items: center;
    margin-top: 28px;
    padding: 48px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.dining-break-content h3 {
    margin: 0 0 14px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 29px;
}

.dining-break-content p {
    margin: 0;
    color: #9dafc1;
    font-size: 14px;
    line-height: 1.7;
}

.dining-break-content p + p {
    margin-top: 14px;
}

.dining-break-facts {
    display: grid;
    gap: 10px;
}

.dining-break-facts > div {
    display: grid;
    grid-template-columns: 38px 1fr auto;
    align-items: center;
    gap: 12px;
    padding: 16px 18px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 13px;
}

.dining-break-facts i {
    color: #8fb4dd;
    text-align: center;
}

.dining-break-facts span {
    color: #8297ac;
    font-size: 11px;
}

.dining-break-facts strong {
    color: #ffffff;
    font-size: 12px;
    font-weight: 600;
}


/* Note */

.dining-note {
    display: flex;
    gap: 18px;
    margin-top: 28px;
    padding: 27px 30px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 17px;
}

.dining-note-icon {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #8fb4dd;
    background: #10243d;
    border-radius: 12px;
}

.dining-note h4 {
    margin: 0 0 8px;
    color: #ffffff;
    font-size: 17px;
}

.dining-note p {
    margin: 0;
    color: #8fa3b8;
    font-size: 13px;
    line-height: 1.7;
}


/* Responsive */

@media (max-width: 1100px) {

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

@media (max-width: 991px) {

    .dining-section {
        padding: 80px 0;
    }

    .dining-main-grid,
    .dining-break-panel {
        grid-template-columns: 1fr;
    }

    .dining-image-wrap {
        min-height: 430px;
    }
}

@media (max-width: 767px) {

    .dining-section {
        padding: 65px 0;
    }

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

    .dining-intro {
        font-size: 16px;
    }

    .dining-image-wrap {
        min-height: 340px;
    }

    .dining-main-content,
    .dining-break-panel {
        padding: 30px 26px;
    }

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

    .dining-offer-card {
        min-height: auto;
    }
}

@media (max-width: 575px) {

    .dining-image-caption {
        left: 18px;
        bottom: 18px;
    }

    .dining-break-facts > div {
        grid-template-columns: 34px 1fr;
    }

    .dining-break-facts strong {
        grid-column: 2;
    }

    .dining-note {
        padding: 23px;
    }
}
/* ==================================================
   EVENTS & ENTERTAINMENT
================================================== */

.events-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 8% 12%,
            rgba(58, 116, 177, .13),
            transparent 29%
        ),
        #071426;
    color: #ffffff;
}


/* Heading */

.events-heading {
    max-width: 920px;
    margin-bottom: 55px;
}

.events-eyebrow,
.events-small-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 13px;
    color: #8fb4dd;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.events-heading h2 {
    margin: 0 0 21px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: clamp(38px, 5vw, 58px);
    line-height: 1.07;
    font-weight: 700;
    letter-spacing: -1.6px;
}

.events-intro {
    max-width: 830px;
    margin: 0;
    color: #aebdce;
    font-size: 18px;
    line-height: 1.75;
}


/* Main Panel */

.events-main-panel {
    display: grid;
    grid-template-columns: 1.35fr .65fr;
    gap: 28px;
}

.events-main-content,
.events-main-stat {
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.events-main-content {
    padding: 48px;
}

.events-main-content h3 {
    margin: 0 0 21px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 31px;
    line-height: 1.2;
}

.events-main-content p {
    margin: 0 0 16px;
    color: #aebdce;
    font-size: 15px;
    line-height: 1.76;
}


/* Live Panel */

.events-main-stat {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 42px;
    background:
        radial-gradient(
            circle at 100% 0,
            rgba(69,132,199,.23),
            transparent 45%
        ),
        #10243d;
}

.events-stat-icon {
    width: 58px;
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 27px;
    color: #ffffff;
    background: #173b64;
    border-radius: 16px;
    font-size: 22px;
}

.events-stat-label {
    color: #8298ae;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.events-stat-value {
    margin: 8px 0 13px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 67px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: -3px;
}

.events-main-stat p {
    margin: 0;
    color: #9dafc1;
    font-size: 13px;
    line-height: 1.65;
}


/* Formats */

.events-formats-area {
    margin-top: 28px;
    padding: 48px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.events-formats-heading {
    max-width: 720px;
    margin-bottom: 31px;
}

.events-formats-heading h3,
.events-current-heading h3 {
    margin: 0 0 13px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 29px;
}

.events-formats-heading p,
.events-current-heading p {
    margin: 0;
    color: #9dafc1;
    font-size: 14px;
    line-height: 1.7;
}

.events-formats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

.events-format-card {
    position: relative;
    min-height: 275px;
    padding: 28px;
    overflow: hidden;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 18px;
}

.events-format-icon {
    width: 49px;
    height: 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 25px;
    color: #ffffff;
    background: #173b64;
    border-radius: 13px;
    font-size: 18px;
}

.events-format-number {
    position: absolute;
    top: 19px;
    right: 21px;
    color: rgba(255,255,255,.06);
    font-family: 'Inter', sans-serif;
    font-size: 42px;
    font-weight: 800;
}

.events-format-card h4 {
    margin: 0 0 11px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 17px;
}

.events-format-card p {
    margin: 0;
    color: #91a5b9;
    font-size: 13px;
    line-height: 1.68;
}


/* Current Events */

.events-current-panel {
    margin-top: 28px;
    padding: 48px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.events-current-heading {
    max-width: 780px;
    margin-bottom: 31px;
}

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

.events-current-card {
    display: grid;
    grid-template-columns: 75px 1fr;
    gap: 20px;
    padding: 25px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 17px;
}

.events-current-date {
    width: 67px;
    height: 75px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: #173b64;
    border-radius: 13px;
}

.events-current-date span {
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 25px;
    line-height: 1;
    font-weight: 800;
}

.events-current-date small {
    margin-top: 5px;
    color: #9bbfe4;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1px;
}

.events-current-type {
    display: block;
    margin-bottom: 5px;
    color: #7893ad;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .9px;
    text-transform: uppercase;
}

.events-current-content h4 {
    margin: 0 0 9px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 17px;
}

.events-current-content p {
    margin: 0;
    color: #91a5b9;
    font-size: 12px;
    line-height: 1.65;
}


/* Update Notice */

.events-update-note {
    display: flex;
    gap: 18px;
    margin-top: 28px;
    padding: 27px 30px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 17px;
}

.events-update-icon {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #8fb4dd;
    background: #173b64;
    border-radius: 12px;
}

.events-update-note h4 {
    margin: 0 0 8px;
    color: #ffffff;
    font-size: 17px;
}

.events-update-note p {
    margin: 0;
    color: #8fa3b8;
    font-size: 13px;
    line-height: 1.7;
}


/* Responsive */

@media (max-width: 1100px) {

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

@media (max-width: 991px) {

    .events-section {
        padding: 80px 0;
    }

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

@media (max-width: 767px) {

    .events-section {
        padding: 65px 0;
    }

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

    .events-intro {
        font-size: 16px;
    }

    .events-main-content,
    .events-main-stat,
    .events-formats-area,
    .events-current-panel {
        padding: 30px 26px;
    }

    .events-formats-grid,
    .events-current-grid {
        grid-template-columns: 1fr;
    }

    .events-format-card {
        min-height: auto;
    }
}

@media (max-width: 575px) {

    .events-current-card {
        grid-template-columns: 60px 1fr;
        gap: 15px;
        padding: 20px;
    }

    .events-current-date {
        width: 57px;
        height: 68px;
    }

    .events-update-note {
        padding: 23px;
    }
}
/* ==================================================
   LOCATION, GETTING THERE & PARKING
================================================== */

.location-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 92% 12%,
            rgba(57, 115, 177, .12),
            transparent 30%
        ),
        #071426;
    color: #ffffff;
}


/* Heading */

.location-heading {
    max-width: 920px;
    margin-bottom: 55px;
}

.location-eyebrow,
.location-small-label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 13px;
    color: #8fb4dd;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.location-heading h2 {
    margin: 0 0 21px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: clamp(38px, 5vw, 58px);
    line-height: 1.07;
    font-weight: 700;
    letter-spacing: -1.6px;
}

.location-intro {
    max-width: 830px;
    margin: 0;
    color: #aebdce;
    font-size: 18px;
    line-height: 1.75;
}


/* Address */

.location-address-panel {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 22px;
    padding: 34px 38px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 22px;
}

.location-address-icon {
    width: 58px;
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: #173b64;
    border-radius: 15px;
    font-size: 21px;
}

.location-address-content h3 {
    margin: 0 0 6px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 24px;
}

.location-address-content p {
    margin: 0;
    color: #aebdce;
    font-size: 14px;
    line-height: 1.55;
}

.location-address-region {
    display: flex;
    align-items: center;
    gap: 12px;
    padding-left: 28px;
    border-left: 1px solid rgba(255,255,255,.08);
}

.location-address-region i {
    color: #8fb4dd;
}

.location-address-region div {
    display: flex;
    flex-direction: column;
}

.location-address-region span {
    color: #7f94aa;
    font-size: 10px;
}

.location-address-region strong {
    margin-top: 3px;
    color: #ffffff;
    font-size: 13px;
}


/* Travel */

.location-travel-area,
.location-parking-panel {
    margin-top: 28px;
    padding: 48px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.location-travel-heading,
.location-parking-heading {
    max-width: 760px;
    margin-bottom: 31px;
}

.location-travel-heading h3,
.location-parking-heading h3,
.location-arrival-heading h3 {
    margin: 0 0 13px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 29px;
}

.location-travel-heading p,
.location-parking-heading p {
    margin: 0;
    color: #9dafc1;
    font-size: 14px;
    line-height: 1.7;
}

.location-travel-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

.location-travel-card {
    position: relative;
    min-height: 295px;
    padding: 28px;
    overflow: hidden;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 18px;
}

.location-travel-icon {
    width: 49px;
    height: 49px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 24px;
    color: #ffffff;
    background: #173b64;
    border-radius: 13px;
}

.location-travel-number {
    position: absolute;
    top: 19px;
    right: 21px;
    color: rgba(255,255,255,.06);
    font-family: 'Inter', sans-serif;
    font-size: 42px;
    font-weight: 800;
}

.location-travel-card h4 {
    margin: 0 0 11px;
    color: #ffffff;
    font-size: 17px;
}

.location-travel-card > p {
    margin: 0;
    color: #91a5b9;
    font-size: 13px;
    line-height: 1.68;
}

.location-travel-detail {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 20px;
    padding-top: 15px;
    border-top: 1px solid rgba(255,255,255,.07);
}

.location-travel-detail i {
    color: #8fb4dd;
    font-size: 12px;
}

.location-travel-detail span {
    color: #c1cfdd;
    font-size: 11px;
}


/* Parking */

.location-parking-panel {
    background: #10243d;
}

.location-parking-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
}

.location-parking-card {
    padding: 30px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 18px;
}

.location-parking-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    margin-bottom: 23px;
}

.location-parking-icon {
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: #173b64;
    border-radius: 13px;
    font-size: 18px;
}

.location-parking-status {
    padding: 7px 11px;
    color: #9fc2e5;
    background: rgba(143,180,221,.08);
    border: 1px solid rgba(143,180,221,.12);
    border-radius: 30px;
    font-size: 10px;
}

.location-parking-card h4 {
    margin: 0 0 12px;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
    font-size: 20px;
}

.location-parking-card > p {
    margin: 0;
    color: #91a5b9;
    font-size: 13px;
    line-height: 1.7;
}

.location-parking-info {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 23px;
    padding: 15px 17px;
    background: #10243d;
    border-radius: 12px;
}

.location-parking-info > i {
    color: #8fb4dd;
}

.location-parking-info div {
    display: flex;
    flex-direction: column;
}

.location-parking-info span {
    color: #768da5;
    font-size: 10px;
}

.location-parking-info strong {
    margin-top: 2px;
    color: #ffffff;
    font-size: 12px;
}


/* Arrival */

.location-arrival-panel {
    margin-top: 28px;
    padding: 48px;
    background: #0b1d33;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 24px;
}

.location-arrival-heading {
    max-width: 720px;
    margin-bottom: 37px;
}

.location-arrival-steps {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
}

.location-arrival-number {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
    color: #bfd8ef;
    background: #173b64;
    border-radius: 11px;
    font-size: 11px;
    font-weight: 700;
}

.location-arrival-step h4 {
    margin: 0 0 8px;
    color: #ffffff;
    font-size: 15px;
}

.location-arrival-step p {
    margin: 0;
    color: #91a5b9;
    font-size: 12px;
    line-height: 1.65;
}

.location-arrival-line {
    width: 34px;
    height: 1px;
    margin: 21px 14px 0;
    background: rgba(143,180,221,.28);
}


/* Note */

.location-note {
    display: flex;
    gap: 18px;
    margin-top: 28px;
    padding: 27px 30px;
    background: #10243d;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 17px;
}

.location-note-icon {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #8fb4dd;
    background: #173b64;
    border-radius: 12px;
}

.location-note h4 {
    margin: 0 0 8px;
    color: #ffffff;
    font-size: 17px;
}

.location-note p {
    margin: 0;
    color: #8fa3b8;
    font-size: 13px;
    line-height: 1.7;
}


/* Responsive */

@media (max-width: 1100px) {

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

@media (max-width: 991px) {

    .location-section {
        padding: 80px 0;
    }

    .location-address-panel {
        grid-template-columns: auto 1fr;
    }

    .location-address-region {
        grid-column: 1 / -1;
        padding: 20px 0 0;
        border-left: 0;
        border-top: 1px solid rgba(255,255,255,.08);
    }

    .location-arrival-steps {
        grid-template-columns: 1fr 1fr;
        gap: 28px;
    }

    .location-arrival-line {
        display: none;
    }
}

@media (max-width: 767px) {

    .location-section {
        padding: 65px 0;
    }

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

    .location-intro {
        font-size: 16px;
    }

    .location-travel-area,
    .location-parking-panel,
    .location-arrival-panel {
        padding: 30px 26px;
    }

    .location-travel-grid,
    .location-parking-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575px) {

    .location-address-panel {
        grid-template-columns: 1fr;
        padding: 27px 24px;
    }

    .location-address-region {
        grid-column: auto;
    }

    .location-arrival-steps {
        grid-template-columns: 1fr;
    }

    .location-note {
        padding: 23px;
    }
}

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

#faq.faq-section {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(68, 128, 192, 0.14),
            transparent 30%
        ),
        #071426;
    color: #ffffff;
}


/* ==================================================
   HEADING
================================================== */

#faq .faq-heading {
    max-width: 880px;
    margin: 0 0 52px;
}

#faq .faq-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 14px;

    color: #8fb4dd;

    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;

    letter-spacing: 1.5px;
    text-transform: uppercase;
}

#faq .faq-eyebrow i {
    font-size: 13px;
}

#faq .faq-heading h2 {
    margin: 0 0 20px;

    color: #ffffff;

    font-family: 'Inter', sans-serif;
    font-size: clamp(38px, 5vw, 58px);
    font-weight: 700;
    line-height: 1.08;

    letter-spacing: -1.6px;
}

#faq .faq-intro {
    max-width: 760px;
    margin: 0;

    color: #aebdce;

    font-family: 'Roboto', sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.75;
}


/* ==================================================
   FAQ GRID
================================================== */

#faq .faq-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;

    gap: 16px;
}


/* ==================================================
   FAQ ITEM
================================================== */

#faq .faq-item {
    position: relative;

    overflow: hidden;

    background: #0b1d33;

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

    box-shadow: none;

    transition:
        background-color 0.25s ease,
        border-color 0.25s ease,
        transform 0.25s ease;
}

#faq .faq-item:hover {
    background: #0e223b;
    border-color: rgba(143, 180, 221, 0.23);
}

#faq .faq-item.active {
    background: #10243d;
    border-color: rgba(143, 180, 221, 0.28);
}


/* ==================================================
   QUESTION BUTTON
================================================== */

#faq .faq-question {
    appearance: none;
    -webkit-appearance: none;

    width: 100%;
    min-height: 84px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 24px;

    margin: 0;
    padding: 22px 24px;

    color: #ffffff;
    background: transparent;

    border: 0;
    border-radius: 0;

    outline: none;
    box-shadow: none;

    text-align: left;
    cursor: pointer;
}

#faq .faq-question:hover,
#faq .faq-question:focus,
#faq .faq-question:active {
    color: #ffffff;
    background: transparent;
    border: 0;
    box-shadow: none;
}

#faq .faq-question:focus-visible {
    outline: 1px solid rgba(143, 180, 221, 0.65);
    outline-offset: -3px;
}

#faq .faq-question span {
    flex: 1;

    color: #ffffff;

    font-family: 'Inter', sans-serif;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.45;
}


/* ==================================================
   PLUS ICON
================================================== */

#faq .faq-question > i {
    width: 36px;
    height: 36px;

    flex: 0 0 36px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #a8c9e9;
    background: #173b64;

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 10px;

    font-size: 12px;

    transition:
        transform 0.3s ease,
        background-color 0.3s ease,
        color 0.3s ease;
}

#faq .faq-item.active .faq-question > i {
    color: #ffffff;
    background: #245282;
    transform: rotate(45deg);
}


/* ==================================================
   ANSWER
================================================== */

#faq .faq-answer {
    max-height: 0;

    overflow: hidden;

    opacity: 0;

    transition:
        max-height 0.4s ease,
        opacity 0.25s ease;
}

#faq .faq-item.active .faq-answer {
    opacity: 1;
}

#faq .faq-answer-inner {
    margin: 0 24px;
    padding: 20px 0 24px;

    border-top: 1px solid rgba(255, 255, 255, 0.07);
}

#faq .faq-answer-inner p {
    margin: 0;

    color: #9dafc1;

    font-family: 'Roboto', sans-serif;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.75;
}


/* ==================================================
   ANCHOR LINKS
================================================== */

#faq .faq-answer-inner a {
    display: inline-flex;
    align-items: center;
    gap: 7px;

    margin-top: 14px;

    color: #8fb4dd;

    font-family: 'Inter', sans-serif;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.4;

    letter-spacing: 0.25px;

    text-decoration: none;

    transition:
        color 0.2s ease,
        gap 0.2s ease;
}

#faq .faq-answer-inner a::after {
    content: "\2192";

    font-size: 13px;

    transition: transform 0.2s ease;
}

#faq .faq-answer-inner a:hover {
    gap: 10px;

    color: #ffffff;

    text-decoration: none;
}

#faq .faq-answer-inner a:hover::after {
    transform: translateX(2px);
}


/* ==================================================
   REMOVE OLD TEMPLATE FAQ INTERFERENCE
================================================== */

#faq .faq-question::after,
#faq .faq-question::before {
    display: none !important;
}

#faq .faq-item h2,
#faq .faq-item h3,
#faq .faq-item h4,
#faq .faq-item p {
    color: inherit;
}

#faq .faq-answer-inner p {
    padding: 0;
}

#faq button.faq-question {
    font-family: 'Inter', sans-serif;
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 991px) {

    #faq.faq-section {
        padding: 80px 0;
    }

    #faq .faq-grid {
        grid-template-columns: 1fr;
    }

    #faq .faq-heading {
        margin-bottom: 42px;
    }
}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 767px) {

    #faq.faq-section {
        padding: 65px 0;
    }

    #faq .faq-heading h2 {
        font-size: 36px;
        letter-spacing: -1px;
    }

    #faq .faq-intro {
        font-size: 16px;
        line-height: 1.7;
    }

    #faq .faq-grid {
        gap: 12px;
    }

    #faq .faq-question {
        min-height: 76px;

        gap: 16px;

        padding: 19px 20px;
    }

    #faq .faq-question span {
        font-size: 14px;
    }

    #faq .faq-question > i {
        width: 33px;
        height: 33px;

        flex-basis: 33px;
    }

    #faq .faq-answer-inner {
        margin: 0 20px;
        padding: 18px 0 21px;
    }

    #faq .faq-answer-inner p {
        font-size: 13px;
    }
}


/* ==================================================
   SMALL MOBILE
================================================== */

@media (max-width: 480px) {

    #faq.faq-section {
        padding: 55px 0;
    }

    #faq .faq-heading h2 {
        font-size: 31px;
    }

    #faq .faq-question {
        padding: 18px;
    }

    #faq .faq-question span {
        font-size: 13px;
        line-height: 1.5;
    }

    #faq .faq-question > i {
        width: 31px;
        height: 31px;

        flex-basis: 31px;

        font-size: 10px;
    }

    #faq .faq-answer-inner {
        margin: 0 18px;
    }
}

/* ==================================================
   CASINO MONHEIM FOOTER OVERRIDES
================================================== */
.site-footer {
    margin-top: 0;
    background:
        radial-gradient(circle at 90% 0, rgba(63, 126, 194, 0.16), transparent 30%),
        linear-gradient(145deg, #06111f 0%, #0b1d33 100%);
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}
.site-footer .footer-main { padding: 58px 0 28px; }
.site-footer .footer-logo-img { width: 104px; background: transparent; padding: 0; border-radius: 0; }
.site-footer .footer-brand-title { font-family: 'Inter', sans-serif; font-size: 27px; color: #fff; }
.site-footer .footer-brand-text { max-width: 540px; color: #aebdce; font-size: 14px; line-height: 1.75; }
.site-footer .footer-trust-list span { background: #10243d; border-color: rgba(143,180,221,.12); color: #d9e4ef; }
.site-footer .footer-trust-list i { color: #8fb4dd; }
.site-footer .footer-links-block h4,
.site-footer .footer-note-block h4 { color: #fff; font-family: 'Inter', sans-serif; }
.site-footer .footer-links-list a,
.site-footer .footer-note-block p,
.site-footer .footer-legal-text p,
.site-footer .footer-copyright,
.site-footer .footer-bottom-links a { color: #9dafc1; }
.site-footer .footer-links-list a:hover,
.site-footer .footer-bottom-links a:hover { color: #fff; }

/* ==================================================
   LEGAL PAGES
================================================== */
body.legal-page { background: #071426; color: #fff; }
.legal-main { background: #071426; }
.legal-hero {
    padding: 105px 0 72px;
    background:
        radial-gradient(circle at 88% 15%, rgba(59, 119, 181, .16), transparent 30%),
        #071426;
    border-bottom: 1px solid rgba(255,255,255,.07);
}
.legal-eyebrow {
    display: inline-flex; align-items: center; gap: 9px; margin-bottom: 15px;
    color: #8fb4dd; font-family: 'Inter', sans-serif; font-size: 12px;
    font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase;
}
.legal-hero h1 {
    max-width: 900px; margin: 0 0 20px; color: #fff;
    font-family: 'Inter', sans-serif; font-size: clamp(42px, 6vw, 68px);
    line-height: 1.04; font-weight: 700; letter-spacing: -2px;
}
.legal-hero > .container > p {
    max-width: 830px; margin: 0; color: #aebdce; font-size: 18px; line-height: 1.75;
}
.legal-update {
    display: inline-flex; align-items: center; gap: 10px; margin-top: 28px;
    padding: 10px 14px; border-radius: 30px; background: #10243d;
    border: 1px solid rgba(255,255,255,.08); font-size: 12px;
}
.legal-update span { color: #7890a8; }
.legal-update strong { color: #dbe7f2; font-weight: 600; }
.legal-content-section { padding: 60px 0 100px; }
.legal-layout { display: grid; grid-template-columns: 320px minmax(0, 1fr); gap: 28px; align-items: start; }
.legal-summary {
    position: sticky; top: 110px; padding: 30px;
    background: #10243d; border: 1px solid rgba(255,255,255,.08); border-radius: 20px;
}
.legal-summary-label { color: #8fb4dd; font-size: 11px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; }
.legal-summary h2 { margin: 8px 0 14px; color: #fff; font-family: 'Inter', sans-serif; font-size: 24px; line-height: 1.2; }
.legal-summary > p { margin: 0 0 23px; color: #9dafc1; font-size: 13px; line-height: 1.7; }
.legal-summary-fact { display: flex; gap: 12px; padding: 14px 0; border-top: 1px solid rgba(255,255,255,.07); color: #c8d5e2; font-size: 12px; line-height: 1.55; }
.legal-summary-fact i { width: 20px; margin-top: 3px; color: #8fb4dd; text-align: center; }
.legal-article { display: grid; gap: 16px; }
.legal-section-block {
    display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 22px;
    padding: 32px; background: #0b1d33; border: 1px solid rgba(255,255,255,.08); border-radius: 19px;
}
.legal-section-number {
    width: 48px; height: 48px; display: flex; align-items: center; justify-content: center;
    color: #b7d2ec; background: #173b64; border-radius: 13px;
    font-family: 'Inter', sans-serif; font-size: 12px; font-weight: 700;
}
.legal-section-body h2 { margin: 1px 0 13px; color: #fff; font-family: 'Inter', sans-serif; font-size: 23px; line-height: 1.25; }
.legal-section-body p { margin: 0; color: #9dafc1; font-size: 14px; line-height: 1.78; }
.legal-section-body p + p { margin-top: 13px; }
.legal-section-body a { color: #8fb4dd; text-decoration: none; }
.legal-section-body a:hover { color: #fff; }
@media (max-width: 991px) {
    .legal-hero { padding: 80px 0 58px; }
    .legal-layout { grid-template-columns: 1fr; }
    .legal-summary { position: static; }
}
@media (max-width: 767px) {
    .legal-hero { padding: 65px 0 48px; }
    .legal-hero h1 { font-size: 40px; letter-spacing: -1px; }
    .legal-hero > .container > p { font-size: 16px; }
    .legal-content-section { padding: 40px 0 70px; }
    .legal-section-block { grid-template-columns: 1fr; padding: 26px; }
    .legal-section-body h2 { font-size: 21px; }
}
/* White anchor links */

a,
a:visited {
    color: #ffffff;
}

a:hover,
a:focus,
a:active {
    color: #ffffff;
}

#faq .visit-faq__answer-inner a,
#faq .visit-faq__answer-inner a:visited {
    color: #ffffff;
}

#faq .visit-faq__answer-inner a:hover {
    color: #ffffff;
}
/* Header navigation links */

header .slotclub-menu .main-menu li a,
header .slotclub-menu .main-menu li a:visited {
    color: #ffffff !important;
}

header .slotclub-menu .main-menu li a:hover,
header .slotclub-menu .main-menu li a:focus,
header .slotclub-menu .main-menu li a:active {
    color: #ffffff !important;
}
<style>
/* ==================================================
   VISIT FAQ
================================================== */

#faq.visit-faq {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 88% 8%,
            rgba(53, 111, 174, 0.14),
            transparent 30%
        ),
        #071426;
    color: #ffffff;
}


/* Header */

#faq .visit-faq__header {
    max-width: 850px;
    margin-bottom: 50px;
}

#faq .visit-faq__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 14px;
    color: #8fb4dd;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

#faq .visit-faq__header h2 {
    margin: 0 0 20px;
    color: #ffffff;
    font-size: clamp(38px, 5vw, 58px);
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -1.5px;
}

#faq .visit-faq__header > p {
    max-width: 760px;
    margin: 0;
    color: #aebdce;
    font-size: 18px;
    line-height: 1.75;
}


/* Grid */

#faq .visit-faq__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    align-items: start;
}


/* Item */

#faq .visit-faq__item {
    overflow: hidden;
    background: #0b1d33;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 17px;
    transition:
        background 0.25s ease,
        border-color 0.25s ease;
}

#faq .visit-faq__item:hover {
    border-color: rgba(143, 180, 221, 0.22);
}

#faq .visit-faq__item.is-open {
    background: #10243d;
    border-color: rgba(143, 180, 221, 0.3);
}


/* Question */

#faq .visit-faq__question {
    appearance: none;
    -webkit-appearance: none;
    width: 100%;
    min-height: 82px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin: 0;
    padding: 22px 24px;
    background: transparent;
    border: 0;
    outline: 0;
    color: #ffffff;
    text-align: left;
    cursor: pointer;
}

#faq .visit-faq__question > span:first-child {
    flex: 1;
    color: #ffffff;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.5;
}

#faq .visit-faq__question:hover,
#faq .visit-faq__question:focus,
#faq .visit-faq__question:active {
    background: transparent;
    color: #ffffff;
    border: 0;
    outline: 0;
    box-shadow: none;
}


/* Icon */

#faq .visit-faq__icon {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #173b64;
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 10px;
    color: #a8c9e9;
    transition:
        transform 0.3s ease,
        background 0.3s ease,
        color 0.3s ease;
}

#faq .visit-faq__icon i {
    font-size: 11px;
}

#faq .visit-faq__item.is-open .visit-faq__icon {
    background: #245282;
    color: #ffffff;
    transform: rotate(45deg);
}


/* Answer */

#faq .visit-faq__answer {
    display: none;
}

#faq .visit-faq__item.is-open .visit-faq__answer {
    display: block;
}

#faq .visit-faq__answer-inner {
    margin: 0 24px;
    padding: 20px 0 24px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}

#faq .visit-faq__answer-inner p {
    margin: 0;
    padding: 0;
    color: #9dafc1;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.75;
}


/* Anchor */

#faq .visit-faq__answer-inner a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-top: 14px;
    color: #8fb4dd;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;
    transition:
        color 0.2s ease,
        gap 0.2s ease;
}

#faq .visit-faq__answer-inner a::after {
    content: "\2192";
    font-size: 13px;
}

#faq .visit-faq__answer-inner a:hover {
    gap: 10px;
    color: #ffffff;
    text-decoration: none;
}


/* Tablet */

@media (max-width: 991px) {

    #faq.visit-faq {
        padding: 80px 0;
    }

    #faq .visit-faq__grid {
        grid-template-columns: 1fr;
    }
}


/* Mobile */

@media (max-width: 767px) {

    #faq.visit-faq {
        padding: 65px 0;
    }

    #faq .visit-faq__header {
        margin-bottom: 38px;
    }

    #faq .visit-faq__header h2 {
        font-size: 36px;
        letter-spacing: -1px;
    }

    #faq .visit-faq__header > p {
        font-size: 16px;
    }

    #faq .visit-faq__question {
        min-height: 74px;
        padding: 19px 20px;
    }

    #faq .visit-faq__question > span:first-child {
        font-size: 14px;
    }

    #faq .visit-faq__answer-inner {
        margin: 0 20px;
        padding: 18px 0 21px;
    }
}


/* Small Mobile */

@media (max-width: 480px) {

    #faq.visit-faq {
        padding: 55px 0;
    }

    #faq .visit-faq__header h2 {
        font-size: 31px;
    }

    #faq .visit-faq__question {
        gap: 14px;
        padding: 18px;
    }

    #faq .visit-faq__question > span:first-child {
        font-size: 13px;
    }

    #faq .visit-faq__icon {
        width: 32px;
        height: 32px;
        flex-basis: 32px;
    }

    #faq .visit-faq__answer-inner {
        margin: 0 18px;
    }
}
</style>


<script>
document.addEventListener('DOMContentLoaded', function () {

    const faqItems = document.querySelectorAll('#faq .visit-faq__item');

    faqItems.forEach(function (item) {

        const button = item.querySelector('.visit-faq__question');

        button.addEventListener('click', function () {

            const isOpen = item.classList.contains('is-open');

            faqItems.forEach(function (otherItem) {
                otherItem.classList.remove('is-open');

                const otherButton = otherItem.querySelector('.visit-faq__question');

                if (otherButton) {
                    otherButton.setAttribute('aria-expanded', 'false');
                }
            });

            if (!isOpen) {
                item.classList.add('is-open');
                button.setAttribute('aria-expanded', 'true');
            }

        });

    });

});
</script>