/*==================================================
                ABOUT HERO
==================================================*/

.about-hero{

    position:relative;

    width:100%;

    min-height:340px;

    background:#ED1C24;

    overflow:hidden;

    display:flex;

    align-items:center;

    justify-content:center;

    padding:20px 0;

}


/*==================================================
                CONTENT
==================================================*/

.about-hero-content{

    position:relative;

    z-index:5;

    width:100%;

    max-width:1000px;

    margin:auto;
    padding-top:0;
    margin-top: 0;

    text-align:center;

}


/*==================================================
                ICON
==================================================*/

.hero-icon{

    width:60px;

    height:60px;

    margin:0 auto 15px;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:18px;

    color:#111;

}


/*==================================================
                TITLE
==================================================*/

.hero-title{

    font-size:58px;

    font-weight:800;

    color:#111;

    line-height:1;

    margin-bottom:10px;
      margin-top:0;
      margin-bottom: 4px;

}


/*==================================================
                SUBTITLE
==================================================*/

.hero-subtitle{

    font-size:22px;

    font-weight:500;

    color:#111;

    margin-bottom:10px;

}


/*==================================================
                DESCRIPTION
==================================================*/

.hero-description{

    width:100%;

    max-width:760px;

    margin:0 auto;

    font-size:22px;

    line-height:1;

    color:#111;

    font-weight:500;
    margin-bottom: 0;

}


/*==================================================
                IMAGE
==================================================*/

.hero-image-wrapper{

    position:relative;

    width:100%;

    margin-top:10px;

    z-index:5;

}

.hero-main-image{

    width:100%;

    max-width:1200px;

    display:block;

    margin:auto;

}


/*==================================================
            DECORATIVE SHAPES
==================================================*/

.hero-circle{

    position:absolute;

    border-radius:50%;

    background:#ffffff;

    opacity:.92;

}


/* Left Circle */

.hero-circle-left{

    width:150px;

    height:150px;

    left:6%;

    top:48%;

    transform:translateY(-50%);

}

.hero-circle-left::after{

    content:"";

    position:absolute;

    inset:40px;

    background:#ED1C24;

    border-radius:50%;

}


/* Right Circle */

.hero-circle-right{

    width:130px;

    height:130px;

    right:6%;

    top:55%;

    transform:translateY(-50%);

}

.hero-circle-right::after{

    content:"";

    position:absolute;

    inset:35px;

    background:#ED1C24;

    border-radius:50%;

}


/*==================================================
                WHITE SQUARE
==================================================*/

.hero-square{

    position:absolute;

    background:#ffffff;

    opacity:.9;

}


/* Left */

.hero-square-left{

    width:90px;

    height:90px;

    left:18%;

    bottom:170px;

    transform:rotate(45deg);

}


/* Right */

.hero-square-right{

    width:95px;

    height:95px;

    right:18%;

    bottom:160px;

    transform:rotate(45deg);

}


/*==================================================
                RESPONSIVE
==================================================*/

@media(max-width:992px){

.about-hero{

    min-height:auto;

    padding:140px 0 60px;

}

.hero-title{

    font-size:56px;

}

.hero-description{

    font-size:20px;

    padding:0 20px;

}



}



@media(max-width:768px){

.about-hero{

    padding:25px 0 25px;

}

.hero-icon{

    margin-bottom:8px;

}

.hero-title{

    margin-bottom:6px;

}

.hero-subtitle{

    margin-bottom:18px;

}

.hero-description{

    margin-bottom:25px;

}

.hero-image-wrapper{

    margin-top:25px;

}


}



@media(max-width:480px){

.hero-title{

    font-size:34px;

}

.hero-description{

    font-size:16px;

}

.hero-icon{

    font-size:22px;

}
}

/*==================================================
                ABOUT INTRO
==================================================*/

.about-intro{

    position:relative;

    padding:120px 0;

    background:#ffffff;

}

.about-intro-wrapper{

    position:relative;

    max-width:900px;

    margin:auto;

    text-align:center;

}

.intro-title{

    font-size:40px;

    font-weight:800;

    color:#111;

    margin-bottom:35px;

    line-height:1.1;

}

.intro-text{

    font-size:16px;

    color:#222;

    line-height:1.8;

    margin-bottom:40px;

}

.intro-next-btn{

    position:absolute;

    right:-70px;

    bottom:-10px;

    width:74px;

    height:74px;

    border-radius:50%;

    background:#ED1C24;

    color:#f7f7f7;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:28px;

    transition:.35s;

    box-shadow:0 10px 25px rgba(0,0,0,.12);

}

.intro-next-btn:hover{

    transform:scale(1.08) rotate(-15deg);

    background:#111;

    color:#ED1C24;

}



/*==========================
        Responsive
==========================*/

@media(max-width:992px){

.intro-title{

    font-size:48px;

}

.intro-text{

    font-size:20px;

}

.intro-next-btn{

    position:relative;

    right:auto;

    bottom:auto;

    margin:40px auto 0;

}

}



@media(max-width:768px){

.about-intro{

    padding:70px 0;

}

.intro-title{

    font-size:36px;

}

.intro-text{

    font-size:17px;

    line-height:1.7;

    margin-bottom:25px;

}

.intro-next-btn{

    width:64px;

    height:64px;

    font-size:22px;

}

}

/*==================================================
                OFFICE GALLERY
==================================================*/

.office-gallery{

    position:relative;

    width:100%;

    background:#ffffff;

    overflow:hidden;

    padding:40px 0;

}


/*==================================================
                TRACK
==================================================*/

.gallery-track{

    display:flex;

    align-items:stretch;

    width:max-content;

    animation:galleryScroll 35s linear infinite;

}

.office-gallery:hover .gallery-track{

    animation-play-state:paused;

}


/*==================================================
                ITEM
==================================================*/

.gallery-item{

    position:relative;

    flex-shrink:0;

    overflow:hidden;

    border:6px solid #ffffff;

    background:#f5f5f5;

}


/* Large */

.gallery-item.large{

    width:390px;

    height:300px;

}


/* Small */

.gallery-item.small{

    width:205px;

    height:300px;

}


/*==================================================
                IMAGE
==================================================*/

.gallery-item img{

    width:100%;

    height:100%;

    object-fit:cover;

    display:block;

    transition:.6s;

}

/*=========================================
            PREMIUM OVERLAY
=========================================*/

.gallery-item.large{

    position:relative;

    overflow:hidden;

    cursor:pointer;

    transition:.5s;

}

.gallery-item.large img{

    transition:transform .8s ease;

}



/* Overlay */

.gallery-overlay{

    position:absolute;

    inset:0;

    display:flex;

    align-items:flex-end;

    padding:28px;

    background:linear-gradient(

        180deg,

        rgba(0,0,0,0) 10%,

        rgba(0,0,0,.75) 100%

    );

    opacity:0;

    transition:.45s;

}



/* Orange Frame */

.gallery-overlay::before{

    content:"";

    position:absolute;

    inset:16px;

    border:3px solid #ED1C24;

    transform:scale(.8);

    opacity:0;

    transition:.5s;

}



/* Content */

.gallery-content{

    position:relative;

    z-index:2;

}



/* Category */

.gallery-tag{

    display:inline-block;

    color:#ED1C24;

    font-size:13px;

    font-weight:700;

    letter-spacing:3px;

    margin-bottom:12px;

    transform:translateY(25px);

    opacity:0;

    transition:.45s;

}



/* Title */

.gallery-content h3{

    color:#fff;

    font-size:34px;

    margin-bottom:12px;

    transform:translateY(30px);

    opacity:0;

    transition:.55s;

}



/* Paragraph */

.gallery-content p{

    color:#ddd;

    font-size:16px;

    line-height:1.6;

    margin-bottom:22px;

    transform:translateY(30px);

    opacity:0;

    transition:.65s;

}



/* Arrow */

.gallery-arrow{

    width:58px;

    height:58px;

    border-radius:50%;

    background:#ED1C24;

    display:flex;

    align-items:center;

    justify-content:center;

    color:#111;

    font-size:22px;

    transform:translateX(-40px);

    opacity:0;

    transition:.6s;

}



/* Hover */

.gallery-item.large:hover img{

    transform:scale(1.12);

}



.gallery-item.large:hover .gallery-overlay{

    opacity:1;

}



.gallery-item.large:hover .gallery-overlay::before{

    opacity:1;

    transform:scale(1);

}



.gallery-item.large:hover .gallery-tag,

.gallery-item.large:hover h3,

.gallery-item.large:hover p{

    transform:translateY(0);

    opacity:1;

}



.gallery-item.large:hover .gallery-arrow{

    transform:translateX(0);

    opacity:1;

}



.gallery-item.large:hover{

    box-shadow:

    0 25px 60px rgba(255,152,0,.35);

}


.gallery-item:hover img{

    transform:scale(1.08);

}


/*==================================================
                ANIMATION
==================================================*/

@keyframes galleryScroll{

    from{

        transform:translateX(0);

    }

    to{

        transform:translateX(-50%);

    }

}


/*==================================================
                RESPONSIVE
==================================================*/

@media(max-width:992px){

.gallery-item.large{

    width:300px;

    height:230px;

}

.gallery-item.small{

    width:170px;

    height:230px;

}

}



@media(max-width:768px){

.office-gallery{

    padding:25px 0;

}

.gallery-track{

    animation-duration:24s;

}

.gallery-item.large{

    width:220px;

    height:170px;

}

.gallery-item.small{

    width:130px;

    height:170px;

}

}



@media(max-width:480px){

.gallery-item.large{

    width:180px;

    height:140px;

}

.gallery-item.small{

    width:100px;

    height:140px;

}

}

/*==================================================
            CUSTOMER DELIGHT
==================================================*/

.customer-delight{

    position:relative;

    width:100%;

    padding:120px 0;

    background:#ffffff;

}



/*==================================================
                HEADING
==================================================*/

.delight-heading{

    max-width:900px;

    margin:0 auto;

    text-align:center;

}

.delight-heading h2{

    font-size:64px;

    font-weight:800;

    color:#111;

    margin-bottom:20px;

}

.delight-heading h4{

    max-width:700px;

    margin:0 auto 25px;

    font-size:28px;

    font-weight:700;

    color:#111;

    line-height:1.35;

}

.delight-heading p{

    max-width:780px;

    margin:18px auto;

    font-size:19px;

    line-height:1.8;

    color:#444;

}



/*==================================================
                GRID
==================================================*/

.delight-grid{

    margin-top:70px;

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:28px;

}



/*==================================================
                CARD
==================================================*/

.delight-card{

    background:#efefef;

    padding:35px 22px;

    text-align:center;

    transition:.45s ease;

    cursor:pointer;

    overflow:hidden;

    position:relative;

}

.delight-card::before{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:100%;

    height:0;

    background:#ED1C24;

    transition:.45s ease;

    z-index:0;

}

.delight-card:hover::before{

    height:100%;

}

.delight-card:hover{

    transform:translateY(-10px);

    box-shadow:0 18px 45px rgba(0,0,0,.15);

}



/*==================================================
                IMAGE
==================================================*/

.delight-image{

    position:relative;

    z-index:2;

    height:150px;

    display:flex;

    align-items:center;

    justify-content:center;

    margin-bottom:20px;

}

.delight-image img{

    max-width:120px;

    transition:.5s ease;

}

.delight-card:hover img{

    transform:scale(1.12) rotate(-5deg);

}



/*==================================================
                CARD TEXT
==================================================*/

.delight-card p{

    position:relative;

    z-index:2;

    font-size:17px;

    line-height:1.7;

    color:#111;

    font-weight:500;

}



/*==================================================
            BOTTOM TITLE
==================================================*/

.delight-bottom-title{

    text-align:center;

    margin-top:90px;

}

.delight-bottom-title h2{

    font-size:62px;

    font-weight:800;

    line-height:1.15;

    color:#111;

}

.delight-bottom-title span{

    position:relative;

    display:inline-block;

    z-index:1;

}

.delight-bottom-title span::after{

    content:"";

    position:absolute;

    left:-5px;

    right:-5px;

    bottom:8px;

    height:22px;

    background:#ED1C24;

    z-index:-1;

}



/*==================================================
                TABLET
==================================================*/

@media(max-width:992px){

.delight-heading h2{

    font-size:48px;

}

.delight-heading h4{

    font-size:22px;

}

.delight-grid{

    grid-template-columns:repeat(2,1fr);

}

.delight-bottom-title h2{

    font-size:46px;

}

}



/*==================================================
                MOBILE
==================================================*/

@media(max-width:768px){

.customer-delight{

    padding:70px 0;

}

.delight-heading h2{

    font-size:36px;

}

.delight-heading h4{

    font-size:20px;

}

.delight-heading p{

    font-size:16px;

    line-height:1.7;

}

.delight-grid{

    grid-template-columns:1fr;

    gap:20px;

    margin-top:45px;

}

.delight-card{

    padding:30px 20px;

}

.delight-image{

    height:120px;

}

.delight-image img{

    max-width:95px;

}

.delight-bottom-title{

    margin-top:60px;

}

.delight-bottom-title h2{

    font-size:20px;

}

.delight-bottom-title span::after{

    height:14px;

    bottom:5px;

}

}






