
/*==========================================
        Testimonials Hero Section
==========================================*/
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

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

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

.testimonial-hero{

    position:relative;

    min-height:100vh;

    width:100%;

    display:flex;

    align-items:center;

    overflow:hidden;

    padding:90px 8%;

    isolation:isolate;

    background:linear-gradient(
    135deg,
    #ffffff 0%,
    #fafdff 30%,
    #edf8ff 65%,
    #ffffff 100%);
}

/*==========================================
        BACKGROUND GRADIENT
==========================================*/

.hero-gradient{

    position:absolute;

    inset:0;

    z-index:-3;

    background:

    radial-gradient(circle at 15% 25%,
    rgba(92,193,255,.18),
    transparent 35%),

    radial-gradient(circle at 90% 20%,
    rgba(110,205,255,.15),
    transparent 30%),

    radial-gradient(circle at 75% 85%,
    rgba(120,215,255,.15),
    transparent 35%),

    linear-gradient(
    140deg,
    #ffffff,
    #f9fdff,
    #edf8ff,
    #ffffff);
}

/*==========================================
        CONTAINER
==========================================*/

.hero-container{

    width:100%;

    max-width:1450px;

    margin:auto;

    display:grid;

    grid-template-columns:1.05fr .95fr;

    align-items:center;

    gap:70px;

    position:relative;

    z-index:5;
}

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

.hero-left{

    position:relative;

    z-index:5;
}

.hero-tag{

    display:inline-flex;

    align-items:center;

    padding:10px 18px;

    border-radius:40px;

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

    color:#2993ff;

    border:1px solid rgba(53,164,255,.18);

    font-size:.9rem;

    font-weight:600;

    letter-spacing:2px;

    text-transform:uppercase;

    margin-bottom:28px;
}

.hero-title{

    font-family:'Cormorant Garamond',serif;

    font-size:5.3rem;

    line-height:1;

    font-weight:600;

    color:#101010;

    margin-bottom:28px;
}

.hero-title span{

    display:block;

    margin-top:8px;

    background:linear-gradient(
    90deg,
    #3b9eff,
    #69c7ff);

    -webkit-background-clip:text;

    -webkit-text-fill-color:transparent;
}

/*==========================================
        DESCRIPTION
==========================================*/

.hero-description{

    max-width:620px;

    font-size:1.15rem;

    line-height:2;

    color:#5b6575;

    margin-bottom:50px;
}

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

.hero-buttons{

    display:flex;

    align-items:center;
}

.hero-btn{

    display:flex;

    align-items:center;

    gap:24px;

    text-decoration:none;

    padding:10px 10px 10px 32px;

    border-radius:70px;

    border:2px solid #53b7ff;

    color:#2898ff;

    font-size:1rem;

    font-weight:600;

    letter-spacing:.5px;

    background:#fff;

    transition:.45s ease;

    box-shadow:

    0 20px 45px rgba(83,183,255,.15);
}

.hero-btn span{

    text-transform:uppercase;
}

.btn-circle{

    width:54px;

    height:54px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    background:linear-gradient(
    135deg,
    #8fd9ff,
    #3da8ff);

    transition:.45s ease;

    box-shadow:

    0 12px 25px rgba(61,168,255,.35);
}

.btn-circle svg{

    width:20px;

    height:20px;

    stroke:#fff;

    transition:.4s;
}

.hero-btn:hover{

    transform:translateY(-5px);

    box-shadow:

    0 30px 55px rgba(61,168,255,.25);
}

.hero-btn:hover .btn-circle{

    transform:rotate(-45deg) scale(1.08);
}

/*==========================================
        RIGHT SIDE
==========================================*/

.hero-right{

    position:relative;

    display:flex;

    justify-content:center;

    align-items:center;

    min-height:760px;
}

.image-showcase{

    position:relative;

    width:650px;

    height:760px;
}
/*==========================================
        HERO IMAGES
==========================================*/

.hero-image{

    position:absolute;

    overflow:hidden;

    border-radius:34px;

    cursor:pointer;

    background:#ffffff;

    border:8px solid rgba(255,255,255,.9);

    transition:
    transform .7s cubic-bezier(.22,.61,.36,1),
    box-shadow .7s ease,
    filter .7s ease,
    opacity .7s ease,
    z-index .2s;

    box-shadow:
    0 30px 70px rgba(18,70,120,.12);

    will-change:transform;
}

.hero-image img{

    width:100%;

    height:100%;

    object-fit:cover;

    display:block;

    transition:
    transform .8s ease,
    filter .8s ease;
}

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

.image-main{

    width:360px;

    height:500px;

    top:80px;

    left:140px;

    z-index:3;

    animation:
    floatMain 6s ease-in-out infinite;
}

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

.image-left{

    width:240px;

    height:310px;

    top:0;

    left:0;

    z-index:2;

    filter:blur(1px);

    opacity:.92;

    animation:
    floatLeft 7s ease-in-out infinite;
}

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

.image-right{

    width:250px;

    height:320px;

    right:0;

    bottom:65px;

    z-index:1;

    filter:blur(1px);

    opacity:.92;

    animation:
    floatRight 7.5s ease-in-out infinite;
}

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

.image-main{

    box-shadow:

    0 40px 80px rgba(65,170,255,.18),

    0 0 70px rgba(125,210,255,.18);
}

.image-left,
.image-right{

    box-shadow:

    0 18px 45px rgba(20,60,120,.12);
}

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

.hero-image:hover{

    z-index:100;

    transform:
    scale(1.12)
    translateY(-12px);

    filter:blur(0);

    opacity:1;

    box-shadow:

    0 55px 120px rgba(45,165,255,.28),

    0 0 80px rgba(125,220,255,.35);
}

.hero-image:hover img{

    transform:scale(1.08);
}

/*==========================================
        NON-HOVERED IMAGES
==========================================*/

.image-showcase:hover .hero-image:not(:hover){

    transform:scale(.90);

    filter:blur(4px);

    opacity:.45;
}

/*==========================================
        GLASS EFFECT
==========================================*/

.hero-image::after{

    content:"";

    position:absolute;

    inset:0;

    background:linear-gradient(

    140deg,

    rgba(255,255,255,.22),

    transparent 40%,

    transparent 60%,

    rgba(255,255,255,.10)

    );

    pointer-events:none;
}

/*==========================================
        IMAGE BORDER GLOW
==========================================*/

.hero-image::before{

    content:"";

    position:absolute;

    inset:-2px;

    border-radius:inherit;

    background:linear-gradient(

    135deg,

    rgba(110,205,255,.5),

    transparent,

    rgba(255,255,255,.4)

    );

    opacity:0;

    transition:.6s;

    z-index:-1;
}

.hero-image:hover::before{

    opacity:1;
}

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

.quote-card{

    position:absolute;

    left:25px;

    bottom:20px;

    width:300px;

    padding:28px;

    border-radius:28px;

    backdrop-filter:blur(22px);

    background:

    rgba(255,255,255,.62);

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

    box-shadow:

    0 20px 60px rgba(50,150,255,.16);

    z-index:5;

    transition:.5s ease;
}

.quote-card:hover{

    transform:translateY(-8px);

    box-shadow:

    0 35px 70px rgba(60,175,255,.22);
}

.quote-icon{

    width:58px;

    height:58px;

    border-radius:18px;

    display:flex;

    justify-content:center;

    align-items:center;

    margin-bottom:18px;

    color:#42abff;

    background:

    rgba(78,182,255,.12);
}

.quote-icon svg{

    width:28px;

    height:28px;
}

.quote-card p{

    color:#4f6174;

    font-size:.97rem;

    line-height:1.9;

    font-weight:500;
}
/*==========================================
        GLITTER PARTICLES
==========================================*/

.hero-glitter{

    position:absolute;

    inset:0;

    overflow:hidden;

    pointer-events:none;

    z-index:-1;
}

.hero-glitter span{

    position:absolute;

    width:5px;

    height:5px;

    border-radius:50%;

    background:rgba(82,190,255,.85);

    box-shadow:
    0 0 12px rgba(82,190,255,.9),
    0 0 25px rgba(82,190,255,.45);

    animation:glitterFloat linear infinite;
}

/* Individual Positions */

.hero-glitter span:nth-child(1){
    top:8%;
    left:10%;
    animation-duration:7s;
}

.hero-glitter span:nth-child(2){
    top:18%;
    left:35%;
    animation-duration:10s;
}

.hero-glitter span:nth-child(3){
    top:32%;
    left:75%;
    animation-duration:8s;
}

.hero-glitter span:nth-child(4){
    top:52%;
    left:15%;
    animation-duration:9s;
}

.hero-glitter span:nth-child(5){
    top:70%;
    left:42%;
    animation-duration:11s;
}

.hero-glitter span:nth-child(6){
    top:82%;
    left:80%;
    animation-duration:7s;
}

.hero-glitter span:nth-child(7){
    top:15%;
    left:88%;
    animation-duration:10s;
}

.hero-glitter span:nth-child(8){
    top:44%;
    left:58%;
    animation-duration:8s;
}

.hero-glitter span:nth-child(9){
    top:62%;
    left:92%;
    animation-duration:12s;
}

.hero-glitter span:nth-child(10){
    top:88%;
    left:22%;
    animation-duration:9s;
}

.hero-glitter span:nth-child(11){
    top:28%;
    left:6%;
    animation-duration:8s;
}

.hero-glitter span:nth-child(12){
    top:92%;
    left:63%;
    animation-duration:10s;
}

/*==========================================
        BLUR GLOW CIRCLES
==========================================*/

.blur-circle{

    position:absolute;

    border-radius:50%;

    filter:blur(90px);

    opacity:.45;

    pointer-events:none;

    animation:glowPulse 8s ease-in-out infinite;
}

.blur-one{

    width:280px;

    height:280px;

    background:#82d5ff;

    top:-40px;

    right:-80px;
}

.blur-two{

    width:220px;

    height:220px;

    background:#6fc7ff;

    bottom:40px;

    left:-40px;

    animation-delay:2s;
}

.blur-three{

    width:170px;

    height:170px;

    background:#cdefff;

    top:45%;

    right:28%;

    animation-delay:4s;
}

/*==========================================
        ORBIT RINGS
==========================================*/

.orbit-ring{

    position:absolute;

    border-radius:50%;

    border:1px solid rgba(90,190,255,.18);

    pointer-events:none;
}

.orbit-ring-one{

    width:520px;

    height:520px;

    top:60px;

    left:70px;

    animation:rotateRing 25s linear infinite;
}

.orbit-ring-two{

    width:390px;

    height:390px;

    top:130px;

    left:135px;

    animation:rotateRingReverse 18s linear infinite;
}

/*==========================================
        SPARKLES
==========================================*/

.sparkle{

    position:absolute;

    width:10px;

    height:10px;

    border-radius:50%;

    background:#ffffff;

    box-shadow:
    0 0 12px #7fd6ff,
    0 0 28px #7fd6ff;

    animation:sparkleBlink 2.8s ease-in-out infinite;
}

.sparkle-1{

    top:12%;
    left:72%;
}

.sparkle-2{

    top:30%;
    right:12%;

    animation-delay:.5s;
}

.sparkle-3{

    bottom:20%;
    right:22%;

    animation-delay:1.2s;
}

.sparkle-4{

    bottom:12%;
    left:38%;

    animation-delay:.8s;
}

.sparkle-5{

    top:55%;
    left:8%;

    animation-delay:1.8s;
}

.sparkle-6{

    top:78%;
    right:42%;

    animation-delay:2.2s;
}

/*==========================================
        DECORATIVE LINES
==========================================*/

.hero-lines{

    position:absolute;

    inset:0;

    pointer-events:none;
}

.hero-lines span{

    position:absolute;

    background:linear-gradient(
    90deg,
    transparent,
    rgba(120,210,255,.6),
    transparent);

    border-radius:50px;
}

.hero-lines span:nth-child(1){

    width:160px;

    height:2px;

    top:18%;

    right:0;

    transform:rotate(18deg);
}

.hero-lines span:nth-child(2){

    width:120px;

    height:2px;

    bottom:12%;

    left:10%;

    transform:rotate(-22deg);
}

.hero-lines span:nth-child(3){

    width:90px;

    height:2px;

    top:62%;

    right:6%;

    transform:rotate(-45deg);
}

/*==========================================
        SECTION BOTTOM GLOW
==========================================*/

.section-bottom-glow{

    position:absolute;

    left:50%;

    bottom:-160px;

    transform:translateX(-50%);

    width:900px;

    height:320px;

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

    filter:blur(70px);

    pointer-events:none;

    z-index:-2;
}
/*==========================================
            IMAGE FLOATING
==========================================*/

@keyframes floatMain{

    0%{

        transform:translateY(0px);
    }

    25%{

        transform:translateY(-10px);
    }

    50%{

        transform:translateY(-20px);
    }

    75%{

        transform:translateY(-10px);
    }

    100%{

        transform:translateY(0px);
    }
}

@keyframes floatLeft{

    0%{

        transform:translateY(0px) rotate(-6deg);
    }

    50%{

        transform:translateY(-18px) rotate(-4deg);
    }

    100%{

        transform:translateY(0px) rotate(-6deg);
    }
}

@keyframes floatRight{

    0%{

        transform:translateY(0px) rotate(7deg);
    }

    50%{

        transform:translateY(-16px) rotate(5deg);
    }

    100%{

        transform:translateY(0px) rotate(7deg);
    }
}

/*==========================================
            GLITTER FLOAT
==========================================*/

@keyframes glitterFloat{

    0%{

        transform:
        translateY(25px)
        scale(.5);

        opacity:0;
    }

    20%{

        opacity:1;
    }

    50%{

        transform:
        translateY(-40px)
        scale(1);
    }

    80%{

        opacity:.9;
    }

    100%{

        transform:
        translateY(-90px)
        scale(.3);

        opacity:0;
    }
}

/*==========================================
            GLOW PULSE
==========================================*/

@keyframes glowPulse{

    0%{

        transform:scale(1);

        opacity:.25;
    }

    50%{

        transform:scale(1.18);

        opacity:.55;
    }

    100%{

        transform:scale(1);

        opacity:.25;
    }
}

/*==========================================
            ORBIT ROTATION
==========================================*/

@keyframes rotateRing{

    from{

        transform:rotate(0deg);
    }

    to{

        transform:rotate(360deg);
    }
}

@keyframes rotateRingReverse{

    from{

        transform:rotate(360deg);
    }

    to{

        transform:rotate(0deg);
    }
}

/*==========================================
            SPARKLE
==========================================*/

@keyframes sparkleBlink{

    0%{

        transform:scale(.3);

        opacity:.2;
    }

    50%{

        transform:scale(1.5);

        opacity:1;
    }

    100%{

        transform:scale(.3);

        opacity:.2;
    }
}

/*==========================================
            HERO FADE UP
==========================================*/

@keyframes fadeUp{

    from{

        opacity:0;

        transform:
        translateY(70px);
    }

    to{

        opacity:1;

        transform:
        translateY(0);
    }
}

.hero-tag{

    animation:
    fadeUp .7s ease forwards;
}

.hero-title{

    opacity:0;

    animation:
    fadeUp .9s .2s forwards;
}

.hero-description{

    opacity:0;

    animation:
    fadeUp .9s .45s forwards;
}

.hero-buttons{

    opacity:0;

    animation:
    fadeUp .9s .7s forwards;
}

.hero-right{

    opacity:0;

    animation:
    fadeUp 1s .5s forwards;
}

/*==========================================
        QUOTE CARD FLOAT
==========================================*/

.quote-card{

    animation:

    quoteFloat 6s ease-in-out infinite;
}

@keyframes quoteFloat{

    0%{

        transform:translateY(0px);
    }

    50%{

        transform:translateY(-10px);
    }

    100%{

        transform:translateY(0px);
    }
}

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

.hero-btn{

    animation:

    buttonGlow 3s ease-in-out infinite;
}

@keyframes buttonGlow{

    0%{

        box-shadow:
        0 18px 35px rgba(76,180,255,.18);
    }

    50%{

        box-shadow:
        0 25px 60px rgba(76,180,255,.35);
    }

    100%{

        box-shadow:
        0 18px 35px rgba(76,180,255,.18);
    }
}
/*==========================================
        PERFORMANCE OPTIMIZATION
==========================================*/

.hero-image,
.quote-card,
.sparkle,
.blur-circle,
.orbit-ring,
.hero-btn,
.hero-glitter span{

    will-change:transform, opacity;

    backface-visibility:hidden;

    transform-style:preserve-3d;
}

/* Smooth Rendering */

.hero-image img{

    image-rendering:auto;

    -webkit-user-drag:none;

    user-select:none;
}

/*==========================================
        HOVER ENHANCEMENTS
==========================================*/

.hero-image{

    transition:

    transform .75s cubic-bezier(.22,.61,.36,1),

    box-shadow .75s ease,

    filter .75s ease,

    opacity .75s ease;
}

.hero-image:hover{

    transition-duration:.55s;
}

.quote-card{

    transition:

    transform .45s ease,

    box-shadow .45s ease,

    background .45s ease;
}

.quote-card:hover{

    background:

    rgba(255,255,255,.78);
}

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

::-webkit-scrollbar{

    width:10px;
}

::-webkit-scrollbar-track{

    background:#eef8ff;
}

::-webkit-scrollbar-thumb{

    background:

    linear-gradient(

    #7fd4ff,

    #39a8ff);

    border-radius:50px;
}

::-webkit-scrollbar-thumb:hover{

    background:

    linear-gradient(

    #52c5ff,

    #1e8fff);
}

/*==========================================
        LARGE DESKTOP
==========================================*/

@media(max-width:1500px){

.hero-container{

    gap:50px;
}

.hero-title{

    font-size:4.8rem;
}

.image-showcase{

    transform:scale(.92);
}

}

/*==========================================
        LAPTOP
==========================================*/

@media(max-width:1200px){

.hero-container{

    grid-template-columns:1fr;

    gap:80px;

    text-align:center;
}

.hero-left{

    display:flex;

    flex-direction:column;

    align-items:center;
}

.hero-description{

    max-width:700px;
}

.hero-right{

    min-height:700px;
}

.image-showcase{

    transform:scale(.88);
}

}

/*==========================================
        TABLET
==========================================*/

@media(max-width:992px){

.testimonial-hero{

    padding:90px 25px;
}

.hero-title{

    font-size:3.9rem;
}

.hero-description{

    font-size:1rem;

    line-height:1.8;
}

.hero-right{

    min-height:620px;
}

.image-showcase{

    width:560px;

    height:620px;

    transform:scale(.82);
}

.quote-card{

    width:270px;
}

}

/*==========================================
        MOBILE
==========================================*/

@media(max-width:768px){

.testimonial-hero{

    padding:80px 20px;
}

.hero-title{

    font-size:3rem;
}

.hero-tag{

    font-size:.75rem;
}

.hero-description{

    font-size:.95rem;
}

.hero-btn{

    padding:8px 8px 8px 22px;

    font-size:.9rem;
}

.btn-circle{

    width:48px;

    height:48px;
}

.hero-right{

    min-height:480px;
}

.image-showcase{

    width:360px;

    height:430px;

    transform:scale(.72);
}

.quote-card{

    display:none;
}

.orbit-ring{

    display:none;
}

.blur-circle{

    opacity:.22;
}

}

/*==========================================
        SMALL MOBILE
==========================================*/

@media(max-width:480px){

.hero-title{

    font-size:2.4rem;
}

.hero-description{

    font-size:.9rem;
}

.image-showcase{

    width:310px;

    height:370px;

    transform:scale(.63);
}

.hero-btn{

    gap:16px;
}

.hero-glitter{

    display:none;
}

.sparkle{

    display:none;
}

.hero-lines{

    display:none;
}

}

/*==========================================
        REDUCED MOTION
==========================================*/

@media(prefers-reduced-motion:reduce){

*,
*::before,
*::after{

    animation:none !important;

    transition:none !important;

    scroll-behavior:auto !important;
}

}























/*==========================================
        REVIEWS SECTION
==========================================*/

.reviews-section{

    position:relative;

    overflow:hidden;

    padding:120px 0;

    background:linear-gradient(
    180deg,
    #ffffff 0%,
    #f7fcff 30%,
    #eef8ff 70%,
    #ffffff 100%);
}

/*==========================================
        BACKGROUND GLOW
==========================================*/

.reviews-bg-glow{

    position:absolute;

    width:900px;

    height:900px;

    left:50%;

    top:50%;

    transform:translate(-50%,-50%);

    border-radius:50%;

    background:radial-gradient(circle,
    rgba(97,196,255,.15),
    transparent 70%);

    filter:blur(80px);

    pointer-events:none;
}

/*==========================================
        CONTAINER
==========================================*/

.reviews-container{

    width:92%;

    max-width:1500px;

    margin:auto;

    position:relative;

    z-index:2;
}

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

.reviews-header{

    text-align:center;

    max-width:800px;

    margin:0 auto 80px;
}

.reviews-tag{

    display:inline-flex;

    padding:10px 22px;

    border-radius:50px;

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

    border:1px solid rgba(80,185,255,.18);

    color:#2f9eff;

    font-size:.85rem;

    font-weight:600;

    letter-spacing:2px;

    text-transform:uppercase;

    margin-bottom:25px;
}

.reviews-title{

    font-family:'Cormorant Garamond',serif;

    font-size:4.2rem;

    font-weight:700;

    color:#101010;

    line-height:1.1;

    margin-bottom:25px;
}

.reviews-title span{

    background:linear-gradient(
    90deg,
    #2fa4ff,
    #7bd7ff);

    -webkit-background-clip:text;

    -webkit-text-fill-color:transparent;
}

.reviews-subtitle{

    font-size:1.08rem;

    line-height:2;

    color:#5d6674;
}

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

.reviews-slider{

    position:relative;

    overflow:hidden;

    width:100%;

    padding:35px 0;
}

.reviews-track{

    display:flex;

    align-items:stretch;

    gap:35px;

    width:max-content;
}

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

.review-card{

    position:relative;

    width:340px;

    min-width:340px;

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

    backdrop-filter:blur(20px);

    border-radius:30px;

    padding:85px 30px 35px;

    text-align:center;

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

    overflow:hidden;

    transition:.45s ease;

    box-shadow:

    0 18px 45px rgba(60,160,255,.10);
}

/*==========================================
        CARD TOP BORDER
==========================================*/

.review-card::before{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:100%;

    height:5px;

    background:linear-gradient(
    90deg,
    #3caeff,
    #8adfff);
}

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

.review-image{

    position:absolute;

    left:50%;

    top:-52px;

    transform:translateX(-50%);

    width:105px;

    height:105px;

    border-radius:50%;

    padding:6px;

    background:linear-gradient(
    135deg,
    #33a7ff,
    #8fe0ff);

    box-shadow:

    0 20px 40px rgba(65,180,255,.25);
}

.review-image img{

    width:100%;

    height:100%;

    border-radius:50%;

    object-fit:cover;

    border:4px solid #fff;

    transition:.45s;
}

/*==========================================
        STARS
==========================================*/

.review-stars{

    margin-top:10px;

    color:#FDBA12;

    font-size:1.3rem;

    letter-spacing:3px;

    margin-bottom:22px;
}

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

.review-text{

    color:#5d6675;

    font-size:.98rem;

    line-height:1.9;

    min-height:145px;

    margin-bottom:30px;
}

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

.review-user h4{

    font-size:1.18rem;

    color:#111;

    margin-bottom:8px;

    font-weight:600;
}

.review-user span{

    color:#36a5ff;

    font-size:.95rem;

    font-weight:500;
}
/*==========================================
        INFINITE MARQUEE
==========================================*/

.reviews-track{

    animation:reviewsMarquee 38s linear infinite;
}

.reviews-slider:hover .reviews-track{

    animation-play-state:paused;
}

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

.review-card{

    cursor:pointer;

    transition:

    transform .45s ease,

    box-shadow .45s ease,

    background .45s ease,

    border-color .45s ease;
}

.review-card:hover{

    transform:

    translateY(-18px)

    scale(1.03);

    background:

    rgba(255,255,255,.96);

    border-color:

    rgba(75,190,255,.35);

    box-shadow:

    0 30px 70px rgba(55,170,255,.22),

    0 0 35px rgba(130,220,255,.22);
}

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

.review-image{

    transition:

    transform .45s ease,

    box-shadow .45s ease;
}

.review-card:hover .review-image{

    transform:

    translateX(-50%)

    scale(1.12);

    box-shadow:

    0 25px 50px rgba(65,185,255,.35);
}

.review-card:hover .review-image img{

    transform:scale(1.08);
}

/*==========================================
        QUOTE EFFECT
==========================================*/

.review-card::after{

    content:"❝";

    position:absolute;

    top:22px;

    right:24px;

    font-size:4rem;

    font-family:serif;

    color:rgba(60,175,255,.10);

    transition:.45s ease;
}

.review-card:hover::after{

    transform:

    rotate(-12deg)

    scale(1.15);

    color:rgba(60,175,255,.22);
}

/*==========================================
        GLASS SHINE
==========================================*/

.review-card .shine{

    display:none;
}

.review-card::before{

    overflow:hidden;
}

.review-card::selection{

    background:#7fd8ff;

    color:#fff;
}

.review-card:hover{

    overflow:hidden;
}

.review-card:hover::before{

    animation:cardGlow 1.2s linear;
}

/*==========================================
        STARS
==========================================*/

.review-stars{

    transition:.4s ease;
}

.review-card:hover .review-stars{

    transform:scale(1.08);

    letter-spacing:5px;

    text-shadow:

    0 0 12px rgba(255,196,0,.45);
}

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

.review-text{

    transition:.45s ease;
}

.review-card:hover .review-text{

    color:#404d60;
}

/*==========================================
        USER NAME
==========================================*/

.review-user h4{

    transition:.35s ease;
}

.review-user span{

    transition:.35s ease;
}

.review-card:hover .review-user h4{

    color:#2096ff;
}

.review-card:hover .review-user span{

    letter-spacing:1px;
}

/*==========================================
        FLOATING EFFECT
==========================================*/

.review-card:nth-child(odd){

    animation:

    cardFloatOne 5s ease-in-out infinite;
}

.review-card:nth-child(even){

    animation:

    cardFloatTwo 6s ease-in-out infinite;
}

/* Pause floating on hover */

.reviews-slider:hover .review-card{

    animation-play-state:paused;
}

/*==========================================
        EDGE FADE
==========================================*/

.reviews-slider::before,

.reviews-slider::after{

    content:"";

    position:absolute;

    top:0;

    width:160px;

    height:100%;

    z-index:5;

    pointer-events:none;
}

.reviews-slider::before{

    left:0;

    background:linear-gradient(

    to right,

    #ffffff,

    rgba(255,255,255,0));
}

.reviews-slider::after{

    right:0;

    background:linear-gradient(

    to left,

    #ffffff,

    rgba(255,255,255,0));
}
/*==========================================
            MARQUEE ANIMATION
==========================================*/

@keyframes reviewsMarquee{

    0%{

        transform:translateX(0);

    }

    100%{

        transform:translateX(calc(-375px * 5));

    }

}

/*==========================================
            FLOATING CARDS
==========================================*/

@keyframes cardFloatOne{

    0%{

        transform:translateY(0px);

    }

    50%{

        transform:translateY(-12px);

    }

    100%{

        transform:translateY(0px);

    }

}

@keyframes cardFloatTwo{

    0%{

        transform:translateY(-8px);

    }

    50%{

        transform:translateY(8px);

    }

    100%{

        transform:translateY(-8px);

    }

}

/*==========================================
            TOP BORDER GLOW
==========================================*/

@keyframes cardGlow{

    0%{

        opacity:.4;

        filter:brightness(1);

    }

    50%{

        opacity:1;

        filter:brightness(1.4);

    }

    100%{

        opacity:.4;

        filter:brightness(1);

    }

}

/*==========================================
            SECTION ENTRANCE
==========================================*/

@keyframes reviewFadeUp{

    from{

        opacity:0;

        transform:translateY(80px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

.reviews-header{

    animation:reviewFadeUp .9s ease forwards;

}

.reviews-slider{

    animation:reviewFadeUp 1.1s .2s both;

}

/*==========================================
            PERFORMANCE
==========================================*/

.review-card,
.review-image,
.review-image img,
.reviews-track{

    will-change:transform;

    backface-visibility:hidden;

    transform-style:preserve-3d;

}

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

@media(max-width:1200px){

    .review-card{

        width:310px;

        min-width:310px;

    }

    .reviews-title{

        font-size:3.6rem;

    }

}

@media(max-width:992px){

    .reviews-section{

        padding:90px 0;

    }

    .reviews-title{

        font-size:3rem;

    }

    .reviews-subtitle{

        font-size:1rem;

        padding:0 20px;

    }

    .review-card{

        width:290px;

        min-width:290px;

    }

}

@media(max-width:768px){

    .reviews-title{

        font-size:2.5rem;

    }

    .review-card{

        width:260px;

        min-width:260px;

        padding:75px 22px 30px;

    }

    .review-image{

        width:90px;

        height:90px;

    }

    .review-text{

        min-height:auto;

        font-size:.92rem;

    }

    .reviews-track{

        gap:22px;

        animation-duration:30s;

    }

}

@media(max-width:480px){

    .reviews-section{

        padding:70px 0;

    }

    .reviews-title{

        font-size:2rem;

    }

    .reviews-tag{

        font-size:.75rem;

    }

    .review-card{

        width:240px;

        min-width:240px;

    }

    .reviews-track{

        animation-duration:24s;

    }

}

/*==========================================
        REDUCED MOTION
==========================================*/

@media(prefers-reduced-motion:reduce){

    .reviews-track,

    .review-card{

        animation:none !important;

    }

}

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

.reviews-section ::-webkit-scrollbar{

    height:8px;

}

.reviews-section ::-webkit-scrollbar-thumb{

    background:#56bfff;

    border-radius:20px;

}
































/*======================================================
        VIDEO TESTIMONIAL SECTION
======================================================*/

.video-testimonials{
    position:relative;
    width:100%;
    padding:120px 7%;
    overflow:hidden;

    background:
    linear-gradient(135deg,
    #ffffff 0%,
    #f8fdff 18%,
    #eaf9ff 40%,
    #d8f3ff 65%,
    #ffffff 100%);
}

/*---------------- Background ----------------*/

.video-bg{
    position:absolute;
    inset:0;
    overflow:hidden;
    pointer-events:none;
}

.bg-circle{
    position:absolute;
    border-radius:50%;
    filter:blur(80px);
    opacity:.45;
    animation:floatBlob 12s ease-in-out infinite;
}

.circle1{
    width:340px;
    height:340px;
    background:#66d8ff;

    top:-120px;
    left:-80px;
}

.circle2{
    width:260px;
    height:260px;
    background:#8be7ff;

    top:45%;
    right:-90px;

    animation-delay:2s;
}

.circle3{
    width:220px;
    height:220px;
    background:#b7efff;

    bottom:-70px;
    left:22%;

    animation-delay:4s;
}

.circle4{
    width:180px;
    height:180px;
    background:#6fdcff;

    top:18%;
    left:55%;

    animation-delay:6s;
}

@keyframes floatBlob{

    0%{
        transform:translateY(0px) scale(1);
    }

    50%{
        transform:translateY(-35px) scale(1.12);
    }

    100%{
        transform:translateY(0px) scale(1);
    }

}

/*---------------- Container ----------------*/

.video-container{
    position:relative;
    max-width:1400px;
    margin:auto;
    z-index:2;
}

/*---------------- Heading ----------------*/

.video-heading{
    text-align:center;
    margin-bottom:80px;
}

.video-subtitle{

    display:inline-block;

    padding:10px 24px;

    border-radius:50px;

    background:#dff7ff;

    color:#0096c7;

    font-size:.95rem;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

    margin-bottom:22px;

    box-shadow:
    0 10px 35px rgba(0,180,255,.12);

}

.video-heading h2{

    font-size:3.2rem;

    font-weight:800;

    color:#111;

    line-height:1.15;

    margin-bottom:18px;

}

.video-heading h2 span{

    color:#09b7ff;

    position:relative;

}

.video-heading h2 span::after{

    content:"";

    position:absolute;

    left:0;
    bottom:-8px;

    width:100%;
    height:4px;

    border-radius:20px;

    background:linear-gradient(
    90deg,
    #5edcff,
    #09b7ff);

}

.video-heading p{

    max-width:760px;

    margin:auto;

    color:#555;

    line-height:1.9;

    font-size:1.08rem;

}

/*---------------- Grid ----------------*/

.video-grid{

    display:grid;

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

    gap:45px;

    align-items:start;

}

/*---------------- Responsive ----------------*/

@media(max-width:991px){

.video-grid{

grid-template-columns:1fr;

gap:35px;

}

.video-heading h2{

font-size:2.5rem;

}

}

@media(max-width:600px){

.video-testimonials{

padding:90px 22px;

}

.video-heading h2{

font-size:2rem;

}

.video-heading p{

font-size:15px;

}

}
/*======================================================
        VIDEO TESTIMONIAL SECTION : PART 2
        Premium Video Cards
======================================================*/

.video-card{

    position:relative;

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

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

    border-radius:30px;

    padding:22px;

    overflow:hidden;

    border:1px solid rgba(120,220,255,.35);

    box-shadow:
    0 15px 45px rgba(0,0,0,.08),
    0 0 0 1px rgba(255,255,255,.5) inset;

    transition:
    transform .45s ease,
    box-shadow .45s ease,
    border-color .45s ease;

}

/* Premium Animated Border */

.video-card::before{

    content:"";

    position:absolute;

    inset:-2px;

    border-radius:32px;

    padding:2px;

    background:linear-gradient(
    130deg,
    #67dcff,
    #ffffff,
    #33c7ff,
    #ffffff,
    #7be5ff);

    background-size:300% 300%;

    animation:borderMove 8s linear infinite;

    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);

    -webkit-mask-composite:xor;
            mask-composite:exclude;

    pointer-events:none;

}

/* Glow Effect */

.video-card::after{

    content:"";

    position:absolute;

    width:180px;
    height:180px;

    border-radius:50%;

    background:rgba(77,215,255,.20);

    filter:blur(70px);

    top:-80px;
    right:-70px;

    opacity:0;

    transition:.45s;

}

.video-card:hover{

    transform:
    translateY(-14px)
    scale(1.015);

    border-color:#54d6ff;

    box-shadow:
    0 25px 65px rgba(0,170,255,.22),
    0 12px 30px rgba(0,0,0,.10);

}

.video-card:hover::after{

    opacity:1;

}

@keyframes borderMove{

0%{
background-position:0% 50%;
}

50%{
background-position:100% 50%;
}

100%{
background-position:0% 50%;
}

}

/*=========================
      Top Area
=========================*/

.video-card-top{

    display:flex;

    justify-content:flex-end;

    margin-bottom:18px;

}

.video-badge{

    padding:9px 20px;

    border-radius:40px;

    background:linear-gradient(
    135deg,
    #38cfff,
    #82e6ff);

    color:#fff;

    font-size:.84rem;

    font-weight:700;

    letter-spacing:1px;

    text-transform:uppercase;

    box-shadow:
    0 8px 18px rgba(0,170,255,.22);

}

/*=========================
      Video Frame
=========================*/

.video-frame{

    position:relative;

    overflow:hidden;

    border-radius:22px;

    background:#000;

    aspect-ratio:16/9;

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

}

/* Shine Overlay */

.video-frame::before{

    content:"";

    position:absolute;

    top:0;

    left:-120%;

    width:60%;

    height:100%;

    background:linear-gradient(
    90deg,
    transparent,
    rgba(255,255,255,.25),
    transparent);

    transform:skewX(-25deg);

    transition:1s;

    z-index:2;

    pointer-events:none;

}

.video-card:hover .video-frame::before{

    left:170%;

}

.video-frame iframe{

    width:100%;

    height:100%;

    border:none;

    display:block;

    border-radius:22px;

    transition:
    transform .45s ease,
    filter .45s ease;

}

.video-card:hover iframe{

    transform:scale(1.03);

    filter:saturate(1.08);

}
/*======================================================
        VIDEO TESTIMONIAL SECTION : PART 3
        Final Premium Effects
======================================================*/

/*=========================
        Video Info
=========================*/

.video-info{

    text-align:center;

    padding:25px 15px 10px;

}

.video-info h3{

    font-size:1.45rem;

    font-weight:700;

    color:#111;

    margin-bottom:8px;

    transition:.35s;

}

.video-info p{

    color:#555;

    font-size:0.96rem;

    letter-spacing:.5px;

    font-weight:500;

}

.video-card:hover .video-info h3{

    color:#00AEEF;

}

/*=========================
     Floating Glow Effect
=========================*/

.video-card .glow-dot{

    position:absolute;

    width:12px;
    height:12px;

    border-radius:50%;

    background:#66D9FF;

    filter:blur(2px);

    opacity:.7;

    animation:glowFloat 5s linear infinite;

}

@keyframes glowFloat{

    0%{

        transform:
        translateY(0)
        scale(.8);

        opacity:0;

    }

    20%{

        opacity:.8;

    }

    50%{

        transform:
        translateY(-35px)
        scale(1.2);

    }

    100%{

        transform:
        translateY(-70px)
        scale(.5);

        opacity:0;

    }

}

/*=========================
      Scroll Reveal
=========================*/

.reveal{

    opacity:0;

    transform:
    translateY(70px);

    transition:

    opacity .9s ease,

    transform .9s ease;

}

.reveal.active{

    opacity:1;

    transform:translateY(0);

}

/* Animation Delays */

.delay1{

    transition-delay:.15s;

}

.delay2{

    transition-delay:.3s;

}

.delay3{

    transition-delay:.45s;

}

/*=========================
    Bottom Decoration
=========================*/

.video-bottom-decoration{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:16px;

    margin-top:70px;

}

.video-bottom-decoration span{

    width:70px;

    height:6px;

    border-radius:50px;

    background:linear-gradient(
    90deg,
    #6CDFFF,
    #00B7FF);

    animation:pulseBar 2.4s infinite;

}

.video-bottom-decoration span:nth-child(2){

    width:120px;

    animation-delay:.25s;

}

.video-bottom-decoration span:nth-child(3){

    animation-delay:.5s;

}

@keyframes pulseBar{

    0%,100%{

        transform:scaleX(.75);

        opacity:.5;

    }

    50%{

        transform:scaleX(1.15);

        opacity:1;

    }

}

/*=========================
     Card Hover Shadow
=========================*/

.video-card:hover{

    cursor:pointer;

}

.video-card:hover .video-badge{

    transform:translateY(-2px);

    transition:.3s;

    box-shadow:

    0 10px 28px rgba(0,180,255,.35);

}

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

@media(max-width:991px){

.video-card{

padding:18px;

}

.video-info h3{

font-size:1.25rem;

}

}

@media(max-width:768px){

.video-bottom-decoration{

margin-top:50px;

}

.video-bottom-decoration span{

width:45px;

}

.video-bottom-decoration span:nth-child(2){

width:80px;

}

}

@media(max-width:480px){

.video-card{

border-radius:22px;

}

.video-frame{

border-radius:18px;

}

.video-frame iframe{

border-radius:18px;

}

.video-info{

padding-top:20px;

}

.video-info h3{

font-size:1.1rem;

}

.video-info p{

font-size:.88rem;

}

}










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

.footer{
    font-family: 'Poppins', sans-serif;
    position: relative;
    background: linear-gradient(180deg, #1F2937 0%, #111827 55%, #0B1220 100%);
    color: var(--text);
    overflow: hidden;
    padding-top: 80px;
    border-top: 1px solid rgba(37,167,222,0.15);
}

/* Subtle background glow */

.footer::before{
    content: "";
    position: absolute;
    top: -140px;
    left: -120px;
    width: 380px;
    height: 380px;
    background: radial-gradient(circle, rgba(37,167,222,0.18) 0%, rgba(37,167,222,0) 70%);
    pointer-events: none;
}

.footer::after{
    content: "";
    position: absolute;
    right: -140px;
    bottom: -160px;
    width: 420px;
    height: 420px;
    background: radial-gradient(circle, rgba(37,167,222,0.12) 0%, rgba(37,167,222,0) 72%);
    pointer-events: none;
}

/* ================= CONTAINER ================= */

.footer-container{
    width: 90%;
    max-width: 1280px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1.25fr 0.9fr 0.9fr 1fr;
    gap: 48px;
    position: relative;
    z-index: 2;
}

/* ================= BRAND ================= */

.footer-brand{
    padding-right: 10px;
}

.footer-logo{
    display: inline-flex;
    align-items: center;
    margin-bottom: 22px;
    text-decoration: none;
}

.footer-logo img{
    height: 62px;
    width: auto;
    filter: drop-shadow(0 6px 18px rgba(37,167,222,0.18));
    transition: transform 0.35s ease, filter 0.35s ease;
}

.footer-logo:hover img{
    transform: translateY(-2px) scale(1.03);
    filter: drop-shadow(0 10px 26px rgba(37,167,222,0.32));
}

.footer-brand p{
    color: #C7CED8;
    font-size: 15px;
    line-height: 1.9;
    max-width: 380px;
    letter-spacing: 0.2px;
}

/* ================= COLUMNS ================= */

.footer-column h3{
    position: relative;
    color: var(--cream);
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 22px;
    letter-spacing: 0.4px;
}

.footer-column h3::after{
    content: "";
    position: absolute;
    left: 0;
    bottom: -10px;
    width: 54px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--sky), rgba(37,167,222,0.18));
    box-shadow: 0 0 14px rgba(37,167,222,0.28);
}

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

.footer-column li{
    margin-bottom: 14px;
}

.footer-column a{
    position: relative;
    color: #C7CED8;
    text-decoration: none;
    font-size: 15px;
    transition: color 0.28s ease, transform 0.28s ease;
}

/* underline animation base */

.footer-column a::after{
    content: "";
    position: absolute;
    left: 0;
    bottom: -4px;
    width: 0;
    height: 1.5px;
    background: var(--sky);
    transition: width 0.3s ease;
}

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

.footer-contact .contact-item{
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 16px;
}

.footer-contact .contact-item i{
    color: var(--sky);
    font-size: 16px;
    margin-top: 3px;
    width: 18px;
}

.footer-contact .contact-item span{
    color: #C7CED8;
    font-size: 15px;
    line-height: 1.7;
}

/* ================= QUICK LINKS HOVER ================= */

.footer-column a:hover{
    color: var(--cream);
    transform: translateX(6px);
    text-shadow: 0 0 12px rgba(37,167,222,0.22);
}

.footer-column a:hover::after{
    width: 100%;
}

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

.footer-social{
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 28px;
}

.footer-social a{
    position: relative;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(248,245,239,0.08);
    border: 1px solid rgba(37,167,222,0.16);
    color: var(--cream);
    text-decoration: none;
    overflow: hidden;
    transition:
        transform 0.45s ease,
        box-shadow 0.45s ease,
        background 0.45s ease,
        border-color 0.45s ease;
}

/* Soft glow ring */

.footer-social a::before{
    content: "";
    position: absolute;
    inset: -2px;
    border-radius: 50%;
    background: conic-gradient(
        from 0deg,
        rgba(37,167,222,0.0),
        rgba(37,167,222,0.55),
        rgba(37,167,222,0.0)
    );
    animation: ringRotate 8s linear infinite;
    opacity: 0.9;
}

/* Inner circle */

.footer-social a::after{
    content: "";
    position: absolute;
    inset: 2px;
    border-radius: 50%;
    background: #111827;
}

/* Icon */

.footer-social a i{
    position: relative;
    z-index: 2;
    font-size: 18px;
    animation: iconRotate 14s linear infinite;
    transition: transform 0.45s ease, color 0.45s ease;
}

/* Hover */

.footer-social a:hover{
    transform: translateY(-6px) scale(1.08);
    background: rgba(37,167,222,0.18);
    border-color: rgba(37,167,222,0.5);
    box-shadow:
        0 0 16px rgba(37,167,222,0.32),
        0 12px 28px rgba(0,0,0,0.28);
}

.footer-social a:hover i{
    color: #ffffff;
    transform: rotateY(180deg) scale(1.12);
}

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

@keyframes ringRotate{
    from{ transform: rotate(0deg); }
    to{ transform: rotate(360deg); }
}

@keyframes iconRotate{
    from{ transform: rotate(0deg); }
    to{ transform: rotate(360deg); }
}

/* ================= BOTTOM BAR ================= */

.footer-bottom{
    width: 90%;
    max-width: 1280px;
    margin: 54px auto 0;
    padding: 22px 0 28px;
    border-top: 1px solid rgba(255,255,255,0.08);

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;

    position: relative;
    z-index: 2;
}

.footer-bottom p{
    color: var(--muted);
    font-size: 14px;
    letter-spacing: 0.2px;
}

.footer-bottom-links{
    display: flex;
    align-items: center;
    gap: 26px;
}

.footer-bottom-links a{
    position: relative;
    color: var(--muted);
    text-decoration: none;
    font-size: 14px;
    transition: color 0.28s ease;
}

.footer-bottom-links a::after{
    content: "";
    position: absolute;
    left: 0;
    bottom: -4px;
    width: 0;
    height: 1.5px;
    background: var(--sky);
    transition: width 0.28s ease;
}

.footer-bottom-links a:hover{
    color: var(--cream);
}

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

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

@media (max-width: 1024px){

    .footer-container{
        grid-template-columns: repeat(2, 1fr);
        gap: 40px;
    }

    .footer-brand{
        padding-right: 0;
    }

    .footer-bottom{
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 640px){

    .footer{
        padding-top: 64px;
    }

    .footer-container{
        grid-template-columns: 1fr;
        gap: 36px;
    }

    .footer-logo img{
        height: 56px;
    }

    .footer-social{
        gap: 12px;
    }

    .footer-social a{
        width: 48px;
        height: 48px;
    }

    .footer-bottom{
        align-items: flex-start;
    }

    .footer-bottom-links{
        flex-wrap: wrap;
        gap: 16px;
    }
}


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

body {
    font-family: 'Poppins', sans-serif;
}

/* ================= NAVBAR ================= */
.navbar {
    width: 100%;
    background: var(--cream);
    box-shadow: 0 2px 12px rgba(0,0,0,0.08);
    position: sticky;
    top: 0;
    z-index: 1000;
}

.nav-container {
    width: 90%;
    max-width: 1280px;
    margin: auto;
    height: 78px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* Logo */
.logo {
    display: flex;
    align-items: center;
    text-decoration: none;
}

.logo img {
    height: 52px;
    width: auto;
    transition: transform 0.3s ease;
}

.logo:hover img {
    transform: scale(1.04);
}

/* Navigation */
.nav-links {
    display: flex;
    align-items: center;
    gap: 32px;
}

.nav-links a {
    position: relative;
    text-decoration: none;
    color: var(--sky);
    font-size: 15px;
    font-weight: 500;
    padding: 6px 0;
    transition: all 0.3s ease;
}

/* Hover Glow */
.nav-links a:hover {
    color: var(--sky);
    text-shadow:
        0 0 8px rgba(37,167,222,0.55),
        0 0 16px rgba(37,167,222,0.45),
        0 0 28px rgba(37,167,222,0.35);
    transform: translateY(-1px);
}

/* Active Link */
.nav-links a.active {
    font-weight: 600;
}

.nav-links a.active::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -6px;
    width: 100%;
    height: 2.5px;
    background: var(--sky);
    border-radius: 10px;
    box-shadow: 0 0 8px rgba(37,167,222,0.35);
}

/* Mobile Menu */
.menu-toggle {
    display: none;
    flex-direction: column;
    cursor: pointer;
    gap: 5px;
}

.menu-toggle span {
    width: 26px;
    height: 2.5px;
    background: var(--sky);
    border-radius: 10px;
    transition: 0.3s;
}

/* ================= RESPONSIVE ================= */
@media (max-width: 992px) {

    .menu-toggle {
        display: flex;
    }

    .nav-links {
        position: absolute;
        top: 78px;
        right: 0;
        width: 100%;
        background: var(--cream);
        flex-direction: column;
        align-items: flex-start;
        gap: 0;
        padding: 16px 24px;
        box-shadow: 0 10px 20px rgba(0,0,0,0.08);

        max-height: 0;
        overflow: hidden;
        transition: max-height 0.4s ease;
    }

    .nav-links.open {
        max-height: 420px;
    }

    .nav-links a {
        width: 100%;
        padding: 14px 0;
        border-bottom: 1px solid rgba(0,0,0,0.05);
    }

    .nav-links a:last-child {
        border-bottom: none;
    }
}