:root{

    /* Primary Brand */

    --primary:#d62828;
    --primary-dark:#a4161a;
    --secondary:#f77f00;

    /* Background */

    --light:#fff5f5;
    --light-red:#ffe5e5;

    /* Accent */

    --accent:#ffd166;

    /* Text */

    --text-dark:#222222;
    --text-light:#666666;

    /* Borders */

    --border:#f1d5d5;

    /* Gradient */

    --gradient:
    linear-gradient(
        135deg,
        #d62828 0%,
        #f77f00 100%
    );

    /* Shadows */

    --shadow:
    0 15px 40px rgba(214,40,40,.18);

}


* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
    overflow-x: hidden;
}

body {
    font-family: 'Cairo', sans-serif;
    background: #fff;
    direction: rtl;
}

a {
    text-decoration: none;
}

ul {
    list-style: none;
}

.container {
    width: 90%;
    margin: auto;
}

/* =========================
   HEADER
========================= */

.header{
    position:fixed;
    width:100%;
    top:0;
    right:0;
    z-index:1111;

    background:#ffffff;

    padding:10px 0;

    box-shadow:
        0 2px 15px rgba(124,58,237,0.08);

    transition:
        background .3s ease,
        box-shadow .3s ease,
        padding .3s ease;
}

.header .container{
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.logo{
    display:flex;
    align-items:center;
    gap:12px;
}

.logo img{
    width:70px;
    height:70px;

    border-radius:50%;

    object-fit:cover;

    border:2px solid var(--light-purple);
}

.logo-text h2{
    color:var(--primary);

    font-size:18px;
    font-weight:500;
}

.logo-text p{
    color:#7c7c7c;

    font-size:14px;
}

.nav-links{
    display:flex;
    align-items:center;
    gap:35px;
}

.nav-links li a{
    color:#333;

    font-size:18px;
    font-weight:600;

    transition:.3s ease;
}

.nav-links li a:hover{
    color:var(--primary);
}

.header-btn{
    background:var(--gradient);

    color:#fff;

    padding:10px 18px;

    border-radius:12px;

    font-size:14px;
    font-weight:600;

    display:flex;
    align-items:center;
    gap:10px;

    box-shadow:
        0 10px 25px rgba(124,58,237,0.25);

    transition:.3s ease;
}

.header-btn:hover{
    transform:translateY(-3px);

    box-shadow:
        0 15px 35px rgba(124,58,237,0.35);
}

.menu-toggle{
    display:none;

    font-size:28px;

    cursor:pointer;

    color:var(--primary);
}

/* =========================
   HEADER SCROLLED
========================= */

.header.scrolled{
    background:
        rgba(255,255,255,0.95);

    backdrop-filter:
        blur(14px);

    padding:14px 0;

    box-shadow:
        0 10px 30px rgba(124,58,237,0.12);
}

/* ==========================
   HERO
========================== */

.hero{
    position:relative;
    min-height:100vh;
    display:flex;
    align-items:center;
    overflow:hidden;
    direction:rtl;
padding: 100px 40px;
    background-image:url("../images/سطحة\ مكة\ المكرمة.png");
    background-size:cover;
    background-position:center;
}
/*=========================================
 HERO OVERLAY
=========================================*/

.hero-overlay{

    position:absolute;
    inset:0;

    background:
    linear-gradient(
        90deg,
        rgba(255,255,255,.97) 0%,
        rgba(255,251,248,.94) 22%,
        rgba(255,241,232,.78) 45%,
        rgba(255,214,170,.25) 65%,
        rgba(255,255,255,0) 85%
    );

    z-index:1;

}

/*=========================================
 LEFT RED GLOW
=========================================*/

.hero::before{

    content:"";

    position:absolute;

    width:850px;
    height:850px;

    left:-340px;
    top:-180px;

    border-radius:50%;

    background:
    radial-gradient(
        circle,
        rgba(214,40,40,.25) 0%,
        rgba(247,127,0,.18) 40%,
        rgba(255,209,102,.10) 60%,
        transparent 78%
    );

    filter:blur(8px);

    z-index:1;

}

/*=========================================
 RIGHT ORANGE GLOW
=========================================*/

.hero::after{

    content:"";

    position:absolute;

    width:700px;
    height:700px;

    right:-250px;
    bottom:-250px;

    border-radius:50%;

    background:
    radial-gradient(
        circle,
        rgba(247,127,0,.18) 0%,
        rgba(255,209,102,.12) 45%,
        transparent 72%
    );

    filter:blur(10px);

    z-index:1;

}

/*=========================================
 CONTENT
=========================================*/

.hero-content{

    position:relative;

    z-index:3;

    width:100%;

    display:flex;

    justify-content:flex-start;

}

.hero-left{

    max-width:60%;

    margin-right:auto;

    text-align:right;

}

/*=========================================
 BADGE
=========================================*/

.hero-badge{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    height:36px;

    padding:0 24px;

    border-radius:50px;

    background:linear-gradient(
        135deg,
        #d62828,
        #f77f00
    );

    color:#fff;

    font-size:14px;

    font-weight:700;

    letter-spacing:.3px;

    box-shadow:
    0 10px 25px rgba(214,40,40,.25);

    margin-bottom:28px;

}

/*=========================================
 TITLE
=========================================*/

.hero h1{

    font-size:clamp(56px,5vw,72px);

    line-height:.95;

    font-weight:900;

    color:#b91c1c;

    margin-bottom:20px;

}

.hero h1 span{

    display:block;

    color:#f77f00;

}

/*=========================================
 PARAGRAPH
=========================================*/

.hero p{

    font-size:clamp(18px,1.4vw,20px);

    line-height:1.8;

    max-width:80%;

    margin-bottom:20px;

    color:#444;

}


/*=========================================
FEATURES
=========================================*/

.hero-features{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:20px;

    margin-bottom:20px;

}

.feature{

    position:relative;

    text-align:center;

}

.feature:not(:last-child)::after{

    content:"";

    position:absolute;

    left:-10px;

    top:15px;

    width:1px;

    height:45px;

    background:#f2c9c9;

}

.feature i{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    width:55px;

    height:55px;

    border-radius:50%;

    margin-bottom:14px;

    font-size:22px;

    color:#d62828;

    background:#fff3f0;

    box-shadow:

    0 10px 25px rgba(214,40,40,.12);

}

.feature span{

    display:block;

    font-size:17px;

    font-weight:700;

    color:#333;

    line-height:1.5;

}

/*=========================================
BUTTONS
=========================================*/

.hero-buttons{

    display:flex;

    gap:18px;

    flex-wrap:wrap;

}

.btn{

    height:54px;

    min-width:210px;

    padding:0 30px;

    display:flex;

    align-items:center;

    justify-content:center;

    gap:12px;

    border-radius:60px;

    font-size:17px;

    font-weight:700;

    text-decoration:none;

    transition:all .35s ease;

}

/* WhatsApp */

.whatsapp-btn{

    background:#25D366;

    color:#fff;

    box-shadow:

    0 15px 30px rgba(37,211,102,.25);

}

.whatsapp-btn:hover{

    background:#1EBE5D;

    transform:translateY(-4px);

}

/* Call Button */

.call-btn{

    background:linear-gradient(
        135deg,
        #d62828,
        #f77f00
    );

    color:#fff;

    border:none;

    box-shadow:

    0 15px 30px rgba(214,40,40,.25);

}

.call-btn:hover{

    transform:translateY(-4px);

    box-shadow:

    0 20px 40px rgba(214,40,40,.35);

}

/* Icons */

.btn i{

    font-size:18px;

}



/*=========================================
 SERVICES SECTION
=========================================*/

.services-section{

    position:relative;

    padding:130px 0;

    background:
    linear-gradient(
        to bottom,
        #fffdfb,
        #fff4ef
    );

}

/*=========================================
 SECTION TITLE
=========================================*/

.section-title{

    text-align:center;

    margin-bottom:80px;

}

.sub-title{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:12px 28px;

    border-radius:50px;

    background:#fff4ef;

    color:#d62828;

    border:1px solid #ffd8c9;

    font-size:15px;

    font-weight:800;

    letter-spacing:.4px;

    margin-bottom:24px;

}

.section-title h2{

    font-size:clamp(38px,5vw,68px);

    color:#222;

    font-weight:900;

    line-height:1.3;

    margin-bottom:25px;

    position:relative;

}

.section-title h2::after{

    content:"";

    position:absolute;

    right:50%;

    bottom:-18px;

    transform:translateX(50%);

    width:90px;

    height:5px;

    border-radius:30px;

    background:linear-gradient(
        135deg,
        #d62828,
        #f77f00
    );

}

.section-title p{

    max-width:900px;

    margin:38px auto 0;

    color:#666;

    font-size:20px;

    line-height:2;

}

/*=========================================
 SERVICES GRID
=========================================*/

.services-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:32px;

}

/*=========================================
 SERVICE CARD
=========================================*/

.service-card{

    background:#fff;

    border-radius:28px;

    padding:40px;

    position:relative;

    overflow:hidden;

    border:1px solid #ffe0d5;

    box-shadow:

    0 15px 40px rgba(214,40,40,.08);

    transition:.35s;

}

.service-card:hover{

    transform:translateY(-10px);

    box-shadow:

    0 25px 55px rgba(214,40,40,.16);

}

.service-card::before{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:5px;

    background:linear-gradient(
        135deg,
        #d62828,
        #f77f00
    );

}

/*=========================================
 SERVICE ICON
=========================================*/

.service-icon{

    width:90px;

    height:90px;

    border-radius:24px;

    display:flex;

    align-items:center;

    justify-content:center;

    margin-bottom:30px;

    background:linear-gradient(
        135deg,
        #d62828,
        #f77f00
    );

    box-shadow:

    0 15px 35px rgba(214,40,40,.25);

    transition:.35s;

}

.service-card:hover .service-icon{

    transform:rotate(-6deg) scale(1.08);

}

.service-icon i{

    color:#fff;

    font-size:38px;

}

/*=========================================
 TEXT
=========================================*/

.service-card h3{

    font-size:34px;

    font-weight:900;

    color:#222;

    margin-bottom:18px;

}

.service-card p{

    color:#666;

    font-size:19px;

    line-height:1.9;

    margin-bottom:35px;

}

/*=========================================
 FOOTER
=========================================*/

.service-footer{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding-top:22px;

    border-top:1px solid #ffe6dd;

}

.service-footer span{

    color:#d62828;

    font-size:17px;

    font-weight:700;

}

.service-footer i{

    color:#f77f00;

    font-size:12px;

}

/* =========================
   FLOATING BUTTONS
========================= */

.floating-buttons{
    position:fixed;

    right:20px;
    bottom:30px;

    display:flex;
    flex-direction:column;

    gap:14px;

    z-index:1111;
}

.float-btn{
    width:58px;
    height:58px;

    border-radius:50%;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#fff;

    font-size:28px;

    box-shadow:
        0 10px 25px rgba(0,0,0,0.18);

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}

.float-btn:hover{
    transform:
        translateY(-4px)
        scale(1.08);
}

/* =========================
   WHATSAPP BUTTON
========================= */

.float-btn.whatsapp{
    background:
        linear-gradient(
            135deg,
            #11d669,
            #08b85a
        );

    box-shadow:
        0 12px 30px rgba(17,214,105,.35);
}

.float-btn.whatsapp:hover{
    box-shadow:
        0 18px 40px rgba(17,214,105,.45);
}

/* =========================
   CALL BUTTON
========================= */

.float-btn.call{
    background:var(--gradient);

    box-shadow:
        0 12px 30px rgba(124,58,237,.35);
}

.float-btn.call:hover{
    box-shadow:
        0 18px 40px rgba(124,58,237,.45);
}


/*=========================================
 WHY US SECTION
=========================================*/

.why-us-section{

    position:relative;

    padding:120px 0;

    overflow:hidden;

    background:
    linear-gradient(
        135deg,
        #a4161a 0%,
        #d62828 45%,
        #f77f00 100%
    );

}

/*=========================================
 BACKGROUND SHAPES
=========================================*/

.shape{

    position:absolute;

    border-radius:50%;

    background:rgba(255,255,255,.08);

    filter:blur(5px);

}

.shape-1{

    width:280px;
    height:280px;

    top:-120px;
    left:-90px;

}

.shape-2{

    width:240px;
    height:240px;

    bottom:-100px;
    right:-70px;

}

/*=========================================
 TITLE
=========================================*/

.white-title h2,
.white-title p{

    color:#fff;

}

.white-title h2::after{

    background:#ffd166;

}

/*=========================================
 GRID
=========================================*/

.features-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:28px;

    margin-top:70px;

}

/*=========================================
 CARD
=========================================*/

.feature-card{

    display:flex;

    align-items:flex-start;

    gap:20px;

    padding:32px;

    border-radius:24px;

    background:rgba(255,255,255,.10);

    border:1px solid rgba(255,255,255,.18);

    backdrop-filter:blur(14px);

    transition:.35s;

}

.feature-card:hover{

    transform:translateY(-10px);

    background:rgba(255,255,255,.15);

    border-color:rgba(255,209,102,.45);

    box-shadow:

    0 20px 45px rgba(0,0,0,.18);

}

/*=========================================
 ICON
=========================================*/

.feature-icon{

    min-width:72px;
    height:72px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:18px;

    background:rgba(255,255,255,.16);

}

.feature-icon i{

    font-size:30px;

    color:#ffd166;

}

/*=========================================
 TEXT
=========================================*/

.feature-content h3{

    color:#fff;

    font-size:28px;

    font-weight:800;

    margin-bottom:10px;

    line-height:1.4;

}

.feature-content p{

    color:rgba(255,255,255,.88);

    font-size:18px;

    line-height:1.8;

}

/*=========================================
 CTA
=========================================*/

.why-cta{

    text-align:center;

    margin-top:75px;

}

.cta-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:14px;

    min-width:420px;

    height:72px;

    padding:0 35px;

    border-radius:18px;

    background:#fff;

    color:#d62828;

    font-size:24px;

    font-weight:800;

    transition:.35s;

    box-shadow:

    0 18px 45px rgba(0,0,0,.18);

}

.cta-btn i{

    color:#f77f00;

}

.cta-btn:hover{

    transform:translateY(-6px);

    background:#fff8f4;

    box-shadow:

    0 25px 55px rgba(0,0,0,.22);

}


/*=========================================
PORTFOLIO SECTION
=========================================*/

.portfolio-section{

    padding:120px 0;

    background:
    linear-gradient(
        to bottom,
        #fffdfb,
        #fff4ef
    );

}

.portfolio-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:32px;

    margin-top:70px;

}

/*=========================================
CARD
=========================================*/

.portfolio-card{

    position:relative;

    overflow:hidden;

    border-radius:24px;

    min-height:430px;

    cursor:pointer;

    border:1px solid #ffe2d5;

    box-shadow:

    0 15px 40px rgba(214,40,40,.10);

    transition:.35s;

}

.portfolio-card:hover{

    transform:translateY(-10px);

    box-shadow:

    0 25px 55px rgba(214,40,40,.18);

}

.portfolio-card img{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.6s;

}

.portfolio-card:hover img{

    transform:scale(1.08);

}

/*=========================================
OVERLAY
=========================================*/

.portfolio-overlay{

    position:absolute;

    inset:0;

    background:linear-gradient(
        to top,
        rgba(20,20,20,.82),
        rgba(20,20,20,.20),
        transparent
    );

    z-index:1;

}

/*=========================================
TAG
=========================================*/

.portfolio-tag{

    position:absolute;

    top:20px;

    right:20px;

    z-index:3;

    padding:10px 22px;

    border-radius:50px;

    background:linear-gradient(
        135deg,
        #d62828,
        #f77f00
    );

    color:#fff;

    font-size:15px;

    font-weight:700;

    box-shadow:

    0 10px 25px rgba(214,40,40,.35);

}

/*=========================================
CONTENT
=========================================*/

.portfolio-content{

    position:absolute;

    right:28px;

    left:28px;

    bottom:28px;

    z-index:3;

}

.portfolio-content h3{

    color:#fff;

    font-size:38px;

    font-weight:800;

    margin-bottom:10px;

}

.portfolio-content span{

    color:rgba(255,255,255,.88);

    font-size:18px;

    line-height:1.7;

}

/*=========================================
RATING
=========================================*/

.portfolio-rating{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-top:20px;

}

.portfolio-rating small{

    color:#fff;

    font-size:16px;

}

.stars{

    display:flex;

    gap:5px;

}

.stars i{

    color:#FFD166;

    font-size:17px;

}

/*=========================================
BOTTOM TEXT
=========================================*/

.portfolio-bottom-text{

    text-align:center;

    margin-top:45px;

    font-size:19px;

    color:#555;

}

.portfolio-bottom-text strong{

    color:#d62828;

    font-weight:800;

}



/*=========================================
GALLERY SECTION
=========================================*/

.gallery-section{

    position:relative;

    padding:140px 0;

    overflow:hidden;

    background:
    linear-gradient(
        to bottom,
        #fffdfb,
        #fff4ef
    );

}

/*=========================================
SLIDER
=========================================*/

.gallery-slider{

    position:relative;

    width:100%;

    overflow:hidden;

    margin-top:80px;

    border-radius:32px;

}

/*=========================================
TRACK
=========================================*/

.gallery-track{

    display:flex;

    direction:ltr;

    width:100%;

    transition:transform .85s cubic-bezier(.77,0,.18,1);

    will-change:transform;

}

/*=========================================
ITEM
=========================================*/

.gallery-item{

    flex:0 0 100%;

    position:relative;

    overflow:hidden;

    height:60vh;

    border-radius:32px;

    isolation:isolate;

    border:1px solid #ffe3d6;

    box-shadow:
    0 20px 55px rgba(214,40,40,.12);

}

/*=========================================
IMAGE
=========================================*/

.gallery-item img{

    width:100%;
    height:100%;

    object-fit:cover;

    display:block;

    transition:transform 1.3s ease;

}

.gallery-item:hover img{

    transform:scale(1.06);

}

/*=========================================
OVERLAY
=========================================*/

.gallery-overlay{

    position:absolute;

    inset:0;

    z-index:2;

    background:
    linear-gradient(
        to top,
        rgba(15,15,15,.88),
        rgba(15,15,15,.28),
        transparent
    );

    display:flex;

    align-items:flex-end;

    padding:50px;

}

/*=========================================
CONTENT
=========================================*/

.gallery-content{

    max-width:700px;

}

.gallery-content h3{

    color:#fff;

    font-size:46px;

    font-weight:900;

    margin-bottom:12px;

    line-height:1.3;

}

.gallery-content span{

    color:rgba(255,255,255,.90);

    font-size:20px;

    line-height:1.9;

}

/*=========================================
NAVIGATION BUTTONS
=========================================*/

.gallery-btn{

    position:absolute;

    top:50%;

    transform:translateY(-50%);

    z-index:20;

    width:68px;
    height:68px;

    border:none;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    cursor:pointer;

    color:#fff;

    font-size:22px;

    background:rgba(214,40,40,.82);

    backdrop-filter:blur(12px);

    box-shadow:
    0 12px 30px rgba(214,40,40,.30);

    transition:all .3s ease;

}

.gallery-btn:hover{

    background:#f77f00;

    transform:translateY(-50%) scale(1.08);

}

.gallery-prev{

    right:24px;

}

.gallery-next{

    left:24px;

}

/*=========================================
DOTS
=========================================*/

.gallery-dots{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:12px;

    margin-top:35px;

}

.gallery-dot{

    width:14px;
    height:14px;

    border-radius:50%;

    background:#f6c5b7;

    cursor:pointer;

    transition:.35s ease;

}

.gallery-dot:hover{

    background:#f77f00;

}

.gallery-dot.active{

    width:42px;

    border-radius:30px;

    background:
    linear-gradient(
        135deg,
        #d62828,
        #f77f00
    );

}




/*=========================================
CTA SECTION
=========================================*/

.cta-section{

    position:relative;

    padding:120px 0;

    overflow:hidden;

    text-align:center;

    background:
    linear-gradient(
        135deg,
        #a4161a 0%,
        #d62828 45%,
        #f77f00 100%
    );

}

/*=========================================
BACKGROUND SHAPES
=========================================*/

.cta-shape{

    position:absolute;

    border-radius:50%;

    background:rgba(255,255,255,.08);

    filter:blur(6px);

}

.cta-shape-1{

    width:240px;
    height:240px;

    top:-70px;
    right:22%;

}

.cta-shape-2{

    width:180px;
    height:180px;

    bottom:-60px;
    left:18%;

}

/*=========================================
ICON
=========================================*/

.cta-icon{

    width:90px;
    height:90px;

    margin:auto auto 35px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:rgba(255,255,255,.14);

    backdrop-filter:blur(14px);

    box-shadow:
    0 12px 35px rgba(0,0,0,.15);

}

.cta-icon i{

    color:#FFD166;

    font-size:40px;

}

/*=========================================
CONTENT
=========================================*/

.cta-section h2{

    color:#fff;

    font-size:clamp(42px,5vw,72px);

    font-weight:900;

    line-height:1.25;

    margin-bottom:22px;

}

.cta-section p{

    max-width:900px;

    margin:0 auto 40px;

    color:rgba(255,255,255,.92);

    font-size:22px;

    line-height:1.9;

}

/*=========================================
PHONE
=========================================*/

.cta-phone{

    margin-bottom:45px;

}

.cta-phone a{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:12px;

    min-width:300px;

    height:75px;

    padding:0 30px;

    border-radius:18px;

    background:rgba(255,255,255,.14);

    border:1px solid rgba(255,255,255,.20);

    color:#fff;

    font-size:34px;

    font-weight:900;

    backdrop-filter:blur(12px);

    transition:.35s;

}

.cta-phone a:hover{

    transform:translateY(-5px);

    background:rgba(255,255,255,.22);

}

.cta-phone i{

    color:#FFD166;

    font-size:28px;

}

/*=========================================
BUTTONS
=========================================*/

.cta-buttons{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:20px;

    flex-wrap:wrap;

    margin-bottom:45px;

}

.cta-main-btn{

    min-width:280px;

    height:72px;

    display:flex;

    align-items:center;

    justify-content:center;

    gap:12px;

    border-radius:18px;

    font-size:24px;

    font-weight:800;

    transition:.35s;

}

/* WhatsApp */

.cta-main-btn.whatsapp-btn{

    background:#25D366;

    color:#fff;

    box-shadow:
    0 15px 35px rgba(37,211,102,.25);

}

.cta-main-btn.whatsapp-btn:hover{

    background:#1EBE5D;

    transform:translateY(-5px);

}

/* Call */

.call-btn-white{

    background:#fff;

    color:#d62828;

    box-shadow:
    0 15px 35px rgba(0,0,0,.16);

}

.call-btn-white i{

    color:#f77f00;

}

.call-btn-white:hover{

    transform:translateY(-5px);

    background:#fff8f4;

}

/*=========================================
FEATURES
=========================================*/

.cta-features{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:35px;

    flex-wrap:wrap;

}

.cta-feature{

    display:flex;

    align-items:center;

    gap:10px;

    color:#fff;

    font-size:18px;

    font-weight:700;

}

.cta-feature i{

    color:#FFD166;

    font-size:18px;

}



/*=========================================
FOOTER
=========================================*/

.footer{

    background:
    linear-gradient(
        135deg,
        #8b1111 0%,
        #c1121f 45%,
        #d62828 70%,
        #f77f00 100%
    );

    padding-top:90px;

    color:#fff;

    position:relative;

    overflow:hidden;

}

.footer::before{

    content:"";

    position:absolute;

    top:-150px;
    left:-150px;

    width:350px;
    height:350px;

    border-radius:50%;

    background:rgba(255,255,255,.05);

}

.footer::after{

    content:"";

    position:absolute;

    right:-120px;
    bottom:-120px;

    width:280px;
    height:280px;

    border-radius:50%;

    background:rgba(255,255,255,.04);

}

/*=========================================
GRID
=========================================*/

.footer-grid{

    display:grid;

    grid-template-columns:1.2fr 1fr 1fr;

    gap:70px;

    padding-bottom:55px;

    position:relative;

    z-index:2;

}

/*=========================================
LOGO
=========================================*/

.footer-logo{

    display:flex;

    align-items:center;

    gap:18px;

    margin-bottom:28px;

}

.footer-logo img{

    width:68px;
    height:68px;

    object-fit:cover;

    border-radius:50%;

    border:2px solid rgba(255,209,102,.35);

    background:#fff;

}

.footer-logo h3{

    font-size:36px;

    font-weight:900;

    margin-bottom:4px;

}

.footer-logo span{

    color:#FFD166;

    font-size:17px;

}

/*=========================================
DESCRIPTION
=========================================*/

.footer-desc{

    color:rgba(255,255,255,.85);

    font-size:20px;

    line-height:1.9;

    margin-bottom:35px;

}

/*=========================================
CONTACT
=========================================*/

.footer-contact{

    display:flex;

    flex-direction:column;

    gap:18px;

}

.footer-contact li{

    display:flex;

    align-items:center;

    gap:12px;

    font-size:20px;

}

.footer-contact li i{

    color:#FFD166;

    min-width:22px;

}

.footer-contact li a{

    color:#fff;

    transition:.3s;

}

.footer-contact li a:hover{

    color:#FFD166;

}

/*=========================================
TITLE
=========================================*/

.footer-title{

    font-size:34px;

    font-weight:800;

    margin-bottom:30px;

    padding-bottom:16px;

    position:relative;

}

.footer-title::after{

    content:"";

    position:absolute;

    bottom:0;
    right:0;

    width:90px;

    height:4px;

    border-radius:20px;

    background:linear-gradient(
        135deg,
        #FFD166,
        #f77f00
    );

}

/*=========================================
LINKS
=========================================*/

.footer-links{

    display:flex;

    flex-direction:column;

    gap:18px;

}

.footer-links li{

    color:rgba(255,255,255,.88);

    font-size:19px;

    padding-right:18px;

    position:relative;

}

.footer-links li::before{

    content:"";

    position:absolute;

    right:0;
    top:50%;

    transform:translateY(-50%);

    width:8px;
    height:8px;

    border-radius:50%;

    background:#FFD166;

}

.footer-links li a{

    color:inherit;

    transition:.3s;

}

.footer-links li:hover{

    color:#FFD166;

}

/*=========================================
AREAS
=========================================*/

.areas-text{

    color:rgba(255,255,255,.85);

    font-size:19px;

    line-height:1.8;

    margin-bottom:25px;

}

/*=========================================
WHATSAPP BUTTON
=========================================*/

.footer-whatsapp-btn{

    width:100%;

    height:70px;

    margin-top:35px;

    display:flex;

    align-items:center;

    justify-content:center;

    gap:12px;

    border-radius:16px;

    background:#25D366;

    color:#fff;

    font-size:24px;

    font-weight:800;

    box-shadow:

    0 15px 35px rgba(37,211,102,.28);

    transition:.35s;

}

.footer-whatsapp-btn:hover{

    background:#1EBE5D;

    transform:translateY(-5px);

}

/*=========================================
FOOTER BOTTOM
=========================================*/

.footer-bottom{

    display:flex;

    justify-content:space-between;

    align-items:center;

    flex-wrap:wrap;

    gap:20px;

    padding:30px 0;

    border-top:1px solid rgba(255,255,255,.12);

    position:relative;

    z-index:2;

}

.footer-bottom p,
.footer-bottom span{

    color:rgba(255,255,255,.75);

    font-size:17px;

}

/*=========================================
DEVELOPER
=========================================*/

.developer-box{

    border-top:1px solid rgba(255,255,255,.08);

    text-align:center;

    padding:22px 0;

    position:relative;

    z-index:2;

}

.developer-box p{

    color:rgba(255,255,255,.75);

    font-size:17px;

}

.developer-box a{

    color:#FFD166;

    font-weight:700;

    transition:.3s;

}

.developer-box a:hover{

    color:#fff;

}



/*=========================================
MAP SECTION
=========================================*/

.map-section{

    padding:120px 0;

    background:
    linear-gradient(
        to bottom,
        #fffdfb,
        #fff4ef
    );

}

/*=========================================
MAP WRAPPER
=========================================*/

.map-wrapper{

    margin-top:60px;

    overflow:hidden;

    border-radius:30px;

    border:8px solid #fff;

    box-shadow:
    0 18px 45px rgba(214,40,40,.12);

}

.map-wrapper iframe{

    width:100%;

    height:550px;

    border:none;

    display:block;

}

/*=========================================
MAP INFO
=========================================*/

.map-info{

    margin-top:55px;

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:28px;

}

/*=========================================
MAP CARD
=========================================*/

.map-card{

    background:#fff;

    display:flex;

    align-items:center;

    gap:20px;

    padding:30px;

    border-radius:22px;

    border:1px solid #ffe1d5;

    box-shadow:
    0 15px 35px rgba(214,40,40,.08);

    transition:all .35s ease;

}

.map-card:hover{

    transform:translateY(-8px);

    border-color:#f77f00;

    box-shadow:
    0 22px 45px rgba(214,40,40,.18);

}

/*=========================================
ICON
=========================================*/

.map-card i{

    width:75px;
    height:75px;

    min-width:75px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:20px;

    font-size:30px;

    color:#fff;

    background:
    linear-gradient(
        135deg,
        #d62828,
        #f77f00
    );

    box-shadow:
    0 12px 25px rgba(214,40,40,.25);

}

/*=========================================
TEXT
=========================================*/

.map-card h3{

    color:#222;

    font-size:28px;

    font-weight:800;

    margin-bottom:8px;

}

.map-card p{

    color:#666;

    font-size:18px;

    line-height:1.8;

}

.map-card p a{

    color:#d62828;

    font-weight:700;

    transition:.3s;

}

.map-card p a:hover{

    color:#f77f00;

}

/*=========================================
DEVELOPER BOX
=========================================*/

.developer-box{

    padding:25px 0 35px;

    text-align:center;

    border-top:1px solid rgba(255,255,255,.10);

}

.developer-box p{

    color:rgba(255,255,255,.75);

    font-size:16px;

    line-height:1.8;

}

.developer-box a{

    color:#FFD166;

    font-weight:700;

    transition:.3s;

}

.developer-box a:hover{

    color:#ffffff;

}



/*=========================================
THEME COLORS
=========================================*/

:root{

    --main-color:var(--primary);
    --secondary-color:var(--secondary);

}

/*=========================================
SMOOTH RENDERING
=========================================*/

html{
    scroll-behavior:smooth;
}

body{

    overflow-x:hidden;

    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;

    text-rendering:optimizeLegibility;

}

/*=========================================
GLOBAL TRANSITIONS
=========================================*/

a,
button,
.btn,
.service-card,
.feature-card,
.portfolio-card,
.map-card,
.stat-box{

    transition:all .35s ease;

}

/*=========================================
ANIMATIONS
=========================================*/

@keyframes fadeUp{

    from{
        opacity:0;
        transform:translateY(40px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}

@keyframes float{

    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-12px);
    }

}

/*=========================================
RED PULSE
=========================================*/

@keyframes pulseRed{

    0%{
        box-shadow:0 0 0 0 rgba(214,40,40,.45);
    }

    70%{
        box-shadow:0 0 0 20px rgba(214,40,40,0);
    }

    100%{
        box-shadow:0 0 0 0 rgba(214,40,40,0);
    }

}

/*=========================================
SHINE
=========================================*/

@keyframes shine{

    from{
        transform:translateX(-120%);
    }

    to{
        transform:translateX(120%);
    }

}

/*=========================================
GRADIENT TEXT
=========================================*/

.gradient-text{

    background:var(--gradient);

    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;

    background-clip:text;

}

/*=========================================
RED GLOW
=========================================*/

.red-glow{

    box-shadow:
        0 0 25px rgba(214,40,40,.22),
        0 0 50px rgba(247,127,0,.15);

}

/*=========================================
SCROLL ANIMATIONS
=========================================*/

.reveal{

    opacity:0;

    transform:translateY(80px);

    transition:opacity 1s ease,transform 1s ease;

}

.reveal.active{

    opacity:1;

    transform:translateY(0);

}

.reveal-left{

    opacity:0;

    transform:translateX(-100px);

    transition:1s ease;

}

.reveal-left.active{

    opacity:1;

    transform:translateX(0);

}

.reveal-right{

    opacity:0;

    transform:translateX(100px);

    transition:1s ease;

}

.reveal-right.active{

    opacity:1;

    transform:translateX(0);

}

.reveal-zoom{

    opacity:0;

    transform:scale(.88);

    transition:1s ease;

}

.reveal-zoom.active{

    opacity:1;

    transform:scale(1);

}

/*=========================================
HEADER
=========================================*/

.header.scrolled{

    background:rgba(255,255,255,.96);

    backdrop-filter:blur(15px);

    box-shadow:
        0 12px 30px rgba(214,40,40,.12);

}

/*=========================================
CARD HOVER EFFECT
=========================================*/

.service-card,
.feature-card,
.portfolio-card,
.map-card{

    position:relative;

    overflow:hidden;

}

.service-card::before,
.feature-card::before,
.map-card::before{

    content:"";

    position:absolute;

    inset:0;

    background:
    linear-gradient(
        135deg,
        rgba(214,40,40,.08),
        transparent
    );

    opacity:0;

    transition:.4s;

}

.service-card:hover::before,
.feature-card:hover::before,
.map-card:hover::before{

    opacity:1;

}

/*=========================================
WHATSAPP GLOW
=========================================*/

.whatsapp-btn,
.footer-whatsapp-btn,
.float-btn.whatsapp{

    animation:pulseGlow 2s infinite;

}

@keyframes pulseGlow{

    0%{
        box-shadow:0 0 0 0 rgba(37,211,102,.45);
    }

    70%{
        box-shadow:0 0 0 18px rgba(37,211,102,0);
    }

    100%{
        box-shadow:0 0 0 0 rgba(37,211,102,0);
    }

}

/*=========================================
FLOAT BUTTONS
=========================================*/

.float-btn{

    animation:floating 3s ease-in-out infinite;

}

.float-btn.call{

    animation-delay:1s;

}

@keyframes floating{

    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-10px);
    }

}

/*=========================================
HERO
=========================================*/

.hero-content h1,
.hero-content p,
.hero-buttons,
.stats{

    opacity:0;

    animation:heroFadeUp 1.2s ease forwards;

}

.hero-content p{

    animation-delay:.3s;

}

.hero-buttons{

    animation-delay:.6s;

}

.stats{

    animation-delay:.9s;

}

@keyframes heroFadeUp{

    from{

        opacity:0;

        transform:translateY(70px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

/*=========================================
PORTFOLIO IMAGE
=========================================*/

.portfolio-card img{

    transition:
        transform .8s ease,
        filter .8s ease;

}

.portfolio-card:hover img{

    transform:scale(1.10);

    filter:brightness(1.08);

}

/*=========================================
BUTTON SHINE
=========================================*/

.btn,
.cta-btn,
.cta-main-btn,
.header-btn{

    position:relative;

    overflow:hidden;

}

.btn::before,
.cta-btn::before,
.cta-main-btn::before,
.header-btn::before{

    content:"";

    position:absolute;

    top:0;
    right:-100%;

    width:100%;
    height:100%;

    background:rgba(255,255,255,.20);

    transition:.6s;

}

.btn:hover::before,
.cta-btn:hover::before,
.cta-main-btn:hover::before,
.header-btn:hover::before{

    right:100%;

}

/*=========================================
ACTIVE NAVIGATION
=========================================*/

.nav-links a.active{

    color:var(--primary);

    position:relative;

}

.nav-links a.active::after{

    content:"";

    position:absolute;

    right:0;
    bottom:-8px;

    width:100%;
    height:3px;

    border-radius:30px;

    background:var(--gradient);

}

/*=========================================
SCROLLBAR
=========================================*/

::-webkit-scrollbar{

    width:10px;

}

::-webkit-scrollbar-track{

    background:#fff3ee;

}

::-webkit-scrollbar-thumb{

    background:linear-gradient(
        135deg,
        #d62828,
        #f77f00
    );

    border-radius:30px;

}

::-webkit-scrollbar-thumb:hover{

    background:linear-gradient(
        135deg,
        #a4161a,
        #d62828
    );

}

/*=========================
PRELOADER
=========================*/

#preloader{

    position:fixed;
    inset:0;

    background:#ffffff;

    display:flex;
    justify-content:center;
    align-items:center;

    z-index:999999;

    transition:.6s ease;
}

#preloader.hide{

    opacity:0;
    visibility:hidden;
}

.loader-wrapper{

    width:80%;
    max-width:900px;

    position:relative;
}

/* Road */

.road{

    width:100%;
    height:8px;

    background:#222;

    border-radius:50px;

    position:relative;

    overflow:hidden;
}

.road-line{

    position:absolute;

    top:50%;
    left:0;

    width:100%;

    height:3px;

    transform:translateY(-50%);

    background:repeating-linear-gradient(
        to right,
        #fff 0 40px,
        transparent 40px 70px
    );

    animation:roadMove .5s linear infinite;
}

@keyframes roadMove{

    from{
        background-position:0 0;
    }

    to{
        background-position:-70px 0;
    }

}

/* Truck */

.loader-truck{

    position:absolute;

    width:170px;

    left:0;

    bottom:8px;

    transform:translateX(0);

    filter:drop-shadow(0 8px 12px rgba(0,0,0,.2));
}

/* Percentage */

.loading-text{

    margin-top:60px;

    text-align:center;
}

.loading-text span{

    font-size:44px;

    font-weight:900;

    color:#d62828;
}

.loading-text p{

    margin-top:8px;

    color:#666;

    font-size:18px;

}

/*=========================================
PAGE HERO
=========================================*/

.page-hero{

    position:relative;

    height:50vh;

    display:flex;

    padding: 100px;
    align-items:center;

    background:url("../images/tow-truck.png") right/contain no-repeat;

}

.page-hero::before{

    content:"";

    position:absolute;

    inset:0;

    background:linear-gradient(
        90deg,
        rgba(255,255,255,.95) 0%,
        rgba(255,251,248,.92) 22%,
        rgba(255,241,232,.78) 45%,
        rgba(255,214,170,.25) 65%,
        rgba(255,255,255,0) 85%
    );
}

.page-hero .container{

    position:relative;

    z-index:2;

    display:flex;

    justify-content:flex-end;

}

.page-hero-content{

    width:55%;

    text-align:right;


}

.page-breadcrumb{

    display:inline-block;

    margin-bottom:20px;

    font-size:16px;

}

.page-breadcrumb a{

    color:#FFD166;

}

.page-hero h1{

    font-size:58px;

    font-weight:900;

    margin-bottom:20px;

    color:var(--primary-dark);

}

.page-hero p{

    font-size:20px;

    line-height:2;

    color:var(--secondary);

}