
:root{

    --primary:#35B8F4;
    --primary-dark:#1788D6;
    --secondary:#FFD23C;

    --dark:#143B67;

}

body{
    font-family:'Poppins',sans-serif;
    overflow-x:hidden;
    background:#fff;
}

html{
    scroll-behavior:smooth;
}

section{
    scroll-margin-top:90px;
}



/* ======== NAVBAR =========  */
/*==========================================
NAVBAR
==========================================*/

.navbar-custom{

    padding:18px 0;

    transition:.35s;

    background:transparent;

    z-index:11;

}

/* ketika scroll */

.navbar-custom.scrolled{

    background:rgba(2,18,42,.92);

    backdrop-filter:blur(18px);

    -webkit-backdrop-filter:blur(18px);

    box-shadow:0 8px 30px rgba(0,0,0,.35);

    padding:12px 0;

}

/* Logo */

.navbar-brand img{

    height:72px;

    transition:.3s;

}

.navbar-custom.scrolled .navbar-brand img{

    height:60px;

}

/* Menu */

.navbar-nav{

    gap:12px;

}

.nav-link{

    color:#ffffff !important;

    font-size:15px;

    font-weight:600;

    letter-spacing:.3px;

    position:relative;

    padding:10px 15px !important;

    transition:.3s;

}

/* underline */

.nav-link::after{

    content:"";

    position:absolute;

    bottom:2px;

    left:50%;

    width:0;

    height:2px;

    background:#39FF88;

    transition:.35s;

    transform:translateX(-50%);

}

.nav-link:hover{

    color:#39FF88 !important;

}

.nav-link:hover::after{

    width:70%;

}

.nav-link.active{

    color:#39FF88 !important;

}

.nav-link.active::after{

    width:70%;

}

/* Register Button */

.btn-register-nav{

    background:linear-gradient(90deg,#39FF88,#00B8FF);

    color:#031321;

    padding:12px 28px;

    border-radius:50px;

    font-weight:700;

    transition:.35s;

    box-shadow:0 8px 25px rgba(57,255,136,.25);

}

.btn-register-nav:hover{

    color:#031321;

    transform:translateY(-3px);

    box-shadow:0 15px 35px rgba(57,255,136,.45);

}

/* Mobile */

@media(max-width:991px){

    .navbar-custom{

        background:rgba(2,18,42,.95);

        backdrop-filter:blur(18px);

    }

    .navbar-collapse{

        margin-top:18px;

        padding:20px;

        border-radius:20px;

        background:rgba(5,26,55,.96);

    }

    .navbar-nav{

        gap:0;

        align-items:flex-start !important;

    }

    .nav-link{

        width:100%;

        padding:14px 0 !important;

    }

    .btn-register-nav{

        width:100%;

        text-align:center;

    }

}
/* ======== NAVBAR END =========  */



/* ======== HERO =========  */
/*==================================================
HERO
==================================================*/

.heros-section{
    position:relative;
    overflow:hidden;
    min-height:100vh;
    display:flex;
    align-items:center;

    background:
        linear-gradient(rgba(2,16,40,.72),rgba(2,16,40,.72)),
        url("../img/hero-runner.png");

    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
}

/* Overlay */

.heros-overlay{

    position:absolute;
    inset:0;

    background:
        radial-gradient(circle at 80% 40%,rgba(0,255,140,.18),transparent 40%),
        radial-gradient(circle at 15% 10%,rgba(0,180,255,.15),transparent 35%),
        linear-gradient(90deg,rgba(3,14,34,.75) 0%,rgba(3,14,34,.35) 45%,rgba(3,14,34,.05) 100%);

}

/* Content */

.heros-section .container{

    position:relative;
    z-index:10;

}

/* Logo */

.hero-logo{

    width:140px;
    margin-bottom:25px;

}

/* Title */

.heros-title{

    color:#fff;

    font-weight:900;

    font-size:72px;

    line-height:1;

    text-transform:uppercase;

    margin-bottom:10px;

}

.heros-title span{

    display:block;

    color:#39FF88;

}

/* Subtitle */

.heros-subtitle{

    color:#7dfbd0;

    letter-spacing:5px;

    font-size:20px;

    font-weight:600;

    margin-bottom:0;

}

.heros-script{

    color:#fff;

    font-size:44px;

    font-weight:800;

    margin-bottom:25px;

}

/* Description */

.hero-description{

    color:#d8e5f3;

    max-width:520px;

    line-height:1.8;

    margin-bottom:35px;

}

/* Info */

.heros-info{

    display:flex;

    flex-wrap:wrap;

    gap:18px;

    margin-bottom:35px;

}

.info-item{

    display:flex;

    align-items:center;

    gap:14px;

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(12px);

    border:1px solid rgba(255,255,255,.12);

    border-radius:18px;

    padding:16px 22px;

}

.info-item i{

    color:#39FF88;

    font-size:26px;

    width:40px;

    text-align:center;

}

.info-item strong{

    color:#fff;

    display:block;

    font-size:17px;

}

.info-item small{

    color:#c9d8e8;

}

/* Button */

.btn-registerhero{

    background:linear-gradient(90deg,#39ff88,#00b8ff);

    color:#031321;

    border:none;

    padding:15px 42px;

    font-weight:700;

    border-radius:60px;

    transition:.35s;

    box-shadow:0 15px 40px rgba(57,255,136,.25);

}

.btn-register:hover{

    transform:translateY(-4px);

    color:#031321;

    box-shadow:0 20px 45px rgba(57,255,136,.4);

}

/* Floating Light */

.heros-section::before{

    content:"";

    position:absolute;

    width:650px;

    height:650px;

    right:-180px;

    top:50%;

    transform:translateY(-50%);

    border-radius:50%;

    background:radial-gradient(circle,
        rgba(57,255,136,.28),
        transparent 70%);

    filter:blur(40px);

}

.heros-section::after{

    content:"";

    position:absolute;

    left:-150px;

    bottom:-120px;

    width:600px;

    height:600px;

    border-radius:50%;

    background:radial-gradient(circle,
        rgba(0,180,255,.22),
        transparent 70%);

    filter:blur(55px);

}

/* Responsive */

@media (max-width:1300px){

    .heros-section{

        padding:140px 0 90px;

    }

    .hero-logo{

        width:140px;

    }

    .heros-title{

        font-size:64px;

    }

    .heros-script{

        font-size:40px;

    }

    .hero-description{

        max-width:520px;

    }

    .heros-info{

        gap:18px;

    }

}

@media(max-width:991px){

    .heros-section{

        text-align:center;

        padding:120px 0 80px;

    }

    .hero-logo{

        width:120px;

    }

    .heros-title{

        font-size:52px;

    }

    .heros-script{

        font-size:32px;

    }

    .hero-description{

        margin:auto auto 30px;

    }

    .heros-info{

        justify-content:center;

    }

}

@media(max-width:576px){

    .heros-title{

        font-size:42px;

    }

    .heros-script{

        font-size:26px;

    }

    .info-item{

        width:100%;

    }

}



/* ======== HERO END =========  */


/* RUNNER CHECKER ==================*/

/*======================================
RUNNER CHECKER
======================================*/

.runner-checker-section{

    position:relative;

    padding:90px 0;

    background:#05192f;

    overflow:hidden;

}

/* Glow */

.runner-checker-section::before{

    content:"";

    position:absolute;

    width:500px;

    height:500px;

    top:-180px;

    left:-150px;

    border-radius:50%;

    background:radial-gradient(circle,
        rgba(0,184,255,.12),
        transparent 70%);

}

.runner-checker-section::after{

    content:"";

    position:absolute;

    width:450px;

    height:450px;

    right:-120px;

    bottom:-180px;

    border-radius:50%;

    background:radial-gradient(circle,
        rgba(57,255,136,.12),
        transparent 70%);

}

/*========================*/

.runner-checker-card{

    position:relative;

    z-index:2;

    max-width:900px;

    margin:auto;

    padding:65px;

    border-radius:28px;

    background:rgba(255,255,255,.05);

    border:1px solid rgba(255,255,255,.08);

    backdrop-filter:blur(20px);

    text-align:center;

    box-shadow:
    0 20px 60px rgba(0,0,0,.35);

}

/* Badge */

.runner-badge{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:10px 18px;

    border-radius:100px;

    background:rgba(57,255,136,.12);

    color:#39FF88;

    font-size:14px;

    font-weight:700;

    letter-spacing:.5px;

    margin-bottom:22px;

}

/* Title */

.runner-checker-header h2{

    color:#fff;

    font-size:42px;

    font-weight:800;

    margin-bottom:18px;

}

/* Description */

.runner-checker-header p{

    color:#b6c7da;

    font-size:17px;

    line-height:1.8;

    max-width:650px;

    margin:auto;

}

/* Form */

.runner-form{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:18px;

    margin-top:45px;

}

/* Input */

.runner-input{

    position:relative;

    flex:1;

}

.runner-input i{

    position:absolute;

    left:22px;

    top:50%;

    transform:translateY(-50%);

    color:#39FF88;

    font-size:18px;

}

.runner-input input{

    width:100%;

    height:62px;

    border:none;

    outline:none;

    border-radius:60px;

    padding-left:60px;

    padding-right:25px;

    color:#fff;

    font-size:16px;

    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.08);

    transition:.3s;

}

.runner-input input::placeholder{

    color:#9fb5cb;

}

.runner-input input:focus{

    border-color:#39FF88;

    box-shadow:0 0 25px rgba(57,255,136,.18);

}

/* Button */

.runner-btn{

    height:62px;

    padding:0 34px;

    border:none;

    border-radius:60px;

    cursor:pointer;

    color:#031321;

    font-weight:700;

    font-size:16px;

    display:flex;

    align-items:center;

    gap:12px;

    background:linear-gradient(90deg,#39FF88,#00B8FF);

    transition:.35s;

    box-shadow:
    0 15px 35px rgba(57,255,136,.25);

}

.runner-btn:hover{

    transform:translateY(-4px);

    box-shadow:
    0 20px 45px rgba(57,255,136,.4);

}

.runner-btn i{

    transition:.3s;

}

.runner-btn:hover i{

    transform:translateX(5px);

}

/*======================================
RESPONSIVE
======================================*/

@media(max-width:991px){

    .runner-checker-card{

        padding:45px 35px;

    }

    .runner-checker-header h2{

        font-size:34px;

    }

    .runner-form{

        flex-direction:column;

    }

    .runner-input{

        width:100%;

    }

    .runner-btn{

        width:100%;

        justify-content:center;

    }

}

@media(max-width:576px){

    .runner-checker-section{

        padding:70px 0;

    }

    .runner-checker-card{

        padding:35px 22px;

        border-radius:22px;

    }

    .runner-checker-header h2{

        font-size:28px;

    }

    .runner-checker-header p{

        font-size:15px;

    }

    .runner-input input{

        height:58px;

    }

    .runner-btn{

        height:58px;

    }

}

/* RUNNER CHECKER END ================== */



/*  CATEGORY SECTION ============================================*/
/*=========================================
CATEGORY SECTION
=========================================*/

.category-section{

    position:relative;
    overflow:hidden;
    padding:100px 0;
    background:#06192F;

}

.category-section::before{

    content:"";
    position:absolute;
    width:500px;
    height:500px;
    left:-220px;
    top:-180px;
    border-radius:50%;

    background:
    radial-gradient(circle,
    rgba(0,184,255,.12),
    transparent 70%);

}

.category-section::after{

    content:"";
    position:absolute;
    width:550px;
    height:550px;
    right:-220px;
    bottom:-220px;
    border-radius:50%;

    background:
    radial-gradient(circle,
    rgba(57,255,136,.12),
    transparent 70%);

}

/*=========================================
TITLE
=========================================*/

.section-title{

    text-align:center;
    margin-bottom:70px;

}

.section-badge{

    display:inline-block;

    padding:10px 22px;

    border-radius:50px;

    background:rgba(57,255,136,.10);

    color:#39FF88;

    font-weight:700;

    letter-spacing:1px;

    text-transform:uppercase;

    margin-bottom:18px;

}

.section-title h2{

    color:#fff;

    font-size:48px;

    font-weight:800;

    margin-bottom:18px;

}

.section-title p{

    max-width:650px;

    margin:auto;

    color:#B8C9DB;

    line-height:1.8;

}

/*=========================================
CARD
=========================================*/

.category-card{

    position:relative;

    overflow:hidden;

    border-radius:28px;

    background:rgba(255,255,255,.05);

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.08);

    transition:.35s;

    height:100%;

    box-shadow:

    0 20px 60px rgba(0,0,0,.25);

}

.category-card:hover{

    transform:translateY(-10px);

    border-color:#39FF88;

    box-shadow:

    0 25px 70px rgba(57,255,136,.18);

}

/*=========================================
IMAGE
=========================================*/

.category-image{

    position:relative;

    overflow:hidden;

    height:280px;

}

.category-image img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.6s;

}

.category-card:hover img{

    transform:scale(1.08);

}

.category-overlay{

    position:absolute;

    inset:0;

    background:

    linear-gradient(

    rgba(0,0,0,.05),

    rgba(4,23,45,.75)

    );

}

/*=========================================
CONTENT
=========================================*/

.category-content{

    padding:35px;

}

.category-type{

    display:inline-block;

    background:#39FF88;

    color:#04172D;

    padding:8px 18px;

    border-radius:40px;

    font-weight:700;

    font-size:13px;

    margin-bottom:18px;

}

.category-content h3{

    color:#fff;

    font-size:34px;

    font-weight:800;

    margin-bottom:25px;

}

.category-content h3 small{

    color:#FF7A7A !important;

    font-size:13px;

}

/*=========================================
PRICE
=========================================*/

.price-box{

    margin-bottom:35px;

}

.price-box small{

    color:#9FB5CB;

    display:block;

    margin-bottom:15px;

}

.price-item{

    margin-bottom:15px;

}

.price-early{

    color:#39FF88;

    font-size:34px;

    font-weight:800;

}

.early-badge{

    display:inline-flex;

    align-items:center;

    gap:8px;

    margin-left:10px;

    padding:6px 12px;

    border-radius:30px;

    background:#FF6B35;

    color:#fff;

    font-size:12px;

    font-weight:600;

}

.price-regular{

    margin-top:20px;

    padding:18px;

    border-radius:16px;

    background:rgba(255,255,255,.04);

}

.price-regular b{

    display:block;

    color:#9FB5CB;

    margin-bottom:8px;

}

.price-regular strong{

    color:#00C8FF;

    font-size:26px;

}

.price-note{

    display:block;

    margin-top:18px;

    color:#9FB5CB;

    font-size:14px;

    line-height:1.8;

}

/*=========================================
BUTTON
=========================================*/

.btn-category{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:10px;

    width:100%;

    height:60px;

    border-radius:50px;

    text-decoration:none;

    font-weight:700;

    font-size:17px;

    color:#04172D;

    background:

    linear-gradient(90deg,#39FF88,#00B8FF);

    transition:.35s;

}

.btn-category:hover{

    transform:translateY(-4px);

    color:#04172D;

    box-shadow:

    0 20px 40px rgba(57,255,136,.35);

}

/*=========================================
COMING
=========================================*/

.btn-coming{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:10px;

    width:100%;

    height:60px;

    border-radius:50px;

    text-decoration:none;

    background:#FFC107;

    color:#222;

    font-weight:700;

}

/*=========================================
SOLD
=========================================*/

.btn-soldout{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:10px;

    width:100%;

    height:60px;

    border-radius:50px;

    text-decoration:none;

    background:#D32F2F;

    color:#fff;

    font-weight:700;

}

/*=========================================
RESPONSIVE
=========================================*/

@media(max-width:991px){

.section-title h2{

font-size:38px;

}

.category-content{

padding:28px;

}

.category-content h3{

font-size:28px;

}

.price-early{

font-size:28px;

}

.category-image{

height:240px;

}

}

@media(max-width:576px){

.category-section{

padding:70px 0;

}

.section-title{

margin-bottom:50px;

}

.section-title h2{

font-size:30px;

}

.category-image{

height:220px;

}

.category-content{

padding:24px;

}

.price-early{

font-size:24px;

}

.price-regular strong{

font-size:22px;

}

}
/*  CATEGORY SECTION END ============================================*/


/* ABout */
/*=========================================
ABOUT
=========================================*/

.about-section{

    position:relative;

    overflow:hidden;

    padding:100px 0;

    background:#04172D;

}

.about-section::before{

    content:"";

    position:absolute;

    width:550px;

    height:550px;

    left:-220px;

    top:-180px;

    border-radius:50%;

    background:
    radial-gradient(circle,
    rgba(0,184,255,.10),
    transparent 70%);

}

.about-section::after{

    content:"";

    position:absolute;

    width:600px;

    height:600px;

    right:-250px;

    bottom:-250px;

    border-radius:50%;

    background:
    radial-gradient(circle,
    rgba(57,255,136,.10),
    transparent 70%);

}

.about-section .container{

    position:relative;

    z-index:2;

}

/*=============================
SLIDER
=============================*/

.about-slider{

    border-radius:30px;

    overflow:hidden;

    background:rgba(255,255,255,.04);

    border:1px solid rgba(255,255,255,.08);

    backdrop-filter:blur(20px);

    padding:12px;

    box-shadow:
    0 25px 60px rgba(0,0,0,.30);

}

.about-slider img{

    border-radius:22px;

    height:560px;

    object-fit:cover;

}

.carousel-control-prev,
.carousel-control-next{

    width:55px;

    height:55px;

    top:50%;

    transform:translateY(-50%);

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(15px);

    border-radius:50%;

    opacity:1;

}

.carousel-control-prev{

    left:20px;

}

.carousel-control-next{

    right:20px;

}

.carousel-control-prev i,
.carousel-control-next i{

    color:#39FF88;

    font-size:22px;

}

/*=============================
TEXT
=============================*/

.about-title{

    color:#fff;

    font-size:52px;

    font-weight:800;

    margin:20px 0;

}

.about-description{

    color:#B8C9DB;

    line-height:2;

    margin-bottom:40px;

}

.about-description strong{

    color:#39FF88;

}

/*=============================
EVENT INFO
=============================*/

.event-info{

    display:flex;

    flex-direction:column;

    gap:18px;

}

.event-card{

    display:flex;

    align-items:center;

    gap:20px;

    padding:22px;

    border-radius:20px;

    background:rgba(255,255,255,.05);

    border:1px solid rgba(255,255,255,.08);

    transition:.35s;

}

.event-card:hover{

    transform:translateX(8px);

    border-color:#39FF88;

    box-shadow:

    0 15px 35px rgba(57,255,136,.15);

}

.event-icon{

    width:68px;

    height:68px;

    border-radius:18px;

    background:

    linear-gradient(135deg,#39FF88,#00B8FF);

    display:flex;

    align-items:center;

    justify-content:center;

    flex-shrink:0;

}

.event-icon i{

    color:#04172D;

    font-size:26px;

}

.event-card h6{

    color:#fff;

    font-size:18px;

    margin-bottom:6px;

    font-weight:700;

}

.event-card p{

    color:#B8C9DB;

    margin:0;

    line-height:1.8;

}

.event-card a{

    color:#B8C9DB;

    text-decoration:none;

}

.event-card a:hover{

    color:#39FF88;

}

/*=============================
RESPONSIVE
=============================*/

@media(max-width:991px){

.about-section{

padding:80px 0;

}

.about-title{

font-size:38px;

margin-top:30px;

}

.about-slider img{

height:420px;

}

}

@media(max-width:576px){

.about-title{

font-size:30px;

}

.about-slider img{

height:300px;

}

.event-card{

padding:18px;

}

.event-icon{

width:55px;

height:55px;

}

.event-icon i{

font-size:20px;

}

}
/* About END */


/* Benefit */
/*====================================
BENEFIT SECTION
====================================*/
/*=========================================
BENEFIT SECTION
=========================================*/

.benefit-section{

    position:relative;
    overflow:hidden;
    padding:100px 0;
    background:#05192F;

}

.benefit-section::before{

    content:"";
    position:absolute;
    width:550px;
    height:550px;
    left:-220px;
    bottom:-250px;
    border-radius:50%;

    background:
    radial-gradient(circle,
    rgba(57,255,136,.10),
    transparent 70%);

}

.benefit-section::after{

    content:"";
    position:absolute;
    width:500px;
    height:500px;
    right:-180px;
    top:-180px;
    border-radius:50%;

    background:
    radial-gradient(circle,
    rgba(0,184,255,.10),
    transparent 70%);

}

.benefit-section .container{

    position:relative;
    z-index:2;

}

/*==========================
TITLE
==========================*/

.benefit-title{

    color:#fff;

    font-size:52px;

    font-weight:800;

    margin:20px 0;

}

.benefit-description{

    color:#B8C9DB;

    line-height:1.9;

    margin-bottom:45px;

    max-width:620px;

}

/*==========================
CARD
==========================*/

.benefit-card{

    background:rgba(255,255,255,.05);

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.08);

    border-radius:24px;

    padding:35px 20px;

    text-align:center;

    transition:.35s;

    height:100%;

    box-shadow:
    0 15px 35px rgba(0,0,0,.25);

}

.benefit-card:hover{

    transform:translateY(-10px);

    border-color:#39FF88;

    box-shadow:
    0 25px 50px rgba(57,255,136,.18);

}

/*==========================
ICON
==========================*/

.benefit-icon{

    width:80px;

    height:80px;

    margin:auto;

    margin-bottom:25px;

    border-radius:22px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:

    linear-gradient(135deg,#39FF88,#00B8FF);

    box-shadow:

    0 15px 30px rgba(57,255,136,.25);

}

.benefit-icon i{

    color:#04172D;

    font-size:34px;

}

/*==========================
TEXT
==========================*/

.benefit-card h5{

    color:#fff;

    font-weight:700;

    font-size:20px;

    margin:0;

}

/*==========================
IMAGE
==========================*/

.benefit-image{

    width:100%;

    max-width:520px;

    filter:

    drop-shadow(0 25px 45px rgba(0,0,0,.35));

    transition:.5s;

}

.benefit-image:hover{

    transform:translateY(-8px) scale(1.02);

}

/*==========================
RESPONSIVE
==========================*/

@media(max-width:991px){

    .benefit-section{

        padding:80px 0;

    }

    .benefit-title{

        font-size:38px;

        margin-top:20px;

    }

    .benefit-description{

        margin-bottom:35px;

    }

    .benefit-image{

        margin-top:50px;

        max-width:420px;

    }

}

@media(max-width:576px){

    .benefit-title{

        font-size:30px;

    }

    .benefit-card{

        padding:28px 15px;

    }

    .benefit-icon{

        width:65px;

        height:65px;

        border-radius:18px;

    }

    .benefit-icon i{

        font-size:28px;

    }

    .benefit-card h5{

        font-size:17px;

    }

}
/* BEnefit ENd */


/* FAQ */

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

.faq-section{

    position:relative;

    overflow:hidden;

    padding:100px 0;

    background:#04172D;

}

.faq-section::before{

    content:"";

    position:absolute;

    width:550px;

    height:550px;

    top:-220px;

    left:-220px;

    border-radius:50%;

    background:
    radial-gradient(circle,
    rgba(57,255,136,.10),
    transparent 70%);

}

.faq-section::after{

    content:"";

    position:absolute;

    width:500px;

    height:500px;

    bottom:-220px;

    right:-220px;

    border-radius:50%;

    background:
    radial-gradient(circle,
    rgba(0,184,255,.10),
    transparent 70%);

}

.faq-section .container{

    position:relative;

    z-index:2;

}

/*=========================================
HEADER
=========================================*/

.faq-header{

    margin-bottom:60px;

}

.faq-title{

    color:#fff;

    font-size:52px;

    font-weight:800;

    margin:20px 0;

}

.faq-subtitle{

    color:#B8C9DB;

    max-width:700px;

    margin:auto;

    line-height:1.9;

}

/*=========================================
WRAPPER
=========================================*/

.faq-wrapper{

    max-width:900px;

    margin:auto;

}

/*=========================================
ACCORDION
=========================================*/

.accordion{

    --bs-accordion-bg:transparent;

    --bs-accordion-border-color:transparent;

}

.accordion-item{

    margin-bottom:20px;

    border:none;

    border-radius:20px !important;

    overflow:hidden;

    background:rgba(255,255,255,.05);

    border:1px solid rgba(255,255,255,.08);

    backdrop-filter:blur(20px);

    transition:.35s;

}

.accordion-item:hover{

    border-color:#39FF88;

    box-shadow:

    0 18px 35px rgba(57,255,136,.12);

}

/*=========================================
BUTTON
=========================================*/

.accordion-button{

    background:transparent;

    color:#fff;

    font-size:20px;

    font-weight:700;

    padding:26px 30px;

    box-shadow:none;

}

.accordion-button:not(.collapsed){

    color:#39FF88;

    background:rgba(57,255,136,.05);

}

.accordion-button:focus{

    box-shadow:none;

}

.accordion-button::after{

    filter:brightness(0) invert(1);

}

.accordion-button:not(.collapsed)::after{

    filter:none;

}

/*=========================================
BODY
=========================================*/

.accordion-body{

    padding:25px 30px 30px;

    color:#B8C9DB;

    line-height:1.9;

}

/*=========================================
PRICE CARD
=========================================*/

.price-card{

    background:rgba(255,255,255,.04);

    border:1px solid rgba(255,255,255,.08);

    border-radius:18px;

    padding:22px;

}

.price-card h5{

    color:#39FF88;

    font-weight:700;

    margin-bottom:18px;

}

.price-row{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:12px 0;

    border-bottom:1px solid rgba(255,255,255,.08);

}

.price-row:last-child{

    border:none;

}

.price-row span{

    color:#B8C9DB;

}

.price-row strong{

    color:#fff;

    font-size:18px;

}

/*=========================================
RESPONSIVE
=========================================*/

@media(max-width:991px){

    .faq-section{

        padding:80px 0;

    }

    .faq-title{

        font-size:40px;

    }

}

@media(max-width:576px){

    .faq-title{

        font-size:30px;

    }

    .accordion-button{

        font-size:17px;

        padding:22px;

    }

    .accordion-body{

        padding:22px;

    }

}

/* FAQ END */

/* CONTACT */
/*=========================================
CONTACT SECTION
=========================================*/

.contact-section{

    position:relative;

    overflow:hidden;

    padding:100px 0;

    background:#05192F;

}

.contact-section::before{

    content:"";

    position:absolute;

    width:550px;

    height:550px;

    top:-220px;

    right:-220px;

    border-radius:50%;

    background:
    radial-gradient(circle,
    rgba(57,255,136,.10),
    transparent 70%);

}

.contact-section::after{

    content:"";

    position:absolute;

    width:500px;

    height:500px;

    left:-220px;

    bottom:-220px;

    border-radius:50%;

    background:
    radial-gradient(circle,
    rgba(0,184,255,.10),
    transparent 70%);

}

.contact-section .container{

    position:relative;

    z-index:2;

}

/*=========================
HEADER
=========================*/

.contact-header{

    margin-bottom:70px;

}

.contact-title{

    color:#fff;

    font-size:52px;

    font-weight:800;

    margin:20px 0;

}

.contact-subtitle{

    color:#B8C9DB;

    line-height:1.9;

    max-width:700px;

    margin:auto;

}

/*=========================
CARD
=========================*/

.contact-card{

    background:rgba(255,255,255,.05);

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.08);

    border-radius:30px;

    padding:45px;

    text-align:center;

    transition:.35s;

    height:100%;

    box-shadow:
    0 20px 50px rgba(0,0,0,.30);

}

.contact-card:hover{

    transform:translateY(-10px);

    border-color:#39FF88;

    box-shadow:
    0 25px 60px rgba(57,255,136,.18);

}

/*=========================
ICON
=========================*/

.contact-avatar{

    width:95px;

    height:95px;

    margin:auto;

    margin-bottom:25px;

    border-radius:24px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:
    linear-gradient(135deg,#39FF88,#00B8FF);

    box-shadow:
    0 15px 30px rgba(57,255,136,.25);

}

.contact-avatar i{

    color:#04172D;

    font-size:42px;

}

/*=========================
LABEL
=========================*/

.contact-label{

    display:inline-block;

    margin-bottom:12px;

    padding:8px 18px;

    border-radius:40px;

    background:rgba(57,255,136,.12);

    color:#39FF88;

    font-size:13px;

    font-weight:700;

    letter-spacing:.5px;

    text-transform:uppercase;

}

/*=========================
TEXT
=========================*/

.contact-card h4{

    color:#fff;

    font-size:30px;

    font-weight:800;

    margin-bottom:18px;

}

.contact-card p{

    color:#B8C9DB;

    line-height:1.8;

    margin-bottom:30px;

}

/*=========================
INFO
=========================*/

.contact-info{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:12px;

    margin-bottom:30px;

    color:#B8C9DB;

}

.contact-info i{

    color:#39FF88;

}

/*=========================
BUTTON
=========================*/

.btn-whatsapp{

    width:100%;

    height:58px;

    display:flex;

    align-items:center;

    justify-content:center;

    gap:12px;

    border-radius:50px;

    text-decoration:none;

    font-size:17px;

    font-weight:700;

    color:#04172D;

    background:
    linear-gradient(90deg,#39FF88,#00B8FF);

    transition:.35s;

    box-shadow:
    0 15px 35px rgba(57,255,136,.25);

}

.btn-whatsapp:hover{

    transform:translateY(-4px);

    color:#04172D;

    box-shadow:
    0 22px 45px rgba(57,255,136,.35);

}

.btn-whatsapp i{

    font-size:22px;

}

/*=========================
RESPONSIVE
=========================*/

@media(max-width:991px){

    .contact-section{

        padding:80px 0;

    }

    .contact-title{

        font-size:40px;

    }

    .contact-card{

        padding:35px;

    }

}

@media(max-width:576px){

    .contact-title{

        font-size:30px;

    }

    .contact-card{

        padding:28px;

        border-radius:22px;

    }

    .contact-avatar{

        width:75px;

        height:75px;

        border-radius:18px;

    }

    .contact-avatar i{

        font-size:32px;

    }

    .contact-card h4{

        font-size:24px;

    }

    .btn-whatsapp{

        height:54px;

        font-size:15px;

    }

}
/* CONTACT END */

/* FOOTER===================================================================================== */
/*==================================
FOOTER
==================================*/

.app-footer{

    position:relative;

    background:#04172d;

    overflow:hidden;

    padding:90px 0 35px;

    color:#dbe8f6;

}

/* Background Glow */

.app-footer::before{

    content:"";

    position:absolute;

    width:500px;

    height:500px;

    top:-180px;

    right:-120px;

    border-radius:50%;

    background:radial-gradient(circle,
        rgba(57,255,136,.12),
        transparent 70%);

}

.app-footer::after{

    content:"";

    position:absolute;

    width:500px;

    height:500px;

    left:-200px;

    bottom:-250px;

    border-radius:50%;

    background:radial-gradient(circle,
        rgba(0,184,255,.10),
        transparent 70%);

}

.app-footer .container{

    position:relative;

    z-index:2;

}

/* Logo */

.app-footer-logo{

    width:140px;

    margin-bottom:25px;

}

/* Description */

.app-footer-desc{

    color:#b8c9db;

    line-height:1.9;

    margin-bottom:30px;

}

/* Title */

.app-footer-title{

    color:#39FF88;

    font-size:22px;

    font-weight:700;

    margin-bottom:25px;

}

/* Links */

.app-footer-links{

    list-style:none;

    margin:0;

    padding:0;

}

.app-footer-links li{

    margin-bottom:14px;

}

.app-footer-links a{

    color:#dbe8f6;

    transition:.3s;

    text-decoration:none;

}

.app-footer-links a:hover{

    color:#39FF88;

    padding-left:8px;

}

/* Contact */

.app-footer-contact{

    list-style:none;

    margin:0;

    padding:0;

}

.app-footer-contact li{

    display:flex;

    align-items:center;

    gap:15px;

    margin-bottom:18px;

    color:#dbe8f6;

}

.app-footer-contact i{

    width:42px;

    height:42px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:rgba(255,255,255,.06);

    color:#39FF88;

    font-size:18px;

}

/* Social */

.app-footer-social{

    display:flex;

    gap:15px;

}

.app-footer-social a{

    width:48px;

    height:48px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:rgba(255,255,255,.06);

    color:#ffffff;

    transition:.35s;

    text-decoration:none;

    border:1px solid rgba(255,255,255,.08);

}

.app-footer-social a:hover{

    transform:translateY(-6px);

    background:#39FF88;

    color:#04172d;

    box-shadow:0 10px 25px rgba(57,255,136,.35);

}

/* Divider */

.footer-divider{

    border-color:rgba(255,255,255,.08);

    margin:50px 0 30px;

}

/* Bottom */

.app-footer-bottom{

    display:flex;

    justify-content:space-between;

    align-items:center;

    flex-wrap:wrap;

    gap:15px;

    color:#9eb4c9;

    font-size:15px;

}

.app-footer-bottom strong{

    color:#ffffff;

}

.app-footer-bottom a{

    color:#39FF88;

    text-decoration:none;

    font-weight:600;

}

.app-footer-bottom a:hover{

    color:#00d9ff;

}

/* Responsive */

@media(max-width:991px){

    .app-footer{

        text-align:center;

        padding-top:70px;

    }

    .app-footer-logo{

        margin:auto auto 25px;

    }

    .app-footer-social{

        justify-content:center;

    }

    .app-footer-contact li{

        justify-content:center;

    }

    .app-footer-bottom{

        justify-content:center;

        text-align:center;

    }

}
/* FOOTER END================================================================================== */







/* REGISTER ================================================================================== */
/*==================================================
REGISTRATION PAGE
==================================================*/
/*==================================================
GLOBAL
==================================================*/

body{

    background:#04172D;

    color:#fff;

}

/*==================================================
REGISTRATION HERO
==================================================*/

.registration-hero{

    position:relative;

    overflow:hidden;

    padding:180px 0 130px;

    background:
    linear-gradient(
    rgba(4,23,45,.80),
    rgba(4,23,45,.88)),
    url('../img/hero-runner.png') center center/cover no-repeat;

}

/* Glow kiri */

.registration-hero::before{

    content:"";

    position:absolute;

    width:650px;

    height:650px;

    left:-250px;

    top:-220px;

    border-radius:50%;

    background:
    radial-gradient(circle,
    rgba(57,255,136,.18),
    transparent 70%);

}

/* Glow kanan */

.registration-hero::after{

    content:"";

    position:absolute;

    width:650px;

    height:650px;

    right:-220px;

    bottom:-260px;

    border-radius:50%;

    background:
    radial-gradient(circle,
    rgba(0,184,255,.16),
    transparent 70%);

}

/*================================*/

.hero-overlay{

    position:absolute;

    inset:0;

    background:

    linear-gradient(

    rgba(4,23,45,.35),

    rgba(4,23,45,.25)

    );

}

/*================================*/

.hero-content{

    position:relative;

    z-index:5;

    text-align:center;

    color:#fff;

}

/*================================*/

.hero-badge{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:10px 24px;

    border-radius:60px;

    background:rgba(57,255,136,.10);

    border:1px solid rgba(57,255,136,.20);

    backdrop-filter:blur(18px);

    color:#39FF88;

    font-weight:700;

    letter-spacing:.5px;

    margin-bottom:25px;

}

/*================================*/

.hero-title{

    font-size:64px;

    font-weight:800;

    color:#fff;

    line-height:1.15;

    margin-bottom:20px;

}

.hero-title span{

    display:block;

    color:#39FF88;

}

/*================================*/

.hero-subtitle{

    max-width:760px;

    margin:auto;

    color:#B8C9DB;

    font-size:18px;

    line-height:1.9;

}

/*================================*/

.hero-breadcrumb{

    margin-top:35px;

    display:flex;

    justify-content:center;

    align-items:center;

    gap:10px;

}

.hero-breadcrumb a{

    color:#39FF88;

    font-weight:700;

    text-decoration:none;

    transition:.3s;

}

.hero-breadcrumb a:hover{

    color:#00B8FF;

}

.hero-breadcrumb span{

    color:#90AFC7;

}

/*================================*/

.registration-hero .container{

    position:relative;

    z-index:3;

}

/*==================================================
RESPONSIVE
==================================================*/

@media(max-width:991px){

.registration-hero{

padding:150px 0 100px;

}

.hero-title{

font-size:46px;

}

.hero-subtitle{

font-size:16px;

}

}

@media(max-width:576px){

.registration-hero{

padding:135px 0 90px;

}

.hero-title{

font-size:34px;

line-height:1.25;

}

.hero-subtitle{

font-size:15px;

}

.hero-badge{

font-size:13px;

padding:8px 18px;

}

.hero-breadcrumb{

font-size:14px;

}

}

/*==================================================
CARD
==================================================*/

.ticket-selector-card,
.registration-card{

    position:relative;

    overflow:hidden;

    margin-top:35px;

    padding:35px;

    border-radius:28px;

    background:rgba(255,255,255,.05);

    backdrop-filter:blur(18px);

    -webkit-backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.08);

    box-shadow:
        0 20px 55px rgba(0,0,0,.28);

}

.ticket-selector-card::before,
.registration-card::before{

    content:"";

    position:absolute;

    width:260px;

    height:260px;

    top:-130px;

    right:-130px;

    border-radius:50%;

    background:
    radial-gradient(circle,
    rgba(57,255,136,.08),
    transparent 70%);

    pointer-events:none;

}

.ticket-selector-card::after,
.registration-card::after{

    content:"";

    position:absolute;

    width:220px;

    height:220px;

    bottom:-120px;

    left:-120px;

    border-radius:50%;

    background:
    radial-gradient(circle,
    rgba(0,184,255,.08),
    transparent 70%);

    pointer-events:none;

}

/* Hover */

.ticket-selector-card:hover,
.registration-card:hover{

    border-color:#39FF88;

    transform:translateY(-4px);

    transition:.35s;

    box-shadow:
        0 25px 60px rgba(57,255,136,.12);

}

/*==================================================
PRICE CARD
==================================================*/

#price-group{

    position:relative;

    overflow:hidden;

    border-radius:22px;

    padding:28px;

    margin-bottom:30px;

    background:
    linear-gradient(135deg,#39FF88,#00B8FF);

    border:none;

    box-shadow:
        0 18px 45px rgba(57,255,136,.22);

}

#price-group::after{

    content:"";

    position:absolute;

    width:180px;

    height:180px;

    right:-60px;

    top:-60px;

    border-radius:50%;

    background:
    rgba(255,255,255,.12);

}

#price-group label{

    position:relative;

    z-index:2;

    color:#04172D;

    font-weight:700;

    text-transform:uppercase;

    letter-spacing:.5px;

}

#priceView{

    position:relative;

    z-index:2;

    background:transparent !important;

    border:none !important;

    color:#04172D !important;

    font-size:44px;

    font-weight:800;

    box-shadow:none !important;

    padding:0;

}

/*==================================================
RADIO BUTTON
==================================================*/

.radio-button{

    display:block;

    margin-bottom:18px;

    cursor:pointer;

}

.radio-button input{

    display:none;

}

.radio-button span{

    display:flex;

    align-items:center;

    justify-content:center;

    padding:16px 28px;

    border-radius:60px;

    background:rgba(255,255,255,.04);

    border:1px solid rgba(255,255,255,.08);

    color:#B8C9DB;

    font-weight:700;

    transition:.35s;

    backdrop-filter:blur(12px);

}

.radio-button span:hover{

    border-color:#39FF88;

    color:#fff;

    transform:translateY(-2px);

}

.radio-button input:checked + span{

    color:#04172D;

    border-color:#39FF88;

    background:
    linear-gradient(135deg,#39FF88,#00B8FF);

    box-shadow:
        0 15px 35px rgba(57,255,136,.25);

}

.radio-button input:disabled + span{

    opacity:.45;

    cursor:not-allowed;

    transform:none;

}
/*==================================================
FORM
==================================================*/

.required-label{

    display:block;

    margin-bottom:10px;

    font-weight:700;

    color:#ffffff;

    letter-spacing:.3px;

}

.form-control,
.form-select{

    height:60px;

    background:rgba(255,255,255,.05);

    color:#ffffff;

    border:1px solid rgba(255,255,255,.08);

    border-radius:16px;

    padding:0 20px;

    backdrop-filter:blur(12px);

    transition:.35s;

}

.form-control::placeholder{

    color:#9DB3C8;

}

.form-select{

    color:#ffffff;

}

.form-select option{

    background:#04172D;

    color:#ffffff;

}

.form-control:focus,
.form-select:focus{

    background:rgba(255,255,255,.08);

    color:#ffffff;

    border-color:#39FF88;

    box-shadow:

        0 0 0 .2rem rgba(57,255,136,.15),

        0 10px 25px rgba(57,255,136,.08);

}

textarea.form-control{

    min-height:160px;

    padding:18px 20px;

    resize:vertical;

}

/*==================================================
COMMUNITY GROUP
==================================================*/

#comunity-group{

    position:relative;

    overflow:hidden;

    margin-top:20px;

    padding:30px;

    border-radius:24px;

    background:rgba(255,255,255,.04);

    border:1px solid rgba(255,255,255,.08);

    backdrop-filter:blur(18px);

}

#comunity-group::before{

    content:"";

    position:absolute;

    width:220px;

    height:220px;

    right:-100px;

    top:-100px;

    border-radius:50%;

    background:

    radial-gradient(circle,

    rgba(57,255,136,.08),

    transparent 70%);

}

/*==================================================
ALERT
==================================================*/

.alert-warning{

    background:rgba(255,193,7,.10);

    border:1px solid rgba(255,193,7,.30);

    border-left:5px solid #FFC107;

    color:#FFE082;

    border-radius:18px;

    backdrop-filter:blur(12px);

}

/*==================================================
CHECKBOX
==================================================*/

input[type=checkbox]{

    accent-color:#39FF88;

}

#terms + label{

    color:#B8C9DB;

    line-height:1.8;

}

#terms + label a{

    color:#39FF88;

    font-weight:700;

    text-decoration:none;

    transition:.3s;

}

#terms + label a:hover{

    color:#00B8FF;

}

/*==================================================
EMAIL VALIDATION
==================================================*/

.email-validation-message{

    display:block;

    margin-top:8px;

    font-size:14px;

    font-weight:600;

}

.email-validation-message.text-success{

    color:#39FF88 !important;

}

.email-validation-message.text-danger{

    color:#FF7D7D !important;

}

/*==================================================
BUTTON
==================================================*/

.btn-register{

    display:inline-flex;

    justify-content:center;

    align-items:center;

    gap:10px;

    height:60px;

    padding:0 55px;

    border:none;

    border-radius:60px;

    font-size:17px;

    font-weight:700;

    color:#04172D !important;

    background:

    linear-gradient(135deg,#39FF88,#00B8FF) !important;

    box-shadow:

        0 18px 35px rgba(57,255,136,.25);

    transition:.35s;

}

.btn-register:hover{

    transform:translateY(-4px);

    color:#04172D !important;

    box-shadow:

        0 22px 45px rgba(57,255,136,.35);

}

.btn-register:disabled{

    background:#7A8C9F !important;

    color:#E2E8F0 !important;

    box-shadow:none;

    cursor:not-allowed;

    opacity:.7;

}

/*==================================================
FILE INPUT
==================================================*/

input[type=file]{

    background:rgba(255,255,255,.04);

    color:#B8C9DB;

    border:1px solid rgba(255,255,255,.08);

    border-radius:16px;

    padding:14px;

}

input[type=file]::file-selector-button{

    background:

    linear-gradient(135deg,#39FF88,#00B8FF);

    color:#04172D;

    border:none;

    padding:10px 18px;

    margin-right:15px;

    border-radius:10px;

    font-weight:700;

    cursor:pointer;

}

/*==================================================
IMAGE PREVIEW
==================================================*/

#student-card-img{

    width:100%;

    max-width:350px;

    margin-top:18px;

    border-radius:22px;

    border:2px solid rgba(255,255,255,.10);

    background:rgba(255,255,255,.04);

    box-shadow:

        0 20px 45px rgba(0,0,0,.30);

}

/*==================================================
DYNAMIC FORM
==================================================*/

#dynamic-forms,
#dynamic-formsUmum{

    margin-top:30px;

}

/*==================================================
RESPONSIVE
==================================================*/

@media(max-width:991px){

    .registration-card,
    .ticket-selector-card{

        padding:28px;

    }

    #comunity-group{

        padding:22px;

    }

    #priceView{

        font-size:34px;

    }

    .btn-register{

        width:100%;

    }

}

@media(max-width:576px){

    .registration-card,
    .ticket-selector-card{

        padding:22px;

        border-radius:22px;

    }

    .required-label{

        font-size:14px;

    }

    .form-control,
    .form-select{

        height:56px;

        font-size:15px;

    }

    textarea.form-control{

        min-height:140px;

    }

    .btn-register{

        width:100%;

        height:56px;

        font-size:16px;

    }

    #student-card-img{

        max-width:100%;

    }

}
/* REGISTER END =============================================================================== */


/*==================================================
TNC PAGE
==================================================*/

.tnc-page{

    position:relative;

    overflow:hidden;

    padding:90px 0 110px;

    background:#04172D;

}

.tnc-page::before{

    content:"";

    position:absolute;

    width:650px;

    height:650px;

    left:-250px;

    top:-250px;

    border-radius:50%;

    background:
    radial-gradient(circle,
    rgba(57,255,136,.08),
    transparent 70%);

}

.tnc-page::after{

    content:"";

    position:absolute;

    width:650px;

    height:650px;

    right:-250px;

    bottom:-250px;

    border-radius:50%;

    background:
    radial-gradient(circle,
    rgba(0,184,255,.08),
    transparent 70%);

}

.tnc-page .container{

    position:relative;

    z-index:2;

}

/*==================================================
HERO
==================================================*/

.tnc-hero{

    max-width:900px;

    margin:auto;

    text-align:center;

}

.tnc-banner{

    border-radius:28px;

    overflow:hidden;

    border:1px solid rgba(255,255,255,.08);

    box-shadow:
        0 20px 60px rgba(0,0,0,.30);

}

.tnc-header{

    margin-top:35px;

}

.tnc-badge{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:10px 24px;

    border-radius:50px;

    background:rgba(57,255,136,.10);

    border:1px solid rgba(57,255,136,.20);

    backdrop-filter:blur(12px);

    color:#39FF88;

    font-size:14px;

    font-weight:700;

    letter-spacing:.5px;

    margin-bottom:24px;

}

.tnc-title{

    font-size:52px;

    font-weight:800;

    color:#ffffff;

    margin-bottom:20px;

}

.tnc-subtitle{

    max-width:720px;

    margin:auto;

    color:#B8C9DB;

    line-height:1.9;

    font-size:17px;

}

/*==================================================
CARD
==================================================*/

.tnc-card{

    margin-top:45px;

    background:rgba(255,255,255,.05);

    backdrop-filter:blur(20px);

    border-radius:28px;

    border:1px solid rgba(255,255,255,.08);

    overflow:hidden;

    box-shadow:
        0 20px 60px rgba(0,0,0,.28);

}

/*==================================================
HEADER
==================================================*/

.tnc-card-header{

    background:
    linear-gradient(135deg,#39FF88,#00B8FF);

    padding:26px 35px;

}

.tnc-card-header h4{

    margin:0;

    color:#04172D;

    font-size:24px;

    font-weight:800;

}

.tnc-card-header i{

    color:#04172D;

}

/*==================================================
BODY
==================================================*/

.tnc-card-body{

    padding:40px;

}

/*==================================================
LIST
==================================================*/

.tnc-list{

    margin:0;

    padding:0;

    list-style:none;

    counter-reset:tnc;

}

.tnc-list li{

    position:relative;

    padding:22px 0 22px 72px;

    border-bottom:1px solid rgba(255,255,255,.08);

    color:#C7D6E4;

    line-height:1.9;

    counter-increment:tnc;

}

.tnc-list li:last-child{

    border-bottom:none;

}

.tnc-list li::before{

    content:counter(tnc);

    position:absolute;

    left:0;

    top:18px;

    width:46px;

    height:46px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    font-weight:800;

    color:#04172D;

    background:
    linear-gradient(135deg,#39FF88,#00B8FF);

    box-shadow:
        0 12px 28px rgba(57,255,136,.25);

}

/*==================================================
CONTENT
==================================================*/

.tnc-list strong{

    color:#ffffff;

    font-weight:700;

}

.tnc-list p{

    margin-bottom:12px;

}

.tnc-list ul{

    margin-top:12px;

    margin-bottom:0;

}

.tnc-list ul li{

    padding:8px 0;

    color:#AFC4D7;

    border:none;

}

.tnc-list ul li::before{

    display:none;

}

/*==================================================
LINK
==================================================*/

.tnc-list a{

    color:#39FF88;

    font-weight:700;

    text-decoration:none;

    transition:.3s;

}

.tnc-list a:hover{

    color:#00B8FF;

}

/*==================================================
TABLE
==================================================*/

.tnc-card table{

    width:100%;

    border-collapse:collapse;

    margin-top:25px;

    overflow:hidden;

}

.tnc-card table th{

    background:rgba(57,255,136,.12);

    color:#39FF88;

    padding:15px;

    border:1px solid rgba(255,255,255,.08);

}

.tnc-card table td{

    padding:15px;

    color:#D2E0EC;

    border:1px solid rgba(255,255,255,.08);

    background:rgba(255,255,255,.02);

}

/*==================================================
RESPONSIVE
==================================================*/

@media(max-width:991px){

    .tnc-page{

        padding:80px 0;

    }

    .tnc-title{

        font-size:42px;

    }

    .tnc-card-body{

        padding:30px;

    }

}

@media(max-width:768px){

    .tnc-title{

        font-size:34px;

    }

    .tnc-subtitle{

        font-size:15px;

    }

    .tnc-card-header{

        padding:22px;

    }

    .tnc-card-header h4{

        font-size:20px;

    }

    .tnc-card-body{

        padding:24px;

    }

    .tnc-list li{

        padding-left:60px;

        font-size:15px;

    }

    .tnc-list li::before{

        width:38px;

        height:38px;

        font-size:14px;

    }

}

@media(max-width:576px){

    .tnc-page{

        padding:70px 0;

    }

    .tnc-title{

        font-size:28px;

    }

    .tnc-badge{

        font-size:13px;

        padding:8px 18px;

    }

    .tnc-list li{

        line-height:1.8;

    }

}


/* MODAL  */
/*==================================================
RUNNER MODAL - PJK RUN
==================================================*/

#runnerModal .modal-content{

    background:rgba(5,25,47,.98);

    border:1px solid rgba(255,255,255,.08);

    border-radius:28px !important;

    overflow:hidden;

    backdrop-filter:blur(18px);

    box-shadow:
        0 25px 80px rgba(0,0,0,.45);

}

/*========================================
HEADER
========================================*/

#runnerModal .modal-header{

    border:none;

    padding:22px 28px;

    background:linear-gradient(135deg,#39FF88,#00B8FF);

}

#runnerModal .modal-title{

    color:#04172D;

    font-size:24px;

    font-weight:800;

}

#runnerModal .btn-close{

    filter:brightness(.2);

    opacity:1;

}

#runnerModal .btn-close:focus{

    box-shadow:none;

}

/*========================================
BODY
========================================*/

#runnerModal .modal-body{

    padding:30px;

    color:#D9E7F2;

}

#runnerModal .modal-body p{

    margin-bottom:14px;

    color:#C7D6E4;

}

#runnerModal .modal-body strong{

    color:#ffffff;

    min-width:120px;

    display:inline-block;

}

/*========================================
STATUS BADGE
========================================*/

#m_status{

    padding:8px 18px;

    border-radius:30px;

    font-size:13px;

    font-weight:700;

    background:#1E293B;

    color:#fff;

}

/*========================================
WARNING TEXT
========================================*/

#m_text{

    display:block;

    margin-top:18px;

    padding:14px 18px;

    background:rgba(255,193,7,.10);

    border-left:4px solid #FFC107;

    border-radius:12px;

    color:#FFE082 !important;

    font-size:14px;

}

/*========================================
CARD
========================================*/

#runnerModal .card{

    margin-top:30px;

    background:rgba(255,255,255,.04);

    border:1px solid rgba(255,255,255,.08);

    border-radius:22px;

    overflow:hidden;

    backdrop-filter:blur(14px);

}

#runnerModal .card-header{

    border:none;

    padding:18px 24px;

    font-weight:700;

    font-size:17px;

}

#tableSingle{

    background:linear-gradient(135deg,#39FF88,#00B8FF)!important;

    color:#04172D!important;

}

/*========================================
TABLE
========================================*/

#runnerModal table{

    margin:0;

    color:#DCE7F0;

}

#runnerModal thead{

    background:rgba(57,255,136,.10);

}

#runnerModal thead th{

    color:#39FF88;

    font-weight:700;

    border-color:rgba(255,255,255,.08);

    background:transparent;

    text-align:center;

}

#runnerModal tbody td{

    border-color:rgba(255,255,255,.08);

    background:transparent;

    vertical-align:middle;

}

#runnerModal tbody tr{

    transition:.25s;

}

#runnerModal tbody tr:hover{

    background:rgba(57,255,136,.05);

}

#runnerModal tbody td:first-child{

    width:60px;

    text-align:center;

}

/*========================================
TABLE RESPONSIVE
========================================*/

#runnerModal .table-responsive{

    border-radius:18px;

    overflow:hidden;

}

/*========================================
SCROLLBAR
========================================*/

#runnerModal .modal-body::-webkit-scrollbar{

    width:8px;

}

#runnerModal .modal-body::-webkit-scrollbar-thumb{

    background:#39FF88;

    border-radius:20px;

}

#runnerModal .modal-body::-webkit-scrollbar-track{

    background:rgba(255,255,255,.05);

}

/*========================================
BACKDROP
========================================*/

.modal-backdrop.show{

    opacity:.75;

    backdrop-filter:blur(6px);

}

/*========================================
MODAL ANIMATION
========================================*/

#runnerModal .modal-content{

    animation:modalScale .35s ease;

}

@keyframes modalScale{

    from{

        opacity:0;

        transform:translateY(30px) scale(.95);

    }

    to{

        opacity:1;

        transform:translateY(0) scale(1);

    }

}

/*========================================
RESPONSIVE
========================================*/

@media(max-width:768px){

    #runnerModal .modal-body{

        padding:22px;

    }

    #runnerModal .modal-title{

        font-size:20px;

    }

    #runnerModal .card-header{

        font-size:15px;

    }

    #runnerModal table{

        font-size:14px;

    }

}

@media(max-width:576px){

    #runnerModal .modal-dialog{

        margin:12px;

    }

    #runnerModal .modal-content{

        border-radius:20px !important;

    }

    #runnerModal .modal-header{

        padding:18px 20px;

    }

    #runnerModal .modal-body{

        padding:18px;

    }

}
/* MODAL END */