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

.hero{

    position:relative;
    min-height:92vh;
    display:flex;

    align-items:center;

    overflow:hidden;
    animation:heroZoom 22s ease-in-out infinite alternate;
    background:
    linear-gradient(rgba(20,30,70,.75),rgba(20,30,70,.75)),
    url("../images/hero.jpg") center/cover no-repeat;

}

/* طبقة خفيفة */

.hero::after{

    content:"";

    position:absolute;

    inset:0;

    background:linear-gradient(
        180deg,
        rgba(0,0,0,.05),
        rgba(0,0,0,.35)
    );

}

.hero-container{

    width:min(1200px,92%);

    margin:auto;

    display:grid;

    grid-template-columns:1.1fr .9fr;

    align-items:center;

    gap:90px;

    padding-top:80px;

    position:relative;

    z-index:2;

}

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

.hero-content h4{

    color:var(--secondary);

    font-size:18px;

    margin-bottom:18px;

    font-weight:700;

    letter-spacing:1px;

}

.hero-content h1{

    color:#fff;

    font-size:68px;

    font-weight:900;

    line-height:1.2;

    margin-bottom:28px;

    text-shadow:0 8px 30px rgba(0,0,0,.35);

}

.hero-content p{

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

    font-size:20px;

    line-height:2;

    margin-bottom:45px;

    max-width:560px;

}

.hero-content{

    animation:heroText 1s ease;

}

@keyframes heroText{

    from{

        opacity:0;

        transform:translateX(-60px);

    }

    to{

        opacity:1;

        transform:translateX(0);

    }

}
@keyframes heroZoom{

0%{
background-size:100%;
}

100%{
background-size:105%;
}

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

.hero-buttons{

    display:flex;

    gap:18px;

    flex-wrap:wrap;

}

.hero-buttons .btn{

    min-width:180px;

    justify-content:center;
    padding:18px 42px;
    font-size:17px;
    font-weight:700;

}

/*==============================
Hero Image
==============================*/

.hero-image{

    display:flex;

    justify-content:center;

    align-items:center;

}

.hero-image img{

    width:100%;

    max-width:650px;

    border-radius:30px;
    box-shadow:0 35px 80px rgba(0,0,0,.35);
    animation:heroFloat 5s ease-in-out infinite;
    object-fit:cover;
    transition:.5s;

}
@keyframes heroFloat{

0%{

transform:translateY(0);

}

50%{

transform:translateY(-15px);

}

100%{

transform:translateY(0);

}

}

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

@media(max-width:992px){

.hero{

text-align:center;

padding-top:120px;

}

.hero-container{

grid-template-columns:1fr;

}

.hero-content h1{

font-size:42px;

}

.hero-content p{

margin:auto auto 35px;

}

.hero-buttons{

justify-content:center;

}

.hero-image{

margin-top:40px;

}

}

@media(max-width:576px){

.hero-content h1{

font-size:34px;

}

.hero-content p{

font-size:17px;

}

.hero-buttons{

flex-direction:column;

}

.hero-buttons .btn{

width:100%;

}

}
/*==================================================
                ABOUT SECTION
==================================================*/

.about-home{

    background:#fff;

}

.about-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:70px;

    align-items:center;

}

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

.about-image{

    position:relative;

}

.about-image img{

width:100%;

height:560px;

object-fit:cover;

border-radius:24px;

box-shadow:var(--shadow);

}
.about-image:hover img{

transform:scale(1.03);

}

.about-badge{

    position:absolute;

    bottom:25px;

    left:25px;

    background:var(--secondary);

    color:#fff;

    padding:20px 28px;

    border-radius:18px;

    text-align:center;

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

}

.about-badge h3{

    font-size:34px;

    font-weight:900;

}

.about-badge span{

    font-size:15px;

}

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

.about-content span{

    color:var(--secondary);

    font-weight:700;

    letter-spacing:1px;

}

.about-content h2{

    color:var(--primary);

    font-size:42px;

    margin:18px 0;

    line-height:1.4;

}

.about-content p{

    color:var(--light);

    font-size:17px;

    line-height:2;

    margin-bottom:20px;

}/*==============================
Features
==============================*/

.about-features{

    display:grid;

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

    gap:18px;

    margin:35px 0;

}

.about-features li{

    display:flex;

    align-items:center;

    gap:12px;

    background:#fff;

    padding:18px;

    border-radius:15px;

    box-shadow:0 5px 20px rgba(0,0,0,.05);

    transition:.35s;

}

.about-features li:hover{

    transform:translateY(-6px);

}

.about-features i{

    width:48px;

    height:48px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:rgba(212,160,23,.12);

    color:var(--secondary);

    font-size:20px;

}
@media(max-width:992px){

.about-grid{

grid-template-columns:1fr;

}

.about-content{

text-align:center;

}

.about-features{

grid-template-columns:1fr;

}

.about-badge{

left:50%;

transform:translateX(-50%);

}

}
/*==================================================
                SERVICES
==================================================*/

.services{

    background:var(--section);

}

.services-grid{

    display:grid;

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

    gap:30px;

}

/*==============================
Service Card
==============================*/

.service-card{

    background:#fff;
    height:100%;
    border-radius:25px;

    padding:40px 30px;

    text-align:center;

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

    transition:.4s;

    position:relative;

    overflow:hidden;

}

.service-card::before{

    content:"";

    position:absolute;

    top:0;

    right:0;

    width:100%;

    height:5px;

    background:var(--secondary);

    transform:scaleX(0);

    transition:.4s;

}

.service-card:hover::before{

    transform:scaleX(1);

}

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

}

.service-icon{

    width:85px;

    height:85px;

    margin:auto;

    margin-bottom:25px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:rgba(212,160,23,.12);

    color:var(--secondary);

    font-size:34px;

    transition:.35s;

}

.service-card:hover .service-icon{

    background:var(--secondary);

    color:#fff;

    transform:rotateY(180deg);

}

.service-card h3{

    color:var(--primary);

    font-size:24px;

    margin-bottom:15px;

}

.service-card p{

    color:var(--light);

    line-height:2;

    font-size:16px;

}
/*==============================
Service Button
==============================*/

.service-link{

    display:inline-flex;

    align-items:center;

    gap:8px;

    margin-top:25px;

    color:var(--secondary);

    font-weight:700;

    transition:.35s;

}

.service-link:hover{

    gap:15px;

}

.service-link i{

    transition:.35s;

}
@media(max-width:992px){

.services-grid{

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

}

}

@media(max-width:768px){

.services-grid{

grid-template-columns:1fr;

}

.service-card{

padding:35px 25px;

}

}
/*==================================================
                STATISTICS
==================================================*/

.statistics{

    background:
    linear-gradient(rgba(31,43,108,.92),rgba(31,43,108,.92)),
    url("../images/p10.jpg") center/cover fixed;

    padding:90px 0;

}

.stats-grid{

    display:grid;

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

    gap:30px;

}

.stat-card{

    text-align:center;

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

    backdrop-filter:blur(10px);

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

    border-radius:22px;

    padding:40px 20px;

    transition:.35s;
    cursor:pointer;
}

.stat-card:hover{

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

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

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

}

.stat-icon{

    width:80px;

    height:80px;

    margin:auto;

    margin-bottom:25px;

    border-radius:50%;

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

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:42px;

    color:var(--secondary);

}

.stat-card h2{

    color:#fff;

    font-size:54px;

    font-weight:900;

    margin-bottom:10px;

}

.stat-card span{

    color:#fff;

    font-size:18px;

}
@media(max-width:992px){

.stats-grid{

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

}

}

@media(max-width:768px){

.stats-grid{

grid-template-columns:1fr;

}

.stat-card h2{

font-size:40px;

}

}
/*==================================================
                PROJECTS
==================================================*/

.projects{

    background:#fff;

}

.projects-grid{

    display:grid;

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

    gap:30px;

}

.project-card{

    position:relative;

    overflow:hidden;

    border-radius:22px;

    box-shadow:var(--shadow);

    cursor:pointer;

    transition:.45s;

}

.project-card img{

    width:100%;

    height:340px;

    object-fit:cover;

    transition:.6s;

}

.project-overlay{

    position:absolute;

    inset:0;

  background:linear-gradient(
transparent 20%,
rgba(0,0,0,.92)
);

    display:flex;

    align-items:flex-end;

    padding:30px;

    opacity:0;

    transition:.45s;

}

.project-card:hover img{

    transform:scale(1.12);
    
}
.project-card:hover{

transform:translateY(-10px);

}

.project-card:hover .project-overlay{

    opacity:1;

}

.project-info h3{

    color:#fff;

    font-size:25px;

    margin-bottom:12px;

}

.project-info p{

    color:#ddd;

    line-height:1.9;

}
.projects-btn{

    margin-top:60px;

    text-align:center;

}
@media(max-width:992px){

.projects-grid{

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

}

}

@media(max-width:768px){

.projects-grid{

grid-template-columns:1fr;

}

.project-card img{

height:280px;

}

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

.cta{

padding:140px 0;
background-attachment:fixed;
background:

linear-gradient(rgba(31,43,108,.9),rgba(31,43,108,.9)),

url("../images/hero.jpg") center/cover;

text-align:center;


}
@media(max-width:768px){

.cta{

background-attachment:scroll;

}

}
.cta h2{

color:#fff;

font-size:48px;

margin-bottom:20px;

font-weight:900;

}

.cta p{

color:#ddd;

font-size:19px;

max-width:700px;

margin:auto;

line-height:2;

margin-bottom:40px;

}

.cta .btn{

margin:0 10px;

}

@media(max-width:768px){

.cta h2{

font-size:34px;

}

.cta p{

font-size:17px;

}

}
/*==================================================
                FEATURES STRIP
==================================================*/

.features-strip{

    background:#fff;

    padding:80px 0;

}

.features-grid{

    display:grid;

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

    gap:30px;

}

.feature-box{

    background:#fff;

    border-radius:22px;

    padding:35px 25px;

    text-align:center;

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

    transition:.35s;

}

.feature-box:hover{

transform:translateY(-10px) rotate(3deg) scale(1.03);

}

.feature-box i{

    width:75px;

    height:75px;

    margin:auto;

    margin-bottom:20px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:rgba(212,160,23,.12);

    color:var(--secondary);

    font-size:30px;
    transition:.35s;

}

.feature-box h3{

    color:var(--primary);

    margin-bottom:15px;

    font-size:24px;

}

.feature-box p{

    color:var(--light);

    line-height:1.9;

    font-size:16px;

}

@media(max-width:992px){

.features-grid{

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

}

}

@media(max-width:768px){

.features-grid{

grid-template-columns:1fr;

}

}
/*=========================================
Projects Filter
=========================================*/

.projects-filter{

display:flex;

justify-content:center;

gap:15px;

flex-wrap:wrap;

margin-bottom:50px;

}

.projects-filter button{

padding:12px 28px;

border:none;

background:#f5f5f5;

border-radius:50px;

cursor:pointer;

font-size:16px;

font-weight:700;

transition:.35s;

}

.projects-filter button:hover,

.projects-filter .active{

background:var(--secondary);

color:#fff;

}
/*==============================
Project Button
==============================*/

.project-btn{

display:inline-flex;

align-items:center;

gap:10px;

margin-top:18px;

padding:10px 22px;

background:var(--secondary);

color:#fff;

border-radius:50px;

font-weight:700;

font-size:15px;

transition:.35s;

}

.project-btn:hover{

background:#fff;

color:var(--primary);

gap:18px;

}

.project-info{

transform:translateY(35px);

transition:.45s;

}

.project-card:hover .project-info{

transform:translateY(0);

}

.project-card{

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

}
/*==============================
Project Shine Effect
==============================*/

.project-card::before{

content:"";

position:absolute;

top:0;

left:-120%;

width:60%;

height:100%;

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

transform:skewX(-25deg);

transition:.8s;

z-index:2;

pointer-events:none;

}

.project-card:hover::before{

left:150%;

}