/*=========================================
MASTER KEY V4
=========================================*/

:root{

    --primary:#22c55e;
    --primary-dark:#16a34a;

    --dark:#111111;
    --text:#222222;
    --gray:#666666;

    --light:#f7f8fa;
    --white:#ffffff;

    --radius:18px;

    --transition:.35s;

    --shadow:
        0 15px 40px rgba(0,0,0,.08);

}

/*=========================================
RESET
=========================================*/

*{

    margin:0;
    padding:0;
    box-sizing:border-box;

}

html{

    scroll-behavior:smooth;

}

body{

    font-family:"Cairo",sans-serif;

    background:var(--light);

    color:var(--text);

    line-height:1.8;

    overflow-x:hidden;

}

img{

    display:block;
    max-width:100%;

}

a{

    text-decoration:none;
    color:inherit;

}

ul{

    list-style:none;

}

/*=========================================
CONTAINER
=========================================*/

.container{

    width:min(92%,1280px);

    margin:auto;

}

/*=========================================
HEADER
=========================================*/

.header{

    position:sticky;

    top:0;

    z-index:999;

    background:rgba(255,255,255,.96);

    backdrop-filter:blur(12px);

    box-shadow:0 5px 25px rgba(0,0,0,.05);

}

.header .container{

    display:grid;

    grid-template-columns:220px 1fr 220px;

    align-items:center;

    height:82px;

}

.logo{

    display:flex;

    justify-content:center;

    align-items:center;

}

.logo img{

    height:65px;

    transition:var(--transition);

}

.logo img:hover{

    transform:scale(1.05);

}

/*=========================================
BUTTONS
=========================================*/

.btn{

    display:inline-flex;

    justify-content:center;

    align-items:center;

    min-width:180px;

    height:58px;

    border-radius:999px;

    font-size:19px;

    font-weight:700;

    transition:var(--transition);

}

.btn.green{

    background:var(--primary);

    color:#fff;

}

.btn.dark{

    background:var(--dark);

    color:#fff;

}

.btn:hover{

    transform:translateY(-4px);

    box-shadow:0 18px 35px rgba(0,0,0,.15);

}

/*=========================================
HERO
=========================================*/

.hero{

    background:#fff;

    padding:90px 0;

}

.hero-container{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    align-items:center;

    gap:70px;

}

.hero-content{

    text-align:right;

}

.badge{

    display:inline-flex;

    justify-content:center;

    align-items:center;

    background:var(--primary);

    color:#fff;

    padding:10px 24px;

    border-radius:999px;

    font-size:15px;

    font-weight:700;

    margin-bottom:25px;

}

.hero h1{

    font: size 11px;

    line-height:1;

    font-weight:800;

    color:var(--dark);

    margin-bottom:15px;

}

.hero p{

    font-size:23px;

    color:var(--gray);

    margin-bottom:10px;

}

.hero-buttons{

    display:flex;

    gap:18px;

    flex-wrap:wrap;

}

.hero-image{

    display:flex;

    justify-content:center;

    align-items:center;

}

.hero-image img{

    width:100%;

    max-width:560px;

    border-radius:28px;

    box-shadow:0 25px 60px rgba(0,0,0,.15);

}

/*=========================================
TRUST BAR
=========================================*/

.trust{

    margin-top:60px;

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:22px;

}

.trust-item{

    background:#fff;

    border-radius:18px;

    padding:22px;

    text-align:center;

    box-shadow:var(--shadow);

}

.trust-item h3{

    color:var(--primary);

    font-size:30px;

    margin-bottom:8px;

}

.trust-item p{

    color:var(--gray);

    font-size:15px;

}

/*=========================================
MOBILE
=========================================*/

@media(max-width:768px){

.header{

    padding:8px 0;

}

.header .container{

    grid-template-columns:1fr;

    height:auto;

    gap:8px;

    padding:8px 0;

}

.logo{

    order:-1;

}

.logo img{

    height:38px;

}

.header .btn{

    width:180px;

    min-width:180px;

    height:40px;

    font-size:13px;

    margin:auto;

}

.hero{

    padding:20px 0 40px;

}

.hero-container{

    grid-template-columns:1fr;

    gap:20px;

}

.hero-content{

    text-align:center;

}

.badge{

    font-size:13px;

    padding:8px 18px;

    margin-bottom:15px;

}

.hero h1{

    font-size:17px;

    line-height:1.3;

    margin-bottom:15px;

}

.hero p{

    font-size:17px;

    margin-bottom:10px;

}

.hero-buttons{

    flex-direction:column;

    align-items:center;

    gap:12px;

}

.hero-buttons .btn{

    width:100%;

    max-width:260px;

    height:46px;

    font-size:15px;

}

.hero-image img{

    max-width:320px;

}

.trust{

    grid-template-columns:repeat(2,1fr);

    gap:15px;

    margin-top:35px;

}

.trust-item{

    padding:16px;

}

.trust-item h3{

    font-size:24px;

}

.trust-item p{

    font-size:13px;

}

}
/*=========================================
SECTION TITLE
=========================================*/

.section-title{

    text-align:center;

    margin-bottom:60px;

}

.section-title span{

    display:inline-block;

    background:var(--primary);

    color:#fff;

    padding:10px 24px;

    border-radius:999px;

    font-size:15px;

    font-weight:700;

    margin-bottom:18px;

}

.section-title h2{

    font-size:42px;

    color:var(--dark);

    font-weight:800;

    margin-bottom:18px;

}

.section-title p{

    max-width:760px;

    margin:auto;

    font-size:19px;

    color:var(--gray);

}

.section-title.white h2,
.section-title.white p{

    color:#fff;

}

/*=========================================
FEATURES
=========================================*/

.features{

    padding:90px 0;

    background:var(--light);

}

.features .container{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

}

.feature-card{

    background:#fff;

    border-radius:var(--radius);

    padding:35px 25px;

    text-align:center;

    box-shadow:var(--shadow);

    transition:var(--transition);

}

.feature-card:hover{

    transform:translateY(-8px);

}

.feature-card .icon{

    font-size:48px;

    margin-bottom:20px;

}

.feature-card h3{

    font-size:24px;

    color:var(--dark);

    margin-bottom:15px;

}

.feature-card p{

    font-size:17px;

    color:var(--gray);

    line-height:1.8;

}

/*=========================================
SERVICES
=========================================*/

.services{

    padding:100px 0;

    background:#fff;

}

.services-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}

.service-card{

    background:var(--light);

    border-radius:var(--radius);

    padding:35px;

    text-align:center;

    transition:var(--transition);

}

.service-card:hover{

    transform:translateY(-8px);

    box-shadow:var(--shadow);

}

.service-icon{

    width:80px;

    height:80px;

    margin:0 auto 25px;

    border-radius:50%;

    background:var(--primary);

    color:#fff;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:34px;

}

.service-card h3{

    font-size:24px;

    color:var(--dark);

    margin-bottom:18px;

}

.service-card p{

    font-size:17px;

    color:var(--gray);

    line-height:1.8;

}

/*=========================================
RESPONSIVE
=========================================*/

@media(max-width:992px){

.features .container{

    grid-template-columns:repeat(2,1fr);

}

.services-grid{

    grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.section-title{

    margin-bottom:40px;

}

.section-title span{

    font-size:13px;

    padding:8px 18px;

}

.section-title h2{

    font-size:28px;

    line-height:1.3;

}

.section-title p{

    font-size:16px;

    line-height:1.7;

}

.features,
.services{

    padding:60px 0;

}

.features .container,
.services-grid{

    grid-template-columns:1fr;

    gap:20px;

}

.feature-card,
.service-card{

    padding:24px 20px;

}

.feature-card .icon{

    font-size:40px;

    margin-bottom:16px;

}

.service-icon{

    width:70px;

    height:70px;

    font-size:30px;

    margin-bottom:20px;

}

.feature-card h3,
.service-card h3{

    font-size:20px;

    margin-bottom:12px;

}

.feature-card p,
.service-card p{

    font-size:15px;

    line-height:1.7;

}

}
/*=========================================
WHY US
=========================================*/

.why-us{

    padding:100px 0;
    background:var(--dark);

}

.why-grid{

    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;

}

.why-card{

    background:rgba(255,255,255,.06);

    border:1px solid rgba(255,255,255,.08);

    border-radius:var(--radius);

    padding:35px;

    text-align:center;

    transition:var(--transition);

}

.why-card:hover{

    transform:translateY(-8px);

    background:rgba(255,255,255,.10);

}

.why-icon{

    width:80px;
    height:80px;

    margin:0 auto 25px;

    border-radius:50%;

    background:var(--primary);

    color:#fff;

    display:flex;
    justify-content:center;
    align-items:center;

    font-size:34px;

}

.why-card h3{

    color:#fff;
    font-size:24px;
    margin-bottom:18px;

}

.why-card p{

    color:rgba(255,255,255,.82);

    font-size:17px;

    line-height:1.8;

}

/*=========================================
GALLERY
=========================================*/

.gallery{

    padding:100px 0;
    background:var(--light);

}

.gallery-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:25px;

}

.gallery-grid img{

    width:100%;

    height:300px;

    object-fit:cover;

    border-radius:22px;

    box-shadow:var(--shadow);

    transition:var(--transition);

    cursor:pointer;

}

.gallery-grid img:hover{

    transform:scale(1.03);

}

/*=========================================
TESTIMONIALS
=========================================*/

.testimonials{

    padding:100px 0;

    background:#fff;

}

.testimonial-card{

    background:var(--light);

    border-radius:var(--radius);

    padding:35px;

    text-align:center;

    box-shadow:var(--shadow);

    transition:var(--transition);

}

.testimonial-card:hover{

    transform:translateY(-8px);

}

.stars{

    color:#f5b301;

    font-size:24px;

    margin-bottom:18px;

}

.testimonial-card p{

    color:var(--gray);

    font-size:17px;

    line-height:1.9;

    margin-bottom:20px;

}

.testimonial-card h4{

    color:var(--dark);

    font-size:22px;

}

/*=========================================
SWIPER
=========================================*/

.testimonialsSwiper{

    overflow:hidden;

}

.testimonialsSwiper .swiper-slide{

    height:auto;

}

@media(min-width:768px){

.testimonialsSwiper .swiper-wrapper{

    display:grid !important;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

    transform:none !important;

}

.testimonialsSwiper .swiper-slide{

    width:auto !important;

}

}

@media(max-width:767px){

.testimonialsSwiper{

    overflow:hidden;

}

.testimonialsSwiper .swiper-slide{

    width:85%;

}

}

/*=========================================
RESPONSIVE
=========================================*/

@media(max-width:992px){

.why-grid{

    grid-template-columns:repeat(2,1fr);

}

.gallery-grid{

    grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.why-us,
.gallery{

    padding:60px 0;

}

.testimonials{

    padding:1px 0 60px;

}

.why-grid,
.gallery-grid{

    grid-template-columns:1fr;

    gap:20px;

}

.why-card,
.testimonial-card{

    padding:24px 20px;

}

.why-icon{

    width:70px;
    height:70px;

    font-size:30px;

    margin-bottom:18px;

}

.why-card h3{

    font-size:20px;

}

.why-card p,
.testimonial-card p{

    font-size:15px;

    line-height:1.7;

}

.testimonial-card h4{

    font-size:18px;

}

.stars{

    font-size:20px;

}

.gallery-grid img{

    height:230px;

}

}
/*=========================================
CONTACT
=========================================*/

.contact{

    padding:100px 0;
    background:var(--primary);
    color:#fff;

}

.contact .section-title h2,
.contact .section-title p{

    color:#fff;

}

.contact .section-title span{

    background:#fff;
    color:var(--primary);

}

.contact-box{

    display:flex;
    justify-content:center;
    gap:25px;
    flex-wrap:wrap;
    margin-top:40px;

}

.contact-btn{

    width:240px;
    height:60px;

    display:flex;
    justify-content:center;
    align-items:center;

    border-radius:999px;

    background:#fff;
    color:var(--primary);

    font-size:20px;
    font-weight:700;

    transition:var(--transition);

}

.contact-btn.whatsapp{

    background:#111;
    color:#fff;

}

.contact-btn:hover{

    transform:translateY(-5px);

}

.service-area{

    margin-top:50px;
    text-align:center;

}

.service-area h3{

    font-size:28px;
    margin-bottom:15px;

}

.service-area p{

    font-size:20px;

}

/*=========================================
FOOTER
=========================================*/

.footer{

    background:#111;
    color:#fff;
    text-align:center;
    padding:60px 0;

}

.footer-logo{

    width:90px;
    margin:0 auto 20px;

}

.footer h3{

    font-size:28px;
    margin-bottom:15px;

}

.footer p{

    color:#ccc;
    margin-bottom:10px;

}

.copyright{

    margin-top:25px;
    font-size:15px;

}

/*=========================================
FLOATING BUTTONS
=========================================*/

.floating-call,
.floating-whatsapp{

    position:fixed;

    right:20px;

    width:56px;
    height:56px;

    display:flex;
    justify-content:center;
    align-items:center;

    border-radius:50%;

    color:#fff;

    font-size:24px;

    box-shadow:0 10px 25px rgba(0,0,0,.25);

    transition:var(--transition);

    z-index:999;

}

.floating-call{

    bottom:90px;
    background:#111;

}

.floating-whatsapp{

    bottom:20px;
    background:#25D366;

}

.floating-call:hover,
.floating-whatsapp:hover{

    transform:scale(1.08);

}

/*=========================================
GLOBAL RESPONSIVE
=========================================*/

@media(max-width:992px){

.contact-box{

    flex-direction:column;
    align-items:center;

}

.contact-btn{

    width:100%;
    max-width:320px;

}

}

@media(max-width:768px){

.contact{

    padding:60px 0;

}

.contact-box{

    gap:15px;

}

.contact-btn{

    height:48px;
    max-width:260px;

    font-size:16px;

}

.service-area{

    margin-top:35px;

}

.service-area h3{

    font-size:22px;

}

.service-area p{

    font-size:16px;
    line-height:1.7;

}

.footer{

    padding:40px 0;

}

.footer-logo{

    width:70px;

}

.footer h3{

    font-size:22px;

}

.footer p{

    font-size:15px;

}

.copyright{

    font-size:13px;

}

.floating-call,
.floating-whatsapp{

    width:50px;
    height:50px;

    font-size:22px;

    right:15px;

}

.floating-call{

    bottom:80px;

}

.floating-whatsapp{

    bottom:15px;

}

}
/* ===== Mobile Header Horizontal ===== */

@media (max-width:768px){

    .header{

        padding:6px 0;

    }

    .header .container{

        display:grid;

        grid-template-columns:1fr auto 1fr;

        align-items:center;

        gap:8px;

        height:60px;

        padding:0;

    }

    .logo{

        order:0;

        justify-content:center;

    }

    .logo img{

        height:32px;

    }

    .header .btn{

        min-width:unset;

        width:100%;

        height:38px;

        font-size:12px;

        padding:0 10px;

    }

    .btn.dark{

        justify-self:end;

    }

    .btn.green{

        justify-self:start;

    }

}
/*==================================================
                TOP TRUST BAR
==================================================*/

.top-trust-bar{

    width:100%;
    background:#ffffff;
    border-bottom:2px solid #22c55e;

    overflow:hidden;

    box-shadow:0 2px 10px rgba(0,0,0,.04);

    position:relative;
    z-index:100;

}

.top-trust-track{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:55px;

    height:42px;

    white-space:nowrap;

    color:#222;

    font-size:13px;

    font-weight:600;

}

.top-trust-track span{

    display:flex;

    align-items:center;

    gap:8px;

}

.top-trust-track i{

    color:#22c55e;

    font-size:15px;

}

/*=========================
        Desktop
==========================*/

@media(min-width:769px){

    .top-trust-track{

        animation:none;

    }

}

/*=========================
        Mobile
==========================*/

@media(max-width:768px){

    .top-trust-bar{

        height:34px;

    }

    .top-trust-track{

        justify-content:flex-start;

        width:max-content;

        gap:40px;

        height:34px;

        font-size:11px;

        animation:trustBar 22s linear infinite;

    }

    .top-trust-track i{

        font-size:12px;

    }

}

/*=========================
        Animation
==========================*/

.top-trust-track{
    animation: trustBar 22s linear infinite;
}

@keyframes trustBar {

    0% {
        transform: translateX(-20%);
    }

    100% {
        transform: translateX(100%);
    }

}

/* إيقاف الحركة عند مرور الماوس */

@media(min-width:769px){

    .top-trust-track:hover{

        animation-play-state:paused;

    }

}