/*==================================================
  Enterprise AI Masterclass
  Premium Bootstrap Theme
  Part 1.3.1
==================================================*/

/*=========================================
Google Fonts
=========================================*/
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&family=Inter:wght@300;400;500;600;700&display=swap');

/*=========================================
CSS Variables
=========================================*/
:root{

    --primary:#5B5FEF;
    --primary-dark:#4348d9;

    --secondary:#00C2FF;

    --accent:#8B5CF6;

    --success:#22C55E;

    --warning:#F59E0B;

    --danger:#EF4444;

    --dark:#081229;

    --dark-2:#111827;

    --light:#F8FAFC;

    --white:#ffffff;

    --text:#475569;

    --border:#E2E8F0;

    --gradient:
        linear-gradient(
            135deg,
            #5B5FEF 0%,
            #8B5CF6 50%,
            #00C2FF 100%
        );

    --shadow-sm:
        0 5px 15px rgba(0,0,0,.08);

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

    --shadow-lg:
        0 25px 70px rgba(0,0,0,.18);

    --radius:18px;

    --radius-lg:30px;

    --transition:.35s ease;

}

/*=========================================
Reset
=========================================*/

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{

    scroll-behavior:smooth;

}

body{

    font-family:'Inter',sans-serif;

    background:var(--light);

    color:var(--text);

    overflow-x:hidden;

    line-height:1.7;

}

/*=========================================
Typography
=========================================*/

h1,
h2,
h3,
h4,
h5,
h6{

    font-family:'Poppins',sans-serif;

    color:var(--dark);

    font-weight:700;

}

a{

    text-decoration:none;

    transition:var(--transition);

}

img{

    max-width:100%;

    display:block;

}

/*=========================================
Selection
=========================================*/

::selection{

    background:var(--primary);

    color:#fff;

}

/*=========================================
Scrollbar
=========================================*/

::-webkit-scrollbar{

    width:10px;

}

::-webkit-scrollbar-track{

    background:#edf2f7;

}

::-webkit-scrollbar-thumb{

    background:var(--primary);

    border-radius:50px;

}

::-webkit-scrollbar-thumb:hover{

    background:var(--accent);

}

/*=========================================
Section Padding
=========================================*/

section{

    position:relative;

    padding:100px 0;

}

/*=========================================
Containers
=========================================*/

.container{

    position:relative;

    z-index:2;

}

/*=========================================
Gradient Text
=========================================*/

.gradient-text{

    background:var(--gradient);

    -webkit-background-clip:text;

    -webkit-text-fill-color:transparent;

}

/*=========================================
Gradient Button
=========================================*/

.btn-gradient{

    background:var(--gradient);

    color:#fff;

    border:none;

    border-radius:50px;

    padding:14px 34px;

    font-weight:600;

    box-shadow:var(--shadow);

    transition:var(--transition);

}

.btn-gradient:hover{

    transform:translateY(-5px);

    color:#fff;

    box-shadow:0 25px 45px rgba(91,95,239,.35);

}

/*=========================================
Outline Button
=========================================*/

.btn-outline-light{

    border-radius:50px;

    padding:14px 34px;

    font-weight:600;

}

/*=========================================
Hero Badge
=========================================*/

.hero-badge{

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

    color:#fff;

    padding:10px 20px;

    backdrop-filter:blur(18px);

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

}

/*=========================================
Glass Effect
=========================================*/

.glass{

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

    backdrop-filter:blur(20px);

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

    box-shadow:var(--shadow);

}

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

.card{

    border:none;

    border-radius:24px;

    transition:var(--transition);

}

.card:hover{

    transform:translateY(-8px);

}

/*=========================================
Background Shapes
=========================================*/

.shape{

    position:fixed;

    border-radius:50%;

    filter:blur(100px);

    opacity:.35;

    z-index:-1;

}

.shape1{

    width:380px;

    height:380px;

    background:#5B5FEF;

    top:-120px;

    left:-120px;

    animation:float1 10s infinite alternate;

}

.shape2{

    width:300px;

    height:300px;

    background:#00C2FF;

    right:-80px;

    top:220px;

    animation:float2 12s infinite alternate;

}

.shape3{

    width:340px;

    height:340px;

    background:#8B5CF6;

    bottom:-120px;

    left:40%;

    animation:float3 15s infinite alternate;

}

/*=========================================
Animations
=========================================*/

@keyframes float1{

    from{

        transform:translateY(0) translateX(0);

    }

    to{

        transform:translateY(80px) translateX(40px);

    }

}

@keyframes float2{

    from{

        transform:translateY(0);

    }

    to{

        transform:translateY(-90px);

    }

}

@keyframes float3{

    from{

        transform:translateX(0);

    }

    to{

        transform:translateX(-100px);

    }

}

/*=========================================
Utilities
=========================================*/

.rounded-xl{

    border-radius:24px;

}

.shadow-soft{

    box-shadow:var(--shadow);

}

.shadow-large{

    box-shadow:var(--shadow-lg);

}

.text-primary{

    color:var(--primary)!important;

}

.bg-primary-gradient{

    background:var(--gradient);

}

.min-vh-90{

    min-height:90vh;

}

.transition{

    transition:var(--transition);

}

/*=========================================
Placeholder Image
=========================================*/

.image-placeholder{

    background:linear-gradient(
        135deg,
        #eef2ff,
        #dbeafe
    );

    border-radius:24px;

    min-height:420px;

    display:flex;

    align-items:center;

    justify-content:center;

    color:var(--primary);

    font-size:80px;

}
/*==================================================
PART 1.3.2
Navbar + Hero Section
==================================================*/


/*=========================================
Glass Navbar
=========================================*/

.glass-nav{

    position:fixed;

    top:0;

    left:0;

    width:100%;

    padding:18px 0;

    background:rgba(8,18,41,.35);

    backdrop-filter:blur(18px);

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

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

    transition:.35s;

    z-index:1050;

}

.glass-nav.scrolled{

    padding:10px 0;

    background:rgba(8,18,41,.92);

    box-shadow:0 12px 35px rgba(0,0,0,.18);

}

/*=========================================
Navbar Brand
=========================================*/

.navbar-brand{

    font-family:'Poppins',sans-serif;

    font-size:1.45rem;

    font-weight:700;

    color:#fff !important;

}

.navbar-brand i{

    color:var(--secondary);

}

/*=========================================
Navbar Links
=========================================*/

.navbar-nav .nav-link{

    color:rgba(255,255,255,.85);

    font-weight:500;

    margin:0 14px;

    position:relative;

    transition:var(--transition);

}

.navbar-nav .nav-link:hover{

    color:#fff;

}

.navbar-nav .nav-link::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-6px;

    width:0;

    height:2px;

    background:var(--secondary);

    transition:.3s;

}

.navbar-nav .nav-link:hover::after{

    width:100%;

}

/*=========================================
Navbar Button
=========================================*/

.navbar .btn-gradient{

    padding:12px 28px;

}

/*=========================================
Mobile Toggle
=========================================*/

.navbar-toggler{

    border:none;

}

.navbar-toggler:focus{

    box-shadow:none;

}

/*=========================================
Offcanvas
=========================================*/

.offcanvas{

    background:#081229;

}

.offcanvas .nav-link{

    color:#fff;

    font-size:1.05rem;

    font-weight:500;

}

/*=========================================
Hero Section
=========================================*/

.hero{

    position:relative;

    min-height:100vh;

    display:flex;

    align-items:center;

    overflow:hidden;

    background:
    radial-gradient(circle at top right,
    rgba(91,95,239,.30),
    transparent 35%),

    radial-gradient(circle at bottom left,
    rgba(0,194,255,.18),
    transparent 40%),

    linear-gradient(
        135deg,
        #081229 0%,
        #101d42 100%
    );

}

/*=========================================
Hero Overlay
=========================================*/

.hero::before{

    content:"";

    position:absolute;

    inset:0;

    background-image:

    linear-gradient(
        rgba(255,255,255,.04) 1px,
        transparent 1px),

    linear-gradient(
        90deg,
        rgba(255,255,255,.04) 1px,
        transparent 1px);

    background-size:40px 40px;

    opacity:.25;

}

/*=========================================
Hero Content
=========================================*/

.hero h1{

    color:#fff;

    font-weight:800;

    line-height:1.1;

    margin-bottom:25px;

}

.hero p{

    color:rgba(255,255,255,.82);

    font-size:1.1rem;

    max-width:620px;

}

/*=========================================
Hero Stats
=========================================*/

.hero small{

    color:rgba(255,255,255,.75);

}

.hero h3{

    color:#fff;

    font-size:2rem;

}

/*=========================================
Hero Buttons
=========================================*/

.hero .btn{

    min-width:190px;

}

/*=========================================
Hero Card
=========================================*/

.hero-card{

    animation:floatCard 5s ease-in-out infinite;

}

.hero-card .card{

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

    border-radius:28px;

    overflow:hidden;

    position:relative;

}

.hero-card .card::before{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:6px;

    background:var(--gradient);

}

.hero-card .card-body{

    padding:45px;

}

.hero-card h3{

    color:var(--dark);

}

.hero-card p{

    color:#64748B;

}

.hero-card i.display-1{

    background:var(--gradient);

    -webkit-background-clip:text;

    -webkit-text-fill-color:transparent;

}

/*=========================================
Feature Icons
=========================================*/

.hero-card .fs-2{

    transition:.35s;

}

.hero-card .col-4:hover .fs-2{

    transform:translateY(-6px) scale(1.08);

}

/*=========================================
Floating Animation
=========================================*/

@keyframes floatCard{

    0%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-16px);

    }

    100%{

        transform:translateY(0);

    }

}

/*=========================================
Hero Decorative Glow
=========================================*/

.hero::after{

    content:"";

    position:absolute;

    width:650px;

    height:650px;

    right:-240px;

    top:-220px;

    background:radial-gradient(
        rgba(91,95,239,.35),
        transparent 70%
    );

    filter:blur(40px);

    pointer-events:none;

}

/*=========================================
Responsive
=========================================*/

@media(max-width:991px){

.hero{

    text-align:center;

    padding-top:120px;

}

.hero .btn{

    width:100%;

}

.hero-card{

    margin-top:60px;

}

.navbar-nav .nav-link{

    margin:0;

}

}

@media(max-width:768px){

.hero h1{

    font-size:2.7rem;

}

.hero p{

    font-size:1rem;

}

.hero-card .card-body{

    padding:30px;

}

}

@media(max-width:576px){

.hero h1{

    font-size:2.2rem;

}

.hero h3{

    font-size:1.5rem;

}

.hero .btn{

    min-width:100%;

}

.hero .d-flex{

    flex-direction:column;

}

}
/*==================================================
PART 1.3.3
Trusted Brands | Statistics | Features | About
==================================================*/

/*=========================================
Section Title
=========================================*/

.section-title{
    margin-bottom:60px;
}

.section-title span{
    display:inline-block;
    color:var(--primary);
    font-weight:600;
    letter-spacing:1px;
    text-transform:uppercase;
}

.section-title h2{
    font-size:2.5rem;
    margin-top:12px;
    font-weight:700;
}

.section-title p{
    max-width:700px;
    margin:auto;
    color:#64748B;
}

/*=========================================
Trusted Brands
=========================================*/

.brand-box{

    background:#fff;

    border-radius:20px;

    padding:35px 20px;

    text-align:center;

    transition:all .35s ease;

    border:1px solid rgba(0,0,0,.05);

    box-shadow:0 8px 25px rgba(0,0,0,.05);

    height:100%;

}

.brand-box i{

    font-size:3rem;

    color:#94A3B8;

    transition:.35s;

}

.brand-box h6{

    margin-top:20px;

    font-weight:600;

    color:#475569;

}

.brand-box:hover{

    transform:translateY(-10px);

    box-shadow:0 25px 45px rgba(91,95,239,.15);

    border-color:rgba(91,95,239,.15);

}

.brand-box:hover i{

    color:var(--primary);

    transform:scale(1.15) rotate(-6deg);

}

.brand-box:hover h6{

    color:var(--primary);

}

/*=========================================
Statistics
=========================================*/

.stat-card{

    background:#fff;

    border-radius:24px;

    padding:45px 25px;

    text-align:center;

    transition:.35s;

    box-shadow:0 10px 30px rgba(0,0,0,.06);

    position:relative;

    overflow:hidden;

}

.stat-card::before{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:100%;

    height:5px;

    background:var(--gradient);

}

.stat-card:hover{

    transform:translateY(-10px);

    box-shadow:0 30px 50px rgba(91,95,239,.18);

}

.counter{

    font-size:3rem;

    font-weight:800;

    color:var(--primary);

    font-family:'Poppins',sans-serif;

}

.stat-card p{

    margin-top:10px;

    color:#64748B;

    font-weight:500;

}

/*=========================================
Feature Cards
=========================================*/

.feature-card{

    background:#fff;

    border-radius:24px;

    padding:35px;

    text-align:center;

    transition:.35s;

    border:1px solid transparent;

    box-shadow:0 10px 30px rgba(0,0,0,.05);

    height:100%;

    position:relative;

    overflow:hidden;

}

.feature-card::after{

    content:"";

    position:absolute;

    inset:0;

    background:linear-gradient(
        135deg,
        rgba(91,95,239,.04),
        rgba(0,194,255,.03)
    );

    opacity:0;

    transition:.35s;

}

.feature-card:hover::after{

    opacity:1;

}

.feature-card:hover{

    transform:translateY(-12px);

    border-color:rgba(91,95,239,.15);

    box-shadow:0 30px 50px rgba(91,95,239,.12);

}

.feature-card i{

    width:80px;

    height:80px;

    display:inline-flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:var(--gradient);

    color:#fff;

    font-size:2rem;

    margin-bottom:25px;

    transition:.35s;

}

.feature-card:hover i{

    transform:rotate(-8deg) scale(1.08);

}

.feature-card h5{

    margin-bottom:18px;

    font-weight:700;

}

.feature-card p{

    color:#64748B;

    margin-bottom:0;

}

/*=========================================
About Section
=========================================*/

.about-image{

    position:relative;

}

.about-image img{

    border-radius:28px;

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

}

.about-image::before{

    content:"";

    position:absolute;

    width:160px;

    height:160px;

    background:var(--gradient);

    border-radius:30px;

    left:-30px;

    bottom:-30px;

    opacity:.12;

    z-index:-1;

}

.about-content h2{

    margin-bottom:25px;

}

.about-content p{

    color:#64748B;

    font-size:1.05rem;

}

.about-content ul{

    padding-left:0;

    list-style:none;

}

.about-content li{

    display:flex;

    align-items:center;

    margin-bottom:18px;

    font-weight:500;

}

.about-content li i{

    color:#22C55E;

    margin-right:12px;

    font-size:1.2rem;

}

/*=========================================
Badge
=========================================*/

.badge.bg-primary{

    background:var(--gradient)!important;

    padding:12px 20px;

    border-radius:30px;

    font-weight:500;

}

/*=========================================
Buttons
=========================================*/

.feature-card .btn{

    margin-top:20px;

}

/*=========================================
Animation
=========================================*/

.brand-box,
.feature-card,
.stat-card{

    opacity:0;

    transform:translateY(35px);

    animation:fadeUp .8s forwards;

}

@keyframes fadeUp{

    to{

        opacity:1;

        transform:translateY(0);

    }

}

/*=========================================
Responsive
=========================================*/

@media (max-width:991px){

    .section-title h2{

        font-size:2rem;

    }

    .about-content{

        margin-top:50px;

        text-align:center;

    }

    .about-content ul{

        display:inline-block;

        text-align:left;

    }

}

@media (max-width:768px){

    .counter{

        font-size:2.4rem;

    }

    .feature-card{

        padding:28px;

    }

    .brand-box{

        padding:28px 15px;

    }

}

@media (max-width:576px){

    .section-title h2{

        font-size:1.7rem;

    }

    .feature-card i{

        width:65px;

        height:65px;

        font-size:1.6rem;

    }

    .stat-card{

        padding:30px 20px;

    }

}
/*==================================================
PART 1.3.4
CTA | Footer | Dark Mode | Utilities
==================================================*/


/*=========================================
CTA SECTION
=========================================*/

.cta-section{

    position:relative;

    overflow:hidden;

    background:var(--gradient);

    border-radius:30px;

    padding:80px 60px;

    color:#fff;

    margin:100px 0;

}

.cta-section::before{

    content:"";

    position:absolute;

    inset:0;

    background:

    radial-gradient(circle at top right,
    rgba(255,255,255,.15),
    transparent 35%),

    radial-gradient(circle at bottom left,
    rgba(255,255,255,.10),
    transparent 40%);

}

.cta-section h2{

    color:#fff;

    font-size:2.6rem;

    font-weight:700;

}

.cta-section p{

    color:rgba(255,255,255,.9);

    font-size:1.05rem;

}

.cta-section .btn{

    margin-top:20px;

}

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

footer{

    background:#081229;

    color:#CBD5E1;

    padding:80px 0 30px;

}

footer h5{

    color:#fff;

    margin-bottom:20px;

    font-weight:600;

}

footer p{

    color:#94A3B8;

}

footer ul{

    list-style:none;

    padding:0;

}

footer ul li{

    margin-bottom:12px;

}

footer ul li a{

    color:#94A3B8;

    transition:.3s;

}

footer ul li a:hover{

    color:#fff;

    padding-left:8px;

}

.footer-logo{

    color:#fff;

    font-size:1.7rem;

    font-weight:700;

    margin-bottom:20px;

}

.footer-bottom{

    margin-top:60px;

    padding-top:20px;

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

    text-align:center;

    color:#94A3B8;

}

/*=========================================
SOCIAL ICONS
=========================================*/

.social-links{

    display:flex;

    gap:15px;

    margin-top:25px;

}

.social-links a{

    width:45px;

    height:45px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

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

    color:#fff;

    transition:.35s;

}

.social-links a:hover{

    background:var(--gradient);

    transform:translateY(-6px);

}

/*=========================================
BACK TO TOP
=========================================*/

.back-top{

    position:fixed;

    right:25px;

    bottom:25px;

    width:52px;

    height:52px;

    border:none;

    border-radius:50%;

    background:var(--gradient);

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:1.2rem;

    box-shadow:var(--shadow-lg);

    opacity:0;

    visibility:hidden;

    transition:.35s;

    z-index:999;

}

.back-top.show{

    opacity:1;

    visibility:visible;

}

/*=========================================
SCROLL REVEAL
=========================================*/

.reveal{

    opacity:0;

    transform:translateY(50px);

    transition:all .8s ease;

}

.reveal.active{

    opacity:1;

    transform:translateY(0);

}

/*=========================================
LOADER
=========================================*/

.page-loader{

    position:fixed;

    inset:0;

    background:#081229;

    display:flex;

    align-items:center;

    justify-content:center;

    z-index:99999;

}

.loader{

    width:70px;

    height:70px;

    border:6px solid rgba(255,255,255,.15);

    border-top-color:#fff;

    border-radius:50%;

    animation:spin 1s linear infinite;

}

@keyframes spin{

    to{

        transform:rotate(360deg);

    }

}

/*=========================================
DARK MODE
=========================================*/

body.dark-mode{

    background:#081229;

    color:#CBD5E1;

}

body.dark-mode section{

    background:transparent;

}

body.dark-mode .card,

body.dark-mode .brand-box,

body.dark-mode .feature-card,

body.dark-mode .stat-card{

    background:#111827;

    color:#E2E8F0;

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

}

body.dark-mode h1,
body.dark-mode h2,
body.dark-mode h3,
body.dark-mode h4,
body.dark-mode h5{

    color:#fff;

}

body.dark-mode p{

    color:#CBD5E1;

}

body.dark-mode .glass-nav{

    background:rgba(8,18,41,.95);

}

body.dark-mode footer{

    background:#030712;

}

/*=========================================
UTILITY ANIMATIONS
=========================================*/

.float{

    animation:floating 4s ease-in-out infinite;

}

@keyframes floating{

    0%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-12px);

    }

    100%{

        transform:translateY(0);

    }

}

.zoom-hover{

    transition:.35s;

}

.zoom-hover:hover{

    transform:scale(1.05);

}

.rotate-hover{

    transition:.35s;

}

.rotate-hover:hover{

    transform:rotate(-3deg);

}

/*=========================================
FOCUS STATES
=========================================*/

button:focus,
.btn:focus,
a:focus{

    outline:none;

    box-shadow:0 0 0 .25rem rgba(91,95,239,.25);

}

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

@media(max-width:991px){

    .cta-section{

        padding:60px 35px;

        text-align:center;

    }

    footer{

        text-align:center;

    }

    .social-links{

        justify-content:center;

    }

}

@media(max-width:768px){

    .cta-section h2{

        font-size:2rem;

    }

    .cta-section{

        border-radius:20px;

    }

}

@media(max-width:576px){

    .cta-section{

        padding:40px 25px;

    }

    .cta-section h2{

        font-size:1.6rem;

    }

    .back-top{

        width:46px;

        height:46px;

        right:18px;

        bottom:18px;

    }

}
.navbar-nav .nav-link.active{

    color:#fff !important;

    font-weight:600;

}

.navbar-nav .nav-link.active::after{

    width:100%;

}
/* Ripple Effect */

.btn-gradient{

    position:relative;

    overflow:hidden;

}

.ripple{

    position:absolute;

    border-radius:50%;

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

    transform:scale(0);

    animation:ripple .7s linear;

    pointer-events:none;

}

@keyframes ripple{

    to{

        transform:scale(4);

        opacity:0;

    }

}
/* Smooth Theme Transition */

body,
section,
.card,
.brand-box,
.feature-card,
.stat-card,
.glass-nav,
footer,
.btn,
a{

    transition:
        background-color .35s ease,
        color .35s ease,
        border-color .35s ease,
        box-shadow .35s ease;

}

/* Theme Toggle Button */

#themeToggle{

    color:#fff;

    font-size:1.25rem;

    border:none;

    background:transparent;

}

#themeToggle:hover{

    color:var(--secondary);

}
/*=========================================
Typing Animation
=========================================*/

.typing-text{

    display:inline-block;

    color:var(--secondary);

    font-weight:700;

    min-width:220px;

}

.typing-text::after{

    content:"|";

    display:inline-block;

    margin-left:4px;

    animation:cursorBlink .8s infinite;

}

@keyframes cursorBlink{

    0%{

        opacity:1;

    }

    50%{

        opacity:0;

    }

    100%{

        opacity:1;

    }

}
/*==================================================
Scroll Progress Bar
==================================================*/

#scrollProgress{

    position:fixed;

    top:0;

    left:0;

    width:0;

    height:4px;

    z-index:99999;

    background:linear-gradient(
        90deg,
        #5B5FEF,
        #8B5CF6,
        #00C2FF
    );

    box-shadow:
        0 0 12px rgba(91,95,239,.45),
        0 0 20px rgba(0,194,255,.25);

    transition:width .08s linear;

}

/* Dark Mode */

body.dark-mode #scrollProgress{

    box-shadow:
        0 0 18px rgba(0,194,255,.45);

}
/*=========================================
Active Navigation
=========================================*/

.navbar-nav .nav-link.active{

    color:#ffffff !important;

    font-weight:600;

}

.navbar-nav .nav-link.active::after{

    width:100%;

}

.offcanvas .nav-link.active{

    color:var(--secondary) !important;

}
/* Theme Transition */

.theme-transition,
.theme-transition *,
.theme-transition *::before,
.theme-transition *::after{

    transition:
        background-color .35s ease,
        color .35s ease,
        border-color .35s ease,
        box-shadow .35s ease;

}

/* Theme Toggle */

#themeToggle{

    border:none;

    background:transparent;

    color:#ffffff;

    font-size:1.25rem;

    cursor:pointer;

}

#themeToggle:hover{

    color:var(--secondary);

}
.timeline{
    position:relative;
    max-width:900px;
    margin:auto;
}

.timeline::before{
    content:"";
    position:absolute;
    left:30px;
    top:0;
    width:3px;
    height:100%;
    background:linear-gradient(to bottom,#4f46e5,#06b6d4);
}

.timeline-item{
    position:relative;
    display:flex;
    gap:30px;
    margin-bottom:40px;
}

.timeline-number{
    width:60px;
    height:60px;
    border-radius:50%;
    background:#4f46e5;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:700;
    flex-shrink:0;
    box-shadow:0 10px 30px rgba(79,70,229,.25);
}

.timeline-content{
    background:#fff;
    border-radius:20px;
    padding:30px;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
    width:100%;
    transition:.3s;
}

.timeline-content:hover{
    transform:translateY(-6px);
}

@media(max-width:768px){

    .timeline::before{
        left:22px;
    }

    .timeline-item{
        gap:20px;
    }

    .timeline-number{
        width:45px;
        height:45px;
        font-size:14px;
    }

    .timeline-content{
        padding:20px;
    }

}
/*=========================================
Technology Cards
=========================================*/

.tech-card{
    background:#fff;
    border-radius:20px;
    padding:30px;
    text-align:center;
    height:100%;
    transition:all .35s ease;
    box-shadow:0 12px 35px rgba(0,0,0,.08);
    border:1px solid rgba(0,0,0,.05);
}

.tech-card:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 45px rgba(0,0,0,.12);
}

.tech-icon{
    width:80px;
    height:80px;
    border-radius:50%;
    margin:0 auto 20px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:2rem;
}

.tech-card h5{
    font-weight:700;
    margin-bottom:12px;
}

.tech-card p{
    min-height:48px;
}

@media(max-width:768px){

    .tech-card{
        padding:24px;
    }

    .tech-icon{
        width:70px;
        height:70px;
        font-size:1.7rem;
    }

}
/*=========================================
Project Cards
=========================================*/

.project-card{
    background:#fff;
    border-radius:24px;
    overflow:hidden;
    height:100%;
    border:1px solid rgba(0,0,0,.06);
    box-shadow:0 15px 40px rgba(0,0,0,.08);
    transition:all .35s ease;
}

.project-card:hover{
    transform:translateY(-10px);
    box-shadow:0 25px 60px rgba(0,0,0,.12);
}

.project-image{
    height:180px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:4rem;
}

.project-body{
    padding:28px;
}

.project-body h4{
    font-weight:700;
    margin-bottom:15px;
}

.project-tech{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

@media (max-width:768px){

    .project-image{
        height:140px;
        font-size:3rem;
    }

    .project-body{
        padding:22px;
    }

}
/*=========================================
Instructor Cards
=========================================*/

.instructor-card{
    background:#fff;
    border-radius:24px;
    overflow:hidden;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
    transition:all .35s ease;
    height:100%;
    border:1px solid rgba(0,0,0,.05);
}

.instructor-card:hover{
    transform:translateY(-10px);
    box-shadow:0 25px 60px rgba(0,0,0,.12);
}

.instructor-image{
    overflow:hidden;
}

.instructor-image img{
    width:100%;
    height:300px;
    object-fit:cover;
    transition:transform .5s ease;
}

.instructor-card:hover .instructor-image img{
    transform:scale(1.08);
}

.instructor-body{
    padding:25px;
}

.instructor-body h5{
    font-weight:700;
    margin-bottom:8px;
}

.social-links{
    display:flex;
    gap:12px;
}

.social-links a{
    width:40px;
    height:40px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#f5f7fa;
    color:#4f46e5;
    text-decoration:none;
    transition:all .3s ease;
}

.social-links a:hover{
    background:#4f46e5;
    color:#fff;
    transform:translateY(-3px);
}

@media (max-width:768px){

    .instructor-image img{
        height:260px;
    }

}
/*=========================================
Testimonials
=========================================*/

.stat-box{
    padding:20px;
}

.stat-box h2{
    font-size:3rem;
    font-weight:800;
}

.testimonial-card{
    background:#fff;
    border-radius:24px;
    padding:40px;
    text-align:center;
    box-shadow:0 20px 50px rgba(0,0,0,.08);
    border:1px solid rgba(0,0,0,.05);
    height:100%;
}

.testimonial-avatar img{
    width:90px;
    height:90px;
    border-radius:50%;
    object-fit:cover;
    margin-bottom:20px;
    border:4px solid #eef2ff;
}

.testimonial-text{
    font-size:1rem;
    color:#6c757d;
    line-height:1.8;
    margin-bottom:25px;
}

.swiper-pagination-bullet-active{
    background:#4f46e5;
}

@media(max-width:768px){

    .testimonial-card{
        padding:30px 25px;
    }

    .stat-box h2{
        font-size:2.2rem;
    }

}
/*=========================================
Certification Section
=========================================*/

.certificate-card{
    background:#fff;
    border-radius:24px;
    padding:35px;
    box-shadow:0 20px 50px rgba(0,0,0,.08);
    border:1px solid rgba(0,0,0,.05);
    height:100%;
}

.certificate-preview{
    text-align:center;
    padding:40px 20px;
    border:2px dashed #dbe4ff;
    border-radius:18px;
}

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

.career-item{
    display:flex;
    gap:20px;
    align-items:flex-start;
    background:#fff;
    padding:25px;
    border-radius:18px;
    box-shadow:0 10px 30px rgba(0,0,0,.06);
}

.career-icon{
    width:60px;
    height:60px;
    border-radius:50%;
    background:#eef2ff;
    color:#4f46e5;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:1.4rem;
    flex-shrink:0;
}

.partner-card{
    background:#fff;
    border-radius:18px;
    padding:30px;
    font-weight:700;
    box-shadow:0 10px 30px rgba(0,0,0,.06);
    transition:.3s;
}

.partner-card:hover{
    transform:translateY(-6px);
    box-shadow:0 18px 40px rgba(0,0,0,.10);
}

@media(max-width:768px){

    .certificate-card{
        padding:25px;
    }

    .career-item{
        padding:20px;
    }

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

.faq-card{

    border:none;

    border-radius:18px;

    overflow:hidden;

    margin-bottom:18px;

    background:#fff;

    box-shadow:0 10px 30px rgba(0,0,0,.06);

}

.faq-card .accordion-button{

    background:#fff;

    font-size:1.05rem;

    font-weight:600;

    padding:22px 28px;

    box-shadow:none;

}

.faq-card .accordion-button:not(.collapsed){

    background:#eef2ff;

    color:#4f46e5;

}

.faq-card .accordion-body{

    padding:25px 28px;

    color:#6c757d;

    line-height:1.8;

}

.accordion-button:focus{

    box-shadow:none;

    border:none;

}

@media(max-width:768px){

    .faq-card .accordion-button{

        padding:18px;

        font-size:1rem;

    }

    .faq-card .accordion-body{

        padding:18px;

    }

}
/*=========================================
Pricing Plans
=========================================*/

.pricing-card{
    background:#fff;
    border-radius:24px;
    padding:40px 30px;
    text-align:center;
    box-shadow:0 18px 45px rgba(0,0,0,.08);
    transition:.35s;
    border:1px solid rgba(0,0,0,.05);
    position:relative;
    height:100%;
}

.pricing-card:hover{
    transform:translateY(-12px);
    box-shadow:0 28px 60px rgba(0,0,0,.12);
}

.pricing-popular{
    border:2px solid #4f46e5;
    transform:scale(1.03);
}

.popular-tag{
    position:absolute;
    top:-14px;
    left:50%;
    transform:translateX(-50%);
    background:linear-gradient(135deg,#4f46e5,#06b6d4);
    color:#fff;
    padding:8px 18px;
    border-radius:999px;
    font-size:.85rem;
    font-weight:700;
}

.price{
    margin:20px 0;
}

.currency{
    font-size:1.6rem;
    vertical-align:top;
}

.amount{
    font-size:3rem;
    font-weight:800;
}

.pricing-features{
    list-style:none;
    padding:0;
    margin:30px 0;
    text-align:left;
}

.pricing-features li{
    padding:10px 0;
    border-bottom:1px solid #f1f3f5;
}

.pricing-features i{
    color:#16a34a;
    margin-right:10px;
}

@media(max-width:992px){
    .pricing-popular{
        transform:none;
    }
}
/*=========================================
Contact & Admission
=========================================*/

.contact-info-card,
.admission-form-card{
    background:#fff;
    border-radius:24px;
    padding:35px;
    box-shadow:0 18px 45px rgba(0,0,0,.08);
    height:100%;
}

.contact-item{
    display:flex;
    gap:18px;
    margin-bottom:25px;
}

.contact-icon{
    width:60px;
    height:60px;
    border-radius:50%;
    background:#eef2ff;
    color:#4f46e5;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:1.3rem;
    flex-shrink:0;
}

.form-control,
.form-select{
    border-radius:14px;
    padding:.85rem 1rem;
}

.form-control:focus,
.form-select:focus{
    border-color:#4f46e5;
    box-shadow:0 0 0 .2rem rgba(79,70,229,.15);
}

.map-card{
    border-radius:24px;
    overflow:hidden;
    box-shadow:0 18px 45px rgba(0,0,0,.08);
}

.map-card iframe{
    width:100%;
    height:450px;
    border:0;
}

@media(max-width:768px){

    .contact-info-card,
    .admission-form-card{
        padding:25px;
    }

    .map-card iframe{
        height:320px;
    }

}
/*=========================================
Footer CTA
=========================================*/

.footer-cta{
    padding:100px 0;
    background:linear-gradient(135deg,#4f46e5 0%,#2563eb 50%,#06b6d4 100%);
    position:relative;
}

.cta-shape{
    position:absolute;
    border-radius:50%;
    opacity:.15;
    background:#fff;
    filter:blur(2px);
}

.cta-shape-1{
    width:320px;
    height:320px;
    top:-120px;
    left:-80px;
}

.cta-shape-2{
    width:260px;
    height:260px;
    right:-60px;
    bottom:-80px;
}

.footer-cta h2{
    line-height:1.2;
}

.footer-cta .btn{
    border-radius:14px;
    padding:16px 24px;
    transition:all .3s ease;
}

.footer-cta .btn:hover{
    transform:translateY(-3px);
}

.cta-feature{
    text-align:center;
    color:#fff;
    padding:20px;
    border-radius:18px;
    background:rgba(255,255,255,.10);
    backdrop-filter:blur(10px);
    border:1px solid rgba(255,255,255,.15);
    transition:all .3s ease;
    height:100%;
}

.cta-feature:hover{
    transform:translateY(-6px);
    background:rgba(255,255,255,.16);
}

.cta-feature i{
    font-size:2rem;
    margin-bottom:12px;
    display:block;
}

.cta-feature h5{
    margin:0;
    font-size:1rem;
    font-weight:600;
}

@media(max-width:991.98px){

    .footer-cta{
        padding:80px 0;
        text-align:center;
    }

    .footer-cta h2{
        font-size:2.4rem;
    }

}

@media(max-width:767.98px){

    .footer-cta{
        padding:60px 0;
    }

    .footer-cta h2{
        font-size:2rem;
    }

    .footer-cta .lead{
        font-size:1rem;
    }

    .cta-feature{
        padding:18px;
    }

    .cta-feature i{
        font-size:1.6rem;
    }

}
/*=========================================
Premium Mega Footer
=========================================*/

.footer-main{
    background:#0f172a;
    padding:90px 0 50px;
    position:relative;
}

.footer-widget{
    height:100%;
}

.footer-logo{
    color:#fff;
    text-decoration:none;
}

.footer-description{
    color:rgba(255,255,255,.72);
    line-height:1.8;
    margin-bottom:0;
}

.footer-title{
    font-size:1.15rem;
    font-weight:700;
    margin-bottom:25px;
    color:#fff;
}

.footer-links{
    list-style:none;
    padding:0;
    margin:0;
}

.footer-links li{
    margin-bottom:12px;
}

.footer-links a{
    color:rgba(255,255,255,.70);
    text-decoration:none;
    transition:.3s;
    position:relative;
}

.footer-links a:hover{
    color:#fff;
    padding-left:8px;
}

.footer-links a::before{
    content:"";
    width:0;
    height:2px;
    background:#4f46e5;
    position:absolute;
    left:0;
    bottom:-2px;
    transition:.3s;
}

.footer-links a:hover::before{
    width:100%;
}

.footer-rating{
    color:#d1d5db;
}

@media(max-width:991px){

    .footer-main{
        padding:70px 0 40px;
    }

}

@media(max-width:768px){

    .footer-title{
        margin-top:10px;
    }

}
/*=========================================
Footer Contact Information
=========================================*/

.footer-contact-section{

    margin-top:60px;

}

.footer-contact-card{

    height:100%;

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

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

    border-radius:22px;

    padding:30px;

    transition:.35s;

    position:relative;

    overflow:hidden;

}

.footer-contact-card:hover{

    transform:translateY(-8px);

    border-color:rgba(99,102,241,.45);

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

    box-shadow:0 18px 40px rgba(0,0,0,.25);

}

.footer-contact-icon{

    width:70px;

    height:70px;

    border-radius:18px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:linear-gradient(
        135deg,
        #4f46e5,
        #2563eb
    );

    color:#fff;

    font-size:1.6rem;

    margin-bottom:24px;

}

.footer-contact-icon.whatsapp{

    background:linear-gradient(
        135deg,
        #25D366,
        #128C7E
    );

}

.footer-contact-label{

    display:block;

    font-size:.82rem;

    text-transform:uppercase;

    letter-spacing:1px;

    color:#94a3b8;

    margin-bottom:8px;

}

.footer-contact-content h6{

    color:#fff;

    font-weight:700;

    margin-bottom:12px;

}

.footer-contact-content p{

    color:rgba(255,255,255,.70);

    line-height:1.8;

    margin-bottom:18px;

}

.footer-contact-link{

    color:#60a5fa;

    text-decoration:none;

    font-weight:600;

    transition:.3s;

}

.footer-contact-link i{

    transition:.3s;

}

.footer-contact-link:hover{

    color:#fff;

}

.footer-contact-link:hover i{

    margin-left:6px;

}

@media(max-width:991px){

    .footer-contact-card{

        padding:25px;

    }

}

@media(max-width:576px){

    .footer-contact-icon{

        width:60px;

        height:60px;

        font-size:1.4rem;

    }

}
/*=========================================
Footer Newsletter
=========================================*/

.footer-newsletter-section{

    margin-top:70px;

}

.newsletter-card{

    background:linear-gradient(
        135deg,
        rgba(79,70,229,.18),
        rgba(37,99,235,.10)
    );

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

    border-radius:28px;

    padding:50px;

    backdrop-filter:blur(18px);

    overflow:hidden;

    position:relative;

}

.newsletter-badge{

    display:inline-flex;

    align-items:center;

    padding:8px 18px;

    border-radius:999px;

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

    color:#93c5fd;

    font-size:.9rem;

    margin-bottom:20px;

}

.newsletter-title{

    color:#fff;

    font-weight:700;

    margin-bottom:18px;

}

.newsletter-description{

    color:rgba(255,255,255,.72);

    line-height:1.8;

}

.newsletter-benefits{

    list-style:none;

    padding:0;

    margin-top:25px;

}

.newsletter-benefits li{

    color:#dbeafe;

    margin-bottom:14px;

}

.newsletter-benefits i{

    color:#22c55e;

    margin-right:10px;

}

.newsletter-input-group{

    position:relative;

}

.newsletter-input-icon{

    position:absolute;

    left:18px;

    top:50%;

    transform:translateY(-50%);

    color:#64748b;

    z-index:2;

}

.newsletter-input{

    height:58px;

    padding-left:52px;

    border-radius:14px;

    border:none;

    box-shadow:none;

}

.newsletter-input:focus{

    box-shadow:0 0 0 .2rem rgba(79,70,229,.20);

}

.newsletter-btn{

    height:58px;

    border-radius:14px;

    background:linear-gradient(
        135deg,
        #4f46e5,
        #2563eb
    );

    color:#fff;

    border:none;

    font-weight:600;

    transition:.3s;

}

.newsletter-btn:hover{

    transform:translateY(-3px);

    box-shadow:0 12px 30px rgba(37,99,235,.35);

}

.newsletter-privacy{

    display:block;

    margin-top:18px;

    color:#94a3b8;

    font-size:.9rem;

}

.newsletter-message{

    margin-top:20px;

    padding:14px 18px;

    border-radius:12px;

    font-weight:500;

}

.success-message{

    background:rgba(34,197,94,.12);

    color:#4ade80;

}

.error-message{

    background:rgba(239,68,68,.12);

    color:#f87171;

}

@media(max-width:991px){

    .newsletter-card{

        padding:35px;

    }

}

@media(max-width:576px){

    .newsletter-card{

        padding:25px;

    }

    .newsletter-title{

        font-size:1.8rem;

    }

}
/*=========================================
Premium Social Media
=========================================*/

.footer-social-section{

    margin-top:70px;

}

.footer-social-badge{

    display:inline-block;

    padding:8px 18px;

    border-radius:999px;

    background:rgba(79,70,229,.18);

    color:#93c5fd;

    font-size:.9rem;

    margin-bottom:18px;

}

.footer-social-title{

    color:#fff;

    font-weight:700;

    margin-bottom:18px;

}

.footer-social-description{

    color:rgba(255,255,255,.70);

    line-height:1.8;

}

.social-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:18px;

}

.social-card{

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

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

    border-radius:20px;

    padding:24px 15px;

    text-align:center;

    text-decoration:none;

    color:#fff;

    transition:.35s;

}

.social-card i{

    display:block;

    font-size:2rem;

    margin-bottom:12px;

}

.social-card span{

    display:block;

    font-size:.95rem;

    font-weight:600;

}

.social-card:hover{

    transform:translateY(-8px);

    color:#fff;

    box-shadow:0 18px 40px rgba(0,0,0,.25);

}

/* Brand Hover Colors */

.facebook:hover{

    background:#1877f2;

}

.instagram:hover{

    background:linear-gradient(
        135deg,
        #f58529,
        #dd2a7b,
        #8134af
    );

}

.linkedin:hover{

    background:#0a66c2;

}

.youtube:hover{

    background:#ff0000;

}

.twitter:hover{

    background:#111827;

}

.github:hover{

    background:#24292f;

}

.discord:hover{

    background:#5865f2;

}

.telegram:hover{

    background:#229ed9;

}

@media(max-width:991px){

    .social-grid{

        grid-template-columns:repeat(2,1fr);

    }

}

@media(max-width:576px){

    .social-grid{

        grid-template-columns:1fr;

    }

    .social-card{

        padding:20px;

    }

}
/*=========================================
Premium App Download
=========================================*/

.footer-app-section{

    margin-top:70px;

}

.app-download-card{

    background:linear-gradient(
        135deg,
        rgba(79,70,229,.12),
        rgba(37,99,235,.08)
    );

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

    border-radius:30px;

    padding:60px;

    backdrop-filter:blur(18px);

}

.app-badge{

    display:inline-block;

    padding:8px 18px;

    border-radius:999px;

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

    color:#93c5fd;

    margin-bottom:20px;

}

.app-title{

    color:#fff;

    font-weight:700;

    margin-bottom:20px;

}

.app-description{

    color:rgba(255,255,255,.72);

    line-height:1.9;

}

.app-feature{

    display:flex;

    align-items:center;

    gap:14px;

    padding:16px 18px;

    border-radius:16px;

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

    color:#fff;

    transition:.3s;

}

.app-feature i{

    color:#60a5fa;

    font-size:1.3rem;

}

.app-feature:hover{

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

    transform:translateY(-4px);

}

.store-buttons{

    display:flex;

    flex-wrap:wrap;

    gap:16px;

}

.store-btn{

    display:flex;

    align-items:center;

    gap:15px;

    text-decoration:none;

    color:#fff;

    background:#111827;

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

    border-radius:16px;

    padding:16px 24px;

    transition:.3s;

}

.store-btn:hover{

    transform:translateY(-4px);

    color:#fff;

    background:#1f2937;

}

.store-btn i{

    font-size:2rem;

}

.store-btn small{

    display:block;

    color:#9ca3af;

    font-size:.65rem;

    letter-spacing:1px;

}

.store-btn strong{

    font-size:1rem;

}

.qr-card{

    position:relative;

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

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

    border-radius:24px;

    padding:35px;

    text-align:center;

}

.coming-soon{

    position:absolute;

    top:18px;

    right:18px;

    background:#4f46e5;

    color:#fff;

    font-size:.75rem;

    padding:6px 12px;

    border-radius:999px;

}

.qr-placeholder{

    width:180px;

    height:180px;

    margin:auto;

    border-radius:20px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:#fff;

    color:#111827;

    font-size:5rem;

}

.qr-card h5{

    color:#fff;

}

.qr-card p{

    color:rgba(255,255,255,.72);

}

@media(max-width:991px){

    .app-download-card{

        padding:40px;

    }

}

@media(max-width:576px){

    .app-download-card{

        padding:25px;

    }

    .store-buttons{

        flex-direction:column;

    }

    .store-btn{

        width:100%;

        justify-content:center;

    }

    .qr-placeholder{

        width:150px;

        height:150px;

        font-size:4rem;

    }

}
/*=========================================
Bottom Footer
=========================================*/

.footer-bottom{

    margin-top:70px;

    padding:28px 0;

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

    background:rgba(0,0,0,.18);

    backdrop-filter:blur(12px);

}

.footer-copyright{

    color:rgba(255,255,255,.72);

    font-size:.95rem;

    line-height:1.8;

}

.footer-copyright strong{

    color:#fff;

}

.footer-bottom-links{

    list-style:none;

    margin:0;

    padding:0;

    display:flex;

    justify-content:flex-end;

    align-items:center;

    flex-wrap:wrap;

    gap:22px;

}

.footer-bottom-links li{

    margin:0;

}

.footer-bottom-links a{

    color:rgba(255,255,255,.70);

    text-decoration:none;

    font-size:.92rem;

    transition:.3s ease;

    position:relative;

}

.footer-bottom-links a::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-5px;

    width:0;

    height:2px;

    background:#60a5fa;

    transition:.3s;

}

.footer-bottom-links a:hover{

    color:#fff;

}

.footer-bottom-links a:hover::after{

    width:100%;

}

@media(max-width:991px){

    .footer-bottom{

        text-align:center;

    }

    .footer-bottom-links{

        justify-content:center;

        margin-top:12px;

        gap:16px;

    }

}

@media(max-width:576px){

    .footer-bottom{

        padding:22px 0;

    }

    .footer-bottom-links{

        flex-direction:column;

        gap:10px;

    }

    .footer-copyright{

        font-size:.88rem;

    }

}
/*=========================================
Floating Action Buttons
=========================================*/

.floating-btn{

    position:fixed;

    right:28px;

    width:58px;

    height:58px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    text-decoration:none;

    border:none;

    cursor:pointer;

    z-index:9999;

    transition:.35s ease;

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

    backdrop-filter:blur(14px);

}

/* Back To Top */

.back-to-top{

    bottom:100px;

    background:linear-gradient(
        135deg,
        #4f46e5,
        #2563eb
    );

    color:#fff;

    opacity:0;

    visibility:hidden;

    transform:translateY(20px);

}

.back-to-top.show{

    opacity:1;

    visibility:visible;

    transform:translateY(0);

}

.back-to-top:hover{

    transform:translateY(-6px);

    color:#fff;

    box-shadow:0 18px 40px rgba(37,99,235,.45);

}

.back-to-top i{

    font-size:1.35rem;

}

/* WhatsApp */

.whatsapp-btn{

    bottom:28px;

    background:#25D366;

    color:#fff;

    animation:whatsappPulse 2.5s infinite;

}

.whatsapp-btn:hover{

    color:#fff;

    transform:translateY(-6px) scale(1.05);

    box-shadow:0 18px 40px rgba(37,211,102,.45);

}

.whatsapp-btn i{

    font-size:1.7rem;

}

/* Pulse Animation */

@keyframes whatsappPulse{

    0%{

        box-shadow:
            0 0 0 0 rgba(37,211,102,.45);

    }

    70%{

        box-shadow:
            0 0 0 18px rgba(37,211,102,0);

    }

    100%{

        box-shadow:
            0 0 0 0 rgba(37,211,102,0);

    }

}

/* Mobile */

@media(max-width:768px){

    .floating-btn{

        width:52px;

        height:52px;

        right:18px;

    }

    .back-to-top{

        bottom:86px;

    }

    .whatsapp-btn{

        bottom:18px;

    }

}
.footer-social .social-icon{
    width:48px;
    height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#f8f9fa;
    color:#333;
    font-size:22px;
    text-decoration:none;
    transition:all .3s ease;
    box-shadow:0 8px 20px rgba(0,0,0,.08);
}

.footer-social .social-icon:hover{
    transform:translateY(-5px);
    color:#fff;
}

.instagram:hover{
    background:#E1306C;
}

.facebook:hover{
    background:#1877F2;
}

.linkedin:hover{
    background:#0A66C2;
}

.youtube:hover{
    background:#FF0000;
}

.twitter:hover{
    background:#000;
}