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


/*------------------------------ (00)-Global CSS ------------------------------*/
/*   
0- Global CSS    
1- Heading CSS
2- Button CSS   
3- Logo Area CSS 
4- Page Title CSS  
5- Header Area CSS 
6- Footer Area CSS
7- Scroll-Top Area CSS
8- Form CSS
9- Dark Form CSS
10- Swiper Pagination CSS
11- Sidebar Heading CSS
12- Sidebar CSS
*/

/*------------------------------ (01)-Home ------------------------------*/
/*
1- Home
2- Features
3- Counter
4- Section Slider
5- Why Attend
6- Banner
7- Speaker Slider
8- Testimonials
9- Newsletter
10- Blogs
11- Sponsor Slider
*/

/*------------------------------ (02)-About ------------------------------*/

/*--------------- PAGES ---------------*/
/*
1- About Us
2- Team
3- Team Single
4- Testimonials
5- Faqs
*/

/*------------------------------ (03)-Pages ------------------------------*/

/*--------------- COMPONENTS ---------------*/
/* 
01- Tab Information
02- Page Single
03- Page Sidebar
04- Custom Form
*/

/*--------------- PAGES ---------------*/
/*
1- Gallery
2- Portfolio
3- Portfolio Single
4- Services
5- Service Single
6- Tickets
7- Registration
8- Sponsors
9- Venue
*/

/*------------------------------ (04)-Speaker ------------------------------*/
/*
1- Speakers
2- Speaker Single
*/

/*------------------------------ (05)-Schedule ------------------------------*/
/*
1- Schedule Tab
2- Schedule List
3- Schedule Event
4- Schedule Single
*/

/*------------------------------ (06)-Blog ------------------------------*/

/*--------------- COMPONENTS ---------------*/
/* 
01- Blog-Item 
02- Comment 
03- Pages-No
*/

/*--------------- PAGES ---------------*/
/*
1- Blog Grid
2- Blog List
3- Blog Single 
*/

/*------------------------------ (07)-Shop ------------------------------*/

/*--------------- COMPONENTS ---------------*/
/* 
01- Filter
02- Shop Header
03- Quantity Box
04- Product-Item
05- Shop-Title
06- Cart-Summary
07- Radio Button
08- Account-Form
*/

/*--------------- PAGES ---------------*/
/*
1- Shop Grid
2- Shop Standard
3- Product Single
4- Wishlist
5- Cart
6- Checkout
7- Login
8- Register
*/

/*------------------------------ (08)-Contact ------------------------------*/



/*------------------------------ (00)- Global CSS (Start) ------------------------------*/

/*----- 0- Global CSS -----*/
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

:root{
    --main-color: #f112a2;
    --secondary-color: #4F1787;
    --black: #000; 
    --white: #fff;
    --light-grey: #E6E6E6;
    --grey: #666; 
    --custom-bg: rgba(0, 0, 0, 0.8);
    --border-radius-1: 0.5rem;
    --border-radius-2: 1rem;
    --border-radius-3: 30px 30px 0 0 / 30px 30px 20px 20px;
    --border: 0.1rem solid rgba(0, 0, 0, 0.1);
    --custom-border: 0.5rem solid var(--main-color);
    --box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);
    --custom-clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
}

*{
    font-family: "Poppins", sans-serif;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0;
    padding: 0; 
    text-decoration: none;
    text-transform: none !important; 
    border: none;
    outline: none;
}

*:not(.portfolio-item){
    -webkit-transition: all 0.2s linear;
        -o-transition: all 0.2s linear;
            transition: all 0.2s linear;
}

*::-moz-selection{
    color: var(--white);
    background-color: var(--main-color);
}

*::selection{
    color: var(--white);
    background-color: var(--main-color);
}

body{
    background: #f2f3f8;
    overflow-x: hidden;
}

html{
    font-size: 62.5%;
    overflow-x: hidden;
    scroll-behavior: smooth;
    scroll-padding-top: 7rem;
}

section{
    padding: 3rem 5%;
}

::-webkit-scrollbar{
    width: 0.8rem;
}

::-webkit-scrollbar-track{
    background: var(--secondary-color);
}

::-webkit-scrollbar-thumb{
    border-radius: var(--border-radius-2);
    background: var(--main-color);
}

p{
    font-size: 1.6rem;
    line-height: 1.7;
    color: var(--grey);
}

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

/*----- 1- Heading CSS -----*/
.heading{
    padding-bottom: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.heading .sub{
    letter-spacing: 0.2rem;
    display: inline-block;
    font-size: 2rem;
    font-weight: 600;
    line-height: 1;
    color: var(--main-color);
    margin-bottom: 0.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    gap: 1rem;
}

.heading h2{
    text-align: center;
    font-size: 4rem;  
    font-weight: 600;
    color: var(--secondary-color);
    text-shadow: 1px 1px 8px rgba(0,0,0, 0.2);
    line-height: 1.2;
}

.linear-bg .heading h2{
    color: var(--white);
}

/*----- 2- Button CSS -----*/
.btn{
    display: inline-block;
    font-size: 1.6rem;
    font-weight: 500;
    padding: 1.4rem 3rem;
    text-align: center;
    text-transform: uppercase;
    color: var(--white);
    background-image: -webkit-linear-gradient(306deg, var(--secondary-color), var(--main-color), var(--secondary-color));
    background-image:         linear-gradient(144deg, var(--secondary-color), var(--main-color), var(--secondary-color));
    background-size: 300% 100%;
    border-radius: var(--border-radius-2);
    cursor: pointer;
}

.btn:hover{
    background-position: 100% 0px; 
}

/*----- 3- Logo Area CSS -----*/  
.logo{
    z-index: 100000;
}

.logo img{
    height: 6rem;
    width: auto;
}

/*----- 4- Page Title CSS -----*/
.page-title{
    background: -webkit-linear-gradient(180deg, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.3)), url("../../assets/images/Background/PageTitle.jpg");
    background:         linear-gradient(180deg, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.3)), url("../../assets/images/Background/PageTitle.jpg");
    background-repeat: no-repeat;  
    background-size: cover;
    background-position: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.5rem;
    padding: 0rem 5%;
    padding-top: 8rem;
    min-height: 40rem;
}

.page-title .title{
    border-left: var(--custom-border);
    padding-left: 1rem;
}

.page-title .title h2{
    color: var(--white);
    line-height: 1.2;
    font-size: 5rem;
    font-weight: 500;
    text-transform: uppercase;
}

.page-title .link{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.5rem;
    font-size: 1.8rem;
}

.page-title .link a{
    font-weight: 600; 
    color: var(--white);
}

.page-title .link a:hover{
    color: var(--main-color);
}

.page-title .link i{
    color: var(--white);
}

.page-title .link span{
    font-weight: 500;
    color: var(--white);
}

/*----- 5- Header Area CSS -----*/
.header{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    -webkit-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

.header .header-1{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    background-color: rgba(255, 255, 255, 0.2);
    padding: 0.5rem 5%;
}

.header.active .header-1{
    display: none;
}

.header .header-contacts{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 3rem;
    list-style-type: none;
}

.header .header-contacts li{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; 
    gap: 1rem;
    font-size: 1.4rem;
    color: var(--white);
}

.header .header-contacts span{
    text-transform: none;
}

.header .social-contacts{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    list-style-type: none;
}

.header .social-contacts li a{
    height: 3rem;
    width: 3rem;
    font-size: 1.6rem;
    color: var(--white);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.header .social-contacts li a:hover{
    color: var(--main-color);
}

.header .header-2{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 8rem;
    padding: 0rem 5%;
}

.header.active .header-2{
    background-color: var(--black);
    border-bottom: 0.2rem solid var(--main-color);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.header #menu-btn{
    cursor: pointer;
    display: none;
}

.header .navbar{
    list-style-type: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    gap: 2rem;
}

.mobile-menu{
    display: none;
}

.header .container{
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 2.5rem;
}

.header .dropdown-menu{
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.header .navbar .nav-btn{
    display: inline-block;
    font-size: 1.8rem;
    color: var(--white);
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: none;
    gap: 0.5rem;
}

.header .navbar .nav-btn:hover{
    color: var(--main-color);
}

.header .dropdown-content{
    position: absolute;
    top: 100%;
    left: 0;
    background-color: var(--black);
    width: 20rem;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    display: none;
    -webkit-transition:  all 0.5s;
    -o-transition:  all 0.5s;
    transition:  all 0.5s;
    z-index: 1000;
    overflow: hidden;
}

.header .dropdown-menu:hover button{
    color: var(--main-color);
}

.header .dropdown-menu:hover .dropdown-content{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-bottom: var(--custom-border);
}

.header .dropdown-content a{
    display: block;
    font-size: 1.6rem;
    font-weight: 600;
    color: var(--white);
    padding: 1rem 1.5rem;
    cursor: pointer;
}

.header .dropdown-content a:hover{
    background-color: var(--main-color);
}

.header .icon-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center; 
    align-items: center;
    gap: 1rem;
}

.header .icon-container .icon{
    font-size: 2rem;
    color: var(--white);
    cursor: pointer;
}

.header .icon-container .icon:hover{ 
    color: var(--main-color);
}

.header .search-container{
    position: absolute;
    top: 100%;
    right: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 2rem;
    background: var(--white);
    width: 40rem;
    padding: 1.5rem 2rem;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    opacity: 0;
    -webkit-transform-origin: right;
    -ms-transform-origin: right;
    transform-origin: right;
    -webkit-transition: -webkit-transform 0.3s ease;
    -o-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    border-radius: 50rem;
    -webkit-transform: translateX(300%);
        -ms-transform: translateX(300%);
            transform: translateX(300%);
}

.header .search-container.active{
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
        transform: translateX(0);
}

.header .search-container input{
    width: 100%;
    height: 100%;
    background: transparent;
    color: var(--black);
    font-size: 1.8rem;
    text-transform: none;
}

.header .search-container button{
    color: var(--secondary-color);
    background-color: transparent;
    font-size: 2rem;
    padding-right: 0.5rem;
    padding-left: 1rem;
}

.header .search-container button:hover{
    color: var(--main-color);
    cursor: pointer;
}

/*----- 6- Footer Area CSS -----*/
.footer{
    background: -webkit-linear-gradient(180deg, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.5)), url("../../assets/images/Background/Footer.webp");
    background:         linear-gradient(180deg, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.5)), url("../../assets/images/Background/Footer.webp");
    background-repeat: no-repeat;  
    background-size: cover;
    background-position: center;
}

.footer .footer-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

.footer .box-container{
    max-width: 80rem;
    padding: 3rem 5%;
    text-align: center;
}

.footer-item > p{
    padding-top: 1.5rem;
    font-size: 1.5rem;
} 

.footer-item p{
    color: var(--white); 
    font-weight: 500;
}

.footer-item .social{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 1rem;
    margin-top: 1.5rem;
    padding-bottom: 2rem;
}

.footer-item .social a{
    height: 4rem;
    width: 4rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: transparent;
    border: 0.15rem solid var(--white);
    border-radius: 50%;
}

.footer-item .social a i{
    color: var(--white);
    font-size: 1.7rem;
}

.footer-item .social a:hover{
    background-color: var(--main-color);
    border-color: var(--main-color);
}

.footer-item .social a:hover i{
    color: var(--white);
}

.footer-item .links{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 2rem;
    width: 100%;
    margin-top: 1rem;
    padding-top: 1.5rem;
    border-top: 0.15rem solid rgba(255, 255, 255, 0.7);
}

.footer-item .links a{ 
    font-size: 1.6rem;
    color: var(--white);
}

.footer-item .links p:hover a{
    color: var(--main-color);
}

.footer-item .input-field{
    margin-bottom: 1rem;
}

.footer-item .dark-form{
    max-width: 40rem;
    margin: 0 auto;
}

.footer-item .dark-form .alert {
    display: block;
    font-size: 1.6rem;
    color: var(--main-color);
    padding-top: 1rem;
}

.footer .content{
    text-align: center;
    padding: 2rem 0;
    background-color: var(--main-color);
}

.footer .content p{
    font-size: 2rem;
    color: var(--white);
}

/*----- 7- Scroll-Top Area CSS -----*/
.scroll-top{
    position: fixed;
    bottom: 1rem;
    right: 1rem;
    height: 6rem;
    width: 6rem;
    font-size: 2.2rem;
    color: var(--white);
    background: var(--main-color);
    -webkit-clip-path: var(--custom-clip-path);
            clip-path: var(--custom-clip-path);
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
    z-index: 900;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.scroll-top:hover{
    background-color: var(--secondary-color);
    cursor: pointer;
}

/*----- 8- Form CSS -----*/
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    color: var(--secondary-color) !important;
    -webkit-transition: background-color 5000s ease-in-out 0s;
         -o-transition: background-color 5000s ease-in-out 0s;
            transition: background-color 5000s ease-in-out 0s;

}
  
.form .input-box{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}
  
.form .box{
    width: 100%;
    background-color: transparent;
    font-size: 1.6rem;
    color: var(--secondary-color);
    padding: 1rem 1.5rem; 
    border: 0.15rem solid rgba(0, 0, 0, 0.1);
    border-radius: var(--border-radius-1);
    text-transform: none;
}

.form .box::-webkit-input-placeholder{
    text-transform: capitalize;
}
.form .box::-moz-placeholder{
    text-transform: capitalize;
}
.form .box:-ms-input-placeholder{
    text-transform: capitalize;
}
.form .box::placeholder{
    text-transform: capitalize;
}

.form .box:focus{
    border-color: var(--main-color);
}

.form textarea{
    resize: none;
    height: 20rem;
}

.form .btn{
    width: 100%;
    overflow: hidden;
    margin-top: 1rem;
}

/*----- 9- Dark Form CSS -----*/
.dark-form input:-webkit-autofill,
.dark-form input:-webkit-autofill:hover,
.dark-form input:-webkit-autofill:focus,
.dark-form input:-webkit-autofill:active {
    -webkit-text-fill-color: var(--white);
    -webkit-transition: background-color 5000s ease-in-out 0s;
            -o-transition: background-color 5000s ease-in-out 0s;
            transition: background-color 5000s ease-in-out 0s;
}

.dark-form .input-box{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}

.dark-form .input-field{
    border: 1.2px solid rgba(255, 255, 255, 0.9);
    padding: 1.5rem;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    border-radius: var(--border-radius-1);
}

.dark-form .input-box > .input-field{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 20rem;
        flex: 1 1 20rem; 
}

.dark-form .input-field:hover{
    border-color: var(--main-color);
}

.dark-form .input-field label {
    color: transparent;
    -webkit-text-stroke: 1px var(--main-color);
    font-size: 1.6rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.dark-form .box{
    width: 100%;
    font-size: 1.6rem;
    color: var(--white);
    background-color: transparent;
    text-transform: none;
}

.dark-form .box::-webkit-input-placeholder{
    text-transform: capitalize;
    color: var(--white);
}

.dark-form .box::-moz-placeholder{
    text-transform: capitalize;
    color: var(--white);
}

.dark-form .box:-ms-input-placeholder{
    text-transform: capitalize;
    color: var(--white);
}

.dark-form .box::placeholder{
    text-transform: capitalize;
    color: var(--white);
}

.dark-form textarea{
    height: 15rem;
    resize: none;
}

.dark-form .text-area {
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
    margin-bottom: 1rem;
}

.dark-form .checkbox-label {
    color: var(--white);
    position: relative;
    padding-left: 2.5rem;
    cursor: pointer;
    font-size: 1.8rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
  
.dark-form .checkbox-label input{
    position: absolute;
    opacity: 0;
    z-index: -1;
}
  
.dark-form .checkbox-indicator{
    position: absolute;
    top: 0.2rem;
    left: 0;
    height: 1.6rem;
    width: 1.6rem;
    background: transparent;
    outline: 0.15rem solid var(--white);
    border-radius: 0.2rem;
}

.dark-form .select option{
    color: var(--grey);
}

.dark-form .select{
    -webkit-box-flex: 1;
        -ms-flex: 1 1 20rem;
            flex: 1 1 20rem;
    border: 1.2px solid rgba(255, 255, 255, 0.9);
    border-radius: var(--border-radius-1);
    width: 100%;
}
  
.dark-form .select-container{
    height: 100%;
    min-width: 100%;
    position: relative;
}

.dark-form .select-box{
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    width: 100%;
    color: var(--white);
    background-color: transparent;
    padding: 1.5rem;
    font-size: 1.6rem;
    padding-left: 4.5rem;
}

.dark-form .select-container label{
    position: absolute;
    height: 100%;
    top: 0;
    left: 1.5rem;
    color: var(--main-color);
    font-size: 1.6rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.dark-form .select-container .icon-container{
    width: 4rem;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
            pointer-events: none;
}

.dark-form .select-container .icon-container i{
    font-size: 1.6rem;
    color: var(--white);
}

/*----- 10- Swiper Pagination CSS -----*/
.swiper-pagination-bullet{ 
    height: 1rem;
    width: 4rem;
    border-radius: 0;
    background: var(--white);
    opacity: 0.7;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.swiper-pagination-bullet-active{
    background: var(--main-color) !important;
}

/*----- 11- Sidebar Heading CSS -----*/
.sidebar-heading h2{
    position: relative;
    font-size: 3rem; 
    font-weight: 500;
    word-spacing: 1px; 
    color: var(--secondary-color);
    letter-spacing: 0.1rem;
    line-height: 1;
    margin-bottom: 1.5rem;
    padding-bottom: 1.2rem;
}

.sidebar-heading h2:before{
    position: absolute;
    left: 0;
    bottom: 0;
    width: 10rem;
    height: 2px;
    content: "";
    background-color: var(--main-color);
}

/*----- 12- Sidebar CSS -----*/
/*
1- Search
2- Category
3- Recent Items
4- Tags
*/

.sidebar{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 28rem; 
        flex: 1 1 28rem;  
}

.sidebar .sidebar-item{
    margin-bottom: 1.5rem;
    background-color: var(--white);
    border-bottom: var(--custom-border);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    padding: 1.5rem;
    border-radius: var(--border-radius-3);
}

/*-- 1- Search --*/
.sidebar .search .input-box{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    border-radius: 5rem;
}

.sidebar .search .input-box input{
    width: 100%;
    padding: 1.5rem; 
    overflow: hidden;
    border: 0.1rem solid rgba(0, 0, 0, 0.5);
    border-top-left-radius: 5rem;
    border-bottom-left-radius: 5rem;
}

.sidebar .search .input-box input:focus{ 
    border-color: var(--main-color);
}

.sidebar .search .input-box button{
    color: var(--white);
    background-color: var(--secondary-color);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0.5rem 2rem;
    font-size: 1.8rem;
    cursor: pointer;
}

.sidebar .search .input-box button:hover{
    background-color: var(--main-color);
}

/*-- 2- Category --*/ 
.sidebar .category a{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 1.5rem 0rem;
    border-bottom: 0.15rem solid rgba(0, 0, 0, 0.1);
}

.sidebar .category a:last-child{
    margin-bottom: 0;
}

.sidebar .category a span{
    font-size: 1.7rem;
    color: var(--secondary-color);
    font-weight: 400;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
}

.sidebar .category a span i{
    font-size: 1.8rem;
    color: var(--main-color);
}

.sidebar .category a p{
    font-size: 1.5rem;
}

.sidebar .category a:hover span,
.sidebar .category a:hover p{
    color: var(--main-color);
}

/*-- 3- Post Items --*/
.sidebar .post-item{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}

.sidebar .post-item:last-child{
    margin-bottom: 0;
}

.sidebar .post-item img{
    height: 8rem;
    width: 8rem;
    border-radius: var(--border-radius-3);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.sidebar .recent-posts .post-item img{
    width: 10rem;
}

.sidebar .post-item a{
    display: inline-block;
    font-size: 2rem;
    font-weight: 600;
    color: var(--secondary-color);
}

.sidebar .recent-posts .post-item a{
    font-size: 1.8rem;
}

.sidebar .post-item a:hover{
    color: var(--main-color);
}

.sidebar .post-item .price p{
    font-size: 1.7rem;
    font-weight: bold;
    color: var(--main-color);
}

.sidebar .post-item .price span{
    font-size: 1.3rem;
    font-weight: 400;
    color: var(--grey);
    text-decoration: line-through;
    padding-left: 0.2rem;
}

/*-- 4- Tags --*/
.sidebar .tags .box-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0.7rem;
}

.sidebar .tag-item{
    color: var(--white);
    background-color: var(--main-color);
    border-radius: 0.5rem;
    font-size: 1.6rem;
    padding: 1rem 1.6rem;
}

.sidebar .tag-item:hover{
    background-color: var(--secondary-color);
    cursor: pointer;
}

/*------------------------------ (00)- Global CSS (End) ------------------------------*/



/*------------------------------ (01)- Home (Start) ------------------------------*/

/*----- 1- Home-----*/
.home{
    padding: 0;
    position: relative;
    height: 70rem;
}

.home .content{ 
    padding: 10rem 5%;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: -webkit-linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.4));
    background:         linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.4));
}

.home .content .text{
    width: 90rem;
    margin-top: 8rem;
}

.home .content h5{
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--white);
    text-transform: uppercase;
    margin-bottom: 1.5rem;
}

.home .content h1{
    font-size: 6rem;
    font-weight: 600;
    margin-bottom: 2.5rem;
    color: var(--white);
    letter-spacing: 0.1rem;
    line-height: 1.1;
}

.home .content h1 span{
    color: var(--main-color);
}

.home .content .counter{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 4rem;
    padding-bottom: 3rem;
}

.home .counter-item h3{
    color: var(--white);
    font-size: 6rem;
    font-weight: 500;
    line-height: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.home .counter-item span{
    display: block;
    font-size: 2rem;
    font-weight: 500;
    color: var(--white);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

/*----- 2- Features -----*/
.features{
    padding-bottom: 2rem;
}

.features .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(25rem, 1fr))[auto-fit];
    grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
    gap: 1.5rem;
}

.feature-item {
    cursor: pointer;
    text-align: center;
    background-color: var(--black);
    padding: 3rem 2rem;
    border-radius: var(--border-radius-3);
}

.feature-item i{
    height: 8rem;
    width: 9rem;
    margin: 0rem auto;
    margin-bottom: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 3rem;
    color: transparent;
    -webkit-text-stroke: 2px var(--white);
    background-color: var(--main-color);
    -webkit-clip-path: var(--custom-clip-path);
            clip-path: var(--custom-clip-path);
}

.feature-item h3{
    font-size: 2.5rem;
    color: var(--white);
    margin-bottom: 1rem;
}

.feature-item p{
    color: var(--light-grey);
}

/*----- 3- Counter -----*/
.counting{
    padding: 4rem 5%;
    margin: 1rem 0;
    display: -webkit-box;  
    display: -ms-flexbox; 
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; 
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; 
    gap: 4rem;
    background: -webkit-linear-gradient(180deg, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.6)), url("../../assets/images/Background/Counter.webp");
    background:         linear-gradient(180deg, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.6)), url("../../assets/images/Background/Counter.webp");
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
}

.counting .box{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 25rem;
        flex: 1 1 25rem;
    text-align: center;
}

.counting .box i{
    margin: 0 auto;
    margin-bottom: 1rem;
    color: transparent;
    -webkit-text-stroke: 2px var(--white);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 4.5rem;
}

.counting .box .count{
    color: var(--white);
    font-size: 4.5rem;
    font-weight: 500;
}

.counting .box h3{
    font-size: 1.8rem;
    color: var(--white);
    font-weight: 400;
}

/*----- 4- Section Slider -----*/
.section-slider{
    overflow: hidden;
    padding: 0.5rem;
}

/*----- 5- Why Attend -----*/
.whyAttend{
    padding: 0;
}

.whyAttend .box-container{
    background-image: url("../../assets/images/Background/whyAttend.webp");
}

.whyAttend .content p{
    letter-spacing: 0.5px;
    font-weight: 400;
    color: var(--light-grey);
} 

.whyAttend .whyAttend-points{
    list-style-type: none;
    padding-top: 0.5rem;
}

.whyAttend .whyAttend-points li{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
    gap: 1.5rem;
    padding-top: 2rem;
}

.whyAttend .whyAttend-points li i{
    height: 7rem;
    width: 7rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 2.4rem;
    color: transparent;
    -webkit-text-stroke: 2px var(--white);
    background-color: rgba(241, 18, 162, 0.9);
    -webkit-clip-path: var(--custom-clip-path);
            clip-path: var(--custom-clip-path);
}

.whyAttend .whyAttend-points .text{
    -webkit-box-flex: 1;
        -ms-flex: 1 1 30rem;
            flex: 1 1 30rem;
}

.whyAttend .whyAttend-points li h5{
    font-size: 2.5rem;
    font-weight: 600;
    line-height: 1;
    color: var(--white);
    padding-bottom: 0.5rem;
}

.whyAttend .whyAttend-points li p{
    color: var(--light-grey);
}

/*----- 6- Banner -----*/
.banner{
    padding: 8rem 5%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background: url("../../assets/images/Background/Banner.webp");
    background-position: left;
    background-size: cover;
}

.banner .content{
    width: 70rem;
}

.banner .heading{
    -webkit-box-align: start;
        -ms-flex-align: start;
                -ms-grid-row-align: flex-start;
            align-items: flex-start;
    padding-bottom: 0;
}

.banner h2{
    font-size: 5rem;
    font-weight: 600;
    line-height: 1.3;
    color: var(--white);
    padding-bottom: 1.5rem;
    letter-spacing: 0.1rem;
}

/*----- 7- Speaker Slider -----*/
.speaker-slider{
    overflow: hidden;
    padding: 0.5rem;
}

/*----- 8- Testimonials -----*/
.testimonial-bg{
    background: -webkit-linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.4)), url("../../assets/images/Background/Testimonials.webp");
    background:         linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.4)), url("../../assets/images/Background/Testimonials.webp");
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
}

/*----- 9- Newsletter -----*/
.newsletter-subscribe{
    padding: 8rem 5%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-image: url("../../assets/images/Background/Newsletter.jpg");
    background-position: center;
    background-size: cover;
}

.newsletter-subscribe .content{
    width: 70rem;
    text-align: center;
}

.newsletter-subscribe h2{
    font-size: 4.5rem;
    font-weight: 600;
    color: var(--white);
}

.newsletter-subscribe p{
    letter-spacing: 0.15rem;
    font-weight: 500;
    color: var(--white);
    padding-top: 1rem;
    padding-bottom: 3rem;
}

.newsletter-subscribe .box-container {
    max-width: 60rem;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.5rem;
    padding: 0.5rem;
    background-color: var(--white);
    border-radius: var(--border-radius-2);
}

.newsletter-subscribe input{
    padding: 0rem 1.5rem;
    width: 100%;
    color: var(--secondary-color);
    background-color: var(--white);
    text-transform: none;
    font-size: 1.5rem;
}

.newsletter-form .alert {
    min-height: 3.5rem;
    display: block;
    font-size: 1.6rem;
    color: var(--white);
    padding-top: 1rem;
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
}

/*----- 10- Blogs -----*/
.blog.main .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(32rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(32rem, 1fr));
    gap: 1.5rem;
}

/*----- 11- Sponsor Slider -----*/
.home-sponsors{
    background-color: rgba(0, 0, 0, 0.05);
}

.sponsors .sponsor-slider{
    overflow: hidden;
}

/*------------------------------ (01)-Home (End) ------------------------------*/



/*------------------------------ (02)-About (Start) ------------------------------*/
.about-us{
    padding: 0;
}

/*----- 1- About Us -----*/
.about{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 4rem;
}

.about .image{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 42rem;
        flex: 1 1 42rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}

.about .sub-image{
    height: 50rem;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 15rem;
        flex: 1 1 15rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1rem;
}

.about .image img{
    width: 100%;
    border-radius: 2rem;
    overflow: hidden;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.about .sub-image.one img{
    height: 50%;
}

.about .sub-image.two{
    margin-top: 2rem;
}

.about .content{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 40rem;
        flex: 1 1 40rem;
}

.about .heading{
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
}

.about .heading h2{
    text-align: left;
}

.about .content p{
    padding-bottom: 1rem;
}

.about .about-features{
    padding-top: 0.5rem;
    padding-bottom: 1.5rem;
}

.about .about-features li{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
    padding-bottom: 1rem;
    font-size: 1.6rem;
}

.about .about-features i{
    color: var(--main-color);
}

.about .about-features span{
    color: var(--grey);
}

/*----- 2- Team -----*/
.team .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(25rem, 1fr))[auto-fill];
    grid-template-columns: repeat(auto-fill, minmax(25rem, 1fr));
    gap: 1.5rem;
}

.team-item {
    position: relative;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    height: 40rem;
    border-bottom: var(--custom-border);
    overflow: hidden;
    border-radius: var(--border-radius-3);
}

.team-item .content{
    position: absolute;
    top: 0;
    left: 0%;
    height: 100%;
    width: 100%;
    background: -webkit-linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.8));
    background:         linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.8));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 2rem;
}

.team-item .text{
    text-align: center;
    padding-top: 1rem;
}

.team-item .content h3{
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--white);
    padding-bottom: 0.2rem;
}

.team-item .content h3:hover{
    color: var(--main-color);
}

.team-item .content p{
  font-size: 1.6rem;
  font-weight: 500;
  color: var(--main-color);
  text-transform: uppercase;
}

.team-item .icon-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    -webkit-transition: all 0.4s ease-in-out 0s;
    -o-transition: all 0.4s ease-in-out 0s;
    transition: all 0.4s ease-in-out 0s;
    background-color: var(--main-color);
    border-radius: 5rem;
    padding: 0.5rem 1.5rem;
}

.team-item .icon-container a{
    height: 3rem;
    width: 3rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;  
    font-size: 1.7rem;
    color: var(--white);
}

.team-item .icon-container a:hover{
    color: var(--secondary-color);
}

/*----- 3- Team Single -----*/
.team-single .team-intro{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 3rem;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    background-color: var(--white);
    padding: 2rem;
    border-radius: var(--border-radius-3);
}

.team-single .image{ 
    width: 40rem;
    height: 50rem;
    border-radius: var(--border-radius-3);
    overflow: hidden;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.team-single .information{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 50rem;
        flex: 1 1 50rem;
}

.team-single .information h3{
    color: var(--secondary-color);
    font-size: 3rem;
    font-weight: 600;
    padding-bottom: 0.5rem;
}

.team-single .information h5{
    color: var(--main-color);
    text-transform: uppercase;
    font-size: 1.8rem;
    font-weight: 500;
    padding-bottom: 1.5rem;
}

.team-single .information .team-about{
    padding-top: 1.5rem;
    border-top: 0.1rem solid rgba(0, 0, 0, 0.2);
}

.team-single .text{
    font-size: 1.6rem;
    letter-spacing: 0.2px;
    font-weight: 400;
    color: var(--grey);
    line-height: 1.7;
}

.team-single .team-personal-info{
    padding-top: 2rem;
    padding-bottom: 1rem;
}

.team-single .team-personal-info li{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
    padding-bottom: 1.5rem;
}

.team-single .team-personal-info i{
    font-size: 1.6rem;
    color: var(--main-color);
    padding-right: 0.5rem;
}

.team-single .team-personal-info h6{
    font-size: 2rem;
    color: var(--secondary-color);
}

.team-single .team-personal-info span{
    font-size: 1.8rem;
    font-weight: 500;
    color: var(--grey);
    text-transform: none;
}

.team-single .icon-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center; 
    -ms-flex-align: center;
    align-items: center;
    gap: 0.7rem;
}

.team-single .icon-container a{
    height: 4.5rem;
    width: 4.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1.5rem;
    color: var(--white);
    background-color: var(--main-color);
    -webkit-clip-path: var(--custom-clip-path);
            clip-path: var(--custom-clip-path);
}

.team-single .icon-container a:hover{
    background: var(--secondary-color);
}

.team-single .page-info{
    background-color: transparent;
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
}

.team-single .box-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2rem;
    padding-top: 2rem;
    padding-bottom: 3rem;
}

.team-single h4{
    font-size: 3rem;
    font-weight: 500;
    color: var(--secondary-color);
    padding-bottom: 0.5rem;
}

.team-single .sub-section{
    -webkit-box-flex: 1;
        -ms-flex: 1 1 40rem;
            flex: 1 1 40rem;
}

.team-single .skills .box{
    padding: 1rem 0;
}

.team-single .skills .box h3{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0.7rem 0;
    font-size: 1.7rem;
    color: var(--secondary-color);
    font-weight: 400;
}

.team-single .skills .box .progress-bar{
    width: 100%;
    background: var(--secondary-color);
    overflow: hidden;
    height: 1.2rem;
    border-radius: 50rem;
}
 
.team-single .skills .box .progress-bar span{
    display: block;
    height: 100%;
    background: var(--main-color);
}

.team-single .events .box-container{
    padding-top: 1rem;
}

/*----- 4- Testimonials -----*/
.testimonial-slider{
    overflow: hidden;
    position: relative;
    padding-bottom: 4rem;
}

.testimonial .swiper-pagination-bullet{
    background: var(--secondary-color);
    opacity: 0.9;
}

.testi-item{
    background-color: var(--black);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-3);
}

.testi-item .content{
    padding: 4rem 3rem;
}

.testi-item .rating i{
    font-size: 2rem;
    color: var(--main-color);
}

.testi-item p{
    padding-top: 3rem;
    color: var(--light-grey);
}

.testi-item .bottom{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    background-color:var(--main-color);
    padding: 2rem 3rem;
}

.testi-item .intro{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 2rem;
}

.testi-item img{
    height: 8rem;
    width: 8rem;
    border-radius: 50%;
}

.testi-item h4{
    font-size: 2.2rem;
    font-weight: 600;
    color: var(--white);
}

.testi-item h6{
    font-size: 1.8rem;
    font-weight: 600;
    color: var(--light-grey);
}

.testi-item .fa-quote-right{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 7rem;
    color: transparent;
    -webkit-text-stroke: 2px var(--white);
}

/*----- 5- Faqs -----*/
.faq .box-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 2rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; 
}

.accordion-container{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 50rem;
        flex: 1 1 50rem;
}

.accordion{
    background: var(--white);
    margin-bottom: 1.5rem;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    overflow: hidden;
    border-radius: var(--border-radius-1);
} 
 
.accordion:last-child{
    margin-bottom: 0rem;
}  

.accordion .accordion-heading{
    padding: 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.5rem;
    cursor: pointer;
    font-size: 1.8rem;
}

.accordion.active .accordion-heading {
    border-bottom: 0.3rem solid var(--main-color);
}

.accordion .accordion-heading i{
    height: 4rem;
    width: 4rem;
    border-radius: 0.2rem;
    color: var(--white);
    background-color: var(--main-color);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.accordion .accordion-heading h3{
    color: var(--secondary-color);
}

.accordion.active .accordion-heading h3{
    color: var(--main-color);
}

.accordion.active .accordion-content{
    display: block;
}

.accordion-content{
    padding: 2rem;
    font-size: 1.5rem;
    line-height: 2;
    color: var(--grey);
    display: none;
}

.faq .image{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 30rem;
        flex: 1 1 30rem;
    height: 55rem;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    overflow: hidden;
}

/*------------------------------ (02)-About (End) ------------------------------*/



/*------------------------------ (05)-Pages (Start) ------------------------------*/

/*--------------- COMPONENTS ---------------*/

/*----- 01- Tab Informatin -----*/
.tab-buttons{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style-type: none;
    gap: 1rem;
    margin-bottom: 2rem;
}

.tab-buttons .button{
    font-size: 1.6rem;
    font-weight: 500;
    padding: 1.5rem 3rem;
    color: var(--white);
    background-color: var(--secondary-color);
    text-transform: uppercase;
    text-align: center;
    border-radius: var(--border-radius-1);
}

.tab-buttons .button:hover,
.tab-buttons .button.active{
    background-color: var(--main-color);        
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    cursor: pointer;
}

.tab-sections .tab-section{
    display: none;
}

.tab-sections .tab-section.active{
    display: block;
    margin-top: 2rem;
}

/*----- 02- Page Single -----*/
.page-single{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
        align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1.5rem;
}

.page-single .sidebar .sidebar-item{
    margin-bottom: 0;
}

.page-info{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 75rem; 
        flex: 1 1 75rem;
}

.page-info .image{
    height: 40rem;
}

.page-info .image img{
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-3);
}

.page-info .content{
    padding-top: 2rem;
}

.page-info .main-heading{
    display: inline-block;
    font-size: 3.5rem;
    font-weight: 600;
    color: var(--secondary-color);
    text-shadow: 1px 1px 8px rgba(0,0,0, 0.2);
    padding-bottom: 1rem;
}

.page-info .important{
    color: var(--secondary-color) !important;
    font-weight: 600;
}

.page-info p{
    padding-bottom: 1rem;
}

.page-info .page-gallery{ 
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(25rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
    gap: 1rem;
    padding: 2rem 0;
}

.page-info .page-gallery img{
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.page-info .sub-heading{
    display: inline-block;
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--secondary-color);
    padding-bottom: 0.5rem;
}

.page-info .sub-section{
    padding-top: 2rem;
}

.page-info .sub-section p{
    margin-bottom: -1rem;
}

.page-info .sub-section ul{
    list-style: none;
}

.page-info .sub-section ul li{
    padding-top: 1rem;
    font-size: 1.5rem;
    color: var(--grey);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}

.page-info .sub-section ul i{ 
    color: var(--main-color);
    font-size: 1.4rem;
    height: 1.8rem;
    width: 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.page-info .sub-section ul strong{
    color: var(--black);
}

/*----- 03- Page Sidebar -----*/
.page-sidebar{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 25rem;
    flex: 1 1 25rem;
    padding: 4rem;
    background: var(--black);
    border-bottom: var(--custom-border);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-3);
}

.page-sidebar .sub-heading{
    display: inline-block;
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--white);
    padding-bottom: 2rem;
    line-height: 1;
}

.page-sidebar .detail-item{
    padding-bottom: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.8rem;
}

.page-sidebar .detail-item:last-child{
    padding-bottom: 0;
}

.page-sidebar .detail-item i{
    height: 2rem;
    width: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; 
    font-size: 1.8rem;
    color: var(--main-color);
}

.page-sidebar .detail-item h3{
    font-size: 1.8rem;
    font-weight: 600;
    color: var(--white);
    line-height: 1;
    padding-bottom: 0.5rem;
}

.page-sidebar .detail-item .detail-content p{
    font-weight: 400;
    color: var(--light-grey);
    line-height: 1.3;
}

.page-sidebar .gmail{
    text-transform: none;
}

.page-sidebar .btn{
    margin-top: 3rem;
}

/*----- 04- Custom Form -----*/
.custom-form{
    padding: 2rem 0;
}

.custom-form .alert{
    font-size: 1.6rem;
    color: var(--main-color);
    padding-left: 1rem;
}

.custom-form .box-container{
    background-position: center;
    background-size: cover;
}

.custom-form .content{
    padding: 4rem 5%;
    max-width: 90rem;
    padding-right: 20%;
    background: var(--custom-bg);
    -webkit-clip-path: polygon(0 0, 100% 0, 80% 100%, 0% 100%);
            clip-path: polygon(0 0, 100% 0, 80% 100%, 0% 100%);
}

.custom-form .heading{
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
}

.custom-form .heading h2{
    text-align: left;
}

.custom-form form{
    width: 100%;
}

/*--------------- PAGES ---------------*/

/*----- 1- Gallery -----*/
.gallery .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1fr 1fr;
        grid-template-columns: 1fr 1fr 1fr;
    -ms-grid-rows: auto;
        grid-template-rows: auto;
    gap: 2rem;
    grid-template-areas: 
    'gallery-1 gallery-1 gallery-4'
    'gallery-2 gallery-3 gallery-4'
    'gallery-5 gallery-6 gallery-6'
    'gallery-5 gallery-7 gallery-8'
}

.gallery-item{
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    position: relative;
    cursor: pointer;
    height: 30rem;
}

/* Assign grid areas to Each Category Box */
.gallery-1 {
    grid-area: gallery-1;
}

.gallery-2 {
    grid-area: gallery-2;
}

.gallery-3 {
    grid-area: gallery-3;
}

.gallery-4 {
    grid-area: gallery-4;
    height: auto;
}

.gallery-5 {
    grid-area: gallery-5;
    height: auto;
}

.gallery-6 {
    grid-area: gallery-6;
}

.gallery-7 {
    grid-area: gallery-7;
}

.gallery-8 {
    grid-area: gallery-8;
}

.gallery-item .content{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center; 
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; 
    position: absolute;
    left: 10%;
    top: 10%;
    opacity: 0;
    width: 80%;
    height: 80%;
    z-index: 1;
    -webkit-transition: all 0.4s ease-in-out 0s;
    -o-transition: all 0.4s ease-in-out 0s;
    transition: all 0.4s ease-in-out 0s;
    background-color:rgba(235, 54, 120, 0.9);
}

.gallery-item:hover .content{
    opacity: 1;
}

.gallery-item a i{
    scale: 0;
    font-size: 5rem;
    color: var(--white);
}

.gallery-item:hover a i{
    scale: 1;
}

/*----- 2- Portfolio -----*/
.portfolio .tab-buttons{
    -webkit-box-pack: center; 
    -ms-flex-pack: center;
    justify-content: center;
}

.portfolio-item{
    width: 33.3%;
    padding: 0.8rem;
}

.portfolio-content{
    height: 30rem;
    position: relative;
    overflow: hidden;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-bottom: var(--custom-border);
    border-radius: var(--border-radius-3);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
}

.portfolio-item .content{
    position: absolute;
    left: 2.5%;
    bottom: 0;
    width: 95%;
    background-color: rgba(0, 0, 0, 0.9);
    opacity: 0.9;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    padding: 2rem;
    gap: 1rem;
    border-radius: var(--border-radius-3);
}

.portfolio-item .text p{
    font-weight: 500;
    color: var(--main-color);
    text-transform: uppercase;
}

.portfolio-item .text h3{
    font-size: 2.2rem;
    font-weight: 600;
    color: var(--white);
}

.portfolio-item .text h3:hover{
    color: var(--main-color);
}

.portfolio-item .view{
    height: 5rem;
    width: 5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 0.5rem;
    border-radius: 50%;
    background-color: var(--main-color);
}
 
.portfolio-item a i{
    font-size: 2rem;
    color: var(--white);
}

/*----- 3- Portfolio Single -----*/

/*----- 4- Services -----*/
.services .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(32rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(32rem, 1fr));
    gap: 1.5rem;
}

.service-item{
    position: relative;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    height: 35rem;
    overflow: hidden;
    border-bottom: var(--custom-border);
    border-radius: var(--border-radius-3);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.service-item .content{
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    padding: 3rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}

.service-item .intro{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 1.5rem;
    width: 100%;
}

.service-item i{
    font-size: 5rem;
    color: transparent;
    -webkit-text-stroke: 2.5px var(--main-color);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.service-item h6{
    color: #02010100;
    font-size: 7rem;
    font-weight: 900;
    -webkit-text-stroke-width: 0.1rem;
    stroke-width: 0.2rem;
    -webkit-text-stroke-color: var(--white);
    stroke: var(--white);
    line-height: 1;
}

.service-item h3{
    font-size: 2.8rem;
    font-weight: 600;
    color: var(--white);
    padding-bottom: 0.5rem;
}

.service-item h3:hover{
    color: var(--main-color);
}

.service-item p{
    color: var(--light-grey);
    padding-bottom: 2.5rem;
}

/*----- 5- Service Single -----*/
.service-single .faq .accordion-container{
    padding-top: 0.5rem;
}

/*----- 6- Tickets -----*/
.tickets .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(33rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(33rem, 1fr));
    gap: 1rem;
}

.ticket-item{
    border-bottom: var(--custom-border);
    border-radius: var(--border-radius-3);
    overflow: hidden;
}

.ticket-header, 
.ticket-footer{
    text-align: center;
    background-color: var(--black);
}

.ticket-header{
    position: relative;
}

.ticket-footer{
    padding: 2rem;
}

.ticket-item .top{
    height: 10rem;
    width: 100%;
    background-color: var(--main-color);
    -webkit-clip-path: polygon(100% 0, 100% 65%, 50% 100%, 0 65%, 0 0);
            clip-path: polygon(100% 0, 100% 65%, 50% 100%, 0 65%, 0 0);
}

.ticket-item .intro{
    position: relative;
    padding: 2rem;
    padding-top: 7rem;
}

.ticket-item .icon{
    position: absolute;
    left: 50%;
    top: 0;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    height: 12rem;
    width: 12rem;
    border: 1rem solid var(--black);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 4rem;
    color: var(--white);
    background-color: var(--main-color);
    margin: 0 auto;
    border-radius: 50%;
    z-index: 1;
}
  
.ticket-item h3{
    color: var(--white);
    font-size: 3rem;
    font-weight: 500;
}
  
.ticket-item p{
    color: var(--white);
    font-size: 1.8rem;
    font-weight: 400;
}
  
.ticket-item .price{
    color: var(--main-color);
    font-size: 4rem;
    font-weight: 600;
}

.ticket-item ul{ 
    border-top: 0.1rem dashed var(--light-grey);
    padding: 1rem 2rem;
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}
    
.ticket-item ul li{
    padding: 0.6rem 0;
    font-size: 1.6rem;
    color: var(--light-grey);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; 
    gap: 0.7rem;
}
  
.ticket-item ul li i{
    height: 1.8rem;
    width: 1.8rem;
    color: var(--main-color);
    font-size: 1.3rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.ticket-item .cut{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 10rem;
    background-color: var(--black);
    height: 2rem;
    margin: 0 1rem;
    background-size: 0.4rem 0.2rem;
    background-repeat: repeat-x;
    background-position: center;
    position: relative;
}

.ticket-item .cut .dash{
    height: 0.1rem;
    width: 100%;
    border: 0.1rem dashed var(--light-grey);
}

.ticket-item .cut:before,
.ticket-item .cut:after{
    content: '';
    position: absolute;
    width: 2rem;
    height: 2rem;
    top: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    -ms-transform: translate(-50%, -50%) rotate(45deg);
        transform: translate(-50%, -50%) rotate(45deg);
    border: 0.5rem solid transparent;
    border-top-color: var(--black);
    border-right-color: var(--black);
    border-radius: 100%;
    pointer-events:none;
}

.ticket-item .cut:before{
    left: -10px;
}

.ticket-item .cut:after{
    -webkit-transform: translate(-50%, -50%) rotate(225deg);
    -ms-transform: translate(-50%, -50%) rotate(225deg);
        transform: translate(-50%, -50%) rotate(225deg);
    right: -3.9rem;
}

/*----- 7- Registration -----*/
.registration-form .box-container{
    background-image: url("../../assets/images/Background/Register.jpg");
}

.registration-form .content{
    padding: 4rem 5%;
    margin-left: auto;
    max-width: 85rem;
    padding-left: 20%;
    -webkit-clip-path: polygon(0 0, 100% 0%, 100% 100%, 20% 100%);
            clip-path: polygon(0 0, 100% 0%, 100% 100%, 20% 100%);
}

/*----- 8- Sponsors -----*/
.sponsors .box-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2rem;
}

.sponsor-item{
    width: 20rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

/*----- 9- Venue -----*/
.venue{
    padding: 0;
}

.venue iframe{
    width: 100%;
    height: 30rem;
    margin: 1rem 0;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.venue-info{
    padding: 0;
}

.venue-info .box-container{
    background-image: url("../../assets/images/Background/venueInfo.jpg");
}

.venue-info .content{
    margin-left: auto;
    padding: 4rem;
    max-width: 70rem;
    background: var(--custom-bg);
    -webkit-clip-path: none;
            clip-path: none;
}

.venue-points{
    list-style-type: none;
}

.venue-points li{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
    gap: 1.5rem;
    padding-top: 2rem;
    padding-bottom: 1rem;
    border-bottom: 0.2rem solid rgba(255, 255, 255, 0.4);
}

.venue-points li:last-child{
    border: 0;
    padding-bottom: 0;
}

.venue-points li i{
    height: 7rem;
    width: 7rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 2.4rem;
    color: transparent;
    -webkit-text-stroke: 2px var(--white);
    background-color: rgba(241, 18, 162, 0.9);
    border-radius: 50%;
}

.venue-points .text{
    -webkit-box-flex: 1;
        -ms-flex: 1 1 30rem;
            flex: 1 1 30rem;
}

.venue-points li h5{
    font-size: 2.5rem;
    font-weight: 600;
    color: var(--white);
}

.venue-points li p{
    color: var(--light-grey);
}

.venue-points .gmail{
    text-transform: none;
}

.venue-gallery .page-gallery{ 
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(33rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(33rem, 1fr));
    gap: 2rem;
}
  
.venue-gallery .page-gallery img{
    height: 40rem;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.venue-features{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(30rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr));
    gap: 3rem;
    background: -webkit-linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.5)), url("../../assets/images/Background/venueFeatures.jpg");
    background:         linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.5)), url("../../assets/images/Background/venueFeatures.jpg");
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
    padding: 6rem 5%;
}

.venue-features .venue-feature{
    text-align: center;
}

.venue-features .venue-feature i{
    height: 8rem;
    width: 10rem;
    font-size: 2.5rem;
    margin: 0rem auto;
    margin-bottom: 1.5rem;
    color: var(--white);
    background-color: rgba(241, 18, 162, 0.9);
    -webkit-clip-path: var(--custom-clip-path);
            clip-path: var(--custom-clip-path);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.venue-features .venue-feature h3{
    font-size: 2.8rem;
    font-weight: 600;
    color: var(--white);
    padding-bottom: 0.5rem;
}

.venue-features .venue-feature p{
    color: var(--light-grey);
}

.hotel-rooms .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(32rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(32rem, 1fr));
    gap: 1.5rem;
}

.room-item{
    height: 40rem;
    position: relative;
    overflow: hidden;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-3);
}

.room-item .content{
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    background: -webkit-linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.5));
    background:         linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.5));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    padding: 2rem;
}

.room-item .text h3{
    font-size: 2.6rem;
    font-weight: 600;
    color: var(--white);
}

.room-item .text p{
    font-weight: 500;
    color: var(--white);
    text-transform: uppercase;
}

/*------------------------------ (05)-Pages (End) ------------------------------*/




/*------------------------------ (04)-Speaker (Start) ------------------------------*/

/*----- 1- Speakers -----*/

/*----- 2- Speaker Single -----*/
.speaker-single .image{ 
    height: 60rem;
}

/*------------------------------ (04)-Speaker (End) ------------------------------*/




/*------------------------------ (05)-Schedule (Start) ------------------------------*/

/*----- 1- Schedule Tab -----*/
.schedule .tab-buttons{
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 2rem;
    margin-bottom: 4rem;
}

.schedule .tab-buttons button{
    display: inline-block;
    padding: 2rem 3rem;
    letter-spacing: 0.1rem;
    font-size: 2.2rem;
}

.schedule-date{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 2.5rem;
}

.schedule-date h5{
    font-size: 3.5rem; 
    font-weight: 500;
    color: var(--secondary-color);
}

.schedule-date h2{
    position: relative;
    font-size: 3.5rem; 
    font-weight: 500;
    color: var(--main-color);
    line-height: 1;
    padding-bottom: 1.2rem;
}

.schedule-date h2:before{
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 20rem;
    height: 2px;
    content: "";
    background-color: var(--main-color);
}

.schedule-item{
    border-radius: var(--border-radius-3);
    margin-bottom: 2rem;
    background-color: var(--white);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
}

.session-intro{
    position: relative;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 20rem;
            flex: 1 1 20rem;
}

.session-intro .intro-content{
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: rgba(241, 18, 162, 0.8);
    padding: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
    color: var(--white);
}

.session-intro .session-timing{
    font-size: 2.5rem;
    font-weight: 600;
}

.session-intro .session-venue{
    font-size: 2rem;
}

.schedule-item .session-topic{
    -webkit-box-flex: 1;
        -ms-flex: 1 1 50rem;
            flex: 1 1 50rem;
    padding: 2rem;
}

.schedule-item .session-topic h3{
    font-size: 3rem;
    font-weight: 600;
    line-height: 1.3;
    color: var(--secondary-color);
    padding-bottom: 1rem;
}

.schedule-item .session-topic h3:hover{
    color: var(--main-color);
}

.session-speakers{
    -webkit-box-flex: 1;
        -ms-flex: 1 1 25rem;
            flex: 1 1 25rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2rem;
    padding: 2rem;
    border-left: 0.1rem solid rgba(0, 0, 0, 0.2);
}

.session-speaker img{
    height: 8rem;
    width: 8rem;
    border-radius: 50%;
}

.session-speaker{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.5rem;
}

.session-speaker .text{
    -webkit-box-flex: 1;
        -ms-flex: 1 1 10rem;
            flex: 1 1 10rem;
}

.session-speaker h4{
    font-size: 2rem;
    font-weight: 600;
    color: var(--secondary-color);
}

.session-speaker h6{
    font-size: 1.8rem;
    font-weight: 600;
    color: var(--main-color);
}

/*----- 2- Schedule List -----*/
.schedule.list .schedule-container{
    display: block;
    margin: 4rem 0;
}

/*----- 3- Schedule Event -----*/
.events .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(42rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(42rem, 1fr));
    gap: 1.5rem;
}

.event-item{
    height: 30rem;
    overflow: hidden;
    border-radius: var(--border-radius-3);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    position: relative;
}

.event-item .content{
    position: absolute;
    top: 0;
    left: 0; 
    height: 100%;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    gap: 2rem;
    padding: 2rem;
}

.event-item .date{
    display: inline-block;
    font-size: 1.8rem;
    color: var(--white);
    background-color: var(--secondary-color);
    border-bottom: var(--custom-border);
    border-right: var(--custom-border);
    border-radius: var(--border-radius-3);
    padding: 1.5rem;
    text-align: center;
    width: 8rem;
    line-height: 1;
}

.event-item .date span{
    font-size: 3.5rem;
    font-weight: 500;
}

.event-item h5{
    font-size: 1.6rem;
    font-weight: 400;
    color: var(--white);
    padding-bottom: 0.5rem;
}

.event-item .main-heading{
    display: block;
    font-size: 3rem;
    font-weight: 500;
    color: var(--white);
    line-height: 1.2;
}

.event-item .main-heading:hover{
    color: var(--main-color);
}

.event-item h3{
    font-size: 1.8rem;
    font-weight: 500;
    color: var(--main-color);
}

/*----- 4- Schedule Single -----*/
.session-info iframe{
    width: 100%;
    height: 30rem;
    border-radius: var(--border-radius-3);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.session-info .team .box-container{
    padding-top: 1rem;
}

/*------------------------------ (05)-Schedule (End) ------------------------------*/



/*------------------------------ (06)-Blog (Start) ------------------------------*/

/*--------------- COMPONENTS ---------------*/

/*----- 01- Blog-Item -----*/
.blog-item{
    border-bottom: var(--custom-border);
    overflow: hidden;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    position: relative;
    border-radius: var(--border-radius-3);
}

.blog-item .image{
    height: 30rem;
} 

.blog-item .label{
    position: absolute;
    right: 0;
    top: 3rem;
    display: inline-block;
    font-size: 1.6rem;
    font-weight: 500;
    color: var(--white);
    background-color:rgba(241, 18, 162, 0.9);
    padding: 1rem 1.5rem;
    border-radius: 0.5rem;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.blog-item .content{
    position: absolute;
    top: 0;
    left: 0; 
    height: 100%;
    width: 100%;
    background: -webkit-linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.8));
    background:         linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.8));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 2rem;
}

.blog-item .main-heading{
    display: block;
    font-size: 2.8rem;
    font-weight: 600;
    color: var(--white);
    line-height: 1.4;
    padding-bottom: 1rem;
}

.blog-item .main-heading:hover{
    color: var(--main-color);
}

.blog-item .details{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 2rem;
    border-top: 0.2rem solid rgba(255, 255, 255, 0.6);
    padding-top: 1.5rem;
}

.blog-item h3{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.7rem;
}

.blog-item h3 i{
    height: 2rem;
    width: 2rem;
    font-size: 1.8rem;
    color: var(--main-color);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.blog-item h3 span{
    font-size: 1.6rem;
    font-weight: 400;
    color: var(--light-grey);
}

/*----- 02- Comments -----*/
.comment-item{
    padding-bottom: 1rem;
}

.comment-item:last-child{
    padding-bottom: 0;
}

.comment{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
    gap: 2rem;
    padding-bottom: 2rem;
}

.comment .comment-image{
    height: 10rem;
    width: 10rem;
    border-radius: 50%;
    border: 0.4rem solid var(--white);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    overflow: hidden;
}

.comment .comment-content{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 35rem;
        flex: 1 1 35rem;
}

.comment .comment-intro{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1rem;
}

.comment h3{
    font-size: 2.2rem;
    font-weight: 700;
    color: var(--secondary-color);
}

.comment h6{
    font-size: 1.5rem;
    font-weight: 500;
    color: var(--main-color);
}

.comment .text{
    padding-top: 1rem;
    font-size: 1.5rem;
    color: var(--grey);
    line-height: 1.5;
}

.comment .icon-item{
    display: inline-block;
    color: var(--white);
    background-color: var(--main-color);
    padding: 0.7rem 1.5rem;
    border-radius: 5rem;
    cursor: pointer;
}

.comment .icon-item:hover{
    background-color: var(--secondary-color);
}

.comment .icon-item i{
    font-size: 1.5rem;
    padding-right: 0.5rem
}

.comment .icon-item span{
    font-size: 1.6rem;
}

.comment.reply{
    margin-left: 12rem;
}

.comment.reply .comment-content{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 20rem;
        flex: 1 1 20rem;
}

/*----- 03- Pages-No -----*/
.pages-no{
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 2rem;
}

.pages-no .container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}

.pages-no .item{
    color: var(--white);
    background-color: var(--secondary-color);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    height: 5rem;
    width: 5rem;
    font-size: 2rem;
    border-radius: var(--border-radius-1);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.pages-no .item.active,
.pages-no .item:hover{
    cursor: pointer;
    background-color: var(--main-color);
}

.pages-no .numbers{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}

/*--------------- PAGES ---------------*/
.blog-container{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 75rem;
        flex: 1 1 75rem;
}

/*----- 1- Blog Grid -----*/
.blog.grid{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 1.5rem;
}

.blog-container.grid .blog-items{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(32rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(32rem, 1fr));
    gap: 1.5rem;
}

/*----- 2- Blog List -----*/
.blog.list{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.5rem;
}

.blog-container.list .blog-item{
    width: 100%;
    margin-bottom: 1rem;
}

.blog-container.list .blog-item .image{
    height: 40rem;
}

/*----- 3- Blog Single -----*/
/*
1- Blog Info
2- Comments
3- Leave A Reply
*/

.blog-single{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1.5rem;
}

/*-- 1- Blog Info --*/ 
.blog-info .image{
    position: relative;
}

.blog-info .label{
    position: absolute;
    right: 0;
    top: 3rem;
    display: inline-block;
    font-size: 1.6rem;
    font-weight: 500;
    color: var(--white);
    background-color:rgba(241, 18, 162, 0.9);
    padding: 1rem 1.5rem;
    border-radius: 0.5rem;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
  
.blog-info .details{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 2rem;
    padding-bottom: 2rem;
}

.blog-info .details h5{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.7rem;
}

.blog-info .details h5 i{
    font-size: 1.8rem;
    color: var(--main-color);
}

.blog-info .details h5 span{
    font-size: 1.6rem;
    font-weight: 400;
    color: var(--grey);
}
  
.blog-info .important{
    padding: 2rem;
    font-size: 1.8rem;
    font-weight: 600;
    font-style: italic;
    line-height: 1.8;
    color: var(--light-grey) !important; 
    background-color: var(--black);
    border: var(--custom-border);
    margin-top: 1rem;
    margin-bottom: 2rem;
    text-align: center;
}

.blog-info .important i{
    height: 7rem;
    width: 8rem;
    font-size: 3.2rem;
    color: var(--white);
    background-color: var(--main-color); 
    margin: 0 auto;
    margin-bottom: 1.5rem;
    -webkit-clip-path: var(--custom-clip-path);
            clip-path: var(--custom-clip-path);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.blog-info .important .intro{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    padding-top: 1rem;
}

.blog-info .important .intro span{
    height: 0.2rem;
    width: 2rem;
    background-color: var(--main-color);
}

.blog-info .important .intro h6{
    font-size: 2rem;
    color: var(--main-color);
    font-style: normal;
}

.blog-info .end-details{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 2rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding-top: 2rem;
    padding-bottom: 1rem;
    border-top: 0.1rem solid rgba(0, 0, 0, 0.1);
}
  
.blog-info .tags, 
.blog-info .share{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.7rem;
}
  
.blog-info .tags span{
    color: var(--white);
    background-color: var(--main-color);
    border-radius: 5rem;
    font-size: 1.6rem;
    padding: 0.8rem 2rem;
}

.blog-info .tags span:hover{
    background-color: var(--secondary-color);
}
 
.blog-info .share h3{
    color: var(--secondary-color);
    font-size: 1.6rem;
    padding-right: 1rem;
}
  
.blog-info .share i{
    height: 2rem;
    width: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center; 
    -ms-flex-align: center;
    align-items: center;
    color: var(--grey);
    font-size: 1.6rem;
}
  
.blog-info .share i:hover{
    color: var(--main-color);
    cursor: pointer;
}
   
/*-- 2- Comments --*/
.blog-single .comments{
    margin: 4rem 0;
    overflow: hidden;
} 

.blog-single .comments h4{  
    font-size: 2.5rem; 
    color: var(--secondary-color); 
    padding-bottom: 2rem;
} 

/*-- 3- Leave A Reply --*/
.blog-single .leave-reply h3{
    font-size: 2.5rem; 
    color: var(--secondary-color); 
    padding-bottom: 2rem;
}

/*------------------------------ (06)-Blog (End) ------------------------------*/



/*------------------------------ (07)-Shop (Start) ------------------------------*/

/*--------------- COMPONENTS ---------------*/

/*----- 01- Filter -----*/
.filter .box-container{
    padding-top: 4rem;
}

.filter .slider{
    height: 5px;
    position: relative;
    background: #ddd;
    border-radius: 5px;
}

.filter .slider .progress{
    height: 100%;
    left: 25%;
    right: 25%;
    position: absolute;
    border-radius: 5px;
    background: var(--secondary-color);
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
}

.range-input{
    position: relative;
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
}

.range-input input{
    position: absolute;
    width: 100%;
    height: 5px;
    top: -5px;
    background: none;
    pointer-events: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

input[type="range"]::-webkit-slider-thumb{
    height: 17px;
    width: 17px;
    border-radius: 50%;
    background: var(--secondary-color);
    pointer-events: auto;
    -webkit-appearance: none;
    -webkit-box-shadow: 0 0 6px rgba(0,0,0,0.05);
            box-shadow: 0 0 6px rgba(0,0,0,0.05);
}

input[type="range"]::-moz-range-thumb{
    height: 17px;
    width: 17px;
    border: none;
    border-radius: 50%;
    background: var(--secondary-color);
    pointer-events: auto;
    -moz-appearance: none;
    -webkit-box-shadow: 0 0 6px rgba(0,0,0,0.05);
            box-shadow: 0 0 6px rgba(0,0,0,0.05);
}

.price-wrap{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
    color: #242424;
    font-size: 14px;
    line-height: 1.2em;
    font-weight: 400;
    margin-bottom: 0px;
    margin-top: 3rem;
}

.filter .price-input{
    width: 15rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border: 0.1rem solid rgba(0, 0, 0, 0.2);
    padding: 0.5rem;
}

.filter .price-input .field{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.2rem;
    width: 100%;
    height: 3rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.filter .field input{
    width: 100%;
    height: 100%;
    outline: none;
    font-size: 1.5rem;
    text-align: center;
    -moz-appearance: textfield;
    -webkit-appearance: textfield;
            appearance: textfield;
    color: var(--secondary-color);
    background-color: transparent;
}

.filter input[type="number"]::-webkit-outer-spin-button,
.filter input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
}

.filter .price-input .separator{
    width: 10rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 1.8rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

/*----- 02- Shop Header -----*/
.shop .intro{
    margin-bottom: 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 1rem;
    background-color: var(--white);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    padding: 1rem 1.5rem;
    border-radius: var(--border-radius-3);
}

.shop .intro .showing{
    font-size: 1.6rem;
    color: var(--grey);
}

.shop .intro .styles{
    list-style-type: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1rem;
}

.shop .intro .styles a{
    font-size: 2rem;
    color: var(--secondary-color);
}

.shop .intro .styles a:hover{
    color: var(--main-color);
}

.shop .intro .sorting-type label{
    font-size: 1.6rem;
    color: var(--secondary-color);
    margin-right: 0.5rem;
}

.shop .intro .sorting-type select{
    font-size: 1.4rem;
    color: var(--grey);
    background-color: transparent;
    border: var(--border);
    padding: 1rem;
}

/*----- 03- Quantity Box -----*/
.quantity.buttons_added {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border: 1px solid #ccc;
    height: 4rem;
    width: 11rem;
    margin: 0 auto;
}

.quantity.buttons_added .minus,
.quantity.buttons_added .plus {
    width: 3rem;
    color: var(--secondary-color);
    cursor:pointer;
    background-color: transparent;
}

.quantity.buttons_added .minus:hover,
.quantity.buttons_added .plus:hover {
    background: var(--main-color); 
    color: var(--white);
}

.quantity .input-text.qty {
    padding: 0 1rem;
    text-align: center;
    background-color: transparent;  
    border-right: 1px solid #ccc; 
    border-left: 1px solid #ccc; 
} 
  
.quantity input::-webkit-outer-spin-button,
.quantity input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0; 
}
    
.quantity.buttons_added .minus:focus,
.quantity.buttons_added .plus:focus {
    outline: none; 
}

/*----- 04- product-item -----*/
.product-item{
    background-color: var(--white);
    overflow: hidden;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-3);
} 

.product-item .image {
    width: 100%;
    height: 25rem;
    position: relative;
    overflow: hidden;
}

.product-item .options{
    position: absolute;
    top: 0rem;
    left: 0rem;
    height: 100%;
    width: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
    opacity: 0;
}

.product-item:hover .options{
    opacity: 1;
}

.product-item .options a{
    height: 5rem;
    width: 5rem;
    font-size: 1.6rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: var(--white);
    background: var(--main-color);
    -webkit-clip-path: var(--custom-clip-path);
            clip-path: var(--custom-clip-path);
    scale: 0;
}

.product-item:hover .options a{
    scale: 1;
}

.product-item .options a:hover {
    color: var(--main-color);
    background: var(--white);
}

.product-item .content{
    padding: 2rem;
}

.product-item .rating i{
    font-size: 1.4rem;
    color: var(--main-color);
    padding-bottom: 0.5rem;
}

.product-item h3{
    font-size: 2.2rem;
    font-weight: 600;
    color: var(--secondary-color);
}

.product-item h3:hover{
    color: var(--main-color);
}

.product-item p{
    padding-bottom: 1rem;
}

.product-item .price{
    font-size: 2rem;
    font-weight: bold;
    color: var(--main-color);
}

.product-item .price span{ 
    font-size: 1.5rem;
    font-weight: 400;
    text-decoration: line-through;
    color: var(--secondary-color);
    padding-left: 0.2rem;
}

/*----- 06- Shop-Title -----*/
.shoplist-title{
    background-color: var(--main-color);
    color: var(--white);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 1.5rem;
    margin-bottom: 1rem;
}

.shoplist-title h3{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 10rem;
        flex: 1 1 10rem;
    font-size: 2rem;
    text-align: center;
}

.shoplist-title h3.product-heading{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 20rem;
        flex: 1 1 20rem;
    text-align: left;
}

/*----- 07- Cart-Summary -----*/
.summary-list{
    padding-top: 1rem;
} 

.summary-item{
    display: -webkit-box;
    display: -ms-flexbox; 
    display: flex; 
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center; 
    -ms-flex-align: center;
    align-items: center;
    padding-bottom: 1.5rem;
    font-size: 2rem;
    color: var(--secondary-color); 
} 

.summary-item .name{
    font-weight: 600;
}

.summary-item .value{
    font-weight: 500;
    color: var(--main-color);
}

/*----- 08- Radio Button -----*/
.payment input:checked + label, 
.payment label:hover{ 
    color: var(--main-color);
}
  
.payment input[type="radio"] {
    position: absolute;
    opacity: 0;
}
  
.payment input[type="radio"] + 
.radio-label:before {
    content: '';
    background: #f4f4f4;
    border-radius: 100%;
    border: 0.1rem solid var(--grey);
    display: inline-block;
    width: 1.6rem;
    height: 1.6rem;
    position: relative;
    top: 0;
    vertical-align: top;
    cursor: pointer;
    text-align: center;
    -webkit-transition: all 250ms ease;
    -o-transition: all 250ms ease;
    transition: all 250ms ease;
}
  
.payment input[type="radio"]:checked + 
.radio-label:before {
    background-color: var(--main-color);
    -webkit-box-shadow: inset 0 0 0 4px #f4f4f4;
            box-shadow: inset 0 0 0 4px #f4f4f4;
    outline: none;
    border-color: var(--main-color);
}

/*----- 09- Account-Form -----*/
.account-form{
    max-width: 45rem;
    padding: 5rem;
    background: var(--black);
    border-bottom: var(--custom-border);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    margin: 0rem auto;
    text-align: center;
    position: relative;
    border-radius: var(--border-radius-3);
}

.account-form input:-webkit-autofill,
.account-form input:-webkit-autofill:hover,
.account-form input:-webkit-autofill:focus,
.account-form input:-webkit-autofill:active {
    -webkit-text-fill-color: var(--white);
    -webkit-transition: background-color 5000s ease-in-out 0s;
    -o-transition: background-color 5000s ease-in-out 0s;
    transition: background-color 5000s ease-in-out 0s;
}
  
.account-form h3{ 
    font-size: 3.5rem;
    line-height: 1.3;
    font-weight: 500;
    padding-bottom: 1.5rem;
    color: var(--white);
    text-transform: uppercase;
}

.account-form .box{
    width: 100%;
    font-size: 1.6rem;
    color: var(--white);
    background-color: transparent;
    border: 0.15rem solid var(--white);
    border-radius: var(--border-radius-1);
    padding: 1.2rem;
    text-transform: none;
    margin: 0.7rem 0;
}

.account-form .box::-webkit-input-placeholder{
    text-transform: capitalize;
    color: var(--white);
}
.account-form .box::-moz-placeholder{
    text-transform: capitalize;
    color: var(--white);
}
.account-form .box:-ms-input-placeholder{
    text-transform: capitalize;
    color: var(--white);
}
.account-form .box::placeholder{
    text-transform: capitalize;
    color: var(--white);
}

.account-form .box:focus{
    border-color: var(--main-color);
}

.account-form p{
    padding-top: 2rem;
    color: var(--white);
    text-align: center;
    padding-bottom: 1rem;
}

.account-form .btn{
    width: 100%;
    overflow: hidden;
    margin-top: 1.5rem;
}

.account-form .link{
    font-size: 1.5rem;
    color: var(--main-color);
}

.account-form .link:hover{
    text-decoration: underline;
}

.account-form .checkbox-label {
    color: var(--grey);
    position: relative;
    padding-left: 2.5rem;
    cursor: pointer;
    font-size: 1.8rem;
    line-height: 1.4;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
  
.account-form .checkbox-label input{
    position: absolute;
    opacity: 0;
    z-index: -1;
}
  
.account-form .checkbox-indicator{
    position: absolute;
    top: 0.2rem;
    left: 0;
    height: 1.6rem;
    width: 1.6rem;
    background: transparent;
    outline: 0.15rem solid var(--white);
    border-radius: 0.2rem;
}
  
.account-form .checkbox-label input:checked ~ 
.checkbox-indicator {
    background: var(--main-color);
    outline-color: var(--main-color);
}
  
.account-form .checkbox-indicator:after {
    content: '';
    position: absolute;
    left: 0.5rem;
    top: 0.2rem;
    width: 0.3rem;
    height: 0.8rem;
    border: solid var(--light-grey);
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    display: none;
}

.account-form .checkbox-label input:checked ~ 
.checkbox-indicator:after {
    display: initial;
}

/*--------------- PAGES ---------------*/
.shop{
    display: -webkit-box; 
    display: -ms-flexbox;
    display: flex;
    gap: 1.5rem;
}

.shop .shop-container{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 75rem;
        flex: 1 1 75rem;
}

/*----- 1- Shop Grid -----*/
.shop .product-container.grid{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(25rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
    gap: 1.5rem;
}

/*----- 2- Shop Standard -----*/
.shop .product-container.list{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1rem;
}

.shop .product-container.list .product-item{
    width: 100%;
    text-align: left;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
}

.shop .product-container.list .product-item .image{
    height: 100%;
}

.shop .product-container.list .product-item img{
    height: 100%;
}

.shop .product-container.list .product-item .content{
    text-align: left;
    padding: 1.5rem;
}

/*----- 3- Product Single -----*/
.product-single .product-des{
    background-color: var(--white);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    padding: 2rem;
    margin-bottom: 3.5rem;
    border-radius: var(--border-radius-3);
}

.product-single .box-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center; 
    -ms-flex-pack: center;
    justify-content: center; 
    -webkit-box-align: center; 
        -ms-flex-align: center; 
            align-items: center;
    -ms-flex-wrap: wrap; 
        flex-wrap: wrap;
    gap: 2rem;
}

.product-single .product-des .box-container .image{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 35rem;
        flex: 1 1 35rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.product-single .product-des .box-container .image-container{
    max-width: 50rem;
}

.product-single .product-des .box-container .image-container .main{
    width: 100%;
    height: 40rem;
    overflow: hidden;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-3);
}

.product-single .product-des .box-container .image .change-btns{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(7rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(7rem, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

.product-single .product-des .box-container .image .change-btns img{
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    cursor: pointer;    
}

.product-single .product-des .image .change-btns img:hover,
.product-single .product-des .image .change-btns img.active{
    border: 0.4rem solid var(--main-color);
}

.product-single .product-des .box-container .content{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 45rem;
        flex: 1 1 45rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.product-single .product-des .box-container .content h2{
    font-size: 3.5rem;
    font-weight: 600;
    color: var(--secondary-color);
    padding-bottom: 1rem;
}

.product-single .product-des .box-container .content .intro{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.product-single .product-des .box-container .content .intro .rating{
    color: var(--main-color);
    font-size: 1.6rem;
}

.product-single .product-des .box-container .content .intro span{
    color: var(--secondary-color);
    font-size: 2rem;
    font-weight: 500;
    padding-left: 1rem;
}

.product-single .product-des .box-container .content h3{
    font-size: 3.5rem;
    font-weight: 600;
    color: var(--secondary-color);
    padding-bottom: 1rem;
}

.product-single .product-des .box-container .content .price{
    font-size: 2rem;
    font-weight: bold;
    color: var(--main-color);
}

.product-single .product-des .box-container .content .price span{
    color: var(--grey);
    font-weight: lighter;
    text-decoration: line-through;
}

.product-single .product-des .box-container .content p{
    padding: 2rem 0;
    margin-top: 1rem;
    font-weight: 400;
    border-top: 0.1rem solid rgba(0, 0, 0, 0.2);
    border-bottom: 0.1rem solid rgba(0, 0, 0, 0.2);
}

.product-single .box{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 2rem;
}

.product-single .qty{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 1rem 0;
    gap: 1rem;
    width: 15rem;
}

.product-single .product-des .box-container .content .btn{
    margin: 2rem 0;
}

.product-single .categories,
.product-single .tags{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0.5rem 0;
}

.product-single .qty h4,
.product-single .categories h4,
.product-single .tags h4{
    font-size: 1.8rem;
    color: var(--secondary-color);
    font-weight: 600;
}

.product-single .categories a,
.product-single .tags a{
    font-size: 1.6rem;
    font-weight: 400;
    color: var(--main-color);
    padding: 0 0.5rem;
}

.product-single .categories a:hover,
.product-single .tags a:hover{
    color: var(--secondary-color);
}

/*-- Product Addtional Information --*/
.product-single .tab-info{
    margin-top: 4rem;
}

.product-info .additional-info .item{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 2rem;
    padding-bottom: 1rem;
}

.product-info .additional-info h3{
    width: 20rem;
    font-size: 1.8rem;
    color: var(--secondary-color);
}

.product-info .additional-info span{
    font-size: 1.6rem;
    color: var(--grey);
}

.product-info h2{
    font-size: 3rem; 
    color: var(--secondary-color); 
    padding-bottom: 1rem;
}

.product-info .reviews{
    margin-bottom: 2rem;
} 

.product-info .leave-reply{
    width: 60rem;
} 

/*-- Related Products --*/
.related-items .box-container{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(25rem, 1fr))[auto-fit];
        grid-template-columns: repeat(auto-fit, minmax(25rem, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

/*----- 4- Wishlist  ------*/
.wishlist-container{
    overflow-x: auto;
    overflow-y: hidden;
    background-color: var(--white);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-3);
}

.wishlist-container::-webkit-scrollbar{
    height: 0.8rem;
}

.wishlist .container{
    min-width: 90rem;
}

.wishlist .box-container{
    padding: 0rem 1rem;
}

.wishlist-item{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 1rem 0rem;
    gap: 3rem;
    border-bottom: 0.1rem solid rgba(0, 0, 0, 0.1);
}

.wishlist-item:last-child{
    border: none;
}

.wishlist-item .box{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 20rem;
        flex: 1 1 20rem;
    text-align: center;
    font-size: 2rem;
    font-weight: 500;
}

.wishlist-item .product{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 30rem; 
        flex: 1 1 30rem;  
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: left;
    gap: 1.5rem;
}

.wishlist-item img{
    height: 8rem;
    width: 8rem;
    background-color: #f7f7f7;
    border-radius: var(--border-radius-3);
}

.wishlist-item .name{
    color: var(--secondary-color);
    font-weight: 600;
}

.wishlist-item .price{
    color: var(--grey);
    font-weight: 500;
}

.wishlist-item .status.in{
    color: green;
}

.wishlist-item .status.out{
    color: red;
}

.wishlist-item .action{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
}

.wishlist-item a{
    font-size: 2rem;
    cursor: pointer;
}

.wishlist-item a:hover{
    color: var(--main-color);
}

.wishlist-item .delete{
    color: red;
}

.wishlist-item .cart{
    color: var(--secondary-color);
}

/*----- 5- Cart  ------*/
.shopping-cart{
    margin-bottom: 2rem;
    overflow-x: auto;
    overflow-y: hidden;
    background-color: var(--white);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    border-radius: var(--border-radius-3);
}

.cart .container{
    min-width: 90rem;
}

.shopping-cart::-webkit-scrollbar{
    height: 0.8rem;
}

.cart .box-container{
    padding: 0rem 1rem;
}

.cart-item{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 1rem 0rem;
    gap: 3rem;
    border-bottom: 0.1rem solid rgba(0, 0, 0, 0.1);
}

.cart-item:last-child{
    border: none;
}

.cart-item .box{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 15rem;
        flex: 1 1 15rem;
    text-align: center;
    font-size: 2rem;
    font-weight: 400;
}

.cart-item .product{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 25rem; 
        flex: 1 1 25rem;  
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: left;
    gap: 1.5rem;
}

.cart-item img{
    height: 8rem;
    width: 8rem;
    background-color:#f7f7f7;
    border-radius: var(--border-radius-3);
}

.cart-item .name{
    color: var(--secondary-color);
    font-weight: 600;
}

.cart-item .price,
.cart-item .total{
    color: var(--grey);
}

.cart-item .icon{
    font-size: 2rem;
    cursor: pointer;
    color: red;
}

.cart-item .icon:hover{
    color: var(--main-color);
}

/*-- 2- Cart Total --*/
.cart .cart-summary{
    width: 40rem;
    padding: 1rem;
    margin-left: auto;
    background-color: var(--white);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.cart .cart-summary .btn{
    width: 100%;
    text-align: center;
    margin-top: 1rem;
}

/*----- 6- Checkout -----*/
/*
1- Payment Method
2- Cart Total
*/

.checkout{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap; 
        flex-wrap: wrap;
    gap: 1.5rem;
}

.checkout .heading{
    -webkit-box-align: start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
}

.checkout h2{
    font-size: 3.5rem;
}

.checkout h2:before{
    left: 0;
    -webkit-transform: translateX(0%);
    -ms-transform: translateX(0%);
        transform: translateX(0%);
}

.checkout .box-1{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 55rem;
        flex: 1 1 55rem;  
}

.checkout .box-2{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 35rem;
        flex: 1 1 35rem;
}

.checkout-item{
    margin-bottom: 1.5rem;
    padding: 2rem;
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.checkout .box-1 .checkout-item:last-child{
    margin-bottom: 0;   
}

/*-- 1- Payment Method --*/
.payment-methods .payment{
    margin-bottom: 1.5rem;
}

.payment-methods .payment label{
    cursor: pointer;
    font-size: 2rem;
    font-weight: 500;
    color: var(--secondary-color);
    text-transform: uppercase;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
}

.payment-body{ 
    display: none;
}

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

.payment-methods .payment .payment-body p{
    font-size: 1.4rem;
    padding-top: 1rem;
}

.checkout .btn-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

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

/*----- 7- Login -----*/
.login form .info{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; 
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 2rem 0;
}
  
.login form label{
    font-size: 1.5rem;
    color: var(--white);
    cursor: pointer;
}
  
/*----- 8- Register -----*/
.register form .checkbox-label{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin: 2rem 0;
}
  
.register form label{
    font-size: 1.5rem;
    color: var(--white);
    cursor: pointer;
}
  
.register form label span{
    color: var(--main-color);
}

/*------------------------------ (07)-Shop (End) ------------------------------*/



/*------------------------------ (08)-Contact (Start) ------------------------------*/
.contact{
    padding: 2rem 0;
}

.contact .box-container{
    background: -webkit-linear-gradient(180deg, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.5)), url("../../assets/images/Background/Contact.jpg");
    background:         linear-gradient(180deg, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.5)), url("../../assets/images/Background/Contact.jpg");
    background-repeat: no-repeat;  
    background-size: cover;
    background-position: center;
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 4rem 5%;
    gap: 4rem;
}

/*-- Contact Information --*/
.contact-info{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 40rem;
        flex: 1 1 40rem;
}

.contact-info .contact-info-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2rem;
    padding-top: 2rem;
}

.contact .contact-info .info-item{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 25rem;
        flex: 1 1 25rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}

.contact .contact-info .info-item i{
    height: 8rem;
    width: 10rem;
    font-size: 3rem;
    line-height: 1.3;
    margin-bottom: 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: var(--white);
    background-color: var(--main-color);
    -webkit-clip-path: var(--custom-clip-path);
            clip-path: var(--custom-clip-path);
}

.contact .contact-info .info-item h3{
    font-size: 2.5rem;
    font-weight: 500;
    color: var(--white);
    padding-bottom: 0.7rem;
}

.contact .contact-info .info-item p{
    font-size: 1.6rem;
    color: var(--light-grey);
}

.contact .contact-info .info-item p.gmail{
    text-transform: none;
}

.contact .heading h2{
    color: var(--white);
}

.contact .heading{
    -webkit-box-align: start;
        -ms-flex-align: start;
                -ms-grid-row-align: flex-start;
            align-items: flex-start;
}

/*-- Contact Form --*/
.contact form{
    -webkit-box-flex: 1;
    -ms-flex: 1 1 40rem;
        flex: 1 1 40rem;
}

.contact form .alert{
    font-size: 1.6rem;
    color: var(--main-color);
    padding-left: 1rem;
} 

/*-- Google Map --*/
.contact iframe{
    width: 100%;
    height: 40rem;
    margin-top: 1rem;
}


/*------------------------------ (06)-Contact (End) ------------------------------*/

.top-games {
  padding: 60px 20px;
  background-color: #0e0f2c;
  color: #fff;
  text-align: center;
}

.top-games .heading h2 {
  font-size: 2.5rem;
  color: #ff1cad; 
  margin-bottom: 40px;
}

.top-games .heading span {
  color: #fff;
}

.games-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 20px;
}

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

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

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

.game-card {
  position: relative;
  overflow: hidden;
  border-radius: 12px;
  background-color: #1e1f3e;
  transition: transform 0.3s ease;
}

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

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

.overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(10, 10, 40, 0.75);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: 0.3s ease;
}

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

.btn-play {
  background-color: #ff1cad;
  color: #fff;
  padding: 10px 20px;
  border-radius: 30px;
  text-decoration: none;
  font-weight: bold;
  font-size: 0.95rem;
  transition: background 0.3s ease;
}

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

/* ==================  Promotions Section ================== */

.steugene-promos{
  padding:80px 20px; 
}

.steugene-promos .container{
  max-width:1200px;
  margin:auto;
}

.steugene-promos .heading.center{
  text-align:center;
  margin-bottom:60px;
}

.promo-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:40px;
}

.promo-column{
  display:flex;
  flex-direction:column;
  gap:25px;
}

.promo-card{
  background:rgba(0,0,0,0.03);
  border-radius:14px;
  padding:25px;
  border:1px solid rgba(0,0,0,0.06);
}

.promo-card.highlight{
  border:1px solid rgba(255,28,173,0.35);
}

.promo-card.soft{
  background:rgba(0,0,0,0.02);
}

.big-bonus{
  font-size:1.3rem;
  font-weight:700;
  color:#ff1cad;
  margin:10px 0;
}

.badge{
  display:inline-block;
  background:#ff1cad;
  color:#fff;
  padding:5px 12px;
  font-size:.75rem;
  border-radius:20px;
  margin-bottom:10px;
}

.badge.accent{
  background:#ffd000;
  color:#111;
}

.badge.small{
  font-size:.65rem;
  margin-right:8px;
}

.feature-list{
  display:flex;
  flex-direction:column;
  gap:18px;
}

.feature{
  display:flex;
  gap:15px;
  align-items:flex-start;
}

.feature i{
  color:#ff1cad;
  font-size:1.2rem;
  margin-top:4px;
}

.styled-list{
  list-style:none;
  padding:0;
  margin-top:10px;
}

.styled-list li{
  padding:8px 0;
  border-bottom:1px solid rgba(0,0,0,0.08);
}

.promo-list{
  list-style:none;
  padding:0;
  margin-top:10px;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.promo-list li{
  background:rgba(0,0,0,0.02);
  padding:12px 15px;
  border-radius:10px;
  line-height:1.5;
  border:1px solid rgba(0,0,0,0.05);
}

@media(max-width:900px){
  .promo-grid{
    grid-template-columns:1fr;
  }
}

.promo-column{
  display:flex;
  flex-direction:column;
  height:100%;
}

.promo-column .promo-card:last-child{
  margin-top:auto;   /* ВОТ ЭТО КЛЮЧ */
}

/* ================== Access & Registration Section ================== */

.steugene-access{
  padding:80px 20px;
}

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

.access-card{
  background:#ffffff;
  border-radius:16px;
  padding:30px;
  border:1px solid rgba(0,0,0,0.08);
  box-shadow:0 10px 30px rgba(0,0,0,0.05);
  position:relative;
}

.access-card.highlight{
  border:1px solid rgba(255,28,173,0.35);
}

.access-badge{
  display:inline-block;
  font-size:.75rem;
  padding:6px 12px;
  background:#f1f1f1;
  border-radius:20px;
  margin-bottom:12px;
}

.access-badge.accent{
  background:#ff1cad;
  color:#fff;
}

.access-list{
  list-style:none;
  padding:0;
  margin-top:15px;
}

.access-list li{
  display:flex;
  gap:10px;
  margin-bottom:10px;
}

.access-list i{
  color:#ff1cad;
  margin-top:4px;
}

/* STEPS DESIGN */
.access-steps{
  display:flex;
  flex-direction:column;
  gap:18px;
  margin-top:10px;
}

.step{
  display:flex;
  gap:15px;
  align-items:flex-start;
}

.step-number{
  min-width:36px;
  height:36px;
  border-radius:50%;
  background:#ff1cad;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:.8rem;
  font-weight:600;
}

/* RESPONSIVE */
@media(max-width:1000px){
  .access-grid{
    grid-template-columns:1fr;
  }
}

/* ================== Online Casino App ================== */

.steugene-app{
  padding:80px 20px;
}

.app-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:50px;
  margin-top:40px;
  align-items:start;
}

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

..app-image img{
  width:100%;
  border-radius:0;     
  box-shadow:none;     
}


/* FEATURES */
.app-features{
  display:flex;
  flex-direction:column;
  gap:18px;
}

.app-feature{
  display:flex;
  gap:15px;
  align-items:flex-start;
}

.app-feature i{
  color:#ff1cad;
  font-size:1.3rem;
  margin-top:4px;
}

/* INSTALL BLOCK */
.app-install{
  margin-top:10px;
}

.app-steps{
  list-style:none;
  padding:0;
  margin-top:10px;
}

.app-steps li{
  display:flex;
  gap:10px;
  margin-bottom:10px;
}

.store-buttons{
  display:flex;
  gap:15px;
  margin-top:15px;
}

.store-buttons img{
  height:48px;
  width:auto;
}

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

/* ================== Payments ================== */

.steugene-payments{
  padding:80px 20px;
  background:#fff;
}

.steugene-payments .container{
  max-width:1200px;
  margin:auto;
}

.steugene-payments .heading.center{
  text-align:center;
  margin-bottom:40px;
}

.payments-intro{
  max-width:900px;
  margin:0 auto 40px;
}

.payments-intro p{
  margin-bottom:15px;
}

/* TABLE */
.payments-table{
  background:#0e0f2c;
  padding:30px;
  border-radius:12px;
  color:#fff;
  margin-bottom:40px;
}

.payments-table table{
  width:100%;
  border-collapse:collapse;
}

.payments-table th,
.payments-table td{
  padding:15px;
  text-align:left;
}

.payments-table thead tr{
  border-bottom:1px solid #444;
}

/* INFO GRID */
.payments-info-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:30px;
}

.payments-info{
  background:#f7f7f9;
  border-radius:14px;
  padding:25px;
}

.payments-info h4{
  margin-bottom:10px;
}

.payments-info i{
  color:#ff1cad;
  margin-right:8px;
}

/* PAYMENT ICONS */
.payment-icon{
  width:70px;
  max-height:90px;
  display:block;
  margin:0 auto;
}

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

/* ================== Trust & Security Section ================== */

.steugene-trust{
  padding:90px 20px;
  background:#fff;
}

.steugene-trust .container{
  max-width:1200px;
  margin:auto;
}

.steugene-trust .heading.center{
  text-align:center;
  margin-bottom:50px;
}

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

.trust-card{
  background:#f7f7f9;
  border-radius:16px;
  padding:30px;
  transition:.3s ease;
}

.trust-card:hover{
  transform:translateY(-4px);
  box-shadow:0 15px 35px rgba(0,0,0,0.05);
}

.trust-card h3{
  margin-bottom:10px;
}

.trust-card i{
  color:#ff1cad;
  margin-right:8px;
}

.trust-card ul{
  margin-top:12px;
  padding-left:18px;
}

.trust-card ul li{
  margin-bottom:6px;
}

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

@media(max-width:700px){
  .trust-grid{
    grid-template-columns:1fr;
  }
}

/* ================== Resort Experience ================== */

.steugene-resort{
  padding:90px 20px;
  background:#fff;
}

.steugene-resort .container{
  max-width:1200px;
  margin:auto;
}

.steugene-resort .heading.center{
  text-align:center;
  margin-bottom:40px;
}

.resort-intro{
  max-width:900px;
  margin:0 auto 50px;
  text-align:center;
}

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

.resort-card{
  background:#f7f7f9;
  border-radius:16px;
  padding:30px;
  transition:.3s ease;
}

.resort-card:hover{
  transform:translateY(-5px);
  box-shadow:0 15px 35px rgba(0,0,0,0.05);
}

.resort-card i{
  color:#ff1cad;
  font-size:1.4rem;
  margin-bottom:10px;
  display:inline-block;
}

.resort-card h3{
  margin-bottom:10px;
}

/* RESPONSIVE */
@media(max-width:1000px){
  .resort-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:700px){
  .resort-grid{
    grid-template-columns:1fr;
  }
}

/* ================== FAQ Section ================== */

.steugene-faq{
  padding:90px 20px;
  background:#fff;
}

.faq-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:40px;
  margin-top:40px;
}

.faq-item{
  border-bottom:1px solid #eee;
}

.faq-question{
  width:100%;
  text-align:left;
  background:none;
  border:none;
  font-size:1rem;
  font-weight:600;
  padding:18px 0;
  cursor:pointer;
  position:relative;
}

.faq-question::after{
  content:"+";
  position:absolute;
  right:0;
  font-size:1.2rem;
  color:#ff1cad;
}

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

.faq-answer{
  max-height:0;
  overflow:hidden;
  transition:max-height .35s ease;
}

.faq-answer p{
  padding-bottom:15px;
}

/* RESPONSIVE */
@media(max-width:900px){
  .faq-grid{
    grid-template-columns:1fr;
  }
}
.faq-question{
  font-size:1.35rem;
  font-weight:600;
  letter-spacing:.2px;
}

/* Sponsor block container */
.sponsor-item{
  display:flex;
  align-items:center;
  justify-content:center;
  height:90px;       
  padding:10px;
}

.sponsor-item a{
  width:140px;        
  height:60px;        
  display:flex;
  align-items:center;
  justify-content:center;
}

/* Сами картинки */
.sponsor-item img{
  max-width:100%;
  max-height:100%;
  object-fit:contain;  
}

.hero-desc{
  font-size:1.05rem;
  line-height:1.6;
  margin:20px 0 30px;
}
.home .hero-desc{
  color:#fff;
  opacity:.9;
}
/* HERO DESCRIPTION SIZE — DESKTOP */
@media (min-width: 992px){

  .home .hero-desc{
    font-size:1.5rem;      /
    line-height:1.7;
    max-width:700px;       
  }

}
/* ==================== About Casino ==================== */

.casino-about {
    padding: 10rem 5%;
    background:
        radial-gradient(circle at 10% 20%, rgba(241, 18, 162, 0.10), transparent 32rem),
        radial-gradient(circle at 90% 80%, rgba(79, 23, 135, 0.18), transparent 38rem),
        #09090d;
    position: relative;
    overflow: hidden;
}

.about-shell {
    max-width: 1400px;
    margin: 0 auto;
}


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

.about-intro {
    display: grid;
    grid-template-columns: 0.95fr 1.05fr;
    gap: 7rem;
    align-items: center;
}

.about-image {
    position: relative;
    height: 58rem;
    overflow: hidden;
    border-radius: 2.4rem;
    box-shadow: 0 2rem 6rem rgba(0, 0, 0, 0.45);
}

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

.about-image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 0.02) 35%,
        rgba(0, 0, 0, 0.75) 100%
    );
}

.about-image-badge {
    position: absolute;
    left: 2.5rem;
    bottom: 2.5rem;
    z-index: 2;
    min-width: 17rem;
    padding: 1.8rem 2.2rem;
    background: rgba(8, 8, 12, 0.88);
    backdrop-filter: blur(12px);
    border-left: 3px solid var(--main-color);
    border-radius: 1rem;
}

.about-image-badge span,
.about-image-badge small {
    display: block;
    color: rgba(255, 255, 255, 0.6);
    font-size: 1.2rem;
    letter-spacing: 0.08rem;
}

.about-image-badge strong {
    display: block;
    margin: 0.2rem 0;
    color: #fff;
    font-size: 3.5rem;
    line-height: 1.1;
}


/* ==================== Main Text ==================== */

.about-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.7rem;
    color: var(--main-color);
    font-size: 1.5rem;
    font-weight: 600;
    letter-spacing: 0.15rem;
    text-transform: uppercase;
}

.about-eyebrow i {
    font-size: 1.2rem;
}

.about-content h2 {
    max-width: 70rem;
    margin-bottom: 2.5rem;
    color: #fff;
    font-size: clamp(3.5rem, 4vw, 5.3rem);
    font-weight: 600;
    line-height: 1.08;
}

.about-content p {
    margin-bottom: 1.7rem;
    color: rgba(255, 255, 255, 0.68);
    font-size: 1.65rem;
    line-height: 1.85;
}

.about-content .about-lead {
    color: rgba(255, 255, 255, 0.9);
    font-size: 1.85rem;
    line-height: 1.8;
}


/* ==================== Fact Cards ==================== */

.about-facts {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
    margin: 7rem 0;
}

.about-fact {
    display: flex;
    align-items: flex-start;
    gap: 1.6rem;
    min-height: 17rem;
    padding: 2.6rem 2.2rem;

    background: linear-gradient(
        145deg,
        rgba(255, 255, 255, 0.07),
        rgba(255, 255, 255, 0.025)
    );

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-bottom: 3px solid transparent;
    border-radius: 1.6rem;

    box-shadow: 0 1.5rem 4rem rgba(0, 0, 0, 0.22);
}

.about-fact:hover {
    transform: translateY(-5px);
    border-bottom-color: var(--main-color);
    background: linear-gradient(
        145deg,
        rgba(255, 255, 255, 0.1),
        rgba(255, 255, 255, 0.04)
    );
}

.fact-icon {
    flex: 0 0 5.2rem;
    width: 5.2rem;
    height: 5.2rem;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 1.2rem;

    color: #fff;
    background: linear-gradient(
        135deg,
        var(--secondary-color),
        var(--main-color)
    );

    box-shadow: 0 0.8rem 2.5rem rgba(241, 18, 162, 0.18);
    font-size: 2rem;
}

.about-fact span {
    display: block;
    margin-bottom: 0.5rem;
    color: rgba(255, 255, 255, 0.45);
    font-size: 1.2rem;
    text-transform: uppercase;
    letter-spacing: 0.1rem;
}

.about-fact h3 {
    margin-bottom: 0.7rem;
    color: #fff;
    font-size: 2.1rem;
    font-weight: 600;
}

.about-fact p {
    color: rgba(255, 255, 255, 0.6);
    font-size: 1.4rem;
    line-height: 1.55;
}


/* ==================== Detail Area ==================== */

.about-detail {
    display: grid;
    grid-template-columns: minmax(0, 1.6fr) minmax(32rem, 0.7fr);
    gap: 5rem;
    padding-top: 6rem;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.about-mini-title {
    display: inline-block;
    margin-bottom: 1.3rem;
    color: var(--main-color);
    font-size: 1.4rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.14rem;
}

.about-detail-content > h3 {
    margin-bottom: 2rem;
    color: #fff;
    font-size: 3.7rem;
    font-weight: 600;
    line-height: 1.2;
}

.about-detail-content > p {
    max-width: 82rem;
    margin-bottom: 1.6rem;
    color: rgba(255, 255, 255, 0.66);
    font-size: 1.6rem;
    line-height: 1.85;
}


/* ==================== Highlights ==================== */

.about-highlights {
    display: grid;
    gap: 1.3rem;
    margin-top: 3rem;
}

.highlight-item {
    display: grid;
    grid-template-columns: 5rem 1fr;
    gap: 1.6rem;
    align-items: start;

    padding: 2rem;

    background: rgba(255, 255, 255, 0.045);
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1.2rem;
}

.highlight-item:hover {
    background: rgba(255, 255, 255, 0.075);
    border-color: rgba(241, 18, 162, 0.25);
}

.highlight-item > i {
    width: 5rem;
    height: 5rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--main-color);
    background: rgba(241, 18, 162, 0.1);
    border-radius: 1rem;

    font-size: 2rem;
}

.highlight-item h4 {
    margin-bottom: 0.5rem;
    color: #fff;
    font-size: 1.8rem;
}

.highlight-item p {
    color: rgba(255, 255, 255, 0.58);
    font-size: 1.45rem;
    line-height: 1.65;
}


/* ==================== Operator Card ==================== */

.about-operator {
    align-self: start;
    padding: 3.5rem;

    background:
        radial-gradient(
            circle at top right,
            rgba(241, 18, 162, 0.15),
            transparent 18rem
        ),
        linear-gradient(
            145deg,
            #17111d,
            #0d0b11
        );

    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 2rem;

    box-shadow: 0 2rem 6rem rgba(0, 0, 0, 0.35);
}

.operator-label {
    display: block;
    margin-bottom: 1rem;
    color: rgba(255, 255, 255, 0.45);
    font-size: 1.2rem;
    letter-spacing: 0.12rem;
    text-transform: uppercase;
}

.about-operator > h3 {
    margin-bottom: 2.5rem;
    padding-bottom: 2rem;
    color: #fff;
    font-size: 2.7rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.operator-row {
    display: grid;
    grid-template-columns: 3.8rem 1fr;
    gap: 1.3rem;
    margin-bottom: 2rem;
}

.operator-row > i {
    width: 3.8rem;
    height: 3.8rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--main-color);
    background: rgba(255, 255, 255, 0.06);
    border-radius: 0.8rem;

    font-size: 1.5rem;
}

.operator-row span {
    display: block;
    margin-bottom: 0.3rem;
    color: rgba(255, 255, 255, 0.42);
    font-size: 1.15rem;
    text-transform: uppercase;
    letter-spacing: 0.05rem;
}

.operator-row p {
    color: rgba(255, 255, 255, 0.82);
    font-size: 1.4rem;
    line-height: 1.6;
}

.about-link {
    display: flex;
    align-items: center;
    justify-content: space-between;

    margin-top: 3rem;
    padding-top: 2rem;

    color: #fff;
    font-size: 1.5rem;
    font-weight: 500;

    border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.about-link i {
    color: var(--main-color);
}

.about-link:hover {
    color: var(--main-color);
}


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

@media (max-width: 1100px) {

    .about-intro {
        grid-template-columns: 1fr 1fr;
        gap: 4rem;
    }

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

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

    .about-operator {
        max-width: 65rem;
    }
}

@media (max-width: 768px) {

    .casino-about {
        padding: 7rem 5%;
    }

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

    .about-image {
        height: 45rem;
    }

    .about-content h2 {
        font-size: 3.6rem;
    }

    .about-facts {
        grid-template-columns: 1fr;
        margin: 5rem 0;
    }

    .about-fact {
        min-height: auto;
    }

    .about-detail {
        gap: 3.5rem;
        padding-top: 4rem;
    }

    .about-detail-content > h3 {
        font-size: 3rem;
    }
}

@media (max-width: 480px) {

    .about-image {
        height: 36rem;
    }

    .about-image-badge {
        left: 1.5rem;
        bottom: 1.5rem;
    }

    .about-operator {
        padding: 2.5rem 2rem;
    }
}
.casino-about {
    padding: 10rem 5%;
    background:
        radial-gradient(
            circle at 10% 15%,
            rgba(241, 18, 162, 0.13),
            transparent 34rem
        ),
        radial-gradient(
            circle at 90% 80%,
            rgba(126, 55, 190, 0.18),
            transparent 42rem
        ),
        linear-gradient(
            135deg,
            #160b24 0%,
            #211032 48%,
            #12081d 100%
        );
    position: relative;
    overflow: hidden;
}
/* =========================================================
   Casino Overview
========================================================= */

.casino-overview {
    padding: 10rem 5%;
    background:
        radial-gradient(circle at 100% 0%, rgba(79, 23, 135, 0.07), transparent 35rem),
        radial-gradient(circle at 0% 100%, rgba(241, 18, 162, 0.05), transparent 35rem),
        #f4f3f7;
}

.casino-overview-shell {
    max-width: 1400px;
    margin: 0 auto;
}


/* Heading */

.casino-overview-heading {
    max-width: 88rem;
    margin: 0 auto 6rem;
    text-align: center;
}

.casino-overview-label {
    display: inline-flex;
    align-items: center;
    gap: 0.9rem;
    margin-bottom: 1.6rem;

    color: var(--main-color);
    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 0.15rem;
    text-transform: uppercase;
}

.casino-overview-heading h2 {
    margin-bottom: 2rem;

    color: var(--secondary-color);
    font-size: clamp(3.7rem, 5vw, 5.5rem);
    font-weight: 600;
    line-height: 1.1;
}

.casino-overview-heading p {
    max-width: 80rem;
    margin: 0 auto;

    color: #666;
    font-size: 1.7rem;
    line-height: 1.85;
}


/* =========================================================
   Two Gaming Worlds
========================================================= */

.gaming-worlds {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
}

.gaming-world {
    position: relative;
    overflow: hidden;
    padding: 4rem;

    border-radius: 2rem;
    box-shadow: 0 1.5rem 4rem rgba(0, 0, 0, 0.08);
}

.gaming-world-machines {
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(241, 18, 162, 0.16),
            transparent 25rem
        ),
        #ffffff;

    border: 1px solid rgba(79, 23, 135, 0.08);
}

.gaming-world-live {
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(241, 18, 162, 0.16),
            transparent 28rem
        ),
        linear-gradient(
            145deg,
            #2c123f,
            #170b23
        );

    color: #fff;
}


/* Top */

.gaming-world-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 3rem;
}

.gaming-world-icon {
    width: 6rem;
    height: 6rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #fff;
    background: linear-gradient(
        135deg,
        var(--secondary-color),
        var(--main-color)
    );

    border-radius: 1.4rem;
    font-size: 2.4rem;
}

.gaming-world-number {
    color: rgba(79, 23, 135, 0.08);
    font-size: 7rem;
    font-weight: 700;
    line-height: 1;
}

.gaming-world-live .gaming-world-number {
    color: rgba(255, 255, 255, 0.06);
}


/* Typography */

.gaming-world-type {
    display: block;
    margin-bottom: 0.8rem;

    color: var(--main-color);
    font-size: 1.25rem;
    font-weight: 600;
    letter-spacing: 0.12rem;
    text-transform: uppercase;
}

.gaming-world h3 {
    margin-bottom: 1.5rem;

    color: var(--secondary-color);
    font-size: 3.3rem;
    font-weight: 600;
}

.gaming-world-live h3 {
    color: #fff;
}

.gaming-world > p {
    min-height: 11rem;
    margin-bottom: 2.8rem;

    color: #666;
    font-size: 1.55rem;
    line-height: 1.8;
}

.gaming-world-live > p {
    color: rgba(255, 255, 255, 0.67);
}


/* Machine Stats */

.gaming-world-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    margin-bottom: 2.5rem;
}

.world-stat {
    padding: 1.7rem 1.2rem;
    text-align: center;

    background: #f5f2f7;
    border-radius: 1rem;
}

.world-stat strong {
    display: block;
    margin-bottom: 0.4rem;

    color: var(--secondary-color);
    font-size: 2.5rem;
    line-height: 1;
}

.world-stat span {
    color: #777;
    font-size: 1.15rem;
    line-height: 1.4;
}


/* Classic Games */

.classic-games {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    margin-bottom: 2.5rem;
}

.classic-game {
    min-height: 8.4rem;
    padding: 1.5rem;

    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.8rem;

    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 1rem;
}

.classic-game i {
    color: var(--main-color);
    font-size: 1.7rem;
}

.classic-game span {
    color: rgba(255, 255, 255, 0.88);
    font-size: 1.3rem;
}


/* Hours */

.gaming-world-hours {
    display: flex;
    align-items: center;
    gap: 1.3rem;

    margin-bottom: 2.5rem;
    padding: 1.7rem 0;

    border-top: 1px solid rgba(0, 0, 0, 0.08);
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.gaming-world-live .gaming-world-hours {
    border-color: rgba(255, 255, 255, 0.1);
}

.gaming-world-hours > i {
    color: var(--main-color);
    font-size: 2rem;
}

.gaming-world-hours span {
    display: block;
    margin-bottom: 0.2rem;

    color: #888;
    font-size: 1.15rem;
    text-transform: uppercase;
    letter-spacing: 0.05rem;
}

.gaming-world-live .gaming-world-hours span {
    color: rgba(255, 255, 255, 0.45);
}

.gaming-world-hours strong {
    color: var(--secondary-color);
    font-size: 1.6rem;
}

.gaming-world-live .gaming-world-hours strong {
    color: #fff;
}


/* Links */

.gaming-world-link {
    display: inline-flex;
    align-items: center;
    gap: 1rem;

    color: var(--secondary-color);
    font-size: 1.45rem;
    font-weight: 600;
}

.gaming-world-link i {
    color: var(--main-color);
}

.gaming-world-live .gaming-world-link {
    color: #fff;
}

.gaming-world-link:hover {
    gap: 1.5rem;
    color: var(--main-color);
}


/* =========================================================
   Floor Map
========================================================= */

.casino-floor-map {
    display: grid;
    grid-template-columns: 0.65fr 1.35fr;
    gap: 5rem;

    margin-top: 7rem;
    padding: 5rem;

    background: #fff;
    border-radius: 2rem;
    box-shadow: 0 1.5rem 4rem rgba(0, 0, 0, 0.06);
}

.floor-map-intro {
    padding-right: 2rem;
}

.floor-map-intro > span {
    display: block;
    margin-bottom: 1rem;

    color: var(--main-color);
    font-size: 1.25rem;
    font-weight: 600;
    letter-spacing: 0.12rem;
    text-transform: uppercase;
}

.floor-map-intro h3 {
    margin-bottom: 1.5rem;

    color: var(--secondary-color);
    font-size: 3.2rem;
    line-height: 1.2;
}

.floor-map-intro p {
    color: #777;
    font-size: 1.5rem;
    line-height: 1.75;
}


/* Items */

.floor-map-items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

.floor-map-item {
    display: grid;
    grid-template-columns: 4.7rem 1fr auto;
    align-items: center;
    gap: 1.3rem;

    padding: 1.6rem;

    background: #f7f5f8;
    border: 1px solid transparent;
    border-radius: 1rem;
}

.floor-map-item:hover {
    transform: translateY(-2px);
    background: #fff;
    border-color: rgba(241, 18, 162, 0.25);
    box-shadow: 0 0.8rem 2rem rgba(0, 0, 0, 0.06);
}

.floor-map-icon {
    width: 4.7rem;
    height: 4.7rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--main-color);
    background: rgba(241, 18, 162, 0.08);
    border-radius: 0.9rem;

    font-size: 1.8rem;
}

.floor-map-item h4 {
    margin-bottom: 0.2rem;

    color: var(--secondary-color);
    font-size: 1.55rem;
}

.floor-map-item p {
    color: #888;
    font-size: 1.2rem;
    line-height: 1.4;
}

.floor-arrow {
    color: #aaa;
    font-size: 1.2rem;
}

.floor-map-item:hover .floor-arrow {
    color: var(--main-color);
}


/* =========================================================
   First Visit
========================================================= */

.casino-first-look {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 2.5rem;

    margin-top: 2rem;
    padding: 3rem 3.5rem;

    background:
        radial-gradient(
            circle at 100% 50%,
            rgba(241, 18, 162, 0.13),
            transparent 25rem
        ),
        linear-gradient(
            120deg,
            #29123c,
            #170a23
        );

    border-radius: 1.6rem;
}

.first-look-icon {
    width: 6rem;
    height: 6rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #fff;
    background: var(--main-color);
    border-radius: 50%;

    font-size: 2.2rem;
}

.first-look-content span {
    display: block;
    margin-bottom: 0.4rem;

    color: var(--main-color);
    font-size: 1.15rem;
    font-weight: 600;
    letter-spacing: 0.08rem;
    text-transform: uppercase;
}

.first-look-content h3 {
    margin-bottom: 0.7rem;

    color: #fff;
    font-size: 2rem;
    font-weight: 500;
}

.first-look-content p {
    max-width: 85rem;

    color: rgba(255, 255, 255, 0.62);
    font-size: 1.35rem;
    line-height: 1.65;
}

.first-look-link {
    display: inline-flex;
    align-items: center;
    gap: 1rem;

    padding: 1.3rem 1.8rem;

    color: #fff;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 0.8rem;

    font-size: 1.3rem;
    white-space: nowrap;
}

.first-look-link:hover {
    color: #fff;
    background: var(--main-color);
    border-color: var(--main-color);
}


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

@media (max-width: 1100px) {

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

    .gaming-world > p {
        min-height: auto;
    }

    .casino-floor-map {
        grid-template-columns: 1fr;
        gap: 3rem;
    }
}


@media (max-width: 768px) {

    .casino-overview {
        padding: 7rem 5%;
    }

    .gaming-world {
        padding: 3rem 2.5rem;
    }

    .gaming-world-stats,
    .classic-games {
        grid-template-columns: 1fr;
    }

    .world-stat {
        text-align: left;
    }

    .classic-game {
        min-height: auto;
        flex-direction: row;
        justify-content: flex-start;
        align-items: center;
    }

    .casino-floor-map {
        padding: 3rem 2.5rem;
    }

    .floor-map-items {
        grid-template-columns: 1fr;
    }

    .casino-first-look {
        grid-template-columns: auto 1fr;
    }

    .first-look-link {
        grid-column: 1 / -1;
        justify-content: center;
    }
}


@media (max-width: 480px) {

    .casino-overview-heading h2 {
        font-size: 3.4rem;
    }

    .gaming-world {
        padding: 2.5rem 2rem;
    }

    .gaming-world-number {
        font-size: 5rem;
    }

    .gaming-world h3 {
        font-size: 2.7rem;
    }

    .casino-floor-map {
        padding: 2.5rem 1.8rem;
    }

    .floor-map-item {
        grid-template-columns: 4.5rem 1fr;
    }

    .floor-arrow {
        display: none;
    }

    .casino-first-look {
        grid-template-columns: 1fr;
        padding: 2.5rem 2rem;
    }
}
/* ==================== Casino Overview — Dark ==================== */

.casino-overview {
    padding: 10rem 5%;
    background:
        radial-gradient(
            circle at 95% 10%,
            rgba(241, 18, 162, 0.10),
            transparent 36rem
        ),
        radial-gradient(
            circle at 5% 85%,
            rgba(104, 48, 158, 0.16),
            transparent 42rem
        ),
        linear-gradient(
            135deg,
            #13091f 0%,
            #1d0d2d 50%,
            #11081b 100%
        );
}

.casino-overview-shell {
    max-width: 1400px;
    margin: 0 auto;
}


/* Heading */

.casino-overview-heading h2 {
    color: #fff;
}

.casino-overview-heading p {
    color: rgba(255, 255, 255, 0.68);
}


/* ==================== Gaming Worlds ==================== */

.gaming-world-machines {
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(241, 18, 162, 0.12),
            transparent 27rem
        ),
        linear-gradient(
            145deg,
            #28113b,
            #190c27
        );

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

.gaming-world-live {
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(241, 18, 162, 0.16),
            transparent 28rem
        ),
        linear-gradient(
            145deg,
            #321548,
            #1c0c2b
        );

    border: 1px solid rgba(255, 255, 255, 0.09);
}

.gaming-world {
    box-shadow: 0 1.8rem 5rem rgba(0, 0, 0, 0.28);
}

.gaming-world-number,
.gaming-world-live .gaming-world-number {
    color: rgba(255, 255, 255, 0.055);
}

.gaming-world h3,
.gaming-world-live h3 {
    color: #fff;
}

.gaming-world > p,
.gaming-world-live > p {
    color: rgba(255, 255, 255, 0.65);
}


/* Machine Stats */

.world-stat {
    background: rgba(255, 255, 255, 0.055);
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.world-stat strong {
    color: #fff;
}

.world-stat span {
    color: rgba(255, 255, 255, 0.52);
}


/* Classic Games */

.classic-game {
    background: rgba(255, 255, 255, 0.055);
    border: 1px solid rgba(255, 255, 255, 0.07);
}

.classic-game span {
    color: rgba(255, 255, 255, 0.88);
}


/* Hours */

.gaming-world-hours,
.gaming-world-live .gaming-world-hours {
    border-color: rgba(255, 255, 255, 0.09);
}

.gaming-world-hours span,
.gaming-world-live .gaming-world-hours span {
    color: rgba(255, 255, 255, 0.42);
}

.gaming-world-hours strong,
.gaming-world-live .gaming-world-hours strong {
    color: #fff;
}

.gaming-world-link,
.gaming-world-live .gaming-world-link {
    color: #fff;
}

.gaming-world-link:hover {
    color: var(--main-color);
}


/* ==================== What You Can Play ==================== */

.casino-floor-map {
    background:
        radial-gradient(
            circle at 0% 100%,
            rgba(79, 23, 135, 0.2),
            transparent 30rem
        ),
        rgba(29, 13, 44, 0.92);

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

    box-shadow: 0 1.8rem 5rem rgba(0, 0, 0, 0.25);
}

.floor-map-intro h3 {
    color: #fff;
}

.floor-map-intro p {
    color: rgba(255, 255, 255, 0.6);
}


/* Game Cards */

.floor-map-item {
    background: rgba(255, 255, 255, 0.045);
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.floor-map-item:hover {
    background: rgba(255, 255, 255, 0.075);
    border-color: rgba(241, 18, 162, 0.3);

    box-shadow:
        0 1rem 2.5rem rgba(0, 0, 0, 0.2),
        0 0 2rem rgba(241, 18, 162, 0.05);
}

.floor-map-icon {
    color: var(--main-color);
    background: rgba(241, 18, 162, 0.1);
}

.floor-map-item h4 {
    color: #fff;
}

.floor-map-item p {
    color: rgba(255, 255, 255, 0.48);
}

.floor-arrow {
    color: rgba(255, 255, 255, 0.3);
}


/* ==================== First Visit ==================== */

.casino-first-look {
    background:
        radial-gradient(
            circle at 100% 50%,
            rgba(241, 18, 162, 0.16),
            transparent 28rem
        ),
        linear-gradient(
            120deg,
            #34154c,
            #1a0b29
        );

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

.first-look-content h3 {
    color: #fff;
}

.first-look-content p {
    color: rgba(255, 255, 255, 0.62);
}
/* =========================================================
   Slots & Electronic Gaming
========================================================= */

.slots-section {
    padding: 10rem 5%;

    background:
        radial-gradient(
            circle at 0% 15%,
            rgba(241, 18, 162, 0.09),
            transparent 36rem
        ),
        radial-gradient(
            circle at 100% 75%,
            rgba(99, 40, 151, 0.16),
            transparent 42rem
        ),
        linear-gradient(
            135deg,
            #11081b 0%,
            #1a0b29 50%,
            #12081d 100%
        );
}

.slots-shell {
    max-width: 1400px;
    margin: 0 auto;
}


/* =========================================================
   Heading
========================================================= */

.slots-heading {
    max-width: 90rem;
    margin-bottom: 6rem;
}

.slots-label {
    display: inline-flex;
    align-items: center;
    gap: 1rem;

    margin-bottom: 1.6rem;

    color: var(--main-color);

    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 0.14rem;
    text-transform: uppercase;
}

.slots-heading h2 {
    max-width: 85rem;
    margin-bottom: 2rem;

    color: #fff;

    font-size: clamp(3.8rem, 5vw, 5.6rem);
    font-weight: 600;
    line-height: 1.1;
}

.slots-heading p {
    max-width: 85rem;

    color: rgba(255, 255, 255, 0.67);

    font-size: 1.7rem;
    line-height: 1.85;
}


/* =========================================================
   Stats
========================================================= */

.slots-stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 1.5rem;
    margin-bottom: 6rem;
}

.slots-stat {
    padding: 2.7rem 2.3rem;

    background:
        linear-gradient(
            145deg,
            rgba(85, 39, 119, 0.36),
            rgba(35, 14, 54, 0.65)
        );

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1.5rem;
}

.slots-stat-icon {
    width: 5rem;
    height: 5rem;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 2.5rem;

    color: var(--main-color);
    background: rgba(241, 18, 162, 0.10);

    border: 1px solid rgba(241, 18, 162, 0.15);
    border-radius: 1rem;

    font-size: 2rem;
}

.slots-stat > span {
    display: block;

    margin-bottom: 0.7rem;

    color: rgba(255, 255, 255, 0.42);

    font-size: 1.15rem;
    font-weight: 500;
    letter-spacing: 0.08rem;
    text-transform: uppercase;
}

.slots-stat h3 {
    margin-bottom: 0.8rem;

    color: #fff;

    font-size: 3rem;
    font-weight: 600;
    line-height: 1;
}

.slots-stat p {
    color: rgba(255, 255, 255, 0.55);

    font-size: 1.35rem;
    line-height: 1.6;
}


/* =========================================================
   Main Formats
========================================================= */

.slots-formats {
    display: grid;
    grid-template-columns: repeat(2, 1fr);

    gap: 2rem;
}

.slot-format {
    padding: 4rem;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(241, 18, 162, 0.08),
            transparent 24rem
        ),
        linear-gradient(
            145deg,
            #271138,
            #180b25
        );

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 2rem;

    box-shadow: 0 1.5rem 4rem rgba(0, 0, 0, 0.2);
}

.slot-format-main {
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(241, 18, 162, 0.14),
            transparent 28rem
        ),
        linear-gradient(
            145deg,
            #311546,
            #1b0c29
        );
}

.slot-format-wide {
    grid-column: 1 / -1;
}

.slot-format-header {
    display: flex;
    align-items: center;
    gap: 1.5rem;

    margin-bottom: 2.5rem;
}

.slot-format-icon {
    width: 5.5rem;
    height: 5.5rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #fff;

    background:
        linear-gradient(
            135deg,
            var(--secondary-color),
            var(--main-color)
        );

    border-radius: 1.2rem;

    font-size: 2.2rem;
}

.slot-format-header > span {
    color: var(--main-color);

    font-size: 1.2rem;
    font-weight: 600;
    letter-spacing: 0.11rem;
    text-transform: uppercase;
}

.slot-format h3 {
    margin-bottom: 1.7rem;

    color: #fff;

    font-size: 3rem;
    font-weight: 600;
    line-height: 1.2;
}

.slot-format > p {
    margin-bottom: 1.5rem;

    color: rgba(255, 255, 255, 0.63);

    font-size: 1.55rem;
    line-height: 1.8;
}


/* Note */

.slot-format-note {
    display: grid;
    grid-template-columns: 4.2rem 1fr;
    gap: 1.5rem;

    align-items: start;

    margin-top: 2.5rem;
    padding: 1.8rem;

    background: rgba(255, 255, 255, 0.045);

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1rem;
}

.slot-format-note i {
    width: 4.2rem;
    height: 4.2rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--main-color);

    background: rgba(241, 18, 162, 0.08);

    border-radius: 0.8rem;

    font-size: 1.6rem;
}

.slot-format-note p {
    color: rgba(255, 255, 255, 0.56);

    font-size: 1.35rem;
    line-height: 1.65;
}


/* =========================================================
   Multi Roulette
========================================================= */

.multi-roulette-facts {
    display: grid;
    grid-template-columns: repeat(3, 1fr);

    gap: 1rem;
    margin-top: 3rem;
}

.multi-roulette-facts > div {
    padding: 2rem;

    background: rgba(255, 255, 255, 0.045);

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1rem;
}

.multi-roulette-facts span {
    display: block;

    margin-bottom: 0.6rem;

    color: rgba(255, 255, 255, 0.42);

    font-size: 1.15rem;
    letter-spacing: 0.06rem;
    text-transform: uppercase;
}

.multi-roulette-facts strong {
    color: #fff;

    font-size: 2.4rem;
    font-weight: 600;
}


/* =========================================================
   Beginner Explanation
========================================================= */

.slots-beginner {
    margin-top: 6rem;
    padding: 4.5rem;

    background:
        linear-gradient(
            145deg,
            rgba(52, 22, 75, 0.88),
            rgba(25, 10, 38, 0.94)
        );

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 2rem;
}

.slots-beginner-heading {
    max-width: 55rem;
    margin-bottom: 3rem;
}

.slots-beginner-heading span {
    display: block;

    margin-bottom: 0.7rem;

    color: var(--main-color);

    font-size: 1.2rem;
    font-weight: 600;
    letter-spacing: 0.1rem;
    text-transform: uppercase;
}

.slots-beginner-heading h3 {
    color: #fff;

    font-size: 3rem;
    font-weight: 600;
}

.slots-beginner-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);

    gap: 1.5rem;
}

.beginner-item {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 1.5rem;

    padding: 2rem;

    background: rgba(255, 255, 255, 0.04);

    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 1rem;
}

.beginner-number {
    color: rgba(241, 18, 162, 0.5);

    font-size: 2rem;
    font-weight: 600;
    line-height: 1;
}

.beginner-item h4 {
    margin-bottom: 0.7rem;

    color: #fff;

    font-size: 1.65rem;
    font-weight: 500;
}

.beginner-item p {
    color: rgba(255, 255, 255, 0.53);

    font-size: 1.35rem;
    line-height: 1.65;
}


/* =========================================================
   Staff Support
========================================================= */

.slots-support {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 2rem;

    align-items: center;

    margin-top: 2rem;
    padding: 3rem 3.5rem;

    background:
        radial-gradient(
            circle at 100% 50%,
            rgba(241, 18, 162, 0.10),
            transparent 24rem
        ),
        #20102f;

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1.5rem;
}

.slots-support-icon {
    width: 6rem;
    height: 6rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--main-color);

    background: rgba(241, 18, 162, 0.09);

    border: 1px solid rgba(241, 18, 162, 0.14);
    border-radius: 50%;

    font-size: 2.2rem;
}

.slots-support span {
    display: block;

    margin-bottom: 0.4rem;

    color: var(--main-color);

    font-size: 1.1rem;
    font-weight: 600;
    letter-spacing: 0.08rem;
    text-transform: uppercase;
}

.slots-support h3 {
    margin-bottom: 0.6rem;

    color: #fff;

    font-size: 2rem;
    font-weight: 500;
}

.slots-support p {
    max-width: 90rem;

    color: rgba(255, 255, 255, 0.55);

    font-size: 1.4rem;
    line-height: 1.65;
}


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

@media (max-width: 1100px) {

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

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


@media (max-width: 768px) {

    .slots-section {
        padding: 7rem 5%;
    }

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

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

    .slot-format-wide {
        grid-column: auto;
    }

    .slot-format {
        padding: 3rem 2.5rem;
    }

    .multi-roulette-facts {
        grid-template-columns: 1fr;
    }

    .slots-beginner {
        padding: 3rem 2.5rem;
    }

    .slots-support {
        align-items: start;
    }
}


@media (max-width: 480px) {

    .slots-heading h2 {
        font-size: 3.4rem;
    }

    .slot-format {
        padding: 2.5rem 2rem;
    }

    .slot-format h3 {
        font-size: 2.5rem;
    }

    .slots-beginner {
        padding: 2.5rem 2rem;
    }

    .beginner-item {
        grid-template-columns: 1fr;
    }

    .slots-support {
        grid-template-columns: 1fr;
        padding: 2.5rem 2rem;
    }
}
/* =========================================================
   Jackpots
========================================================= */

.jackpots-section {
    padding: 10rem 5%;

    background:
        radial-gradient(
            circle at 92% 10%,
            rgba(241, 18, 162, 0.11),
            transparent 38rem
        ),
        radial-gradient(
            circle at 5% 75%,
            rgba(99, 40, 151, 0.18),
            transparent 42rem
        ),
        linear-gradient(
            135deg,
            #160a22 0%,
            #211031 48%,
            #12081d 100%
        );
}

.jackpots-shell {
    max-width: 1400px;
    margin: 0 auto;
}


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

.jackpots-intro {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    gap: 6rem;
    align-items: center;
}


/* Image */

.jackpots-image {
    position: relative;

    height: 58rem;

    overflow: hidden;

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 2rem;

    box-shadow: 0 2rem 6rem rgba(0, 0, 0, 0.35);
}

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

.jackpots-image-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(14, 5, 21, 0.05) 30%,
            rgba(20, 7, 30, 0.9) 100%
        );
}

.jackpots-image-info {
    position: absolute;
    left: 3rem;
    right: 3rem;
    bottom: 3rem;

    z-index: 2;
}

.jackpots-image-info > span {
    display: block;

    margin-bottom: 1rem;

    color: var(--main-color);

    font-size: 1.2rem;
    font-weight: 600;

    letter-spacing: 0.12rem;
    text-transform: uppercase;
}

.jackpots-image-stat {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.jackpots-image-stat strong {
    color: #fff;

    font-size: 5rem;
    font-weight: 600;
    line-height: 1;
}

.jackpots-image-stat p {
    max-width: 22rem;

    color: rgba(255, 255, 255, 0.7);

    font-size: 1.3rem;
    line-height: 1.5;
}


/* =========================================================
   Text
========================================================= */

.jackpots-label {
    display: inline-flex;
    align-items: center;
    gap: 1rem;

    margin-bottom: 1.6rem;

    color: var(--main-color);

    font-size: 1.4rem;
    font-weight: 600;

    letter-spacing: 0.14rem;
    text-transform: uppercase;
}

.jackpots-content h2 {
    max-width: 72rem;

    margin-bottom: 2.3rem;

    color: #fff;

    font-size: clamp(3.7rem, 5vw, 5.3rem);
    font-weight: 600;
    line-height: 1.1;
}

.jackpots-content > p {
    margin-bottom: 1.5rem;

    color: rgba(255, 255, 255, 0.62);

    font-size: 1.55rem;
    line-height: 1.82;
}

.jackpots-content .jackpots-lead {
    color: rgba(255, 255, 255, 0.88);

    font-size: 1.75rem;
}


/* Key Facts */

.jackpots-key-facts {
    display: grid;
    gap: 1rem;

    margin-top: 3rem;
}

.jackpot-key-fact {
    display: grid;
    grid-template-columns: 4.8rem 1fr;

    gap: 1.4rem;
    align-items: center;

    padding: 1.6rem;

    background: rgba(255, 255, 255, 0.04);

    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 1rem;
}

.jackpot-key-fact > i {
    width: 4.8rem;
    height: 4.8rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--main-color);

    background: rgba(241, 18, 162, 0.09);

    border-radius: 0.9rem;

    font-size: 1.7rem;
}

.jackpot-key-fact span {
    display: block;

    margin-bottom: 0.2rem;

    color: rgba(255, 255, 255, 0.4);

    font-size: 1.1rem;

    letter-spacing: 0.07rem;
    text-transform: uppercase;
}

.jackpot-key-fact strong {
    color: #fff;

    font-size: 1.5rem;
    font-weight: 500;
}


/* =========================================================
   Systems
========================================================= */

.jackpot-systems {
    margin-top: 8rem;
}

.jackpot-systems-heading {
    max-width: 76rem;
    margin-bottom: 4rem;
}

.jackpot-systems-heading > span {
    display: block;

    margin-bottom: 0.8rem;

    color: var(--main-color);

    font-size: 1.2rem;
    font-weight: 600;

    letter-spacing: 0.11rem;
    text-transform: uppercase;
}

.jackpot-systems-heading h3 {
    margin-bottom: 1.5rem;

    color: #fff;

    font-size: 3.6rem;
    font-weight: 600;
}

.jackpot-systems-heading p {
    color: rgba(255, 255, 255, 0.58);

    font-size: 1.5rem;
    line-height: 1.75;
}


.jackpot-systems-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 1.4rem;
}

.jackpot-system {
    min-height: 19rem;

    padding: 2.4rem;

    background:
        linear-gradient(
            145deg,
            rgba(74, 32, 104, 0.4),
            rgba(32, 13, 49, 0.75)
        );

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1.4rem;
}

.jackpot-system-featured {
    grid-column: span 2;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(241, 18, 162, 0.16),
            transparent 22rem
        ),
        linear-gradient(
            145deg,
            #38184d,
            #20102e
        );
}

.jackpot-system-icon {
    width: 4.8rem;
    height: 4.8rem;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 2rem;

    color: var(--main-color);

    background: rgba(241, 18, 162, 0.09);

    border-radius: 1rem;

    font-size: 1.8rem;
}

.jackpot-system > span {
    display: block;

    margin-bottom: 0.5rem;

    color: rgba(255, 255, 255, 0.38);

    font-size: 1rem;
    font-weight: 500;

    letter-spacing: 0.08rem;
    text-transform: uppercase;
}

.jackpot-system h4 {
    color: #fff;

    font-size: 1.7rem;
    font-weight: 500;
    line-height: 1.3;
}

.jackpot-system p {
    margin-top: 1rem;

    color: rgba(255, 255, 255, 0.52);

    font-size: 1.3rem;
    line-height: 1.6;
}


/* =========================================================
   Mystery Jackpot
========================================================= */

.mystery-jackpot {
    display: grid;
    grid-template-columns: auto 1fr;

    gap: 2.5rem;
    align-items: center;

    margin-top: 6rem;
    padding: 4rem;

    background:
        radial-gradient(
            circle at 100% 50%,
            rgba(241, 18, 162, 0.13),
            transparent 30rem
        ),
        linear-gradient(
            120deg,
            #321446,
            #1b0c28
        );

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 1.8rem;
}

.mystery-jackpot-icon {
    width: 7rem;
    height: 7rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #fff;

    background:
        linear-gradient(
            135deg,
            var(--secondary-color),
            var(--main-color)
        );

    border-radius: 1.5rem;

    font-size: 2.6rem;
}

.mystery-jackpot-content span {
    display: block;

    margin-bottom: 0.5rem;

    color: var(--main-color);

    font-size: 1.1rem;
    font-weight: 600;

    letter-spacing: 0.1rem;
    text-transform: uppercase;
}

.mystery-jackpot-content h3 {
    margin-bottom: 1rem;

    color: #fff;

    font-size: 2.7rem;
    font-weight: 600;
}

.mystery-jackpot-content p {
    max-width: 95rem;

    color: rgba(255, 255, 255, 0.6);

    font-size: 1.45rem;
    line-height: 1.75;
}


/* =========================================================
   Values
========================================================= */

.jackpot-values {
    display: grid;
    grid-template-columns: 0.65fr 1.35fr;

    gap: 5rem;

    margin-top: 2rem;
    padding: 4rem;

    background: rgba(255, 255, 255, 0.035);

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1.5rem;
}

.jackpot-values-heading {
    display: grid;
    grid-template-columns: 4.8rem 1fr;

    gap: 1.5rem;
}

.jackpot-values-heading > i {
    width: 4.8rem;
    height: 4.8rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--main-color);

    background: rgba(241, 18, 162, 0.08);

    border-radius: 1rem;

    font-size: 1.8rem;
}

.jackpot-values-heading span {
    display: block;

    margin-bottom: 0.5rem;

    color: var(--main-color);

    font-size: 1rem;
    font-weight: 600;

    letter-spacing: 0.08rem;
    text-transform: uppercase;
}

.jackpot-values-heading h3 {
    color: #fff;

    font-size: 2.2rem;
    line-height: 1.3;
}

.jackpot-values-content p {
    margin-bottom: 1.2rem;

    color: rgba(255, 255, 255, 0.56);

    font-size: 1.4rem;
    line-height: 1.7;
}

.jackpot-values-content p:last-child {
    margin-bottom: 0;
}


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

@media (max-width: 1100px) {

    .jackpots-intro {
        grid-template-columns: 1fr 1fr;
        gap: 4rem;
    }

    .jackpot-systems-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}


@media (max-width: 850px) {

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

    .jackpots-image {
        height: 48rem;
    }

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

    .jackpot-values {
        grid-template-columns: 1fr;
        gap: 2.5rem;
    }
}


@media (max-width: 600px) {

    .jackpots-section {
        padding: 7rem 5%;
    }

    .jackpots-image {
        height: 38rem;
    }

    .jackpots-content h2 {
        font-size: 3.5rem;
    }

    .jackpot-systems-grid {
        grid-template-columns: 1fr;
    }

    .jackpot-system-featured {
        grid-column: auto;
    }

    .mystery-jackpot {
        grid-template-columns: 1fr;
        padding: 3rem 2.5rem;
    }

    .jackpot-values {
        padding: 3rem 2.5rem;
    }
}

/* =========================================================
   Live Table Games
========================================================= */

.table-games-section {
    padding: 10rem 5%;

    background:
        radial-gradient(
            circle at 90% 15%,
            rgba(241, 18, 162, 0.1),
            transparent 38rem
        ),
        radial-gradient(
            circle at 5% 85%,
            rgba(91, 37, 139, 0.2),
            transparent 42rem
        ),
        linear-gradient(
            135deg,
            #12081d 0%,
            #1c0d2b 50%,
            #13091f 100%
        );
}

.table-games-shell {
    max-width: 1400px;
    margin: 0 auto;
}


/* Heading */

.table-games-heading {
    max-width: 90rem;
    margin-bottom: 6rem;
}

.table-games-label {
    display: inline-flex;
    align-items: center;
    gap: 1rem;

    margin-bottom: 1.6rem;

    color: var(--main-color);

    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 0.14rem;
    text-transform: uppercase;
}

.table-games-heading h2 {
    margin-bottom: 2rem;

    color: #fff;

    font-size: clamp(3.8rem, 5vw, 5.6rem);
    font-weight: 600;
    line-height: 1.1;
}

.table-games-heading p {
    max-width: 86rem;
    margin-bottom: 1.4rem;

    color: rgba(255, 255, 255, 0.64);

    font-size: 1.6rem;
    line-height: 1.82;
}


/* =========================================================
   Overview Stats
========================================================= */

.table-games-overview {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 1.5rem;
    margin-bottom: 6rem;
}

.table-overview-stat {
    padding: 2.7rem 2.3rem;

    background:
        linear-gradient(
            145deg,
            rgba(79, 34, 111, 0.42),
            rgba(31, 13, 47, 0.7)
        );

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1.4rem;
}

.table-overview-stat span {
    display: block;

    margin-bottom: 1rem;

    color: rgba(255, 255, 255, 0.42);

    font-size: 1.1rem;
    font-weight: 500;
    letter-spacing: 0.08rem;
    text-transform: uppercase;
}

.table-overview-stat strong {
    display: block;

    margin-bottom: 0.7rem;

    color: #fff;

    font-size: 2.8rem;
    font-weight: 600;
    line-height: 1.1;
}

.table-overview-stat p {
    color: rgba(255, 255, 255, 0.52);

    font-size: 1.3rem;
    line-height: 1.5;
}


/* =========================================================
   Game Cards
========================================================= */

.table-games-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);

    gap: 2rem;
}

.table-game-card {
    padding: 4rem;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(241, 18, 162, 0.08),
            transparent 25rem
        ),
        linear-gradient(
            145deg,
            #28113a,
            #180b25
        );

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 2rem;

    box-shadow: 0 1.5rem 4rem rgba(0, 0, 0, 0.2);
}

.table-game-featured {
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(241, 18, 162, 0.15),
            transparent 28rem
        ),
        linear-gradient(
            145deg,
            #35164d,
            #1d0d2c
        );
}

.table-game-poker {
    grid-column: 1 / -1;
}


/* Header */

.table-game-top {
    display: flex;
    align-items: center;
    gap: 1.5rem;

    margin-bottom: 2.5rem;
}

.table-game-icon {
    width: 5.5rem;
    height: 5.5rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #fff;

    background:
        linear-gradient(
            135deg,
            var(--secondary-color),
            var(--main-color)
        );

    border-radius: 1.2rem;

    font-size: 2.1rem;
}

.table-game-top > span {
    color: var(--main-color);

    font-size: 1.1rem;
    font-weight: 600;
    letter-spacing: 0.1rem;
    text-transform: uppercase;
}


/* Typography */

.table-game-card h3 {
    margin-bottom: 1.6rem;

    color: #fff;

    font-size: 3rem;
    font-weight: 600;
}

.table-game-card > p {
    margin-bottom: 2.5rem;

    color: rgba(255, 255, 255, 0.62);

    font-size: 1.5rem;
    line-height: 1.8;
}


/* Game Data */

.table-game-data {
    display: grid;
    grid-template-columns: repeat(3, 1fr);

    gap: 1rem;
    margin-bottom: 2rem;
}

.table-game-data > div {
    padding: 1.7rem;

    background: rgba(255, 255, 255, 0.045);

    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 1rem;
}

.table-game-data span {
    display: block;

    margin-bottom: 0.5rem;

    color: rgba(255, 255, 255, 0.4);

    font-size: 1rem;
    letter-spacing: 0.06rem;
    text-transform: uppercase;
}

.table-game-data strong {
    color: #fff;

    font-size: 1.5rem;
    font-weight: 500;
}


/* Limits */

.table-limit-list {
    display: grid;
    gap: 0.7rem;
}

.table-limit-row {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 2rem;

    padding: 1.4rem 1.6rem;

    background: rgba(255, 255, 255, 0.035);

    border-left: 2px solid rgba(241, 18, 162, 0.55);
    border-radius: 0.5rem;
}

.table-limit-row span {
    color: rgba(255, 255, 255, 0.54);

    font-size: 1.3rem;
}

.table-limit-row strong {
    color: #fff;

    font-size: 1.35rem;
    font-weight: 500;
}


/* Notes */

.table-game-note {
    display: grid;
    grid-template-columns: 4.2rem 1fr;

    gap: 1.4rem;
    align-items: center;

    margin-top: 2rem;
    padding: 1.6rem;

    background: rgba(255, 255, 255, 0.04);

    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 1rem;
}

.table-game-note i {
    width: 4.2rem;
    height: 4.2rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--main-color);

    background: rgba(241, 18, 162, 0.09);

    border-radius: 0.8rem;

    font-size: 1.6rem;
}

.table-game-note p {
    color: rgba(255, 255, 255, 0.54);

    font-size: 1.3rem;
    line-height: 1.6;
}


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

.classic-hours {
    display: grid;
    grid-template-columns: auto 1fr auto;

    gap: 2.5rem;
    align-items: center;

    margin-top: 6rem;
    padding: 3.5rem;

    background:
        radial-gradient(
            circle at 100% 50%,
            rgba(241, 18, 162, 0.12),
            transparent 28rem
        ),
        linear-gradient(
            120deg,
            #321548,
            #1a0c28
        );

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 1.6rem;
}

.classic-hours-icon {
    width: 6rem;
    height: 6rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--main-color);

    background: rgba(241, 18, 162, 0.1);

    border-radius: 50%;

    font-size: 2.2rem;
}

.classic-hours-main > span,
.classic-hours-poker span {
    display: block;

    margin-bottom: 0.5rem;

    color: var(--main-color);

    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.09rem;
    text-transform: uppercase;
}

.classic-hours-main h3 {
    margin-bottom: 0.7rem;

    color: #fff;

    font-size: 2.2rem;
    font-weight: 500;
}

.classic-hours-main p {
    max-width: 82rem;

    color: rgba(255, 255, 255, 0.55);

    font-size: 1.35rem;
    line-height: 1.65;
}

.classic-hours-poker {
    min-width: 13rem;

    padding-left: 2.5rem;

    border-left: 1px solid rgba(255, 255, 255, 0.1);
}

.classic-hours-poker strong {
    color: #fff;

    font-size: 2.4rem;
    font-weight: 600;
}


/* =========================================================
   First Visit
========================================================= */

.table-games-first-visit {
    margin-top: 2rem;
    padding: 4rem;

    background: rgba(255, 255, 255, 0.035);

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1.6rem;
}

.table-games-first-heading {
    margin-bottom: 3rem;
}

.table-games-first-heading span {
    display: block;

    margin-bottom: 0.7rem;

    color: var(--main-color);

    font-size: 1.1rem;
    font-weight: 600;
    letter-spacing: 0.1rem;
    text-transform: uppercase;
}

.table-games-first-heading h3 {
    color: #fff;

    font-size: 2.8rem;
    font-weight: 600;
}

.table-first-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);

    gap: 1.5rem;
}

.table-first-item {
    display: grid;
    grid-template-columns: auto 1fr;

    gap: 1.4rem;

    padding: 2rem;

    background: rgba(255, 255, 255, 0.035);

    border: 1px solid rgba(255, 255, 255, 0.05);
    border-radius: 1rem;
}

.table-first-item > span {
    color: rgba(241, 18, 162, 0.55);

    font-size: 1.8rem;
    font-weight: 600;
}

.table-first-item h4 {
    margin-bottom: 0.6rem;

    color: #fff;

    font-size: 1.6rem;
    font-weight: 500;
}

.table-first-item p {
    color: rgba(255, 255, 255, 0.52);

    font-size: 1.3rem;
    line-height: 1.6;
}


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

@media (max-width: 1100px) {

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

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


@media (max-width: 800px) {

    .table-games-section {
        padding: 7rem 5%;
    }

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

    .table-game-poker {
        grid-column: auto;
    }

    .table-game-data {
        grid-template-columns: 1fr;
    }

    .classic-hours {
        grid-template-columns: auto 1fr;
    }

    .classic-hours-poker {
        grid-column: 1 / -1;

        padding-top: 2rem;
        padding-left: 0;

        border-top: 1px solid rgba(255, 255, 255, 0.1);
        border-left: 0;
    }
}


@media (max-width: 550px) {

    .table-games-heading h2 {
        font-size: 3.4rem;
    }

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

    .table-game-card {
        padding: 2.8rem 2rem;
    }

    .table-game-card h3 {
        font-size: 2.5rem;
    }

    .table-limit-row {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.4rem;
    }

    .classic-hours {
        grid-template-columns: 1fr;
        padding: 2.5rem 2rem;
    }

    .table-games-first-visit {
        padding: 2.5rem 2rem;
    }
}
/* =========================================================
   Roulette
========================================================= */

.roulette-section {
    padding: 10rem 5%;

    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(241, 18, 162, 0.1),
            transparent 38rem
        ),
        radial-gradient(
            circle at 0% 80%,
            rgba(91, 37, 139, 0.18),
            transparent 42rem
        ),
        linear-gradient(
            135deg,
            #140920 0%,
            #1f0e30 50%,
            #12081d 100%
        );
}

.roulette-shell {
    max-width: 1400px;
    margin: 0 auto;
}


/* =========================================================
   Heading
========================================================= */

.roulette-heading {
    max-width: 92rem;
    margin-bottom: 6rem;
}

.roulette-label {
    display: inline-flex;
    align-items: center;
    gap: 1rem;

    margin-bottom: 1.6rem;

    color: var(--main-color);

    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 0.14rem;
    text-transform: uppercase;
}

.roulette-heading h2 {
    margin-bottom: 2.2rem;

    color: #fff;

    font-size: clamp(3.8rem, 5vw, 5.6rem);
    font-weight: 600;
    line-height: 1.1;
}

.roulette-heading p {
    max-width: 88rem;
    margin-bottom: 1.4rem;

    color: rgba(255, 255, 255, 0.63);

    font-size: 1.6rem;
    line-height: 1.82;
}

.roulette-heading .roulette-lead {
    color: rgba(255, 255, 255, 0.87);

    font-size: 1.75rem;
}


/* =========================================================
   Facts
========================================================= */

.roulette-facts {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 1.5rem;
    margin-bottom: 7rem;
}

.roulette-fact {
    padding: 2.7rem 2.3rem;

    background:
        linear-gradient(
            145deg,
            rgba(82, 34, 116, 0.42),
            rgba(31, 13, 48, 0.72)
        );

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1.5rem;
}

.roulette-fact-icon {
    width: 5rem;
    height: 5rem;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 2.3rem;

    color: var(--main-color);

    background: rgba(241, 18, 162, 0.09);

    border: 1px solid rgba(241, 18, 162, 0.13);
    border-radius: 1rem;

    font-size: 1.9rem;
}

.roulette-fact > span {
    display: block;

    margin-bottom: 0.6rem;

    color: rgba(255, 255, 255, 0.4);

    font-size: 1.05rem;
    font-weight: 500;
    letter-spacing: 0.08rem;
    text-transform: uppercase;
}

.roulette-fact h3 {
    margin-bottom: 0.8rem;

    color: #fff;

    font-size: 2.3rem;
    font-weight: 600;
}

.roulette-fact p {
    color: rgba(255, 255, 255, 0.52);

    font-size: 1.3rem;
    line-height: 1.6;
}


/* =========================================================
   Limits
========================================================= */

.roulette-limits {
    padding: 4.5rem;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(241, 18, 162, 0.1),
            transparent 30rem
        ),
        linear-gradient(
            145deg,
            #28113b,
            #180b25
        );

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 2rem;

    box-shadow: 0 1.7rem 5rem rgba(0, 0, 0, 0.22);
}

.roulette-limits-heading {
    max-width: 76rem;
    margin-bottom: 3.5rem;
}

.roulette-limits-heading > span {
    display: block;

    margin-bottom: 0.7rem;

    color: var(--main-color);

    font-size: 1.1rem;
    font-weight: 600;
    letter-spacing: 0.1rem;
    text-transform: uppercase;
}

.roulette-limits-heading h3 {
    margin-bottom: 1.3rem;

    color: #fff;

    font-size: 3.2rem;
    font-weight: 600;
}

.roulette-limits-heading p {
    color: rgba(255, 255, 255, 0.57);

    font-size: 1.45rem;
    line-height: 1.75;
}


/* Limit Cards */

.roulette-limit-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);

    gap: 1.5rem;
}

.roulette-limit-card {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 2rem;

    padding: 2.5rem;

    background: rgba(255, 255, 255, 0.04);

    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 1.3rem;
}

.roulette-limit-number {
    min-width: 7rem;
}

.roulette-limit-number strong {
    display: block;

    color: var(--main-color);

    font-size: 4rem;
    font-weight: 600;
    line-height: 1;
}

.roulette-limit-number span {
    display: block;

    margin-top: 0.4rem;

    color: rgba(255, 255, 255, 0.4);

    font-size: 1.1rem;
    text-transform: uppercase;
}

.roulette-limit-content > span {
    display: block;

    margin-bottom: 0.3rem;

    color: rgba(255, 255, 255, 0.4);

    font-size: 1rem;
    text-transform: uppercase;
    letter-spacing: 0.07rem;
}

.roulette-limit-content h4 {
    margin-bottom: 0.7rem;

    color: #fff;

    font-size: 2.2rem;
    font-weight: 600;
}

.roulette-limit-content p {
    color: rgba(255, 255, 255, 0.5);

    font-size: 1.25rem;
    line-height: 1.6;
}


/* =========================================================
   Live Format
========================================================= */

.roulette-live-format {
    margin-top: 6rem;
}

.roulette-live-heading {
    max-width: 74rem;
    margin-bottom: 3rem;
}

.roulette-live-heading span {
    display: block;

    margin-bottom: 0.7rem;

    color: var(--main-color);

    font-size: 1.1rem;
    font-weight: 600;
    letter-spacing: 0.1rem;
    text-transform: uppercase;
}

.roulette-live-heading h3 {
    color: #fff;

    font-size: 3.1rem;
    font-weight: 600;
    line-height: 1.25;
}

.roulette-live-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);

    gap: 1.5rem;
}

.roulette-live-item {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 1.5rem;

    padding: 2.5rem;

    background:
        linear-gradient(
            145deg,
            rgba(69, 29, 98, 0.34),
            rgba(28, 12, 43, 0.62)
        );

    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 1.3rem;
}

.roulette-step {
    color: rgba(241, 18, 162, 0.55);

    font-size: 1.8rem;
    font-weight: 600;
}

.roulette-live-item h4 {
    margin-bottom: 0.7rem;

    color: #fff;

    font-size: 1.65rem;
    font-weight: 500;
}

.roulette-live-item p {
    color: rgba(255, 255, 255, 0.52);

    font-size: 1.3rem;
    line-height: 1.65;
}


/* =========================================================
   Payout
========================================================= */

.roulette-payout {
    display: grid;
    grid-template-columns: auto 1fr;

    gap: 2rem;
    align-items: center;

    margin-top: 2rem;
    padding: 3rem 3.5rem;

    background:
        radial-gradient(
            circle at 100% 50%,
            rgba(241, 18, 162, 0.11),
            transparent 25rem
        ),
        #21102f;

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1.5rem;
}

.roulette-payout-icon {
    width: 6rem;
    height: 6rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--main-color);

    background: rgba(241, 18, 162, 0.09);

    border-radius: 50%;

    font-size: 2.2rem;
}

.roulette-payout span {
    display: block;

    margin-bottom: 0.4rem;

    color: var(--main-color);

    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.08rem;
    text-transform: uppercase;
}

.roulette-payout h3 {
    margin-bottom: 0.7rem;

    color: #fff;

    font-size: 2rem;
    font-weight: 500;
}

.roulette-payout p {
    max-width: 95rem;

    color: rgba(255, 255, 255, 0.55);

    font-size: 1.35rem;
    line-height: 1.65;
}


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

@media (max-width: 1050px) {

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

    .roulette-limit-grid {
        grid-template-columns: 1fr;
    }

    .roulette-live-grid {
        grid-template-columns: 1fr;
    }
}


@media (max-width: 700px) {

    .roulette-section {
        padding: 7rem 5%;
    }

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

    .roulette-limits {
        padding: 3rem 2.5rem;
    }

    .roulette-heading h2 {
        font-size: 3.5rem;
    }

    .roulette-payout {
        grid-template-columns: 1fr;
    }
}


@media (max-width: 480px) {

    .roulette-limit-card {
        grid-template-columns: 1fr;
    }

    .roulette-live-item {
        grid-template-columns: 1fr;
    }

    .roulette-limits-heading h3,
    .roulette-live-heading h3 {
        font-size: 2.6rem;
    }
}

/* =========================================================
   Blackjack
========================================================= */

.blackjack-section {
    padding: 10rem 5%;

    background:
        radial-gradient(
            circle at 88% 12%,
            rgba(241, 18, 162, 0.1),
            transparent 38rem
        ),
        radial-gradient(
            circle at 5% 85%,
            rgba(96, 39, 145, 0.2),
            transparent 42rem
        ),
        linear-gradient(
            135deg,
            #13091f 0%,
            #1d0d2d 50%,
            #12081d 100%
        );
}

.blackjack-shell {
    max-width: 1400px;
    margin: 0 auto;
}


/* =========================================================
   Heading
========================================================= */

.blackjack-heading {
    max-width: 92rem;
    margin-bottom: 6rem;
}

.blackjack-label {
    display: inline-flex;
    align-items: center;
    gap: 1rem;

    margin-bottom: 1.6rem;

    color: var(--main-color);

    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 0.14rem;
    text-transform: uppercase;
}

.blackjack-heading h2 {
    margin-bottom: 2.2rem;

    color: #fff;

    font-size: clamp(3.8rem, 5vw, 5.6rem);
    font-weight: 600;
    line-height: 1.1;
}

.blackjack-heading p {
    max-width: 88rem;
    margin-bottom: 1.4rem;

    color: rgba(255, 255, 255, 0.63);

    font-size: 1.6rem;
    line-height: 1.82;
}

.blackjack-heading .blackjack-lead {
    color: rgba(255, 255, 255, 0.87);
    font-size: 1.75rem;
}


/* =========================================================
   Facts
========================================================= */

.blackjack-facts {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 1.5rem;
    margin-bottom: 7rem;
}

.blackjack-fact {
    padding: 2.7rem 2.3rem;

    background:
        linear-gradient(
            145deg,
            rgba(82, 34, 116, 0.42),
            rgba(31, 13, 48, 0.72)
        );

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1.5rem;
}

.blackjack-fact-icon {
    width: 5rem;
    height: 5rem;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 2.3rem;

    color: var(--main-color);
    background: rgba(241, 18, 162, 0.09);

    border: 1px solid rgba(241, 18, 162, 0.13);
    border-radius: 1rem;

    font-size: 1.9rem;
}

.blackjack-fact > span {
    display: block;

    margin-bottom: 0.6rem;

    color: rgba(255, 255, 255, 0.4);

    font-size: 1.05rem;
    font-weight: 500;
    letter-spacing: 0.08rem;
    text-transform: uppercase;
}

.blackjack-fact h3 {
    margin-bottom: 0.8rem;

    color: #fff;

    font-size: 2.3rem;
    font-weight: 600;
}

.blackjack-fact p {
    color: rgba(255, 255, 255, 0.52);

    font-size: 1.3rem;
    line-height: 1.6;
}


/* =========================================================
   Limits
========================================================= */

.blackjack-limits {
    padding: 4.5rem;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(241, 18, 162, 0.1),
            transparent 30rem
        ),
        linear-gradient(
            145deg,
            #28113b,
            #180b25
        );

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 2rem;

    box-shadow: 0 1.7rem 5rem rgba(0, 0, 0, 0.22);
}

.blackjack-limits-heading {
    max-width: 76rem;
    margin-bottom: 3.5rem;
}

.blackjack-limits-heading > span {
    display: block;

    margin-bottom: 0.7rem;

    color: var(--main-color);

    font-size: 1.1rem;
    font-weight: 600;
    letter-spacing: 0.1rem;
    text-transform: uppercase;
}

.blackjack-limits-heading h3 {
    margin-bottom: 1.3rem;

    color: #fff;

    font-size: 3.2rem;
    font-weight: 600;
}

.blackjack-limits-heading p {
    color: rgba(255, 255, 255, 0.57);

    font-size: 1.45rem;
    line-height: 1.75;
}


/* Limit Cards */

.blackjack-limit-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);

    gap: 1.5rem;
}

.blackjack-limit-card {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 2rem;

    padding: 2.5rem;

    background: rgba(255, 255, 255, 0.04);

    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 1.3rem;
}

.blackjack-limit-number {
    min-width: 7rem;
}

.blackjack-limit-number strong {
    display: block;

    color: var(--main-color);

    font-size: 4rem;
    font-weight: 600;
    line-height: 1;
}

.blackjack-limit-number span {
    display: block;

    margin-top: 0.4rem;

    color: rgba(255, 255, 255, 0.4);

    font-size: 1.1rem;
    text-transform: uppercase;
}

.blackjack-limit-content > span {
    display: block;

    margin-bottom: 0.3rem;

    color: rgba(255, 255, 255, 0.4);

    font-size: 1rem;
    text-transform: uppercase;
    letter-spacing: 0.07rem;
}

.blackjack-limit-content h4 {
    margin-bottom: 0.7rem;

    color: #fff;

    font-size: 2.2rem;
    font-weight: 600;
}

.blackjack-limit-content p {
    color: rgba(255, 255, 255, 0.5);

    font-size: 1.25rem;
    line-height: 1.6;
}


/* =========================================================
   How It Works
========================================================= */

.blackjack-how {
    margin-top: 6rem;
}

.blackjack-how-heading {
    max-width: 76rem;
    margin-bottom: 3rem;
}

.blackjack-how-heading span {
    display: block;

    margin-bottom: 0.7rem;

    color: var(--main-color);

    font-size: 1.1rem;
    font-weight: 600;
    letter-spacing: 0.1rem;
    text-transform: uppercase;
}

.blackjack-how-heading h3 {
    margin-bottom: 1.2rem;

    color: #fff;

    font-size: 3.1rem;
    font-weight: 600;
}

.blackjack-how-heading p {
    color: rgba(255, 255, 255, 0.56);

    font-size: 1.45rem;
    line-height: 1.75;
}

.blackjack-how-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);

    gap: 1.5rem;
}

.blackjack-how-item {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 1.5rem;

    padding: 2.5rem;

    background:
        linear-gradient(
            145deg,
            rgba(69, 29, 98, 0.34),
            rgba(28, 12, 43, 0.62)
        );

    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 1.3rem;
}

.blackjack-step {
    color: rgba(241, 18, 162, 0.55);

    font-size: 1.8rem;
    font-weight: 600;
}

.blackjack-how-item h4 {
    margin-bottom: 0.7rem;

    color: #fff;

    font-size: 1.65rem;
    font-weight: 500;
}

.blackjack-how-item p {
    color: rgba(255, 255, 255, 0.52);

    font-size: 1.3rem;
    line-height: 1.65;
}


/* =========================================================
   Additional Chances
========================================================= */

.blackjack-extra {
    display: grid;
    grid-template-columns: auto 1fr;

    gap: 2rem;
    align-items: center;

    margin-top: 2rem;
    padding: 3rem 3.5rem;

    background:
        radial-gradient(
            circle at 100% 50%,
            rgba(241, 18, 162, 0.12),
            transparent 25rem
        ),
        #21102f;

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1.5rem;
}

.blackjack-extra-icon {
    width: 6rem;
    height: 6rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--main-color);
    background: rgba(241, 18, 162, 0.09);

    border-radius: 50%;

    font-size: 2.2rem;
}

.blackjack-extra span {
    display: block;

    margin-bottom: 0.4rem;

    color: var(--main-color);

    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.08rem;
    text-transform: uppercase;
}

.blackjack-extra h3 {
    margin-bottom: 0.7rem;

    color: #fff;

    font-size: 2rem;
    font-weight: 500;
}

.blackjack-extra p {
    max-width: 95rem;

    color: rgba(255, 255, 255, 0.55);

    font-size: 1.35rem;
    line-height: 1.65;
}


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

@media (max-width: 1050px) {

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

    .blackjack-limit-grid {
        grid-template-columns: 1fr;
    }

    .blackjack-how-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 700px) {

    .blackjack-section {
        padding: 7rem 5%;
    }

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

    .blackjack-limits {
        padding: 3rem 2.5rem;
    }

    .blackjack-heading h2 {
        font-size: 3.5rem;
    }

    .blackjack-extra {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {

    .blackjack-limit-card {
        grid-template-columns: 1fr;
    }

    .blackjack-how-item {
        grid-template-columns: 1fr;
    }

    .blackjack-limits-heading h3,
    .blackjack-how-heading h3 {
        font-size: 2.6rem;
    }
}

/* =========================================================
   Poker
========================================================= */

.poker-section {
    padding: 10rem 5%;

    background:
        radial-gradient(
            circle at 8% 15%,
            rgba(241, 18, 162, 0.1),
            transparent 36rem
        ),
        radial-gradient(
            circle at 95% 80%,
            rgba(102, 42, 153, 0.19),
            transparent 44rem
        ),
        linear-gradient(
            135deg,
            #13091f 0%,
            #201031 50%,
            #12081c 100%
        );
}

.poker-shell {
    max-width: 1400px;
    margin: 0 auto;
}


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

.poker-intro {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;

    gap: 6rem;
    align-items: center;
}


/* Image */

.poker-image {
    position: relative;

    height: 56rem;

    overflow: hidden;

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 2rem;

    box-shadow: 0 2rem 6rem rgba(0, 0, 0, 0.35);
}

.poker-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;
}

.poker-image-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(13, 5, 20, 0.04) 25%,
            rgba(18, 7, 29, 0.92) 100%
        );
}

.poker-image-info {
    position: absolute;

    left: 3rem;
    right: 3rem;
    bottom: 3rem;

    z-index: 2;
}

.poker-image-info > span {
    display: block;

    margin-bottom: 0.7rem;

    color: var(--main-color);

    font-size: 1.1rem;
    font-weight: 600;

    letter-spacing: 0.11rem;
    text-transform: uppercase;
}

.poker-image-info h3 {
    margin-bottom: 0.7rem;

    color: #fff;

    font-size: 3rem;
    font-weight: 600;
}

.poker-image-info p {
    max-width: 40rem;

    color: rgba(255, 255, 255, 0.66);

    font-size: 1.35rem;
    line-height: 1.6;
}


/* Content */

.poker-label {
    display: inline-flex;
    align-items: center;

    gap: 1rem;
    margin-bottom: 1.6rem;

    color: var(--main-color);

    font-size: 1.4rem;
    font-weight: 600;

    letter-spacing: 0.14rem;
    text-transform: uppercase;
}

.poker-content h2 {
    margin-bottom: 2.2rem;

    color: #fff;

    font-size: clamp(3.8rem, 5vw, 5.5rem);
    font-weight: 600;
    line-height: 1.1;
}

.poker-content > p {
    margin-bottom: 1.5rem;

    color: rgba(255, 255, 255, 0.63);

    font-size: 1.55rem;
    line-height: 1.82;
}

.poker-content .poker-lead {
    color: rgba(255, 255, 255, 0.87);
    font-size: 1.75rem;
}


/* =========================================================
   Facts
========================================================= */

.poker-facts {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 1.5rem;
    margin-top: 7rem;
}

.poker-fact {
    padding: 2.7rem 2.3rem;

    background:
        linear-gradient(
            145deg,
            rgba(80, 34, 112, 0.42),
            rgba(30, 13, 47, 0.72)
        );

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1.5rem;
}

.poker-fact-icon {
    width: 5rem;
    height: 5rem;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 2.3rem;

    color: var(--main-color);
    background: rgba(241, 18, 162, 0.09);

    border: 1px solid rgba(241, 18, 162, 0.13);
    border-radius: 1rem;

    font-size: 1.9rem;
}

.poker-fact > span {
    display: block;

    margin-bottom: 0.6rem;

    color: rgba(255, 255, 255, 0.4);

    font-size: 1.05rem;
    font-weight: 500;

    letter-spacing: 0.08rem;
    text-transform: uppercase;
}

.poker-fact h3 {
    margin-bottom: 0.8rem;

    color: #fff;

    font-size: 2.3rem;
    font-weight: 600;
}

.poker-fact p {
    color: rgba(255, 255, 255, 0.52);

    font-size: 1.3rem;
    line-height: 1.6;
}


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

.poker-difference {
    margin-top: 7rem;
    padding: 4.5rem;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(241, 18, 162, 0.11),
            transparent 30rem
        ),
        linear-gradient(
            145deg,
            #28113a,
            #180b25
        );

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 2rem;
}

.poker-difference-heading {
    max-width: 78rem;
    margin-bottom: 3.5rem;
}

.poker-difference-heading > span {
    display: block;

    margin-bottom: 0.7rem;

    color: var(--main-color);

    font-size: 1.1rem;
    font-weight: 600;

    letter-spacing: 0.1rem;
    text-transform: uppercase;
}

.poker-difference-heading h3 {
    margin-bottom: 1.2rem;

    color: #fff;

    font-size: 3.2rem;
    font-weight: 600;
}

.poker-difference-heading p {
    color: rgba(255, 255, 255, 0.57);

    font-size: 1.45rem;
    line-height: 1.75;
}


/* Comparison */

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

    gap: 1.5rem;
}

.poker-comparison-card {
    padding: 3rem;

    background: rgba(255, 255, 255, 0.035);

    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 1.4rem;
}

.poker-comparison-active {
    background:
        linear-gradient(
            145deg,
            rgba(94, 40, 130, 0.42),
            rgba(42, 17, 61, 0.7)
        );

    border-color: rgba(241, 18, 162, 0.18);
}

.poker-comparison-icon {
    width: 5.3rem;
    height: 5.3rem;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 2rem;

    color: var(--main-color);

    background: rgba(241, 18, 162, 0.09);

    border-radius: 1rem;

    font-size: 2rem;
}

.poker-comparison-card > span {
    display: block;

    margin-bottom: 0.5rem;

    color: rgba(255, 255, 255, 0.4);

    font-size: 1.05rem;
    letter-spacing: 0.08rem;
    text-transform: uppercase;
}

.poker-comparison-card h4 {
    margin-bottom: 1.2rem;

    color: #fff;

    font-size: 2.4rem;
    font-weight: 600;
}

.poker-comparison-card > p {
    margin-bottom: 2rem;

    color: rgba(255, 255, 255, 0.55);

    font-size: 1.35rem;
    line-height: 1.7;
}

.poker-comparison-point {
    display: flex;
    align-items: flex-start;

    gap: 1rem;
    margin-top: 1rem;
}

.poker-comparison-point i {
    margin-top: 0.3rem;

    color: var(--main-color);

    font-size: 1.2rem;
}

.poker-comparison-point span {
    color: rgba(255, 255, 255, 0.68);

    font-size: 1.3rem;
    line-height: 1.5;
}

.poker-comparison-point.muted i,
.poker-comparison-point.muted span {
    color: rgba(255, 255, 255, 0.35);
}


/* =========================================================
   Concept
========================================================= */

.poker-concept {
    margin-top: 6rem;
}

.poker-concept-heading {
    max-width: 78rem;
    margin-bottom: 3rem;
}

.poker-concept-heading span {
    display: block;

    margin-bottom: 0.7rem;

    color: var(--main-color);

    font-size: 1.1rem;
    font-weight: 600;

    letter-spacing: 0.1rem;
    text-transform: uppercase;
}

.poker-concept-heading h3 {
    margin-bottom: 1.2rem;

    color: #fff;

    font-size: 3.1rem;
    font-weight: 600;
}

.poker-concept-heading p {
    color: rgba(255, 255, 255, 0.56);

    font-size: 1.45rem;
    line-height: 1.75;
}

.poker-concept-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);

    gap: 1.5rem;
}

.poker-concept-item {
    display: grid;
    grid-template-columns: auto 1fr;

    gap: 1.5rem;
    padding: 2.5rem;

    background:
        linear-gradient(
            145deg,
            rgba(69, 29, 98, 0.34),
            rgba(28, 12, 43, 0.62)
        );

    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 1.3rem;
}

.poker-concept-number {
    color: rgba(241, 18, 162, 0.55);

    font-size: 1.8rem;
    font-weight: 600;
}

.poker-concept-item h4 {
    margin-bottom: 0.7rem;

    color: #fff;

    font-size: 1.65rem;
    font-weight: 500;
}

.poker-concept-item p {
    color: rgba(255, 255, 255, 0.52);

    font-size: 1.3rem;
    line-height: 1.65;
}


/* =========================================================
   Schedule
========================================================= */

.poker-schedule {
    display: grid;
    grid-template-columns: auto 1fr;

    gap: 2rem;
    align-items: center;

    margin-top: 2rem;
    padding: 3rem 3.5rem;

    background:
        radial-gradient(
            circle at 100% 50%,
            rgba(241, 18, 162, 0.11),
            transparent 25rem
        ),
        #21102f;

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1.5rem;
}

.poker-schedule-icon {
    width: 6rem;
    height: 6rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--main-color);
    background: rgba(241, 18, 162, 0.09);

    border-radius: 50%;

    font-size: 2.2rem;
}

.poker-schedule span {
    display: block;

    margin-bottom: 0.4rem;

    color: var(--main-color);

    font-size: 1rem;
    font-weight: 600;

    letter-spacing: 0.08rem;
    text-transform: uppercase;
}

.poker-schedule h3 {
    margin-bottom: 0.7rem;

    color: #fff;

    font-size: 2rem;
    font-weight: 500;
}

.poker-schedule p {
    max-width: 95rem;

    color: rgba(255, 255, 255, 0.55);

    font-size: 1.35rem;
    line-height: 1.65;
}


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

@media (max-width: 1050px) {

    .poker-intro {
        grid-template-columns: 1fr 1fr;
        gap: 4rem;
    }

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

    .poker-concept-grid {
        grid-template-columns: 1fr;
    }
}


@media (max-width: 800px) {

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

    .poker-image {
        height: 46rem;
    }

    .poker-comparison {
        grid-template-columns: 1fr;
    }
}


@media (max-width: 600px) {

    .poker-section {
        padding: 7rem 5%;
    }

    .poker-image {
        height: 38rem;
    }

    .poker-content h2 {
        font-size: 3.5rem;
    }

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

    .poker-difference {
        padding: 3rem 2.3rem;
    }

    .poker-concept-item {
        grid-template-columns: 1fr;
    }

    .poker-schedule {
        grid-template-columns: 1fr;
        padding: 2.5rem 2rem;
    }
}

/* =========================================================
   First Visit
========================================================= */

.first-visit-section {
    padding: 10rem 5%;
    background:
        radial-gradient(circle at 90% 10%, rgba(241, 18, 162, 0.09), transparent 38rem),
        radial-gradient(circle at 5% 85%, rgba(96, 39, 145, 0.18), transparent 42rem),
        linear-gradient(135deg, #12081d 0%, #1d0d2d 50%, #13091f 100%);
}

.first-visit-shell,
.hours-shell {
    max-width: 1400px;
    margin: 0 auto;
}

.first-visit-heading {
    max-width: 92rem;
    margin-bottom: 6rem;
}

.first-visit-label,
.hours-label {
    display: inline-flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.6rem;
    color: var(--main-color);
    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: .14rem;
    text-transform: uppercase;
}

.first-visit-heading h2,
.hours-heading h2 {
    margin-bottom: 2rem;
    color: #fff;
    font-size: clamp(3.8rem, 5vw, 5.5rem);
    font-weight: 600;
    line-height: 1.1;
}

.first-visit-heading p,
.hours-heading p {
    max-width: 88rem;
    margin-bottom: 1.4rem;
    color: rgba(255,255,255,.63);
    font-size: 1.6rem;
    line-height: 1.82;
}

.first-visit-heading .first-visit-lead {
    color: rgba(255,255,255,.87);
    font-size: 1.75rem;
}


/* Options */

.first-visit-options {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
}

.first-visit-option {
    padding: 3.5rem;
    background:
        linear-gradient(
            145deg,
            rgba(79, 34, 111, .42),
            rgba(30, 13, 47, .72)
        );
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 1.7rem;
}

.first-visit-option-top {
    display: flex;
    align-items: center;
    gap: 1.4rem;
    margin-bottom: 2.2rem;
}

.first-visit-option-icon {
    width: 5.2rem;
    height: 5.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--main-color);
    background: rgba(241,18,162,.09);
    border-radius: 1rem;
    font-size: 2rem;
}

.first-visit-option-top > span {
    color: var(--main-color);
    font-size: 1.05rem;
    font-weight: 600;
    letter-spacing: .08rem;
    text-transform: uppercase;
}

.first-visit-option h3 {
    margin-bottom: 1.2rem;
    color: #fff;
    font-size: 2.5rem;
}

.first-visit-option > p {
    color: rgba(255,255,255,.57);
    font-size: 1.4rem;
    line-height: 1.75;
}

.first-visit-stake {
    margin: 2rem 0;
    padding: 1.5rem 1.7rem;
    background: rgba(255,255,255,.04);
    border-left: 2px solid var(--main-color);
    border-radius: .7rem;
}

.first-visit-stake span {
    display: block;
    color: rgba(255,255,255,.4);
    font-size: 1rem;
    text-transform: uppercase;
}

.first-visit-stake strong {
    display: block;
    margin-top: .3rem;
    color: #fff;
    font-size: 2rem;
}

.first-visit-note {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 1.3rem;
    margin: 2rem 0;
    padding: 1.5rem;
    background: rgba(255,255,255,.035);
    border-radius: .9rem;
}

.first-visit-note i {
    color: var(--main-color);
    font-size: 1.5rem;
}

.first-visit-note p {
    color: rgba(255,255,255,.52);
    font-size: 1.3rem;
    line-height: 1.6;
}

.first-visit-reference {
    margin-top: 2rem;
    font-size: 1.3rem !important;
}

.first-visit-reference a,
.first-visit-poker a {
    color: var(--main-color);
    text-decoration: underline;
    text-underline-offset: .3rem;
}


/* Poker */

.first-visit-poker {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 2rem;
    margin-top: 2rem;
    padding: 3rem 3.5rem;
    background: #21102f;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 1.5rem;
}

.first-visit-poker-icon {
    width: 6rem;
    height: 6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--main-color);
    background: rgba(241,18,162,.09);
    border-radius: 50%;
    font-size: 2rem;
}

.first-visit-poker span,
.first-visit-guide-heading span {
    display: block;
    margin-bottom: .5rem;
    color: var(--main-color);
    font-size: 1.05rem;
    font-weight: 600;
    letter-spacing: .08rem;
    text-transform: uppercase;
}

.first-visit-poker h3 {
    margin-bottom: .7rem;
    color: #fff;
    font-size: 2rem;
}

.first-visit-poker p {
    color: rgba(255,255,255,.55);
    font-size: 1.35rem;
    line-height: 1.7;
}


/* Guide */

.first-visit-guide {
    margin-top: 6rem;
}

.first-visit-guide-heading {
    margin-bottom: 2.5rem;
}

.first-visit-guide-heading h3 {
    color: #fff;
    font-size: 3rem;
}

.first-visit-guide-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}

.first-visit-guide-item {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 1.4rem;
    padding: 2.4rem;
    background: rgba(255,255,255,.035);
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 1.2rem;
}

.first-visit-guide-item > span {
    color: rgba(241,18,162,.55);
    font-size: 1.8rem;
    font-weight: 600;
}

.first-visit-guide-item h4 {
    margin-bottom: .6rem;
    color: #fff;
    font-size: 1.6rem;
}

.first-visit-guide-item p {
    color: rgba(255,255,255,.51);
    font-size: 1.3rem;
    line-height: 1.65;
}


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

.hours-section {
    padding: 10rem 5%;
    background:
        radial-gradient(circle at 5% 10%, rgba(241,18,162,.08), transparent 38rem),
        radial-gradient(circle at 95% 85%, rgba(96,39,145,.18), transparent 42rem),
        linear-gradient(135deg, #150a22 0%, #211031 50%, #12081d 100%);
}

.hours-heading {
    max-width: 90rem;
    margin-bottom: 6rem;
}

.hours-main-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}

.hours-card {
    padding: 3.2rem;
    background:
        linear-gradient(
            145deg,
            rgba(82,34,116,.42),
            rgba(31,13,48,.72)
        );
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 1.6rem;
}

.hours-card-classic {
    background:
        radial-gradient(circle at 100% 0%, rgba(241,18,162,.12), transparent 23rem),
        linear-gradient(145deg, #321548, #1c0c2b);
}

.hours-card-top {
    display: flex;
    align-items: center;
    gap: 1.4rem;
    margin-bottom: 2.7rem;
}

.hours-card-icon {
    width: 5.2rem;
    height: 5.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--main-color);
    background: rgba(241,18,162,.09);
    border-radius: 1rem;
    font-size: 2rem;
}

.hours-card-top span {
    color: var(--main-color);
    font-size: 1.05rem;
    font-weight: 600;
    letter-spacing: .08rem;
    text-transform: uppercase;
}

.hours-card h3 {
    margin-bottom: 1.4rem;
    color: #fff;
    font-size: 3rem;
}

.hours-card p {
    min-height: 12rem;
    color: rgba(255,255,255,.55);
    font-size: 1.4rem;
    line-height: 1.7;
}

.hours-card-meta {
    display: flex;
    justify-content: space-between;
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid rgba(255,255,255,.08);
}

.hours-card-meta span {
    color: rgba(255,255,255,.4);
    font-size: 1.15rem;
}

.hours-card-meta strong {
    color: #fff;
    font-size: 1.25rem;
}


/* Timeline */

.hours-timeline {
    margin-top: 6rem;
    padding: 4rem;
    background: rgba(255,255,255,.03);
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 1.6rem;
}

.hours-timeline-heading {
    margin-bottom: 3rem;
}

.hours-timeline-heading span {
    color: var(--main-color);
    font-size: 1.05rem;
    font-weight: 600;
    text-transform: uppercase;
}

.hours-timeline-heading h3 {
    margin-top: .6rem;
    color: #fff;
    font-size: 2.8rem;
}

.hours-timeline-track {
    display: grid;
    gap: 0;
}

.hours-timeline-item {
    display: grid;
    grid-template-columns: 8rem 2rem 1fr;
    gap: 1.5rem;
    min-height: 8rem;
}

.hours-time {
    color: #fff;
    font-size: 1.7rem;
    font-weight: 600;
}

.hours-dot {
    position: relative;
}

.hours-dot::before {
    content: "";
    position: absolute;
    top: .5rem;
    left: 50%;
    width: 1rem;
    height: 1rem;
    transform: translateX(-50%);
    background: var(--main-color);
    border-radius: 50%;
}

.hours-dot::after {
    content: "";
    position: absolute;
    top: 1.5rem;
    bottom: 0;
    left: 50%;
    width: 1px;
    background: rgba(255,255,255,.12);
}

.hours-timeline-item:last-child .hours-dot::after {
    display: none;
}

.hours-event h4 {
    margin-bottom: .4rem;
    color: #fff;
    font-size: 1.5rem;
}

.hours-event p {
    color: rgba(255,255,255,.49);
    font-size: 1.25rem;
}


/* Closed Days */

.hours-closed {
    margin-top: 6rem;
    padding: 4rem;
    background:
        linear-gradient(
            145deg,
            rgba(62,27,88,.55),
            rgba(28,12,43,.78)
        );
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 1.6rem;
}

.hours-closed-heading {
    display: flex;
    align-items: center;
    gap: 1.7rem;
    margin-bottom: 3rem;
}

.hours-closed-icon {
    width: 5.5rem;
    height: 5.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--main-color);
    background: rgba(241,18,162,.09);
    border-radius: 1rem;
    font-size: 2rem;
}

.hours-closed-heading span,
.hours-exception span {
    color: var(--main-color);
    font-size: 1rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .08rem;
}

.hours-closed-heading h3 {
    margin-top: .4rem;
    color: #fff;
    font-size: 2.3rem;
}

.hours-closed-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
}

.hours-closed-item {
    padding: 1.6rem;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.05);
    border-radius: .9rem;
}

.hours-closed-item span {
    color: rgba(255,255,255,.72);
    font-size: 1.35rem;
}


/* Exception */

.hours-exception {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 2rem;
    align-items: center;
    margin-top: 2rem;
    padding: 3rem 3.5rem;
    background: #21102f;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 1.5rem;
}

.hours-exception-icon {
    width: 6rem;
    height: 6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--main-color);
    background: rgba(241,18,162,.09);
    border-radius: 50%;
    font-size: 2rem;
}

.hours-exception h3 {
    margin: .5rem 0 .7rem;
    color: #fff;
    font-size: 2rem;
}

.hours-exception p {
    color: rgba(255,255,255,.55);
    font-size: 1.35rem;
    line-height: 1.65;
}


/* Responsive */

@media (max-width: 1050px) {
    .first-visit-guide-grid,
    .hours-main-grid {
        grid-template-columns: 1fr;
    }

    .hours-card p {
        min-height: auto;
    }
}

@media (max-width: 800px) {
    .first-visit-options {
        grid-template-columns: 1fr;
    }

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

@media (max-width: 600px) {
    .first-visit-section,
    .hours-section {
        padding: 7rem 5%;
    }

    .first-visit-heading h2,
    .hours-heading h2 {
        font-size: 3.4rem;
    }

    .first-visit-option {
        padding: 2.7rem 2rem;
    }

    .first-visit-poker,
    .hours-exception {
        grid-template-columns: 1fr;
        padding: 2.5rem 2rem;
    }

    .first-visit-guide-item {
        grid-template-columns: 1fr;
    }

    .hours-timeline,
    .hours-closed {
        padding: 3rem 2rem;
    }

    .hours-closed-grid {
        grid-template-columns: 1fr;
    }

    .hours-timeline-item {
        grid-template-columns: 6rem 1.5rem 1fr;
    }
}

/* =========================================================
   Entry, Age & ID
========================================================= */

.entry-section {
    padding: 10rem 5%;
    background:
        radial-gradient(circle at 92% 10%, rgba(241,18,162,.09), transparent 38rem),
        radial-gradient(circle at 5% 80%, rgba(96,39,145,.18), transparent 42rem),
        linear-gradient(135deg, #13091f 0%, #1e0e2e 50%, #12081d 100%);
}

.entry-shell,
.dress-shell {
    max-width: 1400px;
    margin: 0 auto;
}

.entry-heading,
.dress-heading {
    max-width: 92rem;
    margin-bottom: 6rem;
}

.entry-label,
.dress-label {
    display: inline-flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.6rem;
    color: var(--main-color);
    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: .14rem;
    text-transform: uppercase;
}

.entry-heading h2,
.dress-heading h2 {
    margin-bottom: 2.1rem;
    color: #fff;
    font-size: clamp(3.8rem, 5vw, 5.5rem);
    font-weight: 600;
    line-height: 1.1;
}

.entry-heading p,
.dress-heading p {
    max-width: 88rem;
    margin-bottom: 1.4rem;
    color: rgba(255,255,255,.62);
    font-size: 1.6rem;
    line-height: 1.82;
}

.entry-heading .entry-lead,
.dress-heading .dress-lead {
    color: rgba(255,255,255,.87);
    font-size: 1.75rem;
}


/* Facts */

.entry-facts {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
    margin-bottom: 7rem;
}

.entry-fact {
    padding: 2.7rem 2.3rem;
    background:
        linear-gradient(
            145deg,
            rgba(82,34,116,.42),
            rgba(31,13,48,.72)
        );
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 1.5rem;
}

.entry-fact-icon {
    width: 5rem;
    height: 5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 2.3rem;
    color: var(--main-color);
    background: rgba(241,18,162,.09);
    border-radius: 1rem;
    font-size: 1.9rem;
}

.entry-fact > span {
    display: block;
    margin-bottom: .6rem;
    color: rgba(255,255,255,.4);
    font-size: 1.05rem;
    text-transform: uppercase;
    letter-spacing: .08rem;
}

.entry-fact h3 {
    margin-bottom: .8rem;
    color: #fff;
    font-size: 2.4rem;
}

.entry-fact p {
    color: rgba(255,255,255,.52);
    font-size: 1.3rem;
    line-height: 1.6;
}


/* Documents */

.entry-documents {
    padding: 4.5rem;
    background:
        radial-gradient(circle at 100% 0%, rgba(241,18,162,.09), transparent 28rem),
        linear-gradient(145deg, #28113a, #180b25);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 2rem;
}

.entry-documents-heading {
    max-width: 78rem;
    margin-bottom: 3.5rem;
}

.entry-documents-heading span {
    color: var(--main-color);
    font-size: 1.1rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .1rem;
}

.entry-documents-heading h3 {
    margin: .7rem 0 1.2rem;
    color: #fff;
    font-size: 3.2rem;
}

.entry-documents-heading p {
    color: rgba(255,255,255,.56);
    font-size: 1.45rem;
    line-height: 1.75;
}

.entry-documents-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
}

.entry-document-group {
    padding: 3rem;
    background: rgba(255,255,255,.035);
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 1.4rem;
}

.entry-document-group-title {
    display: flex;
    gap: 1.3rem;
    align-items: center;
    margin-bottom: 2.5rem;
}

.entry-document-group-title > i {
    font-size: 2rem;
}

.accepted .entry-document-group-title > i {
    color: #58d68d;
}

.rejected .entry-document-group-title > i {
    color: var(--main-color);
}

.entry-document-group-title span {
    display: block;
    color: rgba(255,255,255,.4);
    font-size: 1rem;
    text-transform: uppercase;
}

.entry-document-group-title h4 {
    margin-top: .3rem;
    color: #fff;
    font-size: 1.9rem;
}

.entry-document-list {
    display: grid;
    gap: 1rem;
}

.entry-document-item {
    display: grid;
    grid-template-columns: 4.5rem 1fr;
    gap: 1.3rem;
    padding: 1.5rem;
    background: rgba(255,255,255,.03);
    border-radius: .9rem;
}

.entry-document-item > i {
    width: 4.5rem;
    height: 4.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--main-color);
    background: rgba(241,18,162,.08);
    border-radius: .8rem;
    font-size: 1.5rem;
}

.entry-document-item h5 {
    margin-bottom: .4rem;
    color: #fff;
    font-size: 1.45rem;
}

.entry-document-item p {
    color: rgba(255,255,255,.5);
    font-size: 1.25rem;
    line-height: 1.55;
}


/* Entry Process */

.entry-process {
    margin-top: 6rem;
}

.entry-process-heading {
    margin-bottom: 2.8rem;
}

.entry-process-heading span {
    color: var(--main-color);
    font-size: 1.05rem;
    font-weight: 600;
    text-transform: uppercase;
}

.entry-process-heading h3 {
    margin-top: .6rem;
    color: #fff;
    font-size: 3rem;
}

.entry-process-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
}

.entry-process-item {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 1.4rem;
    padding: 2.3rem;
    background: rgba(255,255,255,.035);
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 1.2rem;
}

.entry-process-item > span {
    color: rgba(241,18,162,.55);
    font-size: 1.8rem;
    font-weight: 600;
}

.entry-process-item h4 {
    margin-bottom: .6rem;
    color: #fff;
    font-size: 1.5rem;
}

.entry-process-item p {
    color: rgba(255,255,255,.5);
    font-size: 1.25rem;
    line-height: 1.6;
}


/* Warning */

.entry-warning,
.dress-summary {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 2rem;
    align-items: center;
    margin-top: 2rem;
    padding: 3rem 3.5rem;
    background: #21102f;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 1.5rem;
}

.entry-warning-icon,
.dress-summary-icon {
    width: 6rem;
    height: 6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--main-color);
    background: rgba(241,18,162,.09);
    border-radius: 50%;
    font-size: 2rem;
}

.entry-warning span,
.dress-summary span {
    display: block;
    color: var(--main-color);
    font-size: 1rem;
    font-weight: 600;
    text-transform: uppercase;
}

.entry-warning h3,
.dress-summary h3 {
    margin: .5rem 0 .7rem;
    color: #fff;
    font-size: 2rem;
}

.entry-warning p,
.dress-summary p {
    color: rgba(255,255,255,.55);
    font-size: 1.35rem;
    line-height: 1.65;
}


/* =========================================================
   Dress Code
========================================================= */

.dress-section {
    padding: 10rem 5%;
    background:
        radial-gradient(circle at 5% 15%, rgba(241,18,162,.08), transparent 38rem),
        radial-gradient(circle at 95% 80%, rgba(96,39,145,.18), transparent 42rem),
        linear-gradient(135deg, #160a22 0%, #211031 50%, #13091f 100%);
}

.dress-overview {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
}

.dress-card {
    padding: 2.8rem 2.3rem;
    background:
        linear-gradient(
            145deg,
            rgba(80,34,112,.42),
            rgba(30,13,47,.72)
        );
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 1.5rem;
}

.dress-card-icon {
    width: 5rem;
    height: 5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 2.2rem;
    background: rgba(241,18,162,.09);
    border-radius: 1rem;
    color: var(--main-color);
    font-size: 1.9rem;
}

.dress-card > span {
    display: block;
    margin-bottom: .6rem;
    color: var(--main-color);
    font-size: 1rem;
    font-weight: 600;
    text-transform: uppercase;
}

.dress-card h3 {
    margin-bottom: .8rem;
    color: #fff;
    font-size: 1.9rem;
}

.dress-card p {
    color: rgba(255,255,255,.52);
    font-size: 1.3rem;
    line-height: 1.6;
}

.dress-card-restricted {
    background:
        linear-gradient(
            145deg,
            rgba(63,28,91,.38),
            rgba(26,11,40,.72)
        );
}


/* Cloakroom */

.cloakroom-block {
    margin-top: 6rem;
    padding: 4.5rem;
    background:
        radial-gradient(circle at 100% 0%, rgba(241,18,162,.1), transparent 30rem),
        linear-gradient(145deg, #2a123d, #180b25);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 2rem;
}

.cloakroom-heading {
    max-width: 78rem;
    margin-bottom: 3.5rem;
}

.cloakroom-heading span {
    color: var(--main-color);
    font-size: 1.05rem;
    font-weight: 600;
    text-transform: uppercase;
}

.cloakroom-heading h3 {
    margin: .7rem 0 1.2rem;
    color: #fff;
    font-size: 3.1rem;
}

.cloakroom-heading p {
    color: rgba(255,255,255,.56);
    font-size: 1.45rem;
    line-height: 1.75;
}

.cloakroom-items {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}

.cloakroom-item {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 1.4rem;
    padding: 2.3rem;
    background: rgba(255,255,255,.035);
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 1.2rem;
}

.cloakroom-icon {
    width: 4.8rem;
    height: 4.8rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--main-color);
    background: rgba(241,18,162,.08);
    border-radius: .9rem;
    font-size: 1.7rem;
}

.cloakroom-item span {
    display: block;
    margin-bottom: .4rem;
    color: rgba(255,255,255,.4);
    font-size: 1rem;
    text-transform: uppercase;
}

.cloakroom-item h4 {
    margin-bottom: .6rem;
    color: #fff;
    font-size: 1.55rem;
}

.cloakroom-item p {
    color: rgba(255,255,255,.5);
    font-size: 1.25rem;
    line-height: 1.6;
}


/* Responsive */

@media (max-width: 1100px) {

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

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

    .cloakroom-items {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 800px) {

    .entry-documents-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {

    .entry-section,
    .dress-section {
        padding: 7rem 5%;
    }

    .entry-heading h2,
    .dress-heading h2 {
        font-size: 3.4rem;
    }

    .entry-facts,
    .dress-overview,
    .entry-process-grid {
        grid-template-columns: 1fr;
    }

    .entry-documents,
    .cloakroom-block {
        padding: 3rem 2rem;
    }

    .entry-document-group {
        padding: 2.2rem 1.6rem;
    }

    .entry-document-item,
    .entry-process-item,
    .cloakroom-item {
        grid-template-columns: 1fr;
    }

    .entry-warning,
    .dress-summary {
        grid-template-columns: 1fr;
        padding: 2.5rem 2rem;
    }
}

/* =========================================================
   M-Card
========================================================= */

.member-card-section {
    padding: 10rem 5%;

    background:
        radial-gradient(
            circle at 92% 12%,
            rgba(241, 18, 162, 0.09),
            transparent 38rem
        ),
        radial-gradient(
            circle at 5% 85%,
            rgba(96, 39, 145, 0.18),
            transparent 42rem
        ),
        linear-gradient(
            135deg,
            #13091f 0%,
            #1f0f30 50%,
            #12081d 100%
        );
}

.member-card-shell {
    max-width: 1400px;
    margin: 0 auto;
}


/* =========================================================
   Heading
========================================================= */

.member-card-heading {
    max-width: 92rem;
    margin-bottom: 6rem;
}

.member-card-label {
    display: inline-flex;
    align-items: center;
    gap: 1rem;

    margin-bottom: 1.6rem;

    color: var(--main-color);

    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 0.14rem;
    text-transform: uppercase;
}

.member-card-heading h2 {
    margin-bottom: 2.1rem;

    color: #fff;

    font-size: clamp(3.8rem, 5vw, 5.5rem);
    font-weight: 600;
    line-height: 1.1;
}

.member-card-heading p {
    max-width: 88rem;
    margin-bottom: 1.4rem;

    color: rgba(255, 255, 255, 0.62);

    font-size: 1.6rem;
    line-height: 1.82;
}

.member-card-heading .member-card-lead {
    color: rgba(255, 255, 255, 0.87);
    font-size: 1.75rem;
}


/* =========================================================
   Facts
========================================================= */

.member-card-facts {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 1.5rem;
    margin-bottom: 7rem;
}

.member-card-fact {
    padding: 2.7rem 2.3rem;

    background:
        linear-gradient(
            145deg,
            rgba(82, 34, 116, 0.42),
            rgba(31, 13, 48, 0.72)
        );

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1.5rem;
}

.member-card-fact-icon {
    width: 5rem;
    height: 5rem;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 2.3rem;

    color: var(--main-color);
    background: rgba(241, 18, 162, 0.09);

    border-radius: 1rem;

    font-size: 1.9rem;
}

.member-card-fact > span {
    display: block;

    margin-bottom: 0.6rem;

    color: rgba(255, 255, 255, 0.4);

    font-size: 1.05rem;
    letter-spacing: 0.08rem;
    text-transform: uppercase;
}

.member-card-fact h3 {
    margin-bottom: 0.8rem;

    color: #fff;

    font-size: 2.25rem;
    font-weight: 600;
}

.member-card-fact p {
    color: rgba(255, 255, 255, 0.52);

    font-size: 1.3rem;
    line-height: 1.6;
}


/* =========================================================
   Benefits
========================================================= */

.member-card-benefits {
    padding: 4.5rem;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(241, 18, 162, 0.1),
            transparent 30rem
        ),
        linear-gradient(
            145deg,
            #2a123d,
            #180b25
        );

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 2rem;
}

.member-card-benefits-heading {
    max-width: 78rem;
    margin-bottom: 3.5rem;
}

.member-card-benefits-heading span {
    color: var(--main-color);

    font-size: 1.1rem;
    font-weight: 600;
    letter-spacing: 0.1rem;
    text-transform: uppercase;
}

.member-card-benefits-heading h3 {
    margin: 0.7rem 0 1.2rem;

    color: #fff;

    font-size: 3.2rem;
    font-weight: 600;
}

.member-card-benefits-heading p {
    color: rgba(255, 255, 255, 0.56);

    font-size: 1.45rem;
    line-height: 1.75;
}


.member-card-benefits-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 1.5rem;
}

.member-card-benefit {
    padding: 2.5rem;

    background: rgba(255, 255, 255, 0.035);

    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 1.3rem;
}

.member-benefit-icon {
    width: 5rem;
    height: 5rem;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 2rem;

    color: var(--main-color);

    background: rgba(241, 18, 162, 0.09);

    border-radius: 1rem;

    font-size: 1.8rem;
}

.member-card-benefit > span {
    display: block;

    margin-bottom: 0.5rem;

    color: rgba(241, 18, 162, 0.55);

    font-size: 1.25rem;
    font-weight: 600;
}

.member-card-benefit h4 {
    margin-bottom: 0.8rem;

    color: #fff;

    font-size: 1.75rem;
    font-weight: 500;
}

.member-card-benefit p {
    color: rgba(255, 255, 255, 0.51);

    font-size: 1.3rem;
    line-height: 1.65;
}


/* =========================================================
   First Visit
========================================================= */

.member-card-first-visit,
.member-card-privacy {
    display: grid;
    grid-template-columns: auto 1fr;

    gap: 2rem;
    align-items: center;

    margin-top: 2rem;
    padding: 3rem 3.5rem;

    background: #21102f;

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1.5rem;
}

.member-card-first-icon,
.member-card-privacy-icon {
    width: 6rem;
    height: 6rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--main-color);

    background: rgba(241, 18, 162, 0.09);

    border-radius: 50%;

    font-size: 2rem;
}

.member-card-first-visit span,
.member-card-privacy span {
    display: block;

    margin-bottom: 0.4rem;

    color: var(--main-color);

    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.08rem;
    text-transform: uppercase;
}

.member-card-first-visit h3,
.member-card-privacy h3 {
    margin-bottom: 0.7rem;

    color: #fff;

    font-size: 2rem;
    font-weight: 500;
}

.member-card-first-visit p,
.member-card-privacy p {
    max-width: 95rem;

    color: rgba(255, 255, 255, 0.55);

    font-size: 1.35rem;
    line-height: 1.65;
}


/* =========================================================
   Biometric
========================================================= */

.member-card-biometric {
    margin-top: 7rem;
    padding: 4.5rem;

    background:
        radial-gradient(
            circle at 0% 100%,
            rgba(79, 23, 135, 0.22),
            transparent 30rem
        ),
        linear-gradient(
            145deg,
            #29113c,
            #180b25
        );

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 2rem;
}

.member-card-biometric-heading {
    max-width: 82rem;
    margin-bottom: 3.5rem;
}

.member-card-biometric-heading span {
    color: var(--main-color);

    font-size: 1.1rem;
    font-weight: 600;
    letter-spacing: 0.1rem;
    text-transform: uppercase;
}

.member-card-biometric-heading h3 {
    margin: 0.7rem 0 1.2rem;

    color: #fff;

    font-size: 3.2rem;
    font-weight: 600;
}

.member-card-biometric-heading p {
    color: rgba(255, 255, 255, 0.56);

    font-size: 1.45rem;
    line-height: 1.75;
}


/* Process */

.biometric-process {
    display: grid;
    grid-template-columns: repeat(2, 1fr);

    gap: 1.5rem;
}

.biometric-process-item {
    display: grid;
    grid-template-columns: auto 1fr;

    gap: 1.5rem;
    padding: 2.5rem;

    background: rgba(255, 255, 255, 0.035);

    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 1.2rem;
}

.biometric-number {
    color: rgba(241, 18, 162, 0.55);

    font-size: 1.8rem;
    font-weight: 600;
}

.biometric-process-item h4 {
    margin-bottom: 0.7rem;

    color: #fff;

    font-size: 1.6rem;
    font-weight: 500;
}

.biometric-process-item p {
    color: rgba(255, 255, 255, 0.5);

    font-size: 1.3rem;
    line-height: 1.65;
}


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

@media (max-width: 1100px) {

    .member-card-facts,
    .member-card-benefits-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}


@media (max-width: 800px) {

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


@media (max-width: 600px) {

    .member-card-section {
        padding: 7rem 5%;
    }

    .member-card-heading h2 {
        font-size: 3.4rem;
    }

    .member-card-facts,
    .member-card-benefits-grid {
        grid-template-columns: 1fr;
    }

    .member-card-benefits,
    .member-card-biometric {
        padding: 3rem 2rem;
    }

    .member-card-first-visit,
    .member-card-privacy {
        grid-template-columns: 1fr;
        padding: 2.5rem 2rem;
    }

    .biometric-process-item {
        grid-template-columns: 1fr;
    }
}
/* =========================================================
   Bar & Dining
========================================================= */

.dining-section {
    padding: 10rem 5%;

    background:
        radial-gradient(
            circle at 92% 12%,
            rgba(241, 18, 162, 0.1),
            transparent 38rem
        ),
        radial-gradient(
            circle at 5% 85%,
            rgba(96, 39, 145, 0.18),
            transparent 42rem
        ),
        linear-gradient(
            135deg,
            #13091f 0%,
            #201030 50%,
            #12081d 100%
        );
}

.dining-shell {
    max-width: 1400px;
    margin: 0 auto;
}


/* Heading */

.dining-heading {
    max-width: 94rem;
    margin-bottom: 6rem;
}

.dining-label {
    display: inline-flex;
    align-items: center;
    gap: 1rem;

    margin-bottom: 1.6rem;

    color: var(--main-color);

    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 0.14rem;
    text-transform: uppercase;
}

.dining-heading h2 {
    margin-bottom: 2.1rem;

    color: #fff;

    font-size: clamp(3.8rem, 5vw, 5.5rem);
    font-weight: 600;
    line-height: 1.1;
}

.dining-heading p {
    max-width: 90rem;

    color: rgba(255, 255, 255, 0.63);

    font-size: 1.6rem;
    line-height: 1.82;
}

.dining-heading .dining-lead {
    color: rgba(255, 255, 255, 0.87);
    font-size: 1.75rem;
}


/* =========================================================
   Main Cards
========================================================= */

.dining-main-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);

    gap: 2rem;
}

.dining-card {
    padding: 4rem;

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 2rem;

    box-shadow: 0 1.7rem 5rem rgba(0, 0, 0, 0.22);
}

.dining-card-bar {
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(241, 18, 162, 0.15),
            transparent 28rem
        ),
        linear-gradient(
            145deg,
            #35164d,
            #1c0c2b
        );
}

.dining-card-restaurant {
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(105, 48, 158, 0.16),
            transparent 30rem
        ),
        linear-gradient(
            145deg,
            #2a123d,
            #180b25
        );
}

.dining-card-top {
    display: flex;
    align-items: center;
    gap: 1.5rem;

    margin-bottom: 2.5rem;
}

.dining-card-icon {
    width: 5.5rem;
    height: 5.5rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #fff;

    background:
        linear-gradient(
            135deg,
            var(--secondary-color),
            var(--main-color)
        );

    border-radius: 1.2rem;

    font-size: 2.1rem;
}

.dining-card-top > span {
    color: var(--main-color);

    font-size: 1.1rem;
    font-weight: 600;
    letter-spacing: 0.1rem;
    text-transform: uppercase;
}

.dining-card h3 {
    margin-bottom: 1.5rem;

    color: #fff;

    font-size: 3rem;
    font-weight: 600;
}

.dining-card > p {
    margin-bottom: 1.4rem;

    color: rgba(255, 255, 255, 0.6);

    font-size: 1.5rem;
    line-height: 1.8;
}


/* Bar Detail List */

.dining-detail-list {
    display: grid;
    gap: 1rem;

    margin-top: 2.5rem;
}

.dining-detail-item {
    display: grid;
    grid-template-columns: 4.8rem 1fr;

    gap: 1.4rem;
    padding: 1.6rem;

    background: rgba(255, 255, 255, 0.04);

    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 1rem;
}

.dining-detail-item > i {
    width: 4.8rem;
    height: 4.8rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--main-color);

    background: rgba(241, 18, 162, 0.09);

    border-radius: 0.9rem;

    font-size: 1.7rem;
}

.dining-detail-item span {
    display: block;

    margin-bottom: 0.3rem;

    color: rgba(255, 255, 255, 0.4);

    font-size: 1rem;
    text-transform: uppercase;
}

.dining-detail-item h4 {
    margin-bottom: 0.4rem;

    color: #fff;

    font-size: 1.5rem;
}

.dining-detail-item p {
    color: rgba(255, 255, 255, 0.5);

    font-size: 1.25rem;
    line-height: 1.55;
}


/* Note */

.dining-card-note {
    display: grid;
    grid-template-columns: auto 1fr;

    gap: 1.3rem;

    margin-top: 2rem;
    padding: 1.6rem;

    background: rgba(255, 255, 255, 0.035);

    border-left: 2px solid var(--main-color);
    border-radius: 0.8rem;
}

.dining-card-note i {
    color: var(--main-color);
    font-size: 1.5rem;
}

.dining-card-note p {
    color: rgba(255, 255, 255, 0.51);

    font-size: 1.25rem;
    line-height: 1.6;
}


/* Restaurant Facts */

.restaurant-facts {
    display: grid;
    grid-template-columns: repeat(2, 1fr);

    gap: 1rem;
    margin-top: 2.5rem;
}

.restaurant-fact {
    padding: 1.7rem;

    background: rgba(255, 255, 255, 0.04);

    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 1rem;
}

.restaurant-fact span {
    display: block;

    margin-bottom: 0.5rem;

    color: rgba(255, 255, 255, 0.4);

    font-size: 1rem;
    text-transform: uppercase;
}

.restaurant-fact strong {
    color: #fff;

    font-size: 1.45rem;
    font-weight: 500;
}


/* =========================================================
   Restaurant Concept
========================================================= */

.restaurant-concept {
    margin-top: 7rem;
}

.restaurant-concept-heading {
    max-width: 80rem;
    margin-bottom: 3rem;
}

.restaurant-concept-heading span {
    color: var(--main-color);

    font-size: 1.1rem;
    font-weight: 600;
    letter-spacing: 0.1rem;
    text-transform: uppercase;
}

.restaurant-concept-heading h3 {
    margin: 0.7rem 0 1.2rem;

    color: #fff;

    font-size: 3.2rem;
    font-weight: 600;
}

.restaurant-concept-heading p {
    color: rgba(255, 255, 255, 0.56);

    font-size: 1.45rem;
    line-height: 1.75;
}

.restaurant-concept-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);

    gap: 1.5rem;
}

.restaurant-concept-item {
    padding: 2.5rem;

    background:
        linear-gradient(
            145deg,
            rgba(69, 29, 98, 0.34),
            rgba(28, 12, 43, 0.62)
        );

    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 1.3rem;
}

.restaurant-concept-icon {
    width: 5rem;
    height: 5rem;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 2rem;

    color: var(--main-color);

    background: rgba(241, 18, 162, 0.09);

    border-radius: 1rem;

    font-size: 1.8rem;
}

.restaurant-concept-item > span {
    display: block;

    margin-bottom: 0.5rem;

    color: rgba(255, 255, 255, 0.4);

    font-size: 1rem;
    text-transform: uppercase;
}

.restaurant-concept-item h4 {
    margin-bottom: 0.7rem;

    color: #fff;

    font-size: 1.7rem;
    font-weight: 500;
}

.restaurant-concept-item p {
    color: rgba(255, 255, 255, 0.5);

    font-size: 1.3rem;
    line-height: 1.65;
}


/* =========================================================
   Independent Access
========================================================= */

.restaurant-access {
    display: grid;
    grid-template-columns: auto 1fr;

    gap: 2rem;
    align-items: center;

    margin-top: 6rem;
    padding: 3.5rem;

    background:
        radial-gradient(
            circle at 100% 50%,
            rgba(241, 18, 162, 0.11),
            transparent 28rem
        ),
        #21102f;

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1.5rem;
}

.restaurant-access-icon {
    width: 6rem;
    height: 6rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--main-color);

    background: rgba(241, 18, 162, 0.09);

    border-radius: 50%;

    font-size: 2.1rem;
}

.restaurant-access span {
    display: block;

    margin-bottom: 0.4rem;

    color: var(--main-color);

    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.08rem;
    text-transform: uppercase;
}

.restaurant-access h3 {
    margin-bottom: 0.7rem;

    color: #fff;

    font-size: 2.1rem;
    font-weight: 500;
}

.restaurant-access p {
    max-width: 95rem;

    color: rgba(255, 255, 255, 0.55);

    font-size: 1.35rem;
    line-height: 1.65;
}


/* =========================================================
   Practical Information
========================================================= */

.restaurant-practical {
    margin-top: 2rem;
    padding: 4rem;

    background: rgba(255, 255, 255, 0.035);

    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 1.5rem;
}

.restaurant-practical-heading {
    margin-bottom: 2.8rem;
}

.restaurant-practical-heading span {
    color: var(--main-color);

    font-size: 1rem;
    font-weight: 600;
    text-transform: uppercase;
}

.restaurant-practical-heading h3 {
    margin-top: 0.6rem;

    color: #fff;

    font-size: 2.8rem;
}

.restaurant-practical-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 1.5rem;
}

.restaurant-practical-item {
    display: grid;
    grid-template-columns: auto 1fr;

    gap: 1.3rem;

    padding: 2rem;

    background: rgba(255, 255, 255, 0.035);

    border: 1px solid rgba(255, 255, 255, 0.05);
    border-radius: 1rem;
}

.restaurant-practical-item > i {
    color: var(--main-color);

    font-size: 1.8rem;
}

.restaurant-practical-item span {
    display: block;

    margin-bottom: 0.4rem;

    color: rgba(255, 255, 255, 0.4);

    font-size: 0.95rem;
    text-transform: uppercase;
}

.restaurant-practical-item h4 {
    margin-bottom: 0.5rem;

    color: #fff;

    font-size: 1.45rem;
}

.restaurant-practical-item p {
    color: rgba(255, 255, 255, 0.5);

    font-size: 1.2rem;
    line-height: 1.55;
}


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

@media (max-width: 1100px) {

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


@media (max-width: 850px) {

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

    .restaurant-concept-grid {
        grid-template-columns: 1fr;
    }
}


@media (max-width: 600px) {

    .dining-section {
        padding: 7rem 5%;
    }

    .dining-heading h2 {
        font-size: 3.4rem;
    }

    .dining-card {
        padding: 3rem 2rem;
    }

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

    .restaurant-access {
        grid-template-columns: 1fr;
        padding: 2.5rem 2rem;
    }

    .restaurant-practical {
        padding: 3rem 2rem;
    }

    .restaurant-practical-grid {
        grid-template-columns: 1fr;
    }

    .dining-detail-item,
    .restaurant-practical-item {
        grid-template-columns: 1fr;
    }
}
/* =========================================================
   Location & Getting There
========================================================= */

.location-section {
    padding: 10rem 5%;

    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(241, 18, 162, 0.09),
            transparent 38rem
        ),
        radial-gradient(
            circle at 5% 85%,
            rgba(96, 39, 145, 0.18),
            transparent 42rem
        ),
        linear-gradient(
            135deg,
            #13091f 0%,
            #201030 50%,
            #12081d 100%
        );
}

.location-shell {
    max-width: 1400px;
    margin: 0 auto;
}


/* Heading */

.location-heading {
    max-width: 94rem;
    margin-bottom: 6rem;
}

.location-label {
    display: inline-flex;
    align-items: center;
    gap: 1rem;

    margin-bottom: 1.6rem;

    color: var(--main-color);

    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 0.14rem;
    text-transform: uppercase;
}

.location-heading h2 {
    margin-bottom: 2.1rem;

    color: #fff;

    font-size: clamp(3.8rem, 5vw, 5.5rem);
    font-weight: 600;
    line-height: 1.1;
}

.location-heading p {
    max-width: 90rem;
    margin-bottom: 1.4rem;

    color: rgba(255,255,255,.62);

    font-size: 1.6rem;
    line-height: 1.82;
}

.location-heading .location-lead {
    color: rgba(255,255,255,.87);
    font-size: 1.75rem;
}


/* =========================================================
   Facts
========================================================= */

.location-facts {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 1.5rem;
    margin-bottom: 7rem;
}

.location-fact {
    padding: 2.7rem 2.3rem;

    background:
        linear-gradient(
            145deg,
            rgba(82,34,116,.42),
            rgba(31,13,48,.72)
        );

    border: 1px solid rgba(255,255,255,.07);
    border-radius: 1.5rem;
}

.location-fact-icon {
    width: 5rem;
    height: 5rem;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 2.2rem;

    color: var(--main-color);
    background: rgba(241,18,162,.09);

    border-radius: 1rem;

    font-size: 1.9rem;
}

.location-fact > span {
    display: block;

    margin-bottom: .6rem;

    color: rgba(255,255,255,.4);

    font-size: 1.05rem;
    letter-spacing: .08rem;
    text-transform: uppercase;
}

.location-fact h3 {
    margin-bottom: .8rem;

    color: #fff;

    font-size: 2rem;
    font-weight: 600;
}

.location-fact p {
    color: rgba(255,255,255,.52);

    font-size: 1.3rem;
    line-height: 1.6;
}


/* =========================================================
   Arrival Options
========================================================= */

.arrival-options {
    padding: 4.5rem;

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(241,18,162,.1),
            transparent 30rem
        ),
        linear-gradient(
            145deg,
            #2a123d,
            #180b25
        );

    border: 1px solid rgba(255,255,255,.08);
    border-radius: 2rem;
}

.arrival-options-heading {
    max-width: 80rem;
    margin-bottom: 3.5rem;
}

.arrival-options-heading span,
.driving-route-heading span {
    color: var(--main-color);

    font-size: 1.1rem;
    font-weight: 600;
    letter-spacing: .1rem;
    text-transform: uppercase;
}

.arrival-options-heading h3,
.driving-route-heading h3 {
    margin: .7rem 0 1.2rem;

    color: #fff;

    font-size: 3.2rem;
    font-weight: 600;
}

.arrival-options-heading p {
    color: rgba(255,255,255,.56);

    font-size: 1.45rem;
    line-height: 1.75;
}

.arrival-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);

    gap: 1.5rem;
}

.arrival-card {
    padding: 2.8rem;

    background: rgba(255,255,255,.035);

    border: 1px solid rgba(255,255,255,.06);
    border-radius: 1.4rem;
}

.arrival-card-top {
    display: flex;
    align-items: center;
    gap: 1.4rem;

    margin-bottom: 2rem;
}

.arrival-card-icon {
    width: 5rem;
    height: 5rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--main-color);
    background: rgba(241,18,162,.09);

    border-radius: 1rem;

    font-size: 1.8rem;
}

.arrival-card-top span {
    color: var(--main-color);

    font-size: 1.05rem;
    font-weight: 600;
    letter-spacing: .08rem;
    text-transform: uppercase;
}

.arrival-card h4 {
    margin-bottom: 1rem;

    color: #fff;

    font-size: 2rem;
    font-weight: 500;
}

.arrival-card > p {
    min-height: 10rem;

    color: rgba(255,255,255,.53);

    font-size: 1.35rem;
    line-height: 1.7;
}

.arrival-card-detail {
    display: flex;
    justify-content: space-between;

    gap: 1rem;

    margin-top: 2rem;
    padding-top: 1.5rem;

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

.arrival-card-detail span {
    color: rgba(255,255,255,.4);

    font-size: 1.1rem;
}

.arrival-card-detail strong {
    color: #fff;

    font-size: 1.2rem;
    font-weight: 500;
}


/* =========================================================
   Driving Route
========================================================= */

.driving-route {
    margin-top: 6rem;
}

.driving-route-heading {
    margin-bottom: 3rem;
}

.driving-route-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);

    gap: 1.5rem;
}

.driving-route-item {
    display: grid;
    grid-template-columns: auto 1fr;

    gap: 1.4rem;

    padding: 2.3rem;

    background:
        linear-gradient(
            145deg,
            rgba(69,29,98,.34),
            rgba(28,12,43,.62)
        );

    border: 1px solid rgba(255,255,255,.06);
    border-radius: 1.2rem;
}

.driving-route-item > span {
    color: rgba(241,18,162,.55);

    font-size: 1.8rem;
    font-weight: 600;
}

.driving-route-item h4 {
    margin-bottom: .6rem;

    color: #fff;

    font-size: 1.5rem;
    font-weight: 500;
}

.driving-route-item p {
    color: rgba(255,255,255,.5);

    font-size: 1.25rem;
    line-height: 1.6;
}


/* =========================================================
   Context
========================================================= */

.location-context {
    display: grid;
    grid-template-columns: auto 1fr;

    gap: 2rem;
    align-items: center;

    margin-top: 2rem;
    padding: 3.2rem 3.5rem;

    background:
        radial-gradient(
            circle at 100% 50%,
            rgba(241,18,162,.11),
            transparent 26rem
        ),
        #21102f;

    border: 1px solid rgba(255,255,255,.07);
    border-radius: 1.5rem;
}

.location-context-icon {
    width: 6rem;
    height: 6rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--main-color);
    background: rgba(241,18,162,.09);

    border-radius: 50%;

    font-size: 2rem;
}

.location-context span {
    display: block;

    margin-bottom: .4rem;

    color: var(--main-color);

    font-size: 1rem;
    font-weight: 600;
    letter-spacing: .08rem;
    text-transform: uppercase;
}

.location-context h3 {
    margin-bottom: .7rem;

    color: #fff;

    font-size: 2rem;
    font-weight: 500;
}

.location-context p {
    max-width: 95rem;

    color: rgba(255,255,255,.55);

    font-size: 1.35rem;
    line-height: 1.65;
}


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

@media (max-width: 1100px) {

    .location-facts,
    .driving-route-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}


@media (max-width: 800px) {

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

    .arrival-card > p {
        min-height: auto;
    }
}


@media (max-width: 600px) {

    .location-section {
        padding: 7rem 5%;
    }

    .location-heading h2 {
        font-size: 3.4rem;
    }

    .location-facts,
    .driving-route-grid {
        grid-template-columns: 1fr;
    }

    .arrival-options {
        padding: 3rem 2rem;
    }

    .driving-route-item {
        grid-template-columns: 1fr;
    }

    .location-context {
        grid-template-columns: 1fr;
        padding: 2.5rem 2rem;
    }

    .arrival-card-detail {
        flex-direction: column;
    }
}
/* =========================================================
   Parking
========================================================= */

.parking-section {
    padding: 10rem 5%;
    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(241, 18, 162, 0.09),
            transparent 38rem
        ),
        radial-gradient(
            circle at 5% 85%,
            rgba(96, 39, 145, 0.18),
            transparent 42rem
        ),
        linear-gradient(
            135deg,
            #13091f 0%,
            #1f0f30 50%,
            #12081d 100%
        );
}

.parking-shell {
    max-width: 1400px;
    margin: 0 auto;
}


/* Heading */

.parking-heading {
    max-width: 92rem;
    margin-bottom: 6rem;
}

.parking-label {
    display: inline-flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.6rem;
    color: var(--main-color);
    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 0.14rem;
    text-transform: uppercase;
}

.parking-heading h2 {
    margin-bottom: 2.1rem;
    color: #fff;
    font-size: clamp(3.8rem, 5vw, 5.5rem);
    font-weight: 600;
    line-height: 1.1;
}

.parking-heading p {
    max-width: 88rem;
    margin-bottom: 1.4rem;
    color: rgba(255,255,255,.62);
    font-size: 1.6rem;
    line-height: 1.82;
}

.parking-heading .parking-lead {
    color: rgba(255,255,255,.87);
    font-size: 1.75rem;
}


/* Facts */

.parking-facts {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
    margin-bottom: 7rem;
}

.parking-fact {
    padding: 2.7rem 2.3rem;
    background:
        linear-gradient(
            145deg,
            rgba(82,34,116,.42),
            rgba(31,13,48,.72)
        );
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 1.5rem;
}

.parking-fact-icon {
    width: 5rem;
    height: 5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 2.2rem;
    color: var(--main-color);
    background: rgba(241,18,162,.09);
    border-radius: 1rem;
    font-size: 1.9rem;
}

.parking-fact > span {
    display: block;
    margin-bottom: .6rem;
    color: rgba(255,255,255,.4);
    font-size: 1.05rem;
    letter-spacing: .08rem;
    text-transform: uppercase;
}

.parking-fact h3 {
    margin-bottom: .8rem;
    color: #fff;
    font-size: 2rem;
    font-weight: 600;
}

.parking-fact p {
    color: rgba(255,255,255,.52);
    font-size: 1.3rem;
    line-height: 1.6;
}


/* Route */

.parking-route {
    padding: 4.5rem;
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(241,18,162,.1),
            transparent 30rem
        ),
        linear-gradient(
            145deg,
            #2a123d,
            #180b25
        );
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 2rem;
}

.parking-route-heading {
    max-width: 78rem;
    margin-bottom: 3.5rem;
}

.parking-route-heading span,
.parking-shared-heading span {
    color: var(--main-color);
    font-size: 1.1rem;
    font-weight: 600;
    letter-spacing: .1rem;
    text-transform: uppercase;
}

.parking-route-heading h3,
.parking-shared-heading h3 {
    margin: .7rem 0 1.2rem;
    color: #fff;
    font-size: 3.2rem;
    font-weight: 600;
}

.parking-route-heading p {
    color: rgba(255,255,255,.56);
    font-size: 1.45rem;
    line-height: 1.75;
}

.parking-route-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
}

.parking-route-item {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 1.4rem;
    padding: 2.3rem;
    background: rgba(255,255,255,.035);
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 1.2rem;
}

.parking-route-item > span {
    color: rgba(241,18,162,.55);
    font-size: 1.8rem;
    font-weight: 600;
}

.parking-route-item h4 {
    margin-bottom: .6rem;
    color: #fff;
    font-size: 1.5rem;
    font-weight: 500;
}

.parking-route-item p {
    color: rgba(255,255,255,.5);
    font-size: 1.25rem;
    line-height: 1.6;
}


/* Parking Note */

.parking-note {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 2rem;
    align-items: center;
    margin-top: 2rem;
    padding: 3rem 3.5rem;
    background: #21102f;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 1.5rem;
}

.parking-note-icon {
    width: 6rem;
    height: 6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--main-color);
    background: rgba(241,18,162,.09);
    border-radius: 50%;
    font-size: 2rem;
}

.parking-note span {
    display: block;
    margin-bottom: .4rem;
    color: var(--main-color);
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: .08rem;
    text-transform: uppercase;
}

.parking-note h3 {
    margin-bottom: .7rem;
    color: #fff;
    font-size: 2rem;
    font-weight: 500;
}

.parking-note p {
    max-width: 95rem;
    color: rgba(255,255,255,.55);
    font-size: 1.35rem;
    line-height: 1.65;
}


/* Shared Parking */

.parking-shared {
    margin-top: 6rem;
}

.parking-shared-heading {
    margin-bottom: 3rem;
}

.parking-shared-content {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
}

.parking-shared-item {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 1.5rem;
    padding: 2.5rem;
    background:
        linear-gradient(
            145deg,
            rgba(69,29,98,.34),
            rgba(28,12,43,.62)
        );
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 1.3rem;
}

.parking-shared-item > i {
    width: 5rem;
    height: 5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--main-color);
    background: rgba(241,18,162,.09);
    border-radius: 1rem;
    font-size: 1.8rem;
}

.parking-shared-item h4 {
    margin-bottom: .6rem;
    color: #fff;
    font-size: 1.6rem;
    font-weight: 500;
}

.parking-shared-item p {
    color: rgba(255,255,255,.5);
    font-size: 1.3rem;
    line-height: 1.65;
}


/* Responsive */

@media (max-width: 1100px) {

    .parking-facts,
    .parking-route-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 750px) {

    .parking-shared-content {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {

    .parking-section {
        padding: 7rem 5%;
    }

    .parking-heading h2 {
        font-size: 3.4rem;
    }

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

    .parking-route {
        padding: 3rem 2rem;
    }

    .parking-route-item,
    .parking-shared-item {
        grid-template-columns: 1fr;
    }

    .parking-note {
        grid-template-columns: 1fr;
        padding: 2.5rem 2rem;
    }
}

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

.faq-section {
    padding: 10rem 5%;
    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(241, 18, 162, 0.09),
            transparent 38rem
        ),
        radial-gradient(
            circle at 5% 85%,
            rgba(96, 39, 145, 0.18),
            transparent 42rem
        ),
        linear-gradient(
            135deg,
            #13091f 0%,
            #1f0f30 50%,
            #12081d 100%
        );
}

.faq-shell {
    max-width: 1200px;
    margin: 0 auto;
}


/* Heading */

.faq-heading {
    max-width: 82rem;
    margin-bottom: 5rem;
}

.faq-label {
    display: inline-flex;
    align-items: center;
    gap: 1rem;

    margin-bottom: 1.6rem;

    color: var(--main-color);

    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 0.14rem;
    text-transform: uppercase;
}

.faq-heading h2 {
    margin-bottom: 1.8rem;

    color: #fff;

    font-size: clamp(3.8rem, 5vw, 5.5rem);
    font-weight: 600;
    line-height: 1.1;
}

.faq-heading p {
    color: rgba(255,255,255,.62);

    font-size: 1.6rem;
    line-height: 1.8;
}


/* FAQ Grid */

.faq-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: start;

    gap: 1.4rem;
}


/* Item */

.faq-item {
    overflow: hidden;

    background:
        linear-gradient(
            145deg,
            rgba(71, 30, 101, 0.42),
            rgba(27, 12, 42, 0.72)
        );

    border: 1px solid rgba(255,255,255,.07);
    border-radius: 1.3rem;

    transition:
        border-color .25s ease,
        background .25s ease;
}

.faq-item:hover {
    border-color: rgba(241,18,162,.22);
}

.faq-item.active {
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(241,18,162,.08),
            transparent 18rem
        ),
        linear-gradient(
            145deg,
            rgba(76, 31, 108, 0.5),
            rgba(29, 12, 44, 0.78)
        );

    border-color: rgba(241,18,162,.22);
}


/* Question */

.faq-question {
    width: 100%;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 2rem;

    padding: 2.2rem 2.4rem;

    color: #fff;
    background: transparent;

    border: 0;

    cursor: pointer;

    text-align: left;
}

.faq-question span {
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.45;
}

.faq-question i {
    flex: 0 0 auto;

    width: 3.5rem;
    height: 3.5rem;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--main-color);
    background: rgba(241,18,162,.08);

    border-radius: 50%;

    font-size: 1.2rem;

    transition: transform .3s ease;
}

.faq-item.active .faq-question i {
    transform: rotate(45deg);
}


/* Answer */

.faq-answer {
    max-height: 0;
    overflow: hidden;

    transition: max-height .35s ease;
}

.faq-item.active .faq-answer {
    max-height: 30rem;
}

.faq-answer-inner {
    padding: 0 2.4rem 2.3rem;
}

.faq-answer p {
    padding-top: 1.7rem;

    color: rgba(255,255,255,.56);

    border-top: 1px solid rgba(255,255,255,.07);

    font-size: 1.32rem;
    line-height: 1.7;
}

.faq-answer a {
    color: var(--main-color);

    text-decoration: none;

    transition: opacity .2s ease;
}

.faq-answer a:hover {
    opacity: .75;
}


/* Responsive */

@media (max-width: 800px) {

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


@media (max-width: 600px) {

    .faq-section {
        padding: 7rem 5%;
    }

    .faq-heading h2 {
        font-size: 3.4rem;
    }

    .faq-question {
        padding: 2rem 1.8rem;
    }

    .faq-answer-inner {
        padding: 0 1.8rem 2rem;
    }
}


/* =========================================================
   Casino Duisburg Legal Pages & Updated Footer
========================================================= */
body.legal-page {
    background: #13091f;
    color: rgba(255,255,255,.72);
}

.legal-page .header .header-2 {
    background: rgba(10, 4, 16, .96);
    border-bottom: 1px solid rgba(241,18,162,.18);
    box-shadow: 0 .6rem 2.5rem rgba(0,0,0,.22);
}

.legal-hero {
    padding: 17rem 5% 7rem;
    background:
      radial-gradient(circle at 90% 10%, rgba(241,18,162,.13), transparent 38rem),
      radial-gradient(circle at 5% 85%, rgba(79,23,135,.25), transparent 42rem),
      linear-gradient(135deg, #13091f 0%, #211031 52%, #12081d 100%);
    border-bottom: 1px solid rgba(255,255,255,.07);
}
.legal-hero-inner,
.legal-content-shell { max-width: 1180px; margin: 0 auto; }
.legal-kicker {
    display: inline-flex; align-items: center; gap: 1rem; margin-bottom: 1.4rem;
    color: var(--main-color); font-size: 1.3rem; font-weight: 600;
    letter-spacing: .13rem; text-transform: uppercase;
}
.legal-hero h1 {
    max-width: 900px; color: #fff; font-size: clamp(4rem, 6vw, 6.4rem);
    font-weight: 600; line-height: 1.05; margin-bottom: 2rem;
}
.legal-hero p {
    max-width: 880px; color: rgba(255,255,255,.66); font-size: 1.65rem; line-height: 1.8;
}
.legal-updated {
    display: inline-flex; margin-top: 2.5rem; padding: 1rem 1.4rem;
    border: 1px solid rgba(255,255,255,.08); border-radius: .8rem;
    background: rgba(255,255,255,.04); color: rgba(255,255,255,.55); font-size: 1.25rem;
}
.legal-content {
    padding: 7rem 5% 10rem;
    background:
      radial-gradient(circle at 0% 40%, rgba(92,40,140,.13), transparent 38rem),
      linear-gradient(135deg, #12081d 0%, #1b0c2a 50%, #13091f 100%);
}
.legal-summary {
    margin-bottom: 4rem; padding: 3rem;
    background: linear-gradient(145deg, rgba(83,34,117,.38), rgba(30,13,47,.7));
    border: 1px solid rgba(255,255,255,.07); border-radius: 1.6rem;
}
.legal-summary h2 { color:#fff; font-size:2.5rem; margin-bottom:1rem; }
.legal-summary p { color:rgba(255,255,255,.6); font-size:1.45rem; line-height:1.75; }
.legal-section {
    margin-bottom: 2rem; padding: 3.2rem;
    background: rgba(255,255,255,.035); border: 1px solid rgba(255,255,255,.065);
    border-radius: 1.5rem;
}
.legal-section h2 { color:#fff; font-size:2.6rem; line-height:1.25; margin-bottom:1.3rem; }
.legal-section h3 { color:#fff; font-size:1.85rem; line-height:1.35; margin:2rem 0 .8rem; }
.legal-section p, .legal-section li {
    color:rgba(255,255,255,.6); font-size:1.42rem; line-height:1.78;
}
.legal-section p + p { margin-top: 1.2rem; }
.legal-section ul, .legal-section ol { margin: 1.2rem 0 0 2.2rem; }
.legal-section li { margin-bottom: .8rem; }
.legal-section a { color:var(--main-color); text-decoration:underline; text-underline-offset:.25rem; }
.legal-note {
    margin-top:1.8rem; padding:1.7rem 1.9rem;
    background:rgba(241,18,162,.06); border-left:3px solid var(--main-color); border-radius:.8rem;
}
.legal-note p { margin:0; }
.legal-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1.5rem; margin-top:1.5rem; }
.legal-card {
    padding:2rem; background:rgba(255,255,255,.035); border:1px solid rgba(255,255,255,.055); border-radius:1rem;
}
.legal-card h3 { margin:0 0 .7rem; font-size:1.65rem; }
.legal-toc {
    display:grid; grid-template-columns:repeat(2,1fr); gap:.8rem; margin-top:1.5rem;
}
.legal-toc a {
    display:block; padding:1rem 1.2rem; color:rgba(255,255,255,.72);
    background:rgba(255,255,255,.035); border:1px solid rgba(255,255,255,.05); border-radius:.7rem;
}
.legal-toc a:hover { color:var(--main-color); border-color:rgba(241,18,162,.22); }

.site-footer .footer-main-links { margin-top: 2rem; }
.site-footer .footer-legal-links { margin-top: 1.4rem; border-top-color: rgba(255,255,255,.28); }
.site-footer .footer-item > p { max-width: 760px; margin-left:auto; margin-right:auto; }

@media (max-width: 800px) {
  .legal-grid, .legal-toc { grid-template-columns:1fr; }
  .legal-section { padding:2.5rem 2rem; }
}
@media (max-width: 600px) {
  .legal-hero { padding:14rem 5% 6rem; }
  .legal-content { padding:5rem 5% 7rem; }
  .legal-hero h1 { font-size:3.7rem; }
  .legal-summary { padding:2.3rem 1.8rem; }
}
/* ==================== About Area (Start) ==================== */

.about-lounge{
    padding: 7rem 5%;
    background-color: #f2f3f8;
}

.about-lounge__shell{
    max-width: 140rem;
    margin: 0 auto;
}


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

.about-lounge__intro{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 5rem;
}

.about-lounge__visual{
    position: relative;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 48rem;
            flex: 1 1 48rem;
    height: 54rem;
}

.about-lounge__visual img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--border-radius-3);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.about-lounge__year{
    position: absolute;
    right: 2rem;
    bottom: 2rem;
    min-width: 14rem;
    padding: 1.8rem 2.2rem;
    text-align: center;
    background-color: var(--secondary-color);
    border-bottom: 0.4rem solid var(--main-color);
    border-radius: var(--border-radius-1);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.about-lounge__year span{
    display: block;
    margin-bottom: 0.4rem;
    color: var(--light-grey);
    font-size: 1.3rem;
    font-weight: 500;
    letter-spacing: 0.1rem;
}

.about-lounge__year strong{
    display: block;
    color: var(--white);
    font-size: 3.5rem;
    font-weight: 600;
    line-height: 1;
}


/* ===== Text ===== */

.about-lounge__content{
    -webkit-box-flex: 1;
        -ms-flex: 1 1 55rem;
            flex: 1 1 55rem;
}

.about-lounge__eyebrow{
    display: inline-block;
    margin-bottom: 1rem;
    color: var(--main-color);
    font-size: 1.8rem;
    font-weight: 600;
    letter-spacing: 0.15rem;
}

.about-lounge__content h2{
    margin-bottom: 2.5rem;
    color: var(--secondary-color);
    font-size: 4.5rem;
    font-weight: 600;
    line-height: 1.2;
    text-shadow: 1px 1px 8px rgba(0, 0, 0, 0.1);
}

.about-lounge__content h2 span{
    display: block;
    color: var(--main-color);
}

.about-lounge__content p{
    margin-bottom: 1.5rem;
    color: var(--grey);
    font-size: 1.6rem;
    line-height: 1.8;
}

.about-lounge__content .about-lounge__lead{
    color: var(--secondary-color);
    font-size: 1.75rem;
    font-weight: 500;
}


/* ===== Facts ===== */

.about-lounge__facts{
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (minmax(24rem, 1fr))[4];
    grid-template-columns: repeat(4, minmax(24rem, 1fr));
    gap: 1.5rem;
    margin-top: 6rem;
}

.about-lounge__fact{
    position: relative;
    padding: 3rem 2.5rem;
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    border-bottom: 0.4rem solid var(--main-color);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.about-lounge__fact:hover{
    -webkit-transform: translateY(-0.5rem);
        -ms-transform: translateY(-0.5rem);
            transform: translateY(-0.5rem);
}

.about-lounge__icon{
    width: 6rem;
    height: 6rem;
    margin-bottom: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-color: var(--main-color);
    -webkit-clip-path: var(--custom-clip-path);
            clip-path: var(--custom-clip-path);
}

.about-lounge__icon i{
    color: transparent;
    -webkit-text-stroke: 1.5px var(--white);
    font-size: 2.3rem;
}

.about-lounge__fact > span{
    display: block;
    margin-bottom: 0.5rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
    letter-spacing: 0.08rem;
}

.about-lounge__fact h3{
    margin-bottom: 1rem;
    color: var(--secondary-color);
    font-size: 2.3rem;
    font-weight: 600;
}

.about-lounge__fact p{
    color: var(--grey);
    font-size: 1.5rem;
    line-height: 1.7;
}


/* ===== Lower Content ===== */

.about-lounge__identity{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    gap: 3rem;
    margin-top: 6rem;
}

.about-lounge__identity-main{
    -webkit-box-flex: 1;
        -ms-flex: 1 1 65rem;
            flex: 1 1 65rem;
    padding: 4rem;
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.about-lounge__identity-main h3{
    margin-bottom: 2rem;
    color: var(--secondary-color);
    font-size: 3.4rem;
    font-weight: 600;
    line-height: 1.25;
}

.about-lounge__identity-main p{
    margin-bottom: 1.5rem;
    color: var(--grey);
    font-size: 1.6rem;
    line-height: 1.8;
}

.about-lounge__identity-main p:last-child{
    margin-bottom: 0;
}


/* ===== Side Information ===== */

.about-lounge__identity-side{
    -webkit-box-flex: 1;
        -ms-flex: 1 1 34rem;
            flex: 1 1 34rem;
    padding: 3rem;
    background-color: var(--secondary-color);
    border-radius: var(--border-radius-3);
    border-bottom: 0.5rem solid var(--main-color);
    -webkit-box-shadow: var(--box-shadow);
            box-shadow: var(--box-shadow);
}

.about-lounge__side-label{
    margin-bottom: 1rem;
    padding-bottom: 1.5rem;
    color: var(--white);
    font-size: 2.2rem;
    font-weight: 600;
    border-bottom: 0.1rem solid rgba(255, 255, 255, 0.2);
}

.about-lounge__side-row{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 1.5rem;
    padding: 2rem 0;
    border-bottom: 0.1rem solid rgba(255, 255, 255, 0.15);
}

.about-lounge__side-row:last-child{
    border-bottom: none;
    padding-bottom: 0;
}

.about-lounge__side-row i{
    width: 4rem;
    height: 4rem;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: var(--white);
    background-color: var(--main-color);
    border-radius: 50%;
    font-size: 1.6rem;
}

.about-lounge__side-row span{
    display: block;
    margin-bottom: 0.4rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
}

.about-lounge__side-row p{
    color: var(--light-grey);
    font-size: 1.5rem;
    line-height: 1.6;
}


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

@media (max-width: 1200px){

    .about-lounge__facts{
        -ms-grid-columns: (minmax(24rem, 1fr))[2];
        grid-template-columns: repeat(2, minmax(24rem, 1fr));
    }
}

@media (max-width: 991px){

    .about-lounge{
        padding: 6rem 5%;
    }

    .about-lounge__intro{
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-align: stretch;
            -ms-flex-align: stretch;
                align-items: stretch;
        gap: 4rem;
    }

    .about-lounge__visual{
        -webkit-box-flex: initial;
            -ms-flex: initial;
                flex: initial;
        height: 50rem;
    }

    .about-lounge__identity{
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
    }

    .about-lounge__identity-main,
    .about-lounge__identity-side{
        -webkit-box-flex: initial;
            -ms-flex: initial;
                flex: initial;
    }
}

@media (max-width: 600px){

    .about-lounge{
        padding: 5rem 5%;
    }

    .about-lounge__visual{
        height: 38rem;
    }

    .about-lounge__content h2{
        font-size: 3.4rem;
    }

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

    .about-lounge__identity-main{
        padding: 3rem 2rem;
    }

    .about-lounge__identity-main h3{
        font-size: 2.8rem;
    }

    .about-lounge__identity-side{
        padding: 2.5rem 2rem;
    }

    .about-lounge__year{
        right: 1.5rem;
        bottom: 1.5rem;
    }
}

/* ==================== About Area (End) ==================== */

/* ==================== Casino Area (Start) ==================== */

.casino-overview{
    padding: 9rem 5%;
    background-color: var(--white);
}

.casino-overview__container{
    max-width: 140rem;
    margin: 0 auto;
}


/* ===== Heading ===== */

.casino-overview__heading{
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    gap: 8rem;
    align-items: end;
    margin-bottom: 6rem;
}

.casino-overview__eyebrow{
    display: inline-block;
    margin-bottom: 1.2rem;
    color: var(--main-color);
    font-size: 1.7rem;
    font-weight: 600;
    letter-spacing: 0.12rem;
}

.casino-overview__heading h2{
    color: var(--secondary-color);
    font-size: 4.8rem;
    font-weight: 600;
    line-height: 1.15;
}

.casino-overview__heading h2 span{
    display: block;
    color: var(--main-color);
}

.casino-overview__heading-text{
    padding-left: 3rem;
    border-left: 0.4rem solid var(--main-color);
}

.casino-overview__heading-text p{
    margin-bottom: 1.4rem;
    color: var(--grey);
    font-size: 1.6rem;
    line-height: 1.85;
}

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


/* ===== Structure ===== */

.casino-overview__structure{
    margin-bottom: 2rem;
    padding: 4rem;
    background-color: var(--secondary-color);
    border-radius: var(--border-radius-3);
    border-bottom: 0.5rem solid var(--main-color);
    box-shadow: var(--box-shadow);
}

.casino-overview__structure-head{
    display: flex;
    align-items: center;
    gap: 2.5rem;
    margin-bottom: 3.5rem;
    padding-bottom: 2.5rem;
    border-bottom: 0.1rem solid rgba(255,255,255,0.15);
}

.casino-overview__structure-head > span{
    color: var(--main-color);
    font-size: 4.5rem;
    font-weight: 700;
    line-height: 1;
}

.casino-overview__label{
    display: block;
    margin-bottom: 0.5rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
    letter-spacing: 0.08rem;
}

.casino-overview__structure-head h3{
    color: var(--white);
    font-size: 3rem;
    font-weight: 600;
}

.casino-overview__structure-content{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 5rem;
}

.casino-overview__structure-column{
    position: relative;
}

.casino-overview__structure-column:first-child{
    padding-right: 5rem;
    border-right: 0.1rem solid rgba(255,255,255,0.15);
}

.casino-overview__small-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5.5rem;
    height: 5.5rem;
    margin-bottom: 2rem;
    background-color: var(--main-color);
    clip-path: var(--custom-clip-path);
}

.casino-overview__small-icon i{
    color: transparent;
    font-size: 2.1rem;
    -webkit-text-stroke: 1.4px var(--white);
}

.casino-overview__structure-column h4{
    margin-bottom: 1.5rem;
    color: var(--white);
    font-size: 2.4rem;
    font-weight: 600;
}

.casino-overview__structure-column p{
    margin-bottom: 1.3rem;
    color: var(--light-grey);
    font-size: 1.5rem;
    line-height: 1.8;
}

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


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

.casino-overview__games{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
}

.casino-overview__game{
    position: relative;
    min-height: 39rem;
    padding: 3.5rem;
    background-color: #f2f3f8;
    border-radius: var(--border-radius-3);
    border-bottom: 0.4rem solid var(--main-color);
    box-shadow: var(--box-shadow);
}

.casino-overview__game-top{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2.5rem;
}

.casino-overview__game-number{
    color: var(--secondary-color);
    font-size: 3.5rem;
    font-weight: 700;
    opacity: 0.12;
}

.casino-overview__game-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5.5rem;
    height: 5.5rem;
    background-color: var(--main-color);
    clip-path: var(--custom-clip-path);
}

.casino-overview__game-icon i{
    color: transparent;
    font-size: 2rem;
    -webkit-text-stroke: 1.4px var(--white);
}

.casino-overview__game h3{
    margin-bottom: 1.5rem;
    color: var(--secondary-color);
    font-size: 2.6rem;
    font-weight: 600;
}

.casino-overview__game p{
    margin-bottom: 1.4rem;
    color: var(--grey);
    font-size: 1.5rem;
    line-height: 1.8;
}

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


/* ===== First Visit ===== */

.casino-overview__first{
    display: grid;
    grid-template-columns: 0.75fr 1.25fr;
    gap: 6rem;
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: #f2f3f8;
    border-radius: var(--border-radius-3);
}

.casino-overview__first-title{
    display: flex;
    align-items: flex-start;
    gap: 2rem;
}

.casino-overview__first-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 6rem;
    height: 6rem;
    background-color: var(--main-color);
    border-radius: 50%;
}

.casino-overview__first-icon i{
    color: var(--white);
    font-size: 2.1rem;
}

.casino-overview__first-title h3{
    color: var(--secondary-color);
    font-size: 2.8rem;
    font-weight: 600;
    line-height: 1.3;
}

.casino-overview__first-content{
    padding-left: 4rem;
    border-left: 0.3rem solid var(--main-color);
}

.casino-overview__first-content p{
    margin-bottom: 1.4rem;
    color: var(--grey);
    font-size: 1.55rem;
    line-height: 1.85;
}

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


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

@media (max-width: 1000px){

    .casino-overview__heading{
        grid-template-columns: 1fr;
        gap: 3rem;
    }

    .casino-overview__structure-content{
        grid-template-columns: 1fr;
        gap: 3rem;
    }

    .casino-overview__structure-column:first-child{
        padding-right: 0;
        padding-bottom: 3rem;
        border-right: 0;
        border-bottom: 0.1rem solid rgba(255,255,255,0.15);
    }

    .casino-overview__first{
        grid-template-columns: 1fr;
        gap: 3rem;
    }

    .casino-overview__first-content{
        padding-left: 2.5rem;
    }
}

@media (max-width: 700px){

    .casino-overview{
        padding: 6rem 5%;
    }

    .casino-overview__heading h2{
        font-size: 3.5rem;
    }

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

    .casino-overview__structure,
    .casino-overview__game,
    .casino-overview__first{
        padding: 3rem 2.5rem;
    }
}

@media (max-width: 500px){

    .casino-overview__heading h2{
        font-size: 3rem;
    }

    .casino-overview__structure-head{
        align-items: flex-start;
    }

    .casino-overview__structure-head > span{
        font-size: 3.5rem;
    }

    .casino-overview__first-title{
        flex-direction: column;
    }

    .casino-overview__first-content{
        padding-left: 0;
        border-left: 0;
    }
}

/* ==================== Casino Area (End) ==================== */

/* ==================== Slots Area (Start) ==================== */

.slots-area{
    padding: 9rem 5%;
    background-color: #f2f3f8;
}

.slots-area__container{
    max-width: 140rem;
    margin: 0 auto;
}


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

.slots-area__intro{
    display: grid;
    grid-template-columns: 1.05fr 0.95fr;
    gap: 6rem;
    align-items: center;
}

.slots-area__eyebrow{
    display: inline-block;
    margin-bottom: 1rem;
    color: var(--main-color);
    font-size: 1.7rem;
    font-weight: 600;
    letter-spacing: 0.12rem;
}

.slots-area__content h2{
    margin-bottom: 2.5rem;
    color: var(--secondary-color);
    font-size: 4.8rem;
    font-weight: 600;
    line-height: 1.15;
}

.slots-area__content h2 span{
    display: block;
    color: var(--main-color);
}

.slots-area__content p{
    margin-bottom: 1.4rem;
    color: var(--grey);
    font-size: 1.6rem;
    line-height: 1.85;
}

.slots-area__content .slots-area__lead{
    color: var(--secondary-color);
    font-size: 1.75rem;
    font-weight: 500;
}


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

.slots-area__visual{
    position: relative;
    height: 58rem;
}

.slots-area__visual img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.slots-area__visual-info{
    position: absolute;
    right: 2rem;
    bottom: 2rem;
    width: 23rem;
    padding: 2.5rem;
    background-color: var(--secondary-color);
    border-bottom: 0.4rem solid var(--main-color);
    border-radius: var(--border-radius-2);
    box-shadow: var(--box-shadow);
}

.slots-area__visual-info span{
    display: block;
    margin-bottom: 0.5rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
}

.slots-area__visual-info strong{
    display: block;
    margin-bottom: 0.8rem;
    color: var(--white);
    font-size: 2.7rem;
    font-weight: 600;
}

.slots-area__visual-info p{
    color: var(--light-grey);
    font-size: 1.35rem;
    line-height: 1.6;
}


/* ===== Features ===== */

.slots-area__features{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    margin-top: 6rem;
}

.slots-area__feature{
    padding: 3.5rem;
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    border-bottom: 0.4rem solid var(--main-color);
    box-shadow: var(--box-shadow);
}

.slots-area__feature-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 6rem;
    height: 6rem;
    margin-bottom: 2.2rem;
    background-color: var(--main-color);
    clip-path: var(--custom-clip-path);
}

.slots-area__feature-icon i{
    color: transparent;
    font-size: 2.2rem;
    -webkit-text-stroke: 1.4px var(--white);
}

.slots-area__feature > span{
    display: block;
    margin-bottom: 0.5rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
}

.slots-area__feature h3{
    margin-bottom: 1.4rem;
    color: var(--secondary-color);
    font-size: 2.4rem;
    font-weight: 600;
}

.slots-area__feature p{
    color: var(--grey);
    font-size: 1.5rem;
    line-height: 1.8;
}


/* ===== Arena ===== */

.slots-area__arena{
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    gap: 6rem;
    margin-top: 2rem;
    padding: 5rem;
    background-color: var(--secondary-color);
    border-radius: var(--border-radius-3);
    border-bottom: 0.5rem solid var(--main-color);
    box-shadow: var(--box-shadow);
}

.slots-area__arena-heading{
    display: flex;
    align-items: flex-start;
    gap: 2.5rem;
}

.slots-area__arena-number{
    color: var(--main-color);
    font-size: 4.5rem;
    font-weight: 700;
    line-height: 1;
}

.slots-area__arena-heading h3{
    color: var(--white);
    font-size: 3rem;
    font-weight: 600;
    line-height: 1.3;
}

.slots-area__arena-content{
    padding-left: 4rem;
    border-left: 0.1rem solid rgba(255,255,255,0.18);
}

.slots-area__arena-content p{
    margin-bottom: 1.4rem;
    color: var(--light-grey);
    font-size: 1.55rem;
    line-height: 1.85;
}

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


/* ===== Blackjack ===== */

.slots-area__blackjack{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.slots-area__blackjack-title{
    display: flex;
    align-items: center;
    gap: 2rem;
    margin-bottom: 3.5rem;
    padding-bottom: 2.5rem;
    border-bottom: 0.1rem solid rgba(0,0,0,0.1);
}

.slots-area__blackjack-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 6rem;
    height: 6rem;
    background-color: var(--main-color);
    border-radius: 50%;
}

.slots-area__blackjack-icon i{
    color: var(--white);
    font-size: 2.2rem;
}

.slots-area__blackjack-title span{
    display: block;
    margin-bottom: 0.4rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
}

.slots-area__blackjack-title h3{
    color: var(--secondary-color);
    font-size: 3rem;
    font-weight: 600;
}

.slots-area__blackjack-body{
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: 6rem;
}

.slots-area__blackjack-main p{
    margin-bottom: 1.4rem;
    color: var(--grey);
    font-size: 1.55rem;
    line-height: 1.85;
}

.slots-area__blackjack-main p:last-child{
    margin-bottom: 0;
}

.slots-area__blackjack-steps{
    padding-left: 4rem;
    border-left: 0.3rem solid var(--main-color);
}

.slots-area__step{
    display: grid;
    grid-template-columns: 4.5rem 1fr;
    gap: 1.5rem;
    padding: 1.8rem 0;
    border-bottom: 0.1rem solid rgba(0,0,0,0.08);
}

.slots-area__step:first-child{
    padding-top: 0;
}

.slots-area__step:last-child{
    padding-bottom: 0;
    border-bottom: 0;
}

.slots-area__step > span{
    color: var(--main-color);
    font-size: 2.1rem;
    font-weight: 700;
}

.slots-area__step h4{
    margin-bottom: 0.5rem;
    color: var(--secondary-color);
    font-size: 1.7rem;
    font-weight: 600;
}

.slots-area__step p{
    color: var(--grey);
    font-size: 1.4rem;
    line-height: 1.65;
}


/* ===== Details ===== */

.slots-area__details{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.slots-area__details-head{
    max-width: 75rem;
    margin-bottom: 3.5rem;
}

.slots-area__details-head h3{
    color: var(--secondary-color);
    font-size: 3.2rem;
    font-weight: 600;
}

.slots-area__details-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
}

.slots-area__detail{
    padding: 1rem 3.5rem;
    border-right: 0.1rem solid rgba(0,0,0,0.1);
}

.slots-area__detail:first-child{
    padding-left: 0;
}

.slots-area__detail:last-child{
    padding-right: 0;
    border-right: 0;
}

.slots-area__detail-number{
    display: block;
    margin-bottom: 1.2rem;
    color: var(--main-color);
    font-size: 2.5rem;
    font-weight: 700;
}

.slots-area__detail h4{
    margin-bottom: 1rem;
    color: var(--secondary-color);
    font-size: 2rem;
    font-weight: 600;
}

.slots-area__detail p{
    color: var(--grey);
    font-size: 1.45rem;
    line-height: 1.75;
}


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

.slots-area__note{
    display: flex;
    align-items: flex-start;
    gap: 2rem;
    margin-top: 2rem;
    padding: 3rem 3.5rem;
    background-color: var(--secondary-color);
    border-radius: var(--border-radius-3);
}

.slots-area__note-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 4.5rem;
    height: 4.5rem;
    background-color: var(--main-color);
    border-radius: 50%;
}

.slots-area__note-icon i{
    color: var(--white);
    font-size: 1.7rem;
}

.slots-area__note span{
    display: block;
    margin-bottom: 0.6rem;
    color: var(--main-color);
    font-size: 1.4rem;
    font-weight: 600;
}

.slots-area__note p{
    max-width: 105rem;
    color: var(--light-grey);
    font-size: 1.45rem;
    line-height: 1.75;
}


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

@media (max-width: 1050px){

    .slots-area__intro,
    .slots-area__arena,
    .slots-area__blackjack-body{
        grid-template-columns: 1fr;
    }

    .slots-area__visual{
        height: 50rem;
    }

    .slots-area__arena-content,
    .slots-area__blackjack-steps{
        padding-left: 0;
        border-left: 0;
    }

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

    .slots-area__feature:last-child{
        grid-column: 1 / -1;
    }
}

@media (max-width: 750px){

    .slots-area{
        padding: 6rem 5%;
    }

    .slots-area__content h2{
        font-size: 3.6rem;
    }

    .slots-area__features,
    .slots-area__details-grid{
        grid-template-columns: 1fr;
    }

    .slots-area__feature:last-child{
        grid-column: auto;
    }

    .slots-area__detail{
        padding: 2.5rem 0;
        border-right: 0;
        border-bottom: 0.1rem solid rgba(0,0,0,0.1);
    }

    .slots-area__detail:first-child{
        padding-top: 0;
    }

    .slots-area__detail:last-child{
        padding-bottom: 0;
        border-bottom: 0;
    }
}

@media (max-width: 500px){

    .slots-area__visual{
        height: 38rem;
    }

    .slots-area__visual-info{
        right: 1.5rem;
        bottom: 1.5rem;
        width: calc(100% - 3rem);
    }

    .slots-area__arena,
    .slots-area__blackjack,
    .slots-area__details{
        padding: 3rem 2.5rem;
    }

    .slots-area__arena-heading{
        flex-direction: column;
    }

    .slots-area__blackjack-title{
        align-items: flex-start;
    }

    .slots-area__note{
        padding: 2.5rem;
    }
}

/* ==================== Slots Area (End) ==================== */

/* ==================== Roulette Area (Start) ==================== */

.roulette-area{
    padding: 9rem 5%;
    background-color: var(--white);
}

.roulette-area__container{
    max-width: 140rem;
    margin: 0 auto;
}


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

.roulette-area__intro{
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    gap: 6rem;
    align-items: center;
}

.roulette-area__visual{
    position: relative;
    height: 62rem;
}

.roulette-area__visual img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.roulette-area__visual-card{
    position: absolute;
    left: 2rem;
    bottom: 2rem;
    width: 22rem;
    padding: 2.4rem;
    background-color: var(--secondary-color);
    border-bottom: 0.4rem solid var(--main-color);
    border-radius: var(--border-radius-2);
    box-shadow: var(--box-shadow);
}

.roulette-area__visual-card span{
    display: block;
    margin-bottom: 0.4rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
}

.roulette-area__visual-card strong{
    display: block;
    margin-bottom: 0.7rem;
    color: var(--white);
    font-size: 2.7rem;
    font-weight: 600;
}

.roulette-area__visual-card p{
    color: var(--light-grey);
    font-size: 1.35rem;
    line-height: 1.6;
}

.roulette-area__eyebrow{
    display: inline-block;
    margin-bottom: 1rem;
    color: var(--main-color);
    font-size: 1.7rem;
    font-weight: 600;
    letter-spacing: 0.12rem;
}

.roulette-area__content h2{
    margin-bottom: 2.5rem;
    color: var(--secondary-color);
    font-size: 4.8rem;
    font-weight: 600;
    line-height: 1.15;
}

.roulette-area__content h2 span{
    display: block;
    color: var(--main-color);
}

.roulette-area__content p{
    margin-bottom: 1.4rem;
    color: var(--grey);
    font-size: 1.6rem;
    line-height: 1.85;
}

.roulette-area__content .roulette-area__lead{
    color: var(--secondary-color);
    font-size: 1.75rem;
    font-weight: 500;
}


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

.roulette-area__process{
    margin-top: 7rem;
    padding: 4.5rem;
    background-color: #f2f3f8;
    border-radius: var(--border-radius-3);
}

.roulette-area__process-heading{
    max-width: 85rem;
    margin-bottom: 4rem;
}

.roulette-area__process-heading h3{
    margin-bottom: 1.3rem;
    color: var(--secondary-color);
    font-size: 3.4rem;
    font-weight: 600;
}

.roulette-area__process-heading p{
    color: var(--grey);
    font-size: 1.55rem;
    line-height: 1.8;
}

.roulette-area__steps{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2rem;
}

.roulette-area__step{
    position: relative;
    padding: 3rem 2.5rem;
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    border-bottom: 0.4rem solid var(--main-color);
    box-shadow: var(--box-shadow);
}

.roulette-area__step-number{
    position: absolute;
    top: 1.5rem;
    right: 2rem;
    color: var(--secondary-color);
    font-size: 4rem;
    font-weight: 700;
    opacity: 0.1;
}

.roulette-area__step-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5.5rem;
    height: 5.5rem;
    margin-bottom: 2rem;
    background-color: var(--main-color);
    clip-path: var(--custom-clip-path);
}

.roulette-area__step-icon i{
    color: transparent;
    font-size: 2rem;
    -webkit-text-stroke: 1.4px var(--white);
}

.roulette-area__step h4{
    margin-bottom: 1rem;
    color: var(--secondary-color);
    font-size: 2rem;
    font-weight: 600;
}

.roulette-area__step p{
    color: var(--grey);
    font-size: 1.4rem;
    line-height: 1.75;
}


/* ===== Bets ===== */

.roulette-area__bets{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--secondary-color);
    border-radius: var(--border-radius-3);
    border-bottom: 0.5rem solid var(--main-color);
    box-shadow: var(--box-shadow);
}

.roulette-area__bets-heading{
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    gap: 6rem;
    align-items: end;
    margin-bottom: 4rem;
    padding-bottom: 3rem;
    border-bottom: 0.1rem solid rgba(255,255,255,0.15);
}

.roulette-area__bets-heading h3{
    color: var(--white);
    font-size: 3.3rem;
    font-weight: 600;
}

.roulette-area__bets-heading > p{
    color: var(--light-grey);
    font-size: 1.5rem;
    line-height: 1.8;
}

.roulette-area__bets-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.roulette-area__bet{
    display: grid;
    grid-template-columns: 5rem 1fr;
    gap: 1.8rem;
    padding: 2.5rem;
    background-color: rgba(255,255,255,0.06);
    border: 0.1rem solid rgba(255,255,255,0.12);
    border-radius: var(--border-radius-2);
}

.roulette-area__bet-value{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 4.5rem;
    height: 4.5rem;
    color: var(--white);
    background-color: var(--main-color);
    border-radius: 50%;
    font-size: 1.8rem;
    font-weight: 700;
}

.roulette-area__bet h4{
    margin-bottom: 0.3rem;
    color: var(--white);
    font-size: 1.9rem;
    font-weight: 600;
}

.roulette-area__bet div > span{
    display: block;
    margin-bottom: 1rem;
    color: var(--main-color);
    font-size: 1.25rem;
    font-weight: 600;
}

.roulette-area__bet p{
    color: var(--light-grey);
    font-size: 1.4rem;
    line-height: 1.7;
}

.roulette-area__bet--accent{
    background-color: rgba(255,255,255,0.1);
}


/* ===== Formats ===== */

.roulette-area__formats{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: #f2f3f8;
    border-radius: var(--border-radius-3);
}

.roulette-area__formats-title{
    margin-bottom: 3.5rem;
}

.roulette-area__formats-title h3{
    color: var(--secondary-color);
    font-size: 3.3rem;
    font-weight: 600;
}

.roulette-area__formats-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.roulette-area__format{
    padding: 3rem;
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.roulette-area__format--important{
    border-bottom: 0.4rem solid var(--main-color);
}

.roulette-area__format-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5.5rem;
    height: 5.5rem;
    margin-bottom: 2rem;
    background-color: var(--main-color);
    clip-path: var(--custom-clip-path);
}

.roulette-area__format-icon i{
    color: transparent;
    font-size: 2rem;
    -webkit-text-stroke: 1.4px var(--white);
}

.roulette-area__format h4{
    margin-bottom: 1.2rem;
    color: var(--secondary-color);
    font-size: 2.1rem;
    font-weight: 600;
}

.roulette-area__format p{
    color: var(--grey);
    font-size: 1.45rem;
    line-height: 1.8;
}


/* ===== Numbers ===== */

.roulette-area__numbers{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--white);
    border: 0.1rem solid #eeeeee;
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.roulette-area__numbers-heading{
    margin-bottom: 3.5rem;
}

.roulette-area__numbers-heading h3{
    color: var(--secondary-color);
    font-size: 3.3rem;
    font-weight: 600;
}

.roulette-area__numbers-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.roulette-area__number-card{
    padding: 1rem 3.5rem;
    border-right: 0.1rem solid rgba(0,0,0,0.1);
}

.roulette-area__number-card:first-child{
    padding-left: 0;
}

.roulette-area__number-card:last-child{
    padding-right: 0;
    border-right: 0;
}

.roulette-area__number-card i{
    display: block;
    margin-bottom: 1.5rem;
    color: var(--main-color);
    font-size: 2.5rem;
}

.roulette-area__number-card span{
    display: block;
    margin-bottom: 0.5rem;
    color: var(--grey);
    font-size: 1.3rem;
}

.roulette-area__number-card strong{
    display: block;
    margin-bottom: 1rem;
    color: var(--secondary-color);
    font-size: 2.6rem;
    font-weight: 600;
}

.roulette-area__number-card p{
    color: var(--grey);
    font-size: 1.4rem;
    line-height: 1.7;
}

.roulette-area__numbers-note{
    margin-top: 3.5rem;
    padding: 2rem 2.5rem;
    color: var(--grey);
    background-color: #f2f3f8;
    border-left: 0.4rem solid var(--main-color);
    border-radius: var(--border-radius-1);
    font-size: 1.4rem;
    line-height: 1.75;
}


/* ===== Beginner ===== */

.roulette-area__beginner{
    display: grid;
    grid-template-columns: auto 0.7fr 1.3fr;
    gap: 2.5rem;
    align-items: center;
    margin-top: 2rem;
    padding: 3.5rem 4rem;
    background-color: var(--secondary-color);
    border-radius: var(--border-radius-3);
    border-bottom: 0.4rem solid var(--main-color);
}

.roulette-area__beginner-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5.5rem;
    height: 5.5rem;
    background-color: var(--main-color);
    border-radius: 50%;
}

.roulette-area__beginner-icon i{
    color: var(--white);
    font-size: 2rem;
}

.roulette-area__beginner-title span{
    display: block;
    margin-bottom: 0.4rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
}

.roulette-area__beginner-title h3{
    color: var(--white);
    font-size: 2.2rem;
    font-weight: 600;
}

.roulette-area__beginner-text{
    padding-left: 3rem;
    border-left: 0.1rem solid rgba(255,255,255,0.18);
}

.roulette-area__beginner-text p{
    color: var(--light-grey);
    font-size: 1.45rem;
    line-height: 1.75;
}


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

@media (max-width: 1050px){

    .roulette-area__intro{
        grid-template-columns: 1fr;
    }

    .roulette-area__visual{
        height: 52rem;
    }

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

    .roulette-area__bets-grid,
    .roulette-area__formats-grid{
        grid-template-columns: 1fr 1fr;
    }

    .roulette-area__beginner{
        grid-template-columns: auto 1fr;
    }

    .roulette-area__beginner-text{
        grid-column: 1 / -1;
        padding-left: 0;
        border-left: 0;
    }
}

@media (max-width: 750px){

    .roulette-area{
        padding: 6rem 5%;
    }

    .roulette-area__content h2{
        font-size: 3.6rem;
    }

    .roulette-area__bets-heading{
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .roulette-area__bets-grid,
    .roulette-area__formats-grid,
    .roulette-area__numbers-grid{
        grid-template-columns: 1fr;
    }

    .roulette-area__number-card{
        padding: 2.5rem 0;
        border-right: 0;
        border-bottom: 0.1rem solid rgba(0,0,0,0.1);
    }

    .roulette-area__number-card:last-child{
        border-bottom: 0;
    }
}

@media (max-width: 550px){

    .roulette-area__visual{
        height: 40rem;
    }

    .roulette-area__visual-card{
        left: 1.5rem;
        bottom: 1.5rem;
        width: calc(100% - 3rem);
    }

    .roulette-area__process,
    .roulette-area__bets,
    .roulette-area__formats,
    .roulette-area__numbers{
        padding: 3rem 2.5rem;
    }

    .roulette-area__steps{
        grid-template-columns: 1fr;
    }

    .roulette-area__beginner{
        grid-template-columns: 1fr;
        padding: 3rem 2.5rem;
    }

    .roulette-area__bet{
        grid-template-columns: 4.5rem 1fr;
    }
}

/* ==================== Roulette Area (End) ==================== */

/* ==================== Black Jack Area (Start) ==================== */

.blackjack-area{
    padding: 9rem 5%;
    background-color: #f2f3f8;
}

.blackjack-area__container{
    max-width: 140rem;
    margin: 0 auto;
}

.blackjack-area__eyebrow{
    display: inline-block;
    margin-bottom: 1rem;
    color: var(--main-color);
    font-size: 1.7rem;
    font-weight: 600;
    letter-spacing: 0.1rem;
}


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

.blackjack-area__intro{
    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    gap: 8rem;
    align-items: start;
    margin-bottom: 6rem;
}

.blackjack-area__heading h2{
    color: var(--secondary-color);
    font-size: 4.8rem;
    font-weight: 600;
    line-height: 1.15;
}

.blackjack-area__heading h2 span{
    display: block;
    color: var(--main-color);
}

.blackjack-area__intro-text{
    padding-left: 3rem;
    border-left: 0.4rem solid var(--main-color);
}

.blackjack-area__intro-text p{
    margin-bottom: 1.4rem;
    color: var(--grey);
    font-size: 1.6rem;
    line-height: 1.85;
}

.blackjack-area__intro-text p:last-child{
    margin-bottom: 0;
}

.blackjack-area__intro-text .blackjack-area__lead{
    color: var(--secondary-color);
    font-size: 1.75rem;
    font-weight: 500;
}


/* ===== Principle ===== */

.blackjack-area__principle{
    display: grid;
    grid-template-columns: 1.35fr 0.65fr;
    gap: 5rem;
    padding: 5rem;
    background-color: var(--secondary-color);
    border-bottom: 0.5rem solid var(--main-color);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.blackjack-area__section-number{
    display: block;
    margin-bottom: 1.5rem;
    color: rgba(255,255,255,0.13);
    font-size: 5rem;
    font-weight: 700;
    line-height: 1;
}

.blackjack-area__principle-main h3{
    margin-bottom: 2rem;
    color: var(--white);
    font-size: 3.2rem;
    font-weight: 600;
}

.blackjack-area__principle-main p{
    margin-bottom: 1.4rem;
    color: var(--light-grey);
    font-size: 1.55rem;
    line-height: 1.85;
}

.blackjack-area__value{
    align-self: stretch;
    padding: 3rem;
    background-color: rgba(255,255,255,0.07);
    border: 0.1rem solid rgba(255,255,255,0.12);
    border-radius: var(--border-radius-2);
}

.blackjack-area__value-top{
    padding-bottom: 2.5rem;
    text-align: center;
    border-bottom: 0.1rem solid rgba(255,255,255,0.15);
}

.blackjack-area__value-top span{
    display: block;
    margin-bottom: 0.5rem;
    color: var(--main-color);
    font-size: 1.4rem;
    font-weight: 600;
}

.blackjack-area__value-top strong{
    color: var(--white);
    font-size: 7rem;
    font-weight: 700;
    line-height: 1;
}

.blackjack-area__value-list > div{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    padding: 1.7rem 0;
    border-bottom: 0.1rem solid rgba(255,255,255,0.12);
}

.blackjack-area__value-list > div:last-child{
    border-bottom: 0;
}

.blackjack-area__value-list span{
    color: var(--main-color);
    font-size: 1.7rem;
    font-weight: 600;
}

.blackjack-area__value-list p{
    color: var(--light-grey);
    font-size: 1.4rem;
}


/* ===== Flow ===== */

.blackjack-area__flow{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.blackjack-area__flow-heading{
    max-width: 80rem;
    margin-bottom: 4rem;
}

.blackjack-area__flow-heading h3{
    margin-bottom: 1.2rem;
    color: var(--secondary-color);
    font-size: 3.3rem;
    font-weight: 600;
}

.blackjack-area__flow-heading p{
    color: var(--grey);
    font-size: 1.55rem;
    line-height: 1.8;
}

.blackjack-area__flow-grid{
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1.5rem;
}

.blackjack-area__flow-card{
    position: relative;
    padding: 2.8rem 2.2rem;
    background-color: #f2f3f8;
    border-bottom: 0.4rem solid var(--main-color);
    border-radius: var(--border-radius-3);
}

.blackjack-area__flow-card > span{
    position: absolute;
    top: 1.5rem;
    right: 1.5rem;
    color: var(--secondary-color);
    font-size: 3.5rem;
    font-weight: 700;
    opacity: 0.1;
}

.blackjack-area__icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5.5rem;
    height: 5.5rem;
    margin-bottom: 2rem;
    background-color: var(--main-color);
    clip-path: var(--custom-clip-path);
}

.blackjack-area__icon i{
    color: transparent;
    font-size: 2rem;
    -webkit-text-stroke: 1.4px var(--white);
}

.blackjack-area__flow-card h4{
    margin-bottom: 1rem;
    color: var(--secondary-color);
    font-size: 1.9rem;
    font-weight: 600;
}

.blackjack-area__flow-card p{
    color: var(--grey);
    font-size: 1.4rem;
    line-height: 1.7;
}


/* ===== Decisions ===== */

.blackjack-area__decisions{
    display: grid;
    grid-template-columns: 0.75fr 1.25fr;
    gap: 6rem;
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.blackjack-area__decisions-heading h3{
    margin-bottom: 1.5rem;
    color: var(--secondary-color);
    font-size: 3.2rem;
    font-weight: 600;
    line-height: 1.25;
}

.blackjack-area__decisions-heading p{
    color: var(--grey);
    font-size: 1.5rem;
    line-height: 1.8;
}

.blackjack-area__decisions-list{
    border-left: 0.3rem solid var(--main-color);
    padding-left: 3.5rem;
}

.blackjack-area__decision{
    display: grid;
    grid-template-columns: 16rem 1fr;
    gap: 2.5rem;
    padding: 2rem 0;
    border-bottom: 0.1rem solid rgba(0,0,0,0.09);
}

.blackjack-area__decision:first-child{
    padding-top: 0;
}

.blackjack-area__decision:last-child{
    padding-bottom: 0;
    border-bottom: 0;
}

.blackjack-area__decision-name{
    display: flex;
    align-items: center;
    gap: 1rem;
}

.blackjack-area__decision-name span{
    color: var(--main-color);
    font-size: 1.5rem;
    font-weight: 700;
}

.blackjack-area__decision-name h4{
    color: var(--secondary-color);
    font-size: 1.8rem;
    font-weight: 600;
}

.blackjack-area__decision > p{
    color: var(--grey);
    font-size: 1.45rem;
    line-height: 1.7;
}


/* ===== Natural Blackjack ===== */

.blackjack-area__natural{
    display: grid;
    grid-template-columns: 0.4fr 1.6fr;
    gap: 5rem;
    align-items: center;
    margin-top: 2rem;
    padding: 4rem 4.5rem;
    background-color: var(--secondary-color);
    border-radius: var(--border-radius-3);
    border-bottom: 0.4rem solid var(--main-color);
}

.blackjack-area__natural-value{
    text-align: center;
    padding-right: 4rem;
    border-right: 0.1rem solid rgba(255,255,255,0.17);
}

.blackjack-area__natural-value span{
    display: block;
    margin-bottom: 0.7rem;
    color: var(--main-color);
    font-size: 1.5rem;
    font-weight: 600;
}

.blackjack-area__natural-value strong{
    display: block;
    margin-bottom: 0.7rem;
    color: var(--white);
    font-size: 5rem;
    font-weight: 700;
}

.blackjack-area__natural-value p{
    color: var(--light-grey);
    font-size: 1.3rem;
    line-height: 1.6;
}

.blackjack-area__natural-text h3{
    margin-bottom: 1.3rem;
    color: var(--white);
    font-size: 2.7rem;
    font-weight: 600;
}

.blackjack-area__natural-text p{
    margin-bottom: 1rem;
    color: var(--light-grey);
    font-size: 1.45rem;
    line-height: 1.75;
}


/* ===== Electronic ===== */

.blackjack-area__electronic{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.blackjack-area__electronic-heading{
    display: flex;
    align-items: center;
    gap: 2rem;
    margin-bottom: 3.5rem;
    padding-bottom: 2.5rem;
    border-bottom: 0.1rem solid rgba(0,0,0,0.1);
}

.blackjack-area__electronic-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 6rem;
    height: 6rem;
    background-color: var(--main-color);
    border-radius: 50%;
}

.blackjack-area__electronic-icon i{
    color: var(--white);
    font-size: 2.2rem;
}

.blackjack-area__electronic-heading h3{
    color: var(--secondary-color);
    font-size: 3rem;
    font-weight: 600;
}

.blackjack-area__electronic-content{
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: 6rem;
}

.blackjack-area__electronic-text p{
    margin-bottom: 1.4rem;
    color: var(--grey);
    font-size: 1.55rem;
    line-height: 1.85;
}

.blackjack-area__electronic-points{
    padding-left: 4rem;
    border-left: 0.3rem solid var(--main-color);
}

.blackjack-area__electronic-point{
    display: grid;
    grid-template-columns: 4.5rem 1fr;
    gap: 1.5rem;
    padding: 1.8rem 0;
    border-bottom: 0.1rem solid rgba(0,0,0,0.09);
}

.blackjack-area__electronic-point:first-child{
    padding-top: 0;
}

.blackjack-area__electronic-point:last-child{
    padding-bottom: 0;
    border-bottom: 0;
}

.blackjack-area__electronic-point > i{
    color: var(--main-color);
    font-size: 2rem;
}

.blackjack-area__electronic-point h4{
    margin-bottom: 0.5rem;
    color: var(--secondary-color);
    font-size: 1.7rem;
    font-weight: 600;
}

.blackjack-area__electronic-point p{
    color: var(--grey);
    font-size: 1.4rem;
    line-height: 1.65;
}


/* ===== Extras ===== */

.blackjack-area__extras{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.blackjack-area__extras-heading{
    max-width: 85rem;
    margin-bottom: 3.5rem;
}

.blackjack-area__extras-heading h3{
    margin-bottom: 1.2rem;
    color: var(--secondary-color);
    font-size: 3rem;
    font-weight: 600;
}

.blackjack-area__extras-heading p{
    color: var(--grey);
    font-size: 1.5rem;
    line-height: 1.8;
}

.blackjack-area__extras-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.blackjack-area__extra{
    padding: 1rem 3.5rem;
    border-right: 0.1rem solid rgba(0,0,0,0.1);
}

.blackjack-area__extra:first-child{
    padding-left: 0;
}

.blackjack-area__extra:last-child{
    padding-right: 0;
    border-right: 0;
}

.blackjack-area__extra > span{
    display: block;
    margin-bottom: 1rem;
    color: var(--main-color);
    font-size: 2rem;
    font-weight: 700;
}

.blackjack-area__extra h4{
    margin-bottom: 1rem;
    color: var(--secondary-color);
    font-size: 2rem;
    font-weight: 600;
}

.blackjack-area__extra p{
    color: var(--grey);
    font-size: 1.4rem;
    line-height: 1.7;
}


/* ===== First Visit ===== */

.blackjack-area__first{
    display: grid;
    grid-template-columns: auto 0.7fr 1.3fr;
    gap: 2.5rem;
    align-items: center;
    margin-top: 2rem;
    padding: 3.5rem 4rem;
    background-color: var(--secondary-color);
    border-bottom: 0.4rem solid var(--main-color);
    border-radius: var(--border-radius-3);
}

.blackjack-area__first-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5.5rem;
    height: 5.5rem;
    background-color: var(--main-color);
    border-radius: 50%;
}

.blackjack-area__first-icon i{
    color: var(--white);
    font-size: 2rem;
}

.blackjack-area__first-title span{
    display: block;
    margin-bottom: 0.4rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
}

.blackjack-area__first-title h3{
    color: var(--white);
    font-size: 2.2rem;
    font-weight: 600;
}

.blackjack-area__first-text{
    padding-left: 3rem;
    border-left: 0.1rem solid rgba(255,255,255,0.18);
}

.blackjack-area__first-text p{
    color: var(--light-grey);
    font-size: 1.45rem;
    line-height: 1.75;
}


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

@media (max-width: 1100px){

    .blackjack-area__flow-grid{
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 950px){

    .blackjack-area__intro,
    .blackjack-area__principle,
    .blackjack-area__decisions,
    .blackjack-area__electronic-content{
        grid-template-columns: 1fr;
        gap: 3rem;
    }

    .blackjack-area__intro-text,
    .blackjack-area__decisions-list,
    .blackjack-area__electronic-points{
        padding-left: 0;
        border-left: 0;
    }

    .blackjack-area__first{
        grid-template-columns: auto 1fr;
    }

    .blackjack-area__first-text{
        grid-column: 1 / -1;
        padding-left: 0;
        border-left: 0;
    }
}

@media (max-width: 750px){

    .blackjack-area{
        padding: 6rem 5%;
    }

    .blackjack-area__heading h2{
        font-size: 3.6rem;
    }

    .blackjack-area__flow-grid,
    .blackjack-area__extras-grid{
        grid-template-columns: 1fr;
    }

    .blackjack-area__extra{
        padding: 2.5rem 0;
        border-right: 0;
        border-bottom: 0.1rem solid rgba(0,0,0,0.1);
    }

    .blackjack-area__extra:last-child{
        border-bottom: 0;
    }

    .blackjack-area__natural{
        grid-template-columns: 1fr;
        gap: 3rem;
    }

    .blackjack-area__natural-value{
        padding-right: 0;
        padding-bottom: 3rem;
        border-right: 0;
        border-bottom: 0.1rem solid rgba(255,255,255,0.17);
    }
}

@media (max-width: 550px){

    .blackjack-area__principle,
    .blackjack-area__flow,
    .blackjack-area__decisions,
    .blackjack-area__natural,
    .blackjack-area__electronic,
    .blackjack-area__extras,
    .blackjack-area__first{
        padding: 3rem 2.5rem;
    }

    .blackjack-area__decision{
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .blackjack-area__flow-grid{
        grid-template-columns: 1fr;
    }

    .blackjack-area__first{
        grid-template-columns: 1fr;
    }
}

/* ==================== Black Jack Area (End) ==================== */

/* ==================== Poker Area (Start) ==================== */

.poker-area{
    padding: 9rem 5%;
    background-color: var(--white);
}

.poker-area__container{
    max-width: 140rem;
    margin: 0 auto;
}

.poker-area__eyebrow{
    display: inline-block;
    margin-bottom: 1rem;
    color: var(--main-color);
    font-size: 1.7rem;
    font-weight: 600;
    letter-spacing: 0.1rem;
}


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

.poker-area__intro{
    display: grid;
    grid-template-columns: 1.05fr 0.95fr;
    gap: 6rem;
    align-items: center;
}

.poker-area__content h2{
    margin-bottom: 2.5rem;
    color: var(--secondary-color);
    font-size: 4.8rem;
    font-weight: 600;
    line-height: 1.15;
}

.poker-area__content h2 span{
    display: block;
    color: var(--main-color);
}

.poker-area__content p{
    margin-bottom: 1.4rem;
    color: var(--grey);
    font-size: 1.6rem;
    line-height: 1.85;
}

.poker-area__content .poker-area__lead{
    color: var(--secondary-color);
    font-size: 1.75rem;
    font-weight: 500;
}


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

.poker-area__visual{
    position: relative;
    height: 58rem;
}

.poker-area__visual img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.poker-area__visual-card{
    position: absolute;
    right: 2rem;
    bottom: 2rem;
    width: 27rem;
    padding: 2.5rem;
    background-color: var(--secondary-color);
    border-bottom: 0.4rem solid var(--main-color);
    border-radius: var(--border-radius-2);
    box-shadow: var(--box-shadow);
}

.poker-area__visual-card span{
    display: block;
    margin-bottom: 0.5rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
}

.poker-area__visual-card strong{
    display: block;
    margin-bottom: 0.8rem;
    color: var(--white);
    font-size: 2.5rem;
    font-weight: 600;
}

.poker-area__visual-card p{
    color: var(--light-grey);
    font-size: 1.35rem;
    line-height: 1.6;
}


/* ===== Hold'em ===== */

.poker-area__holdem{
    margin-top: 7rem;
    padding: 4.5rem;
    background-color: #f2f3f8;
    border-radius: var(--border-radius-3);
}

.poker-area__holdem-title{
    display: flex;
    align-items: center;
    gap: 2.5rem;
    margin-bottom: 3.5rem;
    padding-bottom: 2.5rem;
    border-bottom: 0.1rem solid rgba(0,0,0,0.1);
}

.poker-area__section-number{
    color: var(--secondary-color);
    font-size: 4.5rem;
    font-weight: 700;
    opacity: 0.12;
}

.poker-area__holdem-title h3{
    color: var(--secondary-color);
    font-size: 3.2rem;
    font-weight: 600;
}

.poker-area__holdem-content{
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: 6rem;
}

.poker-area__holdem-text p{
    margin-bottom: 1.4rem;
    color: var(--grey);
    font-size: 1.55rem;
    line-height: 1.85;
}

.poker-area__cards{
    padding: 3rem;
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.poker-area__cards-block{
    display: grid;
    grid-template-columns: 6rem 1fr;
    gap: 1.5rem;
    align-items: center;
}

.poker-area__cards-block > span{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5.5rem;
    height: 5.5rem;
    color: var(--white);
    background-color: var(--main-color);
    border-radius: 50%;
    font-size: 2.2rem;
    font-weight: 700;
}

.poker-area__cards-block h4{
    margin-bottom: 0.3rem;
    color: var(--secondary-color);
    font-size: 1.8rem;
    font-weight: 600;
}

.poker-area__cards-block p{
    color: var(--grey);
    font-size: 1.4rem;
}

.poker-area__cards-plus{
    margin: 1.5rem 0;
    padding-left: 1.5rem;
    color: var(--main-color);
    font-size: 2.8rem;
    font-weight: 600;
}

.poker-area__cards-result{
    margin-top: 2rem;
    padding-top: 2rem;
    border-top: 0.1rem solid rgba(0,0,0,0.1);
}

.poker-area__cards-result i{
    margin-bottom: 1rem;
    color: var(--main-color);
    font-size: 1.8rem;
}

.poker-area__cards-result p{
    color: var(--secondary-color);
    font-size: 1.5rem;
    font-weight: 600;
}


/* ===== Round ===== */

.poker-area__round{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--white);
    border: 0.1rem solid #eeeeee;
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.poker-area__round-heading{
    max-width: 85rem;
    margin-bottom: 4rem;
}

.poker-area__round-heading h3{
    margin-bottom: 1.2rem;
    color: var(--secondary-color);
    font-size: 3.2rem;
    font-weight: 600;
}

.poker-area__round-heading p{
    color: var(--grey);
    font-size: 1.5rem;
    line-height: 1.8;
}

.poker-area__round-grid{
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1.5rem;
}

.poker-area__round-card{
    position: relative;
    padding: 2.7rem 2.2rem;
    background-color: #f2f3f8;
    border-bottom: 0.4rem solid var(--main-color);
    border-radius: var(--border-radius-3);
}

.poker-area__round-number{
    position: absolute;
    top: 1.5rem;
    right: 1.5rem;
    color: var(--secondary-color);
    font-size: 3.5rem;
    font-weight: 700;
    opacity: 0.1;
}

.poker-area__round-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5.5rem;
    height: 5.5rem;
    margin-bottom: 2rem;
    background-color: var(--main-color);
    clip-path: var(--custom-clip-path);
}

.poker-area__round-icon i{
    color: transparent;
    font-size: 2rem;
    -webkit-text-stroke: 1.4px var(--white);
}

.poker-area__round-card h4{
    margin-bottom: 1rem;
    color: var(--secondary-color);
    font-size: 1.9rem;
    font-weight: 600;
}

.poker-area__round-card p{
    color: var(--grey);
    font-size: 1.4rem;
    line-height: 1.7;
}


/* ===== SBPM ===== */

.poker-area__sbpm{
    margin-top: 2rem;
    padding: 5rem;
    background-color: var(--secondary-color);
    border-bottom: 0.5rem solid var(--main-color);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.poker-area__sbpm-heading{
    display: flex;
    align-items: center;
    gap: 2.5rem;
    margin-bottom: 4rem;
    padding-bottom: 3rem;
    border-bottom: 0.1rem solid rgba(255,255,255,0.15);
}

.poker-area__sbpm-mark{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 8rem;
    height: 8rem;
    flex-shrink: 0;
    background-color: var(--main-color);
    clip-path: var(--custom-clip-path);
}

.poker-area__sbpm-mark span{
    color: var(--white);
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: 0.08rem;
}

.poker-area__sbpm-heading h3{
    color: var(--white);
    font-size: 3.2rem;
    font-weight: 600;
}

.poker-area__sbpm-content{
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 6rem;
}

.poker-area__sbpm-text p{
    margin-bottom: 1.4rem;
    color: var(--light-grey);
    font-size: 1.55rem;
    line-height: 1.85;
}

.poker-area__sbpm-points{
    padding-left: 4rem;
    border-left: 0.1rem solid rgba(255,255,255,0.18);
}

.poker-area__sbpm-point{
    display: grid;
    grid-template-columns: 4rem 1fr;
    gap: 1.5rem;
    padding: 1.8rem 0;
    border-bottom: 0.1rem solid rgba(255,255,255,0.12);
}

.poker-area__sbpm-point:first-child{
    padding-top: 0;
}

.poker-area__sbpm-point:last-child{
    padding-bottom: 0;
    border-bottom: 0;
}

.poker-area__sbpm-point > span{
    color: var(--main-color);
    font-size: 1.8rem;
    font-weight: 700;
}

.poker-area__sbpm-point h4{
    margin-bottom: 0.5rem;
    color: var(--white);
    font-size: 1.7rem;
    font-weight: 600;
}

.poker-area__sbpm-point p{
    color: var(--light-grey);
    font-size: 1.4rem;
    line-height: 1.65;
}


/* ===== Current Tournament ===== */

.poker-area__current{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: #f2f3f8;
    border-radius: var(--border-radius-3);
}

.poker-area__current-head{
    display: flex;
    justify-content: space-between;
    gap: 3rem;
    align-items: center;
    margin-bottom: 2rem;
}

.poker-area__current-head h3{
    color: var(--secondary-color);
    font-size: 3rem;
    font-weight: 600;
}

.poker-area__current-status{
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.2rem 1.7rem;
    background-color: var(--white);
    border-radius: var(--border-radius-1);
}

.poker-area__current-status i{
    color: var(--main-color);
    font-size: 1.6rem;
}

.poker-area__current-status span{
    color: var(--secondary-color);
    font-size: 1.3rem;
    font-weight: 600;
}

.poker-area__current-intro{
    max-width: 100rem;
    margin-bottom: 3.5rem;
}

.poker-area__current-intro p{
    color: var(--grey);
    font-size: 1.5rem;
    line-height: 1.8;
}

.poker-area__current-grid{
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.poker-area__current-item{
    padding: 3rem 2.5rem;
    border-right: 0.1rem solid rgba(0,0,0,0.09);
}

.poker-area__current-item:last-child{
    border-right: 0;
}

.poker-area__current-item > span{
    display: block;
    margin-bottom: 0.7rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
}

.poker-area__current-item strong{
    display: block;
    margin-bottom: 0.7rem;
    color: var(--secondary-color);
    font-size: 2rem;
    font-weight: 600;
}

.poker-area__current-item p{
    color: var(--grey);
    font-size: 1.3rem;
    line-height: 1.6;
}

.poker-area__current-note{
    display: flex;
    align-items: flex-start;
    gap: 1.5rem;
    margin-top: 2rem;
    padding: 2rem 2.5rem;
    background-color: var(--white);
    border-left: 0.4rem solid var(--main-color);
    border-radius: var(--border-radius-1);
}

.poker-area__current-note i{
    margin-top: 0.3rem;
    color: var(--main-color);
    font-size: 1.6rem;
}

.poker-area__current-note p{
    color: var(--grey);
    font-size: 1.4rem;
    line-height: 1.7;
}


/* ===== Terms ===== */

.poker-area__terms{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--white);
    border: 0.1rem solid #eeeeee;
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.poker-area__terms-heading{
    margin-bottom: 3.5rem;
}

.poker-area__terms-heading h3{
    color: var(--secondary-color);
    font-size: 3rem;
    font-weight: 600;
}

.poker-area__terms-grid{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2rem;
}

.poker-area__term{
    padding: 2.8rem;
    background-color: #f2f3f8;
    border-radius: var(--border-radius-3);
}

.poker-area__term-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5.5rem;
    height: 5.5rem;
    margin-bottom: 2rem;
    background-color: var(--main-color);
    clip-path: var(--custom-clip-path);
}

.poker-area__term-icon i{
    color: transparent;
    font-size: 2rem;
    -webkit-text-stroke: 1.4px var(--white);
}

.poker-area__term h4{
    margin-bottom: 1rem;
    color: var(--secondary-color);
    font-size: 1.9rem;
    font-weight: 600;
}

.poker-area__term p{
    color: var(--grey);
    font-size: 1.4rem;
    line-height: 1.7;
}


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

.poker-area__difference{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--white);
    border: 0.1rem solid #eeeeee;
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.poker-area__difference-heading{
    margin-bottom: 3.5rem;
}

.poker-area__difference-heading h3{
    color: var(--secondary-color);
    font-size: 3rem;
    font-weight: 600;
}

.poker-area__difference-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.poker-area__difference-item{
    padding: 1rem 4rem;
}

.poker-area__difference-item:first-child{
    padding-left: 0;
    border-right: 0.1rem solid rgba(0,0,0,0.1);
}

.poker-area__difference-item:last-child{
    padding-right: 0;
}

.poker-area__difference-item > span{
    display: block;
    margin-bottom: 0.7rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
}

.poker-area__difference-item h4{
    margin-bottom: 1rem;
    color: var(--secondary-color);
    font-size: 2rem;
    font-weight: 600;
}

.poker-area__difference-item p{
    color: var(--grey);
    font-size: 1.45rem;
    line-height: 1.75;
}


/* ===== Beginner ===== */

.poker-area__beginner{
    display: grid;
    grid-template-columns: auto 0.7fr 1.3fr;
    gap: 2.5rem;
    align-items: center;
    margin-top: 2rem;
    padding: 3.5rem 4rem;
    background-color: var(--secondary-color);
    border-bottom: 0.4rem solid var(--main-color);
    border-radius: var(--border-radius-3);
}

.poker-area__beginner-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5.5rem;
    height: 5.5rem;
    background-color: var(--main-color);
    border-radius: 50%;
}

.poker-area__beginner-icon i{
    color: var(--white);
    font-size: 2rem;
}

.poker-area__beginner-title span{
    display: block;
    margin-bottom: 0.4rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
}

.poker-area__beginner-title h3{
    color: var(--white);
    font-size: 2.2rem;
    font-weight: 600;
}

.poker-area__beginner-text{
    padding-left: 3rem;
    border-left: 0.1rem solid rgba(255,255,255,0.18);
}

.poker-area__beginner-text p{
    color: var(--light-grey);
    font-size: 1.45rem;
    line-height: 1.75;
}


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

@media (max-width: 1150px){

    .poker-area__round-grid{
        grid-template-columns: repeat(3, 1fr);
    }

    .poker-area__current-grid{
        grid-template-columns: repeat(3, 1fr);
    }

    .poker-area__current-item{
        border-bottom: 0.1rem solid rgba(0,0,0,0.09);
    }
}

@media (max-width: 950px){

    .poker-area__intro,
    .poker-area__holdem-content,
    .poker-area__sbpm-content{
        grid-template-columns: 1fr;
    }

    .poker-area__visual{
        height: 50rem;
    }

    .poker-area__sbpm-points{
        padding-left: 0;
        border-left: 0;
    }

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

    .poker-area__beginner{
        grid-template-columns: auto 1fr;
    }

    .poker-area__beginner-text{
        grid-column: 1 / -1;
        padding-left: 0;
        border-left: 0;
    }
}

@media (max-width: 700px){

    .poker-area{
        padding: 6rem 5%;
    }

    .poker-area__content h2{
        font-size: 3.6rem;
    }

    .poker-area__round-grid,
    .poker-area__current-grid,
    .poker-area__terms-grid,
    .poker-area__difference-grid{
        grid-template-columns: 1fr;
    }

    .poker-area__current-item{
        border-right: 0;
    }

    .poker-area__difference-item{
        padding: 2.5rem 0;
    }

    .poker-area__difference-item:first-child{
        border-right: 0;
        border-bottom: 0.1rem solid rgba(0,0,0,0.1);
    }

    .poker-area__current-head{
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 500px){

    .poker-area__visual{
        height: 38rem;
    }

    .poker-area__visual-card{
        right: 1.5rem;
        bottom: 1.5rem;
        width: calc(100% - 3rem);
    }

    .poker-area__holdem,
    .poker-area__round,
    .poker-area__sbpm,
    .poker-area__current,
    .poker-area__terms,
    .poker-area__difference,
    .poker-area__beginner{
        padding: 3rem 2.5rem;
    }

    .poker-area__holdem-title,
    .poker-area__sbpm-heading{
        align-items: flex-start;
    }

    .poker-area__beginner{
        grid-template-columns: 1fr;
    }
}

/* ==================== Poker Area (End) ==================== */

/* ==================== Game Guide Area (Start) ==================== */

.game-guide{
    padding: 9rem 5%;
    background-color: #f2f3f8;
}

.game-guide__container{
    max-width: 140rem;
    margin: 0 auto;
}

.game-guide__eyebrow{
    display: inline-block;
    margin-bottom: 1rem;
    color: var(--main-color);
    font-size: 1.7rem;
    font-weight: 600;
    letter-spacing: 0.1rem;
}

.game-guide__label{
    display: block;
    margin-bottom: 0.6rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
}


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

.game-guide__intro{
    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    gap: 8rem;
    align-items: start;
    margin-bottom: 6rem;
}

.game-guide__heading h2{
    color: var(--secondary-color);
    font-size: 4.8rem;
    font-weight: 600;
    line-height: 1.15;
}

.game-guide__heading h2 span{
    display: block;
    color: var(--main-color);
}

.game-guide__intro-text{
    padding-left: 3rem;
    border-left: 0.4rem solid var(--main-color);
}

.game-guide__intro-text p{
    margin-bottom: 1.4rem;
    color: var(--grey);
    font-size: 1.6rem;
    line-height: 1.85;
}

.game-guide__intro-text p:last-child{
    margin-bottom: 0;
}

.game-guide__intro-text .game-guide__lead{
    color: var(--secondary-color);
    font-size: 1.75rem;
    font-weight: 500;
}


/* ===== Welcome ===== */

.game-guide__welcome{
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 3rem;
    align-items: start;
    padding: 4.5rem;
    background-color: var(--secondary-color);
    border-bottom: 0.5rem solid var(--main-color);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.game-guide__welcome-mark{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 7rem;
    height: 7rem;
    background-color: var(--main-color);
    border-radius: 50%;
}

.game-guide__welcome-mark i{
    color: var(--white);
    font-size: 2.7rem;
}

.game-guide__welcome-content h3{
    margin-bottom: 1.5rem;
    color: var(--white);
    font-size: 3rem;
    font-weight: 600;
}

.game-guide__welcome-content p{
    margin-bottom: 1.2rem;
    color: var(--light-grey);
    font-size: 1.55rem;
    line-height: 1.8;
}


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

.game-guide__games{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.game-guide__games-heading{
    max-width: 85rem;
    margin-bottom: 4rem;
}

.game-guide__games-heading h3{
    margin-bottom: 1.2rem;
    color: var(--secondary-color);
    font-size: 3.2rem;
    font-weight: 600;
}

.game-guide__games-heading p{
    color: var(--grey);
    font-size: 1.5rem;
    line-height: 1.8;
}

.game-guide__games-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.game-guide__game{
    position: relative;
    padding: 3rem;
    background-color: #f2f3f8;
    border-bottom: 0.4rem solid var(--main-color);
    border-radius: var(--border-radius-3);
}

.game-guide__game-top{
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 2rem;
}

.game-guide__game-top > span{
    color: var(--secondary-color);
    font-size: 3.5rem;
    font-weight: 700;
    opacity: 0.1;
}

.game-guide__game-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5.5rem;
    height: 5.5rem;
    background-color: var(--main-color);
    clip-path: var(--custom-clip-path);
}

.game-guide__game-icon i{
    color: transparent;
    font-size: 2rem;
    -webkit-text-stroke: 1.4px var(--white);
}

.game-guide__game h4{
    margin-bottom: 1.3rem;
    color: var(--secondary-color);
    font-size: 2.1rem;
    font-weight: 600;
}

.game-guide__game p{
    margin-bottom: 1.2rem;
    color: var(--grey);
    font-size: 1.45rem;
    line-height: 1.75;
}


/* ===== Explanations ===== */

.game-guide__explanations{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.game-guide__explanations-heading{
    display: flex;
    align-items: center;
    gap: 2.5rem;
    margin-bottom: 3.5rem;
    padding-bottom: 2.5rem;
    border-bottom: 0.1rem solid rgba(0,0,0,0.1);
}

.game-guide__section-number{
    color: var(--secondary-color);
    font-size: 4.5rem;
    font-weight: 700;
    opacity: 0.12;
}

.game-guide__explanations-heading h3{
    color: var(--secondary-color);
    font-size: 3rem;
    font-weight: 600;
}

.game-guide__explanations-content{
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 6rem;
}

.game-guide__explanations-text p{
    margin-bottom: 1.4rem;
    color: var(--grey);
    font-size: 1.55rem;
    line-height: 1.85;
}

.game-guide__explanations-points{
    padding-left: 4rem;
    border-left: 0.3rem solid var(--main-color);
}

.game-guide__explanation-point{
    display: grid;
    grid-template-columns: 4rem 1fr;
    gap: 1.5rem;
    padding: 1.8rem 0;
    border-bottom: 0.1rem solid rgba(0,0,0,0.09);
}

.game-guide__explanation-point:first-child{
    padding-top: 0;
}

.game-guide__explanation-point:last-child{
    padding-bottom: 0;
    border-bottom: 0;
}

.game-guide__explanation-point > span{
    color: var(--main-color);
    font-size: 1.8rem;
    font-weight: 700;
}

.game-guide__explanation-point h4{
    margin-bottom: 0.5rem;
    color: var(--secondary-color);
    font-size: 1.7rem;
    font-weight: 600;
}

.game-guide__explanation-point p{
    color: var(--grey);
    font-size: 1.4rem;
    line-height: 1.65;
}


/* ===== Demo ===== */

.game-guide__demo{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--secondary-color);
    border-bottom: 0.5rem solid var(--main-color);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.game-guide__demo-heading{
    display: flex;
    align-items: center;
    gap: 2rem;
    margin-bottom: 3.5rem;
}

.game-guide__demo-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 6rem;
    height: 6rem;
    background-color: var(--main-color);
    border-radius: 50%;
}

.game-guide__demo-icon i{
    color: var(--white);
    font-size: 2.2rem;
}

.game-guide__demo-heading h3{
    color: var(--white);
    font-size: 3rem;
    font-weight: 600;
}

.game-guide__demo-content{
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 6rem;
}

.game-guide__demo-main p{
    margin-bottom: 1.4rem;
    color: var(--light-grey);
    font-size: 1.55rem;
    line-height: 1.85;
}

.game-guide__demo-list{
    padding-left: 4rem;
    border-left: 0.1rem solid rgba(255,255,255,0.18);
}

.game-guide__demo-list > div{
    display: grid;
    grid-template-columns: 4rem 1fr;
    gap: 1.5rem;
    align-items: center;
    padding: 1.5rem 0;
    border-bottom: 0.1rem solid rgba(255,255,255,0.12);
}

.game-guide__demo-list > div:last-child{
    border-bottom: 0;
}

.game-guide__demo-list i{
    color: var(--main-color);
    font-size: 1.8rem;
}

.game-guide__demo-list p{
    color: var(--light-grey);
    font-size: 1.4rem;
    line-height: 1.6;
}


/* ===== First Steps ===== */

.game-guide__first-steps{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.game-guide__first-heading{
    max-width: 80rem;
    margin-bottom: 4rem;
}

.game-guide__first-heading h3{
    margin-bottom: 1.2rem;
    color: var(--secondary-color);
    font-size: 3.1rem;
    font-weight: 600;
}

.game-guide__first-heading p{
    color: var(--grey);
    font-size: 1.5rem;
    line-height: 1.8;
}

.game-guide__timeline{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.game-guide__timeline-item{
    position: relative;
    padding: 0 3rem;
    border-right: 0.1rem solid rgba(0,0,0,0.1);
}

.game-guide__timeline-item:first-child{
    padding-left: 0;
}

.game-guide__timeline-item:last-child{
    padding-right: 0;
    border-right: 0;
}

.game-guide__timeline-number{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 4.5rem;
    height: 4.5rem;
    margin-bottom: 1.8rem;
    color: var(--white);
    background-color: var(--main-color);
    border-radius: 50%;
    font-size: 1.7rem;
    font-weight: 700;
}

.game-guide__timeline-item span{
    display: block;
    margin-bottom: 0.5rem;
    color: var(--main-color);
    font-size: 1.25rem;
    font-weight: 600;
}

.game-guide__timeline-item h4{
    margin-bottom: 1rem;
    color: var(--secondary-color);
    font-size: 1.8rem;
    font-weight: 600;
}

.game-guide__timeline-item p{
    color: var(--grey);
    font-size: 1.4rem;
    line-height: 1.7;
}


/* ===== Not Needed ===== */

.game-guide__not-needed{
    display: grid;
    grid-template-columns: 0.7fr 1.3fr;
    gap: 6rem;
    align-items: center;
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.game-guide__not-needed-title h3{
    color: var(--secondary-color);
    font-size: 2.8rem;
    font-weight: 600;
}

.game-guide__not-needed-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
}

.game-guide__not-needed-item{
    display: flex;
    align-items: center;
    gap: 1.3rem;
    padding: 1.7rem;
    background-color: #f2f3f8;
    border-radius: var(--border-radius-2);
}

.game-guide__not-needed-item i{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 3.2rem;
    height: 3.2rem;
    color: var(--white);
    background-color: var(--main-color);
    border-radius: 50%;
    font-size: 1.2rem;
}

.game-guide__not-needed-item p{
    color: var(--secondary-color);
    font-size: 1.4rem;
    line-height: 1.5;
}


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

.game-guide__note{
    display: flex;
    align-items: flex-start;
    gap: 2rem;
    margin-top: 2rem;
    padding: 3rem 3.5rem;
    background-color: var(--secondary-color);
    border-radius: var(--border-radius-3);
}

.game-guide__note-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 4.5rem;
    height: 4.5rem;
    background-color: var(--main-color);
    border-radius: 50%;
}

.game-guide__note-icon i{
    color: var(--white);
    font-size: 1.7rem;
}

.game-guide__note span{
    display: block;
    margin-bottom: 0.6rem;
    color: var(--main-color);
    font-size: 1.4rem;
    font-weight: 600;
}

.game-guide__note p{
    color: var(--light-grey);
    font-size: 1.45rem;
    line-height: 1.75;
}


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

@media (max-width: 1050px){

    .game-guide__intro,
    .game-guide__explanations-content,
    .game-guide__demo-content,
    .game-guide__not-needed{
        grid-template-columns: 1fr;
        gap: 3rem;
    }

    .game-guide__intro-text,
    .game-guide__explanations-points,
    .game-guide__demo-list{
        padding-left: 0;
        border-left: 0;
    }

    .game-guide__timeline{
        grid-template-columns: repeat(2, 1fr);
        gap: 3rem 0;
    }

    .game-guide__timeline-item:nth-child(2){
        border-right: 0;
    }
}

@media (max-width: 800px){

    .game-guide{
        padding: 6rem 5%;
    }

    .game-guide__heading h2{
        font-size: 3.6rem;
    }

    .game-guide__games-grid{
        grid-template-columns: 1fr;
    }

    .game-guide__not-needed-grid{
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px){

    .game-guide__welcome,
    .game-guide__games,
    .game-guide__explanations,
    .game-guide__demo,
    .game-guide__first-steps,
    .game-guide__not-needed{
        padding: 3rem 2.5rem;
    }

    .game-guide__welcome{
        grid-template-columns: 1fr;
    }

    .game-guide__timeline{
        grid-template-columns: 1fr;
    }

    .game-guide__timeline-item,
    .game-guide__timeline-item:first-child,
    .game-guide__timeline-item:last-child{
        padding: 2rem 0;
        border-right: 0;
        border-bottom: 0.1rem solid rgba(0,0,0,0.1);
    }

    .game-guide__timeline-item:first-child{
        padding-top: 0;
    }

    .game-guide__timeline-item:last-child{
        padding-bottom: 0;
        border-bottom: 0;
    }

    .game-guide__demo-heading,
    .game-guide__explanations-heading{
        align-items: flex-start;
    }

    .game-guide__note{
        padding: 2.5rem;
    }
}

/* ==================== Game Guide Area (End) ==================== */

/* ==================== Visit Area (Start) ==================== */

.visit-area{
    padding: 9rem 5%;
    background-color: var(--white);
}

.visit-area__container{
    max-width: 140rem;
    margin: 0 auto;
}

.visit-area__eyebrow{
    display: inline-block;
    margin-bottom: 1rem;
    color: var(--main-color);
    font-size: 1.7rem;
    font-weight: 600;
    letter-spacing: 0.1rem;
}


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

.visit-area__intro{
    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    gap: 8rem;
    align-items: start;
    margin-bottom: 6rem;
}

.visit-area__heading h2{
    color: var(--secondary-color);
    font-size: 4.8rem;
    font-weight: 600;
    line-height: 1.15;
}

.visit-area__heading h2 span{
    display: block;
    color: var(--main-color);
}

.visit-area__intro-text{
    padding-left: 3rem;
    border-left: 0.4rem solid var(--main-color);
}

.visit-area__intro-text p{
    margin-bottom: 1.4rem;
    color: var(--grey);
    font-size: 1.6rem;
    line-height: 1.85;
}

.visit-area__intro-text .visit-area__lead{
    color: var(--secondary-color);
    font-size: 1.75rem;
    font-weight: 500;
}


/* ===== Quick Overview ===== */

.visit-area__quick{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2rem;
}

.visit-area__quick-item{
    padding: 3rem;
    background-color: #f2f3f8;
    border-bottom: 0.4rem solid var(--main-color);
    border-radius: var(--border-radius-3);
}

.visit-area__quick-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5.5rem;
    height: 5.5rem;
    margin-bottom: 2rem;
    background-color: var(--main-color);
    clip-path: var(--custom-clip-path);
}

.visit-area__quick-icon i{
    color: transparent;
    font-size: 2rem;
    -webkit-text-stroke: 1.4px var(--white);
}

.visit-area__quick-item > span{
    display: block;
    margin-bottom: 0.5rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
}

.visit-area__quick-item strong{
    display: block;
    margin-bottom: 0.8rem;
    color: var(--secondary-color);
    font-size: 2.3rem;
    font-weight: 600;
}

.visit-area__quick-item p{
    color: var(--grey);
    font-size: 1.4rem;
    line-height: 1.65;
}


/* ===== Shared Section Heading ===== */

.visit-area__section-heading{
    display: flex;
    align-items: center;
    gap: 2.5rem;
    margin-bottom: 4rem;
    padding-bottom: 2.5rem;
    border-bottom: 0.1rem solid rgba(0,0,0,0.1);
}

.visit-area__section-number{
    color: var(--secondary-color);
    font-size: 4.5rem;
    font-weight: 700;
    opacity: 0.12;
}

.visit-area__section-heading h3{
    color: var(--secondary-color);
    font-size: 3.2rem;
    font-weight: 600;
}


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

.visit-area__hours{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: #f2f3f8;
    border-radius: var(--border-radius-3);
}

.visit-area__hours-content{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6rem;
}

.visit-area__hours-main p{
    margin-bottom: 1.4rem;
    color: var(--grey);
    font-size: 1.55rem;
    line-height: 1.85;
}

.visit-area__hours-timeline{
    padding-left: 4rem;
    border-left: 0.3rem solid var(--main-color);
}

.visit-area__time{
    display: grid;
    grid-template-columns: 8rem 1fr;
    gap: 2rem;
}

.visit-area__time-value{
    color: var(--main-color);
    font-size: 2.4rem;
    font-weight: 700;
}

.visit-area__time-content span{
    display: block;
    margin-bottom: 0.4rem;
    color: var(--main-color);
    font-size: 1.25rem;
    font-weight: 600;
}

.visit-area__time-content h4{
    margin-bottom: 0.8rem;
    color: var(--secondary-color);
    font-size: 1.9rem;
    font-weight: 600;
}

.visit-area__time-content p{
    color: var(--grey);
    font-size: 1.4rem;
    line-height: 1.7;
}

.visit-area__time-line{
    width: 0.1rem;
    height: 3rem;
    margin: 1rem 0 1rem 3.5rem;
    background-color: rgba(0,0,0,0.15);
}


/* ===== Practical Answer ===== */

.visit-area__answer{
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 2rem;
    margin-top: 4rem;
    padding: 3rem;
    background-color: var(--secondary-color);
    border-bottom: 0.4rem solid var(--main-color);
    border-radius: var(--border-radius-3);
}

.visit-area__answer-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5rem;
    height: 5rem;
    background-color: var(--main-color);
    border-radius: 50%;
}

.visit-area__answer-icon i{
    color: var(--white);
    font-size: 1.8rem;
}

.visit-area__answer span{
    display: block;
    margin-bottom: 0.7rem;
    color: var(--main-color);
    font-size: 1.5rem;
    font-weight: 600;
}

.visit-area__answer p{
    color: var(--light-grey);
    font-size: 1.45rem;
    line-height: 1.75;
}

.visit-area__hours-note{
    margin-top: 2rem;
    color: var(--grey);
    font-size: 1.3rem;
    line-height: 1.7;
}


/* ===== Entry ===== */

.visit-area__entry{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--white);
    border: 0.1rem solid #eeeeee;
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.visit-area__entry-layout{
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 6rem;
}

.visit-area__entry-main p{
    margin-bottom: 1.4rem;
    color: var(--grey);
    font-size: 1.55rem;
    line-height: 1.85;
}

.visit-area__entry-main .visit-area__entry-lead{
    color: var(--secondary-color);
    font-size: 1.7rem;
    font-weight: 500;
}

.visit-area__entry-check{
    padding-left: 4rem;
    border-left: 0.3rem solid var(--main-color);
}

.visit-area__check-item{
    display: grid;
    grid-template-columns: 4rem 1fr;
    gap: 1.5rem;
    align-items: center;
    padding: 1.7rem 0;
    border-bottom: 0.1rem solid rgba(0,0,0,0.09);
}

.visit-area__check-item:first-child{
    padding-top: 0;
}

.visit-area__check-item:last-child{
    padding-bottom: 0;
    border-bottom: 0;
}

.visit-area__check-item i{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3.5rem;
    height: 3.5rem;
    color: var(--white);
    background-color: var(--main-color);
    border-radius: 50%;
}

.visit-area__check-item span{
    display: block;
    margin-bottom: 0.3rem;
    color: var(--grey);
    font-size: 1.25rem;
}

.visit-area__check-item strong{
    color: var(--secondary-color);
    font-size: 1.7rem;
    font-weight: 600;
}


/* ===== Reception ===== */

.visit-area__reception{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--secondary-color);
    border-bottom: 0.5rem solid var(--main-color);
    border-radius: var(--border-radius-3);
}

.visit-area__reception-heading{
    display: flex;
    align-items: center;
    gap: 2rem;
    margin-bottom: 4rem;
}

.visit-area__reception-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 6rem;
    height: 6rem;
    flex-shrink: 0;
    background-color: var(--main-color);
    border-radius: 50%;
}

.visit-area__reception-icon i{
    color: var(--white);
    font-size: 2.2rem;
}

.visit-area__reception-heading h3{
    color: var(--white);
    font-size: 3rem;
    font-weight: 600;
}

.visit-area__reception-grid{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.visit-area__reception-step{
    padding: 0 3rem;
    border-right: 0.1rem solid rgba(255,255,255,0.15);
}

.visit-area__reception-step:first-child{
    padding-left: 0;
}

.visit-area__reception-step:last-child{
    padding-right: 0;
    border-right: 0;
}

.visit-area__reception-step > span{
    display: block;
    margin-bottom: 1rem;
    color: var(--main-color);
    font-size: 2rem;
    font-weight: 700;
}

.visit-area__reception-step h4{
    margin-bottom: 1rem;
    color: var(--white);
    font-size: 1.8rem;
    font-weight: 600;
}

.visit-area__reception-step p{
    color: var(--light-grey);
    font-size: 1.4rem;
    line-height: 1.7;
}


/* ===== Dresscode ===== */

.visit-area__dresscode{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: #f2f3f8;
    border-radius: var(--border-radius-3);
}

.visit-area__dresscode-heading{
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    gap: 6rem;
    align-items: end;
    margin-bottom: 4rem;
}

.visit-area__dresscode-heading h3{
    color: var(--secondary-color);
    font-size: 3.1rem;
    font-weight: 600;
    line-height: 1.3;
}

.visit-area__dresscode-heading > p{
    color: var(--grey);
    font-size: 1.5rem;
    line-height: 1.8;
}

.visit-area__dresscode-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
}

.visit-area__dresscode-column{
    padding: 3.5rem;
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.visit-area__dresscode-column--yes{
    border-bottom: 0.4rem solid var(--main-color);
}

.visit-area__dresscode-title{
    display: flex;
    align-items: center;
    gap: 1.5rem;
    margin-bottom: 2.5rem;
}

.visit-area__dresscode-title > i{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 4.5rem;
    height: 4.5rem;
    flex-shrink: 0;
    color: var(--white);
    background-color: var(--main-color);
    border-radius: 50%;
}

.visit-area__dresscode-title span{
    display: block;
    margin-bottom: 0.3rem;
    color: var(--main-color);
    font-size: 1.25rem;
    font-weight: 600;
}

.visit-area__dresscode-title h4{
    color: var(--secondary-color);
    font-size: 2rem;
    font-weight: 600;
}

.visit-area__clothes > div{
    display: grid;
    grid-template-columns: 3rem 1fr;
    gap: 1.2rem;
    padding: 1.3rem 0;
    border-bottom: 0.1rem solid rgba(0,0,0,0.08);
}

.visit-area__clothes > div:last-child{
    border-bottom: 0;
}

.visit-area__clothes i{
    color: var(--main-color);
    font-size: 1.6rem;
}

.visit-area__clothes p{
    color: var(--grey);
    font-size: 1.4rem;
    line-height: 1.6;
}


/* ===== Lindau Rule ===== */

.visit-area__lindau-rule{
    display: grid;
    grid-template-columns: auto 0.75fr 1.25fr;
    gap: 3rem;
    align-items: center;
    margin-top: 2rem;
    padding: 4rem;
    background-color: var(--secondary-color);
    border-bottom: 0.4rem solid var(--main-color);
    border-radius: var(--border-radius-3);
}

.visit-area__lindau-rule-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 6rem;
    height: 6rem;
    background-color: var(--main-color);
    border-radius: 50%;
}

.visit-area__lindau-rule-icon i{
    color: var(--white);
    font-size: 2.1rem;
}

.visit-area__lindau-rule-title span{
    display: block;
    margin-bottom: 0.5rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
}

.visit-area__lindau-rule-title h3{
    color: var(--white);
    font-size: 2.2rem;
    font-weight: 600;
    line-height: 1.4;
}

.visit-area__lindau-rule-text{
    padding-left: 3rem;
    border-left: 0.1rem solid rgba(255,255,255,0.18);
}

.visit-area__lindau-rule-text p{
    margin-bottom: 1rem;
    color: var(--light-grey);
    font-size: 1.4rem;
    line-height: 1.75;
}


/* ===== Before Leaving ===== */

.visit-area__before{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--white);
    border: 0.1rem solid #eeeeee;
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.visit-area__before-heading{
    margin-bottom: 3.5rem;
}

.visit-area__before-heading h3{
    color: var(--secondary-color);
    font-size: 3rem;
    font-weight: 600;
}

.visit-area__before-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}

.visit-area__before-item{
    display: grid;
    grid-template-columns: 4rem 1fr;
    gap: 1.5rem;
    align-items: center;
    padding: 2rem;
    background-color: #f2f3f8;
    border-radius: var(--border-radius-2);
}

.visit-area__before-item span{
    color: var(--main-color);
    font-size: 1.7rem;
    font-weight: 700;
}

.visit-area__before-item p{
    color: var(--secondary-color);
    font-size: 1.4rem;
    line-height: 1.6;
}


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

@media (max-width: 1050px){

    .visit-area__intro,
    .visit-area__hours-content,
    .visit-area__entry-layout,
    .visit-area__dresscode-heading{
        grid-template-columns: 1fr;
        gap: 3rem;
    }

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

    .visit-area__entry-check,
    .visit-area__hours-timeline{
        padding-left: 0;
        border-left: 0;
    }

    .visit-area__reception-grid{
        grid-template-columns: repeat(2, 1fr);
        gap: 3rem 0;
    }

    .visit-area__reception-step:nth-child(2){
        border-right: 0;
    }

    .visit-area__lindau-rule{
        grid-template-columns: auto 1fr;
    }

    .visit-area__lindau-rule-text{
        grid-column: 1 / -1;
        padding-left: 0;
        border-left: 0;
    }
}

@media (max-width: 750px){

    .visit-area{
        padding: 6rem 5%;
    }

    .visit-area__heading h2{
        font-size: 3.6rem;
    }

    .visit-area__dresscode-grid,
    .visit-area__before-grid{
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px){

    .visit-area__quick{
        grid-template-columns: 1fr;
    }

    .visit-area__hours,
    .visit-area__entry,
    .visit-area__reception,
    .visit-area__dresscode,
    .visit-area__lindau-rule,
    .visit-area__before{
        padding: 3rem 2.5rem;
    }

    .visit-area__reception-grid{
        grid-template-columns: 1fr;
    }

    .visit-area__reception-step,
    .visit-area__reception-step:first-child,
    .visit-area__reception-step:last-child{
        padding: 2rem 0;
        border-right: 0;
        border-bottom: 0.1rem solid rgba(255,255,255,0.15);
    }

    .visit-area__reception-step:last-child{
        border-bottom: 0;
    }

    .visit-area__lindau-rule{
        grid-template-columns: 1fr;
    }

    .visit-area__answer{
        grid-template-columns: 1fr;
    }
}

/* ==================== Visit Area (End) ==================== */

/* ==================== Specials Area (Start) ==================== */

.specials-area{
    padding: 9rem 5%;
    background-color: var(--white);
}

.specials-area__container{
    max-width: 140rem;
    margin: 0 auto;
}

.specials-area__eyebrow{
    display: inline-block;
    margin-bottom: 1rem;
    color: var(--main-color);
    font-size: 1.7rem;
    font-weight: 600;
    letter-spacing: 0.1rem;
}

.specials-area__label{
    display: block;
    margin-bottom: 0.6rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
}


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

.specials-area__intro{
    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    gap: 8rem;
    align-items: start;
    margin-bottom: 6rem;
}

.specials-area__heading h2{
    color: var(--secondary-color);
    font-size: 4.8rem;
    font-weight: 600;
    line-height: 1.15;
}

.specials-area__heading h2 span{
    display: block;
    color: var(--main-color);
}

.specials-area__intro-text{
    padding-left: 3rem;
    border-left: 0.4rem solid var(--main-color);
}

.specials-area__intro-text p{
    margin-bottom: 1.4rem;
    color: var(--grey);
    font-size: 1.6rem;
    line-height: 1.85;
}

.specials-area__intro-text .specials-area__lead{
    color: var(--secondary-color);
    font-size: 1.75rem;
    font-weight: 500;
}


/* ===== Dynamic ===== */

.specials-area__dynamic{
    display: grid;
    grid-template-columns: auto 0.7fr 1.3fr;
    gap: 3rem;
    align-items: center;
    padding: 4rem;
    background-color: var(--secondary-color);
    border-bottom: 0.5rem solid var(--main-color);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.specials-area__dynamic-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 6.5rem;
    height: 6.5rem;
    background-color: var(--main-color);
    border-radius: 50%;
}

.specials-area__dynamic-icon i{
    color: var(--white);
    font-size: 2.3rem;
}

.specials-area__dynamic-title h3{
    color: var(--white);
    font-size: 2.5rem;
    font-weight: 600;
    line-height: 1.35;
}

.specials-area__dynamic-text{
    padding-left: 3rem;
    border-left: 0.1rem solid rgba(255,255,255,0.18);
}

.specials-area__dynamic-text p{
    margin-bottom: 1rem;
    color: var(--light-grey);
    font-size: 1.45rem;
    line-height: 1.75;
}


/* ===== Types ===== */

.specials-area__types{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: #f2f3f8;
    border-radius: var(--border-radius-3);
}

.specials-area__types-heading{
    max-width: 85rem;
    margin-bottom: 4rem;
}

.specials-area__types-heading h3{
    margin-bottom: 1.2rem;
    color: var(--secondary-color);
    font-size: 3.2rem;
    font-weight: 600;
}

.specials-area__types-heading p{
    color: var(--grey);
    font-size: 1.5rem;
    line-height: 1.8;
}

.specials-area__types-grid{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2rem;
}

.specials-area__type{
    padding: 3rem 2.5rem;
    background-color: var(--white);
    border-bottom: 0.4rem solid var(--main-color);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.specials-area__type-top{
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 2rem;
}

.specials-area__type-top > span{
    color: var(--secondary-color);
    font-size: 3.5rem;
    font-weight: 700;
    opacity: 0.1;
}

.specials-area__type-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5.5rem;
    height: 5.5rem;
    background-color: var(--main-color);
    clip-path: var(--custom-clip-path);
}

.specials-area__type-icon i{
    color: transparent;
    font-size: 2rem;
    -webkit-text-stroke: 1.4px var(--white);
}

.specials-area__type h4{
    margin-bottom: 1rem;
    color: var(--secondary-color);
    font-size: 1.9rem;
    font-weight: 600;
}

.specials-area__type p{
    color: var(--grey);
    font-size: 1.4rem;
    line-height: 1.7;
}


/* ===== Yammy ===== */

.specials-area__yammy{
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: 6rem;
    margin-top: 2rem;
    padding: 5rem;
    background-color: var(--secondary-color);
    border-bottom: 0.5rem solid var(--main-color);
    border-radius: var(--border-radius-3);
}

.specials-area__section-number{
    display: block;
    margin-bottom: 1.5rem;
    color: rgba(255,255,255,0.12);
    font-size: 5rem;
    font-weight: 700;
    line-height: 1;
}

.specials-area__yammy-main h3{
    margin-bottom: 2rem;
    color: var(--white);
    font-size: 3.3rem;
    font-weight: 600;
}

.specials-area__yammy-main p{
    margin-bottom: 1.4rem;
    color: var(--light-grey);
    font-size: 1.5rem;
    line-height: 1.85;
}

.specials-area__yammy-main .specials-area__yammy-lead{
    color: var(--white);
    font-size: 1.65rem;
}

.specials-area__yammy-info{
    padding: 3rem;
    background-color: rgba(255,255,255,0.07);
    border: 0.1rem solid rgba(255,255,255,0.12);
    border-radius: var(--border-radius-3);
}

.specials-area__yammy-mark{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 6rem;
    height: 6rem;
    margin-bottom: 2rem;
    background-color: var(--main-color);
    border-radius: 50%;
}

.specials-area__yammy-mark i{
    color: var(--white);
    font-size: 2.1rem;
}

.specials-area__yammy-fact{
    padding: 1.5rem 0;
    border-bottom: 0.1rem solid rgba(255,255,255,0.13);
}

.specials-area__yammy-fact:last-child{
    border-bottom: 0;
}

.specials-area__yammy-fact span{
    display: block;
    margin-bottom: 0.3rem;
    color: var(--main-color);
    font-size: 1.2rem;
    font-weight: 600;
}

.specials-area__yammy-fact strong{
    display: block;
    margin-bottom: 0.4rem;
    color: var(--white);
    font-size: 1.7rem;
    font-weight: 600;
}

.specials-area__yammy-fact p{
    color: var(--light-grey);
    font-size: 1.3rem;
    line-height: 1.6;
}


/* ===== Current ===== */

.specials-area__current{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--white);
    border: 0.1rem solid #eeeeee;
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.specials-area__current-heading{
    display: flex;
    justify-content: space-between;
    gap: 3rem;
    align-items: center;
    margin-bottom: 4rem;
}

.specials-area__current-heading h3{
    color: var(--secondary-color);
    font-size: 3rem;
    font-weight: 600;
}

.specials-area__current-status{
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.2rem 1.7rem;
    background-color: #f2f3f8;
    border-radius: var(--border-radius-1);
}

.specials-area__current-status i{
    color: var(--main-color);
}

.specials-area__current-status span{
    color: var(--secondary-color);
    font-size: 1.3rem;
    font-weight: 600;
}

.specials-area__current-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.specials-area__current-item{
    padding: 1rem 3.5rem;
    border-right: 0.1rem solid rgba(0,0,0,0.1);
}

.specials-area__current-item:first-child{
    padding-left: 0;
}

.specials-area__current-item:last-child{
    padding-right: 0;
    border-right: 0;
}

.specials-area__current-type{
    display: block;
    margin-bottom: 0.7rem;
    color: var(--main-color);
    font-size: 1.25rem;
    font-weight: 600;
}

.specials-area__current-item h4{
    margin-bottom: 1rem;
    color: var(--secondary-color);
    font-size: 2rem;
    font-weight: 600;
}

.specials-area__current-item p{
    color: var(--grey);
    font-size: 1.4rem;
    line-height: 1.7;
}

.specials-area__current-note{
    display: flex;
    align-items: flex-start;
    gap: 1.5rem;
    margin-top: 3.5rem;
    padding: 2rem 2.5rem;
    background-color: #f2f3f8;
    border-left: 0.4rem solid var(--main-color);
    border-radius: var(--border-radius-1);
}

.specials-area__current-note i{
    margin-top: 0.3rem;
    color: var(--main-color);
    font-size: 1.6rem;
}

.specials-area__current-note p{
    color: var(--grey);
    font-size: 1.4rem;
    line-height: 1.7;
}


/* ===== Poker ===== */

.specials-area__poker{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: #f2f3f8;
    border-radius: var(--border-radius-3);
}

.specials-area__poker-heading{
    display: flex;
    align-items: center;
    gap: 2rem;
    margin-bottom: 3.5rem;
}

.specials-area__poker-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 6rem;
    height: 6rem;
    background-color: var(--main-color);
    border-radius: 50%;
}

.specials-area__poker-icon i{
    color: var(--white);
    font-size: 2.1rem;
}

.specials-area__poker-heading h3{
    color: var(--secondary-color);
    font-size: 3rem;
    font-weight: 600;
}

.specials-area__poker-content{
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 6rem;
}

.specials-area__poker-text p{
    margin-bottom: 1.3rem;
    color: var(--grey);
    font-size: 1.5rem;
    line-height: 1.8;
}

.specials-area__poker-points{
    padding-left: 4rem;
    border-left: 0.3rem solid var(--main-color);
}

.specials-area__poker-points > div{
    display: grid;
    grid-template-columns: 4rem 1fr;
    gap: 1.5rem;
    padding: 1.5rem 0;
    border-bottom: 0.1rem solid rgba(0,0,0,0.09);
}

.specials-area__poker-points > div:last-child{
    border-bottom: 0;
}

.specials-area__poker-points span{
    color: var(--main-color);
    font-size: 1.7rem;
    font-weight: 700;
}

.specials-area__poker-points p{
    color: var(--secondary-color);
    font-size: 1.4rem;
    font-weight: 500;
}


/* ===== Calendar ===== */

.specials-area__calendar{
    display: grid;
    grid-template-columns: 0.7fr 1.1fr 0.8fr;
    gap: 5rem;
    align-items: center;
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--white);
    border: 0.1rem solid #eeeeee;
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.specials-area__calendar-title h3{
    color: var(--secondary-color);
    font-size: 2.7rem;
    font-weight: 600;
    line-height: 1.35;
}

.specials-area__calendar-content{
    padding-left: 4rem;
    border-left: 0.3rem solid var(--main-color);
}

.specials-area__calendar-content p{
    margin-bottom: 1.2rem;
    color: var(--grey);
    font-size: 1.45rem;
    line-height: 1.75;
}

.specials-area__calendar-check > div{
    display: flex;
    align-items: center;
    gap: 1.2rem;
    padding: 1.2rem 0;
    border-bottom: 0.1rem solid rgba(0,0,0,0.08);
}

.specials-area__calendar-check > div:last-child{
    border-bottom: 0;
}

.specials-area__calendar-check i{
    width: 2rem;
    color: var(--main-color);
    font-size: 1.5rem;
}

.specials-area__calendar-check span{
    color: var(--secondary-color);
    font-size: 1.35rem;
    font-weight: 500;
}


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

.specials-area__difference{
    display: grid;
    grid-template-columns: auto 0.7fr 1.3fr;
    gap: 3rem;
    align-items: center;
    margin-top: 2rem;
    padding: 3.5rem 4rem;
    background-color: var(--secondary-color);
    border-bottom: 0.4rem solid var(--main-color);
    border-radius: var(--border-radius-3);
}

.specials-area__difference-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5.5rem;
    height: 5.5rem;
    background-color: var(--main-color);
    clip-path: var(--custom-clip-path);
}

.specials-area__difference-icon i{
    color: transparent;
    font-size: 2rem;
    -webkit-text-stroke: 1.4px var(--white);
}

.specials-area__difference-title span{
    display: block;
    margin-bottom: 0.4rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
}

.specials-area__difference-title h3{
    color: var(--white);
    font-size: 2.2rem;
    font-weight: 600;
}

.specials-area__difference-text{
    padding-left: 3rem;
    border-left: 0.1rem solid rgba(255,255,255,0.18);
}

.specials-area__difference-text p{
    color: var(--light-grey);
    font-size: 1.4rem;
    line-height: 1.75;
}


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

@media (max-width: 1050px){

    .specials-area__intro,
    .specials-area__yammy,
    .specials-area__poker-content,
    .specials-area__calendar{
        grid-template-columns: 1fr;
        gap: 3rem;
    }

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

    .specials-area__intro-text,
    .specials-area__poker-points,
    .specials-area__calendar-content{
        padding-left: 0;
        border-left: 0;
    }

    .specials-area__dynamic,
    .specials-area__difference{
        grid-template-columns: auto 1fr;
    }

    .specials-area__dynamic-text,
    .specials-area__difference-text{
        grid-column: 1 / -1;
        padding-left: 0;
        border-left: 0;
    }
}

@media (max-width: 750px){

    .specials-area{
        padding: 6rem 5%;
    }

    .specials-area__heading h2{
        font-size: 3.6rem;
    }

    .specials-area__types-grid,
    .specials-area__current-grid{
        grid-template-columns: 1fr;
    }

    .specials-area__current-item,
    .specials-area__current-item:first-child,
    .specials-area__current-item:last-child{
        padding: 2.5rem 0;
        border-right: 0;
        border-bottom: 0.1rem solid rgba(0,0,0,0.1);
    }

    .specials-area__current-item:last-child{
        border-bottom: 0;
    }

    .specials-area__current-heading{
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 550px){

    .specials-area__dynamic,
    .specials-area__types,
    .specials-area__yammy,
    .specials-area__current,
    .specials-area__poker,
    .specials-area__calendar,
    .specials-area__difference{
        padding: 3rem 2.5rem;
    }

    .specials-area__dynamic,
    .specials-area__difference{
        grid-template-columns: 1fr;
    }

    .specials-area__poker-heading{
        align-items: flex-start;
    }
}

/* ==================== Specials Area (End) ==================== */

/* ==================== Location Area (Start) ==================== */

.location-area{
    padding: 9rem 5%;
    background-color: #f2f3f8;
}

.location-area__container{
    max-width: 140rem;
    margin: 0 auto;
}

.location-area__eyebrow,
.visit-plan__eyebrow{
    display: inline-block;
    margin-bottom: 1rem;
    color: var(--main-color);
    font-size: 1.7rem;
    font-weight: 600;
    letter-spacing: 0.1rem;
}


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

.location-area__intro{
    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    gap: 8rem;
    align-items: start;
    margin-bottom: 6rem;
}

.location-area__heading h2{
    color: var(--secondary-color);
    font-size: 4.8rem;
    font-weight: 600;
    line-height: 1.15;
}

.location-area__heading h2 span{
    display: block;
    color: var(--main-color);
}

.location-area__intro-text{
    padding-left: 3rem;
    border-left: 0.4rem solid var(--main-color);
}

.location-area__intro-text p{
    margin-bottom: 1.4rem;
    color: var(--grey);
    font-size: 1.6rem;
    line-height: 1.85;
}

.location-area__intro-text .location-area__lead{
    color: var(--secondary-color);
    font-size: 1.75rem;
    font-weight: 500;
}


/* ===== Address ===== */

.location-area__address{
    display: grid;
    grid-template-columns: auto 1fr 1.2fr;
    gap: 3rem;
    align-items: center;
    padding: 4rem;
    background-color: var(--secondary-color);
    border-bottom: 0.5rem solid var(--main-color);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.location-area__address-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 6.5rem;
    height: 6.5rem;
    background-color: var(--main-color);
    border-radius: 50%;
}

.location-area__address-icon i{
    color: var(--white);
    font-size: 2.3rem;
}

.location-area__address-main span{
    display: block;
    margin-bottom: 0.3rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
}

.location-area__address-main h3{
    margin-bottom: 0.5rem;
    color: var(--white);
    font-size: 2.5rem;
    font-weight: 600;
}

.location-area__address-main p{
    color: var(--light-grey);
    font-size: 1.5rem;
}

.location-area__address-context{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    border-left: 0.1rem solid rgba(255,255,255,0.18);
}

.location-area__address-context > div{
    padding: 1rem 2rem;
    text-align: center;
}

.location-area__address-context i{
    display: block;
    margin-bottom: 0.8rem;
    color: var(--main-color);
    font-size: 1.8rem;
}

.location-area__address-context span{
    color: var(--light-grey);
    font-size: 1.3rem;
}


/* ===== Shared Heading ===== */

.location-area__section-heading{
    display: flex;
    align-items: center;
    gap: 2.5rem;
    margin-bottom: 4rem;
    padding-bottom: 2.5rem;
    border-bottom: 0.1rem solid rgba(0,0,0,0.1);
}

.location-area__section-number{
    color: var(--secondary-color);
    font-size: 4.5rem;
    font-weight: 700;
    opacity: 0.12;
}

.location-area__section-heading h3{
    color: var(--secondary-color);
    font-size: 3.2rem;
    font-weight: 600;
}


/* ===== Arrival ===== */

.location-area__arrival{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.location-area__arrival-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.location-area__arrival-card{
    padding: 3rem;
    background-color: #f2f3f8;
    border-bottom: 0.4rem solid var(--main-color);
    border-radius: var(--border-radius-3);
}

.location-area__arrival-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5.5rem;
    height: 5.5rem;
    margin-bottom: 2rem;
    background-color: var(--main-color);
    clip-path: var(--custom-clip-path);
}

.location-area__arrival-icon i{
    color: transparent;
    font-size: 2rem;
    -webkit-text-stroke: 1.4px var(--white);
}

.location-area__arrival-card > span{
    display: block;
    margin-bottom: 0.5rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
}

.location-area__arrival-card h4{
    margin-bottom: 1.2rem;
    color: var(--secondary-color);
    font-size: 2rem;
    font-weight: 600;
}

.location-area__arrival-card p{
    margin-bottom: 1rem;
    color: var(--grey);
    font-size: 1.4rem;
    line-height: 1.7;
}


/* ===== Parking ===== */

.location-area__parking{
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--white);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.location-area__parking-heading{
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    gap: 6rem;
    align-items: end;
    margin-bottom: 4rem;
}

.location-area__parking-heading h3{
    color: var(--secondary-color);
    font-size: 3.1rem;
    font-weight: 600;
}

.location-area__parking-heading > p{
    color: var(--grey);
    font-size: 1.5rem;
    line-height: 1.8;
}

.location-area__parking-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.location-area__parking-card{
    padding: 3rem;
    background-color: #f2f3f8;
    border-radius: var(--border-radius-3);
}

.location-area__parking-top{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
}

.location-area__parking-top span{
    color: var(--main-color);
    font-size: 3rem;
    font-weight: 700;
}

.location-area__parking-top i{
    color: var(--secondary-color);
    font-size: 2.8rem;
    opacity: 0.2;
}

.location-area__parking-card h4{
    margin-bottom: 1rem;
    color: var(--secondary-color);
    font-size: 1.9rem;
    font-weight: 600;
}

.location-area__parking-card p{
    color: var(--grey);
    font-size: 1.4rem;
    line-height: 1.7;
}

.location-area__parking-note{
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 2rem;
    margin-top: 3rem;
    padding: 2.5rem;
    background-color: var(--secondary-color);
    border-radius: var(--border-radius-2);
}

.location-area__parking-note-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 4.5rem;
    height: 4.5rem;
    background-color: var(--main-color);
    border-radius: 50%;
}

.location-area__parking-note-icon i{
    color: var(--white);
    font-size: 1.7rem;
}

.location-area__parking-note span{
    display: block;
    margin-bottom: 0.5rem;
    color: var(--main-color);
    font-size: 1.4rem;
    font-weight: 600;
}

.location-area__parking-note p{
    color: var(--light-grey);
    font-size: 1.4rem;
    line-height: 1.7;
}


/* ===== Orientation ===== */

.location-area__orientation{
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 6rem;
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: var(--secondary-color);
    border-bottom: 0.5rem solid var(--main-color);
    border-radius: var(--border-radius-3);
}

.location-area__orientation-content h3{
    margin-bottom: 1.5rem;
    color: var(--white);
    font-size: 3rem;
    font-weight: 600;
}

.location-area__orientation-content p{
    margin-bottom: 1.2rem;
    color: var(--light-grey);
    font-size: 1.5rem;
    line-height: 1.8;
}

.location-area__orientation-points{
    padding-left: 4rem;
    border-left: 0.1rem solid rgba(255,255,255,0.18);
}

.location-area__orientation-points > div{
    display: grid;
    grid-template-columns: 4rem 1fr;
    gap: 1.5rem;
    padding: 1.5rem 0;
    border-bottom: 0.1rem solid rgba(255,255,255,0.12);
}

.location-area__orientation-points > div:last-child{
    border-bottom: 0;
}

.location-area__orientation-points span{
    color: var(--main-color);
    font-size: 1.7rem;
    font-weight: 700;
}

.location-area__orientation-points p{
    color: var(--light-grey);
    font-size: 1.4rem;
}


/* ==================== Location Area (End) ==================== */


/* ==================== Visit Plan Area (Start) ==================== */

.visit-plan{
    padding: 9rem 5%;
    background-color: var(--white);
}

.visit-plan__container{
    display: grid;
    grid-template-columns: 0.95fr 1.05fr;
    gap: 6rem;
    max-width: 140rem;
    margin: 0 auto;
    align-items: center;
}

.visit-plan__visual{
    position: relative;
    height: 58rem;
}

.visit-plan__visual img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.visit-plan__visual-card{
    position: absolute;
    right: 2rem;
    bottom: 2rem;
    width: 28rem;
    padding: 2.5rem;
    background-color: var(--secondary-color);
    border-bottom: 0.4rem solid var(--main-color);
    border-radius: var(--border-radius-2);
}

.visit-plan__visual-card span{
    display: block;
    margin-bottom: 0.4rem;
    color: var(--main-color);
    font-size: 1.3rem;
    font-weight: 600;
}

.visit-plan__visual-card strong{
    display: block;
    margin-bottom: 0.6rem;
    color: var(--white);
    font-size: 2.2rem;
    font-weight: 600;
}

.visit-plan__visual-card p{
    color: var(--light-grey);
    font-size: 1.35rem;
}

.visit-plan__content h2{
    margin-bottom: 2.5rem;
    color: var(--secondary-color);
    font-size: 4.8rem;
    font-weight: 600;
    line-height: 1.15;
}

.visit-plan__content h2 span{
    display: block;
    color: var(--main-color);
}

.visit-plan__content p{
    margin-bottom: 1.4rem;
    color: var(--grey);
    font-size: 1.6rem;
    line-height: 1.85;
}

.visit-plan__content .visit-plan__lead{
    color: var(--secondary-color);
    font-size: 1.75rem;
    font-weight: 500;
}


/* ===== Steps ===== */

.visit-plan__steps{
    grid-column: 1 / -1;
    margin-top: 2rem;
    padding: 4.5rem;
    background-color: #f2f3f8;
    border-radius: var(--border-radius-3);
}

.visit-plan__steps-heading{
    margin-bottom: 4rem;
}

.visit-plan__steps-heading h3{
    color: var(--secondary-color);
    font-size: 3.2rem;
    font-weight: 600;
}

.visit-plan__timeline{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.visit-plan__step{
    position: relative;
    padding: 3rem;
    background-color: var(--white);
    border-bottom: 0.4rem solid var(--main-color);
    border-radius: var(--border-radius-3);
    box-shadow: var(--box-shadow);
}

.visit-plan__step-number{
    position: absolute;
    top: 2rem;
    right: 2rem;
    color: var(--secondary-color);
    font-size: 4rem;
    font-weight: 700;
    opacity: 0.08;
}

.visit-plan__step-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5.5rem;
    height: 5.5rem;
    margin-bottom: 2rem;
    background-color: var(--main-color);
    clip-path: var(--custom-clip-path);
}

.visit-plan__step-icon i{
    color: transparent;
    font-size: 2rem;
    -webkit-text-stroke: 1.4px var(--white);
}

.visit-plan__step-content > span{
    display: block;
    margin-bottom: 0.5rem;
    color: var(--main-color);
    font-size: 1.25rem;
    font-weight: 600;
}

.visit-plan__step-content h4{
    margin-bottom: 1rem;
    color: var(--secondary-color);
    font-size: 1.9rem;
    font-weight: 600;
}

.visit-plan__step-content p{
    color: var(--grey);
    font-size: 1.4rem;
    line-height: 1.7;
}


/* ===== Checklist ===== */

.visit-plan__checklist{
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 0.6fr 1.4fr;
    gap: 5rem;
    align-items: center;
    margin-top: 2rem;
    padding: 4rem;
    background-color: var(--secondary-color);
    border-bottom: 0.5rem solid var(--main-color);
    border-radius: var(--border-radius-3);
}

.visit-plan__checklist-title h3{
    color: var(--white);
    font-size: 3rem;
    font-weight: 600;
}

.visit-plan__checklist-items{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.2rem;
}

.visit-plan__checklist-items > div{
    display: flex;
    align-items: center;
    gap: 1.2rem;
    padding: 1.4rem;
    background-color: rgba(255,255,255,0.07);
    border-radius: var(--border-radius-1);
}

.visit-plan__checklist-items i{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.8rem;
    height: 2.8rem;
    flex-shrink: 0;
    color: var(--white);
    background-color: var(--main-color);
    border-radius: 50%;
    font-size: 1.1rem;
}

.visit-plan__checklist-items span{
    color: var(--light-grey);
    font-size: 1.35rem;
}


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

@media (max-width: 1050px){

    .location-area__intro,
    .location-area__parking-heading,
    .location-area__orientation,
    .visit-plan__container{
        grid-template-columns: 1fr;
        gap: 3rem;
    }

    .location-area__address{
        grid-template-columns: auto 1fr;
    }

    .location-area__address-context{
        grid-column: 1 / -1;
        border-left: 0;
        border-top: 0.1rem solid rgba(255,255,255,0.18);
        padding-top: 2rem;
    }

    .location-area__orientation-points{
        padding-left: 0;
        border-left: 0;
    }

    .visit-plan__visual,
    .visit-plan__content,
    .visit-plan__steps,
    .visit-plan__checklist{
        grid-column: 1;
    }

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

@media (max-width: 800px){

    .location-area__arrival-grid,
    .location-area__parking-grid{
        grid-template-columns: 1fr;
    }

    .visit-plan__checklist{
        grid-template-columns: 1fr;
        gap: 3rem;
    }
}

@media (max-width: 650px){

    .location-area,
    .visit-plan{
        padding: 6rem 5%;
    }

    .location-area__heading h2,
    .visit-plan__content h2{
        font-size: 3.6rem;
    }

    .location-area__intro-text{
        padding-left: 0;
        border-left: 0;
    }

    .location-area__address{
        grid-template-columns: 1fr;
    }

    .location-area__address-context{
        grid-template-columns: 1fr;
    }

    .visit-plan__timeline,
    .visit-plan__checklist-items{
        grid-template-columns: 1fr;
    }

    .visit-plan__visual{
        height: 42rem;
    }
}

@media (max-width: 500px){

    .location-area__arrival,
    .location-area__parking,
    .location-area__orientation,
    .visit-plan__steps,
    .visit-plan__checklist{
        padding: 3rem 2.5rem;
    }

    .location-area__address{
        padding: 3rem 2.5rem;
    }

    .visit-plan__visual{
        height: 38rem;
    }

    .visit-plan__visual-card{
        right: 1.5rem;
        bottom: 1.5rem;
        width: calc(100% - 3rem);
    }
}

/* ==================== Visit Plan Area (End) ==================== */

/* ==================== FAQ Area (Start) ==================== */

.faq{
    padding: 9rem 5%;
    background-color: #f2f3f8;
}

.faq-container{
    max-width: 120rem;
    margin: 0 auto;
}


/* ===== Heading ===== */

.faq-heading{
    max-width: 75rem;
    margin: 0 auto 5rem;
    text-align: center;
}

.faq-eyebrow{
    display: inline-block;
    margin-bottom: 1rem;
    color: var(--main-color);
    font-size: 1.7rem;
    font-weight: 600;
    letter-spacing: 0.1rem;
}

.faq-heading h2{
    margin-bottom: 1.5rem;
    color: var(--secondary-color);
    font-size: 4.8rem;
    font-weight: 600;
    line-height: 1.15;
}

.faq-heading h2 span{
    color: var(--main-color);
}

.faq-heading p{
    color: var(--grey);
    font-size: 1.55rem;
    line-height: 1.8;
}


/* ===== Grid ===== */

.faq-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
    align-items: start;
}


/* ===== FAQ Item ===== */

.faq-item{
    overflow: hidden;
    background-color: var(--white);
    border-radius: var(--border-radius-2);
    box-shadow: var(--box-shadow);
}

.faq-item summary{
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 2rem;
    align-items: center;
    padding: 2.2rem 2.5rem;
    cursor: pointer;
    list-style: none;
}

.faq-item summary::-webkit-details-marker{
    display: none;
}

.faq-item summary span{
    color: var(--secondary-color);
    font-size: 1.55rem;
    font-weight: 600;
    line-height: 1.45;
}

.faq-item summary i{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3.4rem;
    height: 3.4rem;
    flex-shrink: 0;
    color: var(--white);
    background-color: var(--main-color);
    border-radius: 50%;
    font-size: 1.2rem;
    transition: transform 0.25s ease;
}

.faq-item[open] summary i{
    transform: rotate(45deg);
}


/* ===== Open State ===== */

.faq-item[open]{
    border-bottom: 0.3rem solid var(--main-color);
}

.faq-item[open] summary{
    padding-bottom: 1.6rem;
}

.faq-answer{
    padding: 0 2.5rem 2.2rem;
}

.faq-answer p{
    padding-top: 1.6rem;
    color: var(--grey);
    border-top: 0.1rem solid rgba(0,0,0,0.08);
    font-size: 1.4rem;
    line-height: 1.7;
}


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

.faq-item summary:hover span{
    color: var(--main-color);
}


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

@media (max-width: 800px){

    .faq{
        padding: 6rem 5%;
    }

    .faq-heading h2{
        font-size: 3.6rem;
    }

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

@media (max-width: 500px){

    .faq-item summary{
        padding: 2rem;
    }

    .faq-answer{
        padding: 0 2rem 2rem;
    }

    .faq-item summary span{
        font-size: 1.45rem;
    }
}

/* ==================== FAQ Area (End) ==================== */
/* ==================== Lindau Legal Pages (Start) ==================== */
.legal-page .header{position:absolute;top:0;left:0;width:100%;z-index:1000;}
.legal-page .legal-summary,.legal-page .legal-section{box-shadow:0 1.2rem 3.5rem rgba(0,0,0,.14);}
.legal-page .legal-section strong{color:#fff;font-weight:600;}
.legal-page .legal-section li::marker{color:var(--main-color);}
.legal-page .footer{margin-top:0;}
/* ==================== Lindau Legal Pages (End) ==================== */


/* ==================== Responsive Header & Hero ==================== */

.site-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
}

.site-header .header-2 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  width: 100%;
  height: 8rem;
  padding: 0 4%;
  background: rgba(10, 7, 16, 0.55);
  transition: background .25s ease;
}

.site-header.active .header-2 {
  background: rgba(10, 7, 16, .97);
}

.site-header .logo {
  flex: 0 0 auto;
  position: relative;
  z-index: 2;
}

.site-header .logo img {
  display: block;
  width: auto;
  height: 5.8rem;
  max-width: 18rem;
  object-fit: contain;
}

.site-header .container {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 1;
  min-width: 0;
  gap: 2rem;
  height: 100%;
}

.site-header .navbar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 1;
  min-width: 0;
  height: 100%;
  gap: clamp(.9rem, 1.15vw, 2rem);
}

.site-header .navbar .nav-btn {
  flex: 0 0 auto;
  color: #fff;
  font-size: clamp(1.2rem, .88vw, 1.55rem);
  font-weight: 500;
  white-space: nowrap;
  transition: color .2s ease;
}

.site-header .navbar .nav-btn:hover,
.site-header .navbar .nav-btn:focus-visible {
  color: var(--main-color);
}

.site-header .icon-container {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  gap: 1.4rem;
}

.site-header #search-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .6rem;
  background: transparent;
  color: #fff;
  font-size: 1.8rem;
  cursor: pointer;
}

.site-header .icon-container > .btn {
  flex: 0 0 auto;
  padding: 1.2rem 2rem;
  font-size: 1.4rem;
  white-space: nowrap;
}

.site-menu-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  width: 4.4rem;
  height: 4.4rem;
  flex: 0 0 auto;
  color: #fff;
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.2);
  border-radius: .8rem;
  font-size: 2.1rem;
  cursor: pointer;
}

.site-menu-toggle:hover,
.site-menu-toggle:focus-visible {
  background: var(--main-color);
}

.site-mobile-menu {
  display: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  background: #130c1d;
  border-top: 1px solid rgba(255,255,255,.1);
  box-shadow: 0 2rem 4rem rgba(0,0,0,.3);
}

.site-mobile-menu.is-open {
  display: block;
}

.site-mobile-navbar {
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  max-height: calc(100dvh - 8rem);
  padding: 1rem 4% 2rem;
  overscroll-behavior: contain;
}

.site-mobile-navbar a {
  display: block;
  padding: 1.25rem 1rem;
  color: #f5f1f8;
  font-size: 1.5rem;
  font-weight: 500;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.site-mobile-navbar a:hover,
.site-mobile-navbar a:focus-visible {
  color: #fff;
  background: rgba(241,18,162,.13);
}

.site-header .search-container {
  z-index: 10;
}

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

.home {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: auto;
  min-height: 64rem;
  min-height: max(64rem, 85svh);
  padding: 0;
  overflow: hidden;
  background: #0d0914;
}

.home .home-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.home .content {
  position: relative;
  inset: auto;
  display: flex;
  align-items: center;
  width: 100%;
  height: auto;
  min-height: inherit;
  padding: 13rem 5% 9rem;
  background: linear-gradient(
    90deg,
    rgba(5,4,10,.88) 0%,
    rgba(5,4,10,.65) 48%,
    rgba(5,4,10,.22) 100%
  );
}

.home .content .text {
  width: 100%;
  max-width: 78rem;
  margin: 0;
}

.home .content h5 {
  margin-bottom: 1.8rem;
  color: #fff;
  font-size: clamp(1.5rem, 1.4vw, 2.2rem);
  font-weight: 500;
  line-height: 1.5;
}

.home .content h1 {
  margin-bottom: 2rem;
  color: #fff;
  font-size: clamp(4rem, 5.5vw, 7rem);
  font-weight: 700;
  line-height: 1.12;
  letter-spacing: 0;
}

.home .content h1 span {
  color: var(--main-color);
}

.home .hero-desc {
  max-width: 65rem;
  margin: 0 0 3rem;
  color: rgba(255,255,255,.9);
  font-size: clamp(1.5rem, 1.15vw, 1.8rem);
  line-height: 1.75;
}

.home .content .btn {
  font-size: 1.5rem;
  padding: 1.4rem 3rem;
}

/* ==================== Tablet ==================== */

@media (max-width: 1250px) {
  .site-header .navbar {
    display: none;
  }

  .site-menu-toggle {
    display: inline-flex;
  }

  .site-header .container {
    justify-content: flex-end;
  }

  .home {
    min-height: 65rem;
    min-height: max(65rem, 80svh);
  }
}

/* ==================== Mobile ==================== */

@media (max-width: 767px) {
  .site-header .header-2 {
    height: 7rem;
    padding: 0 4%;
    gap: 1rem;
  }

  .site-header .logo img {
    height: 4.8rem;
    max-width: 13rem;
  }

  .site-header .container {
    gap: .8rem;
  }

  .site-header .icon-container {
    gap: .8rem;
  }

  .site-header #search-btn {
    font-size: 1.7rem;
  }

  .site-header .icon-container > .btn {
    padding: 1rem 1.3rem;
    font-size: 1.25rem;
    border-radius: .8rem;
  }

  .site-menu-toggle {
    width: 4rem;
    height: 4rem;
  }

  .site-mobile-navbar {
    max-height: calc(100dvh - 7rem);
    padding: 1rem 4% 2rem;
  }

  .site-header .search-container {
    width: min(40rem, calc(100vw - 3rem));
    right: 1.5rem;
  }

  .home {
    min-height: 62rem;
    min-height: 85svh;
  }

  .home .content {
    padding: 12rem 6% 6rem;
    background: linear-gradient(
      90deg,
      rgba(5,4,10,.86),
      rgba(5,4,10,.5)
    );
  }

  .home .content h5 {
    font-size: 1.5rem;
  }

  .home .content h1 {
    font-size: clamp(3.8rem, 10vw, 5.2rem);
  }

  .home .hero-desc {
    font-size: 1.5rem;
    line-height: 1.7;
  }
}

/* ==================== Small Phones ==================== */

@media (max-width: 400px) {
  .site-header .header-2 {
    padding: 0 3%;
    gap: .5rem;
  }

  .site-header .logo img {
    height: 4rem;
    max-width: 10rem;
  }

  .site-header .icon-container {
    gap: .5rem;
  }

  .site-header .icon-container > .btn {
    padding: .9rem 1rem;
    font-size: 1.15rem;
  }

  .site-header #search-btn {
    padding: .3rem;
  }

  .site-menu-toggle {
    width: 3.7rem;
    height: 3.7rem;
  }

  .home .content {
    padding-left: 5%;
    padding-right: 5%;
  }
}

/* ==================== Short Screens ==================== */

@media (max-height: 550px) and (orientation: landscape) {
  .home {
    min-height: 45rem;
  }

  .home .content {
    padding-top: 11rem;
    padding-bottom: 4rem;
  }
}

html {
  scroll-padding-top: 8rem;
}

@media (max-width: 767px) {
  html {
    scroll-padding-top: 7rem;
  }
}

/* ==================== Hero Height Update ==================== */

.home {
  min-height: max(72rem, 95svh);
}

@media (max-width: 1250px) {
  .home {
    min-height: max(70rem, 90svh);
  }
}

@media (max-width: 767px) {
  .home {
    min-height: 92svh;
  }
}

@media (max-height: 550px) and (orientation: landscape) {
  .home {
    min-height: 50rem;
  }
}

/* ==================== Blue & Violet Theme ==================== */

:root {
  --main-color: #458BFF;
  --secondary-color: #6554D9;
  --black: #080D24;
  --custom-bg: rgba(8, 13, 36, 0.9);
  --custom-border: 0.5rem solid var(--main-color);
}

/* Header */
.site-header .header-2 {
  background: rgba(8, 13, 36, 0.72);
}

.site-header.active .header-2 {
  background: rgba(8, 13, 36, 0.97);
  border-bottom: 1px solid rgba(69, 139, 255, 0.25);
}

/* Navigation */
.site-header .navbar .nav-btn:hover,
.site-header .navbar .nav-btn:focus-visible {
  color: #79ADFF;
}

/* Buttons */
.btn {
  background-image: linear-gradient(
    135deg,
    #29216B,
    #6554D9,
    #458BFF
  );
  background-size: 200% 100%;
  color: #fff;
}

.btn:hover {
  background-position: 100% 0;
}

/* Mobile Menu */
.site-mobile-menu {
  background: #0B1230;
  border-top: 1px solid rgba(69, 139, 255, 0.2);
}

.site-mobile-navbar a:hover,
.site-mobile-navbar a:focus-visible {
  background: rgba(69, 139, 255, 0.15);
  border-color: rgba(69, 139, 255, 0.35);
}

.site-menu-toggle:hover,
.site-menu-toggle:focus-visible {
  background: #6554D9;
}

/* Hero Banner */
.home {
  background: #080D24;
}

.home .content {
  background: linear-gradient(
    90deg,
    rgba(8, 13, 36, 0.94) 0%,
    rgba(17, 27, 66, 0.80) 42%,
    rgba(41, 33, 107, 0.30) 100%
  );
}

.home .content h1 span {
  color: #79ADFF;
}

/* Footer */
.footer .content {
  background: linear-gradient(
    90deg,
    #29216B,
    #6554D9
  );
}

/* Accent Elements */
::selection {
  color: #fff;
  background: #6554D9;
}

::-webkit-scrollbar-track {
  background: #080D24;
}

::-webkit-scrollbar-thumb {
  background: #6554D9;
}

.scroll-top {
  background: #458BFF;
}

.scroll-top:hover {
  background: #6554D9;
}

/* ==================== INSIDE THE CASINO ==================== */

.casino-section {
  --casino-bg: #090e25;
  --casino-panel: #111936;
  --casino-panel-light: #192249;
  --casino-blue: #80aaff;
  --casino-violet: #8d80e8;
  --casino-line: rgba(160, 179, 255, .13);
  --casino-muted: rgba(232, 238, 255, .62);

  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(72px, 8vw, 120px) 5%;
  color: #fff;
  background:
    radial-gradient(ellipse at 95% 5%, rgba(70, 72, 169, .19), transparent 35%),
    radial-gradient(ellipse at 0% 65%, rgba(28, 74, 157, .13), transparent 34%),
    linear-gradient(155deg, #090d22, #101631 52%, #090e23);
}

.casino-section *,
.casino-section *::before,
.casino-section *::after {
  box-sizing: border-box;
}

.casino-section [hidden] {
  display: none !important;
}

.casino-section a {
  text-decoration: none;
}

.casino-shell {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
}

.casino-kicker,
.casino-eyebrow,
.casino-coordinate {
  color: var(--casino-blue);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 2px;
}

.casino-section h2,
.casino-section h3,
.casino-section h4,
.casino-section h5 {
  text-shadow: none;
  color: #fff;
}

.casino-section em {
  font-style: normal;
  color: #91a6ff;
}

/* ==================== INTRO ==================== */

.casino-intro {
  display: grid;
  grid-template-columns: 1fr 1.04fr;
  gap: clamp(40px, 6vw, 92px);
  align-items: center;
}

.casino-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 26px;
}

.casino-eyebrow-line {
  display: inline-block;
  width: 30px;
  height: 1px;
  background: var(--casino-blue);
}

.casino-intro-copy h2 {
  max-width: 650px;
  margin: 0 0 30px;
  font-size: clamp(44px, 5.4vw, 78px);
  font-weight: 550;
  line-height: 1.05;
  letter-spacing: -2.5px;
}

.casino-intro-copy > p {
  max-width: 620px;
  margin: 0 0 18px;
  color: var(--casino-muted);
  font-size: 16px;
  line-height: 1.85;
}

.casino-intro-copy .casino-lead {
  color: rgba(255,255,255,.91);
  font-size: 19px;
  line-height: 1.75;
}

.casino-intro-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 42px;
  padding-top: 23px;
  border-top: 1px solid var(--casino-line);
}

.casino-coordinate {
  font-size: 10px;
  color: rgba(255,255,255,.42);
}

.casino-scroll-link {
  display: inline-flex;
  align-items: center;
  gap: 13px;
  color: #b9cdff;
  font-size: 13px;
  font-weight: 500;
}

.casino-scroll-link i {
  transition: transform .2s ease;
}

.casino-scroll-link:hover {
  color: #fff;
}

.casino-scroll-link:hover i {
  transform: translateY(4px);
}

.casino-intro-visual {
  position: relative;
  min-height: 580px;
  overflow: hidden;
  border-radius: 6px;
  border: 1px solid rgba(175,191,255,.15);
  background: #121936;
}

.casino-intro-visual img,
.casino-panel-image img,
.casino-atmosphere-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.casino-intro-visual > img {
  position: absolute;
  inset: 0;
}

.casino-visual-shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(10,15,40,.4) 0%,
    transparent 35%,
    rgba(5,9,26,.85) 100%
  );
}

.casino-visual-corner {
  position: absolute;
  top: 28px;
  left: 30px;
  display: flex;
  align-items: center;
  gap: 10px;
  color: #fff;
  font-size: 11px;
  letter-spacing: 1.6px;
}

.casino-visual-dot,
.casino-map-pulse {
  width: 7px;
  height: 7px;
  flex-shrink: 0;
  border-radius: 50%;
  background: #87aaff;
  box-shadow: 0 0 12px rgba(117,160,255,.65);
}

.casino-visual-bottom {
  position: absolute;
  bottom: 38px;
  left: 35px;
  right: 35px;
}

.casino-visual-bottom span {
  display: block;
  margin-bottom: 10px;
  color: #a8bcff;
  font-size: 11px;
  letter-spacing: 2px;
}

.casino-visual-bottom strong {
  display: block;
  max-width: 420px;
  color: #fff;
  font-size: clamp(25px, 2.4vw, 38px);
  font-weight: 500;
  line-height: 1.2;
}

/* ==================== SIGNATURE STATISTICS ==================== */

.casino-signature {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 75px;
  border-top: 1px solid var(--casino-line);
  border-bottom: 1px solid var(--casino-line);
}

.casino-signature-item {
  padding: 32px 25px 34px;
  border-right: 1px solid var(--casino-line);
}

.casino-signature-item:first-child {
  padding-left: 0;
}

.casino-signature-item:last-child {
  border-right: 0;
}

.casino-signature-label {
  display: block;
  margin-bottom: 20px;
  color: var(--casino-blue);
  font-size: 11px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}

.casino-signature-value {
  display: flex;
  align-items: flex-start;
  gap: 3px;
  margin-bottom: 10px;
}

.casino-signature-value strong {
  color: #fff;
  font-size: clamp(38px, 4vw, 58px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -2px;
}

.casino-signature-value sup {
  color: var(--casino-blue);
  font-size: 25px;
  line-height: 1;
}

.casino-signature-item p {
  max-width: 240px;
  color: var(--casino-muted);
  font-size: 13px;
  line-height: 1.6;
}

/* ==================== SHARED HEADINGS ==================== */

.casino-formats,
.casino-organization,
.casino-atmosphere,
.casino-environments {
  margin-top: clamp(80px, 9vw, 130px);
}

.casino-section-title {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, .65fr);
  gap: 50px;
  align-items: end;
  margin-bottom: 40px;
}

.casino-section-title h3,
.casino-environments-heading h3 {
  max-width: 780px;
  margin-top: 16px;
  font-size: clamp(32px, 3.4vw, 48px);
  font-weight: 500;
  line-height: 1.18;
  letter-spacing: -1.1px;
}

.casino-section-title > p,
.casino-environments-heading > p {
  max-width: 500px;
  color: var(--casino-muted);
  font-size: 15px;
  line-height: 1.8;
}

/* ==================== INTERACTIVE TABS ==================== */

.casino-format-layout {
  display: grid;
  grid-template-columns: 360px minmax(0, 1fr);
  gap: 22px;
}

.casino-format-tabs {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.casino-format-tab {
  display: grid;
  grid-template-columns: 25px minmax(0,1fr) 18px;
  gap: 14px;
  align-items: center;
  width: 100%;
  min-height: 112px;
  padding: 20px;
  text-align: left;
  cursor: pointer;
  border: 1px solid var(--casino-line);
  border-radius: 5px;
  background: rgba(255,255,255,.025);
  transition: background .25s ease, border-color .25s ease;
}

.casino-format-tab:hover {
  background: rgba(90,115,210,.1);
}

.casino-format-tab.is-active {
  border-color: rgba(133,162,255,.55);
  background: linear-gradient(
    120deg,
    rgba(65,80,165,.3),
    rgba(27,40,85,.42)
  );
}

.casino-tab-index {
  align-self: start;
  padding-top: 4px;
  color: #789bff;
  font-size: 12px;
}

.casino-tab-copy {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.casino-tab-copy strong {
  color: #fff;
  font-size: 17px;
  font-weight: 500;
}

.casino-tab-copy small {
  color: rgba(255,255,255,.47);
  font-size: 12px;
}

.casino-format-tab > i {
  color: rgba(160,186,255,.5);
  font-size: 13px;
}

.casino-format-tab.is-active > i {
  color: #a9c3ff;
}

.casino-tabs-footnote {
  display: flex;
  gap: 12px;
  margin-top: auto;
  padding: 20px 10px 5px;
  color: rgba(255,255,255,.4);
  font-size: 12px;
  line-height: 1.65;
}

.casino-tabs-footnote i {
  padding-top: 3px;
  color: var(--casino-blue);
}

.casino-format-panels {
  position: relative;
  min-width: 0;
}

.casino-format-panel {
  display: grid;
  grid-template-columns: 46% 54%;
  min-height: 385px;
  height: 100%;
  overflow: hidden;
  border: 1px solid var(--casino-line);
  border-radius: 5px;
  background: linear-gradient(145deg,#192249,#10172e);
}

.casino-panel-image {
  position: relative;
  overflow: hidden;
  min-height: 360px;
}

.casino-panel-image img {
  position: absolute;
  inset: 0;
}

.casino-panel-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    90deg,
    transparent 55%,
    rgba(15,22,47,.45)
  );
}

.casino-panel-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: clamp(26px, 3vw, 45px);
}

.casino-panel-content > span {
  color: #94b2ff;
  font-size: 11px;
  letter-spacing: 1.5px;
}

.casino-panel-content h4 {
  margin: 20px 0;
  font-size: clamp(25px, 2.3vw, 35px);
  font-weight: 500;
  line-height: 1.2;
}

.casino-panel-content p {
  color: rgba(255,255,255,.69);
  font-size: 14px;
  line-height: 1.8;
}

.casino-panel-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 23px 0 30px;
}

.casino-panel-tags span {
  padding: 8px 10px;
  border: 1px solid rgba(169,187,255,.2);
  border-radius: 3px;
  color: rgba(255,255,255,.66);
  font-size: 11px;
}

.casino-panel-link {
  display: inline-flex;
  align-items: center;
  gap: 18px;
  margin-top: auto;
  padding-bottom: 8px;
  color: #b7cbff;
  border-bottom: 1px solid rgba(177,199,255,.4);
  font-size: 13px;
  font-weight: 600;
}

.casino-panel-link:hover {
  color: #fff;
  border-color: #fff;
}

/* ==================== EXPERIENCE SCHEMATIC ==================== */

.casino-organization-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, .75fr);
  gap: clamp(35px,5vw,75px);
  align-items: center;
}

.casino-map-panel {
  min-width: 0;
  padding: clamp(22px,3vw,42px);
  background:
    radial-gradient(circle at 20% 20%,rgba(68,96,201,.12),transparent 55%),
    #101833;
  border: 1px solid var(--casino-line);
  border-radius: 5px;
}

.casino-map-heading {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 25px;
}

.casino-map-heading span {
  color: #9cb9ff;
  font-size: 11px;
  letter-spacing: 1.5px;
}

.casino-map-heading small {
  color: rgba(255,255,255,.36);
  font-size: 11px;
}

.casino-map-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  grid-template-rows: minmax(160px,auto) minmax(160px,auto) auto;
  gap: 10px;
}

.casino-map-cell {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 7px;
  min-width: 0;
  padding: 22px;
  border: 1px solid rgba(154,174,255,.18);
  border-radius: 4px;
  background: linear-gradient(135deg,#1c2855,#141d41);
  transition: transform .2s ease,border-color .2s ease;
}

a.casino-map-cell:hover {
  transform: translateY(-3px);
  border-color: #8faaff;
}

.casino-map-large {
  grid-row: span 2;
  background: linear-gradient(145deg,#2b347d,#18244a);
}

.casino-map-wide {
  grid-column: 1 / -1;
  min-height: 125px;
  background: linear-gradient(110deg,#18265a,#142042);
}

.casino-map-cell-number {
  position: absolute;
  top: 20px;
  right: 20px;
  color: rgba(200,214,255,.3);
  font-size: 12px;
}

.casino-map-cell > i {
  margin-bottom: 13px;
  color: #9bb8ff;
  font-size: 25px;
}

.casino-map-cell strong {
  color: #fff;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.35;
}

.casino-map-cell small {
  color: rgba(255,255,255,.5);
  font-size: 12px;
  line-height: 1.5;
}

.casino-map-footer {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 22px;
  color: rgba(255,255,255,.4);
  font-size: 11px;
  line-height: 1.5;
}

.casino-organization-aside h4 {
  margin: 16px 0 30px;
  font-size: clamp(26px,2.8vw,39px);
  font-weight: 500;
  line-height: 1.2;
}

.casino-org-point {
  display: grid;
  grid-template-columns: 36px 1fr;
  gap: 17px;
  padding: 20px 0;
  border-top: 1px solid var(--casino-line);
}

.casino-org-point > span {
  color: #849fff;
  font-size: 13px;
}

.casino-org-point h5 {
  margin-bottom: 8px;
  font-size: 17px;
  font-weight: 500;
}

.casino-org-point p {
  color: var(--casino-muted);
  font-size: 13px;
  line-height: 1.75;
}

/* ==================== ATMOSPHERE ==================== */

.casino-atmosphere {
  display: grid;
  grid-template-columns: .95fr 1.05fr;
  align-items: stretch;
  min-height: 550px;
  border: 1px solid var(--casino-line);
  background: #141d3c;
}

.casino-atmosphere-image {
  position: relative;
  min-height: 500px;
  overflow: hidden;
}

.casino-atmosphere-image img {
  position: absolute;
  inset: 0;
}

.casino-atmosphere-content {
  padding: clamp(35px,5vw,75px);
}

.casino-atmosphere-content h3 {
  max-width: 620px;
  margin: 18px 0 25px;
  font-size: clamp(31px,3.3vw,47px);
  font-weight: 500;
  line-height: 1.16;
}

.casino-atmosphere-content > p {
  margin-bottom: 16px;
  color: var(--casino-muted);
  font-size: 15px;
  line-height: 1.85;
}

.casino-atmosphere-divider {
  height: 1px;
  margin: 28px 0;
  background: var(--casino-line);
}

.casino-atmosphere-feature {
  display: grid;
  grid-template-columns: 25px 1fr;
  gap: 18px;
  margin-top: 19px;
}

.casino-atmosphere-feature > i {
  padding-top: 5px;
  color: #96b7ff;
  font-size: 19px;
}

.casino-atmosphere-feature strong {
  display: block;
  margin-bottom: 5px;
  color: #fff;
  font-size: 15px;
  font-weight: 500;
}

.casino-atmosphere-feature p {
  color: var(--casino-muted);
  font-size: 13px;
  line-height: 1.65;
}

/* ==================== GAMING ENVIRONMENTS ==================== */

.casino-environments-heading {
  max-width: 780px;
  margin-bottom: 40px;
}

.casino-environments-heading > p {
  margin-top: 20px;
  max-width: 720px;
}

.casino-environments-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 20px;
}

.casino-environment {
  display: grid;
  grid-template-columns: 55px 1fr;
  gap: 24px;
  align-items: start;
  padding: clamp(24px,3vw,43px);
  border: 1px solid var(--casino-line);
  border-radius: 5px;
  background: linear-gradient(130deg,rgba(40,54,113,.45),rgba(18,27,58,.65));
}

.casino-environment-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 55px;
  height: 55px;
  color: #aec6ff;
  border: 1px solid rgba(165,188,255,.25);
  border-radius: 50%;
  font-size: 21px;
}

.casino-environment span {
  color: #8facff;
  font-size: 11px;
  letter-spacing: 1.5px;
}

.casino-environment h4 {
  margin: 13px 0;
  font-size: 23px;
  font-weight: 500;
}

.casino-environment p {
  max-width: 490px;
  color: var(--casino-muted);
  font-size: 14px;
  line-height: 1.8;
}

.casino-environments-note {
  display: flex;
  gap: 13px;
  align-items: flex-start;
  margin-top: 20px;
  color: rgba(255,255,255,.44);
  font-size: 12px;
  line-height: 1.7;
}

.casino-environments-note i {
  margin-top: 2px;
  color: #8daeff;
}

/* ==================== FIRST VISIT ==================== */

.casino-first-visit {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  margin-top: 110px;
  padding: clamp(32px,4vw,60px);
  overflow: hidden;
  background: linear-gradient(110deg,#202e66,#151e45);
  border: 1px solid rgba(151,175,255,.25);
  border-radius: 5px;
}

.casino-first-visit-decoration {
  position: absolute;
  right: 22%;
  bottom: -65px;
  color: rgba(170,194,255,.065);
  font-size: 260px;
  line-height: 1;
  font-weight: 700;
  pointer-events: none;
}

.casino-first-visit-copy {
  position: relative;
  z-index: 1;
  max-width: 760px;
}

.casino-first-visit-copy > span {
  color: #adc4ff;
  font-size: 11px;
  letter-spacing: 1.7px;
}

.casino-first-visit-copy h3 {
  margin: 12px 0 14px;
  font-size: clamp(25px,2.5vw,37px);
  font-weight: 500;
}

.casino-first-visit-copy p {
  max-width: 760px;
  color: rgba(255,255,255,.66);
  font-size: 14px;
  line-height: 1.8;
}

.casino-first-visit-link {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  flex-shrink: 0;
  min-height: 50px;
  padding: 14px 20px;
  color: #fff;
  border: 1px solid rgba(190,208,255,.55);
  border-radius: 3px;
  font-size: 13px;
  font-weight: 500;
  transition: background .2s ease;
}

.casino-first-visit-link:hover {
  color: #fff;
  background: rgba(138,166,255,.15);
}

/* ==================== RESPONSIVE ==================== */

@media (max-width: 1200px) {
  .casino-format-layout {
    grid-template-columns: 300px minmax(0,1fr);
  }

  .casino-format-panel {
    grid-template-columns: 40% 60%;
  }

  .casino-intro-visual {
    min-height: 500px;
  }
}

@media (max-width: 1000px) {
  .casino-intro,
  .casino-organization-layout {
    grid-template-columns: 1fr;
  }

  .casino-intro-visual {
    min-height: 480px;
  }

  .casino-section-title {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .casino-section-title > p {
    max-width: 720px;
  }

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

  .casino-format-tabs {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .casino-format-tab {
    min-height: 100px;
    grid-template-columns: 20px 1fr;
  }

  .casino-format-tab > i {
    display: none;
  }

  .casino-tabs-footnote {
    grid-column: 1 / -1;
  }

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

  .casino-atmosphere-image {
    min-height: 420px;
  }
}

@media (max-width: 700px) {
  .casino-section {
    padding: 72px 5%;
  }

  .casino-intro-copy h2 {
    font-size: clamp(40px,10vw,60px);
    letter-spacing: -1.5px;
  }

  .casino-intro-copy .casino-lead {
    font-size: 17px;
  }

  .casino-intro-visual {
    min-height: 390px;
  }

  .casino-signature {
    grid-template-columns: repeat(2,minmax(0,1fr));
    margin-top: 50px;
  }

  .casino-signature-item {
    padding: 25px 15px;
    border-bottom: 1px solid var(--casino-line);
  }

  .casino-signature-item:first-child {
    padding-left: 15px;
  }

  .casino-signature-item:nth-child(2) {
    border-right: none;
  }

  .casino-signature-item:nth-child(n+3) {
    border-bottom: none;
  }

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

  .casino-format-tab {
    min-height: 78px;
    padding: 15px;
  }

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

  .casino-panel-image {
    min-height: 250px;
  }

  .casino-panel-content {
    padding: 28px 24px;
  }

  .casino-map-grid {
    grid-template-rows: minmax(130px,auto) minmax(130px,auto) auto;
  }

  .casino-map-cell {
    padding: 16px;
  }

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

  .casino-first-visit {
    flex-direction: column;
    align-items: flex-start;
    margin-top: 75px;
  }
}

@media (max-width: 430px) {
  .casino-intro-visual {
    min-height: 320px;
  }

  .casino-visual-bottom {
    left: 22px;
    right: 22px;
    bottom: 24px;
  }

  .casino-visual-bottom strong {
    font-size: 25px;
  }

  .casino-signature-value strong {
    font-size: 36px;
  }

  .casino-map-panel {
    padding: 16px;
  }

  .casino-map-grid {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
  }

  .casino-map-large,
  .casino-map-wide {
    grid-row: auto;
    grid-column: auto;
    min-height: 130px;
  }

  .casino-map-cell {
    min-height: 125px;
  }

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

  .casino-atmosphere-image {
    min-height: 300px;
  }

  .casino-atmosphere-content {
    padding: 30px 23px;
  }

  .casino-first-visit {
    padding: 28px 23px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .casino-section *,
  .casino-section *::before,
  .casino-section *::after {
    scroll-behavior: auto;
    animation: none !important;
    transition-duration: .01ms !important;
  }
}

/* ==================== INSIDE THE CASINO END ==================== */

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

.story-section {
  --s-bg: #0a1028;
  --s-panel: #131d3d;
  --s-panel-2: #1a2752;
  --s-blue: #96b4ff;
  --s-violet: #a29af2;
  --s-white: #f8faff;
  --s-muted: #a5b0d0;
  --s-line: rgba(161,183,255,.15);

  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(80px,8vw,125px) 5%;
  background:
    radial-gradient(ellipse at 95% 5%,rgba(77,85,176,.13),transparent 35%),
    radial-gradient(ellipse at 0% 65%,rgba(40,76,151,.12),transparent 35%),
    linear-gradient(145deg,#0a1028,#111833 55%,#0b112a);
  color: var(--s-white);
}

.story-section *,
.story-section *::before,
.story-section *::after {
  box-sizing: border-box;
}

.story-container {
  width: 100%;
  max-width: 1420px;
  margin: 0 auto;
}

.story-section h2,
.story-section h3,
.story-section h4,
.story-section h5 {
  color: var(--s-white);
  text-shadow: none;
}

.story-section p {
  color: var(--s-muted);
  font-size: 15px;
  line-height: 1.85;
}

.story-section a { text-decoration: none; }

.story-section h2 span,
.story-section h3 span {
  color: #a8b8ff;
}

.story-overline,
.story-eyebrow {
  color: var(--s-blue);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1.9px;
}

/* ==================== INTRO ==================== */

.story-intro {
  display: grid;
  grid-template-columns: minmax(0,1.2fr) minmax(0,.8fr);
  gap: clamp(35px,6vw,100px);
  align-items: end;
}

.story-eyebrow {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 27px;
}

.story-eyebrow-mark {
  display: block;
  width: 28px;
  height: 1px;
  background: var(--s-blue);
}

.story-eyebrow-no {
  margin-left: auto;
  color: rgba(255,255,255,.3);
  font-size: 10px;
}

.story-intro h2 {
  margin-bottom: 30px;
  font-size: clamp(42px,5.1vw,72px);
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -2px;
}

.story-section .story-intro-lead {
  max-width: 760px;
  color: #e6ecff;
  font-size: clamp(17px,1.5vw,21px);
  line-height: 1.75;
}

.story-intro-aside {
  padding: 0 0 0 32px;
  border-left: 1px solid var(--s-line);
}

.story-intro-aside .story-overline {
  display: block;
  margin-bottom: 18px;
}

.story-intro-aside p {
  margin-bottom: 17px;
}

.story-intro-aside p:last-child { margin-bottom: 0; }

/* ==================== FACT CARDS ==================== */

.story-facts {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 16px;
  margin-top: 65px;
}

.story-fact {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 300px;
  padding: 29px;
  overflow: hidden;
  background: linear-gradient(155deg,#172144,#111a36);
  border: 1px solid var(--s-line);
  border-radius: 12px;
  transition: transform .25s ease,border-color .25s ease;
}

.story-fact::before {
  content: "";
  position: absolute;
  width: 160px;
  height: 160px;
  right: -95px;
  bottom: -100px;
  border: 1px solid rgba(152,179,255,.12);
  border-radius: 50%;
  pointer-events: none;
}

.story-fact::after {
  content: "";
  position: absolute;
  width: 110px;
  height: 110px;
  right: -65px;
  bottom: -75px;
  border: 1px solid rgba(152,179,255,.13);
  border-radius: 50%;
  pointer-events: none;
}

.story-fact:hover {
  transform: translateY(-5px);
  border-color: rgba(150,180,255,.48);
}

.story-fact-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}

.story-fact-top > span {
  color: #96b4ff;
  font-size: 10px;
  letter-spacing: 1.5px;
}

.story-fact-top i {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  color: #a5bcff;
  background: rgba(118,149,249,.09);
  border: 1px solid rgba(146,173,255,.19);
  border-radius: 10px;
  font-size: 18px;
}

.story-fact-body {
  flex: 1;
  padding-top: 31px;
}

.story-fact-label {
  display: block;
  margin-bottom: 10px;
  color: #a8b4d7;
  font-size: 10px;
  letter-spacing: 1.1px;
}

.story-fact-body h3 {
  margin: 0;
  font-size: clamp(39px,3.7vw,55px);
  line-height: 1.08;
  font-weight: 500;
  letter-spacing: -1.5px;
  white-space: nowrap;
}

.story-fact-body h3 span {
  color: var(--s-blue);
}

.story-fact-body h3 small {
  color: #a8b9ff;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 1px;
}

.story-fact-line {
  width: 34px;
  height: 2px;
  margin: 20px 0 16px;
  background: linear-gradient(90deg,#8db6ff,#a29af2);
}

.story-fact-body p {
  max-width: 280px;
  font-size: 13px;
  line-height: 1.65;
}

.story-fact-bottom {
  position: relative;
  z-index: 1;
  display: block;
  margin-top: 25px;
  padding-top: 16px;
  color: #7687b7;
  border-top: 1px solid var(--s-line);
  font-size: 10px;
  letter-spacing: 1.1px;
}

/* ==================== HISTORY ==================== */

.story-history,
.story-legal,
.story-offering,
.story-community {
  margin-top: clamp(85px,9vw,130px);
}

.story-history-heading {
  max-width: 900px;
  margin-bottom: 42px;
}

.story-history-heading h3,
.story-block-heading h3,
.story-community-heading h3 {
  max-width: 900px;
  margin: 16px 0 0;
  font-size: clamp(32px,3.4vw,48px);
  font-weight: 500;
  line-height: 1.22;
  letter-spacing: -1.2px;
}

.story-history-layout {
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(0,.85fr);
  gap: clamp(35px,6vw,90px);
  align-items: start;
}

.story-history-copy {
  border-top: 1px solid var(--s-line);
}

.story-text-block {
  display: grid;
  grid-template-columns: 48px minmax(0,1fr);
  gap: 22px;
  padding: 30px 0;
  border-bottom: 1px solid var(--s-line);
}

.story-text-index {
  color: var(--s-blue);
  font-size: 16px;
  font-weight: 500;
}

.story-text-block h4 {
  margin-bottom: 16px;
  font-size: 23px;
  font-weight: 500;
}

.story-text-block p {
  margin-bottom: 14px;
}

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

/* Decorative heritage panel */

.story-heritage {
  position: relative;
  padding: clamp(28px,3vw,44px);
  overflow: hidden;
  border: 1px solid rgba(166,182,255,.22);
  border-radius: 12px;
  background:
    radial-gradient(circle at 100% 0%,rgba(109,102,206,.17),transparent 55%),
    linear-gradient(150deg,#222c61,#141c3d);
}

.story-heritage::before {
  content: "";
  position: absolute;
  top: -130px;
  right: -130px;
  width: 360px;
  height: 360px;
  border: 1px solid rgba(176,191,255,.09);
  border-radius: 50%;
  box-shadow: 0 0 0 65px rgba(170,191,255,.018);
  pointer-events: none;
}

.story-heritage-top {
  position: relative;
  display: flex;
  align-items: center;
  gap: 14px;
}

.story-heritage-symbol {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 43px;
  height: 43px;
  background: rgba(156,177,255,.1);
  border-radius: 10px;
  color: #afc2ff;
  font-size: 19px;
}

.story-heritage-top > span {
  color: #aabefa;
  font-size: 10px;
  letter-spacing: 1.4px;
}

.story-heritage-year {
  position: relative;
  margin-top: 40px;
  color: #fff;
  font-size: clamp(76px,9vw,125px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: -6px;
}

.story-heritage-subtitle {
  margin: 15px 0 42px;
  color: #adbdec;
  font-size: 14px;
}

.story-heritage-track {
  position: relative;
  padding-left: 27px;
  border-left: 1px solid rgba(150,180,255,.3);
}

.story-heritage-event {
  position: relative;
  padding-bottom: 28px;
}

.story-heritage-event:last-child {
  padding-bottom: 0;
}

.story-heritage-event::before {
  content: "";
  position: absolute;
  top: 3px;
  left: -32px;
  width: 9px;
  height: 9px;
  background: #a1bcff;
  border: 2px solid #263467;
  border-radius: 50%;
  box-shadow: 0 0 0 3px rgba(149,176,255,.12);
}

.story-heritage-event > span {
  color: #a4baff;
  font-size: 10px;
  letter-spacing: 1.4px;
}

.story-heritage-event p {
  margin-top: 8px;
  font-size: 13px;
  line-height: 1.7;
}

.story-heritage-footer {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 35px;
  padding-top: 20px;
  border-top: 1px solid var(--s-line);
  color: #a7b9ef;
  font-size: 10px;
  letter-spacing: 1.2px;
}

.story-heritage-footer i {
  margin-right: 6px;
}

/* ==================== LEGAL PROFILE ==================== */

.story-block-heading {
  display: grid;
  grid-template-columns: minmax(0,1.2fr) minmax(0,.8fr);
  gap: 50px;
  align-items: end;
  margin-bottom: 40px;
}

.story-block-heading > p {
  max-width: 540px;
}

.story-legal-grid {
  display: grid;
  grid-template-columns: minmax(0,1.1fr) minmax(0,.85fr);
  gap: 22px;
  align-items: stretch;
}

.story-legal-primary {
  display: flex;
  flex-direction: column;
  padding: 5px 30px;
  border: 1px solid var(--s-line);
  border-radius: 10px;
  background: rgba(255,255,255,.024);
}

.story-legal-item {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 22px;
  flex: 1;
  padding: 29px 0;
  border-bottom: 1px solid var(--s-line);
}

.story-legal-item:last-child {
  border-bottom: 0;
}

.story-legal-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 10px;
  color: #abc3ff;
  background: rgba(103,137,234,.1);
  font-size: 19px;
}

.story-legal-item span {
  color: #91b1ff;
  font-size: 10px;
  letter-spacing: 1.3px;
}

.story-legal-item h4 {
  margin: 10px 0;
  font-size: 21px;
  font-weight: 500;
  line-height: 1.3;
}

.story-legal-item p {
  font-size: 14px;
  line-height: 1.78;
}

/* Official information panel */

.story-certificate {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: clamp(26px,3vw,44px);
  border: 1px solid rgba(168,189,255,.28);
  border-radius: 10px;
  background:
    radial-gradient(circle at 100% 0%,rgba(114,109,205,.17),transparent 45%),
    #1b2853;
}

.story-certificate-header {
  display: flex;
  align-items: center;
  gap: 14px;
  padding-bottom: 26px;
  border-bottom: 1px solid var(--s-line);
}

.story-certificate-emblem {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  color: #b7caff;
  background: rgba(151,177,255,.1);
  border: 1px solid rgba(151,177,255,.23);
  border-radius: 50%;
  font-size: 20px;
}

.story-certificate-header > span {
  color: #afc2fb;
  font-size: 11px;
  letter-spacing: 1.5px;
}

.story-certificate-title {
  padding: 30px 0 20px;
}

.story-certificate-title small {
  color: #8fa9ed;
  font-size: 10px;
  letter-spacing: 1.3px;
}

.story-certificate-title h4 {
  margin-top: 14px;
  font-size: clamp(23px,2.5vw,33px);
  font-weight: 500;
  line-height: 1.25;
}

.story-certificate-details {
  display: grid;
  gap: 0;
}

.story-certificate-details > div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 20px;
  padding: 17px 0;
  border-bottom: 1px solid var(--s-line);
}

.story-certificate-details span {
  max-width: 160px;
  color: #a6b5dc;
  font-size: 12px;
  line-height: 1.5;
}

.story-certificate-details strong {
  max-width: 230px;
  color: #fff;
  text-align: right;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.55;
}

.story-certificate-disclosure {
  margin-top: auto;
  padding-top: 29px;
}

.story-certificate-disclosure summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 15px 0;
  color: #c2d2ff;
  border-top: 1px solid var(--s-line);
  font-size: 13px;
  cursor: pointer;
  list-style: none;
}

.story-certificate-disclosure summary::-webkit-details-marker {
  display: none;
}

.story-certificate-disclosure summary i {
  transition: transform .25s ease;
}

.story-certificate-disclosure[open] summary i {
  transform: rotate(45deg);
}

.story-certificate-disclosure p {
  margin-top: 10px;
  font-size: 12px;
  line-height: 1.8;
}

/* ==================== VENUE OFFERING ==================== */

.story-offering-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 16px;
}

.story-offering-feature,
.story-offering-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  border: 1px solid var(--s-line);
  border-radius: 10px;
  overflow: hidden;
}

.story-offering-feature {
  grid-column: span 2;
  grid-row: span 2;
  min-height: 540px;
  padding: clamp(30px,4vw,53px);
  background:
    radial-gradient(circle at 100% 95%,rgba(118,108,228,.18),transparent 50%),
    linear-gradient(145deg,#29366f,#192448);
}

.story-offering-feature::after {
  content: "";
  position: absolute;
  bottom: -140px;
  right: -120px;
  width: 400px;
  height: 400px;
  border: 1px solid rgba(174,196,255,.12);
  border-radius: 50%;
  box-shadow:
    0 0 0 40px rgba(167,191,255,.025),
    0 0 0 90px rgba(167,191,255,.015);
  pointer-events: none;
}

.story-offering-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.story-offering-top span {
  color: #b0c7ff;
  font-size: 11px;
  letter-spacing: 1.5px;
}

.story-offering-top i {
  color: #bdd0ff;
  font-size: 28px;
}

.story-offering-feature h4 {
  position: relative;
  margin: auto 0 20px;
  font-size: clamp(32px,3.4vw,47px);
  font-weight: 500;
}

.story-offering-feature p {
  position: relative;
  z-index: 1;
  max-width: 440px;
  color: #bbc9ed;
  font-size: 15px;
  line-height: 1.85;
}

.story-offering-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 38px;
  padding-top: 20px;
  border-top: 1px solid var(--s-line);
  color: #abc3ff;
  font-size: 11px;
  letter-spacing: 1.2px;
}

.story-offering-card {
  min-height: 258px;
  padding: 27px;
  background: linear-gradient(155deg,#182449,#121b38);
  transition: background .25s ease,transform .25s ease;
}

.story-offering-card:hover {
  transform: translateY(-4px);
  background: #202d5a;
}

.story-offering-counter {
  position: absolute;
  top: 27px;
  right: 26px;
  color: #7c8fbf;
  font-size: 11px;
}

.story-offering-small-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 45px;
  height: 45px;
  margin-bottom: 27px;
  color: #acc4ff;
  background: rgba(126,154,247,.09);
  border: 1px solid rgba(153,178,255,.13);
  border-radius: 9px;
  font-size: 19px;
}

.story-offering-card h4 {
  margin-bottom: 12px;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.3;
}

.story-offering-card p {
  font-size: 13px;
  line-height: 1.75;
}

/* ==================== COMMUNITY PROGRAM ==================== */

.story-community-heading {
  max-width: 950px;
  margin-bottom: 42px;
}

.story-community-heading > p {
  max-width: 860px;
  margin-top: 25px;
  font-size: 16px;
}

.story-community-layout {
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(0,.85fr);
  gap: 20px;
  align-items: stretch;
}

.story-community-process {
  padding: clamp(28px,3.5vw,48px);
  background: #141e3e;
  border: 1px solid var(--s-line);
  border-radius: 10px;
}

.story-process-head {
  display: flex;
  align-items: center;
  gap: 19px;
  padding-bottom: 30px;
  border-bottom: 1px solid var(--s-line);
}

.story-process-head > i {
  color: #aac2ff;
  font-size: 30px;
}

.story-process-head span {
  color: #94b2fa;
  font-size: 10px;
  letter-spacing: 1.5px;
}

.story-process-head h4 {
  margin-top: 7px;
  font-size: 23px;
  font-weight: 500;
}

.story-process-steps {
  padding-top: 12px;
}

.story-process-step {
  display: grid;
  grid-template-columns: 48px minmax(0,1fr);
  gap: 20px;
  padding: 23px 0;
  border-bottom: 1px solid var(--s-line);
}

.story-process-step:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.story-step-number {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 41px;
  height: 41px;
  color: #b4caff;
  background: rgba(123,151,236,.1);
  border-radius: 50%;
  font-size: 14px;
}

.story-process-step h5 {
  margin-bottom: 9px;
  font-size: 18px;
  font-weight: 500;
}

.story-process-step p {
  font-size: 13px;
  line-height: 1.75;
}

/* Community metric */

.story-community-measure {
  display: flex;
  flex-direction: column;
  padding: clamp(29px,3.6vw,52px);
  background:
    radial-gradient(circle at 100% 0%,rgba(126,112,220,.19),transparent 48%),
    linear-gradient(150deg,#253268,#192348);
  border: 1px solid rgba(154,179,255,.24);
  border-radius: 10px;
}

.story-community-measure > span {
  color: #b0c5ff;
  font-size: 11px;
  letter-spacing: 1.5px;
}

.story-measure-number {
  display: flex;
  align-items: baseline;
  gap: 2px;
  flex-wrap: wrap;
  margin: 45px 0 18px;
  color: #fff;
  font-size: clamp(48px,5.2vw,76px);
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -2px;
  font-variant-numeric: tabular-nums;
}

.story-measure-number small {
  font-size: .42em;
  color: #aebfff;
}

.story-measure-number span {
  margin: 0 3px;
  color: #a7baff;
}

.story-community-measure > p {
  max-width: 400px;
  font-size: 15px;
  line-height: 1.85;
}

.story-measure-meter {
  margin-top: 50px;
}

.story-measure-track {
  height: 6px;
  padding: 1px;
  background: rgba(255,255,255,.12);
  border-radius: 20px;
}

.story-measure-track span {
  display: block;
  width: 72%;
  height: 4px;
  border-radius: inherit;
  background: linear-gradient(90deg,#7ca7ff,#aea4fa);
  box-shadow: 0 0 15px rgba(148,169,255,.25);
}

.story-measure-labels {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin-top: 13px;
  color: #9cafdf;
  font-size: 10px;
  letter-spacing: 1px;
}

.story-measure-frequency {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-top: auto;
  padding-top: 38px;
}

.story-measure-frequency > i {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 49px;
  height: 49px;
  color: #a8c0ff;
  border: 1px solid rgba(160,183,255,.25);
  border-radius: 10px;
  font-size: 19px;
}

.story-measure-frequency span {
  display: block;
  margin-bottom: 8px;
  color: #a0b6eb;
  font-size: 10px;
  letter-spacing: 1.1px;
}

.story-measure-frequency strong {
  color: #fff;
  font-size: 19px;
  font-weight: 500;
}

/* ==================== LOCATION ==================== */

.story-location {
  display: grid;
  grid-template-columns: 85px minmax(0,1fr) auto;
  gap: 32px;
  align-items: center;
  margin-top: clamp(80px,8vw,120px);
  padding: clamp(30px,4vw,55px);
  border: 1px solid rgba(167,188,255,.21);
  border-radius: 10px;
  background: linear-gradient(115deg,#202c60,#162044);
}

.story-location-compass {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 80px;
  height: 80px;
}

.story-compass-ring {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 69px;
  height: 69px;
  border: 1px solid rgba(178,199,255,.34);
  border-radius: 50%;
}

.story-compass-ring::before,
.story-compass-ring::after {
  content: "";
  position: absolute;
  background: #9fbcff;
}

.story-compass-ring::before {
  width: 1px;
  height: 88px;
  opacity: .35;
}

.story-compass-ring::after {
  height: 1px;
  width: 88px;
  opacity: .35;
}

.story-compass-ring i {
  position: relative;
  z-index: 1;
  color: #c0d1ff;
  font-size: 24px;
  transform: rotate(-45deg);
}

.story-location-compass > span {
  position: absolute;
  top: -16px;
  color: #a6bfff;
  font-size: 10px;
}

.story-location-copy > span {
  color: #a9bfff;
  font-size: 10px;
  letter-spacing: 1.5px;
}

.story-location-copy h3 {
  margin: 12px 0;
  font-size: clamp(25px,2.7vw,35px);
  font-weight: 500;
}

.story-location-copy p {
  max-width: 780px;
  font-size: 14px;
  line-height: 1.8;
}

.story-location-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 17px;
  min-height: 50px;
  padding: 14px 20px;
  color: #fff;
  border: 1px solid rgba(185,204,255,.44);
  border-radius: 5px;
  font-size: 13px;
  font-weight: 500;
  white-space: nowrap;
  transition: background .2s ease;
}

.story-location-link:hover {
  color: #fff;
  background: rgba(151,180,255,.14);
}

/* ==================== RESPONSIVE ==================== */

@media (max-width: 1200px) {
  .story-facts {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .story-fact {
    min-height: 280px;
  }

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

  .story-offering-feature {
    min-height: 360px;
  }

  .story-location {
    grid-template-columns: 80px minmax(0,1fr);
  }

  .story-location-link {
    grid-column: 2;
    justify-self: start;
  }
}

@media (max-width: 950px) {
  .story-intro,
  .story-history-layout,
  .story-legal-grid,
  .story-community-layout,
  .story-block-heading {
    grid-template-columns: 1fr;
  }

  .story-intro-aside {
    max-width: 850px;
  }

  .story-block-heading {
    gap: 20px;
  }

  .story-block-heading > p {
    max-width: 800px;
  }

  .story-heritage {
    max-width: 100%;
  }

  .story-community-measure {
    min-height: 380px;
  }

  .story-measure-frequency {
    margin-top: 40px;
  }
}

@media (max-width: 650px) {
  .story-section {
    padding: 75px 5%;
  }

  .story-intro h2 {
    font-size: clamp(38px,9vw,53px);
    letter-spacing: -1px;
  }

  .story-intro-aside {
    padding-left: 20px;
  }

  .story-facts {
    grid-template-columns: 1fr;
    gap: 12px;
    margin-top: 45px;
  }

  .story-fact {
    min-height: 240px;
    padding: 25px;
  }

  .story-fact-body {
    padding-top: 24px;
  }

  .story-fact-body h3 {
    font-size: 45px;
  }

  .story-history,
  .story-legal,
  .story-offering,
  .story-community {
    margin-top: 80px;
  }

  .story-history-heading h3,
  .story-block-heading h3,
  .story-community-heading h3 {
    font-size: clamp(29px,7vw,37px);
  }

  .story-text-block {
    grid-template-columns: 30px 1fr;
    gap: 13px;
  }

  .story-text-block h4 {
    font-size: 21px;
  }

  .story-heritage {
    padding: 27px 23px;
  }

  .story-heritage-year {
    font-size: 78px;
    letter-spacing: -3px;
  }

  .story-legal-primary {
    padding: 5px 22px;
  }

  .story-legal-item {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .story-certificate-details > div {
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
  }

  .story-certificate-details strong {
    max-width: 100%;
    text-align: left;
  }

  .story-offering-grid {
    grid-template-columns: 1fr;
  }

  .story-offering-feature {
    grid-column: auto;
    grid-row: auto;
    min-height: 370px;
  }

  .story-offering-card {
    min-height: 205px;
  }

  .story-community-measure {
    min-height: 360px;
  }

  .story-location {
    grid-template-columns: 1fr;
    gap: 25px;
    padding: 30px 24px;
  }

  .story-location-link {
    grid-column: auto;
    white-space: normal;
  }
}

@media (max-width: 380px) {
  .story-section {
    padding-left: 4%;
    padding-right: 4%;
  }

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

  .story-heritage-year {
    font-size: 65px;
  }

  .story-measure-number {
    font-size: 45px;
  }

  .story-community-process,
  .story-community-measure {
    padding: 24px 20px;
  }

  .story-process-head {
    align-items: flex-start;
  }

  .story-process-head h4 {
    font-size: 19px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .story-section *,
  .story-section *::before,
  .story-section *::after {
    transition: none !important;
    animation: none !important;
  }
}

/* ==================== ABOUT END ==================== */


/* ==================== SLOTS & VLT GAMING ==================== */

.slots-guide {
  --sg-bg: #090f26;
  --sg-surface: #141e40;
  --sg-surface-2: #1b2855;
  --sg-blue: #93b5ff;
  --sg-violet: #a69af2;
  --sg-text: #f5f7ff;
  --sg-muted: #a8b6d7;
  --sg-line: rgba(157,181,255,.17);

  padding: clamp(75px,8vw,125px) 5%;
  color: var(--sg-text);
  background:
    radial-gradient(ellipse at 94% 4%,rgba(87,78,177,.17),transparent 36%),
    radial-gradient(ellipse at 4% 65%,rgba(40,83,167,.13),transparent 40%),
    linear-gradient(145deg,#090f26,#101939 52%,#0a112b);
  overflow: hidden;
  isolation: isolate;
}

.slots-guide *,
.slots-guide *::before,
.slots-guide *::after { box-sizing: border-box; }

.slots-guide [hidden] { display: none !important; }
.slots-guide a { text-decoration: none; }

.slots-guide h2,
.slots-guide h3,
.slots-guide h4 {
  color: #fff;
  text-shadow: none;
  font-weight: 500;
}

.slots-guide h2 span,
.slots-guide h3 span { color: #a2b8ff; }

.slots-guide p {
  color: var(--sg-muted);
  font-size: 15px;
  line-height: 1.85;
}

.slots-guide-shell { max-width: 1420px; margin: auto; }

.slots-guide-number,
.slots-guide-kicker {
  color: var(--sg-blue);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1.8px;
}

/* INTRO */

.slots-guide-intro {
  display: grid;
  grid-template-columns: minmax(0,1.1fr) minmax(350px,.8fr);
  gap: clamp(35px,5vw,85px);
  align-items: center;
}

.slots-guide-kicker {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 27px;
}

.slots-guide-intro h2 {
  margin-bottom: 30px;
  font-size: clamp(42px,5.5vw,76px);
  line-height: 1.08;
  letter-spacing: -2px;
}

.slots-guide-intro-copy > p {
  max-width: 750px;
  margin-bottom: 18px;
}

.slots-guide-intro-copy .slots-guide-lead {
  color: #e5edff;
  font-size: clamp(17px,1.5vw,20px);
  line-height: 1.75;
}

.slots-guide-intro-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 30px;
}

.slots-guide-intro-tags span {
  display: inline-flex;
  gap: 9px;
  align-items: center;
  padding: 10px 13px;
  color: #b8c9f5;
  border: 1px solid var(--sg-line);
  border-radius: 5px;
  font-size: 12px;
}

.slots-guide-intro-tags i { color: var(--sg-blue); }

/* Decorative terminal */

.slots-guide-terminal {
  position: relative;
  min-width: 0;
  padding: 20px;
  background: linear-gradient(150deg,#283566,#141d3c);
  border: 1px solid rgba(175,192,255,.27);
  border-radius: 22px;
  box-shadow: 0 28px 65px rgba(0,0,0,.22);
}

.slots-guide-terminal::before {
  content: "";
  position: absolute;
  inset: -17px 20px 17px -17px;
  border: 1px solid rgba(149,164,252,.14);
  border-radius: 25px;
  pointer-events: none;
}

.slots-terminal-top,
.slots-terminal-controls,
.slots-terminal-screen-head,
.slots-terminal-screen-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}

.slots-terminal-top {
  margin: 0 5px 17px;
  color: #a5b9ef;
  font-size: 10px;
  letter-spacing: 1.1px;
}

.slots-terminal-top i {
  margin-right: 6px;
  font-size: 7px;
  color: #80baff;
}

.slots-terminal-screen {
  padding: 20px;
  background:
    radial-gradient(circle at 50% 40%,rgba(85,98,208,.22),transparent 70%),
    #0b1230;
  border: 2px solid rgba(137,165,255,.23);
  border-radius: 12px;
  box-shadow: inset 0 0 35px rgba(3,7,22,.6);
}

.slots-terminal-screen-head,
.slots-terminal-screen-bottom {
  color: #9cb5ea;
  font-size: 10px;
  letter-spacing: 1.1px;
}

.slots-terminal-screen-head i { font-size: 15px; }

.slots-terminal-reels {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 9px;
  margin: 33px 0;
}

.slots-terminal-reel {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: .78;
  color: #a9c6ff;
  font-size: clamp(30px,4vw,55px);
  background: linear-gradient(175deg,#1b2d66,#10193a);
  border: 1px solid rgba(156,188,255,.22);
  border-radius: 9px;
  box-shadow: inset 0 0 25px rgba(122,136,250,.08);
}

.slots-terminal-reel:nth-child(2) { color: #b3a6ff; }

.slots-terminal-indicator {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #80b7ff;
  box-shadow: 0 0 14px #80b7ff;
}

.slots-terminal-controls {
  padding: 19px 5px 3px;
  color: #9aaee1;
  font-size: 10px;
  letter-spacing: 1px;
}

.slots-terminal-controls > div {
  display: flex;
  gap: 7px;
}

.slots-terminal-controls > div span {
  width: 18px;
  height: 7px;
  background: #415389;
  border-radius: 10px;
}

.slots-terminal-controls > i {
  font-size: 23px;
  color: #94b4ff;
}

/* SHARED HEADINGS */

.slots-guide-denominations,
.slots-guide-formats,
.slots-guide-mechanics,
.slots-guide-process {
  margin-top: clamp(85px,9vw,135px);
}

.slots-guide-heading {
  max-width: 900px;
  margin-bottom: 39px;
}

.slots-guide-heading h3 {
  margin: 17px 0 20px;
  font-size: clamp(31px,3.5vw,48px);
  line-height: 1.18;
  letter-spacing: -1px;
}

.slots-guide-heading p { max-width: 830px; }

/* DENOMINATION EXPLORER */

.slots-denomination-layout {
  display: grid;
  grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr);
  gap: 20px;
}

.slots-denomination-selector {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 10px;
}

.slots-denomination-button {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 18px;
  min-width: 0;
  padding: 22px;
  color: #fff;
  text-align: left;
  background: #141f43;
  border: 1px solid var(--sg-line);
  border-radius: 8px;
  cursor: pointer;
  transition: background .2s,border-color .2s,transform .2s;
}

.slots-denomination-button:hover {
  transform: translateY(-3px);
}

.slots-denomination-button.is-active {
  background: linear-gradient(160deg,#303877,#1b2957);
  border-color: #91aeff;
  box-shadow: inset 0 0 0 1px rgba(145,174,255,.12);
}

.slots-denomination-button small {
  color: #9eb5e8;
  font-size: 9px;
  letter-spacing: 1px;
  line-height: 1.6;
}

.slots-denomination-button strong {
  color: #fff;
  font-size: clamp(37px,4vw,57px);
  font-weight: 500;
  letter-spacing: -2px;
}

.slots-denomination-button > span {
  color: #b0bedf;
  font-size: 12px;
  line-height: 1.5;
}

.slots-cost-panel {
  min-width: 0;
  padding: clamp(25px,3vw,43px);
  background: linear-gradient(140deg,#1b2854,#131d3b);
  border: 1px solid rgba(161,184,255,.22);
  border-radius: 8px;
}

.slots-cost-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: var(--sg-blue);
  font-size: 10px;
  letter-spacing: 1.5px;
}

.slots-cost-panel-head i { font-size: 22px; }

.slots-cost-panel h4 {
  margin: 21px 0 12px;
  font-size: 25px;
}

.slots-cost-panel > p { font-size: 13px; }

.slots-cost-control { margin: 29px 0; }

.slots-cost-control label {
  display: block;
  margin-bottom: 14px;
  color: #d9e4ff;
  font-size: 13px;
}

.slots-cost-range-row {
  display: flex;
  align-items: center;
  gap: 20px;
}

.slots-cost-range-row input {
  flex: 1;
  min-width: 0;
  accent-color: #96adff;
  cursor: pointer;
}

.slots-cost-range-row output {
  min-width: 85px;
  color: #fff;
  font-size: 13px;
  text-align: right;
}

.slots-cost-result {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  padding: 22px;
  background: rgba(6,12,34,.42);
  border: 1px solid var(--sg-line);
  border-radius: 6px;
}

.slots-cost-result span {
  display: block;
  margin-bottom: 10px;
  color: #a2b4e0;
  font-size: 10px;
  letter-spacing: 1px;
  line-height: 1.6;
}

.slots-cost-result strong {
  color: #fff;
  font-size: clamp(25px,2.9vw,40px);
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}

.slots-cost-panel .slots-cost-disclaimer {
  margin-top: 19px;
  color: #91a1c9;
  font-size: 12px;
}

/* FORMAT TABS */

.slots-format-switch {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 17px;
}

.slots-format-button {
  display: inline-flex;
  align-items: center;
  gap: 13px;
  padding: 17px 23px;
  color: #bcc9e9;
  background: #141e3e;
  border: 1px solid var(--sg-line);
  border-radius: 6px;
  font-size: 14px;
  cursor: pointer;
}

.slots-format-button.is-active {
  color: #fff;
  background: #303775;
  border-color: #90adff;
}

.slots-format-panel {
  display: grid;
  grid-template-columns: 90px 1fr;
  gap: 28px;
  min-height: 300px;
  padding: clamp(27px,4vw,55px);
  background: linear-gradient(120deg,#1b2854,#111a35);
  border: 1px solid var(--sg-line);
  border-radius: 8px;
}

.slots-format-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 80px;
  height: 80px;
  background: rgba(128,161,255,.09);
  border: 1px solid rgba(163,187,255,.25);
  border-radius: 15px;
  color: #a9c2ff;
  font-size: 34px;
}

.slots-format-panel > div:last-child > span {
  color: var(--sg-blue);
  font-size: 11px;
  letter-spacing: 1.4px;
}

.slots-format-panel h4 {
  margin: 16px 0 22px;
  font-size: clamp(25px,2.7vw,37px);
}

.slots-format-panel p {
  max-width: 860px;
  margin-bottom: 14px;
}

.slots-format-clarification {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  margin-top: 19px;
  padding: 21px 25px;
  background: rgba(117,146,235,.06);
  border-left: 2px solid #8dafff;
}

.slots-format-clarification i {
  margin-top: 5px;
  color: var(--sg-blue);
  font-size: 18px;
}

.slots-format-clarification p { font-size: 13px; }

/* PAYLINE ILLUSTRATION & GLOSSARY */

.slots-mechanics-layout {
  display: grid;
  grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr);
  gap: 25px;
  align-items: start;
}

.slots-mechanics-visual {
  position: relative;
  padding: clamp(22px,3vw,38px);
  background:
    radial-gradient(circle at 50% 50%,rgba(106,111,231,.16),transparent 65%),
    #151f42;
  border: 1px solid var(--sg-line);
  border-radius: 10px;
}

.slots-mechanics-visual-top,
.slots-mechanics-visual-foot {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  color: #9db5ea;
  font-size: 10px;
  letter-spacing: 1px;
  line-height: 1.5;
}

.slots-mechanics-reels {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 10px;
  margin: 60px 0;
}

.slots-mechanics-reels > div {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
  color: #c4b9ff;
  font-size: clamp(26px,3vw,46px);
  border: 1px solid rgba(170,188,255,.24);
  border-radius: 8px;
  background: #202d5d;
}

.slots-payline {
  position: absolute;
  top: 50%;
  left: -10px;
  right: -10px;
  height: 2px;
  background: #94baff;
  box-shadow: 0 0 13px rgba(148,186,255,.8);
  transform: translateY(-50%);
  pointer-events: none;
}

.slots-mechanics-visual-foot i { color: var(--sg-blue); }

.slots-mechanics-list {
  border-top: 1px solid var(--sg-line);
}

.slots-mechanic {
  border-bottom: 1px solid var(--sg-line);
}

.slots-mechanic summary {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 22px 8px;
  color: #fff;
  font-size: 17px;
  font-weight: 500;
  list-style: none;
  cursor: pointer;
}

.slots-mechanic summary::-webkit-details-marker { display: none; }

.slots-mechanic summary span {
  color: #8eabf6;
  font-size: 12px;
  font-weight: 400;
}

.slots-mechanic summary i {
  margin-left: auto;
  color: #9fb9ff;
  font-size: 14px;
  transition: transform .2s;
}

.slots-mechanic[open] summary i { transform: rotate(45deg); }

.slots-mechanic p {
  padding: 0 12px 25px 39px;
  font-size: 14px;
}

/* FIRST PLAY PROCESS */

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

.slots-process-step {
  position: relative;
  min-width: 0;
  padding: 30px 25px;
  background: #172144;
  border: 1px solid var(--sg-line);
  border-radius: 8px;
}

.slots-process-step::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 25px;
  right: 25px;
  height: 2px;
  background: linear-gradient(90deg,#83abff,transparent);
  opacity: .55;
}

.slots-process-index {
  display: block;
  margin-bottom: 28px;
  color: #8caaed;
  font-size: 12px;
  letter-spacing: 1px;
}

.slots-process-step > i {
  display: block;
  margin-bottom: 26px;
  color: #a6c0ff;
  font-size: 27px;
}

.slots-process-step h4 {
  margin-bottom: 13px;
  font-size: 20px;
}

.slots-process-step p { font-size: 13px; }

.slots-process-note {
  display: grid;
  grid-template-columns: 30px 1fr;
  gap: 17px;
  margin-top: 20px;
  padding: 24px;
  background: rgba(108,132,221,.065);
  border: 1px solid var(--sg-line);
  border-radius: 7px;
}

.slots-process-note i {
  color: #9fb8ff;
  font-size: 23px;
}

.slots-process-note p { font-size: 13px; }

/* WINNER'S EDGE */

.slots-guide-rewards {
  display: grid;
  grid-template-columns: 105px minmax(0,1fr) auto;
  gap: clamp(25px,3vw,43px);
  align-items: center;
  margin-top: 90px;
  padding: clamp(30px,4vw,53px);
  background: linear-gradient(110deg,#25336b,#182249);
  border: 1px solid rgba(168,188,255,.24);
  border-radius: 10px;
}

.slots-rewards-symbol {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 98px;
  height: 98px;
  color: #d9e4ff;
  border: 1px solid #829fe4;
  border-radius: 50%;
  font-size: 28px;
  letter-spacing: -1px;
}

.slots-rewards-orbit {
  position: absolute;
  inset: 9px;
  border: 1px dashed rgba(172,190,255,.4);
  border-radius: 50%;
}

.slots-rewards-copy h3 {
  margin: 14px 0 17px;
  font-size: clamp(26px,2.7vw,38px);
}

.slots-rewards-copy p {
  max-width: 880px;
  margin-bottom: 12px;
  font-size: 14px;
}

.slots-rewards-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 15px 20px;
  color: #fff;
  border: 1px solid rgba(192,210,255,.5);
  border-radius: 5px;
  font-size: 13px;
  white-space: nowrap;
}

.slots-rewards-link:hover {
  color: #fff;
  background: rgba(170,191,255,.12);
}

/* VISITOR GUIDANCE */

.slots-guide-bottom {
  display: grid;
  grid-template-columns: minmax(0,1.4fr) minmax(0,.6fr);
  gap: 60px;
  margin-top: 100px;
  padding-top: 38px;
  border-top: 1px solid var(--sg-line);
}

.slots-guide-bottom-main h3 {
  max-width: 800px;
  margin: 16px 0 25px;
  font-size: clamp(30px,3.2vw,43px);
  line-height: 1.2;
}

.slots-guide-bottom-main p {
  margin-bottom: 15px;
}

.slots-guide-bottom-side {
  padding: 27px;
  align-self: start;
  background: rgba(130,158,236,.07);
  border: 1px solid var(--sg-line);
  border-radius: 8px;
}

.slots-guide-bottom-side > i {
  margin-bottom: 19px;
  color: #a0bbff;
  font-size: 23px;
}

.slots-guide-bottom-side h4 {
  margin-bottom: 13px;
  font-size: 20px;
}

.slots-guide-bottom-side p { font-size: 13px; }

/* RESPONSIVE */

@media (max-width: 1150px) {
  .slots-guide-intro {
    grid-template-columns: minmax(0,1fr) minmax(300px,.7fr);
  }

  .slots-denomination-layout,
  .slots-mechanics-layout {
    grid-template-columns: 1fr;
  }

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

  .slots-guide-rewards {
    grid-template-columns: 100px 1fr;
  }

  .slots-rewards-link {
    grid-column: 2;
    justify-self: start;
  }
}

@media (max-width: 850px) {
  .slots-guide-intro,
  .slots-guide-bottom {
    grid-template-columns: 1fr;
  }

  .slots-guide-terminal {
    width: min(100%,570px);
    margin: 15px auto 0;
  }

  .slots-guide-bottom { gap: 25px; }
}

@media (max-width: 600px) {
  .slots-guide { padding: 75px 5%; }

  .slots-guide-intro h2 {
    font-size: clamp(39px,9vw,53px);
    letter-spacing: -1px;
  }

  .slots-guide-terminal { padding: 14px; }

  .slots-terminal-screen { padding: 14px; }

  .slots-terminal-reels { margin: 24px 0; }

  .slots-denomination-selector {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .slots-denomination-button {
    padding: 17px 11px;
    gap: 13px;
  }

  .slots-denomination-button strong {
    font-size: clamp(28px,8vw,42px);
    letter-spacing: -1px;
  }

  .slots-denomination-button small {
    font-size: 8px;
  }

  .slots-cost-result { padding: 17px 13px; }

  .slots-cost-result strong { font-size: 25px; }

  .slots-format-switch {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .slots-format-button {
    padding: 15px 10px;
    justify-content: center;
    text-align: center;
    font-size: 12px;
    line-height: 1.4;
  }

  .slots-format-panel {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .slots-format-icon {
    width: 65px;
    height: 65px;
    font-size: 27px;
  }

  .slots-mechanics-reels { margin: 35px 0; }

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

  .slots-process-step { padding: 26px; }

  .slots-guide-rewards {
    grid-template-columns: 1fr;
    padding: 28px 24px;
  }

  .slots-rewards-link {
    grid-column: auto;
    white-space: normal;
  }
}

@media (max-width: 390px) {
  .slots-denomination-selector { gap: 6px; }

  .slots-denomination-button { padding: 13px 8px; }

  .slots-denomination-button > span { font-size: 10px; }

  .slots-cost-range-row {
    flex-direction: column;
    align-items: stretch;
  }

  .slots-cost-range-row output { text-align: left; }

  .slots-cost-result { gap: 10px; }

  .slots-cost-result strong { font-size: 21px; }
}

@media (prefers-reduced-motion: reduce) {
  .slots-guide *,
  .slots-guide *::before,
  .slots-guide *::after {
    animation: none !important;
    transition: none !important;
  }
}

/* ==================== SLOTS & VLT GAMING END ==================== */

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

.tables-section {
  --tg-bg: #0a1028;
  --tg-panel: #141d3f;
  --tg-panel-2: #1d2a57;
  --tg-blue: #94b4ff;
  --tg-violet: #a498f0;
  --tg-text: #f7f9ff;
  --tg-muted: #aab7d6;
  --tg-line: rgba(159,181,255,.16);

  padding: clamp(78px, 8vw, 125px) 5%;
  background:
    radial-gradient(ellipse at 95% 4%, rgba(82,74,176,.16), transparent 36%),
    radial-gradient(ellipse at 3% 70%, rgba(41,79,161,.12), transparent 38%),
    linear-gradient(145deg, #091026, #111936 54%, #0a1027);
  color: var(--tg-text);
  overflow: hidden;
  isolation: isolate;
}

.tables-section *,
.tables-section *::before,
.tables-section *::after {
  box-sizing: border-box;
}

.tables-section [hidden] {
  display: none !important;
}

.tables-section a {
  text-decoration: none;
}

.tables-section h2,
.tables-section h3,
.tables-section h4 {
  color: #fff;
  text-shadow: none;
  font-weight: 500;
}

.tables-section h2 span,
.tables-section h3 span {
  color: #a6b8ff;
}

.tables-section p {
  color: var(--tg-muted);
  font-size: 15px;
  line-height: 1.85;
}

.tables-shell {
  max-width: 1420px;
  margin: 0 auto;
}

.tables-kicker,
.tables-index {
  color: var(--tg-blue);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1.8px;
}

/* INTRO */

.tables-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(340px, .95fr);
  gap: clamp(35px, 5vw, 82px);
  align-items: center;
}

.tables-kicker {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 28px;
}

.tables-intro h2 {
  margin-bottom: 30px;
  font-size: clamp(42px, 5.4vw, 76px);
  line-height: 1.08;
  letter-spacing: -2px;
}

.tables-lead {
  color: #e8efff !important;
  font-size: clamp(17px, 1.5vw, 20px) !important;
  line-height: 1.75 !important;
}

.tables-intro-copy > p {
  max-width: 760px;
  margin-bottom: 18px;
}

.tables-intro-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 32px;
}

.tables-intro-tags span {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 10px 14px;
  color: #bcc8e8;
  border: 1px solid var(--tg-line);
  border-radius: 5px;
  font-size: 12px;
}

.tables-intro-tags i {
  color: var(--tg-blue);
}

/* PHOTO */

.tables-intro-photo {
  position: relative;
  min-height: 560px;
  overflow: hidden;
  border: 1px solid rgba(172,190,255,.2);
  border-radius: 18px;
  box-shadow: 0 26px 60px rgba(0,0,0,.22);
}

.tables-intro-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.tables-photo-shade {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(7,12,32,.08) 0%, rgba(8,12,34,.82) 100%);
}

.tables-photo-badge {
  position: absolute;
  left: 28px;
  right: 28px;
  bottom: 120px;
  z-index: 2;
}

.tables-photo-badge span {
  display: block;
  margin-bottom: 10px;
  color: #9fc0ff;
  font-size: 10px;
  letter-spacing: 1.5px;
}

.tables-photo-badge strong {
  display: block;
  max-width: 420px;
  color: #fff;
  font-size: clamp(24px, 2.6vw, 38px);
  line-height: 1.25;
  font-weight: 500;
}

.tables-photo-facts {
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 24px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  z-index: 2;
}

.tables-photo-facts > div {
  padding: 18px 18px 16px;
  background: rgba(7,12,34,.64);
  border: 1px solid rgba(171,191,255,.15);
  border-radius: 10px;
  backdrop-filter: blur(8px);
}

.tables-photo-facts span {
  display: block;
  margin-bottom: 8px;
  color: #9eb8f5;
  font-size: 10px;
  letter-spacing: 1.1px;
}

.tables-photo-facts strong {
  display: block;
  color: #fff;
  font-size: 18px;
  line-height: 1.4;
  font-weight: 500;
}

/* OVERVIEW */

.tables-overview,
.tables-games,
.tables-betting,
.tables-join,
.tables-player-types {
  margin-top: clamp(85px, 9vw, 130px);
}

.tables-overview {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .75fr);
  gap: 28px;
  align-items: start;
}

.tables-overview-heading {
  margin-bottom: 22px;
}

.tables-overview-heading h3,
.tables-block-heading h3 {
  margin-top: 16px;
  font-size: clamp(31px, 3.4vw, 47px);
  line-height: 1.2;
  letter-spacing: -1px;
}

.tables-overview-main p {
  max-width: 850px;
  margin-bottom: 16px;
}

.tables-grid-visual {
  padding: clamp(24px, 3vw, 40px);
  background: linear-gradient(145deg, #1c2853, #121b38);
  border: 1px solid var(--tg-line);
  border-radius: 14px;
}

.tables-grid-head,
.tables-grid-foot {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
  color: #9db5e7;
  font-size: 10px;
  letter-spacing: 1px;
  line-height: 1.6;
}

.tables-grid-map {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin: 26px 0 22px;
}

.tables-grid-map span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 66px;
  color: #dce6ff;
  background: linear-gradient(155deg, #2c3975, #1b244a);
  border: 1px solid rgba(164,186,255,.18);
  border-radius: 10px;
  font-size: 17px;
  font-weight: 500;
}

.tables-grid-foot i {
  margin-top: 2px;
  color: var(--tg-blue);
}

/* SHARED HEADINGS */

.tables-block-heading {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
  gap: 45px;
  align-items: end;
  margin-bottom: 40px;
}

.tables-block-heading > p {
  max-width: 560px;
}

/* GAMES TABS */

.tables-games-layout {
  display: grid;
  grid-template-columns: 360px minmax(0, 1fr);
  gap: 20px;
}

.tables-games-nav {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.tables-game-tab {
  display: grid;
  grid-template-columns: 28px minmax(0,1fr) 18px;
  gap: 14px;
  align-items: center;
  min-height: 108px;
  width: 100%;
  padding: 18px;
  text-align: left;
  color: #fff;
  background: rgba(255,255,255,.03);
  border: 1px solid var(--tg-line);
  border-radius: 8px;
  cursor: pointer;
  transition: .22s ease;
}

.tables-game-tab:hover {
  background: rgba(98,120,221,.1);
}

.tables-game-tab.is-active {
  background: linear-gradient(135deg, #2f3977, #1b2956);
  border-color: #90adff;
}

.tables-game-count {
  color: #8dacff;
  font-size: 12px;
}

.tables-game-text {
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.tables-game-text strong {
  color: #fff;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.35;
}

.tables-game-text small {
  color: rgba(255,255,255,.5);
  font-size: 12px;
  line-height: 1.5;
}

.tables-game-tab > i {
  color: rgba(174,194,255,.5);
  font-size: 12px;
}

.tables-games-note {
  display: flex;
  gap: 12px;
  margin-top: 8px;
  padding: 14px 4px 0;
  color: rgba(255,255,255,.45);
  font-size: 12px;
  line-height: 1.7;
}

.tables-games-note i {
  margin-top: 2px;
  color: var(--tg-blue);
}

.tables-game-panel {
  display: grid;
  grid-template-columns: 92px 1fr;
  gap: 28px;
  min-height: 390px;
  padding: clamp(28px, 4vw, 52px);
  background: linear-gradient(140deg, #1b2855, #121b38);
  border: 1px solid var(--tg-line);
  border-radius: 12px;
}

.tables-panel-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 84px;
  height: 84px;
  background: rgba(123,151,255,.1);
  border: 1px solid rgba(159,181,255,.22);
  border-radius: 16px;
  color: #a8c0ff;
  font-size: 33px;
}

.tables-panel-content > span {
  color: var(--tg-blue);
  font-size: 11px;
  letter-spacing: 1.4px;
}

.tables-panel-content h4 {
  margin: 18px 0 20px;
  font-size: clamp(26px, 2.8vw, 38px);
}

.tables-panel-content p {
  max-width: 820px;
  margin-bottom: 15px;
}

.tables-panel-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 22px;
}

.tables-panel-tags span {
  padding: 8px 11px;
  color: #c1cff3;
  border: 1px solid rgba(170,188,255,.18);
  border-radius: 4px;
  font-size: 11px;
}

/* BETTING */

.tables-betting-layout {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  gap: 20px;
  align-items: start;
}

.tables-bet-card {
  padding: clamp(24px, 3vw, 40px);
  background: linear-gradient(145deg, #253167, #182249);
  border: 1px solid rgba(170,189,255,.23);
  border-radius: 14px;
}

.tables-bet-top span {
  display: block;
  margin-bottom: 18px;
  color: #a9c0ff;
  font-size: 11px;
  letter-spacing: 1.4px;
}

.tables-bet-top strong {
  display: block;
  margin-bottom: 22px;
  color: #fff;
  font-size: clamp(34px, 4vw, 54px);
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -1.5px;
}

.tables-bet-card p {
  font-size: 14px;
}

.tables-bet-scale {
  height: 8px;
  margin: 28px 0 18px;
  padding: 1px;
  background: rgba(255,255,255,.12);
  border-radius: 20px;
}

.tables-bet-scale span {
  display: block;
  width: 72%;
  height: 6px;
  border-radius: inherit;
  background: linear-gradient(90deg, #80adff, #b09fff);
  box-shadow: 0 0 16px rgba(128,173,255,.28);
}

.tables-bet-foot small {
  color: #97a9d4;
  font-size: 12px;
  line-height: 1.6;
}

.tables-betting-accordion {
  border-top: 1px solid var(--tg-line);
}

.tables-detail {
  border-bottom: 1px solid var(--tg-line);
}

.tables-detail summary {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 23px 8px;
  color: #fff;
  cursor: pointer;
  font-size: 17px;
  font-weight: 500;
  list-style: none;
}

.tables-detail summary::-webkit-details-marker {
  display: none;
}

.tables-detail summary span {
  color: #91adf8;
  font-size: 12px;
  font-weight: 400;
}

.tables-detail summary i {
  margin-left: auto;
  color: #9ab6ff;
  font-size: 14px;
  transition: transform .2s ease;
}

.tables-detail[open] summary i {
  transform: rotate(45deg);
}

.tables-detail p {
  padding: 0 12px 24px 38px;
  font-size: 14px;
}

/* JOIN TABLE */

.tables-join-layout {
  display: grid;
  grid-template-columns: 360px minmax(0, 1fr);
  gap: 20px;
}

.tables-join-steps {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.tables-step {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 9px;
  min-height: 108px;
  padding: 18px 20px;
  color: #fff;
  text-align: left;
  background: rgba(255,255,255,.03);
  border: 1px solid var(--tg-line);
  border-radius: 8px;
  cursor: pointer;
  transition: .22s ease;
}

.tables-step:hover {
  background: rgba(100,124,222,.08);
}

.tables-step.is-active {
  background: linear-gradient(135deg, #2f3977, #1b2956);
  border-color: #90adff;
}

.tables-step span {
  color: #8facff;
  font-size: 12px;
}

.tables-step strong {
  color: #fff;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.35;
}

.tables-step small {
  color: rgba(255,255,255,.5);
  font-size: 12px;
  line-height: 1.55;
}

.tables-join-panel {
  min-height: 370px;
  padding: clamp(28px, 4vw, 50px);
  background: linear-gradient(140deg, #1b2855, #121b38);
  border: 1px solid var(--tg-line);
  border-radius: 12px;
}

.tables-step-panel > span {
  color: var(--tg-blue);
  font-size: 11px;
  letter-spacing: 1.4px;
}

.tables-step-panel h4 {
  margin: 18px 0 20px;
  font-size: clamp(25px, 2.6vw, 36px);
}

.tables-step-panel p {
  max-width: 800px;
  margin-bottom: 15px;
}

/* PLAYER TYPES */

.tables-player-types {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, .55fr);
  gap: 22px;
  align-items: start;
}

.tables-player-types-main h3 {
  max-width: 840px;
  margin: 16px 0 24px;
  font-size: clamp(31px, 3.2vw, 44px);
  line-height: 1.2;
  letter-spacing: -1px;
}

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

.tables-type-card {
  min-width: 0;
  min-height: 220px;
  padding: 26px;
  background: linear-gradient(150deg, #172145, #101833);
  border: 1px solid var(--tg-line);
  border-radius: 12px;
}

.tables-type-card i {
  display: block;
  margin-bottom: 24px;
  color: #a6c0ff;
  font-size: 24px;
}

.tables-type-card h4 {
  margin-bottom: 12px;
  font-size: 20px;
  font-weight: 500;
}

.tables-type-card p {
  font-size: 13px;
  line-height: 1.75;
}

.tables-player-note {
  padding: 28px;
  background: rgba(123,151,255,.06);
  border: 1px solid var(--tg-line);
  border-radius: 12px;
}

.tables-player-note i {
  display: block;
  margin-bottom: 18px;
  color: #a6c0ff;
  font-size: 22px;
}

.tables-player-note h4 {
  margin-bottom: 12px;
  font-size: 21px;
}

.tables-player-note p {
  font-size: 13px;
}

/* RESPONSIVE */

@media (max-width: 1180px) {
  .tables-games-layout,
  .tables-join-layout {
    grid-template-columns: 320px minmax(0, 1fr);
  }

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

  .tables-player-types {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 980px) {
  .tables-intro,
  .tables-overview,
  .tables-block-heading {
    grid-template-columns: 1fr;
  }

  .tables-block-heading {
    gap: 18px;
  }

  .tables-block-heading > p {
    max-width: 760px;
  }

  .tables-intro-photo {
    max-width: 700px;
  }
}

@media (max-width: 760px) {
  .tables-section {
    padding: 75px 5%;
  }

  .tables-intro h2 {
    font-size: clamp(38px, 9vw, 54px);
    letter-spacing: -1px;
  }

  .tables-intro-photo {
    min-height: 430px;
  }

  .tables-photo-badge {
    bottom: 108px;
  }

  .tables-photo-facts {
    grid-template-columns: 1fr;
  }

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

  .tables-games-layout,
  .tables-join-layout {
    grid-template-columns: 1fr;
  }

  .tables-game-panel {
    grid-template-columns: 1fr;
    gap: 18px;
    min-height: auto;
  }

  .tables-panel-icon {
    width: 66px;
    height: 66px;
    font-size: 26px;
  }

  .tables-join-panel {
    min-height: auto;
  }

  .tables-types-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 430px) {
  .tables-photo-badge {
    left: 20px;
    right: 20px;
  }

  .tables-photo-badge strong {
    font-size: 25px;
  }

  .tables-photo-facts {
    left: 18px;
    right: 18px;
    bottom: 18px;
  }

  .tables-bet-top strong {
    font-size: 34px;
  }

  .tables-detail summary {
    font-size: 15px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .tables-section *,
  .tables-section *::before,
  .tables-section *::after {
    animation: none !important;
    transition: none !important;
  }
}

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

/* ============== POKER TOURNAMENTS ============== */

.tournament-section {
  --pt-blue: #9dbaff;
  --pt-violet: #a99bfb;
  --pt-muted: #aebbdc;
  --pt-border: rgba(156,180,255,.16);
  --pt-panel: #172246;
  color: #f7f9ff;
  padding: clamp(76px,8vw,125px) 5%;
  overflow: hidden;
  background:
    radial-gradient(ellipse at 90% 5%,rgba(100,80,196,.16),transparent 35%),
    radial-gradient(ellipse at 3% 73%,rgba(45,83,170,.12),transparent 36%),
    linear-gradient(145deg,#090f28,#121a39 55%,#0a112a);
}

.tournament-section *,
.tournament-section *::before,
.tournament-section *::after {box-sizing:border-box}

.tournament-section [hidden]{display:none!important}
.tournament-section a{text-decoration:none}

.tournament-section h2,
.tournament-section h3,
.tournament-section h4{
  color:#fff;
  text-shadow:none;
  font-weight:500;
}

.tournament-section h2 span,
.tournament-section h3 span{color:#aab9ff}

.tournament-section p{
  color:var(--pt-muted);
  font-size:15px;
  line-height:1.85;
}

.tournament-shell{max-width:1420px;margin:auto}

.tournament-eyebrow,.tournament-index{
  color:var(--pt-blue);
  font-size:11px;
  font-weight:600;
  letter-spacing:1.7px;
}

/* INTRO */

.tournament-intro{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
  gap:clamp(35px,5vw,85px);
  align-items:center;
}

.tournament-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:12px;
  margin-bottom:25px;
}

.tournament-intro h2{
  max-width:810px;
  margin:0 0 28px;
  font-size:clamp(42px,5vw,72px);
  line-height:1.1;
  letter-spacing:-2px;
}

.tournament-intro-copy>p{
  max-width:750px;
  margin-bottom:17px;
}

.tournament-section .tournament-lead{
  color:#e7edff;
  font-size:clamp(17px,1.5vw,20px);
  line-height:1.75;
}

.tournament-intro-meta{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:15px;
  margin-top:34px;
}

.tournament-intro-meta>div{
  display:grid;
  grid-template-columns:27px 1fr;
  gap:4px 12px;
  padding:19px;
  border:1px solid var(--pt-border);
  border-radius:8px;
  background:rgba(255,255,255,.025);
}

.tournament-intro-meta i{
  grid-row:span 2;
  color:var(--pt-blue);
  font-size:21px;
}

.tournament-intro-meta span{
  color:#9db3e4;
  font-size:10px;
  letter-spacing:1px;
}

.tournament-intro-meta strong{
  color:#fff;
  font-size:14px;
  font-weight:500;
}

/* DECORATIVE POKER TABLE */

.tournament-visual{
  position:relative;
  min-width:0;
  padding:25px;
  border:1px solid rgba(171,187,255,.25);
  border-radius:14px;
  background:
    radial-gradient(circle at 50% 50%,rgba(85,104,213,.16),transparent 65%),
    linear-gradient(145deg,#202c60,#111a38);
  box-shadow:0 25px 60px rgba(0,0,0,.24);
}

.tournament-visual-top,.tournament-visual-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:#a8bdf2;
  font-size:10px;
  letter-spacing:1.2px;
}

.tournament-visual-footer i{
  color:#8db4ff;
  margin-right:7px;
  font-size:7px;
}

.tournament-table-scene{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:390px;
  padding:40px 15px;
}

.tournament-table-outline{
  width:100%;
  max-width:470px;
  aspect-ratio:1.65;
  padding:12px;
  border-radius:50% / 48%;
  background:linear-gradient(135deg,#8193c9,#343f7e 45%,#a4a9dd);
  box-shadow:0 15px 30px rgba(0,0,0,.3);
}

.tournament-table-felt{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  border:7px solid #18234e;
  border-radius:inherit;
  background:radial-gradient(ellipse at center,#303c85,#192557);
}

.tournament-table-inner{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  width:70%;
  padding:20px;
  border:1px solid rgba(182,196,255,.25);
  border-radius:50% / 48%;
  text-align:center;
}

.tournament-table-symbol{
  font-size:39px;
  color:#c6d6ff;
}

.tournament-table-inner>span:not(.tournament-table-symbol){
  font-size:11px;
  color:#e3eaff;
  letter-spacing:2px;
}

.tournament-table-inner small{
  color:#9eb4eb;
  font-size:9px;
  letter-spacing:1px;
}

.tournament-seat{
  position:absolute;
  z-index:2;
  width:45px;
  height:21px;
  border-radius:14px;
  background:linear-gradient(180deg,#8897d2,#33447f);
  border:1px solid rgba(210,220,255,.3);
}

.seat-one{top:12%;left:44%}
.seat-two{top:31%;left:0;transform:rotate(-65deg)}
.seat-three{top:31%;right:0;transform:rotate(65deg)}
.seat-four{bottom:14%;left:22%;transform:rotate(20deg)}
.seat-five{bottom:14%;right:22%;transform:rotate(-20deg)}
.seat-six{bottom:8%;left:44%}

.tournament-chip-stack{
  position:absolute;
  z-index:2;
  display:flex;
  flex-direction:column;
  align-items:center;
}

.tournament-chip-stack span{
  width:25px;
  height:10px;
  margin-top:-4px;
  background:#a2aaff;
  border:3px dashed #29366e;
  border-radius:50%;
}

.chip-one{left:28%;top:37%}
.chip-two{right:28%;bottom:35%}

.tournament-visual-footer{
  padding-top:19px;
  border-top:1px solid var(--pt-border);
}

/* SHARED HEADINGS */

.tournament-schedule,
.tournament-comparison,
.tournament-entry,
.tournament-details{
  margin-top:clamp(85px,9vw,130px);
}

.tournament-heading{
  max-width:930px;
  margin-bottom:40px;
}

.tournament-heading h3{
  margin:16px 0 20px;
  font-size:clamp(31px,3.5vw,48px);
  line-height:1.2;
  letter-spacing:-1px;
}

.tournament-heading p{max-width:850px}

/* TOURNAMENT DAYS */

.tournament-schedule-layout{
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  gap:20px;
}

.tournament-days{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}

.tournament-day{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-width:0;
  min-height:175px;
  padding:23px;
  text-align:left;
  cursor:pointer;
  background:#172143;
  border:1px solid var(--pt-border);
  border-radius:10px;
  transition:transform .2s,border-color .2s,background .2s;
}

.tournament-day:hover{transform:translateY(-3px)}

.tournament-day.is-active{
  background:linear-gradient(145deg,#303a7c,#1b2b5b);
  border-color:#97b1ff;
}

.tournament-day>span{
  color:#9eb8ff;
  font-size:11px;
  letter-spacing:1.5px;
}

.tournament-day strong{
  margin-top:17px;
  color:#fff;
  font-size:23px;
  font-weight:500;
}

.tournament-day small{
  margin-top:7px;
  color:#a7b6d9;
  font-size:12px;
  line-height:1.5;
}

.tournament-day i{
  align-self:flex-end;
  margin-top:auto;
  color:#94b5ff;
}

.tournament-day-display{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:clamp(26px,3.5vw,48px);
  background:
    radial-gradient(circle at 100% 0%,rgba(144,112,231,.12),transparent 55%),
    #19254d;
  border:1px solid rgba(161,182,255,.25);
  border-radius:10px;
}

.tournament-display-label{
  color:#a8bdf4;
  font-size:11px;
  letter-spacing:1.6px;
}

.tournament-day-display h4{
  margin:20px 0;
  font-size:clamp(33px,3.5vw,50px);
}

.tournament-day-display>p{font-size:14px}

.tournament-day-details{
  display:grid;
  gap:0;
  margin-top:25px;
}

.tournament-day-details>div{
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:15px 0;
  border-bottom:1px solid var(--pt-border);
}

.tournament-day-details span{
  color:#99aedb;
  font-size:11px;
  letter-spacing:.7px;
}

.tournament-day-details strong{
  color:#fff;
  font-size:13px;
  font-weight:500;
  text-align:right;
}

.tournament-day-note{
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin-top:auto;
  padding-top:25px;
  color:#9aaed7;
  font-size:12px;
  line-height:1.65;
}

.tournament-day-note i{color:#a0bdff}

/* COMPARISON */

.tournament-comparison-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}

.tournament-comparison-card{
  min-width:0;
  padding:clamp(27px,3.5vw,45px);
  background:#151f40;
  border:1px solid var(--pt-border);
  border-radius:11px;
}

.tournament-comparison-featured{
  background:linear-gradient(140deg,#28336e,#17244a);
  border-color:rgba(171,181,255,.3);
}

.tournament-comparison-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  margin-bottom:27px;
}

.tournament-comparison-top span{
  color:#a8baff;
  font-size:11px;
  letter-spacing:1.5px;
}

.tournament-comparison-top i{
  color:#aec1ff;
  font-size:27px;
}

.tournament-comparison-card h4{
  margin-bottom:17px;
  font-size:clamp(24px,2.7vw,35px);
}

.tournament-comparison-card>p{
  min-height:120px;
  margin-bottom:25px;
  font-size:14px;
}

.tournament-comparison-line{
  display:grid;
  grid-template-columns: minmax(0,.45fr) minmax(0,.55fr);
  gap:14px;
  padding:17px 0;
  border-top:1px solid var(--pt-border);
}

.tournament-comparison-line span{
  color:#a0b0da;
  font-size:11px;
}

.tournament-comparison-line strong{
  color:#e9efff;
  font-size:13px;
  font-weight:500;
}

.tournament-comparison-disclaimer{
  margin-top:18px;
  font-size:12px!important;
}

/* ENTRY GUIDE */

.tournament-entry-layout{
  display:grid;
  grid-template-columns:340px minmax(0,1fr);
  gap:20px;
}

.tournament-entry-list{
  display:flex;
  flex-direction:column;
  gap:9px;
}

.tournament-entry-step{
  display:grid;
  grid-template-columns:29px 1fr 20px;
  align-items:center;
  gap:15px;
  min-height:75px;
  padding:16px 20px;
  color:#fff;
  text-align:left;
  cursor:pointer;
  background:#151f40;
  border:1px solid var(--pt-border);
  border-radius:7px;
}

.tournament-entry-step.is-active{
  background:#2a3673;
  border-color:#93b1ff;
}

.tournament-entry-step span{
  color:#99b5ff;
  font-size:12px;
}

.tournament-entry-step strong{
  color:#fff;
  font-size:15px;
  font-weight:500;
}

.tournament-entry-step i{
  color:#91b2ff;
  font-size:12px;
}

.tournament-entry-display{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:clamp(28px,4vw,52px);
  border:1px solid var(--pt-border);
  border-radius:10px;
  background:linear-gradient(140deg,#1d2b5b,#131d3b);
}

.tournament-entry-display-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  color:#a1baff;
  font-size:11px;
  letter-spacing:1.3px;
}

.tournament-entry-display-head i{font-size:24px}

.tournament-entry-display h4{
  margin:25px 0 17px;
  font-size:clamp(25px,2.8vw,36px);
}

.tournament-entry-display>p{
  max-width:790px;
  font-size:14px;
}

.tournament-entry-question{
  margin:30px 0;
  padding:22px;
  border-left:2px solid #98b7ff;
  background:rgba(255,255,255,.045);
}

.tournament-entry-question span{
  color:#9cb5ed;
  font-size:10px;
  letter-spacing:1.2px;
}

.tournament-entry-question p{
  margin-top:10px;
  color:#fff;
  font-size:15px;
}

.tournament-entry-progress{
  display:flex;
  align-items:center;
  gap:18px;
  margin-top:auto;
}

.tournament-entry-progress>span{
  color:#afc4ff;
  font-size:12px;
  white-space:nowrap;
}

.tournament-progress-track{
  flex:1;
  height:4px;
  background:rgba(255,255,255,.13);
  border-radius:5px;
  overflow:hidden;
}

#tournament-progress-fill{
  width:20%;
  height:100%;
  background:linear-gradient(90deg,#78a6ff,#b2a3ff);
  transition:width .25s ease;
}

#tournament-next-step{
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px 17px;
  color:#fff;
  background:rgba(147,175,255,.12);
  border:1px solid var(--pt-border);
  border-radius:5px;
  font-size:12px;
  cursor:pointer;
}

/* EVENT CONDITIONS */

.tournament-details-layout{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.65fr);
  gap:35px;
  align-items:start;
}

.tournament-accordion{
  border-top:1px solid var(--pt-border);
}

.tournament-detail{
  border-bottom:1px solid var(--pt-border);
}

.tournament-detail summary{
  display:flex;
  align-items:center;
  gap:20px;
  padding:23px 8px;
  color:#fff;
  font-size:17px;
  font-weight:500;
  cursor:pointer;
  list-style:none;
}

.tournament-detail summary::-webkit-details-marker{display:none}

.tournament-detail summary span{
  color:#99b2f7;
  font-size:12px;
}

.tournament-detail summary i{
  margin-left:auto;
  color:#a5bfff;
  transition:transform .2s;
}

.tournament-detail[open] summary i{
  transform:rotate(45deg);
}

.tournament-detail p{
  padding:0 14px 25px 39px;
  font-size:14px;
}

.tournament-information{
  padding:clamp(26px,3vw,40px);
  background:linear-gradient(145deg,#26336a,#172247);
  border:1px solid rgba(160,181,255,.25);
  border-radius:10px;
}

.tournament-information-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:57px;
  height:57px;
  margin-bottom:27px;
  color:#b1c7ff;
  background:rgba(162,181,255,.1);
  border:1px solid var(--pt-border);
  border-radius:50%;
  font-size:24px;
}

.tournament-information>span{
  color:#9db8ff;
  font-size:11px;
  letter-spacing:1.5px;
}

.tournament-information h4{
  margin:13px 0 18px;
  font-size:27px;
  line-height:1.3;
}

.tournament-information p{font-size:14px}

.tournament-information-separator{
  height:1px;
  margin:28px 0 12px;
  background:var(--pt-border);
}

.tournament-information-mini{
  display:flex;
  justify-content:space-between;
  gap:15px;
  padding:14px 0;
  border-bottom:1px solid var(--pt-border);
}

.tournament-information-mini span{
  color:#a1b1d9;
  font-size:12px;
}

.tournament-information-mini strong{
  max-width:190px;
  color:#fff;
  font-size:12px;
  font-weight:500;
  text-align:right;
}

/* CONTACT STRIP */

.tournament-contact{
  position:relative;
  display:grid;
  grid-template-columns:100px minmax(0,1fr) auto;
  align-items:center;
  gap:32px;
  margin-top:100px;
  padding:clamp(28px,4vw,52px);
  border:1px solid rgba(177,194,255,.26);
  border-radius:10px;
  background:linear-gradient(115deg,#293771,#19244d);
}

.tournament-contact-decoration{
  display:flex;
  justify-content:center;
  align-items:center;
  width:90px;
  height:90px;
  border:1px solid rgba(175,195,255,.26);
  border-radius:50%;
  color:#b5c7ff;
  font-size:35px;
}

.tournament-contact-copy>span{
  color:#afc4ff;
  font-size:11px;
  letter-spacing:1.5px;
}

.tournament-contact-copy h3{
  margin:13px 0;
  font-size:clamp(25px,2.6vw,37px);
}

.tournament-contact-copy p{
  max-width:750px;
  font-size:14px;
}

.tournament-contact-numbers{
  display:flex;
  flex-wrap:wrap;
  gap:12px 23px;
  margin-top:23px;
}

.tournament-contact-numbers span{
  color:#d1deff;
  font-size:12px;
  letter-spacing:.6px;
}

.tournament-contact-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:15px;
  padding:15px 20px;
  color:#fff;
  border:1px solid rgba(198,211,255,.5);
  border-radius:5px;
  font-size:13px;
  white-space:nowrap;
}

.tournament-contact-link:hover{
  color:#fff;
  background:rgba(173,193,255,.14);
}

/* RESPONSIVE */

@media(max-width:1180px){
  .tournament-schedule-layout,
  .tournament-details-layout{
    grid-template-columns:1fr;
  }
  .tournament-entry-layout{
    grid-template-columns:280px 1fr;
  }
  .tournament-contact{
    grid-template-columns:85px 1fr;
  }
  .tournament-contact-link{
    grid-column:2;
    justify-self:start;
  }
}

@media(max-width:950px){
  .tournament-intro{
    grid-template-columns:1fr;
  }
  .tournament-visual{
    max-width:660px;
    width:100%;
  }
  .tournament-entry-layout{
    grid-template-columns:1fr;
  }
  .tournament-entry-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .tournament-entry-step:last-child{
    grid-column:1/-1;
  }
}

@media(max-width:700px){
  .tournament-section{padding:75px 5%}
  .tournament-intro h2{
    font-size:clamp(38px,9vw,53px);
    letter-spacing:-1px;
  }
  .tournament-intro-meta,
  .tournament-comparison-grid{
    grid-template-columns:1fr;
  }
  .tournament-table-scene{min-height:280px}
  .tournament-days{gap:8px}
  .tournament-day{
    min-height:160px;
    padding:16px;
  }
  .tournament-day strong{font-size:19px}
  .tournament-day-display{padding:25px 20px}
  .tournament-day-details>div{
    flex-direction:column;
    gap:6px;
  }
  .tournament-day-details strong{text-align:left}
  .tournament-comparison-card>p{min-height:0}
  .tournament-entry-list{grid-template-columns:1fr}
  .tournament-entry-step:last-child{grid-column:auto}
  .tournament-contact{
    grid-template-columns:1fr;
    gap:22px;
  }
  .tournament-contact-link{
    grid-column:auto;
    white-space:normal;
  }
}

@media(max-width:420px){
  .tournament-visual{padding:17px}
  .tournament-table-scene{min-height:230px}
  .tournament-table-inner{
    padding:9px;
  }
  .tournament-table-symbol{font-size:25px}
  .tournament-table-inner>span:not(.tournament-table-symbol){
    font-size:8px;
  }
  .tournament-table-inner small{font-size:7px}
  .tournament-seat{width:30px;height:16px}
  .tournament-day{min-height:155px;padding:13px}
  .tournament-day strong{font-size:17px}
  .tournament-day small{font-size:11px}
  .tournament-entry-progress{gap:10px}
  .tournament-entry-question{padding:17px}
}

@media(prefers-reduced-motion:reduce){
  .tournament-section *,
  .tournament-section *::before,
  .tournament-section *::after{
    animation:none!important;
    transition:none!important;
  }
}

/* ============== POKER TOURNAMENTS END ============== */


/* ==================== FIRST VISIT GUIDE ==================== */

.visit-guide {
  --vg-bg: #0b112b;
  --vg-panel: #172244;
  --vg-panel-light: #202d5c;
  --vg-blue: #9bb9ff;
  --vg-violet: #a59af1;
  --vg-muted: #aebbdc;
  --vg-border: rgba(156,180,255,.17);

  padding: clamp(78px,8vw,125px) 5%;
  color: #f7f9ff;
  background:
    radial-gradient(ellipse at 95% 4%,rgba(101,83,191,.15),transparent 35%),
    radial-gradient(ellipse at 2% 73%,rgba(44,85,168,.12),transparent 37%),
    linear-gradient(145deg,#0a1028,#121a38 53%,#0b122b);
  overflow: hidden;
  isolation: isolate;
}

.visit-guide *,
.visit-guide *::before,
.visit-guide *::after { box-sizing: border-box; }

.visit-guide a { text-decoration: none; }

.visit-guide h2,
.visit-guide h3,
.visit-guide h4 {
  color: #fff;
  font-weight: 500;
  text-shadow: none;
}

.visit-guide h2 span,
.visit-guide h3 span { color: #aabaff; }

.visit-guide p {
  color: var(--vg-muted);
  font-size: 15px;
  line-height: 1.85;
}

.visit-guide-shell { max-width: 1420px; margin: auto; }

.visit-guide-index,
.visit-guide-eyebrow {
  color: var(--vg-blue);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1.7px;
}

/* INTRO */

.visit-guide-intro {
  display: grid;
  grid-template-columns: minmax(0,1.18fr) minmax(320px,.72fr);
  align-items: center;
  gap: clamp(35px,6vw,95px);
}

.visit-guide-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 28px;
}

.visit-guide-eyebrow i { font-size: 17px; }

.visit-guide-intro h2 {
  max-width: 750px;
  margin: 0 0 29px;
  font-size: clamp(42px,5.1vw,72px);
  line-height: 1.09;
  letter-spacing: -2px;
}

.visit-guide-intro-main > p {
  max-width: 760px;
  margin-bottom: 19px;
}

.visit-guide-intro-main .visit-guide-lead {
  color: #e7edff;
  font-size: clamp(17px,1.5vw,20px);
  line-height: 1.75;
}

.visit-guide-intro-line {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-top: 39px;
  color: #90a7e1;
  font-size: 10px;
  letter-spacing: 1.2px;
}

.visit-guide-line-track {
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg,#8dabff,transparent);
}

/* VISITOR PASS */

.visit-guide-pass {
  position: relative;
  padding: clamp(27px,3.5vw,45px);
  background:
    radial-gradient(circle at 100% 0%,rgba(144,119,232,.14),transparent 53%),
    linear-gradient(145deg,#263269,#182245);
  border: 1px solid rgba(166,188,255,.28);
  border-radius: 16px;
  overflow: hidden;
}

.visit-guide-pass::after {
  content: "";
  position: absolute;
  top: -65px;
  right: -65px;
  width: 220px;
  height: 220px;
  border: 1px solid rgba(180,197,255,.13);
  border-radius: 50%;
  pointer-events: none;
}

.visit-guide-pass-top,
.visit-guide-pass-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  color: #b2c5fa;
  font-size: 10px;
  letter-spacing: 1.5px;
}

.visit-guide-pass-top i { font-size: 27px; }

.visit-guide-pass-number {
  margin: 38px 0 2px;
  font-size: clamp(90px,10vw,135px);
  font-weight: 500;
  letter-spacing: -6px;
  line-height: 1;
}

.visit-guide-pass-number span {
  color: #a4b9ff;
  font-size: .48em;
  vertical-align: top;
}

.visit-guide-pass .visit-guide-pass-label {
  color: #c6d5fb;
  font-size: 15px;
}

.visit-guide-pass-rule {
  height: 1px;
  margin: 33px 0 15px;
  background: var(--vg-border);
}

.visit-guide-pass-data > div {
  display: grid;
  grid-template-columns: 24px 1fr;
  gap: 15px;
  align-items: center;
  padding: 17px 0;
  border-bottom: 1px solid var(--vg-border);
}

.visit-guide-pass-data i {
  color: #a6bfff;
  font-size: 20px;
}

.visit-guide-pass-data span {
  display: block;
  margin-bottom: 5px;
  color: #a3b4df;
  font-size: 10px;
  letter-spacing: 1px;
}

.visit-guide-pass-data strong {
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.45;
}

.visit-guide-pass-bottom { margin-top: 30px; }

/* COMMON HEADINGS */

.visit-guide-journey,
.visit-guide-identification,
.visit-guide-conditions,
.visit-guide-choices,
.visit-guide-practical,
.visit-guide-checklist,
.visit-guide-assistance {
  margin-top: clamp(85px,9vw,135px);
}

.visit-guide-heading {
  max-width: 950px;
  margin-bottom: 40px;
}

.visit-guide-heading h3 {
  margin: 17px 0 20px;
  font-size: clamp(32px,3.5vw,48px);
  line-height: 1.2;
  letter-spacing: -1px;
}

.visit-guide-heading p { max-width: 850px; }

/* INTERACTIVE JOURNEY */

.visit-journey-layout {
  display: grid;
  grid-template-columns: minmax(310px,.73fr) minmax(0,1.27fr);
  gap: 22px;
}

.visit-journey-navigation {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.visit-journey-step {
  display: grid;
  grid-template-columns: 40px minmax(0,1fr) 18px;
  align-items: center;
  gap: 17px;
  min-height: 90px;
  width: 100%;
  padding: 18px;
  text-align: left;
  color: #fff;
  background: rgba(255,255,255,.03);
  border: 1px solid var(--vg-border);
  border-radius: 9px;
  cursor: pointer;
  transition: background .2s,border-color .2s,transform .2s;
}

.visit-journey-step:hover { transform: translateX(3px); }

.visit-journey-step.is-active {
  background: linear-gradient(115deg,#2c3879,#1b2956);
  border-color: #92b0ff;
}

.visit-journey-count {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 1px solid rgba(161,185,255,.25);
  border-radius: 50%;
  color: #b2c7ff;
  font-size: 13px;
}

.visit-journey-step > span:nth-child(2) {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.visit-journey-step strong {
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
}

.visit-journey-step small {
  color: #a6b6d9;
  font-size: 12px;
  line-height: 1.4;
}

.visit-journey-step > i {
  color: #a6bdff;
  font-size: 13px;
}

.visit-journey-display {
  display: flex;
  flex-direction: column;
  min-height: 485px;
  padding: clamp(29px,4vw,55px);
  background:
    radial-gradient(circle at 100% 0%,rgba(119,108,221,.13),transparent 48%),
    linear-gradient(145deg,#1e2b5b,#121c3b);
  border: 1px solid rgba(158,181,255,.24);
  border-radius: 12px;
}

.visit-journey-display-top,
.visit-journey-progress-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  color: #a4bcff;
  font-size: 11px;
  letter-spacing: 1.4px;
}

.visit-journey-display-top i { font-size: 29px; }

.visit-journey-display-copy h4 {
  max-width: 630px;
  margin: 47px 0 20px;
  font-size: clamp(27px,3vw,41px);
  line-height: 1.2;
}

.visit-journey-display-copy p {
  max-width: 780px;
  font-size: 15px;
}

.visit-journey-advice {
  margin-top: 30px;
  padding: 22px 24px;
  background: rgba(255,255,255,.045);
  border-left: 2px solid #97b8ff;
}

.visit-journey-advice span {
  color: #a4bbfa;
  font-size: 10px;
  letter-spacing: 1.3px;
}

.visit-journey-advice p {
  margin-top: 9px;
  color: #dbe5ff;
  font-size: 13px;
}

.visit-journey-progress { margin-top: auto; padding-top: 35px; }

.visit-journey-progress-track {
  height: 4px;
  margin-top: 12px;
  overflow: hidden;
  background: rgba(255,255,255,.15);
  border-radius: 5px;
}

#visit-progress-fill {
  display: block;
  width: 20%;
  height: 100%;
  background: linear-gradient(90deg,#80b0ff,#b0a6ff);
  transition: width .25s ease;
}

#visit-next-stage {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  margin-top: 24px;
  padding: 13px 19px;
  color: #fff;
  background: rgba(152,175,255,.13);
  border: 1px solid rgba(170,191,255,.26);
  border-radius: 6px;
  font-size: 13px;
  cursor: pointer;
}

/* IDENTIFICATION */

.visit-identification-layout {
  display: grid;
  grid-template-columns: minmax(0,.75fr) minmax(0,1.25fr);
  gap: 25px;
}

.visit-id-card {
  display: flex;
  flex-direction: column;
  padding: clamp(27px,3.5vw,45px);
  background: linear-gradient(155deg,#263368,#182348);
  border: 1px solid rgba(163,184,255,.25);
  border-radius: 13px;
}

.visit-id-card-top {
  display: flex;
  align-items: center;
  gap: 13px;
  color: #a9beff;
  font-size: 11px;
  letter-spacing: 1.3px;
}

.visit-id-card-top i { font-size: 22px; }

.visit-id-card-symbol {
  display: flex;
  gap: 20px;
  align-items: center;
  margin: 47px 0;
  padding: 20px;
  border: 1px dashed rgba(184,204,255,.26);
  border-radius: 11px;
}

.visit-id-card-symbol > i {
  color: #afc7ff;
  font-size: 70px;
}

.visit-id-card-lines { display: grid; gap: 11px; flex: 1; }

.visit-id-card-lines span {
  display: block;
  height: 7px;
  border-radius: 5px;
  background: rgba(165,189,255,.26);
}

.visit-id-card-lines span:nth-child(2) { width: 80%; }
.visit-id-card-lines span:nth-child(3) { width: 55%; }

.visit-id-card h4 {
  margin-bottom: 17px;
  font-size: 25px;
}

.visit-id-card p { font-size: 14px; }

.visit-id-card-footer {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: auto;
  padding-top: 30px;
  color: #b4c9ff;
  font-size: 11px;
  letter-spacing: 1.3px;
}

.visit-id-information {
  padding: clamp(26px,3vw,40px);
  border: 1px solid var(--vg-border);
  border-radius: 12px;
  background: #151f40;
}

.visit-id-information h4 {
  margin-bottom: 17px;
  font-size: 28px;
}

.visit-id-information > p { margin-bottom: 27px; }

.visit-id-examples {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
}

.visit-id-examples > div {
  display: flex;
  align-items: center;
  gap: 15px;
  min-height: 85px;
  padding: 17px;
  background: rgba(255,255,255,.035);
  border: 1px solid var(--vg-border);
  border-radius: 8px;
}

.visit-id-examples i {
  color: #abc3ff;
  font-size: 22px;
}

.visit-id-examples span {
  color: #f2f5ff;
  font-size: 14px;
  line-height: 1.4;
}

.visit-id-warning {
  display: grid;
  grid-template-columns: 23px 1fr;
  gap: 16px;
  margin-top: 25px;
  padding: 20px;
  background: rgba(135,154,230,.07);
  border-left: 2px solid #9abaff;
}

.visit-id-warning i { color: #a6c0ff; font-size: 20px; }
.visit-id-warning p { font-size: 13px; }

/* ENTRY CONDITIONS */

.visit-conditions-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 15px;
}

.visit-condition {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 305px;
  padding: clamp(25px,3vw,38px);
  background: linear-gradient(145deg,#182348,#111a37);
  border: 1px solid var(--vg-border);
  border-radius: 11px;
}

.visit-condition-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  margin-bottom: 26px;
}

.visit-condition-top span {
  color: #9fb8f6;
  font-size: 10px;
  letter-spacing: 1.4px;
}

.visit-condition-top i {
  color: #abc3ff;
  font-size: 25px;
}

.visit-condition h4 {
  margin-bottom: 15px;
  font-size: 24px;
}

.visit-condition p { font-size: 14px; }

.visit-condition-foot {
  margin-top: auto;
  padding-top: 26px;
  color: #91aaf0;
  font-size: 10px;
  letter-spacing: 1.2px;
}

/* CHOICES */

.visit-choice-board {
  display: grid;
  grid-template-columns: 1.1fr .8fr .8fr;
  gap: 17px;
}

.visit-choice-main,
.visit-choice-tile {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 360px;
  padding: clamp(25px,3vw,39px);
  overflow: hidden;
  border: 1px solid var(--vg-border);
  border-radius: 12px;
}

.visit-choice-main {
  background: linear-gradient(140deg,#2a3673,#18254d);
}

.visit-choice-main-heading,
.visit-choice-tile-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: #b2c8ff;
  font-size: 10px;
  letter-spacing: 1.3px;
}

.visit-choice-main-heading i { font-size: 25px; }

.visit-choice-main h4 {
  margin: 70px 0 16px;
  font-size: 31px;
}

.visit-choice-main p {
  position: relative;
  z-index: 1;
  font-size: 14px;
}

.visit-choice-link {
  display: inline-flex;
  align-items: center;
  gap: 15px;
  margin-top: 22px;
  color: #d4e1ff;
  font-size: 13px;
}

.visit-choice-link:hover { color: #fff; }

.visit-choice-decoration {
  position: absolute;
  right: -70px;
  bottom: -80px;
  width: 230px;
  height: 230px;
  border: 1px solid rgba(188,205,255,.12);
  border-radius: 50%;
  pointer-events: none;
}

.visit-choice-decoration span {
  position: absolute;
  inset: 25px;
  border: 1px solid rgba(188,205,255,.1);
  border-radius: 50%;
}

.visit-choice-decoration span:nth-child(2) { inset: 55px; }
.visit-choice-decoration span:nth-child(3) { inset: 85px; }

.visit-choice-tile {
  color: #fff;
  background: #192348;
  transition: background .2s,transform .2s;
}

.visit-choice-tile:hover {
  color: #fff;
  background: #253366;
  transform: translateY(-3px);
}

.visit-choice-tile > i {
  margin: auto 0 28px;
  color: #b0c6ff;
  font-size: 36px;
}

.visit-choice-tile h4 {
  margin-bottom: 15px;
  font-size: 23px;
}

.visit-choice-tile p { font-size: 13px; }

/* PRACTICAL HELP */

.visit-practical-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 15px;
}

.visit-practical-item {
  position: relative;
  min-width: 0;
  padding: 29px 25px;
  background: #172142;
  border: 1px solid var(--vg-border);
  border-radius: 10px;
}

.visit-practical-number {
  position: absolute;
  top: 29px;
  right: 24px;
  color: #91a8dd;
  font-size: 11px;
}

.visit-practical-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  margin-bottom: 30px;
  color: #b0c7ff;
  background: rgba(139,161,250,.09);
  border: 1px solid rgba(163,184,255,.17);
  border-radius: 11px;
  font-size: 22px;
}

.visit-practical-item h4 {
  margin-bottom: 13px;
  font-size: 20px;
}

.visit-practical-item p { font-size: 13px; }

/* CHECKLIST */

.visit-guide-checklist {
  display: grid;
  grid-template-columns: minmax(0,.65fr) minmax(0,1.1fr);
  gap: clamp(35px,5vw,75px);
  padding: clamp(30px,4vw,57px);
  background:
    radial-gradient(circle at 0% 0%,rgba(117,100,223,.15),transparent 45%),
    #1a2650;
  border: 1px solid rgba(167,188,255,.25);
  border-radius: 14px;
}

.visit-checklist-heading h3 {
  margin: 17px 0;
  font-size: clamp(30px,3.3vw,44px);
}

.visit-checklist-heading p { font-size: 14px; }

.visit-checklist-counter {
  display: flex;
  align-items: baseline;
  gap: 13px;
  margin-top: 38px;
  color: #acc4ff;
}

.visit-checklist-counter span:first-child {
  font-size: 46px;
  font-variant-numeric: tabular-nums;
}

.visit-checklist-counter span:last-child {
  font-size: 11px;
  letter-spacing: 1.5px;
}

.visit-checklist-progress {
  height: 5px;
  margin-top: 15px;
  overflow: hidden;
  background: rgba(255,255,255,.14);
  border-radius: 5px;
}

#visit-checklist-fill {
  display: block;
  width: 0;
  height: 100%;
  background: linear-gradient(90deg,#87b1ff,#aea4ff);
  transition: width .25s ease;
}

.visit-checklist-items { display: grid; gap: 10px; }

.visit-checklist-item {
  display: flex;
  align-items: center;
  gap: 17px;
  min-height: 66px;
  padding: 16px 19px;
  cursor: pointer;
  color: #e3ebff;
  background: rgba(255,255,255,.045);
  border: 1px solid var(--vg-border);
  border-radius: 8px;
  font-size: 14px;
  line-height: 1.5;
}

.visit-check-input {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
}

.visit-check-box {
  display: flex;
  flex: 0 0 25px;
  align-items: center;
  justify-content: center;
  width: 25px;
  height: 25px;
  color: transparent;
  border: 1px solid #91a9ea;
  border-radius: 6px;
  font-size: 12px;
}

.visit-check-input:checked + .visit-check-box {
  color: #fff;
  background: #627ee0;
}

.visit-check-input:focus-visible + .visit-check-box {
  outline: 2px solid #fff;
  outline-offset: 3px;
}

.visit-checklist-reset {
  grid-column: 2;
  justify-self: start;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 10px 0;
  color: #bcd0ff;
  background: transparent;
  font-size: 13px;
  cursor: pointer;
}

/* ASSISTANCE */

.visit-guide-assistance {
  display: grid;
  grid-template-columns: minmax(0,1.2fr) minmax(0,.65fr);
  gap: clamp(30px,5vw,75px);
  align-items: start;
}

.visit-assistance-content h3 {
  margin: 17px 0 24px;
  font-size: clamp(32px,3.5vw,47px);
  line-height: 1.2;
}

.visit-assistance-content > p {
  margin-bottom: 19px;
}

.visit-assistance-services {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 29px;
}

.visit-assistance-services span {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 12px 15px;
  color: #d9e5ff;
  background: rgba(255,255,255,.045);
  border: 1px solid var(--vg-border);
  border-radius: 6px;
  font-size: 12px;
}

.visit-assistance-services i { color: #a6beff; }

.visit-assistance-contact {
  padding: clamp(27px,3.3vw,43px);
  background: linear-gradient(140deg,#253269,#182345);
  border: 1px solid rgba(165,184,255,.25);
  border-radius: 13px;
}

.visit-assistance-contact-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 55px;
  height: 55px;
  margin-bottom: 30px;
  color: #b1c7ff;
  border: 1px solid rgba(161,184,255,.26);
  border-radius: 50%;
  font-size: 23px;
}

.visit-assistance-contact > span {
  color: #a3bcff;
  font-size: 11px;
  letter-spacing: 1.4px;
}

.visit-assistance-contact h4 {
  margin: 14px 0 16px;
  font-size: 29px;
}

.visit-assistance-contact p { font-size: 14px; }

.visit-contact-number {
  margin-top: 27px;
  color: #fff;
  font-size: clamp(23px,2.6vw,35px);
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}

.visit-assistance-contact small {
  display: block;
  margin-top: 7px;
  color: #9db3e8;
  font-size: 10px;
  letter-spacing: 1.4px;
}

.visit-assistance-contact a {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  margin-top: 32px;
  padding-bottom: 9px;
  color: #d2e1ff;
  border-bottom: 1px solid rgba(191,209,255,.45);
  font-size: 13px;
}

.visit-assistance-contact a:hover { color: #fff; }

/* RESPONSIVE */

@media (max-width: 1150px) {
  .visit-journey-layout { grid-template-columns: 310px 1fr; }
  .visit-choice-board { grid-template-columns: 1fr 1fr; }
  .visit-choice-main { grid-column: 1 / -1; min-height: 310px; }
  .visit-choice-main h4 { margin-top: 45px; }
  .visit-practical-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 900px) {
  .visit-guide-intro,
  .visit-journey-layout,
  .visit-identification-layout,
  .visit-guide-assistance {
    grid-template-columns: 1fr;
  }

  .visit-guide-pass { max-width: 600px; }
  .visit-guide-checklist { grid-template-columns: 1fr; gap: 30px; }
  .visit-checklist-reset { grid-column: 1; }
  .visit-journey-display { min-height: 400px; }
}

@media (max-width: 650px) {
  .visit-guide { padding: 75px 5%; }

  .visit-guide-intro h2 {
    font-size: clamp(38px,9vw,53px);
    letter-spacing: -1px;
  }

  .visit-guide-intro-line {
    flex-wrap: wrap;
    gap: 13px;
    line-height: 1.5;
  }

  .visit-guide-heading h3 { font-size: 32px; }
  .visit-guide-pass-number { font-size: 95px; }

  .visit-journey-step { min-height: 82px; padding: 15px; }
  .visit-journey-display { padding: 27px 22px; }

  .visit-id-examples,
  .visit-conditions-grid,
  .visit-choice-board,
  .visit-practical-grid {
    grid-template-columns: 1fr;
  }

  .visit-choice-main { grid-column: auto; }
  .visit-choice-tile { min-height: 265px; }

  .visit-guide-checklist { padding: 28px 21px; }
  .visit-checklist-item { padding: 14px; }
  .visit-assistance-contact { padding: 29px 24px; }
}

@media (max-width: 390px) {
  .visit-journey-step {
    grid-template-columns: 34px minmax(0,1fr);
    gap: 11px;
  }

  .visit-journey-step > i { display: none; }
  .visit-journey-count { width: 34px; height: 34px; }
  .visit-id-card-symbol > i { font-size: 50px; }
  .visit-guide-pass { padding: 25px 22px; }
}

@media (prefers-reduced-motion: reduce) {
  .visit-guide *,
  .visit-guide *::before,
  .visit-guide *::after {
    animation: none !important;
    transition: none !important;
  }
}

/* ==================== FIRST VISIT GUIDE END ==================== */

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

.rewards-section {
  --rw-accent: #9bbaff;
  --rw-violet: #aaa1f4;
  --rw-text: #f6f8ff;
  --rw-muted: #aebbd9;
  --rw-border: rgba(156,180,255,.17);
  color: var(--rw-text);
  padding: clamp(76px,8vw,125px) 5%;
  overflow: hidden;
  background:
    radial-gradient(ellipse at 95% 5%,rgba(105,86,193,.16),transparent 36%),
    radial-gradient(ellipse at 0% 75%,rgba(42,87,174,.12),transparent 37%),
    linear-gradient(145deg,#0a1028,#121a39 54%,#0b112a);
}

.rewards-section *,
.rewards-section *::before,
.rewards-section *::after { box-sizing: border-box; }

.rewards-section a { text-decoration: none; }

.rewards-section h2,
.rewards-section h3,
.rewards-section h4 {
  color: #fff;
  font-weight: 500;
  text-shadow: none;
}

.rewards-section h2 span,
.rewards-section h3 span { color: #acbbff; }

.rewards-section p {
  color: var(--rw-muted);
  font-size: 15px;
  line-height: 1.85;
}

.rewards-shell { max-width: 1420px; margin: 0 auto; }

.rewards-eyebrow,
.rewards-index {
  color: var(--rw-accent);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1.7px;
}

/* Intro */

.rewards-intro {
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(300px,.85fr);
  gap: clamp(35px,6vw,95px);
  align-items: center;
}

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

.rewards-eyebrow i { font-size: 18px; }

.rewards-intro h2 {
  margin: 0 0 28px;
  font-size: clamp(42px,5.1vw,72px);
  line-height: 1.1;
  letter-spacing: -2px;
}

.rewards-intro-copy > p {
  max-width: 780px;
  margin-bottom: 17px;
}

.rewards-section .rewards-lead {
  color: #e8edff;
  font-size: clamp(17px,1.5vw,20px);
  line-height: 1.75;
}

.rewards-intro-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 30px;
}

.rewards-intro-tags span {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 10px 13px;
  color: #d4ddf7;
  background: rgba(255,255,255,.025);
  border: 1px solid var(--rw-border);
  border-radius: 6px;
  font-size: 12px;
}

.rewards-intro-tags i { color: var(--rw-accent); }

/* CSS Membership Card */

.rewards-card-stage {
  position: relative;
  min-width: 0;
  padding: 50px 12px 20px;
  perspective: 1000px;
}

.rewards-member-card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  max-width: 510px;
  aspect-ratio: 1.58;
  min-height: 270px;
  margin: auto;
  padding: clamp(24px,3vw,37px);
  overflow: hidden;
  background:
    radial-gradient(circle at 86% 15%,rgba(170,147,255,.32),transparent 55%),
    linear-gradient(125deg,#2e428b,#413991 55%,#192657);
  border: 1px solid rgba(216,221,255,.42);
  border-radius: 19px;
  box-shadow: 0 28px 70px rgba(0,0,0,.32);
  transform: rotate(-4deg);
  transition: transform .4s ease;
}

.rewards-member-card:hover { transform: rotate(0deg) translateY(-5px); }

.rewards-member-card::after {
  content: "";
  position: absolute;
  inset: 9px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 12px;
  pointer-events: none;
}

.rewards-member-card-top,
.rewards-member-card-bottom {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}

.rewards-member-card-top > span {
  color: #fff;
  font-size: clamp(15px,1.5vw,22px);
  font-weight: 600;
  letter-spacing: 2px;
}

.rewards-member-card-top i {
  color: #d5dcff;
  font-size: 25px;
}

.rewards-member-card-art {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.rewards-card-orbit {
  position: absolute;
  width: 240px;
  height: 240px;
  border: 1px solid rgba(226,229,255,.18);
  border-radius: 50%;
}

.rewards-card-orbit.orbit-two { width: 320px; height: 320px; }
.rewards-card-orbit.orbit-three { width: 410px; height: 410px; }

.rewards-member-card-art > i {
  color: rgba(227,229,255,.37);
  font-size: 86px;
}

.rewards-member-card-bottom > div span {
  display: block;
  margin-bottom: 7px;
  color: #bdcaff;
  font-size: 10px;
  letter-spacing: 1.2px;
}

.rewards-member-card-bottom strong {
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 1.2px;
}

.rewards-member-card-bottom > span {
  color: #e6eaff;
  font-size: 18px;
}

.rewards-card-caption {
  margin-top: 35px;
  text-align: center;
}

.rewards-card-caption span {
  color: #a2b9ed;
  font-size: 10px;
  letter-spacing: 1.3px;
}

.rewards-card-caption p { margin-top: 6px; font-size: 12px; }

/* Fact bar */

.rewards-facts {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 1px;
  margin-top: 75px;
  background: var(--rw-border);
  border: 1px solid var(--rw-border);
  border-radius: 11px;
  overflow: hidden;
}

.rewards-fact {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  min-height: 235px;
  padding: 29px 25px;
  background: #152043;
}

.rewards-fact i {
  color: var(--rw-accent);
  font-size: 25px;
  margin-bottom: 27px;
}

.rewards-fact > span {
  color: #9ab3ea;
  font-size: 10px;
  letter-spacing: 1.2px;
}

.rewards-fact h3 {
  margin: 12px 0;
  font-size: clamp(27px,2.65vw,39px);
  letter-spacing: -1px;
}

.rewards-fact p { font-size: 13px; line-height: 1.6; }

/* Shared section headings */

.rewards-enrollment,
.rewards-earning,
.rewards-converter,
.rewards-redemption,
.rewards-benefits,
.rewards-conditions {
  margin-top: clamp(85px,9vw,135px);
}

.rewards-heading { max-width: 930px; margin-bottom: 40px; }

.rewards-heading h3 {
  margin: 16px 0 20px;
  font-size: clamp(31px,3.5vw,48px);
  line-height: 1.2;
  letter-spacing: -1px;
}

.rewards-heading p { max-width: 850px; }

/* Enrollment */

.rewards-enrollment-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 17px;
}

.rewards-enrollment-item {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  min-height: 315px;
  padding: 32px;
  background: linear-gradient(145deg,#1d2956,#131d3d);
  border: 1px solid var(--rw-border);
  border-radius: 11px;
}

.rewards-enrollment-number {
  position: absolute;
  right: 29px;
  top: 29px;
  color: #8a9dd3;
  font-size: 12px;
}

.rewards-enrollment-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 53px;
  height: 53px;
  margin-bottom: 35px;
  background: rgba(135,162,255,.11);
  border: 1px solid var(--rw-border);
  border-radius: 12px;
  color: #a9c3ff;
  font-size: 23px;
}

.rewards-enrollment-item h4 { margin-bottom: 15px; font-size: 23px; }
.rewards-enrollment-item p { font-size: 14px; }

.rewards-enrollment-foot {
  width: 100%;
  margin-top: auto;
  padding-top: 25px;
  color: #9bb6f4;
  font-size: 10px;
  letter-spacing: 1.3px;
}

.rewards-enrollment-note {
  display: grid;
  grid-template-columns: 25px 1fr;
  gap: 15px;
  margin-top: 17px;
  padding: 20px 24px;
  background: rgba(125,149,237,.06);
  border-left: 2px solid #8fb3ff;
}

.rewards-enrollment-note i { color: var(--rw-accent); font-size: 21px; }
.rewards-enrollment-note p { font-size: 13px; }

/* Earning rates */

.rewards-earning-layout {
  display: grid;
  grid-template-columns: minmax(0,1.25fr) minmax(0,.75fr);
  gap: 20px;
}

.rewards-earning-main,
.rewards-earning-aside {
  min-width: 0;
  padding: clamp(28px,3.5vw,45px);
  border: 1px solid var(--rw-border);
  border-radius: 11px;
  background: #152043;
}

.rewards-earning-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  margin-bottom: 28px;
  color: #9ebaff;
  font-size: 11px;
  letter-spacing: 1.3px;
}

.rewards-earning-top i { font-size: 23px; }

.rewards-rate-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  min-height: 76px;
  padding: 16px 0;
  border-bottom: 1px solid var(--rw-border);
}

.rewards-rate-item > div {
  display: flex;
  align-items: center;
  gap: 15px;
  min-width: 0;
}

.rewards-rate-item i {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 37px;
  width: 37px;
  height: 37px;
  color: #a4bfff;
  background: rgba(131,158,242,.08);
  border-radius: 8px;
  font-size: 17px;
}

.rewards-rate-item span {
  color: #e4ebff;
  font-size: 14px;
  line-height: 1.5;
}

.rewards-rate-item strong {
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  white-space: nowrap;
}

.rewards-earning-main .rewards-earning-note {
  margin-top: 25px;
  font-size: 12px;
}

.rewards-earning-aside {
  background: linear-gradient(145deg,#283266,#172146);
}

.rewards-earning-aside-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 57px;
  height: 57px;
  margin-bottom: 30px;
  border: 1px solid rgba(171,191,255,.24);
  border-radius: 50%;
  color: #b4caff;
  font-size: 24px;
}

.rewards-earning-aside > span {
  color: #a7bbff;
  font-size: 11px;
  letter-spacing: 1.3px;
}

.rewards-earning-aside h4 {
  margin: 17px 0 21px;
  font-size: 28px;
  line-height: 1.3;
}

.rewards-earning-aside p { margin-bottom: 16px; font-size: 14px; }

/* Interactive converter */

.rewards-converter-layout {
  display: grid;
  grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr);
  gap: 20px;
}

.rewards-converter-tool,
.rewards-converter-rules {
  min-width: 0;
  padding: clamp(28px,3.5vw,48px);
  background: linear-gradient(145deg,#22316a,#151f43);
  border: 1px solid rgba(160,184,255,.25);
  border-radius: 12px;
}

.rewards-converter-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 38px;
  color: #adbeff;
  font-size: 11px;
  letter-spacing: 1.4px;
}

.rewards-converter-top i { font-size: 26px; }

.rewards-converter-tool label {
  display: block;
  margin-bottom: 14px;
  color: #e9efff;
  font-size: 15px;
}

.rewards-converter-input {
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 16px 21px;
  border: 1px solid rgba(165,189,255,.35);
  border-radius: 8px;
  background: #0f1839;
}

.rewards-converter-input input {
  width: 100%;
  min-width: 0;
  color: #fff;
  background: transparent;
  outline: none;
  border: none;
  font-size: clamp(28px,3.5vw,47px);
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}

.rewards-converter-input > span {
  color: #a5b9f0;
  font-size: 11px;
  letter-spacing: 1px;
}

.rewards-converter-shortcuts {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin: 17px 0 35px;
}

.rewards-converter-shortcuts button {
  padding: 9px 13px;
  color: #cedbff;
  border: 1px solid var(--rw-border);
  border-radius: 5px;
  background: rgba(255,255,255,.045);
  font-size: 12px;
  cursor: pointer;
}

.rewards-converter-shortcuts button:hover {
  color: #fff;
  background: #344583;
}

.rewards-converter-result {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 13px;
}

.rewards-converter-result > div {
  min-width: 0;
  padding: 22px;
  background: rgba(7,13,35,.52);
  border: 1px solid var(--rw-border);
  border-radius: 8px;
}

.rewards-converter-result span {
  display: block;
  min-height: 30px;
  margin-bottom: 13px;
  color: #9db1e2;
  font-size: 10px;
  line-height: 1.5;
  letter-spacing: 1px;
}

.rewards-converter-result strong {
  color: #fff;
  font-size: clamp(25px,3vw,40px);
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}

.rewards-converter-tool .rewards-converter-message {
  margin-top: 24px;
  font-size: 13px;
}

.rewards-converter-rules {
  background: #151f41;
}

.rewards-converter-rules > span {
  color: #a2bbff;
  font-size: 11px;
  letter-spacing: 1.3px;
}

.rewards-converter-rules h4 {
  margin: 13px 0 30px;
  font-size: 29px;
  line-height: 1.3;
}

.rewards-converter-rule {
  display: grid;
  grid-template-columns: 21px 1fr;
  gap: 14px;
  padding: 14px 0;
  border-bottom: 1px solid var(--rw-border);
}

.rewards-converter-rule i {
  padding-top: 5px;
  color: #a2baff;
  font-size: 16px;
}

.rewards-converter-rule p { font-size: 13px; }

.rewards-converter-disclaimer {
  margin-top: 25px;
  padding: 19px;
  background: rgba(134,157,241,.07);
  border-left: 2px solid #97b7ff;
  color: #b7c5e5;
  font-size: 12px;
  line-height: 1.75;
}

/* Redemption Steps */

.rewards-redemption-steps {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 15px;
}

.rewards-redemption-step {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 290px;
  padding: 30px 25px;
  background: #172143;
  border: 1px solid var(--rw-border);
  border-radius: 10px;
}

.rewards-redemption-step > span {
  align-self: flex-start;
  color: #a0b8fc;
  font-size: 12px;
}

.rewards-redemption-step > i {
  margin: 35px 0 30px;
  color: #b3c8ff;
  font-size: 28px;
}

.rewards-redemption-step h4 {
  margin-bottom: 14px;
  font-size: 20px;
}

.rewards-redemption-step p {
  font-size: 13px;
  line-height: 1.75;
}

.rewards-redemption-step::after {
  content: "";
  position: absolute;
  left: 25px;
  right: 25px;
  bottom: 0;
  height: 2px;
  background: linear-gradient(90deg,#8dafff,transparent);
}

/* Benefits */

.rewards-benefits-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 17px;
}

.rewards-benefit {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  padding: 33px;
  background: linear-gradient(150deg,#1e2b5b,#141d3c);
  border: 1px solid var(--rw-border);
  border-radius: 11px;
}

.rewards-benefit > span {
  color: #9cb7fa;
  font-size: 10px;
  letter-spacing: 1.3px;
}

.rewards-benefit > i {
  margin: 35px 0;
  color: #aec5ff;
  font-size: 29px;
}

.rewards-benefit h4 {
  margin-bottom: 15px;
  font-size: 24px;
}

.rewards-benefit p { font-size: 14px; }

/* Conditions */

.rewards-conditions-layout {
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(0,.7fr);
  gap: 28px;
  align-items: start;
}

.rewards-accordion {
  border-top: 1px solid var(--rw-border);
}

.rewards-accordion details {
  border-bottom: 1px solid var(--rw-border);
}

.rewards-accordion summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 8px;
  color: #f5f7ff;
  list-style: none;
  font-size: 16px;
  cursor: pointer;
}

.rewards-accordion summary::-webkit-details-marker { display: none; }

.rewards-accordion summary i {
  color: var(--rw-accent);
  font-size: 14px;
  transition: transform .2s;
}

.rewards-accordion details[open] summary i { transform: rotate(45deg); }

.rewards-accordion details p {
  padding: 0 12px 25px;
  font-size: 14px;
}

.rewards-conditions-note {
  padding: 34px;
  border: 1px solid rgba(164,185,255,.25);
  border-radius: 12px;
  background: linear-gradient(145deg,#28336c,#182248);
}

.rewards-conditions-note > i {
  display: block;
  margin-bottom: 30px;
  color: #afc5ff;
  font-size: 31px;
}

.rewards-conditions-note > span {
  color: #aabefd;
  font-size: 11px;
  letter-spacing: 1.3px;
}

.rewards-conditions-note h4 {
  margin: 15px 0 20px;
  font-size: 27px;
  line-height: 1.3;
}

.rewards-conditions-note p { margin-bottom: 15px; font-size: 14px; }

/* Footer */

.rewards-footer {
  display: grid;
  grid-template-columns: 75px minmax(0,1fr) auto;
  align-items: center;
  gap: 30px;
  margin-top: 95px;
  padding: clamp(30px,4vw,50px);
  border: 1px solid rgba(165,187,255,.26);
  border-radius: 11px;
  background: linear-gradient(110deg,#29376e,#18244e);
}

.rewards-footer-mark {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 75px;
  height: 75px;
  color: #bdd1ff;
  border: 1px solid rgba(185,202,255,.35);
  border-radius: 50%;
  font-size: 30px;
}

.rewards-footer > div:nth-child(2) > span {
  color: #aec3ff;
  font-size: 11px;
  letter-spacing: 1.4px;
}

.rewards-footer h3 { margin: 12px 0; font-size: 28px; }
.rewards-footer p { max-width: 700px; font-size: 13px; }

.rewards-footer a {
  display: inline-flex;
  align-items: center;
  gap: 15px;
  padding: 15px 19px;
  color: #fff;
  border: 1px solid rgba(188,204,255,.45);
  border-radius: 5px;
  font-size: 13px;
  white-space: nowrap;
}

.rewards-footer a:hover { color: #fff; background: rgba(162,187,255,.12); }

/* Responsive */

@media (max-width: 1150px) {
  .rewards-facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .rewards-redemption-steps { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .rewards-footer { grid-template-columns: 75px 1fr; }
  .rewards-footer a { grid-column: 2; justify-self: start; }
}

@media (max-width: 900px) {
  .rewards-intro,
  .rewards-earning-layout,
  .rewards-converter-layout,
  .rewards-conditions-layout {
    grid-template-columns: 1fr;
  }

  .rewards-card-stage { width: min(100%,560px); margin: auto; }
  .rewards-enrollment-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .rewards-benefits-grid { grid-template-columns: 1fr; }
}

@media (max-width: 650px) {
  .rewards-section { padding: 75px 5%; }

  .rewards-intro h2 {
    font-size: clamp(38px,9vw,53px);
    letter-spacing: -1px;
  }

  .rewards-facts,
  .rewards-enrollment-grid,
  .rewards-redemption-steps { grid-template-columns: 1fr; }

  .rewards-fact { min-height: auto; }
  .rewards-enrollment-item { min-height: auto; }
  .rewards-redemption-step { min-height: auto; }

  .rewards-rate-item { align-items: flex-start; flex-direction: column; }
  .rewards-rate-item strong { padding-left: 52px; }

  .rewards-converter-result { grid-template-columns: 1fr; }

  .rewards-footer {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .rewards-footer a { grid-column: auto; white-space: normal; }

  .rewards-member-card { min-height: 220px; }
  .rewards-member-card-art > i { font-size: 65px; }
}

@media (max-width: 390px) {
  .rewards-member-card {
    min-height: 190px;
    padding: 20px;
  }

  .rewards-member-card-top > span { font-size: 14px; }
  .rewards-member-card-bottom strong { font-size: 11px; }
  .rewards-converter-shortcuts button { padding: 8px; }
  .rewards-converter-input { padding: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  .rewards-section *,
  .rewards-section *::before,
  .rewards-section *::after {
    animation: none !important;
    transition: none !important;
  }
}

/* ==================== REWARDS SECTION END ==================== */


/* ==================== AURORA DINING ==================== */

.dining-section {
  --dn-blue:#9bbaff;
  --dn-violet:#aba2f4;
  --dn-muted:#abb9d8;
  --dn-line:rgba(158,182,255,.17);
  --dn-panel:#172144;
  padding:clamp(76px,8vw,125px) 5%;
  color:#f7f9ff;
  background:
    radial-gradient(ellipse at 90% 5%,rgba(101,85,194,.17),transparent 36%),
    radial-gradient(ellipse at 5% 75%,rgba(45,83,165,.12),transparent 40%),
    linear-gradient(145deg,#0a1028,#121a38 52%,#0a1129);
  overflow:hidden;
  isolation:isolate;
}

.dining-section *,
.dining-section *::before,
.dining-section *::after {box-sizing:border-box}

.dining-section [hidden]{display:none!important}
.dining-section a{text-decoration:none}

.dining-section h2,
.dining-section h3,
.dining-section h4,
.dining-section h5{
  color:#fff;
  font-weight:500;
  text-shadow:none;
}

.dining-section h2 span,
.dining-section h3 span {color:#abbaff}

.dining-section p{
  color:var(--dn-muted);
  font-size:15px;
  line-height:1.82;
}

.dining-shell{max-width:1420px;margin:auto}

.dining-eyebrow,.dining-index{
  color:var(--dn-blue);
  font-size:11px;
  font-weight:600;
  letter-spacing:1.7px;
}

/* INTRO */

.dining-intro{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  align-items:center;
  gap:clamp(35px,5vw,85px);
}

.dining-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:12px;
  margin-bottom:27px;
}

.dining-intro h2{
  margin:0 0 28px;
  font-size:clamp(42px,5.2vw,73px);
  letter-spacing:-2px;
  line-height:1.08;
}

.dining-intro-copy>p{
  max-width:750px;
  margin-bottom:18px;
}

.dining-section .dining-lead{
  color:#e9efff;
  font-size:clamp(17px,1.5vw,20px);
  line-height:1.75;
}

.dining-intro-features{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:32px;
}

.dining-intro-features span{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 13px;
  border:1px solid var(--dn-line);
  border-radius:5px;
  color:#cedbff;
  font-size:12px;
}

.dining-intro-features i{color:var(--dn-blue)}

/* PHOTO */

.dining-hero-image{
  position:relative;
  min-width:0;
  height:570px;
  margin:0;
  overflow:hidden;
  border:1px solid rgba(180,196,255,.2);
  border-radius:10px;
  background:#172142;
  box-shadow:0 25px 60px rgba(0,0,0,.22);
}

.dining-hero-image::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(8,12,32,.05) 20%,rgba(8,12,32,.85));
  pointer-events:none;
}

.dining-hero-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.dining-image-caption{
  position:absolute;
  z-index:2;
  left:35px;
  right:35px;
  bottom:35px;
}

.dining-image-caption span{
  display:block;
  margin-bottom:12px;
  color:#abc5ff;
  font-size:11px;
  letter-spacing:1.5px;
}

.dining-image-caption strong{
  display:block;
  max-width:450px;
  color:#fff;
  font-size:clamp(27px,2.8vw,40px);
  font-weight:500;
  line-height:1.22;
}

.dining-image-corner{
  position:absolute;
  top:28px;
  right:28px;
  z-index:2;
  color:#fff;
  font-size:10px;
  letter-spacing:1.5px;
}

/* SHARED */

.dining-identity,
.dining-menu,
.dining-specials,
.dining-happy-hour,
.dining-discounts,
.dining-atmosphere,
.dining-questions{
  margin-top:clamp(85px,9vw,130px);
}

.dining-heading{
  max-width:920px;
  margin-bottom:39px;
}

.dining-heading h3,
.dining-identity h3,
.dining-happy-content h3{
  margin:16px 0 20px;
  font-size:clamp(31px,3.4vw,47px);
  line-height:1.2;
  letter-spacing:-1px;
}

.dining-heading>p{max-width:840px}

/* IDENTITY */

.dining-identity{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.8fr);
  gap:clamp(30px,6vw,90px);
  align-items:start;
}

.dining-identity-main>p{
  margin-bottom:19px;
  font-size:16px;
}

.dining-identity-aside{
  padding:clamp(27px,3.5vw,44px);
  border:1px solid var(--dn-line);
  border-radius:10px;
  background:linear-gradient(145deg,#1c2855,#131c39);
}

.dining-identity-heading{
  display:flex;
  align-items:center;
  gap:15px;
  padding-bottom:25px;
  border-bottom:1px solid var(--dn-line);
  color:#afc5ff;
  font-size:11px;
  letter-spacing:1.3px;
}

.dining-identity-heading i{font-size:23px}

.dining-identity-feature{
  display:grid;
  grid-template-columns:27px 1fr;
  gap:16px;
  padding:21px 0;
  border-bottom:1px solid var(--dn-line);
}

.dining-identity-feature:last-child{border:0;padding-bottom:0}
.dining-identity-feature>span{color:#96b3fa;font-size:12px}
.dining-identity-feature h4{margin-bottom:7px;font-size:18px}
.dining-identity-feature p{font-size:13px}

/* MENU TABS */

.dining-menu-layout{
  display:grid;
  grid-template-columns:285px minmax(0,1fr);
  gap:20px;
  align-items:start;
}

.dining-menu-navigation{display:grid;gap:9px}

.dining-menu-tab{
  display:grid;
  grid-template-columns:24px 1fr 15px;
  gap:12px;
  align-items:center;
  min-width:0;
  min-height:77px;
  padding:17px;
  color:#fff;
  background:#172141;
  border:1px solid var(--dn-line);
  border-radius:7px;
  cursor:pointer;
  text-align:left;
}

.dining-menu-tab.is-active{
  background:linear-gradient(120deg,#303b79,#1c2956);
  border-color:#a0b8ff;
}

.dining-menu-tab>span,
.dining-menu-tab>i{color:#9cbaff;font-size:12px}
.dining-menu-tab strong{font-size:15px;font-weight:500;color:#fff}

.dining-menu-content{
  min-width:0;
  padding:clamp(24px,3.4vw,46px);
  background:linear-gradient(140deg,#19254c,#111a36);
  border:1px solid var(--dn-line);
  border-radius:10px;
}

.dining-menu-panel-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:18px;
}

.dining-menu-panel-head span{
  color:#9bb6f2;
  font-size:10px;
  letter-spacing:1.4px;
}

.dining-menu-panel-head h4{
  margin-top:9px;
  font-size:clamp(24px,2.5vw,35px);
}

.dining-menu-panel-head>i{font-size:26px;color:#a8c0ff}

.dining-menu-introduction{
  max-width:750px;
  margin-bottom:25px;
  font-size:14px!important;
}

.dining-menu-items{border-top:1px solid var(--dn-line)}

.dining-menu-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:25px;
  align-items:start;
  padding:20px 0;
  border-bottom:1px solid var(--dn-line);
}

.dining-menu-item h5{margin-bottom:6px;font-size:17px}
.dining-menu-item p{font-size:12px;line-height:1.6}
.dining-menu-item strong{color:#dce6ff;font-size:17px;font-weight:500;white-space:nowrap}

.dining-menu-footer{
  display:grid;
  grid-template-columns:22px 1fr;
  gap:12px;
  margin-top:22px;
}
.dining-menu-footer i{color:#abc2ff;font-size:17px}
.dining-menu-footer p{font-size:12px}

/* SPECIALS */

.dining-specials-layout{
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:20px;
}

.dining-specials-tabs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:11px;
}

.dining-special-button{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:space-between;
  min-width:0;
  min-height:160px;
  padding:23px;
  color:#fff;
  background:#192344;
  border:1px solid var(--dn-line);
  border-radius:9px;
  text-align:left;
  cursor:pointer;
  transition:transform .2s,border-color .2s;
}

.dining-special-button:hover{transform:translateY(-3px)}
.dining-special-button.is-active{
  background:linear-gradient(145deg,#303a78,#1b2853);
  border-color:#a0b8ff;
}

.dining-special-button>span{color:#a2baff;font-size:10px;letter-spacing:1.2px}
.dining-special-button strong{font-size:21px;font-weight:500;color:#fff}
.dining-special-button small{color:#aab8dd;font-size:12px}

.dining-special-display{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:clamp(27px,3.5vw,48px);
  background:
    radial-gradient(circle at 100% 0%,rgba(151,116,232,.15),transparent 52%),
    linear-gradient(135deg,#223169,#151e40);
  border:1px solid rgba(166,189,255,.25);
  border-radius:10px;
}

.dining-special-display-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  color:#aac0ff;
  font-size:10px;
  letter-spacing:1.4px;
}
.dining-special-display-head i{font-size:27px}

.dining-special-day{
  display:block;
  margin-top:34px;
  color:#aac1ff;
  font-size:11px;
  letter-spacing:1.4px;
}

.dining-special-display h4{margin:13px 0 18px;font-size:clamp(29px,3.3vw,45px)}
.dining-special-display>p{font-size:14px}

.dining-special-price{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:13px;
  margin:30px 0 20px;
  padding:22px 0;
  border-top:1px solid var(--dn-line);
  border-bottom:1px solid var(--dn-line);
}

.dining-special-price>span{width:100%;color:#9db4ea;font-size:10px;letter-spacing:1.3px}
.dining-special-price strong{color:#fff;font-size:clamp(37px,4vw,58px);font-weight:500;line-height:1}
.dining-special-price small{color:#b2c7ff;font-size:12px}

.dining-special-display .dining-special-note{margin-top:auto;font-size:12px}

.dining-daily-addition{
  display:grid;
  grid-template-columns:55px 1fr;
  gap:23px;
  align-items:center;
  margin-top:20px;
  padding:27px;
  border:1px solid var(--dn-line);
  border-radius:9px;
  background:rgba(255,255,255,.035);
}

.dining-daily-addition>i{color:#abc3ff;font-size:28px;text-align:center}
.dining-daily-addition span{color:#9fb9f4;font-size:10px;letter-spacing:1.3px}
.dining-daily-addition h4{margin:9px 0;font-size:21px}
.dining-daily-addition p{font-size:13px}

/* HAPPY HOUR */

.dining-happy-hour{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.8fr);
  gap:clamp(30px,6vw,85px);
  align-items:center;
}

.dining-happy-content>p{margin-bottom:19px;max-width:790px}

.dining-happy-clock{
  padding:clamp(27px,3.5vw,45px);
  border:1px solid rgba(176,193,255,.3);
  border-radius:12px;
  background:linear-gradient(145deg,#2c3878,#182448);
}

.dining-happy-clock-top{
  display:flex;
  align-items:center;
  gap:13px;
  color:#b7caff;
  font-size:11px;
  letter-spacing:1.3px;
}
.dining-happy-clock-top i{font-size:23px}

.dining-happy-time{
  display:flex;
  align-items:baseline;
  justify-content:center;
  gap:7px;
  margin:45px 0;
  white-space:nowrap;
}
.dining-happy-time strong{font-size:clamp(51px,6vw,86px);font-weight:500;line-height:1;color:#fff}
.dining-happy-time span{font-size:16px;color:#bacdff}
.dining-happy-time i{align-self:center;margin:0 8px;color:#aabaff;font-size:20px}

.dining-happy-rule{height:1px;background:var(--dn-line)}
.dining-happy-price{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:25px}
.dining-happy-price span{color:#a8bce8;font-size:11px;letter-spacing:1px}
.dining-happy-price strong{color:#fff;font-size:39px;font-weight:500}

/* DISCOUNTS */

.dining-discounts-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}

.dining-discount-card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-width:0;
  min-height:370px;
  padding:clamp(28px,3.5vw,44px);
  background:linear-gradient(145deg,#1c2955,#131c3a);
  border:1px solid var(--dn-line);
  border-radius:11px;
}

.dining-discount-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  width:100%;
  color:#a9beff;
  font-size:11px;
  letter-spacing:1.3px;
}
.dining-discount-top i{font-size:24px}

.dining-discount-number{margin:37px 0 18px;color:#fff;font-size:clamp(53px,6vw,83px);line-height:1;font-weight:500}
.dining-discount-number span{margin-left:9px;color:#a8baff;font-size:.2em;letter-spacing:1px}
.dining-discount-card h4{margin-bottom:14px;font-size:25px}
.dining-discount-card p{font-size:14px}

.dining-discount-footer{
  width:100%;
  margin-top:auto;
  padding-top:24px;
  color:#9cb6f4;
  border-top:1px solid var(--dn-line);
  font-size:10px;
  letter-spacing:1.3px;
}

.dining-discount-reminder{
  display:grid;
  grid-template-columns:23px minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  margin-top:19px;
  padding:24px;
  background:rgba(134,155,231,.065);
  border:1px solid var(--dn-line);
  border-radius:8px;
}

.dining-discount-reminder>i{color:#abc2ff;font-size:19px}
.dining-discount-reminder p{font-size:13px}
.dining-discount-reminder a{display:inline-flex;align-items:center;gap:12px;color:#c0d3ff;font-size:13px;white-space:nowrap}

/* ATMOSPHERE */

.dining-atmosphere-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.9fr);
  gap:35px;
  align-items:center;
}

.dining-stage-visual{
  min-width:0;
  padding:clamp(22px,3vw,40px);
  border:1px solid var(--dn-line);
  border-radius:10px;
  background:linear-gradient(150deg,#1c2857,#111a38);
}

.dining-stage-top,.dining-stage-footer{
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:13px;
  color:#a3b8ed;
  font-size:10px;
  letter-spacing:1.1px;
}

.dining-stage-scene{
  padding:43px 12px 37px;
  perspective:650px;
}

.dining-stage-platform{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:14px;
  width:70%;
  min-height:110px;
  margin:0 auto 40px;
  color:#d1ddff;
  border:1px solid rgba(184,203,255,.3);
  border-radius:6px;
  background:linear-gradient(135deg,#34458a,#202d63);
  box-shadow:0 12px 0 #101735,0 20px 28px rgba(0,0,0,.25);
}

.dining-stage-platform i{font-size:25px}
.dining-stage-platform span{font-size:10px;letter-spacing:1.4px}

.dining-stage-seating{display:flex;justify-content:space-around;gap:15px}
.dining-stage-seating>span{
  display:flex;
  justify-content:center;
  align-items:center;
  width:73px;
  height:53px;
  border:1px solid rgba(171,194,255,.28);
  border-radius:50%;
  color:#9bb8ff;
  background:#253468;
}
.dining-stage-seating i{font-size:12px}

.dining-stage-footer{padding-top:20px;border-top:1px solid var(--dn-line)}
.dining-stage-footer i{margin-right:6px;color:#a8c1ff}

.dining-atmosphere-text{border-top:1px solid var(--dn-line)}
.dining-atmosphere-item{
  display:grid;
  grid-template-columns:35px 1fr;
  gap:18px;
  padding:25px 0;
  border-bottom:1px solid var(--dn-line);
}
.dining-atmosphere-item>span{color:#9cb8fa;font-size:12px}
.dining-atmosphere-item h4{margin-bottom:9px;font-size:20px}
.dining-atmosphere-item p{font-size:14px}

/* FAQ */

.dining-questions-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px 25px;
}

.dining-question{border-bottom:1px solid var(--dn-line)}
.dining-question summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:23px 8px;
  color:#fff;
  font-size:16px;
  font-weight:500;
  list-style:none;
  cursor:pointer;
}
.dining-question summary::-webkit-details-marker{display:none}
.dining-question summary i{color:#9ebaff;font-size:13px;transition:transform .2s}
.dining-question[open] summary i{transform:rotate(45deg)}
.dining-question p{padding:0 10px 24px;font-size:13px}

/* CLOSING */

.dining-end{
  display:grid;
  grid-template-columns:70px minmax(0,1fr) auto;
  align-items:center;
  gap:30px;
  margin-top:100px;
  padding:clamp(28px,3.8vw,48px);
  background:linear-gradient(110deg,#27346e,#182347);
  border:1px solid rgba(170,190,255,.25);
  border-radius:10px;
}

.dining-end-mark{
  display:flex;
  align-items:center;
  justify-content:center;
  width:67px;
  height:67px;
  color:#b4caff;
  border:1px solid rgba(185,202,255,.35);
  border-radius:50%;
  font-size:25px;
}

.dining-end-content>span{color:#a9bfff;font-size:10px;letter-spacing:1.4px}
.dining-end h3{margin:12px 0;font-size:clamp(23px,2.6vw,35px)}
.dining-end p{font-size:13px;max-width:780px}

.dining-end>a{
  display:inline-flex;
  align-items:center;
  gap:14px;
  padding:15px 20px;
  border:1px solid rgba(199,211,255,.45);
  border-radius:5px;
  color:#fff;
  font-size:13px;
  white-space:nowrap;
}
.dining-end>a:hover{background:rgba(157,181,255,.13);color:#fff}

/* RESPONSIVE */

@media(max-width:1150px){
  .dining-menu-layout{grid-template-columns:240px minmax(0,1fr)}
  .dining-specials-layout{grid-template-columns:1fr}
  .dining-end{grid-template-columns:70px 1fr}
  .dining-end>a{grid-column:2;justify-self:start}
}

@media(max-width:900px){
  .dining-intro,.dining-identity,
  .dining-happy-hour,.dining-atmosphere-layout{grid-template-columns:1fr}
  .dining-hero-image{height:480px}
  .dining-menu-layout{grid-template-columns:1fr}
  .dining-menu-navigation{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dining-discount-reminder{grid-template-columns:23px 1fr}
  .dining-discount-reminder a{grid-column:2;justify-self:start}
}

@media(max-width:650px){
  .dining-section{padding:75px 5%}
  .dining-intro h2{font-size:clamp(39px,9vw,53px);letter-spacing:-1px}
  .dining-heading h3,.dining-identity h3,.dining-happy-content h3{font-size:32px}
  .dining-hero-image{height:370px}
  .dining-image-caption{left:23px;right:23px;bottom:23px}
  .dining-menu-navigation{grid-template-columns:1fr}
  .dining-menu-tab{min-height:63px}
  .dining-specials-tabs{gap:8px}
  .dining-special-button{min-height:145px;padding:16px}
  .dining-special-button strong{font-size:17px}
  .dining-discounts-grid,.dining-questions-grid{grid-template-columns:1fr}
  .dining-discount-card{min-height:0}
  .dining-happy-time{gap:5px}
  .dining-happy-time strong{font-size:58px}
  .dining-happy-time i{margin:0 5px;font-size:15px}
  .dining-end{grid-template-columns:1fr;gap:20px}
  .dining-end>a{grid-column:auto;white-space:normal}
}

@media(max-width:390px){
  .dining-menu-item{grid-template-columns:1fr;gap:6px}
  .dining-menu-item strong{font-size:16px}
  .dining-special-button{min-height:135px;padding:12px}
  .dining-special-button strong{font-size:15px}
  .dining-special-button small{font-size:11px}
  .dining-daily-addition{grid-template-columns:1fr}
  .dining-happy-time strong{font-size:46px}
  .dining-stage-top{font-size:9px}
  .dining-stage-platform{width:88%}
}

@media(prefers-reduced-motion:reduce){
  .dining-section *, .dining-section *::before,.dining-section *::after{
    animation:none!important;transition:none!important;
  }
}

/* ==================== DINING END ==================== */

/* ============ ENTERTAINMENT & EVENING ============ */

.evening-section {
  --ev-blue: #9bbaff;
  --ev-violet: #ada3f5;
  --ev-muted: #acbad9;
  --ev-line: rgba(159, 181, 255, .17);
  --ev-panel: #182349;

  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(78px, 8vw, 125px) 5%;
  background:
    radial-gradient(ellipse at 95% 6%, rgba(105, 83, 194, .16), transparent 37%),
    radial-gradient(ellipse at 3% 76%, rgba(42, 87, 170, .12), transparent 40%),
    linear-gradient(145deg, #090f26, #121a38 55%, #0a1129);
  color: #f8faff;
}

.evening-section *,
.evening-section *::before,
.evening-section *::after {
  box-sizing: border-box;
}

.evening-section [hidden] {
  display: none !important;
}

.evening-section a {
  text-decoration: none;
}

.evening-section h2,
.evening-section h3,
.evening-section h4,
.evening-section h5 {
  color: #fff;
  font-weight: 500;
  text-shadow: none;
}

.evening-section h2 span,
.evening-section h3 span,
.evening-section em {
  color: #b0baff;
  font-style: normal;
}

.evening-section p {
  color: var(--ev-muted);
  font-size: 15px;
  line-height: 1.85;
}

.evening-shell {
  width: 100%;
  max-width: 1420px;
  margin: 0 auto;
}

.evening-kicker,
.evening-index,
.evening-minor-label {
  color: var(--ev-blue);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1.7px;
}

/* ==================== INTRO ==================== */

.evening-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
  align-items: center;
  gap: clamp(35px, 5.5vw, 90px);
}

.evening-kicker {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 28px;
}

.evening-intro h2 {
  margin-bottom: 28px;
  font-size: clamp(41px, 5.1vw, 72px);
  line-height: 1.09;
  letter-spacing: -2px;
}

.evening-intro-copy > p {
  max-width: 770px;
  margin-bottom: 18px;
}

.evening-section .evening-lead {
  color: #e9eeff;
  font-size: clamp(17px, 1.5vw, 20px);
  line-height: 1.75;
}

.evening-intro-features {
  display: grid;
  gap: 12px;
  margin-top: 32px;
}

.evening-intro-features > div {
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 13px 0;
  border-bottom: 1px solid var(--ev-line);
}

.evening-intro-features i {
  width: 25px;
  color: #a6c1ff;
  font-size: 18px;
}

.evening-intro-features span {
  color: #c4d2f5;
  font-size: 11px;
  letter-spacing: 1.2px;
}

/* Hero photo */

.evening-hero {
  position: relative;
  min-height: 570px;
  overflow: hidden;
  border-radius: 12px;
  border: 1px solid rgba(171, 190, 255, .22);
  background: #172247;
  box-shadow: 0 28px 65px rgba(0,0,0,.25);
}

.evening-hero img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.evening-hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(6,10,29,.38),
    rgba(6,10,29,.06) 35%,
    rgba(7,11,32,.93)
  );
}

.evening-hero-top {
  position: absolute;
  top: 32px;
  left: 32px;
  display: flex;
  align-items: center;
  gap: 12px;
  color: #fff;
  font-size: 11px;
  letter-spacing: 1.4px;
}

.evening-live-dot {
  display: block;
  width: 8px;
  height: 8px;
  background: #93baff;
  border-radius: 50%;
  box-shadow: 0 0 14px #93baff;
}

.evening-hero-bottom {
  position: absolute;
  bottom: 40px;
  left: 36px;
  right: 36px;
}

.evening-hero-bottom > span {
  display: block;
  margin-bottom: 17px;
  color: #b2c9ff;
  font-size: 10px;
  letter-spacing: 1.5px;
}

.evening-hero-bottom h3 {
  max-width: 450px;
  font-size: clamp(29px, 3vw, 43px);
  line-height: 1.2;
}

/* ==================== SHARED HEADINGS ==================== */

.evening-music,
.evening-venue,
.evening-planner,
.evening-preparation,
.evening-questions {
  margin-top: clamp(90px, 9vw, 140px);
}

.evening-heading {
  max-width: 930px;
  margin-bottom: 42px;
}

.evening-heading h3 {
  margin: 17px 0 21px;
  font-size: clamp(32px, 3.5vw, 49px);
  letter-spacing: -1px;
  line-height: 1.2;
}

.evening-heading p {
  max-width: 840px;
}

/* ==================== MUSIC ==================== */

.evening-music-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  gap: 22px;
}

.evening-music-main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding: clamp(29px, 4vw, 55px);
  background: linear-gradient(145deg, #24326d, #172145);
  border: 1px solid rgba(170, 188, 255, .25);
  border-radius: 12px;
}

.evening-music-top {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  color: #b6caff;
  font-size: 11px;
  letter-spacing: 1.4px;
}

.evening-music-top i {
  font-size: 26px;
}

.evening-music-main h4 {
  max-width: 550px;
  margin: 35px 0 20px;
  font-size: clamp(27px, 2.9vw, 41px);
  line-height: 1.2;
}

.evening-music-main > p {
  margin-bottom: 18px;
}

.evening-audio-visual {
  margin-top: auto;
  padding-top: 40px;
}

.evening-audio-label,
.evening-audio-caption {
  display: block;
  color: #acbff0;
  font-size: 10px;
  letter-spacing: 1.4px;
}

.evening-waveform {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4px;
  height: 112px;
  margin: 16px 0;
  overflow: hidden;
  border-top: 1px solid rgba(166,189,255,.12);
  border-bottom: 1px solid rgba(166,189,255,.12);
}

.evening-waveform span {
  width: 4px;
  flex: 1;
  max-width: 8px;
  height: 30%;
  border-radius: 9px;
  background: linear-gradient(180deg, #c3b7ff, #76a9ff);
  opacity: .8;
  animation: evening-wave 1.6s ease-in-out infinite alternate;
}

.evening-waveform span:nth-child(4n+1) { height: 65%; animation-delay: -.4s; }
.evening-waveform span:nth-child(4n+2) { height: 38%; animation-delay: -.9s; }
.evening-waveform span:nth-child(4n+3) { height: 82%; animation-delay: -.2s; }
.evening-waveform span:nth-child(5n) { height: 22%; animation-delay: -1.1s; }

@keyframes evening-wave {
  from { transform: scaleY(.55); opacity: .45; }
  to { transform: scaleY(1); opacity: 1; }
}

.evening-music-aside {
  display: grid;
  gap: 13px;
}

.evening-feature {
  display: grid;
  grid-template-columns: 55px minmax(0,1fr);
  gap: 23px;
  min-width: 0;
  padding: clamp(25px, 2.7vw, 36px);
  background: #182346;
  border: 1px solid var(--ev-line);
  border-radius: 10px;
}

.evening-feature-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 53px;
  height: 53px;
  color: #b3c9ff;
  background: rgba(123,156,255,.1);
  border: 1px solid rgba(166,190,255,.18);
  border-radius: 12px;
  font-size: 22px;
}

.evening-feature span {
  color: #9bb7f7;
  font-size: 10px;
  letter-spacing: 1.3px;
}

.evening-feature h4 {
  margin: 10px 0;
  font-size: 21px;
}

.evening-feature p {
  font-size: 13px;
  line-height: 1.75;
}

/* ==================== VENUE ==================== */

.evening-venue-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, .9fr);
  gap: clamp(35px, 5vw, 75px);
  align-items: center;
}

.evening-stage-concept {
  min-width: 0;
  padding: clamp(23px, 3vw, 40px);
  background: linear-gradient(145deg, #1c2855, #111a38);
  border: 1px solid var(--ev-line);
  border-radius: 12px;
}

.evening-stage-header,
.evening-stage-bottom {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  color: #a4baec;
  font-size: 10px;
  letter-spacing: 1.1px;
}

.evening-stage-art {
  min-height: 340px;
  padding: 30px 10px 20px;
}

.evening-stage-lights {
  display: flex;
  justify-content: space-around;
  margin-bottom: 24px;
}

.evening-stage-lights span {
  width: 24px;
  height: 11px;
  background: #a5b5ff;
  border-radius: 3px;
  box-shadow: 0 15px 35px rgba(141,157,255,.4);
}

.evening-stage-platform {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 19px;
  width: 78%;
  min-height: 145px;
  margin: 0 auto 55px;
  color: #d8e2ff;
  border: 1px solid rgba(187,201,255,.35);
  border-radius: 8px;
  background: linear-gradient(135deg, #394887, #243367);
  box-shadow: 0 13px 0 #0b1230, 0 24px 30px rgba(0,0,0,.22);
}

.evening-stage-platform > i {
  font-size: 38px;
}

.evening-stage-platform > span {
  font-size: 11px;
  letter-spacing: 1.7px;
}

.evening-stage-seating {
  display: flex;
  justify-content: space-around;
  gap: 12px;
}

.evening-stage-seating > span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 70px;
  height: 50px;
  border: 1px solid rgba(170,191,255,.25);
  border-radius: 50%;
  background: #2a3974;
  color: #c4d6ff;
  font-size: 14px;
}

.evening-stage-bottom {
  padding-top: 23px;
  border-top: 1px solid var(--ev-line);
}

.evening-stage-bottom i {
  margin-right: 7px;
  color: #b0c6ff;
}

.evening-venue-copy h4 {
  margin: 20px 0 24px;
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.2;
}

.evening-venue-copy > p {
  margin-bottom: 18px;
}

.evening-venue-points {
  display: grid;
  gap: 15px;
  margin: 28px 0 30px;
}

.evening-venue-points > div {
  display: flex;
  align-items: center;
  gap: 16px;
  padding-bottom: 15px;
  border-bottom: 1px solid var(--ev-line);
}

.evening-venue-points i {
  width: 24px;
  color: #a7c1ff;
  font-size: 18px;
}

.evening-venue-points span {
  color: #e0e7fb;
  font-size: 14px;
}

.evening-text-link {
  display: inline-flex;
  align-items: center;
  gap: 18px;
  padding-bottom: 9px;
  color: #c7d7ff;
  border-bottom: 1px solid rgba(178,200,255,.5);
  font-size: 14px;
}

.evening-text-link:hover {
  color: #fff;
}

/* ==================== INTERACTIVE PLANNER ==================== */

.evening-planner {
  scroll-margin-top: 95px;
}

.evening-planner-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 13px;
  margin-bottom: 19px;
}

.evening-planner-tab {
  display: grid;
  grid-template-columns: 49px minmax(0,1fr);
  align-items: center;
  gap: 17px;
  min-width: 0;
  min-height: 95px;
  padding: 20px;
  color: #fff;
  text-align: left;
  background: #172245;
  border: 1px solid var(--ev-line);
  border-radius: 9px;
  cursor: pointer;
}

.evening-planner-tab.is-active {
  background: linear-gradient(125deg, #303b7d, #1d2c5d);
  border-color: #9db9ff;
}

.evening-planner-tab > i {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 47px;
  height: 47px;
  color: #b7ccff;
  border: 1px solid rgba(165,190,255,.2);
  border-radius: 50%;
  font-size: 20px;
}

.evening-planner-tab > span {
  display: grid;
  gap: 7px;
}

.evening-planner-tab strong {
  color: #fff;
  font-size: 17px;
  font-weight: 500;
}

.evening-planner-tab small {
  color: #a8b7db;
  font-size: 12px;
  line-height: 1.5;
}

.evening-plan-display {
  padding: clamp(26px, 4.5vw, 60px);
  background:
    radial-gradient(circle at 100% 0%, rgba(128,106,223,.15), transparent 45%),
    linear-gradient(145deg, #1d2a59, #131d3e);
  border: 1px solid rgba(161,184,255,.26);
  border-radius: 12px;
}

.evening-plan-intro {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 25px;
  padding-bottom: 38px;
  border-bottom: 1px solid var(--ev-line);
}

.evening-plan-intro > div:first-child {
  max-width: 820px;
}

.evening-plan-intro span {
  color: #acc2ff;
  font-size: 11px;
  letter-spacing: 1.4px;
}

.evening-plan-intro h4 {
  margin: 16px 0;
  font-size: clamp(28px, 3vw, 42px);
}

.evening-plan-intro p {
  max-width: 700px;
  font-size: 14px;
}

.evening-plan-illustration {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 110px;
  width: 110px;
  height: 110px;
}

.evening-plan-illustration > i {
  position: relative;
  z-index: 2;
  color: #c3d4ff;
  font-size: 31px;
}

.evening-orbit {
  position: absolute;
  border-radius: 50%;
  border: 1px solid rgba(178,196,255,.27);
}

.evening-orbit.orbit-a { inset: 12px; }
.evening-orbit.orbit-b { inset: 0; border-style: dashed; opacity: .6; }

.evening-timeline {
  display: grid;
  gap: 0;
  margin-top: 40px;
}

.evening-timeline-item {
  display: grid;
  grid-template-columns: 95px 26px minmax(0,1fr);
  gap: 20px;
  min-height: 125px;
}

.evening-timeline-time {
  padding-top: 4px;
  color: #e0eaff;
  font-size: 16px;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}

.evening-timeline-dot {
  position: relative;
}

.evening-timeline-dot::before {
  content: "";
  position: absolute;
  top: 7px;
  left: 50%;
  width: 11px;
  height: 11px;
  transform: translateX(-50%);
  background: #9cbcff;
  border-radius: 50%;
  box-shadow: 0 0 0 5px rgba(133,169,255,.1);
}

.evening-timeline-dot::after {
  content: "";
  position: absolute;
  top: 25px;
  bottom: 0;
  left: 50%;
  width: 1px;
  background: rgba(174,192,255,.22);
}

.evening-timeline-item:last-child .evening-timeline-dot::after {
  display: none;
}

.evening-timeline-content {
  padding-bottom: 35px;
}

.evening-timeline-content > span {
  color: #a1baff;
  font-size: 10px;
  letter-spacing: 1.3px;
}

.evening-timeline-content h5 {
  margin: 9px 0;
  font-size: 20px;
}

.evening-timeline-content p {
  max-width: 780px;
  font-size: 13px;
}

.evening-plan-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
  padding-top: 25px;
  border-top: 1px solid var(--ev-line);
}

.evening-plan-footer > div {
  display: grid;
  grid-template-columns: 20px 1fr;
  gap: 12px;
  max-width: 700px;
}

.evening-plan-footer i {
  color: #acc4ff;
}

.evening-plan-footer p {
  font-size: 12px;
}

.evening-copy-plan {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-width: 180px;
  padding: 14px 18px;
  border: 1px solid rgba(189,205,255,.4);
  border-radius: 5px;
  color: #fff;
  background: rgba(156,175,255,.09);
  font-size: 13px;
  cursor: pointer;
}

.evening-copy-plan:hover {
  background: rgba(156,175,255,.19);
}

/* ==================== PREPARATION ==================== */

.evening-prep-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 15px;
}

.evening-prep-item {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 29px 25px;
  background: #182346;
  border: 1px solid var(--ev-line);
  border-radius: 10px;
}

.evening-prep-item > span {
  position: absolute;
  top: 28px;
  right: 25px;
  color: #8fa5dc;
  font-size: 12px;
}

.evening-prep-item > i {
  margin-bottom: 36px;
  color: #abc5ff;
  font-size: 29px;
}

.evening-prep-item h4 {
  margin-bottom: 14px;
  font-size: 20px;
}

.evening-prep-item p {
  font-size: 13px;
  line-height: 1.75;
}

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

.evening-questions-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 9px 28px;
}

.evening-question {
  border-bottom: 1px solid var(--ev-line);
}

.evening-question summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 22px 7px;
  color: #f3f6ff;
  list-style: none;
  font-size: 16px;
  cursor: pointer;
}

.evening-question summary::-webkit-details-marker {
  display: none;
}

.evening-question summary i {
  color: #a8c2ff;
  font-size: 13px;
  transition: transform .2s;
}

.evening-question[open] summary i {
  transform: rotate(45deg);
}

.evening-question p {
  padding: 0 10px 24px;
  font-size: 13px;
}

/* ==================== CONTACT ==================== */

.evening-contact {
  display: grid;
  grid-template-columns: 75px minmax(0,1fr) auto;
  align-items: center;
  gap: 30px;
  margin-top: 95px;
  padding: clamp(30px, 4vw, 52px);
  background: linear-gradient(115deg, #2a3774, #19244c);
  border: 1px solid rgba(180,196,255,.25);
  border-radius: 11px;
}

.evening-contact-symbol {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 75px;
  height: 75px;
  color: #c1d1ff;
  border: 1px solid rgba(192,210,255,.32);
  border-radius: 50%;
  font-size: 27px;
}

.evening-contact-copy > span {
  color: #b1c7ff;
  font-size: 11px;
  letter-spacing: 1.3px;
}

.evening-contact h3 {
  margin: 12px 0;
  font-size: clamp(25px, 2.6vw, 36px);
}

.evening-contact p {
  max-width: 800px;
  font-size: 13px;
}

.evening-contact-link {
  display: inline-flex;
  align-items: center;
  gap: 15px;
  padding: 15px 20px;
  color: #fff;
  border: 1px solid rgba(199,213,255,.45);
  border-radius: 5px;
  font-size: 13px;
  white-space: nowrap;
}

.evening-contact-link:hover {
  color: #fff;
  background: rgba(169,187,255,.13);
}

/* ==================== RESPONSIVE ==================== */

@media (max-width: 1150px) {
  .evening-prep-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .evening-contact {
    grid-template-columns: 75px 1fr;
  }

  .evening-contact-link {
    grid-column: 2;
    justify-self: start;
  }
}

@media (max-width: 950px) {
  .evening-intro,
  .evening-music-layout,
  .evening-venue-layout {
    grid-template-columns: 1fr;
  }

  .evening-hero {
    min-height: 480px;
  }

  .evening-planner-tabs {
    gap: 9px;
  }

  .evening-planner-tab {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 700px) {
  .evening-section {
    padding: 75px 5%;
  }

  .evening-intro h2 {
    font-size: clamp(39px, 9vw, 53px);
    letter-spacing: -1px;
  }

  .evening-heading h3 {
    font-size: 33px;
  }

  .evening-hero {
    min-height: 370px;
  }

  .evening-hero-bottom {
    left: 25px;
    right: 25px;
    bottom: 27px;
  }

  .evening-feature {
    grid-template-columns: 48px 1fr;
    gap: 17px;
  }

  .evening-feature-icon {
    width: 47px;
    height: 47px;
  }

  .evening-planner-tabs {
    grid-template-columns: 1fr;
  }

  .evening-planner-tab {
    grid-template-columns: 47px 1fr;
    min-height: 75px;
  }

  .evening-plan-intro {
    align-items: flex-start;
  }

  .evening-plan-illustration {
    display: none;
  }

  .evening-plan-footer {
    align-items: stretch;
    flex-direction: column;
  }

  .evening-copy-plan {
    align-self: flex-start;
  }

  .evening-prep-grid,
  .evening-questions-grid {
    grid-template-columns: 1fr;
  }

  .evening-contact {
    grid-template-columns: 1fr;
    gap: 23px;
  }

  .evening-contact-link {
    grid-column: auto;
    white-space: normal;
  }
}

@media (max-width: 420px) {
  .evening-stage-art {
    min-height: 270px;
    padding: 20px 0;
  }

  .evening-stage-platform {
    width: 90%;
    min-height: 110px;
    margin-bottom: 40px;
  }

  .evening-stage-seating > span {
    width: 55px;
    height: 40px;
  }

  .evening-timeline-item {
    grid-template-columns: 67px 17px minmax(0,1fr);
    gap: 11px;
    min-height: 130px;
  }

  .evening-timeline-time {
    font-size: 13px;
  }

  .evening-timeline-content h5 {
    font-size: 17px;
  }

  .evening-plan-display {
    padding: 24px 18px;
  }

  .evening-music-main {
    padding: 29px 22px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .evening-section *,
  .evening-section *::before,
  .evening-section *::after {
    animation: none !important;
    transition: none !important;
  }
}

/* ============ ENTERTAINMENT & EVENING END ============ */

/* ==================== ACCOMMODATION ==================== */

.stay-section {
  --st-blue:#9dbaff;
  --st-violet:#aba4f6;
  --st-muted:#adbad9;
  --st-line:rgba(160,184,255,.17);
  --st-panel:#172143;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:clamp(76px,8vw,125px) 5%;
  color:#f5f8ff;
  background:
    radial-gradient(ellipse at 95% 4%,rgba(95,87,189,.16),transparent 35%),
    radial-gradient(ellipse at 4% 75%,rgba(56,87,166,.13),transparent 38%),
    linear-gradient(145deg,#0a1029,#121a38 55%,#0b122b);
}

.stay-section *,
.stay-section *::before,
.stay-section *::after { box-sizing:border-box; }

.stay-section a { text-decoration:none; }
.stay-section [hidden] { display:none!important; }

.stay-section h2,
.stay-section h3,
.stay-section h4 {
  color:#fff;
  font-weight:500;
  text-shadow:none;
}

.stay-section h2 span,
.stay-section h3 span { color:#aabaff; }

.stay-section p {
  color:var(--st-muted);
  font-size:15px;
  line-height:1.85;
}

.stay-shell { max-width:1420px; margin:auto; }
.stay-index,.stay-eyebrow {
  color:var(--st-blue);
  font-size:11px;
  font-weight:600;
  letter-spacing:1.6px;
}

.stay-heading { max-width:940px; margin-bottom:40px; }
.stay-heading h3 {
  margin:16px 0 20px;
  font-size:clamp(31px,3.5vw,48px);
  line-height:1.2;
  letter-spacing:-1px;
}
.stay-heading p { max-width:840px; }

/* INTRO */

.stay-intro {
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  gap:clamp(35px,5.5vw,85px);
  align-items:center;
}

.stay-eyebrow { display:flex; align-items:center; gap:13px; margin-bottom:28px; }
.stay-eyebrow-line { width:26px; height:1px; background:var(--st-blue); }
.stay-intro h2 {
  margin:0 0 28px;
  font-size:clamp(42px,5.1vw,72px);
  line-height:1.1;
  letter-spacing:-2px;
}
.stay-intro-copy > p { max-width:780px; margin-bottom:19px; }
.stay-intro-copy .stay-lead {
  color:#e5edff;
  font-size:clamp(17px,1.5vw,20px);
  line-height:1.75;
}

.stay-intro-signals { display:flex; flex-wrap:wrap; gap:9px; margin-top:32px; }
.stay-intro-signals span {
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border:1px solid var(--st-line);
  border-radius:5px;
  color:#d0dcfb;
  font-size:12px;
}
.stay-intro-signals i { color:var(--st-blue); }

/* LOCATION DIAGRAM */

.stay-proximity {
  padding:clamp(22px,3vw,36px);
  border:1px solid rgba(176,194,255,.26);
  border-radius:14px;
  background:
    radial-gradient(circle at 50% 50%,rgba(112,119,224,.12),transparent 70%),
    linear-gradient(155deg,#202e64,#131d3d);
  box-shadow:0 25px 65px rgba(0,0,0,.22);
}
.stay-proximity-top,.stay-proximity-bottom {
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:12px;
  color:#a7bff6;
  font-size:10px;
  line-height:1.6;
  letter-spacing:1.1px;
}
.stay-proximity-canvas {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:0;
  min-height:480px;
  padding:45px 12px;
}
.stay-location-node {
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:9px;
  width:min(100%,310px);
  min-height:128px;
  border:1px solid rgba(185,204,255,.3);
  border-radius:12px;
  background:linear-gradient(145deg,#33437f,#1b2a58);
  box-shadow:0 14px 26px rgba(3,8,28,.15);
}
.stay-location-node i { font-size:30px; color:#c3d3ff; }
.stay-location-node strong {
  color:#fff;
  font-size:17px;
  font-weight:500;
  letter-spacing:1px;
}
.stay-location-node small { color:#a6bff7; font-size:9px; letter-spacing:1.2px; }

.stay-location-casino { background:linear-gradient(145deg,#40428c,#242c63); }

.stay-location-route {
  display:flex;
  align-items:center;
  flex-direction:column;
  gap:10px;
  min-height:185px;
}
.stay-route-center {
  display:flex;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  border:1px solid rgba(160,190,255,.45);
  border-radius:50%;
  background:#1d2a58;
  color:#c2d7ff;
  font-size:16px;
}
.stay-route-line {
  width:2px;
  flex:1;
  min-height:30px;
  background:repeating-linear-gradient(to bottom,#a1c1ff 0 7px,transparent 7px 14px);
}
.stay-location-route > span {
  color:#b1c7fb;
  font-size:10px;
  letter-spacing:1.2px;
  text-align:center;
}
.stay-proximity-bottom {
  padding-top:20px;
  border-top:1px solid var(--st-line);
}
.stay-proximity-dot {
  display:inline-block;
  width:7px;
  height:7px;
  margin-right:6px;
  border-radius:50%;
  background:#9abaff;
  box-shadow:0 0 11px #9abaff;
}

/* COMMON SECTION SPACING */

.stay-location-story,.stay-rooms,.stay-package,
.stay-amenities,.stay-other-offers,.stay-booking,
.stay-practical,.stay-questions {
  margin-top:clamp(85px,9vw,135px);
}

/* LOCATION STORY */

.stay-location-grid {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.92fr);
  gap:clamp(35px,6vw,90px);
}
.stay-location-copy > p { margin-bottom:20px; font-size:16px; }
.stay-location-address {
  display:flex;
  align-items:flex-start;
  gap:19px;
  margin-top:33px;
  padding:24px;
  border-left:2px solid #98b9ff;
  background:rgba(151,175,246,.06);
}
.stay-location-address > i { color:#abc6ff; font-size:24px; }
.stay-location-address span { display:block; margin-bottom:9px; color:#a5bafa; font-size:10px; letter-spacing:1px; }
.stay-location-address strong { color:#fff; font-size:17px; font-weight:500; }
.stay-location-address p { font-size:13px; margin-top:5px; }

.stay-location-benefits { border-top:1px solid var(--st-line); }
.stay-location-benefits > div {
  display:grid;
  grid-template-columns:25px 38px minmax(0,1fr);
  gap:13px 17px;
  align-items:start;
  padding:25px 0;
  border-bottom:1px solid var(--st-line);
}
.stay-location-benefits span { color:#92acf0; font-size:11px; }
.stay-location-benefits i { color:#b0c6ff; font-size:23px; }
.stay-location-benefits h4 { font-size:21px; }
.stay-location-benefits p { grid-column:3; font-size:13px; }

/* ROOM TABS */

.stay-room-explorer {
  display:grid;
  grid-template-columns:350px minmax(0,1fr);
  gap:20px;
  align-items:stretch;
}
.stay-room-options { display:flex; flex-direction:column; gap:12px; }
.stay-room-tab {
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
  flex:1;
  min-width:0;
  padding:25px 26px;
  border:1px solid var(--st-line);
  border-radius:9px;
  background:#172143;
  text-align:left;
  cursor:pointer;
  transition:background .2s,border-color .2s,transform .2s;
}
.stay-room-tab:hover { transform:translateX(3px); }
.stay-room-tab.is-active {
  background:linear-gradient(125deg,#303d80,#1c2957);
  border-color:#9eb9ff;
}
.stay-room-tab > span { color:#a7bffc; font-size:10px; letter-spacing:1.3px; }
.stay-room-tab strong { max-width:270px; color:#fff; font-size:23px; font-weight:500; line-height:1.3; }
.stay-room-tab small { max-width:250px; color:#a9b8d9; font-size:13px; line-height:1.6; }
.stay-room-tab > i { position:absolute; right:23px; bottom:24px; color:#a9c3ff; }

.stay-room-display {
  min-width:0;
  padding:clamp(25px,3.7vw,49px);
  border:1px solid rgba(160,185,255,.24);
  border-radius:11px;
  background:
    radial-gradient(circle at 100% 0%,rgba(133,108,232,.12),transparent 55%),
    linear-gradient(145deg,#1d2b5b,#131d3d);
}
.stay-room-display-top {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  color:#a7c0ff;
  font-size:11px;
  letter-spacing:1.4px;
}
.stay-room-display-top i { font-size:23px; }

.stay-room-plan { padding:34px 0 23px; }
.stay-plan-frame {
  position:relative;
  width:min(100%,490px);
  height:230px;
  margin:auto;
  border:5px solid #7188c2;
  border-radius:5px;
  background:
    repeating-linear-gradient(0deg,transparent 0 21px,rgba(157,186,255,.04) 21px 22px),
    repeating-linear-gradient(90deg,transparent 0 21px,rgba(157,186,255,.04) 21px 22px),
    #1b2851;
  overflow:hidden;
}
.stay-plan-bed {
  position:absolute;
  top:30px;
  left:40px;
  display:flex;
  justify-content:space-around;
  padding:9px;
  width:145px;
  height:125px;
  border:2px solid #b7caff;
  border-radius:6px;
  background:#3c4a81;
}
.stay-plan-bed span {
  width:41%;
  height:28px;
  border-radius:4px;
  background:#abbef7;
}
.stay-plan-bed-two { display:none; }
.stay-plan-sofa {
  position:absolute;
  right:38px;
  bottom:39px;
  width:125px;
  height:43px;
  border:2px solid #9db9fc;
  border-radius:7px;
  background:#2c3c70;
}
.stay-plan-divider { display:none; }
.stay-plan-desk {
  position:absolute;
  right:34px;
  top:27px;
  width:95px;
  height:22px;
  border:1px solid #acbffa;
  background:#374875;
}
.stay-plan-bath {
  position:absolute;
  left:14px;
  bottom:14px;
  display:flex;
  justify-content:center;
  align-items:center;
  width:70px;
  height:43px;
  background:#253766;
  border:1px dashed #8eaef3;
  color:#c0d1ff;
}
.stay-plan-door {
  position:absolute;
  bottom:0;
  right:0;
  width:52px;
  height:4px;
  background:#aac4ff;
}

.stay-room-plan[data-layout="queens"] .stay-plan-bed-one {
  left:25px; top:42px; width:135px; height:113px;
}
.stay-room-plan[data-layout="queens"] .stay-plan-bed-two {
  display:flex; left:175px; top:42px; width:135px; height:113px;
}
.stay-room-plan[data-layout="queens"] .stay-plan-sofa { display:none; }
.stay-room-plan[data-layout="queens"] .stay-plan-desk {
  right:17px; top:25px; width:75px;
}

.stay-room-plan[data-layout="suite"] .stay-plan-divider {
  display:block;
  position:absolute;
  top:0; bottom:55px; left:51%;
  border-left:4px solid #7188c2;
}
.stay-room-plan[data-layout="suite"] .stay-plan-bed-one {
  left:26px; top:31px; width:145px; height:120px;
}
.stay-room-plan[data-layout="suite"] .stay-plan-sofa {
  right:24px; bottom:75px; width:120px;
}
.stay-room-plan[data-layout="suite"] .stay-plan-desk {
  right:22px; top:26px;
}

.stay-room-plan > small {
  display:block;
  margin-top:16px;
  color:#8099d3;
  font-size:9px;
  letter-spacing:1px;
  text-align:center;
}
.stay-room-description h4 { margin:7px 0 15px; font-size:clamp(25px,2.6vw,34px); }
.stay-room-description > p { font-size:14px; }
.stay-room-amenities { display:flex; flex-wrap:wrap; gap:9px; margin:22px 0; }
.stay-room-amenities span {
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  color:#d7e3ff;
  border:1px solid var(--st-line);
  border-radius:5px;
  font-size:12px;
}
.stay-room-amenities i { color:#a7bdff; }
.stay-room-description .stay-room-availability {
  color:#8fa5d5;
  font-size:12px;
}

/* CASINO PACKAGE */

.stay-package-layout {
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  gap:20px;
}
.stay-package-feature {
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:clamp(30px,4vw,55px);
  border:1px solid rgba(180,194,255,.3);
  border-radius:12px;
  background:
    radial-gradient(circle at 100% 0%,rgba(183,143,255,.18),transparent 50%),
    linear-gradient(150deg,#313d82,#1a2652);
}
.stay-package-top {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  color:#bdd0ff;
  font-size:11px;
  letter-spacing:1.4px;
}
.stay-package-top i { font-size:24px; }
.stay-package-number {
  margin:50px 0 4px;
  color:#fff;
  font-size:clamp(90px,11vw,150px);
  letter-spacing:-6px;
  line-height:1;
  font-weight:500;
}
.stay-package-number small {
  color:#aebfff;
  font-size:.36em;
  vertical-align:top;
  letter-spacing:0;
}
.stay-package-caption { color:#b5c8ff; font-size:11px; letter-spacing:1.5px; }
.stay-package-feature h4 { margin:43px 0 18px; font-size:clamp(26px,2.9vw,37px); }
.stay-package-feature p { max-width:570px; font-size:14px; }
.stay-package-footer {
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:10px;
  margin-top:auto;
  padding-top:33px;
  color:#b5c8fc;
  border-bottom:0;
  font-size:10px;
  letter-spacing:1.2px;
}

.stay-package-inclusions {
  padding:clamp(25px,3.4vw,45px);
  border:1px solid var(--st-line);
  border-radius:12px;
  background:#172143;
}
.stay-package-inclusions-top {
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:12px;
  margin-bottom:20px;
  padding-bottom:22px;
  border-bottom:1px solid var(--st-line);
  color:#9dbafa;
  font-size:10px;
  letter-spacing:1.3px;
}
.stay-package-inclusion {
  display:grid;
  grid-template-columns:50px 25px minmax(0,1fr);
  gap:14px;
  align-items:start;
  padding:22px 0;
  border-bottom:1px solid var(--st-line);
}
.stay-package-inclusion > div {
  display:flex;
  align-items:center;
  justify-content:center;
  width:48px;
  height:48px;
  color:#b8cbff;
  background:rgba(138,163,255,.1);
  border-radius:9px;
  font-size:21px;
}
.stay-package-inclusion > span { color:#91abee; font-size:11px; padding-top:7px; }
.stay-package-inclusion h4 { margin-bottom:10px; font-size:20px; }
.stay-package-inclusion p { font-size:13px; }
.stay-package-terms {
  display:grid;
  grid-template-columns:24px 1fr;
  gap:13px;
  margin-top:24px;
  padding:20px;
  background:rgba(145,175,255,.065);
  border-left:2px solid #9cbaff;
}
.stay-package-terms i { color:#adc6ff; font-size:20px; }
.stay-package-terms p { font-size:12px; }

/* HOTEL AMENITIES */

.stay-amenities-board {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  padding:1px;
  background:var(--st-line);
  border:1px solid var(--st-line);
  border-radius:11px;
  overflow:hidden;
}
.stay-amenity {
  min-width:0;
  min-height:235px;
  padding:31px;
  background:#162042;
}
.stay-amenity > i { display:block; margin-bottom:33px; color:#acc4ff; font-size:26px; }
.stay-amenity h4 { margin-bottom:13px; font-size:22px; }
.stay-amenity p { font-size:13px; }

/* HOTEL OFFERS */

.stay-offers-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:17px;
}
.stay-offers-grid article {
  display:flex;
  flex-direction:column;
  min-height:240px;
  min-width:0;
  padding:33px;
  background:linear-gradient(145deg,#1b2854,#111a37);
  border:1px solid var(--st-line);
  border-radius:10px;
}
.stay-offers-grid article > span { color:#a3bbf7; font-size:11px; letter-spacing:1.3px; }
.stay-offers-grid h4 { margin:24px 0 17px; font-size:clamp(28px,2.8vw,38px); }
.stay-offers-grid p { font-size:13px; }
.stay-section .stay-offers-disclaimer { margin-top:20px; font-size:12px; }

/* BOOKING GUIDE */

.stay-booking-layout {
  display:grid;
  grid-template-columns:340px minmax(0,1fr);
  gap:20px;
}
.stay-booking-steps { display:grid; gap:10px; }
.stay-booking-step {
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:8px 15px;
  align-items:center;
  min-height:82px;
  padding:18px;
  text-align:left;
  color:#fff;
  background:#172143;
  border:1px solid var(--st-line);
  border-radius:8px;
  cursor:pointer;
}
.stay-booking-step.is-active { border-color:#9ab9ff; background:#2b3976; }
.stay-booking-step > span {
  grid-row:span 2;
  color:#a1baff;
  font-size:13px;
}
.stay-booking-step strong { color:#fff; font-size:16px; font-weight:500; }
.stay-booking-step small { color:#aab9d9; font-size:12px; line-height:1.4; }

.stay-booking-display {
  display:flex;
  flex-direction:column;
  min-height:455px;
  padding:clamp(27px,4vw,52px);
  border:1px solid rgba(175,193,255,.24);
  border-radius:11px;
  background:linear-gradient(145deg,#1f2e60,#131d3c);
}
.stay-booking-display-top {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  color:#a9c0fb;
  font-size:11px;
  letter-spacing:1.4px;
}
.stay-booking-display-top i { font-size:26px; }
.stay-booking-display h4 {
  margin:44px 0 20px;
  font-size:clamp(27px,3vw,40px);
}
.stay-booking-display > p { max-width:750px; font-size:15px; }
.stay-booking-reminder {
  margin:30px 0 25px;
  padding:22px;
  border-left:2px solid #9bbdff;
  background:rgba(255,255,255,.046);
}
.stay-booking-reminder > span { color:#9fbaf6; font-size:10px; letter-spacing:1.3px; }
.stay-booking-reminder p { margin-top:9px; color:#dbe6ff; font-size:13px; }

.stay-booking-navigation {
  display:flex;
  align-items:center;
  gap:19px;
  margin-top:auto;
}
.stay-booking-navigation > span { color:#b1c7ff; font-size:12px; white-space:nowrap; }
.stay-booking-progress-track {
  flex:1;
  height:4px;
  overflow:hidden;
  background:rgba(255,255,255,.12);
  border-radius:5px;
}
.stay-booking-progress-track span {
  display:block;
  width:20%;
  height:100%;
  background:linear-gradient(90deg,#87b5ff,#ada5ff);
  transition:width .25s;
}
#stay-booking-next {
  display:inline-flex;
  align-items:center;
  gap:11px;
  padding:12px 17px;
  color:#fff;
  background:rgba(151,176,255,.12);
  border:1px solid var(--st-line);
  border-radius:5px;
  cursor:pointer;
  font-size:12px;
}

/* PRACTICAL INFORMATION */

.stay-practical-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:15px;
}
.stay-practical-grid article {
  min-width:0;
  padding:27px 23px;
  border:1px solid var(--st-line);
  border-radius:9px;
  background:#162143;
}
.stay-practical-grid span {
  display:block;
  margin-bottom:21px;
  color:#a2baf6;
  font-size:10px;
  letter-spacing:1.3px;
}
.stay-practical-grid strong {
  display:block;
  margin-bottom:13px;
  color:#fff;
  font-size:clamp(19px,2vw,25px);
  font-weight:500;
  overflow-wrap:anywhere;
}
.stay-practical-grid p { font-size:12px; }
.stay-practical-note {
  display:grid;
  grid-template-columns:26px 1fr;
  gap:14px;
  margin-top:20px;
  padding:21px;
  border-left:2px solid #9dbbff;
  background:rgba(146,168,240,.055);
}
.stay-practical-note i { font-size:22px; color:#aec6ff; }
.stay-practical-note p { font-size:13px; }

/* FAQ */

.stay-question-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 27px;
}
.stay-question-grid details { border-bottom:1px solid var(--st-line); }
.stay-question-grid summary {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  padding:22px 7px;
  color:#fff;
  font-size:16px;
  list-style:none;
  cursor:pointer;
}
.stay-question-grid summary::-webkit-details-marker { display:none; }
.stay-question-grid summary i { color:#a7bfff; font-size:13px; transition:transform .2s; }
.stay-question-grid details[open] summary i { transform:rotate(45deg); }
.stay-question-grid details p { padding:0 10px 25px; font-size:13px; }

/* CLOSING */

.stay-closing {
  display:grid;
  grid-template-columns:75px minmax(0,1fr) auto;
  align-items:center;
  gap:30px;
  margin-top:100px;
  padding:clamp(28px,4vw,48px);
  background:linear-gradient(115deg,#293773,#18254c);
  border:1px solid rgba(172,191,255,.28);
  border-radius:11px;
}
.stay-closing-symbol {
  display:flex;
  align-items:center;
  justify-content:center;
  width:75px;
  height:75px;
  border:1px solid rgba(182,204,255,.32);
  border-radius:50%;
  color:#c3d3ff;
  font-size:27px;
}
.stay-closing > div:nth-child(2) > span {
  color:#b0c5ff;
  font-size:11px;
  letter-spacing:1.3px;
}
.stay-closing h3 { margin:12px 0; font-size:clamp(24px,2.7vw,36px); }
.stay-closing p { max-width:750px; font-size:13px; }
.stay-closing a {
  display:inline-flex;
  align-items:center;
  gap:13px;
  padding:15px 19px;
  color:#fff;
  border:1px solid rgba(190,210,255,.46);
  border-radius:5px;
  white-space:nowrap;
  font-size:13px;
}
.stay-closing a:hover { color:#fff; background:rgba(161,188,255,.12); }

/* RESPONSIVE */

@media(max-width:1150px) {
  .stay-room-explorer { grid-template-columns:290px minmax(0,1fr); }
  .stay-practical-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .stay-closing { grid-template-columns:75px 1fr; }
  .stay-closing a { grid-column:2; justify-self:start; }
}

@media(max-width:950px) {
  .stay-intro,.stay-location-grid,.stay-package-layout { grid-template-columns:1fr; }
  .stay-proximity { max-width:650px; width:100%; }
  .stay-room-explorer,.stay-booking-layout { grid-template-columns:1fr; }
  .stay-room-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
  .stay-room-tab { min-height:175px; padding:20px; }
  .stay-room-tab strong { font-size:19px; }
  .stay-amenities-board { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media(max-width:700px) {
  .stay-section { padding:75px 5%; }
  .stay-intro h2 { font-size:clamp(39px,9vw,53px); letter-spacing:-1px; }
  .stay-heading h3 { font-size:32px; }
  .stay-room-options,.stay-offers-grid,.stay-question-grid { grid-template-columns:1fr; }
  .stay-room-tab { min-height:auto; }
  .stay-package-number { font-size:100px; }
  .stay-amenities-board { grid-template-columns:1fr; }
  .stay-amenity { min-height:auto; }
  .stay-practical-grid { grid-template-columns:1fr; }
  .stay-closing { grid-template-columns:1fr; gap:23px; }
  .stay-closing a { grid-column:auto; white-space:normal; }
}

@media(max-width:460px) {
  .stay-proximity-canvas { min-height:430px; padding:30px 0; }
  .stay-location-node { min-height:115px; }
  .stay-room-display { padding:22px 17px; }
  .stay-plan-frame { height:195px; }
  .stay-plan-bed-one { left:12px; top:27px; width:100px; height:103px; }
  .stay-plan-sofa { right:10px; width:75px; }
  .stay-plan-desk { right:10px; width:70px; }
  .stay-room-plan[data-layout="queens"] .stay-plan-bed-one {
    left:8px; top:42px; width:85px; height:90px;
  }
  .stay-room-plan[data-layout="queens"] .stay-plan-bed-two {
    left:101px; top:42px; width:85px; height:90px;
  }
  .stay-room-plan[data-layout="suite"] .stay-plan-bed-one {
    left:9px; top:31px; width:95px; height:101px;
  }
  .stay-room-plan[data-layout="suite"] .stay-plan-sofa {
    right:9px; width:77px;
  }
  .stay-package-inclusion { grid-template-columns:40px minmax(0,1fr); gap:12px; }
  .stay-package-inclusion > span { display:none; }
  .stay-package-inclusion > div { width:40px; height:40px; }
  .stay-booking-navigation { flex-wrap:wrap; }
  #stay-booking-next { width:100%; justify-content:center; }
}

@media(prefers-reduced-motion:reduce) {
  .stay-section *,
  .stay-section *::before,
  .stay-section *::after {
    transition:none!important;
    animation:none!important;
  }
}

/* ==================== ACCOMMODATION END ==================== */


/* ================ GUEST SERVICES ================ */

.services-section {
  --gs-blue: #9dbaff;
  --gs-violet: #aea5f5;
  --gs-text: #f5f8ff;
  --gs-muted: #aab9d8;
  --gs-line: rgba(158,183,255,.17);

  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(76px,8vw,125px) 5%;
  color: var(--gs-text);
  background:
    radial-gradient(ellipse at 92% 5%,rgba(92,83,183,.17),transparent 36%),
    radial-gradient(ellipse at 5% 75%,rgba(47,85,163,.13),transparent 39%),
    linear-gradient(145deg,#0a1028,#121b3a 54%,#0b122b);
}

.services-section *,
.services-section *::before,
.services-section *::after {
  box-sizing: border-box;
}

.services-section [hidden] { display: none !important; }
.services-section a { text-decoration: none; }

.services-section h2,
.services-section h3,
.services-section h4 {
  color: #fff;
  font-weight: 500;
  text-shadow: none;
}

.services-section h2 span,
.services-section h3 span { color: #abbcff; }

.services-section p {
  color: var(--gs-muted);
  font-size: 15px;
  line-height: 1.82;
}

.services-shell {
  width: 100%;
  max-width: 1420px;
  margin: 0 auto;
}

.services-kicker,
.services-index,
.services-small-label {
  color: var(--gs-blue);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1.6px;
}

/* INTRO */

.services-intro {
  display: grid;
  grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr);
  align-items: center;
  gap: clamp(35px,5.5vw,90px);
}

.services-kicker {
  display: inline-flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 29px;
}

.services-kicker-line {
  width: 28px;
  height: 1px;
  background: var(--gs-blue);
}

.services-intro h2 {
  margin: 0 0 28px;
  font-size: clamp(42px,5.2vw,73px);
  line-height: 1.09;
  letter-spacing: -2px;
}

.services-intro-copy > p {
  max-width: 760px;
  margin-bottom: 18px;
}

.services-section .services-lead {
  color: #e8eeff;
  font-size: clamp(17px,1.5vw,20px);
  line-height: 1.75;
}

.services-intro-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 32px;
}

.services-intro-pills span {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 11px 13px;
  border: 1px solid var(--gs-line);
  border-radius: 5px;
  color: #d2defa;
  font-size: 12px;
}

.services-intro-pills i { color: var(--gs-blue); }

/* SERVICES CONSOLE */

.services-console {
  min-width: 0;
  padding: 25px;
  border: 1px solid rgba(169,190,255,.26);
  border-radius: 16px;
  background:
    radial-gradient(circle at 50% 40%,rgba(116,107,219,.14),transparent 65%),
    linear-gradient(145deg,#23316b,#141e40);
  box-shadow: 0 25px 65px rgba(0,0,0,.2);
}

.services-console-header,
.services-console-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 13px;
}

.services-console-header {
  padding-bottom: 19px;
  border-bottom: 1px solid var(--gs-line);
  color: #aabfff;
  font-size: 10px;
  letter-spacing: 1.3px;
}

.services-console-lights {
  display: flex;
  gap: 7px;
}

.services-console-lights i {
  width: 7px;
  height: 7px;
  background: #8dafff;
  border-radius: 50%;
  opacity: .65;
}

.services-console-lights i:nth-child(2) { opacity: .35; }
.services-console-lights i:nth-child(3) { opacity: .2; }

.services-console-center {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 35px 0 31px;
  text-align: center;
}

.services-console-radar {
  position: relative;
  width: min(100%,340px);
  aspect-ratio: 1;
  margin-bottom: 23px;
}

.services-radar-circle {
  position: absolute;
  border: 1px solid rgba(162,184,255,.18);
  border-radius: 50%;
}

.services-radar-circle.radar-outer { inset: 5%; }
.services-radar-circle.radar-middle { inset: 22%; }
.services-radar-circle.radar-inner { inset: 38%; }

.services-console-radar::before,
.services-console-radar::after {
  content: "";
  position: absolute;
  background: rgba(168,189,255,.15);
}

.services-console-radar::before {
  top: 0;
  bottom: 0;
  left: 50%;
  width: 1px;
}

.services-console-radar::after {
  top: 50%;
  left: 0;
  right: 0;
  height: 1px;
}

.services-radar-core {
  position: absolute;
  z-index: 2;
  inset: 42%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #435498;
  border: 1px solid rgba(191,206,255,.45);
  border-radius: 50%;
  color: #fff;
  font-size: 20px;
  box-shadow: 0 0 35px rgba(125,147,248,.2);
}

.services-radar-point {
  position: absolute;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 47px;
  height: 47px;
  background: #293a76;
  color: #c2d3ff;
  border: 1px solid rgba(187,203,255,.32);
  border-radius: 12px;
  font-size: 20px;
}

.point-coffee { top: 7%; left: 42%; }
.point-parking { top: 39%; right: 5%; }
.point-security { bottom: 9%; left: 42%; }
.point-comfort { top: 39%; left: 5%; }

.services-console-center h3 {
  margin: 0 0 8px;
  font-size: 26px;
}

.services-console-center > p {
  font-size: 13px;
}

.services-console-footer {
  padding-top: 20px;
  border-top: 1px solid var(--gs-line);
}

.services-console-footer > div {
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.services-console-footer span {
  color: #d7e3ff;
  font-size: 19px;
}

.services-console-footer small {
  color: #9bb0e3;
  font-size: 10px;
  letter-spacing: 1.1px;
}

/* FACT STRIP */

.services-fact-strip {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 1px;
  margin-top: 68px;
  background: var(--gs-line);
  border: 1px solid var(--gs-line);
  border-radius: 11px;
  overflow: hidden;
}

.services-fact-strip > div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  padding: 30px 25px;
  background: #172143;
}

.services-fact-strip i {
  color: #adc5ff;
  font-size: 25px;
  margin-bottom: 26px;
}

.services-fact-strip span {
  margin-bottom: 11px;
  color: #91adeb;
  font-size: 10px;
  letter-spacing: 1.3px;
}

.services-fact-strip strong {
  color: #fff;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.45;
}

/* SHARED HEADINGS */

.services-directory,
.services-zones,
.services-support,
.services-safety,
.services-hotel,
.services-questions {
  margin-top: clamp(85px,9vw,135px);
}

.services-heading {
  max-width: 950px;
  margin-bottom: 40px;
}

.services-heading h3 {
  margin: 16px 0 20px;
  font-size: clamp(31px,3.5vw,48px);
  line-height: 1.2;
  letter-spacing: -1px;
}

.services-heading p { max-width: 830px; }

/* INTERACTIVE DIRECTORY */

.services-directory-layout {
  display: grid;
  grid-template-columns: minmax(300px,.78fr) minmax(0,1.22fr);
  gap: 19px;
  align-items: stretch;
}

.services-directory-nav {
  display: flex;
  flex-direction: column;
  gap: 9px;
}

.services-directory-tab {
  display: grid;
  grid-template-columns: 48px minmax(0,1fr) 15px;
  align-items: center;
  gap: 15px;
  flex: 1;
  width: 100%;
  min-height: 89px;
  padding: 17px;
  color: #fff;
  background: #172143;
  border: 1px solid var(--gs-line);
  border-radius: 9px;
  text-align: left;
  cursor: pointer;
  transition: background .2s,border-color .2s;
}

.services-directory-tab:hover {
  background: #223160;
}

.services-directory-tab.is-active {
  background: linear-gradient(120deg,#30407f,#1c2c5c);
  border-color: #9dbaff;
}

.services-nav-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 10px;
  background: rgba(144,171,255,.1);
  border: 1px solid rgba(164,184,255,.17);
  color: #b5caff;
  font-size: 21px;
}

.services-nav-text {
  display: flex;
  flex-direction: column;
  gap: 7px;
  min-width: 0;
}

.services-nav-text strong {
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
}

.services-nav-text small {
  color: #a9b7d9;
  font-size: 12px;
  line-height: 1.45;
}

.services-directory-tab > i {
  color: #a5beff;
  font-size: 12px;
}

.services-directory-display {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: clamp(28px,4vw,53px);
  background:
    radial-gradient(circle at 100% 0%,rgba(127,107,218,.14),transparent 48%),
    linear-gradient(145deg,#202e61,#131e3d);
  border: 1px solid rgba(162,187,255,.26);
  border-radius: 12px;
}

.services-display-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  color: #b0c6ff;
  font-size: 11px;
  letter-spacing: 1.3px;
}

.services-display-header i {
  color: #b9cfff;
  font-size: 31px;
}

.services-display-body {
  padding: 44px 0 30px;
}

.services-display-number {
  color: #92aff3;
  font-size: 12px;
}

.services-display-body h4 {
  max-width: 720px;
  margin: 15px 0 22px;
  font-size: clamp(27px,3.2vw,43px);
  line-height: 1.2;
}

.services-display-body > p {
  max-width: 760px;
}

.services-display-advice {
  margin-top: 36px;
  padding: 23px;
  background: rgba(255,255,255,.045);
  border-left: 2px solid #98b9ff;
}

.services-display-advice span {
  color: #acc3ff;
  font-size: 10px;
  letter-spacing: 1.3px;
}

.services-display-advice p {
  margin-top: 11px;
  font-size: 14px;
  color: #d3dfff;
}

.services-display-footer {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 25px;
  margin-top: auto;
  padding-top: 28px;
  border-top: 1px solid var(--gs-line);
}

.services-display-footer > div {
  flex: 1;
}

.services-display-footer > div > span {
  display: block;
  margin-bottom: 13px;
  color: #acc3ff;
  font-size: 12px;
}

.services-display-progress {
  height: 4px;
  max-width: 240px;
  overflow: hidden;
  border-radius: 5px;
  background: rgba(255,255,255,.15);
}

.services-display-progress span {
  display: block;
  width: 20%;
  height: 100%;
  background: linear-gradient(90deg,#85afff,#b0a5ff);
  transition: width .25s ease;
}

#services-directory-next {
  display: inline-flex;
  align-items: center;
  gap: 13px;
  padding: 14px 18px;
  color: #fff;
  background: rgba(164,185,255,.1);
  border: 1px solid rgba(170,195,255,.3);
  border-radius: 6px;
  font-size: 13px;
  cursor: pointer;
}

/* COMFORT ZONES */

.services-zones-layout {
  display: grid;
  grid-template-columns: minmax(0,1.05fr) minmax(0,.95fr);
  gap: clamp(30px,5vw,75px);
  align-items: center;
}

.services-zones-diagram {
  padding: clamp(25px,3vw,39px);
  background: linear-gradient(150deg,#1e2c5b,#121c3b);
  border: 1px solid var(--gs-line);
  border-radius: 12px;
}

.services-diagram-head {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  flex-wrap: wrap;
  color: #a2b9f1;
  font-size: 10px;
  letter-spacing: 1.1px;
}

.services-diagram-stage {
  display: grid;
  grid-template-columns: minmax(0,1fr) 38px minmax(0,1fr);
  gap: 8px;
  align-items: center;
  padding: 45px 0;
}

.services-diagram-zone {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 22px;
  min-width: 0;
  min-height: 190px;
  padding: 23px;
  border: 1px solid rgba(170,193,255,.22);
  border-radius: 9px;
  background: #28386f;
}

.zone-smoking { background: #222b58; }

.services-diagram-zone > div {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.services-diagram-zone i {
  color: #bed0ff;
  font-size: 27px;
}

.services-diagram-zone span {
  color: #aec4fc;
  font-size: 10px;
  letter-spacing: 1.1px;
  line-height: 1.5;
}

.services-diagram-zone strong {
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.4;
}

.services-diagram-divider {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 13px;
  color: #9eb8f3;
}

.services-diagram-divider span {
  width: 1px;
  height: 35px;
  background: var(--gs-line);
}

.services-diagram-restaurant {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 30px minmax(0,1fr) 23px;
  align-items: center;
  gap: 18px;
  margin-top: 9px;
  padding: 22px;
  background: rgba(147,167,245,.09);
  border: 1px dashed rgba(177,197,255,.3);
  border-radius: 9px;
}

.services-diagram-restaurant > i {
  color: #bbccff;
  font-size: 23px;
}

.services-diagram-restaurant span {
  display: block;
  margin-bottom: 7px;
  color: #a3bdf5;
  font-size: 10px;
  letter-spacing: 1px;
}

.services-diagram-restaurant strong {
  color: #fff;
  font-size: 17px;
  font-weight: 500;
}

.services-diagram-foot {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding-top: 21px;
  border-top: 1px solid var(--gs-line);
  color: #92a8d5;
  font-size: 11px;
  line-height: 1.7;
}

.services-diagram-foot i {
  margin-top: 3px;
  color: #a9c3ff;
}

.services-zones-information h4 {
  max-width: 620px;
  margin: 20px 0;
  font-size: clamp(27px,2.9vw,40px);
  line-height: 1.2;
}

.services-zones-information > p {
  margin-bottom: 23px;
}

.services-zone-points {
  border-top: 1px solid var(--gs-line);
}

.services-zone-points > div {
  display: grid;
  grid-template-columns: 31px 1fr;
  gap: 17px;
  padding: 17px 0;
  border-bottom: 1px solid var(--gs-line);
}

.services-zone-points span {
  color: #95b2f7;
  font-size: 12px;
}

.services-zone-points p { font-size: 13px; }

/* PERSONAL SUPPORT */

.services-support-grid {
  display: grid;
  grid-template-columns: minmax(0,1.2fr) repeat(2,minmax(0,.8fr));
  gap: 16px;
}

.services-support-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: clamp(25px,3vw,37px);
  background: #182346;
  border: 1px solid var(--gs-line);
  border-radius: 10px;
}

.services-support-feature {
  background: linear-gradient(145deg,#2a3977,#17234a);
}

.services-support-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-bottom: 39px;
}

.services-support-header span {
  color: #a8bfff;
  font-size: 10px;
  letter-spacing: 1.3px;
}

.services-support-header i {
  color: #b2c8ff;
  font-size: 25px;
}

.services-support-card h4 {
  margin-bottom: 17px;
  font-size: clamp(22px,2.3vw,31px);
}

.services-support-card p {
  margin-bottom: 14px;
  font-size: 14px;
}

.services-support-footer {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  margin-top: auto;
  padding-top: 25px;
  border-top: 1px solid var(--gs-line);
  color: #b1c5fc;
  font-size: 10px;
  letter-spacing: 1px;
}

/* PARKING AND SECURITY */

.services-safety {
  display: grid;
  grid-template-columns: minmax(0,1.05fr) minmax(0,.95fr);
  gap: clamp(30px,5vw,75px);
  align-items: center;
}

.services-safety-main h3 {
  margin: 17px 0 24px;
  font-size: clamp(32px,3.5vw,47px);
  line-height: 1.2;
}

.services-safety-main > p {
  margin-bottom: 18px;
}

.services-safety-steps {
  margin-top: 34px;
  border-top: 1px solid var(--gs-line);
}

.services-safety-steps > div {
  display: grid;
  grid-template-columns: 34px minmax(0,1fr);
  gap: 8px 17px;
  padding: 21px 0;
  border-bottom: 1px solid var(--gs-line);
}

.services-safety-steps span {
  grid-row: span 2;
  color: #9fbaff;
  font-size: 12px;
}

.services-safety-steps strong {
  color: #fff;
  font-size: 18px;
  font-weight: 500;
}

.services-safety-steps p {
  font-size: 13px;
}

.services-safety-visual {
  min-width: 0;
  padding: clamp(25px,3.5vw,43px);
  background: linear-gradient(145deg,#25346e,#172146);
  border: 1px solid rgba(171,191,255,.28);
  border-radius: 12px;
}

.services-safety-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  color: #afc6ff;
  font-size: 10px;
  letter-spacing: 1.3px;
}

.services-safety-top i {
  font-size: 27px;
}

.services-parking-illustration {
  position: relative;
  min-height: 320px;
  margin: 30px 0;
  padding: 27px;
  border: 1px solid rgba(173,194,255,.17);
  border-radius: 9px;
  background:
    repeating-linear-gradient(
      90deg,
      rgba(137,167,255,.04) 0 2px,
      transparent 2px 48px
    ),
    #111b3c;
}

.services-parking-lanes {
  display: flex;
  justify-content: space-around;
  gap: 10px;
}

.services-parking-lanes span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26%;
  height: 75px;
  color: rgba(166,190,255,.65);
  border: 1px solid rgba(160,187,255,.28);
  border-bottom: 0;
  font-size: 22px;
}

.services-parking-route {
  position: relative;
  height: 150px;
}

.services-parking-path {
  position: absolute;
  top: 65px;
  left: 18%;
  right: 18%;
  border-top: 2px dashed #92b6ff;
}

.services-parking-person,
.services-parking-car {
  position: absolute;
  top: 39px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 53px;
  height: 53px;
  background: #344783;
  border: 1px solid #809cde;
  border-radius: 50%;
  color: #fff;
  font-size: 22px;
}

.services-parking-person { left: 6%; }
.services-parking-car { right: 6%; }

.services-safety-bottom {
  padding-top: 22px;
  border-top: 1px solid var(--gs-line);
}

.services-safety-bottom span {
  color: #b0c6ff;
  font-size: 11px;
  letter-spacing: 1.2px;
}

.services-safety-bottom p {
  margin-top: 10px;
  font-size: 12px;
}

/* HOTEL BENEFITS */

.services-hotel {
  display: grid;
  grid-template-columns: 110px minmax(0,1fr) auto;
  align-items: center;
  gap: clamp(23px,3vw,45px);
  padding: clamp(30px,4vw,52px);
  background: linear-gradient(115deg,#293772,#19254e);
  border: 1px solid rgba(173,194,255,.24);
  border-radius: 12px;
}

.services-hotel-symbol {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 105px;
  height: 105px;
}

.services-hotel-symbol > div {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  border: 1px solid rgba(187,206,255,.35);
  color: #c6d7ff;
  font-size: 30px;
}

.services-hotel-orbit {
  position: absolute;
  inset: 0;
  border: 1px dashed rgba(185,206,255,.22);
  border-radius: 50%;
}

.services-hotel-copy h3 {
  margin: 13px 0 18px;
  font-size: clamp(27px,3vw,40px);
}

.services-hotel-copy p {
  max-width: 880px;
  margin-bottom: 13px;
  font-size: 14px;
}

.services-hotel-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  padding: 15px 18px;
  color: #fff;
  border: 1px solid rgba(190,208,255,.47);
  border-radius: 5px;
  font-size: 13px;
  white-space: nowrap;
}

.services-hotel-link:hover {
  color: #fff;
  background: rgba(158,186,255,.13);
}

/* FAQ */

.services-questions-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px 27px;
}

.services-question {
  border-bottom: 1px solid var(--gs-line);
}

.services-question summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 17px;
  padding: 23px 7px;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  list-style: none;
  cursor: pointer;
}

.services-question summary::-webkit-details-marker {
  display: none;
}

.services-question summary i {
  color: #a7c0ff;
  font-size: 13px;
  transition: transform .2s ease;
}

.services-question[open] summary i {
  transform: rotate(45deg);
}

.services-question p {
  padding: 0 10px 25px;
  font-size: 13px;
}

/* CLOSING */

.services-closing {
  display: grid;
  grid-template-columns: 76px minmax(0,1fr) auto;
  gap: 30px;
  align-items: center;
  margin-top: 100px;
  padding: clamp(28px,4vw,49px);
  background: linear-gradient(115deg,#25336b,#172244);
  border: 1px solid rgba(169,191,255,.24);
  border-radius: 11px;
}

.services-closing-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 75px;
  height: 75px;
  border: 1px solid rgba(187,207,255,.32);
  border-radius: 50%;
  color: #bed0ff;
  font-size: 29px;
}

.services-closing-copy > span {
  color: #abc3ff;
  font-size: 10px;
  letter-spacing: 1.4px;
}

.services-closing h3 {
  margin: 12px 0 15px;
  font-size: clamp(25px,2.5vw,35px);
}

.services-closing p {
  max-width: 750px;
  font-size: 13px;
}

.services-closing-contact {
  display: flex;
  flex-wrap: wrap;
  gap: 11px 24px;
  margin-top: 21px;
}

.services-closing-contact span {
  color: #c0d3ff;
  font-size: 11px;
  letter-spacing: .7px;
}

.services-closing-link {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  padding: 15px 19px;
  color: #fff;
  border: 1px solid rgba(193,210,255,.44);
  border-radius: 5px;
  font-size: 13px;
  white-space: nowrap;
}

.services-closing-link:hover {
  color: #fff;
  background: rgba(169,193,255,.13);
}

/* RESPONSIVE */

@media (max-width: 1180px) {
  .services-fact-strip {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

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

  .services-support-feature {
    grid-column: 1 / -1;
  }

  .services-hotel {
    grid-template-columns: 100px minmax(0,1fr);
  }

  .services-hotel-link {
    grid-column: 2;
    justify-self: start;
  }

  .services-closing {
    grid-template-columns: 75px minmax(0,1fr);
  }

  .services-closing-link {
    grid-column: 2;
    justify-self: start;
  }
}

@media (max-width: 950px) {
  .services-intro,
  .services-directory-layout,
  .services-zones-layout,
  .services-safety {
    grid-template-columns: 1fr;
  }

  .services-console {
    width: min(100%,620px);
  }

  .services-directory-nav {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .services-directory-tab {
    min-height: 95px;
  }

  .services-directory-display {
    min-height: 460px;
  }

  .services-zones-diagram,
  .services-safety-visual {
    max-width: 750px;
  }
}

@media (max-width: 650px) {
  .services-section { padding: 75px 5%; }

  .services-intro h2 {
    font-size: clamp(39px,9vw,53px);
    letter-spacing: -1px;
  }

  .services-heading h3 {
    font-size: 32px;
  }

  .services-fact-strip,
  .services-directory-nav,
  .services-support-grid,
  .services-questions-grid {
    grid-template-columns: 1fr;
  }

  .services-support-feature { grid-column: auto; }

  .services-fact-strip > div {
    min-height: auto;
  }

  .services-directory-tab { min-height: 77px; }

  .services-directory-display {
    min-height: 450px;
    padding: 29px 22px;
  }

  .services-display-body { padding-top: 32px; }

  .services-display-footer {
    align-items: stretch;
    flex-direction: column;
  }

  .services-display-progress { max-width: none; }

  #services-directory-next {
    justify-content: center;
  }

  .services-diagram-zone {
    padding: 15px 11px;
    min-height: 150px;
  }

  .services-diagram-zone strong {
    font-size: 13px;
  }

  .services-diagram-zone i {
    font-size: 22px;
  }

  .services-diagram-stage {
    grid-template-columns: minmax(0,1fr) 25px minmax(0,1fr);
  }

  .services-diagram-divider { font-size: 12px; }

  .services-diagram-restaurant {
    gap: 10px;
    padding: 17px 12px;
  }

  .services-diagram-restaurant strong {
    font-size: 14px;
  }

  .services-hotel,
  .services-closing {
    grid-template-columns: 1fr;
    gap: 23px;
  }

  .services-hotel-link,
  .services-closing-link {
    grid-column: auto;
    justify-self: start;
    white-space: normal;
  }
}

@media (max-width: 390px) {
  .services-console { padding: 18px; }

  .services-console-radar { width: 260px; }

  .services-radar-point {
    width: 38px;
    height: 38px;
    font-size: 16px;
  }

  .services-console-footer small {
    font-size: 9px;
  }

  .services-nav-text strong {
    font-size: 14px;
  }

  .services-nav-text small {
    font-size: 11px;
  }

  .services-diagram-zone span {
    font-size: 9px;
  }

  .services-parking-illustration { padding: 17px; }
}

@media (prefers-reduced-motion: reduce) {
  .services-section *,
  .services-section *::before,
  .services-section *::after {
    animation: none !important;
    transition: none !important;
  }
}

/* ================ GUEST SERVICES END ================ */

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

.faq-section {
  --fq-accent: #9cbaff;
  --fq-muted: #a9b8d8;
  --fq-border: rgba(157, 181, 255, .17);

  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(80px, 8vw, 125px) 5%;
  color: #f6f8ff;
  background:
    radial-gradient(ellipse at 92% 12%, rgba(101, 89, 200, .14), transparent 38%),
    radial-gradient(ellipse at 5% 90%, rgba(52, 89, 171, .12), transparent 40%),
    linear-gradient(145deg, #0a1028, #131b39 60%, #0b1129);
}

.faq-section *,
.faq-section *::before,
.faq-section *::after {
  box-sizing: border-box;
}

.faq-section [hidden] {
  display: none !important;
}

.faq-section a {
  text-decoration: none;
}

.faq-section h2,
.faq-section h3,
.faq-section h4 {
  color: #fff;
  font-weight: 500;
  text-shadow: none;
}

.faq-section h2 span {
  color: #acbbff;
}

.faq-section p {
  color: var(--fq-muted);
  font-size: 15px;
  line-height: 1.8;
}

.faq-shell {
  max-width: 1300px;
  width: 100%;
  margin: 0 auto;
}

.faq-screenreader {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

/* HEADER */

.faq-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 150px;
  align-items: center;
  gap: 35px;
  margin-bottom: 52px;
}

.faq-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 25px;
  color: var(--fq-accent);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1.7px;
}

.faq-eyebrow-dot {
  width: 8px;
  height: 8px;
  background: #9bbcff;
  border-radius: 50%;
  box-shadow: 0 0 15px rgba(155, 188, 255, .65);
}

.faq-heading h2 {
  margin: 0 0 23px;
  font-size: clamp(42px, 5.2vw, 70px);
  line-height: 1.1;
  letter-spacing: -1.8px;
}

.faq-heading-copy > p {
  max-width: 740px;
  font-size: 17px;
}

.faq-heading-mark {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 145px;
  height: 145px;
  color: #bed0ff;
}

.faq-heading-ring {
  position: absolute;
  inset: 0;
  border: 1px dashed rgba(170, 195, 255, .27);
  border-radius: 50%;
}

.faq-heading-ring::before {
  content: "";
  position: absolute;
  inset: 18px;
  border: 1px solid rgba(170, 195, 255, .28);
  border-radius: 50%;
}

.faq-heading-mark > i {
  font-size: 53px;
  font-weight: 400;
}

.faq-heading-mark small {
  position: absolute;
  bottom: -10px;
  color: #869ed4;
  font-size: 10px;
  letter-spacing: 2px;
}

/* SEARCH */

.faq-tools {
  margin-bottom: 15px;
}

.faq-search {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 75px;
  padding: 0 25px;
  background: #192449;
  border: 1px solid rgba(164, 185, 255, .28);
  border-radius: 10px;
  transition: border-color .2s ease;
}

.faq-search:focus-within {
  border-color: #a3baff;
}

.faq-search > i {
  flex: 0 0 25px;
  color: #a7c0ff;
  font-size: 20px;
}

.faq-search input {
  min-width: 0;
  flex: 1;
  height: 73px;
  padding: 0 15px;
  border: none;
  outline: none;
  color: #fff;
  background: transparent;
  font: inherit;
  font-size: 16px;
}

.faq-search input::placeholder {
  color: #8497c3;
}

.faq-search button {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 34px;
  width: 34px;
  height: 34px;
  padding: 0;
  border: 1px solid var(--fq-border);
  border-radius: 6px;
  color: #b5c9ff;
  background: rgba(255, 255, 255, .04);
  cursor: pointer;
}

/* FILTERS */

.faq-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin: 17px 0 24px;
}

.faq-filter {
  padding: 11px 18px;
  color: #aabbdc;
  background: rgba(255, 255, 255, .025);
  border: 1px solid var(--fq-border);
  border-radius: 6px;
  font: inherit;
  font-size: 13px;
  cursor: pointer;
  transition: background .2s, border-color .2s;
}

.faq-filter:hover {
  background: rgba(151, 179, 255, .09);
}

.faq-filter.is-active {
  color: #fff;
  background: #303c79;
  border-color: #9bb8ff;
}

.faq-result-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  padding: 0 5px 16px;
  color: #8ea6da;
  border-bottom: 1px solid var(--fq-border);
  font-size: 10px;
  letter-spacing: 1.4px;
}

.faq-result-bar i {
  margin-right: 8px;
  color: #afc4ff;
}

/* QUESTIONS */

.faq-item {
  border-bottom: 1px solid var(--fq-border);
  transition: background .2s ease;
}

.faq-item:hover {
  background: rgba(158, 178, 255, .025);
}

.faq-item[open] {
  background: linear-gradient(
    90deg,
    rgba(136, 158, 246, .055),
    transparent 70%
  );
}

.faq-item summary {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 39px;
  gap: 21px;
  align-items: center;
  min-height: 91px;
  padding: 20px 18px;
  color: #f4f7ff;
  list-style: none;
  cursor: pointer;
}

.faq-item summary::-webkit-details-marker {
  display: none;
}

.faq-item-number {
  color: #93aff2;
  font-size: 12px;
  letter-spacing: 1px;
}

.faq-item-title {
  font-size: clamp(16px, 1.5vw, 19px);
  font-weight: 500;
  line-height: 1.5;
}

.faq-item-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 39px;
  height: 39px;
  color: #a8c0ff;
  background: rgba(130, 157, 240, .065);
  border: 1px solid var(--fq-border);
  border-radius: 50%;
  transition: transform .2s, background .2s;
}

.faq-item[open] .faq-item-toggle {
  background: #354581;
}

.faq-item[open] .faq-item-toggle i {
  transform: rotate(45deg);
}

.faq-item-toggle i {
  transition: transform .2s;
  font-size: 13px;
}

.faq-answer {
  padding: 0 70px 29px 77px;
}

.faq-answer p {
  max-width: 900px;
  font-size: 14px;
  line-height: 1.85;
}

.faq-answer-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-top: 17px;
  padding-bottom: 7px;
  color: #b8ccff;
  border-bottom: 1px solid rgba(174, 197, 255, .35);
  font-size: 12px;
}

.faq-answer-link:hover {
  color: #fff;
}

/* EMPTY STATE */

.faq-empty {
  padding: 65px 25px;
  text-align: center;
  background: rgba(153, 177, 255, .045);
  border: 1px dashed rgba(160, 184, 255, .25);
  border-radius: 10px;
}

.faq-empty-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 68px;
  height: 68px;
  margin: 0 auto 25px;
  color: #b5caff;
  background: rgba(155, 178, 255, .09);
  border-radius: 50%;
  font-size: 27px;
}

.faq-empty h3 {
  margin-bottom: 12px;
  font-size: 25px;
}

.faq-empty p {
  max-width: 430px;
  margin: 0 auto 22px;
  font-size: 14px;
}

.faq-empty button {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 12px 17px;
  color: #fff;
  background: #334480;
  border: 1px solid rgba(163, 184, 255, .3);
  border-radius: 6px;
  font: inherit;
  font-size: 13px;
  cursor: pointer;
}

/* CONTACT STRIP */

.faq-contact {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
  gap: clamp(30px, 5vw, 80px);
  align-items: center;
  margin-top: 90px;
  padding: clamp(29px, 4vw, 55px);
  background:
    radial-gradient(circle at 100% 0%, rgba(142, 125, 231, .14), transparent 50%),
    linear-gradient(120deg, #243268, #172246);
  border: 1px solid rgba(171, 193, 255, .26);
  border-radius: 12px;
}

.faq-contact-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #b4c7ff;
  font-size: 11px;
  letter-spacing: 1.4px;
}

.faq-contact-main h3 {
  max-width: 560px;
  margin: 19px 0;
  font-size: clamp(28px, 3vw, 41px);
  line-height: 1.2;
}

.faq-contact-main p {
  max-width: 680px;
  font-size: 14px;
}

.faq-contact-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 29px;
}

.faq-contact-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  min-height: 47px;
  padding: 12px 17px;
  border: 1px solid rgba(182, 201, 255, .38);
  border-radius: 5px;
  color: #fff;
  font-size: 13px;
}

.faq-contact-primary {
  background: rgba(164, 190, 255, .13);
}

.faq-contact-actions a:hover {
  color: #fff;
  background: rgba(164, 190, 255, .2);
}

/* Contact console */

.faq-contact-panel {
  min-width: 0;
  padding: clamp(23px, 3vw, 34px);
  background: rgba(8, 15, 42, .47);
  border: 1px solid rgba(166, 191, 255, .18);
  border-radius: 9px;
}

.faq-contact-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 15px;
  padding-bottom: 23px;
  color: #a9beef;
  border-bottom: 1px solid var(--fq-border);
  font-size: 10px;
  letter-spacing: 1.2px;
}

.faq-contact-panel-head i {
  color: #b5cbff;
  font-size: 22px;
}

.faq-contact-line {
  display: grid;
  grid-template-columns: minmax(0, .43fr) minmax(0, .57fr);
  gap: 13px;
  align-items: center;
  padding: 18px 0;
  border-bottom: 1px solid var(--fq-border);
}

.faq-contact-line span {
  color: #96aadd;
  font-size: 10px;
  letter-spacing: 1px;
}

.faq-contact-line strong {
  color: #f7f9ff;
  font-size: 14px;
  font-weight: 500;
  text-align: right;
  overflow-wrap: anywhere;
}

.faq-contact-panel-bottom {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 23px;
  color: #9fb4e6;
  font-size: 10px;
  letter-spacing: 1px;
}

.faq-contact-status-dot {
  width: 7px;
  height: 7px;
  background: #9cbcff;
  border-radius: 50%;
}

/* RESPONSIVE */

@media (max-width: 900px) {
  .faq-heading {
    grid-template-columns: minmax(0, 1fr) 110px;
  }

  .faq-heading-mark {
    width: 110px;
    height: 110px;
  }

  .faq-heading-mark > i {
    font-size: 38px;
  }

  .faq-contact {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 650px) {
  .faq-section {
    padding: 75px 5%;
  }

  .faq-heading {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .faq-heading-mark {
    display: none;
  }

  .faq-heading h2 {
    font-size: clamp(38px, 9vw, 52px);
    letter-spacing: -1px;
  }

  .faq-heading-copy > p {
    font-size: 15px;
  }

  .faq-search {
    min-height: 60px;
    padding: 0 16px;
  }

  .faq-search input {
    height: 60px;
    padding: 0 10px;
    font-size: 14px;
  }

  .faq-filters {
    gap: 7px;
  }

  .faq-filter {
    padding: 10px 12px;
    font-size: 12px;
  }

  .faq-item summary {
    grid-template-columns: 25px minmax(0, 1fr) 32px;
    gap: 12px;
    min-height: 78px;
    padding: 16px 6px;
  }

  .faq-item-title {
    font-size: 15px;
  }

  .faq-item-toggle {
    width: 32px;
    height: 32px;
  }

  .faq-answer {
    padding: 0 10px 25px 43px;
  }

  .faq-contact {
    margin-top: 65px;
    padding: 25px 20px;
  }

  .faq-contact-line {
    grid-template-columns: 1fr;
    gap: 7px;
  }

  .faq-contact-line strong {
    text-align: left;
  }
}

@media (prefers-reduced-motion: reduce) {
  .faq-section *,
  .faq-section *::before,
  .faq-section *::after {
    animation: none !important;
    transition: none !important;
  }
}

/* ==================== FAQ END ==================== */

/* ============ FAQ ANSWERS VISIBILITY FIX ============ */

#faq .faq-item {
  overflow: visible !important;
}

#faq .faq-item > .faq-answer {
  display: none !important;
  visibility: hidden;
  opacity: 0;
}

#faq .faq-item[open] > .faq-answer {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;

  height: auto !important;
  max-height: none !important;
  overflow: visible !important;

  padding: 0 70px 29px 77px;
}

#faq .faq-item[open] .faq-answer p {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;

  color: #c1cdec !important;
  font-size: 14px;
  line-height: 1.85;

  height: auto !important;
  max-height: none !important;
  margin: 0;
}

#faq .faq-item[open] .faq-answer-link {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;

  color: #abc5ff !important;
  margin-top: 18px;
}

@media (max-width: 650px) {
  #faq .faq-item[open] > .faq-answer {
    padding: 0 10px 25px 43px;
  }
}
