/* ===========================================
   GOOGLE FONTS
=========================================== */

@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Inter:wght@300;400;500;600;700;800&display=swap');

/* ===========================================
   RESET
=========================================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{

    font-family:'Inter',sans-serif;
    background:#090909;
    color:#fff;
    overflow-x:hidden;

}

img{
    max-width:100%;
    display:block;
}

a{
    text-decoration:none;
}

ul{
    list-style:none;
}

.container{

    width:min(1320px,92%);
    margin:auto;

}

/* ===========================================
   COLORS
=========================================== */

:root{

  --primary: #e85d00;
  --primary-rgb:  232, 93, 0;
 --primary-dark: #b84700;
 --primary-light: #ff7f2a;
 /*--primary:#b8860b;
  --primary-dark:#8f6908;
  --primary-light:#d4a62a;
  --primary-rgb:  184, 134, 11;*/
    --dark:#090909;
    --dark2:#121212;
    --text:#ffffff;
    --gray:#bfbfbf;

}


/*==========================
PAGE LOADER
==========================*/

.page-loader{

    position:fixed;

    inset:0;

    background:#050505;

    display:flex;

    justify-content:center;

    align-items:center;

    z-index:999999;

}

.loader-inner{

    text-align:center;

}

.barbell{

  position:relative;

  width:220px;

  height:40px;

  margin:auto;

  display:flex;

  justify-content:center;

  align-items:center;
  animation:lift 1.5s infinite ease-in-out;

}

/* Bar */

.bar{

  display:block;

 width:120px;

 height:8px;

 background:#fff;

 border-radius:50px;
 box-shadow:0 0 20px rgba(255,102,0,.4);

}

/* Plates */

.plate{

  display:block;

  position:absolute;

  width:34px;

  height:34px;

  border:6px solid var(--primary);

  border-radius:50%;

  background:#111;
   box-shadow:0 0 30px rgba(184,134,11,.5);


}

.left{

    left:0;

    animation:leftPlate 1.4s infinite ease-in-out;

}

.right{

    right:0;

    animation:rightPlate 1.4s infinite ease-in-out;

}

/* Text */

.loader-text{

    margin-top:35px;

    font-size:18px;

    letter-spacing:8px;

    color:var(--primary);

    font-weight:700;

    animation:textPulse 1.5s infinite;

}


/* Animations */

@keyframes leftPlate{

  0%,100%{
    transform:translateX(0) scale(1);
}

50%{
    transform:translateX(35px) scale(1.15);
}

}

@keyframes rightPlate{

  0%,100%{
     transform:translateX(0) scale(1);
 }

 50%{
     transform:translateX(-35px) scale(1.15);
 }

}

@keyframes textFade{

    0%,100%{

        opacity:.3;

    }

    50%{

        opacity:1;

    }

}


@keyframes textPulse{

    0%,100%{

        opacity:.5;
        letter-spacing:6px;

    }

    50%{

        opacity:1;
        letter-spacing:10px;

    }

}

/*=========================================
SMOKE PARTICLES
=========================================*/

.smoke{

    position:absolute;

    inset:0;

    overflow:hidden;

    pointer-events:none;

}

.smoke span{

    position:absolute;

    bottom:-80px;

    width:140px;

    height:140px;

    border-radius:50%;

    background:radial-gradient(

        rgba(255,255,255,.18),

        rgba(255,255,255,.06),

        transparent 70%

    );

    filter:blur(25px);

    animation:smoke 10s linear infinite;

}

/* Different positions */

.smoke span:nth-child(1){

    left:15%;

    animation-delay:0s;

}

.smoke span:nth-child(2){

    left:35%;

    animation-delay:2s;

}

.smoke span:nth-child(3){

    left:55%;

    animation-delay:4s;

}

.smoke span:nth-child(4){

    left:75%;

    animation-delay:1s;

}

.smoke span:nth-child(5){

    left:85%;

    animation-delay:3s;

}

.smoke span:nth-child(6){

    left:50%;

    animation-delay:5s;

}


@keyframes smoke{

    0%{

        transform:

            translateY(0)

            scale(.3);

        opacity:0;

    }

    20%{

        opacity:.4;

    }

    70%{

        opacity:.18;

    }

    100%{

        transform:

            translateY(-110vh)

            scale(2.8)

            rotate(180deg);

        opacity:0;

    }

}

/*==================================================
HEADER
==================================================*/

.header{

    position:fixed;

    top:0;
    left:0;

    width:100%;

    z-index:9999;

    padding:25px 0;

    transition:.4s;

}

.header.scrolled{

    background:rgba(0,0,0,.92);

    backdrop-filter:blur(15px);

    padding:18px 0;

    box-shadow:0 15px 40px rgba(0,0,0,.35);

}

.navbar{

    display:flex;

    justify-content:space-between;

    align-items:center;

}

.logo{

    display:flex;
    align-items:center;
    gap:14px;
    color:#fff;

}

.logo-icon{

    width:75px;
    height:60px;

    display:flex;
    justify-content:center;
    align-items:center;

    font-family:'Bebas Neue';
    font-size:28px;

}

.logo h2{

    font-family:'Bebas Neue';
    letter-spacing:2px;
    font-size:30px;
    line-height: 1;
}

.logo small{
    font-size:13px;
    color:var(--primary);
    letter-spacing:0px;
    text-transform: uppercase;
}

.nav-menu{

    display:flex;

    align-items:center;

    gap:35px;

}


/*==================================================
HERO
==================================================*/

.hero{

    position:relative;

    min-height:100vh;

    display:flex;

    align-items:center;

    overflow:hidden;

    background:#050505;

}


/* Background */

.hero-bg{

    position:absolute;

    inset:0;

    z-index:1;

}

.hero-bg img{

    width:100%;

    height:100%;

    object-fit:cover;

    object-position:center;

}


/* Dark Overlay */

.hero-overlay{

    position:absolute;

    inset:0;

    z-index:2;

    background:
    linear-gradient(
        90deg,
        rgba(0,0,0,.92) 0%,
        rgba(0,0,0,.82) 28%,
        rgba(0,0,0,.55) 55%,
        rgba(0,0,0,.35) 100%
    );

}


/* Orange Glow */

.hero-glow{

    position:absolute;

    right:-300px;

    top:50%;

    transform:translateY(-50%);

    width:850px;

    height:850px;

    border-radius:50%;

    background:radial-gradient(

      rgba(255,255,255,.35),

  rgba(255,255,255,.12),

  transparent 70%

    );

    filter:blur(15px);

    z-index:2;

}


/*==================================================
CONTENT
==================================================*/

.hero .container{

    position:relative;

    z-index:5;

}

.hero-wrapper{

    display:grid;

    grid-template-columns:48% 52%;

    align-items:center;

    min-height:100vh;

}


/* Left */

.hero-content{

    max-width:640px;

    padding-top:120px;

}


/* Right */

.hero-image{

    position:relative;

    display:flex;

    justify-content:flex-end;

    align-items:flex-end;

    height:100vh;

}


/* Athlete */

.athlete{

    position:absolute;

    bottom:0;

    right:-60px;

    width:760px;

    max-width:none;

    z-index:10;

}


/*==================================================
SCROLL INDICATOR
==================================================*/

.scroll-down{

    position:absolute;

    left:50%;

    bottom:40px;

    transform:translateX(-50%);

    width:34px;

    height:58px;

    border:2px solid rgba(255,255,255,.7);

    border-radius:40px;

    display:flex;

    justify-content:center;

    padding-top:8px;

    z-index:20;

}

.scroll-down span{

    width:5px;

    height:12px;

    border-radius:10px;

    background:#fff;

    animation:scrollMouse 1.8s infinite;

}

@keyframes scrollMouse{

    0%{

        transform:translateY(0);

        opacity:1;

    }

    100%{

        transform:translateY(20px);

        opacity:0;

    }

}

/*==================================================
HERO TYPOGRAPHY
==================================================*/

.hero-subtitle{

    display:inline-block;

    color:var(--primary);

    font-size:16px;

    font-weight:700;

    letter-spacing:6px;

    text-transform:uppercase;

    margin-bottom:25px;

}

.hero-content h1{

    font-family:'Bebas Neue', sans-serif;

    font-size:100px;

    line-height:.88;

    letter-spacing:1px;

    text-transform:uppercase;

    color:#fff;

    margin-bottom:15px;

}

.hero-content h1 span{

    display:block;

    color:var(--primary);

}

.hero-content p{

    max-width:580px;

    color:#d2d2d2;

    font-size:19px;

    line-height:1.5;

    margin-bottom:25px;

}


/*==================================================
BUTTONS
==================================================*/

.hero-buttons{

    display:flex;

    align-items:center;

    gap:20px;

    margin-bottom:70px;

}

.btn-primary{

    display:inline-flex;

    justify-content:center;

    align-items:center;

    padding:18px 42px;

    background:var(--primary);

    color:#fff;

    border-radius:60px;

    font-size:16px;

    font-weight:600;

    transition:.35s;


}

.btn-primary:hover{

    transform:translateY(-5px);

    background:var(--primary-dark);
    color: #fff !important;


}
.btn-primary i {
  margin-right: 6px;
}
.btn-outline{

    display:inline-flex;

    justify-content:center;

    align-items:center;

    padding:18px 42px;

    border:2px solid rgba(255,255,255,.75);

    color:#fff;

    border-radius:60px;

    transition:.35s;

}

.btn-outline:hover{

    background:#fff;

    color:#111;

    transform:translateY(-5px);

}


/*==================================================
STATS
==================================================*/

.hero-stats{

    display:flex;

    gap:70px;

    align-items:flex-start;

}

.stat-item{

    position:relative;

}

.stat-item:not(:last-child)::after{

    content:"";

    position:absolute;

    right:-35px;

    top:8px;

    width:1px;

    height:65px;

    background:rgba(255,255,255,.12);

}

.stat-item h2{

    font-family:'Bebas Neue', sans-serif;

    font-size:68px;

    color:var(--primary);

    line-height:1;

    margin-bottom:10px;

}

.stat-item p{

    margin:0;

    font-size:15px;

    text-transform:uppercase;

    letter-spacing:2px;

    color:#bdbdbd;

}


/*==================================================
NAVIGATION
==================================================*/

.nav-menu a{

    position:relative;

    color:#fff;

    font-size:15px;

    font-weight:500;

    transition:.3s;
    text-transform: uppercase;

}

.nav-menu a::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-8px;

    width:0;

    height:2px;

    background:var(--primary);

    transition:.35s;

}

.nav-menu a:hover,

.nav-menu a.active{

    color:var(--primary);

}

.nav-menu a:hover::after,

.nav-menu a.active::after{

    width:100%;

}


/*==================================================
HEADER CTA
==================================================*/

.btn-nav{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:15px 34px;

    border-radius:50px;

    background:var(--primary);

    color:#fff;

    font-weight:600;

    transition:.35s;

}

.btn-nav:hover{

    transform:translateY(-3px);

    background:var(--primary-dark);

}
.btn-nav i {
  margin-right: 6px;
}
/*==================================
Hamburger
===================================*/

.menu-toggle{

    display:none;

    width:42px;

    cursor:pointer;

}

.menu-toggle span{

    display:block;

    height:3px;

    background:#fff;

    margin:8px 0;

    border-radius:20px;

    transition:.35s;

}


/*==================================
Mobile Menu
===================================*/

.mobile-menu{

    position:fixed;

    top:0;

    right:-100%;

    width:320px;

    height:100vh;

    background:#111;

    padding:100px 40px;

    z-index:99999;

    transition:.45s;

    overflow-y:auto;

}

.mobile-menu.active{

    right:0;

}

.mobile-menu ul{

    display:flex;

    flex-direction:column;

    gap:28px;

}

.mobile-menu a{

    color:#fff;

    font-size:18px;

    transition:.3s;
    text-transform: uppercase;

}

.mobile-menu a:hover, .mobile-menu a.active {

    color:var(--primary);

}

.menu-close{

    position:absolute;

    top:25px;

    right:25px;

    background:none;

    border:none;

    color:#fff;

    font-size:30px;

    cursor:pointer;

}


/*==================================
Overlay
===================================*/

.mobile-overlay{

    position:fixed;

    inset:0;

    background:rgba(0,0,0,.7);

    opacity:0;

    visibility:hidden;

    transition:.35s;

    z-index:9999;

}

.mobile-overlay.active{

    opacity:1;

    visibility:visible;

}

/* ==========================================
ABOUT
========================================== */

.about{

    padding:140px 0;
    background:#0d0d0d;

}

.about-wrapper{

    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:center;
    gap:80px;

}

.about-images{

    position:relative;

}

.about-img{

    border-radius:20px;
    overflow:hidden;
    box-shadow:0 30px 60px rgba(0,0,0,.35);

}

.main-img{

    width:75%;

}

.second-img{

    position:absolute;
    right:0;
    bottom:-40px;
    width:55%;
    border:8px solid #090909;

}

.experience-card{

    position:absolute;
    left:-25px;
    top:50px;

    width:170px;
    height:170px;

    background:var(--primary);

    border-radius:20px;

    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;

    z-index:5;

}

.experience-card h2{

    font-size:72px;
    font-family:'Bebas Neue';

}

.experience-card span{

    text-align:center;
    width:110px;

}

/* Right */

.section-subtitle{

    color:var(--primary);

    letter-spacing:4px;

    font-weight:700;

}

.about-content h2{

    font-family:'Bebas Neue';
    font-size:64px;

    margin:20px 0;

    line-height:.95;

}

.about-content p{

    color:#cfcfcf;

    line-height:2;

    margin-bottom:45px;

}

.about-features{

    display:grid;
    grid-template-columns:1fr 1fr;

    gap:30px;

    margin-bottom:50px;

}

.feature-item{

    display:flex;

    gap:20px;

}

.feature-item i{

    width:60px;
    height:60px;

    background:#181818;

    color:var(--primary);

    display:flex;
    justify-content:center;
    align-items:center;

    border-radius:50%;

    font-size:22px;

}

.feature-item h4{

    margin-bottom:8px;

    font-size:20px;

}

.feature-item p{

    margin:0;
    color:#9d9d9d;
    line-height:1.6;

}

/* ==========================================
WHY CHOOSE US
========================================== */

.why-us{

    padding:140px 0;
    background:#111;

}

.section-heading{

    max-width:720px;
    margin:auto;
    text-align:center;
    margin-bottom:80px;

}

.section-heading span{

    color:var(--primary);
    letter-spacing:4px;
    font-weight:700;

}

.section-heading h2{

    font-family:'Bebas Neue';
    font-size:72px;
    line-height:1;
    margin:20px 0;

}

.section-heading p{

    color:#bfbfbf;
    line-height:2;

}

.why-grid{

    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;

}

.why-card{

    background:#181818;
    border:1px solid rgba(255,255,255,.05);

    padding:45px;

    border-radius:20px;

    transition:.4s;

    position:relative;

    overflow:hidden;

}

.why-card::before{

    content:"";

    position:absolute;

    width:100%;
    height:4px;

    left:0;
    top:0;

    background:var(--primary);

    transform:scaleX(0);

    transition:.4s;

}

.why-card:hover::before{

    transform:scaleX(1);

}

.why-card:hover{

    transform:translateY(-12px);

    border-color:var(--primary);

    box-shadow:0 30px 60px rgba(0,0,0,.35);

}

.why-card .icon{

    width:75px;
    height:75px;

    background:#242424;

    border-radius:50%;

    display:flex;
    justify-content:center;
    align-items:center;

    margin-bottom:30px;

}

.why-card i{

    color:var(--primary);
    font-size:28px;

}

.why-card h3{

    font-size:24px;
    margin-bottom:20px;

}

.why-card p{

    color:#bfbfbf;
    line-height:1.8;

}

/* ==========================================
PROGRAMS
========================================== */

.programs{

    padding:140px 0;

    background:#090909;

}

.program-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}

.program-card{

    position:relative;

    height:500px;

    overflow:hidden;

    border-radius:20px;

    cursor:pointer;

}
.programs-section .program-card {
  height: auto;
}
.program-card img{

    width:100%;
    height:100%;

    object-fit:cover;

    transition:.6s;

}

.program-card::before{

    content:"";

    position:absolute;

    inset:0;

    background:

    linear-gradient(

        to top,

        rgba(0,0,0,.95),

        rgba(0,0,0,.15)

    );

    z-index:2;

}
.programs-section .program-card::before{
  background: none;
}
.program-card:hover img{

    transform:scale(1.12);

}

.program-card .overlay{

    position:absolute;

    left:35px;
    right:35px;
    bottom:35px;

    z-index:5;

}

.program-card span{

    color:var(--primary);

    font-size:52px;

    font-family:'Bebas Neue';

}

.program-card h3{

    margin:10px 0;

    font-size:32px;

}

.program-card p{

    color:#d4d4d4;

    line-height:1.8;

    margin-bottom:25px;

}

.program-card a{

    color:#fff;

    display:inline-flex;

    align-items:center;

    gap:10px;

    transition:.3s;

}

.program-card a:hover{

    color:var(--primary);

}

/*==================================
MEMBERSHIP
===================================*/

.membership{

    padding:140px 0;

    background:#111;

}

.pricing-wrapper{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

}

.pricing-card{

    background:#181818;

    border-radius:25px;

    padding:50px;

    position:relative;

    transition:.45s;

    border:1px solid rgba(255,255,255,.05);

}

.pricing-card:hover{

    transform:translateY(-15px);

    box-shadow:0 35px 80px rgba(0,0,0,.45);

}

.featured{

    border:2px solid var(--primary);

    transform:scale(1.05);

}

.badge{

    position:absolute;

    top:20px;

    right:0;
    left: 0;
    margin: 0 auto;

    background:var(--primary);

    color:#fff;

    padding:8px 18px;

    border-radius:30px;

    font-size:12px;
    display: inline-table;

}

.plan-name{

    color:var(--primary);

    font-size:18px;

    letter-spacing:3px;

    margin-bottom:20px;

}

.pricing-card h2{

    font-family:'Bebas Neue';

    font-size:72px;

}

.pricing-card h2 span{

    font-size:90px;

}

.pricing-card small{

    color:#aaa;

}

.pricing-card ul{

    margin:40px 0;

}

.pricing-card li{

    margin-bottom:18px;

    color:#ddd;

}

.pricing-card i{

    color:var(--primary);

    margin-right:12px;

}

.pricing-btn{

    display:inline-block;

    width:100%;

    text-align:center;

    background:var(--primary);

    color:#fff;

    padding:18px;

    border-radius:40px;

    transition:.3s;

}

.pricing-btn:hover{

    background:#fff;

    color:#000;

}

/* ==========================================
TRAINERS
========================================== */

.trainers{

    padding:140px 0;

    background:#090909;

}

.trainer-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

}

.trainer-card{

    background:#181818;

    border-radius:20px;

    overflow:hidden;

    transition:.4s;

}

.trainer-card:hover{

    transform:translateY(-12px);

}

.trainer-image{

    position:relative;

    overflow:hidden;

}

.trainer-image img{

    width:100%;

    display:block;

    transition:.6s;

}

.trainer-card:hover img{

    transform:scale(1.1);

}

.trainer-social{

    position:absolute;

    bottom:20px;

    left:50%;

    transform:translateX(-50%) translateY(30px);

    display:flex;

    gap:12px;

    opacity:0;

    transition:.4s;

}

.trainer-card:hover .trainer-social{

    opacity:1;

    transform:translateX(-50%) translateY(0);

}

.trainer-social a{

    width:45px;

    height:45px;

    background:var(--primary);

    color:#fff;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

}

.trainer-content{

    padding:30px;

    text-align:center;

}

.trainer-content span{

    color:var(--primary);

    font-size:14px;

    letter-spacing:2px;

}

.trainer-content h3{

    font-size:28px;

}

/* ==========================================
TRANSFORMATIONS
========================================== */

.transformations{

    padding:140px 0;

    background:#111;

}

.transform-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}

.transform-card{

    position:relative;

    border-radius:20px;

    overflow:hidden;

    height:520px;

}

.transform-card img{

    width:100%;
    height:100%;
    object-fit:cover;

    transition:.6s;

}

.transform-card:hover img{

    transform:scale(1.12);

}

.transform-card::before{

    content:"";

    position:absolute;

    inset:0;

    background:

    linear-gradient(

        to top,

        rgba(0,0,0,.95),

        rgba(0,0,0,.1)

    );

    z-index:2;

}

.transform-overlay{

    position:absolute;

    left:30px;
    right:30px;
    bottom:30px;

    z-index:5;

}

.transform-overlay h3{

    font-size:34px;

}

.transform-overlay span{

    color:var(--primary);

}

/*==================================
TESTIMONIALS
===================================*/

.testimonials{

    padding:140px 0;

    background:#111;

}

.testimonial-wrapper{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:35px;

}

.testimonial-card{

    background:#181818;

    padding:45px;

    border-radius:20px;

    transition:.4s;

}

.testimonial-card:hover{

    transform:translateY(-10px);

}

.quote{

    color:var(--primary);

    font-size:40px;

    margin-bottom:20px;

}

.testimonial-card p{

    color:#d5d5d5;

    line-height:2;

    margin-bottom:30px;

}

.rating{

    color:#ffb400;

    margin-bottom:30px;

}

.client{

    display:flex;

    align-items:center;

    gap:18px;

}

.client img{

    width:70px;

    height:70px;

    border-radius:50%;

    object-fit:cover;

}

.client h4{

    font-size:22px;

}

.client span{

    color:var(--primary);

}

/*==================================
BMI
===================================*/

.bmi-section{

    padding:140px 0;

    background:#090909;

}

.bmi-wrapper{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:70px;

    align-items:center;

}

.bmi-image img{

    width:100%;

    border-radius:25px;

}

.bmi-content h2{

    font-family:'Bebas Neue';

    font-size:64px;


}

.input-group{

    margin-bottom:20px;

}

.input-group input{

    width:100%;

    height:65px;

    background:#181818;

    border:none;

    color:#fff;

    padding:0 25px;

    border-radius:12px;

}
#bmiForm {
  margin-top: 20px;
}
#bmiForm button{

    width:100%;

    height:65px;

    border:none;

    background:var(--primary);

    color:#fff;

    border-radius:12px;

    cursor:pointer;

    font-size:16px;

}

#bmiResult{

    margin-top:30px;

    background:#181818;

    padding:25px;

    border-radius:15px;

    color:#fff;

}

/*==================================
GALLERY
===================================*/

.gallery{

    padding:140px 0;

    background:#111;

}

.gallery-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:25px;

    grid-auto-rows:280px;

}

.gallery-item{

    position:relative;

    overflow:hidden;

    border-radius:20px;

}

.gallery-item img{

    width:100%;
    height:100%;

    object-fit:cover;

    transition:.6s;

}

.gallery-item:hover img{

    transform:scale(1.12);

}

.gallery-overlay{

    position:absolute;

    inset:0;

    background:rgba(255,107,0,.75);

    display:flex;

    justify-content:center;

    align-items:center;

    opacity:0;

    transition:.35s;

}

.gallery-item:hover .gallery-overlay{

    opacity:1;

}

.gallery-overlay i{


    font-size:34px;

}

.tall{

    grid-row:span 2;

}

.wide{

    grid-column:span 2;

}

.gallery-btn{

    text-align:center;

    margin-top:30px;

}

/*==================================
CTA
===================================*/

.cta-section{

    position:relative;

    padding:180px 0;

    background:url("../images/cta-bg.webp") center center/cover no-repeat;

    overflow:hidden;

}

.cta-overlay{

    position:absolute;

    inset:0;

    background:
    linear-gradient(
        rgba(0,0,0,.75),
        rgba(0,0,0,.75)
    );

}

.cta-content{

    position:relative;

    z-index:2;

    max-width:750px;

    margin:auto;

    text-align:center;

}

.cta-content span{

    color:var(--primary);

    letter-spacing:5px;

    font-weight:700;

}

.cta-content h2{

    font-family:'Bebas Neue';

    font-size:82px;

    margin:25px 0;

    line-height:.95;

}

.cta-content p{

    color:#d7d7d7;

    line-height:2;

    margin-bottom:45px;

}

.cta-buttons{

    display:flex;

    justify-content:center;

    gap:20px;

}

/*==================================
CONTACT
===================================*/

.contact{

    padding:140px 0;

    background:#111;

}

.contact-wrapper{

    display:grid;

    grid-template-columns:420px 1fr;

    gap:60px;

}

.contact-info{

    display:flex;

    flex-direction:column;

    gap:25px;

}

.contact-box{

    background:#181818;

    padding:30px;

    border-radius:18px;

    display:flex;

    gap:20px;

}

.contact-box i{

    color:var(--primary);

    font-size:26px;

    width:60px;
    height:60px;

    display:flex;
    justify-content:center;
    align-items:center;

    background:#242424;

    border-radius:50%;

}

.contact-box h4{

    margin-bottom:10px;

}

.contact-box p{

    color:#bfbfbf;

    line-height:1.8;

}

.contact-form{

    background:#181818;

    padding:45px;

    border-radius:20px;

}

.contact-form input,
.contact-form textarea{
  font-family: 'Inter', sans-serif;
    width:100%;

    background:#111;

    border:none;

    color:#fff;

    padding:18px 22px;

    border-radius:12px;

    margin-bottom:20px;

}

.contact-form textarea{

    resize:none;

}

.contact-form button{

    width:100%;

    border:none;

    cursor:pointer;

}

.map iframe{

width:100%;

height:550px;

border:0;

display:block;

}

/*==================================
FOOTER
===================================*/

.footer{

    background:#050505;

    position:relative;

}

/* CTA */

.footer-cta{

    transform:translateY(-70px);

    margin-bottom:-70px;

}

.footer-cta-box{

    background:linear-gradient(135deg,#ff6600,#ff8c1a);

    border-radius:30px;

    padding:60px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:40px;

}

.footer-cta-box span{

    color:#fff;

    letter-spacing:4px;

    font-weight:700;

}

.footer-cta-box h2{

    font-family:'Bebas Neue';

    font-size:64px;

    margin:15px 0;

    color:#fff;

}

.footer-cta-box p{

    color:#fff;

    opacity:.9;

}

.footer-cta-btns{

    display:flex;

    gap:20px;

}

.footer-cta .btn-outline{

    border-color:#fff;

    color:#fff;

}

.footer-cta .btn-outline:hover{

    background:#fff;

    color:#111;

}

/* Main */

.footer-main{

    padding:100px 0 20px;

    background:

    radial-gradient(circle at top right,

    rgba(255,102,0,.08),

    transparent 35%),

    #080808;

}

.footer-grid{

    display:grid;

    grid-template-columns:2fr 1fr 1fr 1.2fr 1.5fr;

    gap:50px;

}

.footer-logo{

    width:110px;

    margin-bottom:10px;

}

.footer-text{

    color:#bdbdbd;

    line-height:1.5;

    margin-bottom:20px;

}

.footer h4{

    margin-bottom:25px;

    font-size:22px;

}

.footer ul{

    list-style:none;

    padding:0;

    margin:0;

}

.footer ul li{

    margin-bottom:15px;

}

.footer a{

    color:#cfcfcf;

    transition:.3s;

}

.footer a:hover{

    color:var(--primary);

}

.footer-social{

    display:flex;

    gap:10px;

}

.footer-social a{

    width:48px;

    height:48px;

    border-radius:50%;

    background:#181818;

    display:flex;

    justify-content:center;

    align-items:center;

    color:#fff;

}

.footer-social a:hover{

    background:var(--primary);

    transform:translateY(-6px);
    color:#fff;

}

.hours li{

    display:flex;

    justify-content:space-between;

    border-bottom:1px solid rgba(255,255,255,.06);

    padding-bottom:10px;

}

.hours span{

    color:#bdbdbd;

}

.hours strong{

    color:#fff;

}

.newsletter{

    display:flex;

    flex-direction:column;

    gap:15px;

}

.newsletter input{

    height:55px;

    border:none;

    background:#181818;

    color:#fff;

    border-radius:12px;

    padding:0 20px;

}

.newsletter button{

    height:55px;

    border:none;

    border-radius:12px;

    background:var(--primary);

    color:#fff;

    cursor:pointer;

}

.footer-bottom{

    margin-top:50px;

    padding-top:40px;
    padding-bottom: 20px;

    border-top:1px solid rgba(255,255,255,.08);

    display:flex;

    justify-content:space-between;

    align-items:center;

    flex-wrap:wrap;

    gap:20px;

}
.footer-bottom p {
  color: #cfcfcf;
}

.footer-bottom a{

    margin-left:25px;

}

.footer-contact{

    display:flex;

    flex-direction:column;

    gap:22px;

}

.footer-contact li{

    display:flex;

    align-items:center;   /* Change this */

    gap:18px;

    margin:0 !important;

}

.footer-contact i{

    width:48px;

    height:48px;

    min-width:48px;

    border-radius:50%;

    background:#181818;

    color:var(--primary);

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:18px;

}

.footer-contact strong{

    display:block;

    margin-bottom:6px;

    color:#fff;

    font-size:16px;

}

.footer-contact span{

    color:#bdbdbd;

    line-height:1.7;

}

.footer-contact a{

    color:#bdbdbd;

    transition:.3s;

}

.footer-contact a:hover{

    color:var(--primary);

    padding-left:0 !important;

}

.scroll-top{

    position:fixed;

    right:30px;

    bottom:30px;

    width:55px;

    height:55px;

    border:none;

    border-radius:50%;

    background:var(--primary);

    color:#fff;

    cursor:pointer;

    display:none;

    z-index:999;

}

/*=========================================
SCROLL REVEAL
=========================================*/

.hidden{

    opacity:0;

    transform:translateY(80px);

    transition:1s ease;

}

.show{

    opacity:1;

    transform:translateY(0);

}


/*=========================================
MOBILE MENU
=========================================*/

.mobile-menu{

    position:fixed;

    top:0;
    right:-100%;

    width:320px;
    height:100vh;

    background:#111;

    z-index:9999;

    transition:.45s;

    padding:120px 40px;

}

.mobile-menu.active{

    right:0;

}

.mobile-menu ul{

    display:flex;

    flex-direction:column;

    gap:30px;
    margin-bottom: 25px;

}



body.menu-open{

    overflow:hidden;

}


/* Hamburger Animation */

.menu-toggle.active span:nth-child(1){

    transform:rotate(45deg) translateY(12px);

}

.menu-toggle.active span:nth-child(2){

    opacity:0;

}

.menu-toggle.active span:nth-child(3){

    transform:rotate(-45deg) translateY(-12px);

}

.menu-toggle span{

    transition:.35s;

}


/* Scroll Top */

.scroll-top{

    justify-content:center;

    align-items:center;

}

/*==============================
Floating WhatsApp
==============================*/

.whatsapp-float{

    position:fixed;

    right:30px;
    bottom:30px;

    width:65px;
    height:65px;

    border-radius:50%;

    background:#25D366;

    display:flex;
    justify-content:center;
    align-items:center;

    color:#fff;

    font-size:34px;

    text-decoration:none;

    z-index:9999;

    box-shadow:0 15px 35px rgba(37,211,102,.35);

    animation:whatsappPulse 2s infinite;

    transition:.35s;

}

.whatsapp-float:hover{

    transform:translateY(-6px) scale(1.08);

    box-shadow:0 20px 45px rgba(37,211,102,.55);

}

.whatsapp-float::before{

    content:"";

    position:absolute;

    inset:-8px;

    border-radius:50%;

    border:2px solid #25D366;

    animation:ring 2s infinite;

}

.whatsapp-float::after{

    content:"";

    position:absolute;

    inset:-18px;

    border-radius:50%;

    border:2px solid rgba(37,211,102,.35);

    animation:ring 2s infinite .5s;

}

@keyframes whatsappPulse{

    0%{

        transform:scale(1);

    }

    50%{

        transform:scale(1.08);

    }

    100%{

        transform:scale(1);

    }

}

@keyframes ring{

    0%{

        transform:scale(.8);

        opacity:1;

    }

    100%{

        transform:scale(1.6);

        opacity:0;

    }

}

/* Tooltip */

.wa-tooltip{

    position:absolute;

    right:80px;

    top:50%;

    transform:translateY(-50%);

    background:#222;

    color:#fff;

    padding:10px 16px;

    border-radius:8px;

    white-space:nowrap;

    font-size:14px;

    font-weight:500;

    opacity:0;

    visibility:hidden;

    transition:.35s;

    pointer-events:none;

}

/* Arrow */

.wa-tooltip::after{

    content:"";

    position:absolute;

    right:-6px;

    top:50%;

    transform:translateY(-50%);

    border-left:6px solid #222;

    border-top:6px solid transparent;

    border-bottom:6px solid transparent;

}

/* Show Tooltip */

.whatsapp-float:hover .wa-tooltip{

    opacity:1;

    visibility:visible;

    right:90px;

}

.show-tooltip{

    opacity:1 !important;

    visibility:visible !important;

    right:90px !important;

}

.whatsapp-float{

    bottom:30px;

    transition:.35s;

}

.whatsapp-float.move-up{

    bottom:110px;

}

/*==================================
PAGE BANNER
===================================*/

.page-banner{

    position:relative;

    height:620px;

    display:flex;

    align-items:center;

    overflow:hidden;

    background:#050505;

}

/* Background */

.page-banner-bg{

    position:absolute;

    inset:0;

}

.page-banner-bg img{

    width:100%;

    height:100%;

    object-fit:cover;

    object-position:top;

    transform:scale(1.08);

}

/* Overlay */

.page-banner-overlay{

    position:absolute;

    inset:0;

    background:

    linear-gradient(

        rgba(0,0,0,.82),

        rgba(0,0,0,.65)

    );

}

/* Content */

.page-banner-content{

    position:relative;

    z-index:5;

    max-width:700px;

}

.page-banner-content span{

    display:inline-block;

    color:var(--primary);

    font-size:15px;

    font-weight:700;

    letter-spacing:5px;

    margin-bottom:18px;

    text-transform:uppercase;

}

.page-banner-content h1{

    font-family:'Bebas Neue',sans-serif;

    font-size:80px;

    line-height:.95;

    margin-bottom:10px;

    color:#fff;

}

.page-banner-content p{

    color:#d0d0d0;

    font-size:18px;

    line-height:1.9;

    max-width:600px;

}

/* Breadcrumb */

.breadcrumb{

    margin-top:35px;

    display:flex;

    align-items:center;

    gap:15px;

    flex-wrap:wrap;

}

.breadcrumb li{

    color:#d0d0d0;

    font-size:15px;

}

.breadcrumb a{

    color:#fff;

    transition:.3s;

}

.breadcrumb a:hover{

    color:var(--primary);

}

.breadcrumb i{

    color:var(--primary);

}

/*==================================
ABOUT INTRO
===================================*/

.about-intro{

    padding:140px 0;

    background:#080808;

}

.about-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:90px;

    align-items:center;

}

/* Images */

.about-images{

    position:relative;

}

.about-img{

    width:100%;

    border-radius:24px;

    display:block;

}

.main-img{

    max-width:520px;

}

.floating-img{

    position:absolute;

    right:-40px;

    bottom:-50px;

    width:260px;

    border:8px solid #080808;

    box-shadow:0 30px 70px rgba(0,0,0,.35);

}

/* Experience */

.experience-box{

    position:absolute;

    top:35px;

    left:-40px;

    background:var(--primary);

    padding:30px;

    border-radius:18px;

    text-align:center;

    box-shadow:0 20px 40px rgba(255,102,0,.35);

}

.experience-box h2{

    font-family:'Bebas Neue';

    font-size:60px;

    line-height:1;

    color:#fff;

}

.experience-box span{

    color:#fff;

    font-size:15px;

}

/* Content */

.section-subtitle{

    display:inline-block;

    color:var(--primary);

    letter-spacing:4px;

    font-weight:700;

}

.about-content h2{

    font-family:'Bebas Neue';

    font-size:62px;

    line-height:1;

    margin-bottom:25px;

}

.about-content p{

    color:#cfcfcf;

    line-height:1.9;

    margin-bottom:18px;

}

/* Features */

.about-features{

    margin:45px 0;

    display:grid;

    gap:25px;

}

.feature-item{

    display:flex;

    gap:20px;

    align-items:flex-start;

}

.feature-item i{

    width:60px;

    height:60px;

    border-radius:50%;

    background:#151515;

    color:var(--primary);

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:22px;

}

.feature-item h4{

    margin-bottom:8px;

}

.feature-item p{

    margin:0;

    color:#bdbdbd;

}

/*==================================
TIMELINE
===================================*/

.journey-section{

    padding:140px 0;

    background:#0b0b0b;

}

.timeline{

    position:relative;

    max-width:1100px;

    margin:80px auto 0;

}

.timeline::before{

    content:"";

    position:absolute;

    left:50%;

    top:0;

    width:2px;

    height:100%;

    background:rgba(255,255,255,.08);

    transform:translateX(-50%);

}

.timeline-item{

    position:relative;

    width:50%;

    margin-bottom:80px;

}

.timeline-item.left{

    padding-right:70px;

}

.timeline-item.right{

    margin-left:auto;

    padding-left:70px;

}

.timeline-content{

    background:#141414;

    padding:40px;

    border-radius:20px;

    transition:.35s;

    position:relative;

}

.timeline-content:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 60px rgba(0,0,0,.35);

}

.timeline-content::before{

    content:"";

    position:absolute;

    top:45px;

    width:18px;

    height:18px;

    background:var(--primary);

    border-radius:50%;

    box-shadow:0 0 0 8px rgba(255,102,0,.15);

}

.timeline-item.left .timeline-content::before{

    right:-79px;

}

.timeline-item.right .timeline-content::before{

    left:-79px;

}

.year{

    display:inline-block;

    color:var(--primary);

    font-weight:700;

    letter-spacing:3px;

    margin-bottom:18px;

}

.timeline-content h3{

    margin-bottom:18px;

    font-size:28px;

}

.timeline-content p{

    color:#c7c7c7;

    line-height:1.9;

}

/*==================================
FACILITIES
===================================*/

.facilities{

    padding:140px 0;

    background:#080808;

}

.facility-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

    margin-top:70px;

}

.facility-card{

    position:relative;

    height:420px;

    overflow:hidden;

    border-radius:24px;

    cursor:pointer;

}

.facility-card img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.7s;

}

.facility-overlay{

    position:absolute;

    inset:0;

    background:

    linear-gradient(

        transparent,

        rgba(0,0,0,.92)

    );

    display:flex;

    flex-direction:column;

    justify-content:flex-end;

    padding:35px;

}

.facility-overlay i{

    width:70px;

    height:70px;

    background:var(--primary);

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    color:#fff;

    font-size:26px;

    margin-bottom:20px;

}

.facility-overlay h3{

    margin-bottom:15px;

    font-size:30px;

}

.facility-overlay p{

    color:#d5d5d5;

    line-height:1.8;

}

.facility-card:hover img{

    transform:scale(1.15);

}

.facility-card:hover{

    transform:translateY(-12px);

    transition:.4s;

}

/*==================================
MISSION & VISION
===================================*/

.mission-section{

    padding:140px 0;

    background:#101010;

}

.mission-wrapper{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:80px;

    align-items:center;

}

/* Image */

.mission-image{

    position:relative;

}

.mission-image img{

    width:100%;

    border-radius:24px;

    display:block;

}

/* Badge */

.mission-badge{

    position:absolute;

    bottom:30px;

    left:30px;

    background:rgba(20,20,20,.85);

    backdrop-filter:blur(15px);

    border:1px solid rgba(255,255,255,.08);

    padding:22px 30px;

    border-radius:18px;

    display:flex;

    align-items:center;

    gap:18px;

}

.mission-badge i{

    width:60px;

    height:60px;

    background:var(--primary);

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    color:#fff;

    font-size:22px;

}

.mission-badge h4{

    font-size:20px;

    line-height:1.4;

}

/* Content */

.mission-content h2{

    font-family:'Bebas Neue',sans-serif;

    font-size:64px;

    line-height:1;

    margin:20px 0 25px;

}

.mission-content p{

    color:#cfcfcf;

    line-height:1.9;

}

/* Cards */

.mission-cards{

    margin-top:50px;

    display:flex;

    flex-direction:column;

    gap:25px;

}

.mission-card{

    display:flex;

    gap:25px;

    padding:30px;

    border-radius:20px;

    background:#171717;

    transition:.35s;

}

.mission-card:hover{

    transform:translateY(-8px);

    box-shadow:0 20px 50px rgba(0,0,0,.3);

}

.mission-icon{

    width:70px;

    height:70px;

    border-radius:18px;

    background:var(--primary);

    display:flex;

    justify-content:center;

    align-items:center;

    color:#fff;

    font-size:28px;

    flex-shrink:0;

}

.mission-card h3{

    margin-bottom:12px;

    font-size:28px;

}

.mission-card p{

    margin:0;

}

/*==================================
TRAINER BENEFITS
===================================*/

.trainer-benefits{

    padding:140px 0;

    background:#080808;

}

.trainer-wrapper{

    display:grid;

    grid-template-columns:45% 55%;

    gap:80px;

    align-items:center;

    margin-top:70px;

}

/* Left */

.trainer-image{

    position:relative;

}

.trainer-image img{

    width:100%;

    border-radius:25px;

    display:block;

}

.trainer-floating-card{

    position:absolute;

    bottom:30px;

    right:-30px;

    background:var(--primary);

    padding:30px;

    border-radius:18px;

    text-align:center;

}

.trainer-floating-card h3{

    font-family:'Bebas Neue';

    font-size:60px;

    line-height:1;

    color:#fff;

}

.trainer-floating-card span{

    color:#fff;

}

/* Right */

.trainer-content{

    display:grid;

    gap:25px;

}

.trainer-item{

    display:flex;

    gap:25px;

    background:#141414;

    padding:30px;

    border-radius:20px;

    transition:.35s;

}

.trainer-item:hover{

    transform:translateX(10px);

    border-left:5px solid var(--primary);

}

.trainer-icon{

    width:70px;

    height:70px;

    border-radius:18px;

    background:#1d1d1d;

    color:var(--primary);

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:28px;

    flex-shrink:0;

}

.trainer-item h4{

    margin-bottom:12px;

    font-size:28px;

}

.trainer-item p{

    color:#cfcfcf;

    margin:0;

    line-height:1.8;

}

/*==================================
CTA
===================================*/

.about-cta{

    position:relative;

    padding:180px 0;

    background:url("../images/cta-bg.webp") center center;

    background-size:cover;

    overflow:hidden;

}

.cta-overlay{

    position:absolute;

    inset:0;

    background:linear-gradient(

        rgba(0,0,0,.85),

        rgba(0,0,0,.75)

    );

}

.cta-content{

    position:relative;

    z-index:2;

    max-width:850px;

    margin:auto;

    text-align:center;

}

.cta-content span{

    display:inline-block;

    color:var(--primary);

    letter-spacing:5px;

    font-weight:700;

    margin-bottom:20px;

}

.cta-content h2{

    font-family:'Bebas Neue';

    font-size:78px;

    line-height:.95;

    margin-bottom:25px;

}

.cta-content p{

    max-width:700px;

    margin:0 auto 45px;

    color:#d3d3d3;

    line-height:1.9;

    font-size:18px;

}

.cta-buttons{

    display:flex;

    justify-content:center;

    gap:20px;

}

/*==================================
PROGRAMS
===================================*/

.programs-section{

    padding:140px 0;

    background:#080808;

}

.program-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

    margin-top:70px;

}

.program-card{

    background:#121212;

    border-radius:24px;

    overflow:hidden;

    transition:.4s;

}

.program-image{

    overflow:hidden;

}

.program-image img{

    width:100%;

    height:260px;

    object-fit:cover;

    transition:.7s;

}

.program-content{

    padding:35px;

}

.program-icon{

    width:70px;

    height:70px;

    border-radius:18px;

    background:rgba(255,102,0,.12);

    display:flex;

    justify-content:center;

    align-items:center;

    color:var(--primary);

    font-size:28px;

    margin-bottom:25px;

}

.program-content h3{

    margin-bottom:15px;

    font-size:32px;

}

.program-content p{

    color:#cfcfcf;

    line-height:1.8;

    margin-bottom:30px;

}

.program-content a{

    color:var(--primary);

    display:inline-flex;

    gap:12px;

    align-items:center;

    font-weight:600;

}

.program-content a i{

    transition:.3s;

}

.program-card:hover{

    transform:translateY(-12px);

    box-shadow:0 25px 60px rgba(0,0,0,.4);

}

.program-card:hover img{

    transform:scale(1.12);

}

.program-card:hover a i{

    transform:translateX(8px);

}

/*==================================
TRAINING PROCESS
===================================*/

.training-process{

    padding:140px 0;

    background:#111;

}

.process-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

    margin-top:70px;

}

.process-card{

    position:relative;

    background:#181818;

    padding:40px 30px;

    border-radius:24px;

    overflow:hidden;

    transition:.35s;

}

.process-card:hover{

    transform:translateY(-10px);

    box-shadow:0 25px 60px rgba(0,0,0,.35);

}

.step-number{

    position:absolute;

    top:20px;

    right:25px;

    font-size:60px;

    font-family:'Bebas Neue';

    color:rgba(255,255,255,.05);

}

.process-icon{

    width:75px;

    height:75px;

    border-radius:20px;

    background:rgba(255,102,0,.12);

    display:flex;

    justify-content:center;

    align-items:center;

    color:var(--primary);

    font-size:30px;

    margin-bottom:30px;

}

.process-card h3{

    margin-bottom:15px;

    font-size:30px;

}

.process-card p{

    color:#cfcfcf;

    line-height:1.8;

}

/*==================================
PROGRAM BENEFITS
===================================*/

.program-benefits{

    padding:140px 0;

    background:#080808;

}

.benefits-wrapper{

    display:grid;

    grid-template-columns:45% 55%;

    gap:80px;

    align-items:center;

}

/* Left */

.benefits-image{

    position:relative;

}

.benefits-image img{

    width:100%;

    border-radius:25px;

}

.experience-badge{

    position:absolute;

    bottom:30px;

    left:30px;

    background:var(--primary);

    padding:30px;

    border-radius:20px;

    text-align:center;

}

.experience-badge h2{

    font-family:'Bebas Neue';

    font-size:60px;

    color:#fff;

}

.experience-badge span{

    color:#fff;

}

/* Right */

.benefits-content h2{

    font-family:'Bebas Neue';

    font-size:64px;

    line-height:1;

    margin:20px 0;

}

.benefits-content p{

    color:#cfcfcf;

    line-height:1.9;

}

/* Checklist */

.benefit-list{

    margin:40px 0;

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:18px;

}

.benefit-item{

    display:flex;

    align-items:center;

    gap:12px;

    color:#fff;

}

.benefit-item i{

    color:var(--primary);

}

/* Progress */

.progress-item{

    margin-top:25px;

}

.progress-title{

    display:flex;

    justify-content:space-between;

    margin-bottom:10px;

}

.progress-bar{

    width:100%;

    height:10px;

    background:#1b1b1b;

    border-radius:30px;

}

.progress-fill{

    height:100%;

    background:var(--primary);

    border-radius:30px;

}

/*==================================
TRANSFORMATION CTA
===================================*/

.transformation-section{

    position:relative;

    padding:170px 0;

    background:url("../images/programs/transformation-bg.jpg")
    center center;

    background-size:cover;

    overflow:hidden;

}

.transformation-overlay{

    position:absolute;

    inset:0;

    background:
    linear-gradient(
        rgba(0,0,0,.85),
        rgba(0,0,0,.80)
    );

}

.transformation-content{

    position:relative;

    z-index:2;

    text-align:center;

    max-width:1000px;

    margin:auto;

}

.transformation-content h2{

    font-family:'Bebas Neue';

    font-size:82px;

    line-height:.95;

    margin:20px 0;

}

.transformation-content p{

    max-width:700px;

    margin:0 auto 60px;

    color:#d6d6d6;

    line-height:1.9;

}

.transformation-stats{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

    margin-bottom:60px;

}

.stat-box{

    background:rgba(255,255,255,.05);

    backdrop-filter:blur(15px);

    border:1px solid rgba(255,255,255,.08);

    border-radius:20px;

    padding:35px;

    transition:.35s;

}

.stat-box:hover{

    transform:translateY(-10px);

    border-color:var(--primary);

}

.stat-box h3{

    font-family:'Bebas Neue';

    font-size:65px;

    color:var(--primary);

    margin-bottom:10px;

}

.stat-box span{

    color:#fff;

    letter-spacing:2px;

    text-transform:uppercase;

}

.pricing-section{

padding:140px 0;

background:#080808;

}

.pricing-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:35px;

margin-top:70px;

}

.pricing-card{

background:#141414;

padding:55px 40px;

border-radius:24px;

text-align:center;

position:relative;

transition:.4s;

}

.pricing-card.active{

transform:scale(1.06);

border:2px solid var(--primary);

}

.popular{

position:absolute;

top:-15px;

left:50%;

transform:translateX(-50%);

background:var(--primary);

padding:10px 30px;

border-radius:40px;

font-size:14px;

font-weight:700;

}

.price{

font-family:'Bebas Neue';

font-size:72px;

margin:20px 0;

color:var(--primary);

}

.price .yearly{

display:none;

}

.pricing-card ul{

margin-bottom:35px;

}

.pricing-card li{

padding:14px 0;

border-bottom:1px solid rgba(255,255,255,.06);

}

.pricing-card:hover{

transform:translateY(-12px);

}

/*==================================
MEMBERSHIP BENEFITS
===================================*/

.membership-benefits{

    padding:140px 0;

    background:#101010;

}

.benefits-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

    margin-top:70px;

}

.benefit-card{

    background:#181818;

    padding:45px 35px;

    border-radius:24px;

    text-align:center;

    transition:.4s;

    border:1px solid transparent;

}

.benefit-card:hover{

    transform:translateY(-12px);

    border-color:var(--primary);

    box-shadow:0 20px 60px rgba(255,102,0,.15);

}

.benefit-icon{

    width:85px;

    height:85px;

    margin:auto;

    border-radius:50%;

    background:rgba(255,102,0,.12);

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:34px;

    color:var(--primary);

    margin-bottom:25px;

}

.benefit-card h3{

    margin-bottom:15px;

    font-size:30px;

}

.benefit-card p{

    color:#cfcfcf;

    line-height:1.8;

}

/*==================================
FAQ
===================================*/

.faq-section{

    padding:140px 0;

    background:#080808;

}

.faq-wrapper{

    max-width:900px;

    margin:70px auto 0;

}

.faq-item{

    background:#141414;

    margin-bottom:20px;

    border-radius:18px;

    overflow:hidden;

    border:1px solid rgba(255,255,255,.06);

    transition:.35s;

}

.faq-item.active{

    border-color:var(--primary);

}

.faq-question{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:30px;

    cursor:pointer;

}

.faq-question h4{

    font-size:24px;

    margin:0;

}

.faq-question span{

    width:45px;

    height:45px;

    border-radius:50%;

    background:rgba(255,102,0,.12);

    color:var(--primary);

    display:flex;

    justify-content:center;

    align-items:center;

    transition:.3s;

}

.faq-item.active span{

    transform:rotate(45deg);

}

.faq-answer{

    max-height:0;

    overflow:hidden;

    transition:max-height .45s ease;

}

.faq-answer p{

    padding:0 30px 30px;

    color:#cfcfcf;

    line-height:1.9;

}

/*==================================
TRAINER SPOTLIGHT
===================================*/

.trainer-spotlight{

    padding:140px 0;

    background:#080808;

}

.spotlight-wrapper{

    display:grid;

    grid-template-columns:45% 55%;

    gap:80px;

    align-items:center;

}

.spotlight-image{

    position:relative;

}

.spotlight-image img{

    width:100%;

    border-radius:24px;

}

.experience-card{

    position:absolute;

    bottom:30px;

    right:-30px;

    background:var(--primary);

    padding:30px;

    border-radius:20px;

    text-align:center;

}

.experience-card h2{

    font-family:'Bebas Neue';

    font-size:60px;

    color:#fff;

}

.experience-card span{

    color:#fff;

}

.spotlight-content h2{

    font-family:'Bebas Neue';

    font-size:70px;

    margin:20px 0 10px;

}

.spotlight-content h4{

    color:var(--primary);

    margin-bottom:25px;

}

.spotlight-content p{

    color:#cfcfcf;

    line-height:1.9;

    margin-bottom:40px;

}

.trainer-info{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:30px;

    margin-bottom:40px;

}

.trainer-info strong{

    display:block;

    color:#fff;

    margin-bottom:10px;

}

.trainer-info span{

    color:#bdbdbd;

}

/*==================================
TRAINER GRID
===================================*/

.trainers-team{

    padding:140px 0;

    background:#101010;

}

.trainer-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

    margin-top:70px;

}

.trainer-card{

    background:#171717;

    border-radius:24px;

    overflow:hidden;

    transition:.4s;

}

.trainer-image{

    position:relative;

    overflow:hidden;

}

.trainer-image img{

    width:100%;

    height:450px;

    object-fit:cover;

    transition:.6s;

}




.trainer-details{

    padding:35px;

}

.trainer-details h3{

    font-size:30px;

    margin-bottom:8px;

}

.trainer-details span{

    color:var(--primary);

    display:block;

    margin-bottom:25px;

}

.trainer-details ul{

    margin-bottom:30px;

}

.trainer-details li{

    margin-bottom:15px;

    color:#cfcfcf;

}

.trainer-details li i{

    color:var(--primary);

    margin-right:10px;

}

.trainer-btn{

    display:inline-block;

    padding:14px 32px;

    border:2px solid var(--primary);

    border-radius:50px;

    color:#fff;

    transition:.35s;

}

.trainer-btn:hover{

    background:var(--primary);

}

.trainer-card:hover{

    transform:translateY(-15px);

    box-shadow:0 25px 60px rgba(0,0,0,.35);

}

.trainer-card:hover img{

    transform:scale(1.1);

}

.trainer-card:hover .trainer-social{

    opacity:1;

    right:20px;

}

/*==================================
CERTIFICATIONS
===================================*/

.trainer-certifications{

    padding:140px 0;

    background:#080808;

}

.certification-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

    margin-top:70px;

}

.cert-card{

    background:#141414;

    border-radius:24px;

    padding:45px 35px;

    text-align:center;

    transition:.4s;

    border:1px solid rgba(255,255,255,.05);

}

.cert-card:hover{

    transform:translateY(-12px);

    border-color:var(--primary);

    box-shadow:0 20px 60px rgba(255,102,0,.18);

}

.cert-icon{

    width:90px;

    height:90px;

    margin:auto;

    border-radius:50%;

    background:rgba(255,102,0,.12);

    display:flex;

    justify-content:center;

    align-items:center;

    color:var(--primary);

    font-size:34px;

    margin-bottom:25px;

}

.cert-card h3{

    font-size:28px;

    margin-bottom:15px;

}

.cert-card p{

    color:#cfcfcf;

    line-height:1.8;

}

/*==================================
TRAINER TESTIMONIALS
===================================*/

.trainer-testimonials{

    padding:140px 0;

    background:#101010;

}

.testimonial-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

    margin-top:70px;

}

.testimonial-card{

    position:relative;

    background:#181818;

    border-radius:24px;

    padding:45px;

    transition:.35s;

    border:1px solid rgba(255,255,255,.05);

}

.testimonial-card:hover{

    transform:translateY(-12px);

    border-color:var(--primary);

    box-shadow:0 25px 60px rgba(255,102,0,.15);

}

.quote-icon{

    width:70px;

    height:70px;

    border-radius:50%;

    background:rgba(255,102,0,.12);

    display:flex;

    justify-content:center;

    align-items:center;

    color:var(--primary);

    font-size:28px;

    margin-bottom:25px;

}

.testimonial-card p{

    color:#d0d0d0;

    line-height:2;

    margin-bottom:30px;

}

.rating{

    margin-bottom:30px;

}

.rating i{

    color:#ffc107;

    margin-right:5px;

}

.client-info{

    display:flex;

    align-items:center;

    gap:18px;

}

.client-info img{

    width:70px;

    height:70px;

    border-radius:50%;

    object-fit:cover;

}

.client-info h4{

    margin-bottom:6px;

}

.client-info span{

    color:#bdbdbd;

}

/*==================================
TRAINER CTA
===================================*/

.trainer-cta{

    position:relative;

    padding:140px 0;

    background:#0b0b0b;

    overflow:hidden;

}

.trainer-cta-overlay{

    position:absolute;

    inset:0;

    background:

    radial-gradient(circle at right,
    rgba(255,102,0,.12),
    transparent 45%);

}

.trainer-cta-wrapper{

    display:grid;

    grid-template-columns:55% 45%;

    align-items:center;

    gap:60px;

    position:relative;

    z-index:2;

}

.trainer-cta-content h2{

    font-family:'Bebas Neue';

    font-size:74px;

    line-height:.95;

    margin:20px 0;

}

.trainer-cta-content p{

    color:#cfcfcf;

    line-height:1.9;

    margin-bottom:40px;

}

.trainer-cta-features{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:18px;

    margin-bottom:45px;

}

.trainer-cta-features div{

    color:#fff;

}

.trainer-cta-features i{

    color:var(--primary);

    margin-right:10px;

}

.trainer-cta-buttons{

    display:flex;

    gap:20px;

}

.trainer-cta-image{

    text-align:right;

}

.trainer-cta-image img{

    max-width:100%;

    width:500px;

}

/*==================================
GALLERY FILTER
===================================*/

.gallery-section{

padding:120px 0 60px;

background:#090909;

}

.gallery-filter{

display:flex;

justify-content:center;

gap:15px;

flex-wrap:wrap;

margin-top:50px;

}

.gallery-filter button{

padding:14px 34px;

background:#181818;

border:none;

border-radius:50px;

color:#fff;

cursor:pointer;

transition:.35s;

font-weight:600;

}

.gallery-filter button.active,

.gallery-filter button:hover{

background:var(--primary);

}

/*==================================
MASONRY GALLERY
===================================*/

.gallery-grid{

columns:3;

column-gap:25px;

margin-top:20px;

}

.gallery-item{

position:relative;

margin-bottom:25px;

overflow:hidden;

border-radius:24px;

break-inside:avoid;

}

.gallery-item img{

width:100%;

display:block;

transition:.7s;

}

.gallery-overlay{

position:absolute;

inset:0;

background:rgba(var(--primary-rgb), .82);

display:flex;

justify-content:center;

align-items:center;

opacity:0;

transition:.35s;

}

.gallery-overlay a{

width:70px;

height:70px;

border-radius:50%;

background:#fff;

display:flex;

justify-content:center;

align-items:center;

color:var(--primary);

font-size:24px;

}

.gallery-item:hover img{

transform:scale(1.15);

}

.gallery-item:hover .gallery-overlay{

opacity:1;

}

/*==================================
CONTACT INFO
===================================*/

.contact-info-section{

    padding:140px 0;

    background:#080808;

}

.contact-info-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

    margin-top:70px;

}

.contact-card{

    background:#161616;

    border-radius:24px;

    padding:45px 30px;

    text-align:center;

    transition:.35s;

    border:1px solid rgba(255,255,255,.05);

}

.contact-card:hover{

    transform:translateY(-10px);

    border-color:var(--primary);

}

.contact-icon{

    width:80px;

    height:80px;

    margin:auto;

    border-radius:50%;

    background:rgba(255,102,0,.12);

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:30px;

    color:var(--primary);

    margin-bottom:25px;

}

.contact-card h3{

    margin-bottom:15px;

}

.contact-card p{

    color:#cfcfcf;

    line-height:1.8;

}
.contact-card p a{

    color:#cfcfcf;
  }
/*==================================
CONTACT FORM
===================================*/

.contact-form-section{

    padding:140px 0;

    background:#101010;

}

.contact-wrapper{

    display:grid;

    grid-template-columns:55% 45%;

    gap:50px;

}

/* Form */

.contact-form-box{

    background:#161616;

    padding:50px;

    border-radius:24px;

}

.contact-form-box h2{

    font-family:'Bebas Neue';

    font-size:64px;

    line-height:1;

    margin:20px 0;

}

.contact-form-box p{

    color:#cfcfcf;

    margin-bottom:40px;

}

.form-row{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:20px;

}

.form-group{

    margin-bottom:20px;

}

.form-group input,

.form-group select,

.form-group textarea{
      font-family: 'Inter', sans-serif;
    width:100%;

    background:#0d0d0d;

    border:1px solid rgba(255,255,255,.08);

    border-radius:15px;

    padding:18px 20px;

    color:#fff;

    font-size:16px;

    outline:none;

    transition:.3s;

}

.form-group textarea{

    resize:none;

}

.form-group input:focus,

.form-group select:focus,

.form-group textarea:focus{

    border-color:var(--primary);

}

/* Map */

.contact-map{

    position:relative;

}

.contact-map iframe{

    width:100%;

    height:100%;

    min-height:700px;

    border:none;

    border-radius:24px;

}

/* Floating Card */

.map-card{

    position:absolute;

    left:30px;

    bottom:30px;

    background:#161616;

    padding:25px;

    border-radius:18px;

    display:flex;

    gap:18px;

    align-items:flex-start;

    max-width:320px;

    box-shadow:0 20px 50px rgba(0,0,0,.3);

}

.map-card i{

    width:60px;

    height:60px;

    border-radius:50%;

    background:var(--primary);

    color:#fff;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:22px;

}

.map-card h4{

    margin-bottom:8px;

}

.map-card p{

    color:#bdbdbd;

    line-height:1.7;

}

/*==================================
404 PAGE
===================================*/

.error-404{

    position:relative;

    min-height:100vh;

    display:flex;

    align-items:center;

    justify-content:center;

    overflow:hidden;

    text-align:center;

    background:url("../images/404-bg.webp") center/cover no-repeat;

}

.error-404::before{

    content:"";

    position:absolute;

    inset:0;

    background:rgba(0,0,0,.82);

}

.error-content{

    position:relative;

    z-index:2;

    max-width:700px;

    padding:20px;
    margin: 0 auto;

}

.error-icon{

    width:120px;

    height:120px;

    margin:auto;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:55px;

    color:var(--primary);

    background:rgba(var(--primary-rgb),.12);

    border:1px solid rgba(var(--primary-rgb),.25);

    margin-bottom:35px;

}

.error-content span{

    color:var(--primary);

    letter-spacing:5px;

    font-weight:700;

    display:block;

    margin-bottom:15px;

}

.error-content h1{

    font-size:80px;

    line-height:1;

    margin-bottom:20px;

    color:#fff;

}

.error-content p{

    max-width:520px;

    margin:auto;

    color:#bfbfbf;

    font-size:18px;

    line-height:1.8;

}

.error-buttons{

    display:flex;

    justify-content:center;

    gap:20px;

    margin-top:45px;

}

@media(max-width:768px){

.error-content h1{

    font-size:70px;

}

.error-buttons{

    flex-direction:column;

}

}

/*==================================
MEMBERSHIP
===================================*/

.membership-grid{

  display:grid;

   grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

   gap:30px;

   margin-top:60px;

   align-items:stretch;


}

.plan-card{

  position:relative;

 display:flex;

 flex-direction:column;

 justify-content:space-between;

 background:#171717;

 border:1px solid #2a2a2a;

 border-radius:20px;

 padding:40px 30px;

 min-height:550px;
 transition: .4s;

}

.plan-card:hover{

    transform:translateY(-10px);

    border-color:var(--primary);

}

.featured{

    border:2px solid var(--primary);

}

.plan-card .badge{


    top:-18px;



}

.best{

    background:#18b45a;

}

.plan-card h3{

    color:#fff;

    font-size:28px;


}

.price{

    color:var(--primary);

    font-size:22px;

    font-weight:700;

}

.price span{

    font-size:64px;

    font-family:var(--heading-font);

}

.plan-card ul{

    list-style:none;

    padding:0;

    margin:0 0 35px;

}

.plan-card li{

    padding:16px 0;

    border-bottom:1px solid #262626;

    color:#ccc;

}

.plan-card li i{

    color:var(--primary);

    margin-right:10px;

}

.extra-services{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

    margin-top:70px;

}

.service-box{

    background:#171717;

    border-radius:20px;

    padding:35px;

    text-align:center;

    border:1px solid #2a2a2a;

    transition:.4s;

}

.service-box:hover{

    border-color:var(--primary);

    transform:translateY(-8px);

}

.service-box i{

    width:80px;

    height:80px;

    line-height:80px;

    border-radius:50%;

    background:rgba(var(--primary-rgb),.15);

    color:var(--primary);

    font-size:28px;

    margin-bottom:20px;

}

.service-box h4{

    color:#fff;

    margin-bottom:12px;

}

.service-box p{

    color:#bfbfbf;

}

.service-box strong{

    color:var(--primary);

}

@media(max-width:1200px){

.membership-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.membership-grid,
.extra-services{

grid-template-columns:1fr;

}

}
.gallery-grid-section {
  padding-bottom: 100px;
}


/*=========================================
PRIVACY POLICY
=========================================*/

.privacy-section{

    background:#101010;

    padding:100px 0;

}

.privacy-header{

    max-width:850px;

    margin:0 auto 70px;

    text-align:center;

}

.privacy-header > span{

    color:var(--primary);

    font-size:14px;

    font-weight:700;

    letter-spacing:4px;

    text-transform:uppercase;

}

.privacy-header h2{

    color:#fff;

    font-size:64px;

    margin:15px 0 20px;

}

.privacy-header p{

    color:#aaa;

    line-height:1.8;

}


/* CONTENT */

.privacy-content{

    max-width:1000px;

    margin:auto;

}

.privacy-block{

    display:grid;

    grid-template-columns:80px 1fr;

    gap:30px;

    padding:45px 0;

    border-bottom:1px solid #292929;

}

.privacy-number{

    width:58px;

    height:58px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:rgba(var(--primary-rgb),.12);

    border:1px solid rgba(var(--primary-rgb),.3);

    border-radius:50%;

    color:var(--primary);

    font-weight:700;

    font-size:15px;

}

.privacy-block h3{

    color:#fff;

    font-size:28px;

    margin:0 0 20px;

}

.privacy-block h4{

    color:#fff;

    font-size:18px;

    margin:30px 0 15px;

}

.privacy-block p{

    color:#bdbdbd;

    font-size:16px;

    line-height:1.9;

    margin-bottom:18px;

}

.privacy-block ul{

    margin:15px 0 25px;

    padding-left:20px;
    list-style-type: disc;

}

.privacy-block li{

    color:#bdbdbd;

    line-height:1.9;

    margin-bottom:8px;

    padding-left:5px;

}

.privacy-block li::marker{

    color:var(--primary);

}

.privacy-block strong{

    color:#fff;

}


/* CONTACT */

.privacy-contact{

    margin-top:30px;

    background:#181818;

    border:1px solid #292929;

    border-radius:18px;

    padding:30px;

}

.privacy-contact h4{

    color:#fff;

    margin:0 0 20px;

    font-size:22px;

}

.privacy-contact p{

    display:flex;

    align-items:center;

    gap:15px;

    margin:15px 0;

}

.privacy-contact i{

    width:38px;

    height:38px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:rgba(var(--primary-rgb),.12);

    border-radius:50%;

    color:var(--primary);

}

.privacy-contact a{

    color:#ccc;

    text-decoration:none;

    transition:.3s;

}

.privacy-contact a:hover{

    color:var(--primary);

}


/*=========================================
PRIVACY RESPONSIVE
=========================================*/

@media(max-width:768px){

    .privacy-section{

        padding:70px 0;

    }

    .privacy-header{

        margin-bottom:45px;

    }

    .privacy-header h2{

        font-size:46px;

    }

    .privacy-block{

        grid-template-columns:1fr;

        gap:20px;

        padding:35px 0;

    }

    .privacy-number{

        width:48px;

        height:48px;

    }

    .privacy-block h3{

        font-size:24px;

    }

    .privacy-block p,
    .privacy-block li{

        font-size:15px;

    }

}

@media(max-width:480px){

    .privacy-header h2{

        font-size:38px;

    }

    .privacy-block h3{

        font-size:22px;

    }

    .privacy-contact{

        padding:22px;

    }

}

/* =========================================
   SITEMAP
========================================= */

.sitemap-section {
    background: #101010;
    padding: 100px 0;
}

.sitemap-header {
    max-width: 750px;
    margin: 0 auto 65px;
    text-align: center;
}

.sitemap-header > span {
    color: var(--primary);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 4px;
    text-transform: uppercase;
}

.sitemap-header h2 {
    color: #fff;
    font-size: 64px;
    line-height: 1.1;
    margin: 15px 0 20px;
}

.sitemap-header p {
    color: #aaa;
    font-size: 16px;
    line-height: 1.8;
}


/* GRID */

.sitemap-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}


/* CARD */

.sitemap-card {
    position: relative;
    display: flex;
    gap: 25px;
    background: #171717;
    border: 1px solid #292929;
    border-radius: 20px;
    padding: 35px 30px;
    overflow: hidden;
    transition: .4s ease;
}

.sitemap-card::before {
    content: "";
    position: absolute;
    width: 120px;
    height: 120px;
    background: rgba(var(--primary-rgb), .08);
    border-radius: 50%;
    top: -70px;
    right: -60px;
    transition: .4s ease;
}

.sitemap-card:hover {
    border-color: rgba(var(--primary-rgb), .5);
    transform: translateY(-6px);
}

.sitemap-card:hover::before {
    transform: scale(1.5);
}


/* ICON */

.sitemap-icon {
    flex: 0 0 52px;
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(var(--primary-rgb), .12);
    border: 1px solid rgba(var(--primary-rgb), .25);
    border-radius: 14px;
    color: var(--primary);
    font-size: 20px;
}


/* CONTENT */

.sitemap-card-content {
    position: relative;
    z-index: 1;
    flex: 1;
}

.sitemap-card h3 {
    color: #fff;
    font-size: 21px;
    margin: 3px 0 22px;
}

.sitemap-card ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.sitemap-card li {
    margin-bottom: 13px;
}

.sitemap-card li:last-child {
    margin-bottom: 0;
}

.sitemap-card a {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #aaa;
    text-decoration: none;
    font-size: 15px;
    transition: .3s ease;
}

.sitemap-card a i {
    color: var(--primary);
    font-size: 11px;
    transition: .3s ease;
}

.sitemap-card a:hover {
    color: #fff;
}

.sitemap-card a:hover i {
    transform: translateX(4px);
}


/* =========================================
   SITEMAP CTA
========================================= */

.sitemap-cta {
    position: relative;
    background: #151515;
    padding: 100px 0;
    text-align: center;
    overflow: hidden;
}

.sitemap-cta::before {
    content: "";
    position: absolute;
    width: 500px;
    height: 500px;
    background: rgba(var(--primary-rgb), .08);
    border-radius: 50%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    filter: blur(80px);
}

.sitemap-cta-content {
    position: relative;
    z-index: 1;
    max-width: 750px;
    margin: auto;
}

.sitemap-cta-content > span {
    color: var(--primary);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 4px;
}

.sitemap-cta h2 {
    color: #fff;
    font-size: 58px;
    line-height: 1.1;
    margin: 15px 0 20px;
}

.sitemap-cta h2 strong {
    color: var(--primary);
}

.sitemap-cta p {
    color: #aaa;
    line-height: 1.8;
    max-width: 600px;
    margin: 0 auto 35px;
}

.sitemap-cta-buttons {
    display: flex;
    justify-content: center;
    gap: 15px;
    flex-wrap: wrap;
}


/* =========================================
   RESPONSIVE
========================================= */

@media (max-width: 992px) {

    .sitemap-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .sitemap-header h2 {
        font-size: 52px;
    }

    .sitemap-cta h2 {
        font-size: 48px;
    }
}


@media (max-width: 576px) {

    .sitemap-section {
        padding: 70px 0;
    }

    .sitemap-header {
        margin-bottom: 45px;
    }

    .sitemap-header h2 {
        font-size: 40px;
    }

    .sitemap-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .sitemap-card {
        padding: 28px 22px;
    }

    .sitemap-cta {
        padding: 70px 0;
    }

    .sitemap-cta h2 {
        font-size: 38px;
    }
}
