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

html{
    scroll-behavior:smooth;
}

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

a{
    text-decoration:none;
}

ul{
    list-style:none;
}

.container{
    width:100%;
    max-width:1280px;
    margin:auto;
    padding:0 22px;
}

/* HEADER */

.site-header{

    position:fixed;

    top:20px;
    right:0;
    left:0;

    z-index:9999;

    animation:headerDown .8s ease;
}

@keyframes headerDown{

    from{
        opacity:0;
        transform:translateY(-100px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}

.header-wrapper{

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

    backdrop-filter:blur(18px);

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

    box-shadow:0 10px 40px rgba(0,0,0,.07);

    border-radius:24px;

    min-height:88px;

    padding:0 28px;

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

    transition:.4s;
}

/* LOGO */

.site-branding{
    display:flex;
    align-items:center;
}

.site-branding img{

    width:auto;
    max-height:60px;

    transition:.4s;
}

.site-branding img:hover{
    transform:scale(1.06) rotate(-2deg);
}

.site-title{

    font-size:32px;

    font-weight:800;

    color:#111;
}

/* MENU */

.main-navigation{
    display:flex;
    align-items:center;
}

.nav-menu{
    display:flex;
    align-items:center;
    gap:38px;
}

.nav-menu li{
    position:relative;
}

.nav-menu li a{

    position:relative;

    color:#111;

    font-size:17px;

    font-weight:700;

    transition:.35s;
}

/* MENU HOVER */

.nav-menu li a::after{

    content:"";

    position:absolute;

    right:0;
    bottom:-12px;

    width:0;

    height:4px;

    background:#ff7a00;

    border-radius:50px;

    transition:.4s;
}

.nav-menu li a:hover{

    color:#ff7a00;
}

.nav-menu li a:hover::after{

    width:100%;
}

/* BUTTON */

.header-actions{
    display:flex;
    align-items:center;
    gap:14px;
}

.header-btn{

    height:52px;

    padding:0 30px;

    border-radius:16px;

    background:linear-gradient(135deg,#ff7a00,#ff9f43);

    color:#fff;

    font-size:16px;

    font-weight:800;

    display:flex;
    align-items:center;
    justify-content:center;

    transition:.4s;

    box-shadow:0 10px 25px rgba(255,122,0,.35);
}

.header-btn:hover{

    transform:translateY(-4px);

    box-shadow:0 15px 35px rgba(255,122,0,.45);
}

/* MOBILE BUTTON */

.mobile-toggle{

    width:52px;
    height:52px;

    border:none;

    border-radius:16px;

    background:#ff7a00;

    display:none;

    align-items:center;
    justify-content:center;

    flex-direction:column;

    gap:5px;

    cursor:pointer;

    transition:.4s;
}

.mobile-toggle:hover{
    transform:scale(1.05);
}

.mobile-toggle span{

    width:24px;
    height:2px;

    background:#fff;

    border-radius:50px;
}

/* MOBILE MENU */

.mobile-menu{

    position:fixed;

    top:0;
    right:-100%;

    width:320px;
    height:100vh;

    background:#fff;

    z-index:99999;

    padding:120px 30px 40px;

    transition:.5s ease;

    box-shadow:-10px 0 40px rgba(0,0,0,.08);
}

.mobile-menu.active{
    right:0;
}

.mobile-nav{

    display:flex;
    flex-direction:column;
    gap:28px;
}

.mobile-nav li a{

    color:#111;

    font-size:19px;

    font-weight:700;

    transition:.3s;
}

.mobile-nav li a:hover{

    color:#ff7a00;

    padding-right:10px;
}

.mobile-btn{

    margin-top:40px;

    height:54px;

    border-radius:16px;

    background:#ff7a00;

    color:#fff;

    font-size:17px;

    font-weight:800;

    display:flex;
    align-items:center;
    justify-content:center;
}

/* RESPONSIVE */

@media(max-width:1100px){

    .main-navigation,
    .header-actions{

        display:none;
    }

    .mobile-toggle{

        display:flex;
    }

}

@media(max-width:600px){

    .site-header{
        top:12px;
    }

    .header-wrapper{

        min-height:78px;

        border-radius:20px;

        padding:0 18px;
    }

    .site-branding img{

        max-height:48px;
    }

    .mobile-menu{

        width:100%;
    }

}

/*======================================
# ORANGE HEADER STYLE
======================================*/

/* لون عناصر المنيو */

.nav-menu li a{

    color:#ff7a00;
}

/* الهوفر */

.nav-menu li a:hover{

    color:#ff9f43;
}

/* الخط تحت العنصر */

.nav-menu li a::after{

    background:#ff7a00;
}


/*======================================
# DROPDOWN MENU
======================================*/

.nav-menu li{

    position:relative;
}

/* القائمة الفرعية */

.nav-menu .sub-menu{

    position:absolute;

    top:130%;

    right:0;

    min-width:240px;

    background:#fff;

    border-radius:20px;

    padding:18px;

    opacity:0;

    visibility:hidden;

    transform:translateY(15px);

    transition:.4s;

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

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

    z-index:999;
}

/* اظهار القائمة */

.nav-menu li:hover > .sub-menu{

    opacity:1;

    visibility:visible;

    transform:translateY(0);
}

/* عناصر الدروب داون */

.nav-menu .sub-menu li{

    width:100%;
}

.nav-menu .sub-menu li a{

    width:100%;

    display:flex;

    align-items:center;

    justify-content:space-between;

    padding:14px 16px;

    border-radius:14px;

    color:#111;

    font-size:15px;

    font-weight:700;

    transition:.3s;
}

/* سهم */

.nav-menu .sub-menu li a::before{

    content:"➜";

    color:#ff7a00;

    font-size:14px;

    opacity:0;

    transform:translateX(10px);

    transition:.3s;
}

/* الهوفر */

.nav-menu .sub-menu li a:hover{

    background:#fff4eb;

    color:#ff7a00;

    padding-right:22px;
}

/* ظهور السهم */

.nav-menu .sub-menu li a:hover::before{

    opacity:1;

    transform:translateX(0);
}


/*======================================
# MENU ARROW
======================================*/

/* السهم للعناصر اللي تحتها قائمة */

.nav-menu li.menu-item-has-children > a::before{

    content:"⌄";

    position:absolute;

    left:-18px;

    top:50%;

    transform:translateY(-50%);

    font-size:13px;

    color:#ff7a00;

    transition:.3s;
}

/* دوران السهم */

.nav-menu li.menu-item-has-children:hover > a::before{

    transform:translateY(-50%) rotate(180deg);
}


/*======================================
# MOBILE MENU
======================================*/

.mobile-nav li a{

    color:#ff7a00;
}

.mobile-nav li a:hover{

    color:#ff9f43;
}


/*======================================
# SITE BRANDING
======================================*/

.logo-box{

    display:flex;

    align-items:center;

    gap:14px;
}

.site-info{

    display:flex;

    flex-direction:column;
}

/* اسم الموقع */

.site-title{

    font-size:30px;

    font-weight:800;

    color:#ff7a00;

    line-height:1.2;

    transition:.3s;
}

.site-title:hover{

    color:#ff9f43;
}

/* وصف الموقع */

.site-description{

    margin-top:4px;

    font-size:14px;

    font-weight:600;

    color:#777;

    line-height:1.5;
}

/* اللوجو */

.site-branding img{

    max-height:58px;

    width:auto;
}


/* MOBILE */

@media(max-width:600px){

    .site-title{

        font-size:24px;
    }

    .site-description{

        font-size:12px;
    }

    .site-branding img{

        max-height:46px;
    }

}


.intro-section{

    position:relative;

    padding:220px 0 130px;

    background:#f4f9fd;

    overflow:hidden;
}

.intro-wrapper{

    display:grid;

    grid-template-columns:550px 1fr;

    align-items:center;

    gap:100px;
}

/* IMAGE AREA */

.intro-image-area{

    position:relative;

    width:100%;

    display:flex;

    align-items:center;
    justify-content:center;
}

/* MAIN IMAGE */

.intro-main-image{

    width:470px;
    height:470px;

    border-radius:50%;

    overflow:hidden;

    position:relative;

    z-index:2;

    border:16px solid rgba(255,122,0,.12);

    box-shadow:
    0 0 0 22px rgba(255,122,0,.06),
    0 0 0 45px rgba(255,122,0,.03);
}

.intro-main-image img{

    width:100%;
    height:100%;

    object-fit:cover;
}

/* SLIDER */

/*======================================
# REMOVE BACKGROUND IMAGE
======================================*/

.intro-slider-wrapper{

    display:none;
}

/* CONTENT */

.intro-subtitle{

    color:#ff7a00;

    font-size:22px;

    font-weight:800;

    margin-bottom:18px;

    display:inline-block;
}

.intro-title{

    font-size:60px;

    line-height:1.3;

    font-weight:800;

    color:#111;

    margin-bottom:24px;
}

.intro-description{

    font-size:18px;

    line-height:2;

    color:#666;

    margin-bottom:38px;

    max-width:650px;
}

/* BUTTONS */

.intro-buttons{

    display:flex;

    align-items:center;

    gap:18px;
}

.intro-btn{

    height:58px;

    padding:0 36px;

    border-radius:18px;

    display:flex;

    align-items:center;
    justify-content:center;

    font-size:16px;

    font-weight:800;

    transition:.4s;
}

.primary-btn{

    background:#ff7a00;

    color:#fff;

    box-shadow:0 12px 30px rgba(255,122,0,.35);
}

.primary-btn:hover{

    transform:translateY(-5px);
}

.secondary-btn{

    background:#0b7bc1;

    color:#fff;
}

.secondary-btn:hover{

    transform:translateY(-5px);
}

/* RESPONSIVE */

@media(max-width:1100px){

    .intro-wrapper{

        grid-template-columns:1fr;

        text-align:center;
    }

    .intro-description{

        margin:auto auto 35px;
    }

    .intro-buttons{

        justify-content:center;
    }

}

@media(max-width:650px){

    .intro-section{

        padding:170px 0 90px;
    }

    .intro-main-image{

        width:320px;
        height:320px;
    }

    .intro-title{

        font-size:38px;
    }

    .intro-description{

        font-size:16px;
    }

}

/*======================================
# SERVICES SECTION
======================================*/

.services-section{

    padding:120px 0;

    background:#fff;
}

/* SECTION TITLE */

.section-head{

    text-align:center;

    margin-bottom:70px;
}

.section-subtitle{

    color:#ff7a00;

    font-size:20px;

    font-weight:800;

    margin-bottom:15px;

    display:inline-block;
}

.section-title{

    font-size:48px;

    color:#111;

    font-weight:800;
}

/* GRID */

.services-grid{

    display:grid;

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

    gap:30px;
}

/* CARD */

.service-card{

    position:relative;

    background:#fff;

    border-radius:28px;

    padding:45px 35px;

    text-align:center;

    overflow:hidden;

    transition:.4s;

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

    box-shadow:0 10px 35px rgba(0,0,0,.04);
}

.service-card:hover{

    transform:translateY(-10px);

    box-shadow:0 18px 40px rgba(255,122,0,.12);
}

/* ACTIVE CARD */

.active-card{

    background:#ff7a00;
}

.active-card h3,
.active-card p,
.active-card .service-icon{

    color:#fff;
}

.active-card .service-icon{

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

/* ICON */

.service-icon{

    width:90px;
    height:90px;

    margin:auto auto 28px;

    border-radius:24px;

    background:#fff4eb;

    color:#ff7a00;

    display:flex;

    align-items:center;
    justify-content:center;

    font-size:34px;

    transition:.4s;
}

.service-card:hover .service-icon{

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

/* TITLE */

.service-card h3{

    font-size:28px;

    margin-bottom:18px;

    color:#111;

    font-weight:800;
}

/* DESC */

.service-card p{

    font-size:16px;

    line-height:2;

    color:#666;
}

/* RESPONSIVE */

@media(max-width:1100px){

    .services-grid{

        grid-template-columns:1fr 1fr;
    }

}

@media(max-width:700px){

    .services-grid{

        grid-template-columns:1fr;
    }

    .section-title{

        font-size:34px;
    }

}


/*======================================
# LATEST BLOG
======================================*/

.latest-blog{

    padding:120px 0;

    background:#f8fbff;
}

/* HEAD */

.blog-head{

    text-align:center;

    margin-bottom:70px;
}

.blog-subtitle{

    color:#ff7a00;

    font-size:20px;

    font-weight:800;

    display:inline-block;

    margin-bottom:14px;
}

.blog-title{

    font-size:48px;

    font-weight:800;

    color:#111;
}

/* GRID */

.blog-grid{

    display:grid;

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

    gap:30px;
}

/* CARD */

.blog-card{

    background:#fff;

    border-radius:28px;

    overflow:hidden;

    transition:.4s;

    position:relative;

    box-shadow:0 10px 35px rgba(0,0,0,.05);

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

    animation:fadeUp .7s ease;
}

.blog-card:hover{

    transform:translateY(-12px);

    box-shadow:0 20px 45px rgba(255,122,0,.15);
}

/* IMAGE */

.blog-image{

    width:100%;

    height:260px;

    display:block;

    overflow:hidden;
}

.blog-image img{

    width:100%;
    height:100%;

    object-fit:cover;

    transition:.5s;
}

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

    transform:scale(1.08);
}

/* CONTENT */

.blog-content{

    padding:30px;
}

/* META */

.blog-meta{

    margin-bottom:18px;
}

.blog-meta span{

    background:#fff4eb;

    color:#ff7a00;

    padding:10px 16px;

    border-radius:40px;

    font-size:14px;

    font-weight:700;
}

/* TITLE */

.blog-card-title{

    margin-bottom:18px;

    line-height:1.5;
}

.blog-card-title a{

    color:#111;

    font-size:25px;

    font-weight:800;

    transition:.3s;
}

.blog-card-title a:hover{

    color:#ff7a00;
}

/* DESC */

.blog-desc{

    color:#666;

    line-height:2;

    margin-bottom:28px;

    font-size:16px;
}

/* BUTTON */

.blog-btn{

    width:160px;
    height:52px;

    background:#ff7a00;

    color:#fff;

    border-radius:16px;

    display:flex;

    align-items:center;
    justify-content:center;

    font-size:15px;

    font-weight:800;

    transition:.4s;
}

.blog-btn:hover{

    transform:translateY(-4px);

    background:#111;
}

/* ANIMATION */

@keyframes fadeUp{

    from{

        opacity:0;

        transform:translateY(50px);
    }

    to{

        opacity:1;

        transform:translateY(0);
    }

}

/* RESPONSIVE */

@media(max-width:1100px){

    .blog-grid{

        grid-template-columns:1fr 1fr;
    }

}

@media(max-width:700px){

    .blog-grid{

        grid-template-columns:1fr;
    }

    .blog-title{

        font-size:34px;
    }

}

/*======================================
# SERVICE AREAS
======================================*/

.service-areas{

    padding:120px 0;

    background:#fff;
}

/* HEAD */

.areas-head{

    text-align:center;

    margin-bottom:70px;
}

.areas-subtitle{

    color:#ff7a00;

    font-size:20px;

    font-weight:800;

    margin-bottom:14px;

    display:inline-block;
}

.areas-title{

    font-size:48px;

    font-weight:800;

    color:#111;
}

/* GRID */

.areas-grid{

    display:grid;

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

    gap:30px;
}

/* CARD */

.area-card{

    position:relative;

    background:#fff;

    border-radius:28px;

    padding:40px 30px;

    text-align:center;

    transition:.4s;

    overflow:hidden;

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

    box-shadow:0 10px 35px rgba(0,0,0,.05);

    animation:areaFade .8s ease;
}

.area-card:hover{

    transform:translateY(-10px);

    box-shadow:0 18px 45px rgba(255,122,0,.15);
}

/* ACTIVE */

.active-area{

    background:#ff7a00;
}

.active-area h3,
.active-area .area-icon{

    color:#fff;
}

.active-area .area-icon{

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

/* ICON */

.area-icon{

    width:90px;
    height:90px;

    margin:auto auto 25px;

    border-radius:50%;

    background:#fff4eb;

    color:#ff7a00;

    display:flex;

    align-items:center;
    justify-content:center;

    font-size:34px;

    transition:.4s;
}

.area-card:hover .area-icon{

    transform:rotate(-10deg) scale(1.1);
}

/* TITLE */

.area-card h3{

    font-size:28px;

    color:#111;

    font-weight:800;
}

/* ANIMATION */

@keyframes areaFade{

    from{

        opacity:0;

        transform:translateY(50px);
    }

    to{

        opacity:1;

        transform:translateY(0);
    }

}

/* RESPONSIVE */

@media(max-width:1100px){

    .areas-grid{

        grid-template-columns:1fr 1fr;
    }

}

@media(max-width:700px){

    .areas-grid{

        grid-template-columns:1fr;
    }

    .areas-title{

        font-size:34px;
    }

}


/*======================================
# FAQ SECTION
======================================*/

.faq-section{

    padding:120px 0;

    background:#f8fbff;
}

/* HEAD */

.faq-head{

    text-align:center;

    margin-bottom:70px;
}

.faq-subtitle{

    color:#ff7a00;

    font-size:20px;

    font-weight:800;

    margin-bottom:14px;

    display:inline-block;
}

.faq-title{

    font-size:48px;

    color:#111;

    font-weight:800;
}

/* WRAPPER */

.faq-wrapper{

    max-width:900px;

    margin:auto;

    display:flex;

    flex-direction:column;

    gap:25px;
}

/* ITEM */

.faq-item{

    background:#fff;

    border-radius:24px;

    overflow:hidden;

    box-shadow:0 10px 35px rgba(0,0,0,.05);

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

    transition:.4s;
}

.faq-item:hover{

    transform:translateY(-5px);
}

/* QUESTION */

.faq-question{

    width:100%;

    min-height:85px;

    border:none;

    background:none;

    padding:0 30px;

    display:flex;

    align-items:center;

    justify-content:space-between;

    cursor:pointer;

    font-size:21px;

    font-weight:800;

    color:#111;
}

/* ICON */

.faq-question i{

    width:45px;
    height:45px;

    border-radius:50%;

    background:#fff4eb;

    color:#ff7a00;

    display:flex;

    align-items:center;
    justify-content:center;

    transition:.4s;
}

/* ANSWER */

.faq-answer{

    max-height:0;

    overflow:hidden;

    transition:max-height .5s ease;

    opacity:0;
}

.faq-answer p{

    padding:0 30px 30px;

    color:#666;

    line-height:2;

    font-size:17px;
}

/* ACTIVE */

.faq-item.active-faq .faq-answer{

    max-height:500px;

    opacity:1;
}

.faq-item.active-faq .faq-question i{

    transform:rotate(45deg);

    background:#ff7a00;

    color:#fff;
}

/* RESPONSIVE */

@media(max-width:700px){

    .faq-title{

        font-size:34px;
    }

    .faq-question{

        font-size:18px;

        padding:0 20px;
    }

}


/*======================================
# WHY SECTION
======================================*/

.why-section{

    position:relative;

    padding:120px 0;

    background:#fff;

    overflow:hidden;
}

.why-wrapper{

    display:grid;

    grid-template-columns:1fr 1fr;

    align-items:center;

    gap:90px;
}

/* IMAGE */

.why-image{

    position:relative;

    animation:whyFloat 4s ease-in-out infinite;
}

.why-image img{

    width:100%;

    border-radius:35px;

    object-fit:cover;

    box-shadow:0 20px 45px rgba(255,122,0,.12);
}

/* CONTENT */

.why-subtitle{

    display:inline-block;

    color:#ff7a00;

    font-size:20px;

    font-weight:800;

    margin-bottom:16px;
}

.why-title{

    font-size:52px;

    color:#111;

    font-weight:800;

    line-height:1.4;

    margin-bottom:24px;
}

.why-description{

    color:#666;

    font-size:17px;

    line-height:2;

    margin-bottom:40px;
}

/* FEATURES */

.why-features{

    display:flex;

    flex-direction:column;

    gap:25px;
}

/* BOX */

.why-box{

    display:flex;

    align-items:flex-start;

    gap:20px;

    padding:25px;

    border-radius:24px;

    background:#fff;

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

    box-shadow:0 10px 35px rgba(0,0,0,.05);

    transition:.4s;
}

.why-box:hover{

    transform:translateY(-6px);

    box-shadow:0 18px 40px rgba(255,122,0,.12);
}

/* ICON */

.why-icon{

    min-width:75px;

    width:75px;
    height:75px;

    border-radius:22px;

    background:#fff4eb;

    color:#ff7a00;

    display:flex;

    align-items:center;
    justify-content:center;

    font-size:28px;

    transition:.4s;
}

.why-box:hover .why-icon{

    transform:rotate(-8deg) scale(1.08);

    background:#ff7a00;

    color:#fff;
}

/* INFO */

.why-info h3{

    font-size:24px;

    color:#111;

    font-weight:800;

    margin-bottom:10px;
}

.why-info p{

    color:#666;

    line-height:2;

    font-size:16px;
}

/* ANIMATION */

@keyframes whyFloat{

    0%{

        transform:translateY(0);
    }

    50%{

        transform:translateY(-12px);
    }

    100%{

        transform:translateY(0);
    }

}

/* RESPONSIVE */

@media(max-width:1100px){

    .why-wrapper{

        grid-template-columns:1fr;

    }

}

@media(max-width:768px){

    .why-section{

        padding:90px 0;
    }

    .why-title{

        font-size:36px;
    }

    .why-box{

        flex-direction:column;

        align-items:flex-start;
    }

}


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

.site-footer{

    position:relative;

    padding-top:120px;

    background:#0f1720;

    overflow:hidden;
}

/* SHAPE */

.footer-shape{

    position:absolute;

    top:-120px;
    left:-120px;

    width:320px;
    height:320px;

    border-radius:50%;

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

    animation:footerMove 8s linear infinite;
}

/* WRAPPER */

.footer-wrapper{

    display:grid;

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

    gap:40px;

    position:relative;

    z-index:2;
}

/* BOX */

.footer-box{

    animation:footerFade .8s ease;
}

/* LOGO */

.footer-logo{

    color:#ff7a00;

    font-size:34px;

    font-weight:800;

    margin-bottom:22px;
}

/* ABOUT */

.footer-about{

    color:#bfc6d1;

    line-height:2;

    font-size:16px;
}

/* TITLES */

.footer-title{

    color:#fff;

    font-size:24px;

    font-weight:800;

    margin-bottom:28px;
}

/* LINKS */

.footer-links{

    display:flex;

    flex-direction:column;

    gap:18px;
}

.footer-links a{

    color:#bfc6d1;

    transition:.3s;

    font-size:16px;
}

.footer-links a:hover{

    color:#ff7a00;

    padding-right:8px;
}

/* CONTACT */

.footer-contact{

    display:flex;

    flex-direction:column;

    gap:22px;
}

.footer-contact li{

    display:flex;

    align-items:center;

    gap:14px;

    color:#bfc6d1;

    line-height:1.8;
}

.footer-contact i{

    width:45px;
    height:45px;

    border-radius:50%;

    background:#ff7a00;

    color:#fff;

    display:flex;

    align-items:center;
    justify-content:center;
}

/* SOCIAL */

.footer-social{

    display:flex;

    align-items:center;

    gap:14px;
}

.footer-social a{

    width:50px;
    height:50px;

    border-radius:50%;

    background:#182331;

    color:#fff;

    display:flex;

    align-items:center;
    justify-content:center;

    transition:.4s;
}

.footer-social a:hover{

    background:#ff7a00;

    transform:translateY(-6px);
}

/* BOTTOM */

.footer-bottom{

    margin-top:90px;

    padding:28px 0;

    border-top:1px solid rgba(255,255,255,.08);

    text-align:center;
}

.footer-bottom p{

    color:#bfc6d1;

    font-size:15px;
}

/* ANIMATION */

@keyframes footerMove{

    0%{

        transform:translateY(0);
    }

    50%{

        transform:translateY(30px);
    }

    100%{

        transform:translateY(0);
    }

}

@keyframes footerFade{

    from{

        opacity:0;

        transform:translateY(40px);
    }

    to{

        opacity:1;

        transform:translateY(0);
    }

}

/* RESPONSIVE */

@media(max-width:1100px){

    .footer-wrapper{

        grid-template-columns:1fr 1fr;
    }

}

@media(max-width:700px){

    .footer-wrapper{

        grid-template-columns:1fr;
    }

    .footer-title{

        font-size:22px;
    }

}

/* FOOTER MENU */

.footer-links{

    display:flex;

    flex-direction:column;

    gap:18px;
}

.footer-links li{

    list-style:none;
}

.footer-links a{

    color:#bfc6d1;

    font-size:16px;

    transition:.3s;
}

.footer-links a:hover{

    color:#ff7a00;

    padding-right:8px;
}


/*======================================
# ARCHIVE PAGE
======================================*/

.archive-page{

    position:relative;

    padding:180px 0 120px;

    background:#f8fbff;

    overflow:hidden;
}

/* HEAD */

.archive-head{

    text-align:center;

    margin-bottom:70px;
}

.archive-subtitle{

    display:inline-block;

    color:#ff7a00;

    font-size:20px;

    font-weight:800;

    margin-bottom:14px;
}

.archive-title{

    font-size:52px;

    color:#111;

    font-weight:800;

    line-height:1.4;
}

/* GRID */

.archive-grid{

    display:grid;

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

    gap:35px;
}

/* CARD */

.archive-card{

    position:relative;

    background:#fff;

    border-radius:30px;

    overflow:hidden;

    transition:.4s;

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

    box-shadow:0 12px 40px rgba(0,0,0,.05);

    animation:archiveFade .8s ease;
}

.archive-card:hover{

    transform:translateY(-10px);

    box-shadow:0 20px 50px rgba(255,122,0,.15);
}

/* IMAGE */

.archive-image{

    width:100%;

    height:260px;

    overflow:hidden;

    display:block;
}

.archive-image img{

    width:100%;
    height:100%;

    object-fit:cover;

    transition:.5s;
}

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

    transform:scale(1.08);
}

/* CONTENT */

.archive-content{

    padding:30px;
}

/* META */

.archive-meta{

    margin-bottom:18px;
}

.archive-meta span{

    display:inline-flex;

    align-items:center;

    gap:8px;

    background:#fff4eb;

    color:#ff7a00;

    padding:10px 16px;

    border-radius:40px;

    font-size:14px;

    font-weight:700;
}

/* TITLE */

.archive-card-title{

    margin-bottom:18px;

    line-height:1.6;
}

.archive-card-title a{

    color:#111;

    font-size:26px;

    font-weight:800;

    transition:.3s;
}

.archive-card-title a:hover{

    color:#ff7a00;
}

/* DESC */

.archive-desc{

    color:#666;

    line-height:2;

    margin-bottom:28px;

    font-size:16px;
}

/* BUTTON */

.archive-btn{

    width:160px;
    height:54px;

    border-radius:16px;

    background:#ff7a00;

    color:#fff;

    display:flex;

    align-items:center;
    justify-content:center;

    font-size:15px;

    font-weight:800;

    transition:.4s;
}

.archive-btn:hover{

    transform:translateY(-4px);

    background:#111;
}

/* PAGINATION */

.archive-pagination{

    margin-top:70px;

    display:flex;

    justify-content:center;
}

.archive-pagination .nav-links{

    display:flex;

    align-items:center;

    gap:14px;
}

.archive-pagination a,
.archive-pagination span{

    width:50px;
    height:50px;

    border-radius:14px;

    background:#fff;

    color:#111;

    display:flex;

    align-items:center;
    justify-content:center;

    font-weight:800;

    transition:.3s;

    box-shadow:0 10px 30px rgba(0,0,0,.05);
}

.archive-pagination .current,
.archive-pagination a:hover{

    background:#ff7a00;

    color:#fff;
}

/* ANIMATION */

@keyframes archiveFade{

    from{

        opacity:0;

        transform:translateY(50px);
    }

    to{

        opacity:1;

        transform:translateY(0);
    }

}

/* RESPONSIVE */

@media(max-width:1100px){

    .archive-grid{

        grid-template-columns:1fr 1fr;
    }

}

@media(max-width:700px){

    .archive-grid{

        grid-template-columns:1fr;
    }

    .archive-title{

        font-size:36px;
    }

}


/*======================================
# SINGLE POST PAGE
======================================*/

.single-post-page{

    position:relative;

    padding:180px 0 120px;

    background:#f8fbff;

    overflow:hidden;
}

/* WRAPPER */

.single-wrapper{

    display:grid;

    grid-template-columns:2fr 380px;

    gap:40px;

    align-items:start;
}

/* ARTICLE */

.single-post-content{

    background:#fff;

    border-radius:35px;

    overflow:hidden;

    box-shadow:0 15px 45px rgba(0,0,0,.05);
}

/* IMAGE */

.single-image{

    width:100%;

    height:500px;

    overflow:hidden;
}

.single-image img{

    width:100%;
    height:100%;

    object-fit:cover;
}

/* CONTENT AREA */

.single-meta,
.single-title,
.single-content{

    padding-right:45px;

    padding-left:45px;
}

/* META */

.single-meta{

    padding-top:40px;

    margin-bottom:20px;
}

.single-meta span{

    display:inline-flex;

    align-items:center;

    gap:8px;

    background:#fff4eb;

    color:#ff7a00;

    padding:10px 18px;

    border-radius:40px;

    font-size:15px;

    font-weight:700;
}

/* TITLE */

.single-title{

    font-size:48px;

    color:#111;

    line-height:1.5;

    font-weight:900;

    margin-bottom:35px;
}

/* CONTENT */

.single-content{

    padding-bottom:50px;

    color:#444;

    line-height:2.3;

    font-size:20px;

    font-weight:700;
}

/* HEADINGS */

.single-content h2,
.single-content h3,
.single-content h4{

    color:#111;

    font-weight:900;

    line-height:1.5;

    margin-top:35px;

    margin-bottom:20px;
}

.single-content h2{

    font-size:38px;
}

.single-content h3{

    font-size:30px;
}

.single-content h4{

    font-size:24px;
}

/* PARAGRAPH */

.single-content p{

    margin-bottom:28px;
}

/* IMAGE INSIDE CONTENT */

.single-content img{

    max-width:100%;

    border-radius:25px;

    margin:30px 0;
}

/* LIST */

.single-content ul,
.single-content ol{

    padding-right:22px;

    margin-bottom:28px;
}

.single-content li{

    margin-bottom:16px;
}

/* LINKS */

.single-content a{

    color:#ff7a00;

    font-weight:800;
}

/* SIDEBAR */

.single-sidebar{

    position:sticky;

    top:130px;

    display:flex;

    flex-direction:column;

    gap:30px;
}

/* BOX */

.sidebar-box{

    background:#fff;

    border-radius:28px;

    padding:35px;

    box-shadow:0 15px 40px rgba(0,0,0,.05);
}

/* TITLE */

.sidebar-title{

    color:#111;

    font-size:28px;

    font-weight:900;

    margin-bottom:30px;
}

/* CATEGORIES */

.sidebar-cats{

    display:flex;

    flex-direction:column;

    gap:18px;
}

.sidebar-cats li{

    list-style:none;
}

.sidebar-cats a{

    display:flex;

    align-items:center;

    justify-content:space-between;

    background:#f8fbff;

    min-height:60px;

    padding:0 22px;

    border-radius:18px;

    color:#111;

    font-size:17px;

    font-weight:800;

    transition:.3s;
}

.sidebar-cats a:hover{

    background:#ff7a00;

    color:#fff;

    transform:translateX(-6px);
}

/* POSTS */

.sidebar-posts{

    display:flex;

    flex-direction:column;

    gap:22px;
}

.sidebar-post{

    display:flex;

    align-items:center;

    gap:15px;
}

/* IMAGE */

.sidebar-post-image{

    width:90px;
    height:90px;

    border-radius:20px;

    overflow:hidden;

    flex-shrink:0;
}

.sidebar-post-image img{

    width:100%;
    height:100%;

    object-fit:cover;
}

/* INFO */

.sidebar-post-info h4{

    color:#111;

    font-size:17px;

    line-height:1.7;

    font-weight:800;

    margin-bottom:10px;

    transition:.3s;
}

.sidebar-post:hover .sidebar-post-info h4{

    color:#ff7a00;
}

.sidebar-post-info span{

    color:#888;

    font-size:14px;
}

/* RESPONSIVE */

@media(max-width:1100px){

    .single-wrapper{

        grid-template-columns:1fr;
    }

    .single-sidebar{

        position:relative;

        top:0;
    }

}

@media(max-width:700px){

    .single-title{

        font-size:34px;
    }

    .single-content{

        font-size:18px;
    }

    .single-meta,
    .single-title,
    .single-content{

        padding-right:25px;

        padding-left:25px;
    }

    .single-image{

        height:300px;
    }

}

/*======================================
# ABOUT PAGE
======================================*/

.about-page{

    position:relative;

    padding:180px 0 120px;

    background:#f8fbff;

    overflow:hidden;
}

/* HERO */

.about-hero{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:80px;

    align-items:center;

    margin-bottom:120px;
}

/* CONTENT */

.about-subtitle{

    display:inline-block;

    color:#ff7a00;

    font-size:20px;

    font-weight:800;

    margin-bottom:16px;
}

.about-title{

    font-size:58px;

    color:#111;

    line-height:1.4;

    font-weight:900;

    margin-bottom:28px;
}

.about-desc{

    color:#666;

    line-height:2.2;

    font-size:18px;

    margin-bottom:35px;
}

/* BUTTON */

.about-btn{

    width:190px;
    height:60px;

    border-radius:18px;

    background:#ff7a00;

    color:#fff;

    display:flex;

    align-items:center;
    justify-content:center;

    font-size:16px;

    font-weight:800;

    transition:.4s;
}

.about-btn:hover{

    background:#111;

    transform:translateY(-5px);
}

/* IMAGE */

.about-image{

    animation:aboutFloat 4s ease-in-out infinite;
}

.about-image img{

    width:100%;

    border-radius:35px;

    object-fit:cover;

    box-shadow:0 20px 50px rgba(255,122,0,.15);
}

/* FEATURES */

.about-features{

    display:grid;

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

    gap:30px;
}

/* BOX */

.about-box{

    background:#fff;

    border-radius:30px;

    padding:45px 35px;

    text-align:center;

    transition:.4s;

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

    box-shadow:0 12px 40px rgba(0,0,0,.05);
}

.about-box:hover{

    transform:translateY(-10px);

    box-shadow:0 20px 50px rgba(255,122,0,.12);
}

/* ACTIVE */

.active-about{

    background:#ff7a00;
}

.active-about i,
.active-about h3,
.active-about p{

    color:#fff;
}

/* ICON */

.about-box i{

    width:95px;
    height:95px;

    border-radius:26px;

    background:#fff4eb;

    color:#ff7a00;

    display:flex;

    align-items:center;
    justify-content:center;

    margin:auto auto 28px;

    font-size:36px;

    transition:.4s;
}

.about-box:hover i{

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

/* TITLE */

.about-box h3{

    font-size:28px;

    color:#111;

    font-weight:800;

    margin-bottom:18px;
}

/* DESC */

.about-box p{

    color:#666;

    line-height:2;

    font-size:16px;
}

/* ANIMATION */

@keyframes aboutFloat{

    0%{

        transform:translateY(0);
    }

    50%{

        transform:translateY(-12px);
    }

    100%{

        transform:translateY(0);
    }

}

/* RESPONSIVE */

@media(max-width:1100px){

    .about-hero,
    .about-features{

        grid-template-columns:1fr;
    }

}

@media(max-width:700px){

    .about-title{

        font-size:38px;
    }

}

/*======================================
# CONTACT PAGE
======================================*/

.contact-page{

    position:relative;

    padding:180px 0 120px;

    background:#f8fbff;

    overflow:hidden;
}

/* HEAD */

.contact-head{

    text-align:center;

    max-width:850px;

    margin:auto auto 80px;
}

.contact-subtitle{

    display:inline-block;

    color:#ff7a00;

    font-size:20px;

    font-weight:800;

    margin-bottom:15px;
}

.contact-title{

    font-size:56px;

    color:#111;

    line-height:1.4;

    font-weight:900;

    margin-bottom:25px;
}

.contact-desc{

    color:#666;

    line-height:2.2;

    font-size:18px;
}

/* WRAPPER */

.contact-wrapper{

    display:grid;

    grid-template-columns:380px 1fr;

    gap:40px;
}

/* INFO */

.contact-info{

    display:flex;

    flex-direction:column;

    gap:25px;
}

/* BOX */

.contact-box{

    background:#fff;

    border-radius:28px;

    padding:30px;

    display:flex;

    align-items:center;

    gap:20px;

    transition:.4s;

    box-shadow:0 12px 35px rgba(0,0,0,.05);
}

.contact-box:hover{

    transform:translateY(-8px);

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

/* ICON */

.contact-icon{

    min-width:80px;

    width:80px;
    height:80px;

    border-radius:24px;

    background:#fff4eb;

    color:#ff7a00;

    display:flex;

    align-items:center;
    justify-content:center;

    font-size:30px;

    transition:.4s;
}

.contact-box:hover .contact-icon{

    background:#ff7a00;

    color:#fff;

    transform:rotate(-8deg);
}

/* INFO */

.contact-box-info h3{

    color:#111;

    font-size:24px;

    font-weight:800;

    margin-bottom:10px;
}

.contact-box-info p{

    color:#666;

    line-height:1.9;

    font-size:16px;
}

/* FORM */

.contact-form-box{

    background:#fff;

    border-radius:35px;

    padding:50px;

    box-shadow:0 15px 45px rgba(0,0,0,.05);
}

.contact-form-box h2{

    color:#111;

    font-size:38px;

    font-weight:900;

    margin-bottom:35px;
}

/* FORM STYLE */

.contact-form-box input,
.contact-form-box textarea{

    width:100%;

    min-height:60px;

    border:none;

    outline:none;

    background:#f8fbff;

    border-radius:18px;

    padding:0 22px;

    margin-bottom:20px;

    font-size:16px;

    color:#111;
}

.contact-form-box textarea{

    min-height:180px;

    padding-top:20px;

    resize:none;
}

/* BUTTON */

.contact-form-box button,
.contact-form-box input[type="submit"]{

    width:200px;
    height:60px;

    border:none;

    border-radius:18px;

    background:#ff7a00;

    color:#fff;

    font-size:16px;

    font-weight:800;

    cursor:pointer;

    transition:.4s;
}

.contact-form-box button:hover,
.contact-form-box input[type="submit"]:hover{

    background:#111;

    transform:translateY(-5px);
}

/* RESPONSIVE */

@media(max-width:1100px){

    .contact-wrapper{

        grid-template-columns:1fr;
    }

}

@media(max-width:700px){

    .contact-title{

        font-size:38px;
    }

    .contact-form-box{

        padding:30px;
    }

}