/* =========================
   RESET
========================= */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html,
body{
    width:100%;
    height:100%;
    overflow:hidden;
    font-family:'Montserrat',sans-serif;
    background:#000;
}

/* =========================
   MAIN WRAPPER
========================= */

.club_wrapper{
    position:relative;
    width:100%;
    height:100vh;
    overflow:hidden;
}

/* =========================
   SLIDES
========================= */

.club_slide{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    opacity:0;
    transition:opacity 2s ease-in-out;
}

.club_slide.active{
    opacity:1;
    z-index:1;
}

/* =========================
   CINEMATIC IMAGE MOTION
========================= */

.club_slide img{

    width:100%;
    height:100%;

    object-fit:cover;

    transform:scale(1);

    animation:clubCinematicZoom 18s ease-in-out infinite alternate;

    will-change:transform;
}

/* =========================
   CINEMATIC ZOOM ANIMATION
========================= */

@keyframes clubCinematicZoom{

    0%{
        transform:
            scale(1)
            translateX(0px)
            translateY(0px);
    }

    25%{
        transform:
            scale(1.04)
            translateX(-8px)
            translateY(0px);
    }

    50%{
        transform:
            scale(1.08)
            translateX(-15px)
            translateY(-6px);
    }

    75%{
        transform:
            scale(1.12)
            translateX(-20px)
            translateY(-10px);
    }

    100%{
        transform:
            scale(1.16)
            translateX(-28px)
            translateY(-14px);
    }
}

/* =========================
   FILM GRAIN
========================= */

.club_wrapper:after{

    content:'';

    position:absolute;
    inset:0;

    background:url('https://www.transparenttextures.com/patterns/asfalt-dark.png');

    opacity:0.08;

    z-index:6;

    pointer-events:none;
}

/* =========================
   VIGNETTE
========================= */

.club_wrapper:before{

    content:'';

    position:absolute;
    inset:0;

    background:
    radial-gradient(
        circle,
        rgba(0,0,0,0) 45%,
        rgba(0,0,0,0.45) 100%
    );

    z-index:7;

    pointer-events:none;
}

/* =========================
   IMAGE FILTERS
========================= */

.club_bw img{
    filter:grayscale(100%) contrast(115%);
}

.club_sepia img{
    filter:
        sepia(55%)
        saturate(110%)
        contrast(105%)
        brightness(95%);
}

.club_color img{
    filter:none;
}

/* =========================
   LEFT OVERLAY
========================= */

.club_overlay{

    position:absolute;

    left:-12%;
    bottom:-18%;

    width:58%;
    height:135%;

    z-index:5;

    pointer-events:none;

    border-radius:50%;

    background:
    radial-gradient(
        ellipse at left bottom,
        rgba(5,18,34,0.96) 0%,
        rgba(7,22,40,0.92) 18%,
        rgba(9,26,48,0.82) 36%,
        rgba(11,30,54,0.58) 54%,
        rgba(10,24,42,0.22) 74%,
        rgba(10,24,42,0.00) 100%
    );

    filter:blur(2px);
}

/* =========================
   HEADER
========================= */

.club_header{

    position:absolute;

    top:0;
    left:0;

    width:100%;

    z-index:30;

    display:flex;

    align-items:center;

    justify-content:space-between;

    padding:28px 55px;
}


/* DESKTOP HEADER TOP */

.club_header_top{

    display:flex;

    flex-direction:column;

    align-items:flex-start;

    gap:18px;
}

/* =========================
   LOGO
========================= */

.club_logo{
    position:relative;
    z-index:20;
}

.club_logo img{
    width:125px;
    display:block;
}

/* =========================
   RIGHT SECTION
========================= */

.club_right{

    display:flex;

    align-items:center;

    gap:22px;
}

.club_header_top,
.club_mobile_toggle_wrap{

    display:none;
}

/* =========================
   MENU
========================= */

.club_menu{

    list-style:none;

    display:flex;

    align-items:center;

    gap:10px;

    margin:0;
    padding:0;
}

.club_menu li{
    position:relative;
}

.club_menu li a{

    position:relative;

    display:inline-flex;

    align-items:center;
    justify-content:center;

    padding:14px 16px;

    text-decoration:none;

    color:#ffffff;

    font-size:13px;

    font-weight:600;

    letter-spacing:1.8px;

    text-transform:uppercase;

    text-shadow:
        0 1px 2px rgba(0,0,0,0.85),
        0 0 12px rgba(0,0,0,0.35);

    transition:all 0.35s ease;

    border-radius:2px;
}

/* HOVER */

.club_menu li a:hover{

    background:rgba(173,216,230,0.10);

    color:#dff6ff;

    backdrop-filter:blur(4px);
}

/* UNDERLINE */

.club_menu li a:after{

    content:'';

    position:absolute;

    left:14px;
    bottom:7px;

    width:0%;
    height:1px;

    background:#c7ecff;

    transition:0.35s ease;
}

.club_menu li a:hover:after{
    width:calc(100% - 28px);
}

/* =========================
   LOGIN BUTTON
========================= */

.club_login_btn{

    width:150px;
    height:50px;

    position:relative;

    overflow:hidden;

    display:flex;

    align-items:center;
    justify-content:center;

    text-decoration:none;

    color:#ffffff;

    font-size:12px;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

    border:1px solid rgba(255,255,255,0.45);

    background:rgba(255,255,255,0.08);

    backdrop-filter:blur(12px);

    text-shadow:
        0 1px 2px rgba(0,0,0,0.75);

    transition:all 0.45s ease;
}

/* SHINE EFFECT */

.club_login_btn:before{

    content:'';

    position:absolute;

    top:0;
    left:-120%;

    width:100%;
    height:100%;

    background:linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,0.22),
        transparent
    );

    transition:0.8s;
}

.club_login_btn:hover:before{
    left:120%;
}

/* HOVER */

.club_login_btn:hover{

    background:rgba(173,216,230,0.28);

    border-color:#d9f5ff;

    color:#ffffff;

    box-shadow:
        0 0 20px rgba(173,216,230,0.18),
        inset 0 0 12px rgba(255,255,255,0.05);
}

/* =========================
   HERO CONTENT
========================= */

.club_content{

    position:absolute;

    left:80px;
    top:50%;

    transform:translateY(-50%);

    z-index:20;

    max-width:560px;

    color:#fff;
}

.club_content h5{

    font-size:13px;
    font-weight:400;

    letter-spacing:7px;
    text-transform:uppercase;

    margin-bottom:22px;

    opacity:0.85;
}

.club_content h1{

    font-family:'Cormorant Garamond',serif;

    font-size:92px;
    line-height:0.92;

    font-weight:500;

    margin-bottom:28px;
}

.club_content p{

    font-size:16px;
    line-height:1.9;

    font-weight:300;

    color:rgba(255,255,255,0.86);

    max-width:470px;
}

/* =========================
   CTA BUTTON
========================= */

.club_btn{

    display:inline-flex;

    align-items:center;
    justify-content:center;

    margin-top:42px;

    width:180px;
    height:56px;

    border:1px solid rgba(173,216,230,0.42);

    background:rgba(173,216,230,0.08);

    color:#ffffff;

    text-decoration:none;

    font-size:11px;
    font-weight:600;

    letter-spacing:3px;
    text-transform:uppercase;

    backdrop-filter:blur(8px);

    transition:0.4s ease;
}

.club_btn:hover{

    background:rgba(173,216,230,0.22);

    border-color:#d8f5ff;

    box-shadow:0 0 22px rgba(173,216,230,0.18);
}

/* =========================
   SLIDER DOTS
========================= */

.club_dots{

    position:absolute;

    right:60px;
    bottom:45px;

    z-index:20;

    display:flex;

    gap:12px;
}

.club_dots span{

    width:13px;
    height:13px;

    border-radius:50%;

    border:1px solid #fff;

    cursor:pointer;

    opacity:0.6;

    transition:0.3s;
}

.club_dots span.active{

    background:#fff;

    opacity:1;
}

/* =========================
   SCROLL TEXT
========================= */

.club_scroll{

    position:absolute;

    right:60px;
    top:50%;

    transform:translateY(-50%) rotate(90deg);

    z-index:20;

    color:#fff;

    font-size:11px;

    letter-spacing:5px;
    text-transform:uppercase;

    opacity:0.7;
}

/* =========================
   MOBILE TOGGLE
========================= */

.club_mobile_toggle{

    display:none;

    width:44px;
    height:44px;

    position:relative;

    z-index:9999;

    cursor:pointer;
}

.club_mobile_toggle span{

    position:absolute;

    left:8px;

    width:28px;
    height:2px;

    background:#fff;

    transition:0.35s ease;
}

/* MOBILE MENU LOGO */

.club_mobile_logo{

    width:100px;

    max-width:70%;

    display:block;

    margin:0 auto 18px;

    filter:
        brightness(2.6)
        contrast(1.2)
        drop-shadow(0 0 10px rgba(255,255,255,0.18));

    opacity:1;
}

.club_mobile_toggle span:nth-child(1){
    top:13px;
}

.club_mobile_toggle span:nth-child(2){
    top:21px;
}

.club_mobile_toggle span:nth-child(3){
    top:29px;
}

/* ACTIVE */

.club_mobile_toggle.active span:nth-child(1){

    transform:rotate(45deg);

    top:21px;
}

.club_mobile_toggle.active span:nth-child(2){

    opacity:0;
}

.club_mobile_toggle.active span:nth-child(3){

    transform:rotate(-45deg);

    top:21px;
}

/* =========================
   MOBILE MENU
========================= */

.club_mobile_menu{

    position:fixed;

    top:165px;

    left:50%;

    transform:translateX(-50%);

    width:88%;

    max-width:320px;

    background:rgba(10,20,35,0.97);

    backdrop-filter:blur(16px);

    border:1px solid rgba(255,255,255,0.08);

    border-radius:26px;

    box-shadow:
        0 20px 50px rgba(0,0,0,0.45);

    z-index:9998;

    padding:26px 26px 14px;

    max-height:calc(100vh - 185px);

    max-height:calc(100dvh - 185px);

    overflow-y:auto;

    -webkit-overflow-scrolling:touch;

    overscroll-behavior:contain;

    opacity:0;

    visibility:hidden;

    transition:all 0.4s ease;
}

.club_mobile_menu.active{

    left:0;
}

.club_mobile_menu ul{

    list-style:none;
}

.club_mobile_menu ul li{

    margin-bottom:24px;
}

/* =========================
   MOBILE MENU LINKS
========================= */

.club_mobile_menu ul li a{

    position:relative;

    display:inline-flex;

    align-items:center;

    color:#fff;

    text-decoration:none;

    font-size:15px;

    letter-spacing:2px;

    text-transform:uppercase;

    transition:0.35s ease;

    padding:6px 0;

    text-shadow:
        0 1px 2px rgba(0,0,0,0.75);
}


/* =========================
   UNDERLINE
========================= */

.club_mobile_menu ul li a:after{

    content:'';

    position:absolute;

    left:0;
    bottom:0;

    width:0%;

    height:1px;

    background:#c7ecff;

    transition:0.4s ease;
}

/* =========================
   HOVER
========================= */

.club_mobile_menu ul li a:hover{

    color:#dff6ff;

    text-shadow:
        0 0 12px rgba(199,236,255,0.28);
}

.club_mobile_menu ul li a:hover:after{

    width:100%;
}

.club_mobile_menu ul li a:hover:before{

    left:140%;
}


/* =========================
   RESPONSIVE
========================= */

@media(max-width:1200px){

    .club_content h1{
        font-size:72px;
    }

    .club_menu li a{

    font-size:12px;

    padding:12px 13px;

    letter-spacing:1.3px;
}
}


/* =========================
   MOBILE RESPONSIVE
========================= */

@media(max-width:991px){

    body{
        overflow:auto;
    }

    /* =========================
       OVERLAY
    ========================= */

    .club_overlay{

        left:0;
        bottom:0;

        width:100%;
        height:100%;

        border-radius:0;

        background:linear-gradient(
            180deg,
            rgba(7,16,30,0.78) 0%,
            rgba(10,22,40,0.52) 42%,
            rgba(10,22,40,0.18) 100%
        );
    }

    /* =========================
       MOBILE HEADER
    ========================= */

    .club_header{

        display:block;

        padding:18px 18px 12px;
    }

    /* =========================
       HIDE DESKTOP
    ========================= */

    .club_right{

        display:none !important;
    }
	
	/* =========================
   HIDE DESKTOP LOGO
========================= */

.club_header > .club_logo{

    display:none;
}

/* =========================
   SHOW MOBILE HEADER
========================= */

/* =========================
   MOBILE TOP ROW
========================= */

.club_header_top{

    width:100% !important;

    display:flex !important;

    flex-direction:row !important;

    align-items:center !important;

    justify-content:space-between !important;

    gap:12px;

    position:relative;

    z-index:9999;
}

/* MOBILE LOGO */

.club_header_top .club_logo{

    display:flex !important;

    flex-direction:row !important;

    align-items:center !important;

    justify-content:flex-start !important;

    flex:0 0 auto;
}

.club_header_top .club_logo img{

    width:82px;

    display:block;
}

/* MOBILE LOGIN */

.club_header_top .club_login_btn{

    flex:0 0 auto;

    width:128px;
    height:38px;

    display:flex !important;

    align-items:center !important;

    justify-content:center !important;

    white-space:nowrap;
}

    /* =========================
       MOBILE TOP ROW
    ========================= */

    .club_header_top{

        width:100%;

        display:flex !important;

        align-items:center;

        justify-content:space-between;

        gap:12px;
    }

    /* =========================
       MOBILE LOGO
    ========================= */

    .club_header_top .club_logo{

        flex:0 0 auto;

        display:flex;

        align-items:center;
    }

    .club_header_top .club_logo img{

        width:82px;

        display:block;

        filter:
            brightness(2.8)
            contrast(1.2)
            drop-shadow(0 0 14px rgba(255,255,255,0.18));
    }

    /* =========================
       MOBILE LOGIN BUTTON
    ========================= */

    .club_header_top .club_login_btn{

        flex:0 0 auto;

        width:128px;
        height:38px;

        display:flex;

        align-items:center;
        justify-content:center;

        font-size:10px;

        letter-spacing:1.2px;

        white-space:nowrap;

        border-radius:4px;

        background:rgba(255,255,255,0.10);

        border:1px solid rgba(255,255,255,0.35);
    }

    /* =========================
       HAMBURGER ROW
    ========================= */

    .club_mobile_toggle_wrap{

        width:100%;

        display:flex !important;

        justify-content:center;

        margin-top:16px;
    }

    /* =========================
       ROUND HAMBURGER
    ========================= */

    .club_mobile_toggle{

        display:flex;

        align-items:center;
        justify-content:center;

        position:relative;

        width:58px;
        height:58px;

        border-radius:50%;

        background:radial-gradient(
            circle at top left,
            rgba(48,92,150,0.98),
            rgba(10,28,52,0.98)
        );

        border:1px solid rgba(255,255,255,0.12);

        box-shadow:
            0 10px 24px rgba(0,0,0,0.34),
            inset 0 0 16px rgba(255,255,255,0.04);

        z-index:9999;

        cursor:pointer;

        overflow:hidden;
    }

    /* =========================
       HAMBURGER LINES
    ========================= */

    .club_mobile_toggle span{

        position:absolute;

        left:50%;

        width:22px;
        height:2px;

        margin-left:-11px;

        background:#ffffff;

        border-radius:10px;

        transition:0.35s ease;
    }

    .club_mobile_toggle span:nth-child(1){
        top:20px;
    }

    .club_mobile_toggle span:nth-child(2){
        top:28px;
    }

    .club_mobile_toggle span:nth-child(3){
        top:36px;
    }

    /* ACTIVE */

    .club_mobile_toggle.active span:nth-child(1){

        transform:rotate(45deg);

        top:28px;
    }

    .club_mobile_toggle.active span:nth-child(2){

        opacity:0;
    }

    .club_mobile_toggle.active span:nth-child(3){

        transform:rotate(-45deg);

        top:28px;
    }

/* =========================
   MOBILE MENU
========================= */

.club_mobile_menu{

    position:fixed;

    top:165px;

    left:50%;

    transform:translateX(-50%);

    width:88%;

    max-width:320px;

    background:rgba(10,20,35,0.97);

    backdrop-filter:blur(16px);

    border:1px solid rgba(255,255,255,0.08);

    border-radius:26px;

    box-shadow:
        0 20px 50px rgba(0,0,0,0.45);

    z-index:9998;

    padding:26px 26px 30px;

    max-height:calc(100vh - 185px);

    max-height:calc(100dvh - 185px);

    overflow-y:auto;

    -webkit-overflow-scrolling:touch;

    overscroll-behavior:contain;

    opacity:0;

    visibility:hidden;

    transition:all 0.4s ease;
}

/* ACTIVE */

.club_mobile_menu.active{

    opacity:1;

    visibility:visible;

    left:50%;
}

.club_mobile_menu::-webkit-scrollbar{

    width:0;

    display:none;
}
.club_mobile_menu{

    scrollbar-width:none;

    -ms-overflow-style:none;
}

    .club_mobile_menu ul{

        list-style:none;
    }

    /* =========================
	   MOBILE MENU ITEMS
	========================= */

	.club_mobile_menu ul li{

		margin-bottom:8px;
	}

	/* REMOVE EXTRA GAP FROM LAST ITEM */

	.club_mobile_menu ul li:last-child{

		margin-bottom:0;
	}

    .club_mobile_menu ul li a{

        color:#fff;

        text-decoration:none;

        font-size:15px;

        letter-spacing:2px;

        text-transform:uppercase;

        transition:0.3s ease;
    }

    .club_mobile_menu ul li a:hover{

        color:#dff6ff;
    }

    /* =========================
       MOBILE DROPDOWN
    ========================= */

    .club_dropdown{

        position:relative;

        top:0;
        left:0;

        opacity:1;
        visibility:visible;

        transform:none;

        display:none;

        width:100%;

        margin-top:10px;

        background:rgba(255,255,255,0.04);
    }

    .club_has_dropdown:hover .club_dropdown{

        display:block;
    }

    .club_dropdown li a{

        padding:12px 18px;
    }

    .club_mobile_dropdown li a,
    .club_mobile_dropdown li a:hover,
    .club_mobile_dropdown li a:focus,
    .club_mobile_dropdown li a:active{
        text-decoration:none;
    }

    .club_mobile_dropdown li a:after,
    .club_mobile_dropdown li a:hover:after{
        content:none;
        display:none;
        width:0;
    }

    /* =========================
       CONTENT
    ========================= */

    .club_content{

        left:25px;
        right:25px;

        max-width:100%;

        top:56%;
    }

    .club_content h5{

        font-size:11px;

        letter-spacing:5px;

        margin-bottom:16px;
    }

    .club_content h1{

        font-size:58px;

        line-height:0.95;

        margin-bottom:22px;
    }

    .club_content p{

        font-size:14px;

        line-height:1.8;

        max-width:100%;
    }

    .club_btn{

        width:165px;
        height:50px;

        font-size:10px;

        letter-spacing:2px;
    }

    /* =========================
       HIDE SCROLL TEXT
    ========================= */

    .club_scroll{

        display:none;
    }

    /* =========================
       DOTS
    ========================= */

    .club_dots{

        right:24px;
        bottom:24px;
    }
}

@media(max-width:600px){

    .club_header{
        padding:20px;
    }

    .club_logo img{
        width:95px;
    }

    .club_content h1{
        font-size:42px;
    }

    .club_content p{
        font-size:14px;
    }

    .club_menu li a{

        font-size:9px;

        letter-spacing:1px;

        padding:8px;
    }

    .club_login_btn{

        width:132px;
        height:44px;

        font-size:10px;
    }

    .club_btn{

        width:160px;
        height:50px;

        font-size:10px;
    }

    .club_dots{

        right:25px;
        bottom:25px;
    }
}

/* =========================
   DROPDOWN MENU
========================= */

.club_has_dropdown{
    position:relative;
}

/* TOP LINK */

.club_has_dropdown > a{

    display:flex;

    align-items:center;

    gap:8px;
}

/* PLUS ICON */

.club_arrow{

    font-size:11px;

    opacity:0.7;

    transition:0.35s ease;
}

/* ROTATE ICON */

.club_has_dropdown:hover .club_arrow{
    transform:rotate(45deg);
}

/* DROPDOWN */

.club_dropdown{

    position:absolute;

    top:100%;
    left:0;

    min-width:260px;

    padding:14px 0;

    list-style:none;

    background:rgba(40,57,145,0.82);

    backdrop-filter:blur(14px);

    border:1px solid rgba(173,216,230,0.14);

    opacity:0;
    visibility:hidden;

    transform:translateY(12px);

    transition:all 0.4s ease;

    z-index:999;

    box-shadow:
        0 15px 35px rgba(0,0,0,0.35);

}

/* SHOW DROPDOWN */

.club_has_dropdown:hover .club_dropdown{

    opacity:1;
    visibility:visible;

    transform:translateY(0px);
}

/* DROPDOWN ITEMS */

.club_dropdown li{

    width:100%;
}

/* DROPDOWN LINKS */

.club_dropdown li a{

    display:block;

    padding:14px 24px;

    color:#ffffff;

    text-decoration:none;

    font-size:11px;

    font-weight:500;

    letter-spacing:2px;

    text-transform:uppercase;

    transition:0.35s ease;

    border-left:2px solid transparent;
}

/* HOVER */

.club_dropdown li a:hover{

    background:rgba(173,216,230,0.08);

    border-left:2px solid #c7ecff;

    padding-left:30px;

    color:#dff6ff;
}

/* REMOVE OLD UNDERLINE */

.club_dropdown li a:after{
    display:none;
}


/* =========================
   MOBILE DROPDOWN MENU
========================= */

.club_mobile_has_dropdown{

    border-bottom:1px solid rgba(255,255,255,0.06);

    padding-bottom:4px;

    margin-bottom:6px;
}

/* =========================
   MAIN TOGGLE
========================= */

.club_mobile_dropdown_toggle{

    display:flex !important;

    align-items:center;

    justify-content:space-between;

    width:100%;

    min-height:52px;

    padding:0;

    color:#fff;

    text-decoration:none;

    font-size:15px;

    letter-spacing:2px;

    text-transform:uppercase;
}

/* =========================
   PLUS ICON
========================= */

.club_mobile_arrow{

    font-size:18px;

    transition:0.35s ease;
}

/* =========================
   ACTIVE ICON ROTATION
========================= */

.club_mobile_has_dropdown.active .club_mobile_arrow{

    transform:rotate(45deg);
}

/* =========================
   SUBMENU
========================= */

.club_mobile_dropdown{

    height:auto;

    max-height:0;

    overflow:hidden;

    list-style:none;

    margin-top:0;

    padding-left:12px;

    opacity:0;

    transition:
        max-height 0.4s ease,
        opacity 0.3s ease,
        margin-top 0.3s ease;
}

/* =========================
   ACTIVE SUBMENU
========================= */

.club_mobile_has_dropdown.active .club_mobile_dropdown{

    max-height:1000px;

    opacity:1;

    margin-top:12px;

    padding-bottom:2px;
}

/* =========================
   SUBMENU ITEMS
========================= */

.club_mobile_dropdown li{

    margin-bottom:10px;
}

/* =========================
   SUBMENU LINKS
========================= */

.club_mobile_dropdown li a{

    font-size:12px !important;

    letter-spacing:1.5px;

    color:rgba(255,255,255,0.82) !important;

    text-transform:uppercase;

    padding:5px 0;
}
.club_mobile_single{

    border-bottom:1px solid rgba(255,255,255,0.06);

    padding-bottom:4px;

    margin-bottom:6px;
}
 
