html,
body{
    margin:0;
    padding:0;
    overflow-x:hidden;
}

/* ******************* NAVBAR OPEN********************************* */
/* ================= NAVBAR ================= */

.container{
    max-width:1400px;
    margin:auto;
    padding:0 0px;
    box-sizing:border-box;
}
.nav{
    background: #001b3f;
    height: 75px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 25px;
}

.logo{
    width: 100px;
    height: 60px;
    border-radius: 5px;
}
.logo img{
    height: 60px;
    display: block;
    margin-bottom: 0px;
    border-radius: 5px;
}

/* ================= HAMBURGER ================= */

.menu-toggle{
    display:none;
    font-size:28px;
    color:#fff;
    cursor:pointer;
    transition:.3s;
}

.menu-toggle:hover{
    color:#00d4ff;
}
/* ================= MENU ================= */

.menu{
    list-style: none;
    display: flex;
    align-items: center;
    gap: 18px;
    margin: 0;
    padding: 0;
}

.menu li{
    position: relative;
}

.menu li a{
    color: #fff;
    text-decoration: none;
    font-size: 16px;
    font-weight: 500;
    transition: 0.3s;
    display: block;
    padding: 10px 0;
}

.menu li a:hover{
    color: #00d4ff;
}

/* ================= DROPDOWN ================= */

.dropdown{
    position: relative;
}

/* Invisible bridge so dropdown doesn't close */
.dropdown::after{
    content: "";
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    height: 15px;
}

.dropdown-menu{
    position: absolute;
    top: 100%;   /* IMPORTANT */
    left: 0;
    min-width: 260px;
    background: #fff;
    list-style: none;
    padding: 8px 0;
    margin: 0;
    border-radius: 12px;
    display: none;
    box-shadow: 0 10px 25px rgba(0,0,0,0.15);
    z-index: 999;
    border-top: 4px solid #00d4ff;
    overflow: hidden;
}

.dropdown:hover .dropdown-menu{
    display: block;
}

.dropdown-menu li{
    padding: 0;
}

.dropdown-menu li a{
    color: #333;
    padding: 12px 20px;
    display: block;
    transition: 0.3s;
}

.dropdown-menu li a:hover{
    background: #f5f9ff;
    color: #001b3f;
    padding-left: 28px;
}

/* Category Heading */

.dropdown-heading{
    background: #eef6ff;
    color: #001b3f;
    font-weight: 700;
    padding: 12px 20px;
    border-left: 4px solid #00d4ff;
    margin: 5px 0;
    cursor: default;
}

/* Divider */

.dropdown-divider{
    height: 1px;
    background: #e5e5e5;
    margin: 8px 15px;
}

/* ================= CONTACT BUTTON ================= */

.contact-no a{
    background: #00d4ff;
    color: #001b3f;
    padding: 10px 18px;
    border-radius: 30px;
    text-decoration: none;
    font-weight: 600;
    transition: 0.3s;
}

.contact-no a:hover{
    background: #fff;
    color: #001b3f;
}

/* Arrow */

.arrow{
    font-size: 11px;
}

/* *********** NAVBAR CLOSE ************ */
/* *********** HOME-BANNER OPEN ************* */
.home-banner{
    width: 100%;
    height: 600px;
    position: relative;
    overflow: hidden;
    margin-top: 20px;
}

.home-banner img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    animation: zoomBanner 8s ease-in-out infinite alternate;
}

/* Dark overlay */
.home-banner::before{
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.5);
    top: 0;
    left: 0;
}

/* Text Content */
.overlay{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    text-align: center;
    color: rgb(10, 1, 59);
    z-index: 2;
    animation: fadeUp 1.2s ease;
}

.overlay h1{
    font-size: 60px;
    margin-bottom: 15px;
    font-family: Arial, Helvetica, sans-serif;
    animation: slideDown 1s ease;
}

.overlay p{
    font-size: 24px;
    margin-bottom: 25px;
    animation: fadeUp 1.5s ease;
}

.overlay button{
    padding: 12px 30px;
    border: none;
    background-color: darkred;
    color: white;
    font-size: 18px;
    border-radius: 5px;
    cursor: pointer;
    transition: all 0.4s ease;
    animation: fadeUp 2s ease;
}

.overlay button:hover{
    background-color: red;
    transform: translateY(-4px) scale(1.05);
}

/* ********** HOME-BANNER CLOSE ************** */


/* ********** Welcome OPEN ************** */
.home-heading{
    width: 100%;
    background-color: wheat;
    padding-bottom: 50px;
}

.main-heading h1{
    text-align: center;
    padding-top: 25px ;
    background: linear-gradient(90deg, #180050, #0021c7, rgb(0, 0, 115));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: white;
    font-size: 42px;
    font-weight: 700;
    font-family: 'Poppins', sans-serif;
    letter-spacing: 1px;
    text-transform: uppercase;
    animation: fadeUp 1s ease;
}

.main-heading h1::after{
    content: "";
    display: block;
    width: 600px;
    height: 4px;
    background: #023292;
    margin: 15px auto 0;
    border-radius: 10px;
    animation: lineGrow 1.5s ease forwards;
}

.content{
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
    margin-top: 40px;
}

.left{
    height: 420px;
    width: 50%;
    text-align: left;
    border-radius: 20px;
    padding-left: 40px;
    animation: slideLeft 1.2s ease;
}

.p1{
    font-size: 40px;
    font-weight: 570;
    color: #23027d;
    font-family: 'Poppins', sans-serif;
    margin-top: -17px;
}

.p2{
    font-size: 20px;
    color: #0339a0;
    font-family: monospace;
    font-weight: 400;
    transition: 0.4s;
}

.p2:hover{
    color: #001b7a;
}

.right{
    height: 500px;
    width: 50%;
    text-align: center;
    border-radius: 20px;
    animation: slideRight 1.2s ease;
}

.right img{
    height: 100%;
    width: 80%;
    object-fit: cover;
    border-radius: 20px;
    box-shadow: 0 15px 40px rgba(0,0,0,0.25);
    transition: all 0.5s ease;
}

.right img:hover{
    transform: scale(1.05);
}
/* ********** WELCOME CLOSE ************** */


/* ********** HOME-SERVICE PART OPEN ************** */
.home-mini-service{
    width: 100%;
    min-height: 450px;
    padding: 35px 20px;
    background: #0f172a;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 25px;
    flex-wrap: wrap;
    box-sizing: border-box;
    margin-top: 10px;
}

.home-service-preview{
    width: 100%;
    text-align: center;
    color: #ffffff;
    font-size: 36px;
    font-family: 'Poppins', sans-serif;
    margin-bottom: 10px;
    animation: fadeUp 1s ease;
}

/* Service Card */
.home-service-box{
    width: 250px;
    background: #ffffff;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0px 5px 20px rgba(0,0,0,0.12);
    transition: all 0.5s ease;
    text-align: center;
    padding-bottom: 20px;
    height: 320px;
    position: relative;
    cursor: pointer;
    margin-bottom: 20px;
    animation: cardFloat 4s ease-in-out infinite;
}

/* Hover Animation */
.home-service-box:hover{
    transform: translateY(-12px) scale(1.03);
    box-shadow: 0px 15px 35px rgba(0,0,0,0.20);
}

/* Shine Effect */
.home-service-box::before{
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        120deg,
        transparent,
        rgba(255,255,255,0.5),
        transparent
    );
    transition: 0.8s;
    z-index: 1;
}

.home-service-box:hover::before{
    left: 100%;
}

.home-service-image{
    width: 100%;
    height: 180px;
    padding: 8px;
    box-sizing: border-box;
    overflow: hidden;
}

.home-service-image img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
    transition: all 0.5s ease;
}

.home-service-box:hover img{
    transform: scale(1.1) rotate(2deg);
}

.home-service-box h2,
.home-service-box h3{
    font-size: 22px;
    color: #111827;
    margin-top: 15px;
    margin-bottom: 10px;
    font-family: 'Poppins', sans-serif;
    transition: all 0.4s ease;
}

.home-service-box:hover h2,
.home-service-box:hover h3{
    color: #2563eb;
    letter-spacing: 1px;
}

.home-service-box p{
    font-size: 14px;
    color: #6b7280;
    line-height: 22px;
    padding: 0 15px;
    transition: 0.4s;
}

.home-service-box:hover p{
    color: #374151;
}
/* ********** HOME-SERVICE PART CLOSE ************** */


/* ================= KEYFRAMES ================= */

@keyframes fadeUp{
    from{
        opacity:0;
        transform:translateY(40px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

@keyframes slideLeft{
    from{
        opacity:0;
        transform:translateX(-80px);
    }
    to{
        opacity:1;
        transform:translateX(0);
    }
}

@keyframes slideRight{
    from{
        opacity:0;
        transform:translateX(80px);
    }
    to{
        opacity:1;
        transform:translateX(0);
    }
}

@keyframes slideDown{
    from{
        opacity:0;
        transform:translateY(-50px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

@keyframes lineGrow{
    from{
        width:0;
    }
    to{
        width:600px;
    }
}

@keyframes zoomBanner{
    from{
        transform:scale(1);
    }
    to{
        transform:scale(1.08);
    }
}

@keyframes cardFloat{
    0%{
        transform:translateY(0);
    }
    50%{
        transform:translateY(-8px);
    }
    100%{
        transform:translateY(0);
    }
}

/* =========================
        FOOTER MAIN
========================= */

.last-part{
    background: linear-gradient(135deg,#00112d,#002b5c,#00112d);
    padding: 70px 0 50px;
    position: relative;
    overflow: hidden;
}

/* Animated Top Border */
.last-part::before{
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 3px;
    background: linear-gradient(
        90deg,
        transparent,
        #00c6ff,
        transparent
    );
    animation: footerGlow 5s linear infinite;
}

/* =========================
       FOOTER FLEX
========================= */

.last-details{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 50px;
    flex-wrap: wrap;
}

/* =========================
       LEFT SIDE
========================= */

.footer-left{
    width: 45%;
    animation: slideLeft 1s ease;
}

.footer-left h2{
    color: #ffffff;
    font-size: 35px;
    margin-bottom: 15px;
    font-family: 'Poppins', sans-serif;
    margin-left: 30px;
    transition: 0.4s;
}

.footer-left h2:hover{
    letter-spacing: 2px;
}

.footer-left img{
    width: 180px;
    margin-left: 30px;
    margin-bottom: 20px;
    transition: 0.5s;
}

.footer-left img:hover{
    transform: scale(1.05);
}

.footer-left p{
    font-size: 17px;
    line-height: 30px;
    color: #d6e4ff;
    margin-left: 30px;
    max-width: 500px;
}

/*  */


/* =========================
      SOCIAL ICONS
========================= */

.social-icons{
    margin-top: 20px;
    display: flex;
    align-items: center;
    gap: 15px;
    margin-left: 30px;
}

.social-icons a{
    text-decoration: none;
}

.social-icons i{
    font-size: 22px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: rgba(255,255,255,0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    transition: all .4s ease;
}

.social-icons i:hover{
    background: #00c6ff;
    transform: translateY(-5px) rotate(10deg);
    box-shadow: 0 0 20px rgba(0,198,255,.5);
}

.social-icons span{
    color: #d6e4ff;
    font-size: 18px;
}

/* =========================
       RIGHT SIDE
========================= */

.footer-right{
    width: 50%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 15px;
    animation: slideRight 1s ease;
}

/* =========================
       FOOTER BOX
========================= */

.footer-box{
    min-width: 180px;
}

.footer-box h3{
    margin-bottom: 20px;
    position: relative;
}

.footer-box h3::after{
    content: "";
    position: absolute;
    left: 0;
    bottom: -8px;
    width: 40px;
    height: 3px;
    background: #00c6ff;
    border-radius: 10px;
    transition: .4s;
}

.footer-box:hover h3::after{
    width: 70px;
}

.footer-box h3 a{
    color: #ffffff;
    text-decoration: none;
    font-size: 24px;
    font-family: 'Poppins', sans-serif;
}

/* LINKS */

.footer-box p{
    line-height: 38px;
}

.footer-box p a{
    color: #d6e4ff;
    text-decoration: none;
    transition: all .4s ease;
    display: inline-block;
}

.footer-box p a:hover{
    color: #00c6ff;
    transform: translateX(8px);
}

/* =========================
      BOTTOM COPYRIGHT
========================= */

.footer-copy{
    text-align: center;
    color: #b8c7e0;
    border-top: 1px solid rgba(255,255,255,.1);
    margin-top: 50px;
    padding-top: 20px;
}

/* =========================
        ANIMATIONS
========================= */

@keyframes slideLeft{
    from{
        opacity:0;
        transform:translateX(-80px);
    }
    to{
        opacity:1;
        transform:translateX(0);
    }
}

@keyframes slideRight{
    from{
        opacity:0;
        transform:translateX(80px);
    }
    to{
        opacity:1;
        transform:translateX(0);
    }
}

@keyframes footerGlow{
    100%{
        left:100%;
    }
}
/* FOOTER PART CLOSE */


/* ======= DIRECTED LINE OPEN =========== */
/* ======= DIRECTED LINE OPEN =========== */

.pc-credit-line{
    text-align:center;
    padding:20px;
    background:linear-gradient(
        270deg,
        #000000,
        #001b3f,
        #003f7d,
        #001b3f,
        #000000
    );
    background-size:300% 300%;
    border-top:1px solid rgba(255,255,255,.08);
    position:relative;
    overflow:hidden;
    animation:creditGradient 8s ease infinite;
}

/* Top glow line */
.pc-credit-line::before{
    content:"";
    position:absolute;
    top:0;
    left:-100%;
    width:100%;
    height:2px;
    background:linear-gradient(
        90deg,
        transparent,
        #00d9ff,
        transparent
    );
    animation:shineLine 4s linear infinite;
}

.pc-credit-line p{
    color:#bfc9d4;
    font-size:15px;
    margin:0;
    letter-spacing:.5px;
    transition:.4s ease;
}

.pc-credit-line span{
    color:#00d9ff;
    font-weight:600;
    transition:.4s ease;
    display:inline-block;
}

.pc-credit-line span:hover{
    transform:translateY(-2px);
    text-shadow:
        0 0 10px rgba(0,217,255,.8),
        0 0 20px rgba(0,217,255,.5);
}

/* Gradient movement */
@keyframes creditGradient{
    0%{
        background-position:0% 50%;
    }
    50%{
        background-position:100% 50%;
    }
    100%{
        background-position:0% 50%;
    }
}

/* Shine effect */
@keyframes shineLine{
    0%{
        left:-100%;
    }
    100%{
        left:100%;
    }
}

/* ======= DIRECTED LINE CLOSE =========== */

/* HOME PAGE CLOSE  */

/* ================================= ABOUT PAGE OPEN ===================================== */

.about-banner{
    height: 430px;
    width: 100%;
    margin-top: 10px;
    background-image: url(images/rupixen-pen-4337521.jpg);
    background-size: cover;
    background-position: center;
    position: relative;

    display: flex;
    justify-content: center;
    align-items: center;

    animation: bannerZoom 8s ease-in-out infinite alternate;
}

/* Dark Overlay */
.about-banner::before{
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 27, 63, 0.65);
}

.about-banner-content{
    position: relative;
    z-index: 2;
    text-align: center;
    max-width: 700px;
    padding: 20px;

    animation: fadeUp 1.2s ease;
}

.about-banner-content h2{
    color: #fff;
    font-size: 42px;
    margin-bottom: 15px;
    font-family: 'Poppins', sans-serif;

    animation: slideDown 1s ease;
}

.about-banner-content p{
    color: #dbeafe;
    font-size: 18px;
    line-height: 30px;
    margin-bottom: 30px;

    animation: fadeUp 1.4s ease;
}

.consultation-btn{
    display: inline-block;
    padding: 15px 35px;
    background: linear-gradient(135deg,#25D366,#128C7E);
    color: #fff;
    text-decoration: none;
    font-size: 18px;
    font-weight: 600;
    border-radius: 50px;
    transition: all 0.4s ease;
    box-shadow: 0 8px 20px rgba(37,211,102,0.3);

    animation: pulseGlow 2.5s infinite;
}

.consultation-btn:hover{
    transform: translateY(-5px) scale(1.05);
    box-shadow: 0 15px 30px rgba(37,211,102,0.5);
}

/* ========================= ABOUT SECTION ========================= */

.about{
    width: 100%;
    min-height: 500px;
    margin-top: 10px;
    position: relative;
    overflow: hidden;
    background-image: url("images/cyberrabbit-web-1738168_1920.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* Dark Blue Overlay */
.about::before{
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        135deg,
        rgba(0, 27, 63, 0.92),
        rgba(0, 63, 125, 0.85),
        rgba(0, 27, 63, 0.92)
    );

    animation: overlayMove 10s linear infinite alternate;
}

/* Main Flex */
.about-info{
    position: relative;
    z-index: 2;

    display: flex;
    justify-content: space-between;
    align-items: center;

    min-height: 500px;
    padding: 40px 20px;
}

/* LEFT SIDE */

.about-left{
    width: 50%;
    animation: slideLeft 1.2s ease;
}

.about-left h2{
    color: #ffffff;
    font-size: 42px;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    margin-bottom: 20px;
    padding-left: 30px;
    transition: 0.4s;
}

.about-left h2:hover{
    letter-spacing: 2px;
}

.about-left p{
    color: #dbeafe;
    font-size: 18px;
    line-height: 30px;
    padding: 0 30px;
    margin-bottom: 20px;
    font-family: Arial, Helvetica, sans-serif;
}

/* LIST */

.about-left ul{
    padding-left: 30px;
}

.about-left ul li{
    list-style: none;
    color: #e2e8f0;
    font-size: 17px;
    line-height: 34px;
    font-family: Arial, Helvetica, sans-serif;

    transition: 0.4s ease;
}

.about-left ul li:hover{
    color: #00c6ff;
    transform: translateX(10px);
}

.about-left ul li::before{
    content: "✔";
    color: #00c6ff;
    font-weight: bold;
    margin-right: 10px;
}

/* RIGHT SIDE */

.about-right{
    width: 45%;
    display: flex;
    justify-content: center;

    animation: slideRight 1.2s ease;
}

.about-right img{
    width: 100%;
    max-width: 500px;
    height: 330px;
    object-fit: cover;
    border-radius: 25px;
    border: 3px solid rgba(255,255,255,0.15);

    box-shadow:
        0 15px 35px rgba(0,0,0,0.35),
        0 0 25px rgba(0,198,255,0.15);

    transition: all 0.5s ease;

    animation: floatImage 4s ease-in-out infinite;
}

.about-right img:hover{
    transform: scale(1.05) rotate(1deg);

    box-shadow:
        0 20px 45px rgba(0,0,0,0.45),
        0 0 40px rgba(0,198,255,0.35);
}

/* ========================= KEYFRAMES ========================= */

@keyframes fadeUp{
    from{
        opacity:0;
        transform:translateY(40px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

@keyframes slideDown{
    from{
        opacity:0;
        transform:translateY(-50px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

@keyframes slideLeft{
    from{
        opacity:0;
        transform:translateX(-80px);
    }
    to{
        opacity:1;
        transform:translateX(0);
    }
}

@keyframes slideRight{
    from{
        opacity:0;
        transform:translateX(80px);
    }
    to{
        opacity:1;
        transform:translateX(0);
    }
}

@keyframes floatImage{
    0%{
        transform: translateY(0);
    }
    50%{
        transform: translateY(-12px);
    }
    100%{
        transform: translateY(0);
    }
}

@keyframes pulseGlow{
    0%{
        box-shadow: 0 0 0 rgba(37,211,102,0.4);
    }
    50%{
        box-shadow: 0 0 25px rgba(37,211,102,0.6);
    }
    100%{
        box-shadow: 0 0 0 rgba(37,211,102,0.4);
    }
}

@keyframes bannerZoom{
    from{
        background-size:100%;
    }
    to{
        background-size:110%;
    }
}

@keyframes overlayMove{
    from{
        opacity:0.92;
    }
    to{
        opacity:1;
    }
}
/*********** ABOUT COUNTER OPEN ************/

.count{
     padding: 0 0 60px;
    margin-top: 10px;
    min-height: 410px;
    height: auto;
    position: relative;
    overflow: visible;

    background: linear-gradient(
        -45deg,
        rgb(127,177,251),
        rgb(70,135,206),
        rgb(19,19,79),
        #003366
    );

    background-size: 400% 400%;
    animation: gradientMove 12s ease infinite;
}

/* Animated Light Effect */

.count::before{
    content: "";
    position: absolute;
    width: 350px;
    height: 350px;
    background: rgba(255,255,255,0.08);
    border-radius: 50%;
    top: -100px;
    left: -100px;
    filter: blur(60px);

    animation: moveGlow 10s infinite alternate;
}

/* ========================= */

.icon-heading{
    width: 100%;
    position: relative;
    z-index: 2;
}

.icon-heading h3{
    font-size: 22px;
    color: white;
    padding-top: 30px;
    text-align: center;

    animation: fadeDown 1s ease;
}

.icon-heading p{
    font-size: 16px;
    color: white;
    text-align: center;

    animation: fadeUp 1.2s ease;
}

/* ========================= */
/* SOCIAL ICONS */
/* ========================= */

.icons{
    display: flex;
    gap: 15px;
    justify-content: center;
    align-items: center;
    margin-top: 30px;
}

.icons a{
    text-decoration: none;
}

.icons i{
    font-size: 22px;
    color: white;
    background: linear-gradient(135deg,#001b3f,#003366);

    padding: 12px;
    border-radius: 50%;

    transition: all .4s ease;

    animation: floatIcon 3s ease-in-out infinite;
    position: relative;
}

.icons i:hover{
    transform: scale(1.2) rotate(10deg);

    background: linear-gradient(
        135deg,
        #00c6ff,
        #0072ff
    );

    box-shadow:
        0 0 20px rgba(0,198,255,.6),
        0 0 40px rgba(0,198,255,.3);
}

/* ========================= */
/* TIMELINE */
/* ========================= */

.down-icons{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
    margin: 40px 0;
    flex-wrap: wrap;
}

/* ICON BOX */

.icon-box{
    position: relative;
    overflow: visible;
}

.icon-text{
    z-index: 9999;
}

/* ICONS */

.down-iconline,
.small-icon{
    width: 60px;
    height: 60px;

    border-radius: 50%;
    border: 2px solid rgba(255,255,255,.5);

    display: flex;
    justify-content: center;
    align-items: center;

    background: rgba(255,255,255,.08);

    backdrop-filter: blur(8px);

    cursor: pointer;

    transition: all .4s ease;

    position: relative;
}

/* Pulse Ring */

.down-iconline::before,
.small-icon::before{
    content: "";
    position: absolute;

    width: 100%;
    height: 100%;

    border-radius: 50%;
    border: 2px solid rgba(255,255,255,.4);

    animation: pulseRing 2s infinite;
}

.down-iconline i,
.small-icon i{
    color: white;
    font-size: 22px;
}

/* Hover */

.down-iconline:hover,
.small-icon:hover{
    transform: translateY(-8px) scale(1.15);

    box-shadow:
        0 10px 25px rgba(0,198,255,.4);
}

/* ========================= */
/* GLOW LINE */
/* ========================= */

.line{
    width: 80px;
    height: 3px;

    background: linear-gradient(
        90deg,
        transparent,
        white,
        transparent
    );

    animation: lineGlow 2s infinite;
}

/* ========================= */
/* TOOLTIP */
/* ========================= */

.icon-text{
    position: absolute;
    top: 80px;
    left: 50%;

    transform: translateX(-50%) translateY(10px);

    background: rgba(255,255,255,.95);

    color: #001b3f;

    padding: 10px 18px;

    border-radius: 30px;

    font-size: 14px;
    font-weight: 600;

    white-space: nowrap;

    opacity: 0;
    visibility: hidden;

    transition: all .4s ease;

    box-shadow:
        0 10px 20px rgba(0,0,0,.15);
}

/* Show Text */

.icon-box:hover .icon-text{
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}

/* ========================= */
/* KEYFRAMES */
/* ========================= */

@keyframes gradientMove{
    0%{
        background-position:0% 50%;
    }
    50%{
        background-position:100% 50%;
    }
    100%{
        background-position:0% 50%;
    }
}

@keyframes moveGlow{
    from{
        transform:translate(0,0);
    }
    to{
        transform:translate(500px,150px);
    }
}

@keyframes floatIcon{
    0%{
        transform:translateY(0);
    }
    50%{
        transform:translateY(-8px);
    }
    100%{
        transform:translateY(0);
    }
}

@keyframes pulseRing{
    0%{
        transform:scale(1);
        opacity:1;
    }
    100%{
        transform:scale(1.5);
        opacity:0;
    }
}

@keyframes lineGlow{
    0%{
        opacity:.4;
    }
    50%{
        opacity:1;
    }
    100%{
        opacity:.4;
    }
}

@keyframes fadeDown{
    from{
        opacity:0;
        transform:translateY(-40px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

@keyframes fadeUp{
    from{
        opacity:0;
        transform:translateY(40px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

/* ABOUT COUNTER CLOSE */

/* =========== CLIENTS PREVIEW OPEN =================== */

/* COUNTER SECTION */

.counter-section{
    width:97%;
    padding:80px 20px;
    background: linear-gradient(
        135deg,
        #eef5e8,
        #f8fcf5,
        #eef5e8
    );

    position: relative;
    overflow: hidden;
}

/* Background Glow */

.counter-section::before{
    content:"";
    position:absolute;
    width:300px;
    height:300px;
    background:rgba(0,198,255,0.08);
    border-radius:50%;
    top:-100px;
    left:-100px;
    filter:blur(70px);

    animation: moveGlow 10s infinite alternate;
}

.counter-container{
    max-width:1200px;
    margin:auto;

    display:flex;
    justify-content:center;
    gap:25px;
    position:relative;
   flex-wrap: wrap;
}

/* ===================== */
/* HEADING */
/* ===================== */

.counter-heading{
    text-align:center;
    margin-bottom:50px;

    animation: fadeUp 1s ease;
}

.counter-heading h2{
    font-size:42px;
    font-weight:700;
    color:#001b3f;
    margin-bottom:15px;
    position:relative;
    display:inline-block;
}

/* Animated Underline */

.counter-heading h2::after{
    content:"";
    position:absolute;
    left:50%;
    bottom:-10px;

    transform:translateX(-50%);

    width:0;
    height:4px;

    background:#00c6ff;
    border-radius:20px;

    animation: lineGrow 1.5s forwards;
}

.counter-heading p{
    max-width:700px;
    margin:auto;
    font-size:18px;
    color:#666;
    line-height:1.6;
}

/* ===================== */
/* COUNTER BOX */
/* ===================== */

.counter-box{
    width: 167px;
    background:white;
    border-radius:20px;
    padding:35px 20px;
    text-align:center;
    box-shadow:0 8px 25px rgba(0,0,0,0.08);
    transition:all .5s ease;
    position:relative;
    overflow:hidden;
    animation: cardFloat 4s ease-in-out infinite;
    height: 195px;
}

/* Shine Effect */

.counter-box::before{
    content:"";

    position:absolute;
    top:0;
    left:-120%;

    width:100%;
    height:100%;

    background:linear-gradient(
        120deg,
        transparent,
        rgba(255,255,255,.6),
        transparent
    );

    transition:.8s;
}

.counter-box:hover::before{
    left:120%;
}

/* Hover */

.counter-box:hover{
    transform:translateY(-12px) scale(1.03);

    box-shadow:
        0 20px 35px rgba(0,0,0,.12),
        0 0 25px rgba(0,198,255,.15);
}

/* ===================== */
/* ICON */
/* ===================== */

.icon{
    width:75px;
    height:75px;

    margin:auto;
    border-radius:50%;

    background:linear-gradient(
        135deg,
        #001b3f,
        #003d7a
    );

    display:flex;
    justify-content:center;
    align-items:center;

    transition:.4s ease;

    position:relative;
}

/* Pulse Ring */

.icon::before{
    content:"";

    position:absolute;

    width:100%;
    height:100%;

    border-radius:50%;

    border:2px solid rgba(0,198,255,.5);

    animation:pulseRing 2s infinite;
}

.counter-box:hover .icon{
    transform:rotate(12deg) scale(1.1);

    background:linear-gradient(
        135deg,
        #00c6ff,
        #0072ff
    );
}

.icon i{
    color:white;
    font-size:30px;
}

/* ===================== */
/* NUMBER */
/* ===================== */

.counter-box h2{
    font-size:55px;
    color:#001b3f;
    margin:20px 0 10px;
    font-weight:700;

    transition:.4s;
}

.counter-box:hover h2{
    color:#0072ff;
    transform:scale(1.08);
}

.counter-box p{
    font-size:20px;
    color:#444;
    margin:0;
    transition:.4s;
}

.counter-box:hover p{
    color:#111;
}

/* ===================== */
/* KEYFRAMES */
/* ===================== */

@keyframes fadeUp{
    from{
        opacity:0;
        transform:translateY(40px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

@keyframes lineGrow{
    from{
        width:0;
    }
    to{
        width:120px;
    }
}

@keyframes moveGlow{
    from{
        transform:translate(0,0);
    }
    to{
        transform:translate(600px,200px);
    }
}

@keyframes pulseRing{
    0%{
        transform:scale(1);
        opacity:1;
    }
    100%{
        transform:scale(1.5);
        opacity:0;
    }
}

@keyframes cardFloat{
    0%{
        transform:translateY(0);
    }
    50%{
        transform:translateY(-8px);
    }
    100%{
        transform:translateY(0);
    }
}

/* =========== CLEINTS PREVEIW CLOSE =================== */

/* ============================== ABOUT PAGE CLOSE  ===================================== */ 


/* =================== SERVICE PAGE OPEN ============================ */
/* servcie banner part open */
.service-banner{
    height: 500px;
    width: 100%;
    /* background-color: wheat; */
    overflow: hidden;
    margin: 10px 0px;
}


.ser-banner img{
    height: 700px;
    width: 100%;
    object-fit: cover;
    animation: bannerZoom 8s ease-in-out infinite alternate;
}

/* servcie banner part open */
/* SERVICES SECTION */
.my-services-section{
    padding: 80px 20px;
    background: url("images/ser.web2.png");
    text-align: center;
}

.my-section-title{
    color: white;
    font-size: 42px;
    margin-bottom: 10px;
    font-family: Arial, Helvetica, sans-serif;

    animation: fadeDown 1s ease;
}

.my-section-subtitle{
    color: #d9e7ff;
    font-size: 18px;
    margin-bottom: 50px;

    animation: fadeUp 1.2s ease;
}
/* GRID */

.my-services-grid{
    display: flex;
    justify-content: center;
    gap: 30px;
    flex-wrap: wrap;
}

/* CARD */

.my-service-card{
    height: 490px;
    width: 350px;
    background: white;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0,0,0,0.25);

    transition: all .5s ease;

    position: relative;

    animation: cardFloat 2s ease-in-out infinite;
}

.my-service-card::before{
    content:"";
    position:absolute;
    top:0;
    left:-120%;
    width:100%;
    height:100%;

    background:linear-gradient(
        120deg,
        transparent,
        rgba(255,255,255,.5),
        transparent
    );

    transition:.8s;
}

.my-service-card:hover::before{
    left:120%;
}

.my-service-card:hover{
    transform: translateY(-15px) scale(1.03);

    box-shadow:
        0 20px 40px rgba(0,0,0,.18),
        0 0 25px rgba(0,140,255,.15);
}

.my-service-card img{
    width:100%;
    height:220px;
    object-fit:cover;

    transition:.6s ease;
}

.my-service-card:hover img{
    transform:scale(1.08);
}
.my-service-content h3{
    color:#001b3f;
    font-size:28px;
    margin-bottom:15px;

    transition:.4s;
}

.my-service-card:hover h3{
    color:#0077ff;
}


.my-service-content p{
    color: #666;
    line-height: 1.7;
    margin-bottom: 25px;
}

/* BUTTON */
.my-service-btn{
    display:inline-block;
    background:linear-gradient(135deg,#001b3f,#0056b3);
    color:white;
    text-decoration:none;
    padding:12px 25px;
    border-radius:50px;
    font-size:15px;
    font-weight:bold;

    transition:all .4s ease;

    box-shadow:0 5px 15px rgba(0,86,179,.25);
}

.my-service-btn:hover{
    background:linear-gradient(
        135deg,
        #0056b3,
        #008cff
    );

    transform:translateY(-4px);

    box-shadow:
        0 10px 25px rgba(0,140,255,.4);
}
/* ser-web close */

/* ==================== Ser-reveiws OPEN  ==================*/


.client-reviews-section{
    padding:80px 20px;
    background:#f5f8fc;
    text-align:center;

    position:relative;
    overflow:hidden;
}

.client-reviews-section::before{
    content:"";
    position:absolute;

    width:300px;
    height:300px;

    background:rgba(0,140,255,.06);
    border-radius:50%;

    top:-100px;
    left:-100px;

    filter:blur(70px);

    animation: moveGlow 10s infinite alternate;
}

.client-review-heading{
    font-size:42px;
    color:#001b3f;
    margin-bottom:10px;
    animation: fadeDown 1s ease;
}

.client-review-subheading{
    color:#666;
    margin-bottom:40px;
    animation: fadeUp 1.2s ease;
}

.clientReviewSwiper{
    width:100%;
    padding:20px 50px;
}

.client-review-card{
    background:#fff;
    border-radius:20px;
    padding:30px;
    box-shadow:0 10px 25px rgba(0,0,0,.1);
    text-align:center;

    transition:all .4s ease;
    position:relative;
    overflow:hidden;
}

.client-review-card:hover{
    transform:translateY(-12px);

    box-shadow:
        0 20px 40px rgba(0,0,0,.15),
        0 0 20px rgba(0,114,255,.1);
}

.client-review-card::before{
    content:"";
    position:absolute;
    top:0;
    left:-120%;

    width:100%;
    height:100%;

    background:linear-gradient(
        120deg,
        transparent,
        rgba(255,255,255,.5),
        transparent
    );

    transition:.8s;
}

.client-review-card:hover::before{
    left:120%;
}

.client-review-card p{
    line-height:1.8;
    color:#555;
    transition:.4s;
}

.client-review-card:hover p{
    color:#222;
}

.client-review-card h4{
    color:#001b3f;
    margin-top:15px;
    transition: .4s;
}
.client-review-card:hover h4{
    color:#0077ff
}

.client-stars{
    color:#ffb400;
    font-size:22px;
    margin-bottom:15px;
    animation: starGlow 4s infinite;
}

/* Custom Arrows */

.client-next,
.client-prev{
    width:45px;
    height:45px;
    background:#001b3f;
    border-radius:50%;
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    z-index:10;
    cursor:pointer;

     transition:all .4s ease;
}

.client-next{
    right:0;
}

.client-prev{
    left:0;
}

.client-next::after,
.client-prev::after{
    font-size:18px;
    color:#fff;
    font-weight:bold;
}

.client-next::after{
    content:"❯";
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
}

.client-prev::after{
    content:"❮";
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
}


@keyframes starGlow{
    0%{
        opacity:.7;
    }
    50%{
        opacity:1;
        text-shadow:
            0 0 10px #ffb400,
            0 0 20px #ffb400;
    }
    100%{
        opacity:.7;
    }
}
/* Ser-reveiws CLOSE */

/* =================== SERVICE PAGE CLOSE ============================ */

/* ================= GRAPHIC PAGE OPEN ================= */

/* ================= BANNER ================= */

.graphic-banner{
    width:100%;
    height:500px;
    overflow:hidden;
    position:relative;
    margin:0;
}

.gd-banner img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;

    transition:1s ease;
    animation: bannerZoom 8s ease-in-out infinite alternate;
}

/* ================= SERVICES SECTION ================= */

.services-section{
    padding:90px 20px;
    background:linear-gradient(
        135deg,
        #001b3f,
        #003f7d,
        #0066cc
    );
}

.section-title{
    text-align:center;
    margin-bottom:60px;
}

.section-title h2{
    color:#fff;
    font-size:42px;
    margin-bottom:12px;

    animation: fadeDown 1s ease;
}

.section-title p{
    color:#dbe8ff;
    font-size:18px;

    animation: fadeUp 1.2s ease;
}

/* ================= GRID ================= */

.services-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:35px;
}

/* ================= CARD ================= */

.service-box{
    background:#fff;
    border-radius:25px;
    padding:25px;
    text-align:center;

    position:relative;
    overflow:hidden;

    box-shadow:0 15px 35px rgba(0,0,0,.15);

    transition:all .5s ease;
}

/* Shine Effect */

.service-box::before{
    content:"";
    position:absolute;

    top:0;
    left:-120%;

    width:100%;
    height:100%;

    background:linear-gradient(
        120deg,
        transparent,
        rgba(255,255,255,.5),
        transparent
    );

    transition:.8s;
}

.service-box:hover::before{
    left:120%;
}

.service-box:hover{
    transform:translateY(-12px);

    box-shadow:
        0 20px 40px rgba(0,0,0,.2),
        0 0 25px rgba(0,102,204,.15);
}

.service-box img{
    width:140px;
    height:140px;
    object-fit:cover;

    border-radius:12px;
    border:4px solid #0066cc;

    margin-bottom:15px;

    transition:.5s ease;
}

.service-box:hover img{
    transform:scale(1.08) rotate(3deg);
}

.service-box h3{
    font-size:24px;
    color:#001b3f;
    margin-bottom:12px;

    transition:.4s;
}

.service-box:hover h3{
    color:#0066cc;
}

.service-box p{
    color:#666;
    line-height:1.7;
    font-size:15px;
}

/* ================= PURCHASE SECTION ================= */

.girl-service{
    max-width:1400px;
    margin:auto;
    padding:0 20px;
    box-sizing:border-box;
}

.gfx-services-area{
    width:100%;
    padding:90px 0;

    background:linear-gradient(
        135deg,
        #001b3f,
        #004b8d
    );
}

/* ================= HEADING ================= */

.gfx-heading{
    text-align:center;
    margin-bottom:60px;
}

.gfx-heading h2{
    font-size:42px;
    color:#fff;
    margin-bottom:10px;

    animation:fadeDown 1s ease;
}

.gfx-heading p{
    color:#d6e6ff;
    font-size:18px;

    animation:fadeUp 1.2s ease;
}

/* ================= GRID ================= */

.gfx-service-wrapper{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
    gap:40px;
}

/* ================= CARD ================= */

.gfx-card{
    background:#fff;
    border-radius:25px;
    overflow:hidden;

    display:flex;
    flex-direction:column;

    position:relative;

    box-shadow:0 15px 35px rgba(0,0,0,.15);

    transition:all .5s ease;
}

/* Shine */

.gfx-card::before{
    content:"";
    position:absolute;

    top:0;
    left:-120%;

    width:100%;
    height:100%;

    background:linear-gradient(
        120deg,
        transparent,
        rgba(255,255,255,.5),
        transparent
    );

    transition:.8s;
}

.gfx-card:hover::before{
    left:120%;
}

.gfx-card:hover{
    transform:translateY(-12px);

    box-shadow:
        0 20px 40px rgba(0,0,0,.2),
        0 0 25px rgba(0,86,210,.15);
}

.gfx-card img{
    width:100%;
    height:220px;
    object-fit:cover;

    transition:.6s ease;
}

.gfx-card:hover img{
    transform:scale(1.08);
}

.gfx-card h3{
    padding:20px 20px 10px;
    margin:0;

    color:#001b3f;
    font-size:24px;

    transition:.4s;
}

.gfx-card:hover h3{
    color:#0056d2;
}

.gfx-card p{
    padding:0 20px;
    color:#666;
    line-height:1.7;
    flex:1;
}

.gfx-price{
    display:block;
    padding:15px 20px;

    color:#0056d2;
    font-size:24px;
    font-weight:700;
}

.total{
    padding:0 20px 15px;

    color:#001b3f;
    font-size:22px;
    font-weight:bold;
}

.gfx-card input,
.gfx-card button{
    width:calc(100% - 40px);
    margin:0 20px 15px;
    box-sizing:border-box;
}

/* INPUT */

.gfx-card input{
    padding:12px;
    border:1px solid #d6d6d6;
    border-radius:10px;
    font-size:16px;

    transition:.3s;
}

.gfx-card input:focus{
    outline:none;
    border-color:#0056d2;

    box-shadow:
        0 0 10px rgba(0,86,210,.2);
}

/* BUTTON */

.gfx-card button{
    padding:14px;
    border:none;
    border-radius:10px;

    background:linear-gradient(
        135deg,
        #0056d2,
        #0077ff
    );

    color:#fff;
    font-size:16px;
    font-weight:600;

    cursor:pointer;

    transition:.4s ease;
}

.gfx-card button:hover{
    transform:translateY(-3px);

    background:linear-gradient(
        135deg,
        #003f9e,
        #0056d2
    );

    box-shadow:
        0 10px 20px rgba(0,86,210,.3);
}

/* ================= KEYFRAMES ================= */

@keyframes fadeDown{
    from{
        opacity:0;
        transform:translateY(-40px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

@keyframes fadeUp{
    from{
        opacity:0;
        transform:translateY(40px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

@keyframes bannerZoom{
    from{
        transform:scale(1);
    }
    to{
        transform:scale(1.08);
    }
}

/* ================= GRAPHIC PAGE CLOSE ================= */


/* ========================= WEB DESIGN PAGE OPEN ========================= */

.wdp-section{
    padding:90px 20px;
    background:linear-gradient(
        135deg,
        #f5f8fc,
        #eef4ff,
        #f5f8fc
    );
    position:relative;
    overflow:hidden;
}

/* Background Glow */

.wdp-section::before{
    content:"";
    position:absolute;
    width:350px;
    height:350px;
    background:rgba(0,102,255,.06);
    border-radius:50%;

    top:-120px;
    left:-120px;

    filter:blur(80px);
}

/* ================= HEADER ================= */

.wdp-header{
    text-align:center;
    margin-bottom:60px;
}

.wdp-header h2{
    font-size:42px;
    color:#001b3f;
    margin-bottom:12px;

    animation:fadeDown 1s ease;
}

.wdp-header p{
    font-size:18px;
    color:#666;

    animation:fadeUp 1.2s ease;
}

/* ================= GRID ================= */

.wdp-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:35px;
}

/* ================= CARD ================= */

.wdp-card{
    background:#fff;
    border-radius:22px;
    overflow:hidden;

    text-align:center;
    padding-bottom:25px;

    position:relative;

    box-shadow:
        0 10px 30px rgba(0,0,0,.08);

    transition:all .5s ease;
}

/* Shine Effect */

.wdp-card::before{
    content:"";
    position:absolute;

    top:0;
    left:-120%;

    width:100%;
    height:100%;

    background:linear-gradient(
        120deg,
        transparent,
        rgba(255,255,255,.6),
        transparent
    );

    transition:.8s;
}

.wdp-card:hover::before{
    left:120%;
}

.wdp-card:hover{
    transform:translateY(-15px);

    box-shadow:
        0 20px 40px rgba(0,0,0,.15),
        0 0 20px rgba(0,102,255,.12);
}

/* ================= IMAGE ================= */

.wdp-card img{
    width:100%;
    height:220px;
    object-fit:cover;

    transition:.7s ease;
}

.wdp-card:hover img{
    transform:scale(1.08);
}

/* ================= TITLE ================= */

.wdp-card h3{
    font-size:24px;
    color:#001b3f;
    margin:20px 15px 10px;

    transition:.4s;
}

.wdp-card:hover h3{
    color:#0066ff;
}

/* ================= DESCRIPTION ================= */

.wdp-card p{
    font-size:15px;
    color:#666;
    line-height:1.7;

    padding:0 15px;
    min-height:75px;
}

/* ================= PRICE ================= */

.wdp-price{
    display:block;

    font-size:28px;
    font-weight:700;

    color:#0066ff;

    margin:15px 0;
}

/* ================= QUANTITY ================= */

.wdp-qty{
    width:90px;

    padding:10px;

    text-align:center;

    border:1px solid #d6d6d6;
    border-radius:10px;

    margin-bottom:15px;

    transition:.3s;
}

.wdp-qty:focus{
    outline:none;

    border-color:#0066ff;

    box-shadow:
        0 0 10px rgba(0,102,255,.2);
}

/* ================= TOTAL ================= */

.wdp-total{
    font-size:20px;
    font-weight:600;
    color:#001b3f;

    margin-bottom:18px;
}

/* ================= BUTTON ================= */

.wdp-btn{
    background:linear-gradient(
        135deg,
        #001b3f,
        #0056b3
    );

    color:#fff;

    border:none;

    padding:14px 30px;

    border-radius:40px;

    cursor:pointer;

    font-size:16px;
    font-weight:600;

    transition:all .4s ease;

    box-shadow:
        0 8px 20px rgba(0,86,179,.25);
}

.wdp-btn:hover{
    transform:translateY(-4px);

    background:linear-gradient(
        135deg,
        #0056b3,
        #008cff
    );

    box-shadow:
        0 12px 25px rgba(0,140,255,.35);
}

/* ================= KEYFRAMES ================= */

@keyframes fadeDown{
    from{
        opacity:0;
        transform:translateY(-40px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }
}

@keyframes fadeUp{
    from{
        opacity:0;
        transform:translateY(40px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }
}

/* ========================= WEB DESIGN PAGE CLOSE ========================= */


/*======================= TESTIMONIAL PAGE OPEN ======================== */
.testi-hero{
    height:100vh;
    position:relative;
    background:
    linear-gradient(
    rgba(0,0,0,.6),
    rgba(0,0,0,.7)),
    url("images/boook\ under\ person.jpg");

    background-size:cover;
    background-position:center;

    display:flex;
    justify-content:center;
    align-items:center;
    text-align:center;
    padding:20px;
}

.testi-content{
    max-width:900px;
    z-index:2;
}

.testi-badge{
    display:inline-block;
    padding:12px 25px;
    background:rgba(255,255,255,.1);
    border:1px solid rgba(255,255,255,.2);
    border-radius:50px;
    color:#00d9ff;
    margin-bottom:25px;
}

.testi-content h1{
    color:white;
    font-size:75px;
    line-height:1.1;
    margin-bottom:20px;
}

.testi-content p{
    color:#d1d5db;
    font-size:20px;
    max-width:700px;
    margin:auto;
    line-height:1.8;
}

.testi-buttons{
    margin-top:35px;
}

.testi-btn,
.testi-btn-outline{
    display:inline-block;
    padding:16px 35px;
    margin:10px;
    border-radius:50px;
    text-decoration:none;
    transition:.4s;
}

.testi-btn{
    background:#00d9ff;
    color:#000;
    font-weight:600;
}

.testi-btn:hover{
    transform:translateY(-5px);
}

.testi-btn-outline{
    border:1px solid rgba(255,255,255,.3);
    color:white;
}

.testi-btn-outline:hover{
    background:white;
    color:black;
}

/* =========================
PC CLIENT REVIEWS SECTION IN TESTIMONIAL PAGE 
========================= */

.pc-client-reviews{
    padding:100px 20px;
    background:#f7f9fc;
    position:relative;
    overflow:hidden;
}

/* Background Glow */

.pc-client-reviews::before{
    content:"";
    position:absolute;

    width:350px;
    height:350px;

    background:#00cfff;

    border-radius:50%;

    filter:blur(180px);

    top:-100px;
    left:-100px;

    opacity:.15;
}

.pc-client-reviews::after{
    content:"";
    position:absolute;

    width:350px;
    height:350px;

    background:#004cff;

    border-radius:50%;

    filter:blur(180px);

    bottom:-100px;
    right:-100px;

    opacity:.10;
}

/* Heading */

.pc-section-title{
    text-align:center;
    margin-bottom:60px;
    position:relative;
    z-index:2;
}

.pc-section-title h2{
    font-size:48px;
    color:#0b1f3a;
    font-weight:700;
}

/* Review Grid */

.pc-review-grid{
    max-width:1200px;
    margin:auto;

    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
    gap:30px;

    position:relative;
    z-index:2;
}

/* Review Card */

.pc-review-card{
    background:rgba(255,255,255,.85);

    backdrop-filter:blur(12px);

    border:1px solid rgba(255,255,255,.5);

    border-radius:25px;

    padding:35px;

    box-shadow:
    0 15px 40px rgba(0,0,0,.08);

    transition:.5s ease;

    position:relative;

    overflow:hidden;
}

/* Hover Glow Line */

.pc-review-card::before{
    content:"";

    position:absolute;

    top:0;
    left:-100%;

    width:100%;
    height:4px;

    background:linear-gradient(
        90deg,
        #00cfff,
        #004cff
    );

    transition:.6s;
}

.pc-review-card:hover::before{
    left:0;
}

/* Hover Effect */

.pc-review-card:hover{
    transform:translateY(-12px);

    box-shadow:
    0 25px 60px rgba(0,0,0,.15);
}

/* Stars */

.pc-stars{
    font-size:24px;
    color:#ffb400;

    margin-bottom:20px;

    letter-spacing:2px;

    animation:starGlow 2s infinite;
}

/* Client Name */

.pc-review-card h3{
    font-size:24px;
    color:#0b1f3a;

    margin-bottom:8px;
}

/* Project Type */

.pc-review-card span{
    display:inline-block;

    background:#eef4ff;

    color:#0052cc;

    padding:8px 16px;

    border-radius:50px;

    font-size:14px;

    margin-bottom:18px;
}

/* Review Text */

.pc-review-card p{
    color:#555;

    font-size:16px;

    line-height:1.8;
}

/* Quote Icon */

.pc-review-card::after{
    content:"❝";

    position:absolute;

    right:20px;
    top:10px;

    font-size:70px;

    color:rgba(0,82,204,.08);

    font-weight:bold;
}

/* Star Animation */

@keyframes starGlow{

    0%{
        text-shadow:0 0 5px #ffb400;
    }

    50%{
        text-shadow:
        0 0 15px #ffb400,
        0 0 25px #ffb400;
    }

    100%{
        text-shadow:0 0 5px #ffb400;
    }
}


/* =========================
FEATURED PROJECTS
========================= */

.pc-feature-projects{
    padding:100px 20px;

    background:
    linear-gradient(
        135deg,
        #00112d,
        #003b8e
    );
}

.pc-feature-projects .pc-section-title h2{
    color:white;
}

.pc-project-wrap{
    max-width:1200px;

    margin:auto;

    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));

    gap:30px;
}

/* Project Card */

.pc-project-card{
    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.1);

    backdrop-filter:blur(15px);

    padding:40px;

    border-radius:25px;

    color:white;

    transition:.5s;

    position:relative;

    overflow:hidden;
}

/* Glow Effect */

.pc-project-card::before{
    content:"";

    position:absolute;

    width:150px;
    height:150px;

    background:#00cfff;

    border-radius:50%;

    filter:blur(80px);

    top:-50px;
    right:-50px;

    opacity:.25;

    transition:.5s;
}

/* Heading */

.pc-project-card h3{
    font-size:28px;

    margin-bottom:15px;

    position:relative;
    z-index:2;
}

/* Text */

.pc-project-card p{
    color:rgba(255,255,255,.8);

    line-height:1.8;

    position:relative;
    z-index:2;
}

/* Hover */

.pc-project-card:hover{
    transform:translateY(-12px);

    border-color:#00cfff;
}

.pc-project-card:hover::before{
    transform:scale(1.5);
}

/* Number Badge */

.pc-project-card:nth-child(1)::after{
    content:"01";
}

.pc-project-card:nth-child(2)::after{
    content:"02";
}

.pc-project-card:nth-child(3)::after{
    content:"03";
}

.pc-project-card::after{
    position:absolute;

    bottom:15px;
    right:20px;

    font-size:70px;

    font-weight:700;

    color:rgba(255,255,255,.08);
}

/* =====================================
CLIENT LOGOS
===================================== */

.pc-client-logo-wall{
    padding:100px 20px;
    background:#f8fbff;
}

.pc-logo-row{
    max-width:1200px;
    margin:auto;

    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:center;

    gap:50px;
}

.pc-logo-row img{
    height:70px;
    width:auto;
    /* opacity:.7; */
    /* filter:grayscale(100%); */
    transition:.4s;
}

.pc-logo-row img:hover{
    opacity:1;
    filter:none;
    transform:scale(1.08);
}


/* =====================================
WHY CLIENTS CHOOSE US
===================================== */

.pc-why-clients{
    padding:100px 20px;
    background:rgb(240, 239, 239);
}

.pc-why-grid{
    max-width:1200px;
    margin:auto;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));

    gap:25px;
}

.pc-why-card{
    background:white;
    padding:20px 15px;
    border-radius:25px;
    text-align:center;
    color:#0b1f3a;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
    transition:.4s;
    position:relative;
    overflow:hidden;
}

.pc-why-card h4{
    font-size:18px;
    font-family:'Poppins', sans-serif;
    font-weight:600;
    margin:0;
    color:#0b1f3a;
}

.pc-why-card::before{
    content:"";
    position:absolute;
    width:120px;
    height:120px;
    background:#00cfff;
    border-radius:50%;
    filter:blur(70px);
    top:-50px;
    right:-50px;
    opacity:.15;
}

.pc-why-card:hover{
    transform:translateY(-10px);
}


/* =====================================
WORK TIMELINE
===================================== */

.pc-work-timeline{
    padding:100px 20px;
    background:linear-gradient(135deg,#00112d,#003b8e);
    margin: 10px 0px;
}

.pc-work-timeline .pc-section-title h2{
    color:white;
}

.pc-time-wrap{
    max-width:1200px;
    margin:auto;
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:25px;
}

.pc-time-box{
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.1);
    backdrop-filter:blur(10px);
    color:white;
    padding:20px 35px;
    border-radius:50px;
    font-size:18px;
    font-weight:600;
    transition:.4s;
}

.pc-time-box:hover{
    background:#00cfff;
    color:#00112d;
    transform:translateY(-8px);
}


/* =====================================
FINAL CTA
===================================== */

.pc-final-cta{
    padding:120px 20px;
    text-align:center;
    background:linear-gradient(135deg,#00112d,#0054d1);
    position:relative;
    overflow:hidden;
}

.pc-final-cta::before{
    content:"";
    position:absolute;
    width:450px;
    height:450px;
    background:#00cfff;
   border-radius:50%;
    filter:blur(180px);
    top:-150px;
    left:-100px;
    opacity:.20;
}

.pc-final-cta h2{
    position:relative;
    z-index:2;
    color:white;
    font-size:55px;
    max-width:800px;
    margin:auto auto 40px;
}

.pc-final-cta a{
    position:relative;
    z-index:2;
    display:inline-block;
    text-decoration:none;
    padding:18px 40px;
    border-radius:50px;
    background:white;
    color:#003b8e;
    font-weight:700;
    transition:.4s;
}

.pc-final-cta a:hover{
    transform:translateY(-5px);
}

/* revies testie close */

/*======================= TESTIMONIAL PAGE CLOSE ======================== */

/*======================= CONTACT  PAGE OPEN ======================== */

/* CONTATC PAGE BANNER OPEN */
.contact-hero{
    position:relative;
    min-height:100vh;
    background:linear-gradient(
        135deg,
        #020617,
        #07132d,
        #0a1e47
    );
    overflow:hidden;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
    padding:100px 20px;
}

/* Animated Grid */
.contact-grid{
    position:absolute;
    inset:0;
    background-image:
    linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);

    background-size:50px 50px;

    animation:gridMove 15s linear infinite;
}

@keyframes gridMove{
    from{
        transform:translateY(0);
    }
    to{
        transform:translateY(50px);
    }
}

.contact-hero-content{
    position:relative;
    z-index:2;
    max-width:900px;
}

.contact-badge{
    display:inline-block;
    padding:12px 25px;
    border-radius:50px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.15);
    color:#00d9ff;
    margin-bottom:25px;
}

.contact-hero-content h1{
    font-size:75px;
    color:#fff;
    line-height:1.1;
    margin-bottom:20px;
}

.contact-hero-content p{
    color:#b8c2d0;
    font-size:20px;
    max-width:700px;
    margin:auto;
    line-height:1.8;
}

.contact-buttons{
    margin-top:35px;
}

.hero-btn,
.hero-btn-outline{
    display:inline-block;
    padding:16px 35px;
    margin:10px;
    text-decoration:none;
    border-radius:50px;
    transition:.4s;
}

.hero-btn{
    background:#00d9ff;
    color:#000;
    font-weight:600;
}

.hero-btn:hover{
    transform:translateY(-5px);
}

.hero-btn-outline{
    border:1px solid rgba(255,255,255,.2);
    color:white;
}

.hero-btn-outline:hover{
    background:white;
    color:black;
}

/* CONTATC PAGE BANNER CLOSE */


/* CONTATC MAIN-CARD  OPEN */

.future-contact{
    position:relative;
    min-height:100vh;
    background:#050816;
    overflow:hidden;
    padding:100px 8%;
    margin: 10px 0px;
}

.contact-glow{
    position:absolute;
    width:350px;
    height:350px;
    border-radius:50%;
    background:#00d9ff;
    filter:blur(150px);
    opacity:.3;
    pointer-events:none;
    transition:.1s;
}

.contact-content{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:60px;
    position:relative;
    z-index:2;
}

.contact-left{
    width:50%;
}

.contact-tag{
    color:#00d9ff;
    border:1px solid rgba(255,255,255,.15);
    padding:10px 20px;
    border-radius:50px;
    display:inline-block;
}

.contact-left h1{
    color:white;
    font-size:70px;
    line-height:1.1;
    margin:25px 0;
}

.contact-left p{
    color:#b7bfd1;
    font-size:18px;
    line-height:1.8;
}

.contact-cards{
    margin-top:40px;
}

.contact-card{
    display:flex;
    align-items:center;
    gap:20px;
    margin-bottom:20px;
    padding:20px;

    background:rgba(255,255,255,.05);

    border:1px solid rgba(255,255,255,.08);

    backdrop-filter:blur(20px);

    border-radius:20px;

    transition:.4s;
}

.contact-card:hover{
    transform:translateX(15px);
}

.contact-card i{
    color:#00d9ff;
    font-size:28px;
}

.contact-card h4{
    color:white;
    margin-bottom:5px;
}

.contact-card p{
    color:#9ca3af;
    margin:0;
}

.contact-card a{
    color: white;
    text-decoration: none;
}

.contact-card a:hover{
    color: #fdb499;
}
.contact-right{
    width:45%;
}

.contact-form{
    background:rgba(255,255,255,.05);

    backdrop-filter:blur(20px);

    border:1px solid rgba(255,255,255,.08);

    padding:40px;

    border-radius:30px;

    display:flex;
    flex-direction:column;
    gap:20px;
}

.contact-form input,
.contact-form textarea{
    width:100%;
    padding:18px;
    background:rgba(255,255,255,.06);
    border:none;
    outline:none;
    border-radius:15px;
    color:white;
}

.contact-form textarea{
    height:150px;
    resize:none;
}

.contact-form button{
    background:linear-gradient(
        135deg,
        #00d9ff,
        #0066ff
    );

    border:none;
    color:white;
    padding:18px;
    border-radius:15px;
    font-size:18px;
    cursor:pointer;
    transition:.4s;
}

.contact-form button:hover{
    transform:translateY(-5px);
}

 
/*======================= CONTACT PAGE CLOSE ======================== */


/* ====================== PORTFLIO PAGE OPEN =============================  */

.about-portfolio{
    padding:80px 20px;
    background:#f5f8fc;
}

.about-wrapper{
    display:flex;
    gap:50px;
    align-items:center;
    max-width:1200px;
    margin:auto;
}

/* IMAGE */
.about-image{
    flex:1;
}

.about-image img{
    width:100%;
    border-radius:20px;
    box-shadow:0 10px 30px rgba(0,0,0,0.1);
}

/* CONTENT */
.about-content{
    flex:1;
}

.about-content h2{
    font-size:42px;
    color:#001b3f;
    margin-bottom:15px;
}

.about-content p{
    font-size:16px;
    color:#555;
    margin-bottom:15px;
    line-height:1.6;
}

.about-content h3{
    margin-top:20px;
    color:#001b3f;
}

.about-content ul{
    margin-top:10px;
    padding-left:20px;
}

.about-content ul li{
    margin-bottom:8px;
    color:#333;
}

/* BUTTON */
.btn{
    display:inline-block;
    margin-top:20px;
    padding:12px 25px;
    background:#001b3f;
    color:white;
    border-radius:25px;
    text-decoration:none;
    transition:0.3s;
}

.btn:hover{
    background:#003366;
}


/* ====================== PORTFLIO PAGE CLOSE =============================  */

/* ************************************ MOBILE OPEN ********************************* */

/* ==========================
        MOBILE VIEW
========================== */

@media screen and (max-width:768px){

    /* NAVBAR */


    .nav{
        height:auto;
        min-height:70px;
        padding: 12px 15px;
        position:relative;
        
    }

    .logo{
        width:85px;
        height:auto;
    }

    .logo img{
        width:100%;
        height:auto;
    }

    .menu-toggle{
        display:block;
        font-size:24px;
    }

    .contact-no{
        display:none;
    }

    .menu{
        position:absolute;
        top:100%;
        left:0;
        width:100%;
        background:#001b3f;
        flex-direction:column;
        align-items:flex-start;
        gap:0;
        max-height:0;
        overflow:hidden;
        transition:.4s;
        z-index:9999;
    }

    .menu.active{
        max-height:1000px;
    }

    .menu li{
        width:100%;
    }

    .menu li a{
        padding:14px 20px;
        font-size:15px;
        border-bottom:1px solid rgba(255,255,255,.08);
    }

    .dropdown::after{
        display:none;
    }

    .dropdown-menu{
        position:static;
        width:100%;
        min-width:100%;
        box-shadow:none;
        border-radius:0;
        border-top:none;
    }

    .dropdown-menu li a{
        padding:12px 35px;
        font-size:14px;
    }

    /* BANNER */

    .home-banner{
        height:420px;
        margin-top:0;
    }

    .overlay{
        width:90%;
    }

    .overlay h1{
        font-size:30px;
        line-height:38px;
        margin-bottom:10px;
    }

    .overlay p{
        font-size:15px;
        line-height:24px;
        margin-bottom:18px;
    }

    .overlay button{
        font-size:14px;
        padding:10px 20px;
    }

    /* WELCOME */

    .home-heading{
        padding:30px 15px;
    }

    .main-heading h1{
        font-size:26px;
    }

    .main-heading h1::after{
        width:120px;
    }

    .content{
        flex-direction:column;
        gap:20px;
        margin-top:20px;
    }

    .left,
    .right{
        width: 100%;
        height:auto;
        padding-left:0;
        text-align:center;
    }

    .p1{
        font-size:24px;
        margin-top:0;
        line-height:34px;
    }

    .p2{
        font-size: 11px;
        line-height:28px;
    }

    .right img{
        width: 95%;
        max-width: 345px;
        height:auto;
        margin-right: 35px;
    }

    /* SERVICES */

    .home-mini-service{
        padding:35px 15px;
        gap:20px;
    }

    .home-service-preview{
        font-size:26px;
    }

    .home-service-box{
        width:100%;
        max-width:340px;
        height:auto;
        padding-bottom:15px;
    }

    .home-service-image{
        height:200px;
    }

    .home-service-box h2,
    .home-service-box h3{
        font-size:20px;
    }

    .home-service-box p{
        font-size:14px;
        line-height:24px;
    }

    /* FOOTER */

    .last-part{
        padding:45px 15px 30px;
    }

    .last-details{
        flex-direction:column;
        gap:30px;
    }

    .footer-left,
    .footer-right{
        width:100%;
    }

    .footer-left{
        text-align:center;
    }

    .footer-left h2{
        margin-left:0;
        font-size:26px;
    }

    .footer-left img{
        margin-left:0;
        width:140px;
    }

    .footer-left p{
        margin-left:0;
        max-width:100%;
        font-size:15px;
        line-height:28px;
    }

    .social-icons{
        justify-content:center;
        margin-left:0;
        flex-wrap:wrap;
    }

    .social-icons i{
        width:42px;
        height:42px;
        font-size:18px;
    }

    .social-icons span{
        font-size:15px;
    }

    .footer-right{
        flex-direction:column;
        gap:25px;
        text-align:center;
    }

    .footer-box{
        min-width:100%;
    }

    .footer-box h3::after{
        left:50%;
        transform:translateX(-50%);
    }

    .footer-box h3 a{
        font-size:20px;
    }

    .footer-box p{
        line-height:32px;
    }

    .footer-copy{
        margin-top:25px;
        font-size:13px;
    }

    .pc-credit-line{
        padding:15px;
    }

    .pc-credit-line p{
        font-size:13px;
        line-height:22px;
    }

/* ==========================
   ABOUT PAGE MOBILE VIEW
========================== */

/* ABOUT BANNER */

.about-banner{
    height:320px;
    margin-top:0;
}

.about-banner-content{
    padding:15px;
}

.about-banner-content h2{
    font-size:28px;
    margin-bottom:10px;
}

.about-banner-content p{
    font-size:14px;
    line-height:24px;
    margin-bottom:20px;
}

.consultation-btn{
    padding:12px 25px;
    font-size:14px;
}

/* ABOUT SECTION */

.about{
    min-height:auto;
}

.about-info{
    flex-direction:column;
    padding:35px 15px;
}

.about-left,
.about-right{
    width:100%;
}

.about-left h2{
    font-size:28px;
    padding-left:0;
    text-align:center;
}

.about-left p{
    font-size:14px;
    line-height:24px;
    padding:0;
    text-align:center;
}

.about-left ul{
    padding-left:0;
    margin-top:20px;
}

.about-left ul li{
    font-size:14px;
    line-height:28px;
}

.about-right{
    margin-top:25px;
}

.about-right img{
    width:100%;
    height:250px;
    max-width:100%;
}

/* COUNTER TIMELINE */

.count{
    min-height:auto;
    padding-bottom:40px;
}

.icon-heading h3{
    font-size:20px;
    padding:20px 10px 10px;
}

.icon-heading p{
    font-size:13px;
    padding:0 15px;
    line-height:22px;
}

.icons{
    gap:10px;
    flex-wrap:wrap;
}

.icons i{
    font-size:18px;
    padding:10px;
}

/* TIMELINE */

.down-icons{
    flex-direction:column;
    gap:20px;
    margin:30px 0;
}

.line{
    width:3px;
    height:40px;
}

.down-iconline,
.small-icon{
    width:55px;
    height:55px;
    padding: 0px 0px;
    margin: 0px 30px;
}

.down-iconline i,
.small-icon i{
    font-size:18px;
}

.icon-text{
    position:static;
    opacity:1;
    visibility:visible;
    transform:none;
    margin-top:10px;
    font-size:12px;
    padding:8px 15px;
    white-space:normal;
}

/* CLIENT COUNTER SECTION */

.counter-section{
    width:100%;
    padding:50px 15px;
}

.counter-heading{
    margin-bottom:35px;
    margin-right:35px ;
}

.counter-heading h2{
    font-size:28px;
}

.counter-heading p{
    font-size:14px;
    line-height:24px;
}

.counter-container{
    gap:15px;
    margin-right: 31px;
}

.counter-box{
    width:100%;
    max-width:300px;
    height:auto;
    padding:25px 15px;
}

.icon{
    width:65px;
    height:65px;
}

.icon i{
    font-size:24px;
}

.counter-box h2{
    font-size:38px;
    margin:15px 0 8px;
}

.counter-box p{
    font-size:15px;
}


/* ABOUT MOBILE VEIW CLOSE */

/* ==========================
   SERVICE PAGE MOBILE VIEW
========================== */

/* SERVICE BANNER */

.service-banner{
    height:250px;
    margin:0;
}

.ser-banner img{
    height:250px;
    width:100%;
    object-fit:cover;
}

/* SERVICES SECTION */

.my-services-section{
    padding:50px 15px;
}

.my-section-title{
    font-size:28px;
    line-height:1.3;
}

.my-section-subtitle{
    font-size:14px;
    margin-bottom:30px;
    line-height:24px;
}

.my-services-grid{
    gap:20px;
}

.my-service-card{
    width:100%;
    max-width:340px;
    height:auto;
}

.my-service-card img{
    height:200px;
}

.my-service-content{
    padding:20px 15px;
}

.my-service-content h3{
    font-size:22px;
    margin-bottom:10px;
}

.my-service-content p{
    font-size:14px;
    line-height:24px;
    margin-bottom:20px;
}

.my-service-btn{
    padding:10px 22px;
    font-size:14px;
}

/* REVIEWS SECTION */

.client-reviews-section{
    padding:50px 15px;
}

.client-review-heading{
    font-size:28px;
}

.client-review-subheading{
    font-size:14px;
    line-height:24px;
    margin-bottom:25px;
}

.clientReviewSwiper{
    padding:10px 35px;
    overflow: hidden;
}

 .clientReviewSwiper .swiper-slide{
        width:100% !important;
    }


.client-review-card{
    padding:20px 15px;
    width:100%;
    box-sizing:border-box;
}

.client-review-card p{
    font-size:14px;
    line-height:24px;
}

.client-review-card h4{
    font-size:16px;
}

.client-stars{
    font-size:18px;
}

/* ARROWS */

.client-next,
.client-prev{
    width:35px;
    height:35px;
}

.client-next::after,
.client-prev::after{
    font-size:14px;
}

/* SERVICE MOBILE CLOSE */


/* ==========================
   GRAPHIC PAGE MOBILE VIEW
========================== */

/* BANNER */

.graphic-banner{
    height:250px;
}

.gd-banner img{
    height:250px;
}

/* SERVICES SECTION */

.services-section{
    padding:50px 15px;
}

.section-title{
    margin-bottom:35px;
}

.section-title h2{
    font-size:28px;
    margin-bottom:10px;
}

.section-title p{
    font-size:14px;
    line-height:24px;
}

/* SERVICE GRID */

.services-grid{
    grid-template-columns:1fr;
    gap:20px;
}

.service-box{
    padding:20px 15px;
}

.service-box img{
    width:110px;
    height:110px;
    margin-bottom:12px;
}

.service-box h3{
    font-size:20px;
    margin-bottom:10px;
}

.service-box p{
    font-size:14px;
    line-height:24px;
}

/* PURCHASE SECTION */

.container{
    padding:0 15px;
}

.gfx-services-area{
    padding:50px 0;
}

.gfx-heading{
    margin-bottom:35px;
}

.gfx-heading h2{
    font-size:28px;
    margin-bottom:10px;
}

.gfx-heading p{
    font-size:14px;
    line-height:24px;
}

/* CARD GRID */

.gfx-service-wrapper{
    grid-template-columns:1fr;
    gap:20px;
}

/* CARD */

.gfx-card{
    width:100%;
}

.gfx-card img{
    height:200px;
}

.gfx-card h3{
    font-size:20px;
    padding:15px 15px 8px;
}

.gfx-card p{
    font-size:14px;
    line-height:24px;
    padding:0 15px;
}

.gfx-price{
    font-size:22px;
    padding:12px 15px;
}

.total{
    font-size:18px;
    padding:0 15px 12px;
}

.gfx-card input,
.gfx-card button{
    width:calc(100% - 30px);
    margin:0 15px 12px;
}

.gfx-card input{
    font-size:14px;
    padding:10px;
}

.gfx-card button{
    font-size:14px;
    padding:12px;
}

/* GRAPHIC PAGE MOBILE CLOSE */

/* WEB PAGE MOBILE OPEN */

    .wdp-section{
        padding:50px 15px;
    }

    .wdp-header{
        margin-bottom:35px;
    }

    .wdp-header h2{
        font-size:28px;
        line-height:1.3;
        margin-bottom:10px;
    }

    .wdp-header p{
        font-size:14px;
        line-height:1.7;
        padding:0 5px;
    }

    .wdp-grid{
        grid-template-columns:1fr;
        gap:20px;
    }

    .wdp-card{
        width:100%;
        max-width:100%;
        border-radius:18px;
        padding-bottom:20px;
    }

    .wdp-card img{
        height:190px;
    }

    .wdp-card h3{
        font-size:20px;
        margin:15px 12px 8px;
    }

    .wdp-card p{
        font-size:14px;
        line-height:1.6;
        min-height:auto;
        padding:0 12px;
    }

    .wdp-price{
        font-size:24px;
        margin:12px 0;
    }

    .wdp-qty{
        width:80px;
        padding:8px;
        font-size:14px;
    }

    .wdp-total{
        font-size:17px;
        margin-bottom:15px;
    }

    .wdp-btn{
        width:90%;
        padding:12px;
        font-size:14px;
        border-radius:30px;
    }

/* WEB PAGE MOBILE OPEN */

/* TESTIMONIAL MOBILE PAGE OPEN */

    /* HERO */

    .testi-hero{
        min-height:80vh;
        height:auto;
        padding:60px 15px;
    }

    .testi-badge{
        font-size:13px;
        padding:10px 18px;
        margin-bottom:18px;
    }

    .testi-content h1{
        font-size:34px;
        line-height:1.25;
        margin-bottom:15px;
    }

    .testi-content p{
        font-size:14px;
        line-height:1.7;
    }

    .testi-buttons{
        margin-top:25px;
        display:flex;
        flex-direction:column;
        gap:12px;
        align-items:center;
    }

    .testi-btn,
    .testi-btn-outline{
        width:90%;
        max-width:280px;
        padding:13px 20px;
        font-size:14px;
        margin:0;
    }

    /* REVIEW SECTION */

    .pc-client-reviews{
        padding:60px 15px;
    }

    .pc-section-title{
        margin-bottom:35px;
    }

    .pc-section-title h2{
        font-size:28px;
        line-height:1.3;
    }

    .pc-review-grid{
        grid-template-columns:1fr;
        gap:20px;
    }

    .pc-review-card{
        padding:20px;
        border-radius:18px;
    }

    .pc-review-card h3{
        font-size:20px;
    }

    .pc-review-card p{
        font-size:14px;
        line-height:1.7;
    }

    .pc-stars{
        font-size:18px;
    }

    .pc-review-card::after{
        font-size:50px;
    }

    /* FEATURE PROJECTS */

    .pc-feature-projects{
        padding:60px 15px;
    }

    .pc-project-wrap{
        grid-template-columns:1fr;
        gap:20px;
    }

    .pc-project-card{
        padding:25px 20px;
        border-radius:18px;
    }

    .pc-project-card h3{
        font-size:22px;
    }

    .pc-project-card p{
        font-size:14px;
        line-height:1.7;
    }

    .pc-project-card::after{
        font-size:50px;
    }

    /* CLIENT LOGOS */

    .pc-client-logo-wall{
        padding:60px 15px;
    }

    .pc-logo-row{
        gap:25px;
    }

    .pc-logo-row img{
        height:45px;
        max-width:120px;
        object-fit:contain;
    }

    /* WHY CHOOSE US */

    .pc-why-clients{
        padding:60px 15px;
    }

    .pc-why-grid{
        grid-template-columns:1fr;
        gap:18px;
    }

    .pc-why-card{
        padding:18px 15px;
        border-radius:18px;
    }

    .pc-why-card h4{
        font-size:16px;
        line-height:1.5;
    }

    /* TIMELINE */

    .pc-work-timeline{
        padding:60px 15px;
    }

    .pc-time-wrap{
        gap:12px;
    }

    .pc-time-box{
        width:100%;
        text-align:center;
        padding:14px;
        font-size:14px;
        border-radius:14px;
    }

    /* FINAL CTA */

    .pc-final-cta{
        padding:70px 15px;
    }

    .pc-final-cta h2{
        font-size:30px;
        line-height:1.4;
        margin-bottom:25px;
    }

    .pc-final-cta a{
        width:90%;
        max-width:260px;
        padding:14px 20px;
        font-size:14px;
    }

/* TESTIMONNILA MOBILE CLOSE  */

/* ================= CONTACT + PORTFOLIO MOBILE ================= */

    /* ================= CONTACT HERO ================= */

    .contact-hero{
        min-height:auto;
        padding:70px 15px;
    }

    .contact-badge{
        font-size:13px;
        padding:10px 18px;
        margin-bottom:18px;
    }

    .contact-hero-content h1{
        font-size:34px;
        line-height:1.3;
        margin-bottom:15px;
    }

    .contact-hero-content p{
        font-size:14px;
        line-height:1.7;
    }

    .contact-buttons{
        display:flex;
        flex-direction:column;
        align-items:center;
        gap:12px;
        margin-top:25px;
    }

    .hero-btn,
    .hero-btn-outline{
        width:90%;
        max-width:280px;
        margin:0;
        padding:13px 20px;
        font-size:14px;
    }

    /* ================= CONTACT SECTION ================= */

    .future-contact{
        padding:50px 15px;
        min-height:auto;
    }

    .contact-content{
        flex-direction:column;
        gap:35px;
    }

    .contact-left,
    .contact-right{
        width:100%;
    }

    .contact-tag{
        font-size:13px;
        padding:8px 16px;
    }

    .contact-left h1{
        font-size:34px;
        margin:18px 0;
        line-height:1.3;
    }

    .contact-left p{
        font-size:14px;
        line-height:1.7;
    }

    .contact-cards{
        margin-top:25px;
    }

    .contact-card{
        padding:15px;
        gap:12px;
        border-radius:15px;
    }

    .contact-card:hover{
        transform:none;
    }

    .contact-card i{
        font-size:22px;
    }

    .contact-card h4{
        font-size:16px;
        margin-bottom:3px;
    }

    .contact-card p{
        font-size:13px;
    }

    .contact-form{
        padding:20px;
        gap:15px;
        border-radius:18px;
    }

    .contact-form input,
    .contact-form textarea{
        padding:14px;
        font-size:14px;
        box-sizing:border-box;
    }

    .contact-form textarea{
        height:120px;
    }

    .contact-form button{
        padding:14px;
        font-size:15px;
    }

    /* ================= PORTFOLIO ================= */

    .about-portfolio{
        padding:50px 15px;
    }

    .about-wrapper{
        flex-direction:column;
        gap:25px;
    }

    .about-image,
    .about-content{
        width:100%;
        flex:none;
    }

    .about-image img{
        border-radius:15px;
    }

    .about-content h2{
        font-size:28px;
        line-height:1.3;
        margin-bottom:12px;
    }

    .about-content p{
        font-size:14px;
        line-height:1.7;
        margin-bottom:12px;
    }

    .about-content h3{
        font-size:20px;
        margin-top:15px;
    }

    .about-content ul{
        padding-left:18px;
    }

    .about-content ul li{
        font-size:14px;
        line-height:1.7;
        margin-bottom:6px;
    }

    .btn{
        display:block;
        width:fit-content;
        padding:12px 22px;
        font-size:14px;
        margin-top:18px;
    }

}

/* ************************************ MOBILE CLOSE ********************************* */

/* ************************************ TABLET OPEN ********************************* */
/* ================= TABLET VIEW ================= */

@media screen and (min-width:769px) and (max-width:1024px){

    /* NAVBAR */

    .nav{
        padding:15px 25px;
        min-height:80px;
    }

    .logo{
        width:100px;
    }

    .menu{
        gap:20px;
    }

    .menu li a{
        font-size:15px;
        padding:8px 12px;
    }

    .contact-no{
        font-size:14px;
    }

    /* BANNER */

    .home-banner{
        height:550px;
    }

    .overlay{
        width:80%;
    }

    .overlay h1{
        font-size:42px;
        line-height:52px;
    }

    .overlay p{
        font-size:17px;
        line-height:28px;
    }

    .overlay button{
        padding:12px 28px;
        font-size:15px;
    }

    /* WELCOME SECTION */

    .home-heading{
        padding:60px 30px;
    }

    .main-heading h1{
        font-size:38px;
    }

    .content{
        gap:30px;
        align-items:center;
    }

    .left,
    .right{
        width:50%;
    }

    .p1{
        font-size:30px;
        line-height:42px;
    }

    .p2{
        font-size:16px;
        line-height:30px;
    }

    .right img{
        width:100%;
        max-width:400px;
        height:auto;
    }

    /* SERVICES */

    .home-mini-service{
        padding:60px 25px;
        gap:25px;
    }

    .home-service-preview{
        font-size:36px;
    }

    .home-service-box{
        width:45%;
        max-width:360px;
    }

    .home-service-image{
        height:220px;
    }

    .home-service-box h2,
    .home-service-box h3{
        font-size:22px;
    }

    .home-service-box p{
        font-size:15px;
        line-height:26px;
    }

    /* FOOTER */

    .last-part{
        padding:60px 25px 35px;
    }

    .last-details{
        gap:35px;
    }

    .footer-left{
        width:45%;
    }

    .footer-right{
        width:55%;
        gap:30px;
    }

    .footer-left h2{
        font-size:30px;
    }

    .footer-left img{
        width:150px;
    }

    .footer-left p{
        font-size:15px;
        line-height:28px;
    }

    .social-icons i{
        width:45px;
        height:45px;
        font-size:18px;
    }

    .footer-box h3 a{
        font-size:18px;
    }

    .footer-box p{
        font-size:15px;
        line-height:28px;
    }

    .footer-copy{
        font-size:14px;
    }

    .pc-credit-line p{
        font-size:14px;
    }

     /* ==========================
   ABOUT PAGE TABLET VIEW
========================== */


    /* ABOUT BANNER */

    .about-banner{
        height:450px;
    }

    .about-banner-content{
        padding:25px;
    }

    .about-banner-content h2{
        font-size:42px;
        margin-bottom:15px;
    }

    .about-banner-content p{
        font-size:17px;
        line-height:30px;
        margin-bottom:25px;
    }

    .consultation-btn{
        padding:14px 30px;
        font-size:15px;
    }

    /* ABOUT SECTION */

    .about{
        min-height:auto;
    }

    .about-info{
        padding:60px 30px;
        gap:30px;
        align-items:center;
    }

    .about-left,
    .about-right{
        width:50%;
    }

    .about-left h2{
        font-size:36px;
        padding-left:0;
    }

    .about-left p{
        font-size:15px;
        line-height:28px;
        padding:0;
    }

    .about-left ul{
        margin-top:25px;
        padding-left:20px;
    }

    .about-left ul li{
        font-size:15px;
        line-height:32px;
    }

    .about-right img{
        width:100%;
        height:380px;
        object-fit:cover;
        border-radius:15px;
    }

    /* COUNTER TIMELINE */

    .count{
        padding:60px 20px;
    }

    .icon-heading h3{
        font-size:28px;
        padding-top:25px;
    }

    .icon-heading p{
        font-size:15px;
        line-height:26px;
        max-width:700px;
        margin:auto;
    }

    .icons{
        gap:20px;
    }

    .icons i{
        font-size:22px;
        padding:14px;
    }

    /* TIMELINE */

    .down-icons{
        gap:30px;
        flex-wrap:wrap;
        justify-content:center;
        margin:40px 0;
    }

    .line{
        width:60px;
        height:3px;
    }

    .down-iconline,
    .small-icon{
        width:70px;
        height:70px;
    }

    .down-iconline i,
    .small-icon i{
        font-size:22px;
    }

    .icon-text{
        font-size:13px;
        padding:10px 16px;
    }

    /* CLIENT COUNTER SECTION */

    .counter-section{
        width:100%;
        padding:70px 25px;
    }

    .counter-heading{
        margin-bottom:50px;
    }

    .counter-heading h2{
        font-size:38px;
    }

    .counter-heading p{
        font-size:16px;
        line-height:28px;
    }

    .counter-container{
        gap:20px;
        justify-content:center;
    }

    .counter-box{
        width:calc(50% - 15px);
        max-width:340px;
        padding:30px 20px;
    }

    .icon{
        width:75px;
        height:75px;
    }

    .icon i{
        font-size:28px;
    }

    .counter-box h2{
        font-size:46px;
        margin:18px 0 10px;
    }

    .counter-box p{
        font-size:16px;
    }

    /* ==========================
   SERVICE + GRAPHIC PAGE
   TABLET VIEW
========================== */

    /* ==========================
       SERVICE PAGE TABLET
    ========================== */

    /* SERVICE BANNER */

    .service-banner{
        height:400px;
    }

    .ser-banner img{
        height:400px;
        width:100%;
        object-fit:cover;
    }

    /* SERVICES SECTION */

    .my-services-section{
        padding:70px 25px;
    }

    .my-section-title{
        font-size:40px;
        line-height:1.3;
    }

    .my-section-subtitle{
        font-size:16px;
        line-height:28px;
        margin-bottom:45px;
    }

    .my-services-grid{
        gap:25px;
        justify-content:center;
    }

    .my-service-card{
        width:calc(50% - 15px);
        max-width:420px;
    }

    .my-service-card img{
        height:240px;
    }

    .my-service-content{
        padding:25px 20px;
    }

    .my-service-content h3{
        font-size:24px;
    }

    .my-service-content p{
        font-size:15px;
        line-height:28px;
    }

    .my-service-btn{
        padding:12px 26px;
        font-size:15px;
    }

    /* REVIEWS */

    .client-reviews-section{
        padding:70px 25px;
    }

    .client-review-heading{
        font-size:38px;
    }

    .client-review-subheading{
        font-size:16px;
        line-height:28px;
        margin-bottom:35px;
    }

    .clientReviewSwiper{
        padding:20px 50px;
    }

    .client-review-card{
        padding:30px 25px;
    }

    .client-review-card p{
        font-size:15px;
        line-height:28px;
    }

    .client-review-card h4{
        font-size:18px;
    }

    .client-stars{
        font-size:20px;
    }

    .client-next,
    .client-prev{
        width:42px;
        height:42px;
    }

    .client-next::after,
    .client-prev::after{
        font-size:16px;
    }


    /* ==========================
       GRAPHIC PAGE TABLET
    ========================== */

    /* BANNER */

    .graphic-banner{
        height:400px;
    }

    .gd-banner img{
        height:400px;
        width:100%;
        object-fit:cover;
    }

    /* SERVICES SECTION */

    .services-section{
        padding:70px 25px;
    }

    .section-title{
        margin-bottom:45px;
    }

    .section-title h2{
        font-size:40px;
        margin-bottom:15px;
    }

    .section-title p{
        font-size:16px;
        line-height:28px;
    }

    /* SERVICE GRID */

    .services-grid{
        grid-template-columns:repeat(2,1fr);
        gap:25px;
    }

    .service-box{
        padding:25px 20px;
    }

    .service-box img{
        width:130px;
        height:130px;
        margin-bottom:15px;
    }

    .service-box h3{
        font-size:22px;
        margin-bottom:12px;
    }

    .service-box p{
        font-size:15px;
        line-height:26px;
    }

    /* PURCHASE SECTION */

    .container{
        padding:0 25px;
    }

    .gfx-services-area{
        padding:70px 0;
    }

    .gfx-heading{
        margin-bottom:45px;
    }

    .gfx-heading h2{
        font-size:40px;
        margin-bottom:15px;
    }

    .gfx-heading p{
        font-size:16px;
        line-height:28px;
    }

    /* CARD GRID */

    .gfx-service-wrapper{
        grid-template-columns:repeat(2,1fr);
        gap:25px;
    }

    /* CARD */

    .gfx-card{
        width:100%;
    }

    .gfx-card img{
        height:240px;
    }

    .gfx-card h3{
        font-size:22px;
        padding:20px 20px 10px;
    }

    .gfx-card p{
        font-size:15px;
        line-height:26px;
        padding:0 20px;
    }

    .gfx-price{
        font-size:24px;
        padding:15px 20px;
    }

    .total{
        font-size:20px;
        padding:0 20px 15px;
    }

    .gfx-card input,
    .gfx-card button{
        width:calc(100% - 40px);
        margin:0 20px 15px;
    }

    .gfx-card input{
        font-size:15px;
        padding:12px;
    }

    .gfx-card button{
        font-size:15px;
        padding:14px;
    }

/* ==========================
   WEB PAGE TABLET VIEW
========================== */

    .wdp-section{
        padding:70px 25px;
    }

    .wdp-header{
        margin-bottom:50px;
    }

    .wdp-header h2{
        font-size:40px;
        line-height:1.3;
        margin-bottom:15px;
    }

    .wdp-header p{
        font-size:16px;
        line-height:1.8;
        max-width:750px;
        margin:auto;
    }

    .wdp-grid{
        grid-template-columns:repeat(2,1fr);
        gap:25px;
    }

    .wdp-card{
        width:100%;
        border-radius:22px;
        padding-bottom:25px;
    }

    .wdp-card img{
        height:240px;
    }

    .wdp-card h3{
        font-size:24px;
        margin:18px 18px 10px;
    }

    .wdp-card p{
        font-size:15px;
        line-height:1.8;
        padding:0 18px;
    }

    .wdp-price{
        font-size:30px;
        margin:15px 0;
    }

    .wdp-qty{
        width:90px;
        padding:10px;
        font-size:15px;
    }

    .wdp-total{
        font-size:19px;
        margin-bottom:18px;
    }

    .wdp-btn{
        width:85%;
        padding:14px;
        font-size:15px;
    }


/* ==========================
   TESTIMONIAL PAGE TABLET VIEW
========================== */

    /* HERO */

    .testi-hero{
        min-height:90vh;
        padding:80px 25px;
    }

    .testi-badge{
        font-size:14px;
        padding:12px 22px;
        margin-bottom:22px;
    }

    .testi-content h1{
        font-size:52px;
        line-height:1.2;
        margin-bottom:20px;
    }

    .testi-content p{
        font-size:16px;
        line-height:1.8;
        max-width:750px;
        margin:auto;
    }

    .testi-buttons{
        margin-top:35px;
        gap:15px;
        justify-content:center;
    }

    .testi-btn,
    .testi-btn-outline{
        padding:15px 30px;
        font-size:15px;
    }

    /* REVIEW SECTION */

    .pc-client-reviews{
        padding:80px 25px;
    }

    .pc-section-title{
        margin-bottom:45px;
    }

    .pc-section-title h2{
        font-size:40px;
    }

    .pc-review-grid{
        grid-template-columns:repeat(2,1fr);
        gap:25px;
    }

    .pc-review-card{
        padding:25px;
        border-radius:22px;
    }

    .pc-review-card h3{
        font-size:22px;
    }

    .pc-review-card p{
        font-size:15px;
        line-height:1.8;
    }

    .pc-stars{
        font-size:20px;
    }

    .pc-review-card::after{
        font-size:60px;
    }

    /* FEATURE PROJECTS */

    .pc-feature-projects{
        padding:80px 25px;
    }

    .pc-project-wrap{
        grid-template-columns:repeat(2,1fr);
        gap:25px;
    }

    .pc-project-card{
        padding:30px 25px;
        border-radius:22px;
    }

    .pc-project-card h3{
        font-size:24px;
    }

    .pc-project-card p{
        font-size:15px;
        line-height:1.8;
    }

    .pc-project-card::after{
        font-size:60px;
    }

    /* CLIENT LOGOS */

    .pc-client-logo-wall{
        padding:80px 25px;
    }

    .pc-logo-row{
        gap:40px;
    }

    .pc-logo-row img{
        height:60px;
        max-width:160px;
    }

    /* WHY CHOOSE US */

    .pc-why-clients{
        padding:80px 25px;
    }

    .pc-why-grid{
        grid-template-columns:repeat(2,1fr);
        gap:20px;
    }

    .pc-why-card{
        padding:22px 18px;
        border-radius:20px;
    }

    .pc-why-card h4{
        font-size:18px;
    }

    /* TIMELINE */

    .pc-work-timeline{
        padding:80px 25px;
    }

    .pc-time-wrap{
        gap:18px;
        flex-wrap:wrap;
        justify-content:center;
    }

    .pc-time-box{
        width:220px;
        padding:18px;
        font-size:15px;
        border-radius:16px;
    }

    /* FINAL CTA */

    .pc-final-cta{
        padding:100px 25px;
    }

    .pc-final-cta h2{
        font-size:42px;
        line-height:1.4;
        margin-bottom:30px;
    }

    .pc-final-cta a{
        padding:16px 35px;
        font-size:15px;
    }


/* ==========================
   CONTACT + PORTFOLIO
   TABLET VIEW
========================== */

    /* ================= CONTACT HERO ================= */

    .contact-hero{
        padding:90px 25px;
        min-height:85vh;
    }

    .contact-badge{
        font-size:14px;
        padding:12px 22px;
        margin-bottom:22px;
    }

    .contact-hero-content h1{
        font-size:52px;
        line-height:1.2;
        margin-bottom:20px;
    }

    .contact-hero-content p{
        font-size:16px;
        line-height:1.8;
        max-width:750px;
        margin:auto;
    }

    .contact-buttons{
        margin-top:35px;
        gap:15px;
        justify-content:center;
        flex-wrap:wrap;
    }

    .hero-btn,
    .hero-btn-outline{
        padding:15px 32px;
        font-size:15px;
        margin:0;
    }

    /* ================= CONTACT SECTION ================= */

    .future-contact{
        padding:80px 25px;
    }

    .contact-content{
        gap:35px;
        align-items:flex-start;
    }

    .contact-left,
    .contact-right{
        width:50%;
    }

    .contact-tag{
        font-size:14px;
        padding:10px 18px;
    }

    .contact-left h1{
        font-size:42px;
        margin:20px 0;
        line-height:1.3;
    }

    .contact-left p{
        font-size:15px;
        line-height:1.8;
    }

    .contact-cards{
        margin-top:30px;
    }

    .contact-card{
        padding:18px;
        gap:15px;
        border-radius:18px;
    }

    .contact-card i{
        font-size:24px;
    }

    .contact-card h4{
        font-size:17px;
    }

    .contact-card p{
        font-size:14px;
    }

    .contact-form{
        padding:28px;
        gap:18px;
        border-radius:22px;
    }

    .contact-form input,
    .contact-form textarea{
        padding:15px;
        font-size:15px;
    }

    .contact-form textarea{
        height:140px;
    }

    .contact-form button{
        padding:15px;
        font-size:16px;
    }

    /* ================= PORTFOLIO ================= */

    .about-portfolio{
        padding:80px 25px;
    }

    .about-wrapper{
        gap:35px;
        align-items:center;
    }

    .about-image,
    .about-content{
        width:50%;
        flex:1;
    }

    .about-image img{
        border-radius:20px;
    }

    .about-content h2{
        font-size:38px;
        line-height:1.3;
        margin-bottom:15px;
    }

    .about-content p{
        font-size:15px;
        line-height:1.8;
        margin-bottom:15px;
    }

    .about-content h3{
        font-size:24px;
        margin-top:20px;
    }

    .about-content ul{
        padding-left:22px;
    }

    .about-content ul li{
        font-size:15px;
        line-height:1.8;
        margin-bottom:8px;
    }

    .btn{
        display:inline-block;
        padding:14px 28px;
        font-size:15px;
        margin-top:20px;
    }


}

/* ************************************ TABLET CLOSE ********************************* */
