/*===============================================
Template Name: Roofing & Construction Services HTML5 Template
Author:  https://themeforest.net/user/refreshsquare/portfolio
Description: Description
Version: 1.0.0
Text Domain: roofin
Tags: construction, industrial, construction, contractor, industrial, construction, contractor, agency, company, portfolio, insurance.
================================================*/

/*TABLE OF CONTENTS*/
/*=====================
01. roofin Header Area Css
02. roofin Sidbar Css
03. roofin hero section css /one/two/three
04. roofin section title Css
05. roofin about-section css /one/two/three/
06. roofin service section css /one/two/three/
07. roofin video section css
08. roofin video section mountain/classic
09. roofin Why choose section /one/two/three/
10. roofin process section /one/two/three/
11. roofin work section/one/two/three/
12. roofin Contact section/on/two
13. roofin Team section/on/two
14. roofin testimonial section/on/two/three
15. roofin blog section css /one/two/three/
16. roofin subscribe section css /one/two/
17. roofin pricing section css /one/two/
18. roofinroofin footer area css
19. roofin roofin latest blog section
20. roofin Blog Details section
21. roofin Service Details section
22. roofin  team Details section
23. roofin Project Details section
24. roofin faqs season  section
25. roofin breadcumb Secttion
26. Loader Css
=======================*/


/*===========================
  Main Header style one
===========================*/


.main-header {
    position: relative;
    top: 0;
    left: 0;
    z-index: 999;
    transition: all 0.3s ease;
}

.main-header.header-style-one {
    background-color: var(--bg-color1);
    padding: 15px 15px 15px 0;
}

header.main-header.header-style-one.style_02 {
    background: var(--primary-color);
}

header.main-header.header-style-one.style__03 {
    background: transparent;
    padding: 20px 5px 15px 240px;
}

header.main-header.header-style-one.style__04 {
    background: transparent;
}

.main-header .header-lower {
    position: relative;
    transition: all 300ms ease;
}

.main-header .header-lower .logo-box {
    min-width: 255px;
    padding: 24px 0 24px 40px;
    position: relative;
}

.main-header.scrolled {
    background: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.main-header .logo {
    display: block;
    position: relative;
}

.main-header .logo img {
    max-width: 170px;
    height: auto;
}

.main-header .main-box {
    align-items: center;
    display: flex;
    justify-content: space-between;
    left: 0px;
    position: relative;
    top: 0px;
    transition: all 300ms ease;
    margin: 0;
}

.main-header .main-box .nav-outer {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    background: var(--color-white);
    padding: 0 35px 0 25px;
    border-radius: 20px;
}

.main-menu {
    position: relative;
}

.mega-sub-menu {
    width: 1000px !important;
    padding: 12px 0 15px !important;
    left: -25px !important;
}

.mega-sub-menu .mega-menu {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.mega-sub-menu .mega-menu .mega-site-menu {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    margin: 15px 30px 0;
    text-align: center;
}

.mega-sub-menu .mega-menu .mega-munu-bx li {
    position: relative;
    width: 100%;

}

.home-menu-item-thumb {
    position: relative;
    overflow: hidden;
}

.home-menu-item-thumb img {
    transform: scale(1);
    transition: 0.5s;
}

.home-menu-item-thumb:hover img {
    transform: scale(1.1);
}

h4.home-menu-title {
    font-weight: 600;
    font-size: 22px;
}


.main-menu .navbar-header {
    display: none;
}

.main-menu .navbar-collapse {
    padding: 0px;
}

.main-menu .navigation {
    margin: 0px;
    position: relative;
}

.main-menu .navigation>li {
    float: left;
    position: relative;
    transition: all 300ms ease;
    margin-right: 25px;
}

.main-menu .navigation>li:last-child {
    margin-right: 0;
}

.main-menu .navigation>li>a {
    transition: all 300ms ease;
    display: inline-block;
    padding: 32px 14px 32px 14px;
    position: relative;
    z-index: 1;
    font-size: 18px;
    line-height: 26px;
    text-transform: capitalize;
    color: var(--title-color);
    font-weight: 500;
    font-family: var(--title-font);
    transition: 0.5s;
}

.main-menu .navigation>li>a .icon {
    position: relative;
    font-size: 22px;
    line-height: 24px;
    margin-left: 10px;
}

.main-menu .navigation>li>a:hover {
    color: var(--primary-color);
}

.main-menu .navigation>li.current>a {
    color: var(--title-color);
    font-weight: 700;
}

.main-menu .navigation>li.dropdown>a:after {
    content: "\f107";
    display: block;
    font-family: "Font Awesome 5 Free";
    font-size: 14px;
    font-weight: 900;
    height: 20px;
    line-height: 24px;
    position: absolute;
    right: -22px;
    top: 49%;
    transform: translateY(-50%);
    width: 30px;
    z-index: 5;
}

.main-menu .navigation>li.dropdown:hover>ul {
    visibility: visible;
    opacity: 1;
    transform: scale(1);
}

.main-menu .navigation>li>ul {
    position: absolute;
    top: 100%;
    left: 0;
    width: 260px;
    z-index: 99;
    opacity: 0;
    padding: 12px 0;
    transition: 0.5s;
    text-align: start;
    visibility: hidden;
    transform-origin: 0 0;
    transform: scale(1, 0);
    background: var(--color-white);
    backdrop-filter: blur(40px);
    border: 1px solid rgba(245, 247, 245, 0.1);
    box-shadow: 0 2px 6px 0 rgba(19, 19, 22, 0.08);
}

.main-menu .navigation>li>ul.from-right {
    left: auto;
    right: 0px;
}

.main-menu .navigation>li>ul>li {
    position: relative;
    width: 100%;
    border-bottom: 1px dashed var(--theme-color2);
}

.main-menu .navigation>li>ul>li:last-child {
    border-bottom: none;
}

.main-menu .navigation>li>ul>li>a {
    position: relative;
    display: block;
    padding: 10px 0px;
    line-height: 1;
    font-weight: 500;
    font-size: 18px;
    color: var(--title-color);
    text-align: left;
    margin: 0 30px;
    text-transform: capitalize;
    transition: all 200ms ease;
    font-family: var(--title-font);
}

.main-menu .navigation>li>ul>li:hover>a {
    color: var(--primary-color);
}

.main-menu .navigation>li>ul>li.dropdown>a:after {
    font-family: 'Font Awesome 5 Free';
    content: "\f105";
    position: absolute;
    right: 0;
    top: 11px;
    display: block;
    line-height: 24px;
    font-size: 11px;
    font-weight: 900;
    z-index: 5;
}

.main-menu .navigation>li>ul>li.dropdown:hover>ul {
    visibility: visible;
    opacity: 1;
    top: 0px;
    margin-top: 20px;
    transition: all 300ms ease;
}

.main-menu .navigation>li>ul>li>ul {
    background-color: var(--theme-color-white);
    border-top: 2px solid var(--theme-color7);
    border-bottom: 2px solid var(--theme-color7);
    box-shadow: 2px 2px 5px 1px rgba(0, 0, 0, 0.05), -2px 0px 5px 1px rgba(0, 0, 0, 0.05);
    display: none;
    left: 100%;
    margin-top: 10px;
    opacity: 0;
    padding: 15px 0 0;
    position: absolute;
    top: 0px;
    transform: translateY(-32px);
    width: 260px;
    z-index: 100;
}

.main-menu .navigation>li>ul>li>ul>li {
    border-bottom: 1px dashed var(--theme-color2);
    position: relative;
    width: 100%;
}

.main-menu .navigation>li>ul>li>ul>li:last-child {
    border-bottom: none;
}

.main-menu .navigation>li>ul>li>ul>li>a {
    color: var(--theme-color1);
    display: block;
    font-size: 15px;
    font-weight: 400;
    line-height: 1;
    margin: 0 30px;
    padding: 10px 0 15px;
    position: relative;
    text-align: left;
    text-transform: capitalize;
    transition: all 300ms ease;
}

.main-menu .navigation>li>ul>li>ul>li>a:hover {
    color: var(--theme-color2);
}

.main-menu .navigation li.dropdown .dropdown-btn {
    border: 1px solid #ffffff;
    color: #ffffff;
    cursor: pointer;
    display: none;
    font-size: 16px;
    height: 30px;
    line-height: 26px;
    position: absolute;
    right: 10px;
    text-align: center;
    top: 8px;
    width: 34px;
    z-index: 5;
}

.main-header .header-lower .outer-box {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: flex-end;
    position: relative;
}

.main-header .header-lower .outer-box .theme-btn {
    display: inline-block;
    font-family: var(--title-font);
    color: var(--theme-color-white);
    background: var(--theme-color1);
    padding: 11px 26px;
    font-weight: 400;
    font-size: 18px;
    border-radius: 45px;
    position: relative;
    z-index: 1;
    transition: all 300ms ease;
    margin-right: 30px;
}

.main-header .header-lower .outer-box .theme-btn::before {
    position: absolute;
    content: "";
    height: 16px;
    width: 1px;
    background-color: var(--theme-color-white);
    left: 135px;
    top: 20px;
}

.main-header .header-lower .outer-box .theme-btn::after {
    position: absolute;
    content: "";
    width: 0;
    height: 100%;
    left: 50%;
    top: 0;
    background: var(--theme-color2);
    z-index: -1;
    border-radius: 45px;
    transition: all 300ms ease;
}

.main-header .header-lower .outer-box .theme-btn span i {
    display: inline-block;
    margin-left: 18px;
    font-size: 16px;
    font-weight: 400;
    position: relative;
    top: 2px;
}

.main-header .header-lower .outer-box .theme-btn:hover::after {
    width: 101%;
    left: 0;
}

.main-header .header-lower .outer-box .menubars-text a {
    display: inline-block;
    font-family: var(--title-font);
    font-weight: 500;
    font-size: 18px;
    color: var(--heading-color);
}

.main-header .header-lower .outer-box .menubars {
    width: 25px;
    line-height: 8px;
    text-align: right;
    background: transparent;
    position: relative;
    z-index: 1;
    top: -7px;
    right: -10px;
}

.main-header .header-lower .outer-box .menubars span {
    display: inline-block;
    width: 18px;
    height: 2px;
    background-color: var(--theme-black);
    transition: all 300ms ease;
}

.main-header .header-lower .outer-box .menubars span:nth-child(2) {
    width: 28px;
    text-align: left;
}

.main-header .header-lower .outer-box .menubars span:nth-child(3) {
    width: 18px;
    text-align: right;
}

.main-header .header-lower .outer-box .ui-btn-outer {
    align-items: center;
    border-right: 1px solid #e6e8ed;
    display: flex;
    justify-content: flex-end;
    margin-right: 30px;
    padding: 6px 0;
    padding-right: 30px;
}

.main-header .ui-btn {
    background: none;
    color: var(--theme-color1);
    display: block;
    font-size: 26px;
    line-height: 30px;
    height: 30px;
    margin-left: 26px;
    position: relative;
    text-align: center;
    transition: all 300ms ease;
    width: 30px;
}

.main-header .ui-btn:hover {
    color: var(--theme-color2);
}

.main-header .info-btn {
    color: var(--theme-color1);
    display: block;
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
    padding: 8px 0;
    padding-left: 54px;
    position: relative;
    text-align: left;
}

.main-header .info-btn small {
    color: #808287;
    font-size: 12px;
    font-weight: 400;
}

.main-header .info-btn i {
    background-color: var(--bg-theme-color1);
    border-radius: 50%;
    color: #fff;
    font-size: 18px;
    height: 44px;
    left: 0;
    line-height: 44px;
    margin-top: -22px;
    position: absolute;
    text-align: center;
    top: 50%;
    width: 44px;
}

.main-header .info-btn:hover {
    color: var(--bg-theme-color2);
}

.main-header .info-btn-two {
    background-color: var(--theme-color2);
    color: var(--text-color-bg-theme-color2);
    display: block;
    font-size: 16px;
    font-weight: 700;
    line-height: 20px;
    padding: 10px 25px 9px 65px;
    position: relative;
    text-align: left;
}

.main-header .info-btn-two small {
    color: #000;
    font-size: 14px;
    font-weight: 400;
}

.main-header .info-btn-two i {
    color: var(--theme-color4);
    font-size: 24px;
    left: 23px;
    position: absolute;
    text-align: center;
    top: 50%;
    transform: translateY(-50%);
}


/* header button */
.header-right-wrapper {
    display: flex;
    align-items: center;
    gap: 30px;
}

.header-btn a {
    display: inline-block;
    font-size: 18px;
    color: var(--color-white);
    font-weight: 500;
    font-family: var(--title-font);
    border-radius: 55px;
    background: var(--primary-color);
    padding: 12px 30px;
    transition: 0.5s;
    position: relative;
    z-index: 1;
    margin-right: 50px;
}

.header-btn a::before {
    position: absolute;
    content: "";
    height: 100%;
    width: 100%;
    background: var(--title-color);
    border-radius: 30px;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    transition: .5s;
    clip-path: polygon(50% 0, 50% 0, 50% 50%, 50% 100%, 50% 100%, 50% 50%);
    z-index: -1;
}

.header-btn a:hover::before {
    clip-path: polygon(25% -70%, 75% -70%, 120% 50%, 75% 170%, 25% 170%, -20% 50%);
}

.header-btn a i {
    display: inline-block;
    margin-left: 10px;
    height: 50px;
    width: 50px;
    background: var(--primary-color);
    line-height: 50px;
    position: absolute;
    right: -45px;
    top: 0;
    border-radius: 50%;
    transition: 0.5s;
}

.header-btn a:hover i {
    background: var(--title-color);
}

.header-call-info {
    display: inline-block;
}

.header-call-info p {
    display: inline-block;
    font-family: var(--title-font);
    color: var(--title-color);
    font-weight: 500;
    font-size: 18px;
}

.header-call-info p span {
    font-size: 16px;
    color: var(--primary-color);
    margin-right: 10px;
}

.roofin-header-area.resort-classic .header-call-info p {
    color: var(--color-white);
}


/***============================
Sticky Header
================================***/

.sticky-header {
    background: var(--bg-color1);
    -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, .05);
    box-shadow: 0 0 20px rgba(0, 0, 0, .05);
    left: 0px;
    opacity: 0;
    padding: 15px 15px 15px 25px;
    position: fixed;
    top: 0px;
    visibility: hidden;
    width: 100%;
    z-index: 99999;
    animation: 0.95s ease 0s normal forwards 1 running headerSlideDown;
    -webkit-animation: 0.95s ease 0s normal forwards 1 running headerSlideDown;
    transition: 0.5s;
}

.sticky-header.fixed-header {
    opacity: 1;
    visibility: visible;
    z-index: 9999;
}

.sticky-header .nav-outer {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    background: var(--color-white);
    padding: 0 35px 0 25px;
    border-radius: 20px;
}

.sticky-header .inner-container {
    align-items: center;
    display: flex;
    justify-content: space-between;
    position: relative;
}

.sticky-header .logo {
    width: 255px;
}



.sticky-header .mobile-nav-toggler {
    color: var(--color-white);
}

@keyframes headerSlideDown {
    0% {
        margin-top: -150px
    }

    100% {
        margin-top: 0
    }
}


/*===========================
<-- roofin Sidbar Css -->
=============================*/

.xs-sidebar-group .xs-overlay {
    left: 100%;
    top: 0;
    position: fixed;
    z-index: 101;
    height: 100%;
    opacity: 0;
    width: 100%;
    visibility: hidden;
    -webkit-transition: all 0.4s ease-in 0.8s;
    -o-transition: all 0.4s ease-in 0.8s;
    transition: all 0.4s ease-in 0.8s;
}

.xs-sidebar-group .widget-heading {
    position: absolute;
    top: 23px;
    right: 0;
    padding: 25px;
}

.xs-sidebar-widget {
    position: fixed;
    right: -100%;
    top: 0;
    bottom: 0;
    width: 100%;
    max-width: 360px;
    z-index: 999999;
    overflow: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    background-color: var(--title-color);
    -webkit-transition: all 0.5s cubic-bezier(0.9, 0.03, 0, 0.96) 0.6s;
    -o-transition: all 0.5s cubic-bezier(0.9, 0.03, 0, 0.96) 0.6s;
    transition: all 0.5s cubic-bezier(0.9, 0.03, 0, 0.96) 0.6s;
    visibility: hidden;
    opacity: 0;
}

.xs-sidebar-group.isActive .xs-overlay {
    opacity: 0.7;
    visibility: visible;
    -webkit-transition: all 0.8s ease-out 0s;
    -o-transition: all 0.8s ease-out 0s;
    transition: all 0.8s ease-out 0s;
    left: 0;
}

.xs-sidebar-group.isActive .xs-sidebar-widget {
    opacity: 1;
    visibility: visible;
    right: 0;
    -webkit-transition: all 0.7s cubic-bezier(0.9, 0.03, 0, 0.96) 0.4s;
    -o-transition: all 0.7s cubic-bezier(0.9, 0.03, 0, 0.96) 0.4s;
    transition: all 0.7s cubic-bezier(0.9, 0.03, 0, 0.96) 0.4s;
}

.sidebar-textwidget {
    padding: 40px 32px;
}

.close-side-widget i {
    color: var(--primary-color);
    font-size: 28px;
    display: block;
}

.sidebar-widget-container {
    position: relative;
    top: 150px;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.3s ease-in 0.3s;
    -o-transition: all 0.3s ease-in 0.3s;
    transition: all 0.3s ease-in 0.3s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.xs-sidebar-group.isActive .sidebar-widget-container {
    top: 0px;
    opacity: 1;
    visibility: visible;
    -webkit-transition: all 1s ease-out 1.2s;
    -o-transition: all 1s ease-out 1.2s;
    transition: all 1s ease-out 1.2s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.xs-overlay {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    opacity: 0.5;
    z-index: 0;
}

.xs-bg-black {
    background-color: var(--primary-color);
}

/*html css*/
.nav-logo {
    margin: 0 0 50px;
}

.content-box h2 {
    color: #fff;
    font-size: 26px;
    font-weight: 600;
}

.content-box p {
    display: inline-block;
    color: #fff;
    padding: 15px 0 0;
}

a.theme-btn.btn-style-two span {
    color: #fff;
    font-size: 20px;
    padding-top: 10px;
    display: inline-block;
}

a.theme-btn.btn-style-two i {
    color: var(--primary-color);
}

.contact-info h2 {
    color: #fff;
    font-size: 26px;
    margin-bottom: 15px;
    font-weight: 600;
}

ul.list-style-one li {
    display: block;
    list-style: none;
    color: #fff;
    padding: 16px 0 0;
    overflow: hidden;
}

ul.list-style-one li span {
    font-size: 20px;
    font-weight: 600;
    color: var(--primary-color);
    margin: 0 10px 0 0px;
}

ul.social-box {
    margin: 30px 0 0;
}

ul.social-box li {
    display: inline-block;
    list-style: none;
    margin: 0 6px 0 0;
}

ul.social-box li a {
    display: inline-block;
    width: 35px;
    height: 35px;
    line-height: 36px;
    text-align: center;
    background: #fff;
    color: var(--primary-color);
    transition: .5s;
    font-size: 18px;
    border-radius: 3px;
}

ul.social-box li a:hover {
    background: var(--primary-color);
    color: #fff;
}



/*===========================================
<-- roofin hero section one css -->
==============================================*/

.hero-section-one .hero-section-bg {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 850px;
    border-radius: 30px;
    position: relative;
    z-index: 1;
}

figure.hero-img {
    position: absolute;
    bottom: 0;
    right: 25%;
    z-index: 1;
}

figure.hero-shape {
    position: absolute;
    right: 26%;
    bottom: 44%;
    z-index: -1;
}

/* client card */
.client-card {
    display: flex;
    align-items: center;
    margin-left: 15px;
    margin-bottom: 18px;
}

.client-avatars {
    display: flex;
    align-items: center;
    border: 0;
}

.client-avatars .avatar {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--primary-color);
    margin-left: -15px;
    border: 2px solid var(--color-white);
}

.avatar.count span {
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    font-family: var(--title-font);
}

.client-text h3 {
    margin: 0;
    font-size: 16px;
    font-weight: 500;
    margin-left: 20px;
    line-height: 22px;
}

.hero-section-one .hero_content h2 {
    color: var(--title-color);
    font-weight: 800;
    font-size: 130px;
    line-height: 120px;
    position: relative;
    z-index: 1;
}

/*===========================================
<-- roofin hero section one style__02 css -->
==============================================*/

.hero-section-one.style__02 .hero_content.style__02 {
    position: relative;
    z-index: 1;
}

.hero-section-one.style__02 .hero_content h2 {
    font-size: 90px;
    line-height: 90px;
}

.hero-section-one.style__02 .hero__icon {
    margin-bottom: 22px;
}

.hero-section-one.style__02 .hero__desc {
    font-family: var(--title-font);
    font-weight: 400;
    font-size: 17px;
    line-height: 30px;
    width: 60%;
    margin: 18px 0 0;
}

.hero-section-one.style__02 .title__shape {
    position: absolute;
    top: 37%;
    left: 24%;
    z-index: -1;
}

.hero-section-one.style__02 .hero-button {
    margin-top: 40px;
}

.hero__video {
    text-align: center;
    margin-left: -79px;
}

.hero__video a {
    width: 130px;
    height: 130px;
    line-height: 130px;
    backdrop-filter: blur(5px);
    border: 1px solid #FFFFFF99;
    background: rgb(255 255 255 / 10%);
    display: inline-block;
    text-align: center;
    border-radius: 50%;
    font-size: 20px;
    color: var(--color-white);
}

.hero__video a i {
    display: inline-block;
    height: 70px;
    width: 70px;
    line-height: 70px;
    background: var(--primary-color);
    border-radius: 50%;
}

/* roofin button */

.hero-button {
    margin-top: 62px;
}

.roofin__button a {
    display: inline-block;
    background: var(--primary-color);
    backdrop-filter: blur(50px);
    font-family: var(--title-font);
    color: var(--color-white);
    font-weight: 500;
    font-size: 18px;
    padding: 16px 40px;
    border-radius: 30px;
    transition: 0.5s;
    position: relative;
    z-index: 1;
}

.roofin__button a:hover {
    margin-left: 60px;
}

.roofin__button a::before {
    position: absolute;
    content: "";
    height: 100%;
    width: 100%;
    background: var(--bg-color1);
    border-radius: 30px;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    transition: .5s;
    clip-path: polygon(50% 0, 50% 0, 50% 50%, 50% 100%, 50% 100%, 50% 50%);
    z-index: -1;
}

.roofin__button a:hover::before {
    clip-path: polygon(25% -70%, 75% -70%, 120% 50%, 75% 170%, 25% 170%, -20% 50%);
}

.roofin__button a i.two {
    display: inline-block;
    margin-left: 10px;
    height: 60px;
    width: 60px;
    background: var(--primary-color);
    line-height: 60px;
    position: absolute;
    right: -55px;
    top: 0;
    border-radius: 50%;
    transition: 0.5s;

}

.roofin__button a i.one {
    display: inline-block;
    margin-left: 10px;
    height: 60px;
    width: 60px;
    background: var(--primary-color);
    line-height: 60px;
    position: absolute;
    left: 0;
    top: 0;
    border-radius: 50%;
    transition: 0.5s;
    opacity: 0;
}

.roofin__button a:hover i.one {
    opacity: 1;
    left: -65px;
    background: var(--bg-color1);
}

.roofin__button a:hover i.two {
    opacity: 0;
}

/* Style Two */
.roofin__button.style__two a:hover {
    color: var(--primary-color);
}

.roofin__button.style__two a::before {
    background: var(--color-white);
}

.roofin__button.style__two a:hover i.one {
    background: var(--color-white);
    color: var(--primary-color);
}

/* right button */

.roofin__right__button {
    margin-top: 30px;
    text-align: right;
}

.roofin__right__button a {
    display: inline-block;
    font-size: 18px;
    color: var(--color-white);
    font-weight: 500;
    font-family: var(--title-font);
    border-radius: 55px;
    background: var(--primary-color);
    padding: 14px 30px;
    transition: 0.5s;
    position: relative;
    z-index: 1;
    margin-right: 50px;
}

.roofin__right__button a::before {
    position: absolute;
    content: "";
    height: 100%;
    width: 100%;
    background: var(--color-white);
    border-radius: 30px;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    transition: .5s;
    clip-path: polygon(50% 0, 50% 0, 50% 50%, 50% 100%, 50% 100%, 50% 50%);
    z-index: -1;
}

.roofin__right__button a:hover {
    color: var(--title-color);
}

.roofin__right__button a:hover::before {
    clip-path: polygon(25% -70%, 75% -70%, 120% 50%, 75% 170%, 25% 170%, -20% 50%);
}

.roofin__right__button a i {
    display: inline-block;
    margin-left: 10px;
    height: 55px;
    width: 55px;
    background: var(--primary-color);
    line-height: 55px;
    position: absolute;
    right: -45px;
    top: 0;
    border-radius: 50%;
    transition: 0.5s;
}

.roofin__right__button a:hover i {
    background: var(--color-white);
    color: var(--title-color);
}

/*===========================================
<-- roofin Hero section  style__03 css -->
==============================================*/

section.hero-section-one.style__02.style__03 {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    background: url(../images/demo-images/hero-bg3.png);
}

.hero-section-one.style__03 .hero-section-bg {
    margin: 0 20px 0;
    height: 1210px;
    border-radius: 0;
    margin-top: -125px;
}

.hero_content.style__03 {
    margin-top: 186px;
}

.hero-section-one.style__03 .hero_content h2 {
    color: var(--color-white);
}

.hero-section-one.style__03 .title__shape {
    top: 43%;
    left: 16%;
}

.hero-bg-img {
    position: absolute;
    right: 0;
    bottom: 120px;
    z-index: -1;
}

/* hero icon box */

.hero-icon-box {
    background: url(../images/demo-images/hero-icon-box-sp.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: absolute;
    right: 0;
    bottom: 85px;
    padding: 30px;
    width: 347px;
    border-radius: 20px;
}

.hero-icon {
    margin-bottom: 30px;
}

p.hero__icon__desc {
    font-size: 17px;
    color: var(--color-white);
    line-height: 28px;
}

/* hero animation text */

.slider-sid-text {
    position: absolute;
    left: -9.7%;
    bottom: 25.3%;
    transform: rotate(-90deg);
}

.slider-sid-text h1 {
    font-size: 145px;
    font-weight: 700;
    line-height: 120px;
    -webkit-text-stroke-width: 2px;
    -webkit-text-stroke-color: #F68931;
    color: transparent;
    -webkit-mask-image: linear-gradient(-75deg, rgb(185 28 28 / 15%) 50%, #000000 50%, rgba(255, 255, 255, 0.15) 70%);
    -webkit-mask-size: 200%;
    animation: shine 3s infinite;
    transition: .5s;
}

@-webkit-keyframes shine {
    from {
        -webkit-mask-position: 150%;
    }

    to {
        -webkit-mask-position: -50%;
    }
}


/*===========================================
<-- roofin section title Css  -->
==============================================*/

.sec-title {
    margin-bottom: 50px;
}

.sec-title.upper {
    margin-top: -5px;
}

.section-sub-title span {
    font-family: var(--title-font);
    font-weight: 500;
    font-size: 16px;
    text-transform: uppercase;
    color: var(--color-white);
    background: #FFFFFF0D;
    display: inline-block;
    padding: 2px 20px;
    line-height: 26px;
    border: 1px solid #FFFFFF1A;
    border-radius: 40px 0 0 40px;
    margin-bottom: 12px;
}

.section-sub-title.two span {
    border: 1px solid #1414141A;
    color: var(--bg-color1);
}

.section-sub-title.style__03 span {
    border: 2px dashed #1414141A;
}

.section-title {
    margin-top: 15px;
}

.section-title h2 {
    font-family: var(--title-font);
    font-weight: 700;
    font-size: 52px;
    line-height: 44px;
    color: var(--title-color);
}

.section__description {
    font-weight: 400;
    font-size: 18px;
    line-height: 28px;
    color: #ffffff94;
    width: 80%;
    margin: 22px 0 0;
}

/*===========================================
<-- about-section css -->
==============================================*/

.about-section {
    background: var(--bg-color1);
    padding: 121px 0px 110px;
    margin-top: -1px;
}

/* about thumb */

.about-thumb {
    margin-top: 85px;
    position: relative;
    z-index: 1;
}

.about-shape {
    position: absolute;
    top: -30%;
    left: -29%;
    right: 0;
    margin: auto;
    text-align: center;
    z-index: -1;
}

.about-us-img figure {
    display: block;
    mask-size: cover;
    mask-position: center center;
    mask-repeat: no-repeat;
    mask-image: url('../images/demo-images/about-thum.png');
    background-image: url('../images/demo-images/about-thum.png');
}

.about-us-img figure img {
    width: 100%;
    object-fit: cover;
}

/* single icon box */

.main-box {
    margin-top: 10px;
}

.icon-single-box {
    display: flex;
    gap: 25px;
    border-bottom: 1px solid var(--boder-color);
    margin-bottom: 25px;
    padding-bottom: 32px;
}

.icon-single-box.two {
    padding: 0;
    margin: 0;
    border: 0;
}

.icon-single-box .icon {
    width: 74px;
    height: 74px;
    line-height: 74px;
    text-align: center;
    background: var(--bg-color3);
    border-radius: 50%;
    flex-shrink: 0;
    margin-top: 13px;
    transition: 0.5s;
}

.icon-single-box .icon svg {
    transition: 0.5s;
}

.icon-single-box:hover .icon svg {
    transform: scaleX(-1);
}

.icon-content-box h3 {
    color: var(--color-white);
    font-weight: 600;
    font-size: 28px;
    margin: 0 0 3px;
}

/* single icon box style Two*/
.main-box.style__two {
    border-top: 1px solid #FFFFFF26;
    border-bottom: 1px solid #FFFFFF26;
    padding-top: 32px;
    padding-bottom: 30px;
}

.icon-single-box.style__two {
    border-bottom: 0;
    margin-bottom: 0;
    padding-bottom: 0;
}

.icon-single-box.style__two .icon-content-box h3 {
    font-size: 24px;
    margin: 0;
    line-height: 32px;
    color: var(--color-white);
}

.icon-single-box.style__two .icon {
    width: 70px;
    height: 70px;
    line-height: 64px;
    margin-top: -3px;
    border: 1px solid #FFFFFF26;
}

/* ===============================
    Start About Home Two
================================== */

.about-section.style__02 {
    position: relative;
    padding: 120px 0 110px;
    z-index: 1;
    background: url(../images/demo-images/about-bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    border-radius: 30px;
}

.about__bg {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.about-section.style__02 .sec-title {
    margin-bottom: 65px;
}

.about-section.style__02 .main-box {
    margin-top: 0;
    margin-left: 15px;
}

p.about__desc {
    font-family: var(--title-font);
    font-weight: 400;
    font-size: 16px;
    line-height: 30px;
}

.about__icon__list {
    display: flex;
    align-items: center;
    gap: 15px;
    margin: 30px 0 15px;
}

.about__icon__list .icon {
    height: 60px;
    width: 60px;
    line-height: 52px;
    border: 1px solid #F689314D;
    border-radius: 50%;
    text-align: center;
}

.about__icon__list .icon-content-box h3 {
    font-weight: 500;
    font-size: 22px;
    line-height: 30px;
    color: var(--bg-color1);
}

.about-us-imgs {
    position: absolute;
    bottom: 117px;
    right: 30px;
}

/*===========================================
<-- About Section Style 03 css -->
==============================================*/

.about-section.style__03 {
    background: var(--color-white);
}

.about-section.style__03 .sec-title {
    margin-bottom: 22px;
}

.about-thumbs {
    position: relative;
    z-index: 1;
}

.about__img__03 {
    position: absolute;
    top: 13%;
    right: 12%;
}

/* about Counter */

.counter__card {
    position: absolute;
    bottom: 7px;
    background: var(--primary-color);
    border-radius: 20px;
    width: 195px;
    text-align: center;
    padding: 31px 0 26px;
}

.counter__card.two {
    bottom: auto;
    width: 175px;
    top: 0;
}

.cunter__namber h1 {
    display: inline-block;
    font-weight: 700;
    font-size: 58px;
    line-height: 29px;
    color: var(--color-white);
}

.counter__title {
    color: var(--color-white);
    font-size: 17px;
    font-weight: 700;
    line-height: 28px;
    margin-top: 30px;
}

/* about main box */

.about-section.style__03 .main-box {
    margin-left: 0;
}

.about-section.style__03 .about__icon__list .icon-content-box h3 {
    font-weight: 400;
    font-size: 18px;
    margin-bottom: 14px;
}

.about-section.style__03 .about__icon__list .icon-content-box h3 img {
    margin-top: -2px;
    margin-right: 8px;
}

.about__sps {
    position: absolute;
    bottom: 14px;
    right: 50px;
    z-index: -1;
}

/*===========================================
<-- About Section Style Inner css -->
==============================================*/

.about-section.style__inner {
    background: var(--color-white);
}

.about-section.style__inner .icon-content-box h3 {
    color: var(--bg-color1);
}

.about-section.style__inner .icon-single-box .icon {
    background: #FDF2E9;
}


/*===========================================
<-- Marque Section css -->
==============================================*/

.marquee-section {
    position: relative;
    z-index: 1;
    background-color: var(--bg-color1);
    padding: 0 0 100px;
}

/* Left shadow */

.marquee-section::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 45%;
    height: 100%;
    background: linear-gradient(to right,
            var(--bg-color1),
            transparent);
    z-index: 2;
    pointer-events: none;
}

/* Right shadow */
.marquee-section::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 45%;
    height: 100%;
    background: linear-gradient(to left,
            var(--bg-color1),
            transparent);
    z-index: 2;
    pointer-events: none;
}

.marquee {
    position: relative;
    --duration: 30s;
    --gap: 0px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    gap: 0px;
}

.marquee-block {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    gap: 0px;
    min-width: 100%;
    -webkit-animation: scroll 30s linear infinite;
    animation: scroll 30s linear infinite;

}

.marquee-block h3 {
    font-size: 120px;
    text-transform: uppercase;
    color: var(--color-white);
    font-weight: 700;
    line-height: 90px;
}

.marquee-block h3 span {
    display: inline-block;
    margin: 0 35px 0 40px;
    transition: 0.5s;
    position: relative;
    top: -10px;
}

@-webkit-keyframes scroll {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    100% {
        -webkit-transform: translateX(calc(-100% - var(--gap)));
        transform: translateX(calc(-100% - var(--gap)));
    }
}

@keyframes scroll {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }

    100% {
        -webkit-transform: translateX(calc(-100% - var(--gap)));
        transform: translateX(calc(-100% - var(--gap)));
    }
}

/* marque section style two */

.marquee-section.style__02 {
    background: var(--primary-color);
    padding: 25px 0 30px;
}

.marquee-section.style__02::before {
    background: linear-gradient(to right,
            var(--primary-color),
            transparent);
}

.marquee-section.style__02::after {
    background: linear-gradient(to left,
            var(--primary-color),
            transparent);
}


/*===========================================
<-- Service Section Css -->
==============================================*/

.service-section {
    background: url(../images/demo-images/service-bg.png);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 170px 0 170px;
    border-radius: 30px;
}

/* service single box */
.service-single-box {
    background: var(--color-white);
    padding: 20px 20px 35px;
    border-radius: 20px;
}

.service-thumb figure {
    display: block;
    mask-size: cover;
    mask-position: center center;
    mask-repeat: no-repeat;
    mask-image: url('../images/demo-images/service-img1.png');
    background-image: url('../images/demo-images/service-img1.png');
}

.service-thumb img {
    width: 100%;
    object-fit: cover;
}

.service__content {
    margin: 26px 20px 0;
}

.service__title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #1414141a;
    margin-bottom: 26px;
    padding-bottom: 17px;
    position: relative;
    z-index: 1;
}

.service__title::before {
    position: absolute;
    content: '';
    right: 50%;
    height: 1px;
    width: 0;
    transition: 0.5s;
    bottom: 0;
    background: var(--primary-color);
}

.service-single-box:hover .service__title::before {
    width: 100%;
    right: 0;
}

.service__title .title.title {
    margin: 0;
}

.service__title .title a {
    font-size: 30px;
    font-weight: 600;
    line-height: 38px;
    display: inline-block;
}

.service__btn a {
    display: inline-block;
    border: 1px solid #1414141A;
    height: 50px;
    width: 50px;
    line-height: 50px;
    text-align: center;
    border-radius: 50%;
    position: relative;
    z-index: 1;
    font-size: 16px;
    font-weight: 600;
    color: var(--text-color);
    transform: rotate(-45deg);
    top: -5px;
}

.service__btn a:hover {
    border: 1px solid var(--primary-color);
    color: var(--color-white);
}

.service__btn a::before {
    position: absolute;
    content: '';
    left: 0;
    top: 0;
    transform: scale(0);
    height: 100%;
    width: 100%;
    background: var(--primary-color);
    border-radius: 50%;
    transition: 0.5s;
    z-index: -1;
}

.service__btn a:hover:before {
    transform: scale(1);
}

.service__list li {
    font-family: var(--title-font);
    font-weight: 400;
    font-size: 18px;
    line-height: 26px;
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    gap: 10px;
}

/* Slider Prev And Next Button */
.custom-swiper-slider {
    position: relative;
    z-index: 1;
}

.swiper__arrow__button {
    position: absolute;
    right: 0;
    top: -152px;
    display: flex;
    gap: 12px;
}

.swiper__arrow__button .slider-prev {
    height: 50px;
    line-height: 13px;
    width: 60px;
    border-radius: 30px 0 0 30px;
    transition: all 0.3s ease 0s;
    color: #f6f2ed4f;
    background: transparent;
    z-index: 5;
    border: 0;
    border: 1px solid #14141426;
}

.swiper__arrow__button .slider-prev:hover {
    background: var(--primary-color);
    border: 1px solid var(--primary-color);
}

.swiper__arrow__button .slider-prev:hover img,
.swiper__arrow__button .slider-next:hover img {
    filter: brightness(0) invert(1);
}

.swiper__arrow__button .slider-next {
    height: 50px;
    line-height: 13px;
    width: 60px;
    border-radius: 0 30px 30px 0;
    transition: all 0.3s ease 0s;
    color: #f6f2ed4f;
    background: transparent;
    z-index: 5;
    border: 0;
    border: 1px solid #14141426;
}

.swiper__arrow__button .slider-next:hover {
    background: var(--primary-color);
    border: 1px solid var(--primary-color);
}

.swiper__arrow__button.slider-next i {
    display: inline-block;
    font-size: 20px;
}

/* service section style two */

.service-section.style__02 {
    background: var(--bg-color1);
    border-radius: 0;
    padding: 120px 0 120px;
}

.service-single-box.style__02 {
    background: url('data:image/svg+xml,%3Csvg%20width%3D%22312%22%20height%3D%22547%22%20viewBox%3D%220%200%20312%20547%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cmask%20id%3D%22path-1-inside-1_133_117%22%20fill%3D%22white%22%3E%3Cpath%20d%3D%22M297%200C305.284%200%20312%206.71573%20312%2015V472C312%20480.284%20305.284%20487%20297%20487H277C268.716%20487%20262%20493.716%20262%20502V532C262%20540.284%20255.284%20547%20247%20547H15C6.71573%20547%200%20540.284%200%20532V15C1.54622e-06%206.71573%206.71573%200%2015%200H297Z%22%2F%3E%3C%2Fmask%3E%3Cpath%20d%3D%22M297%200C305.284%200%20312%206.71573%20312%2015V472C312%20480.284%20305.284%20487%20297%20487H277C268.716%20487%20262%20493.716%20262%20502V532C262%20540.284%20255.284%20547%20247%20547H15C6.71573%20547%200%20540.284%200%20532V15C1.54622e-06%206.71573%206.71573%200%2015%200H297Z%22%20fill%3D%22white%22%20fill-opacity%3D%220.05%22%2F%3E%3Cpath%20d%3D%22M15%20547L15%20548H15V547ZM0%2015L-1%2015V15H0ZM297%200V1C304.732%201%20311%207.26801%20311%2015H312H313C313%206.16344%20305.837%20-1%20297%20-1V0ZM312%2015H311V472H312H313V15H312ZM297%20487V486H277V487V488H297V487ZM262%20502H261V532H262H263V502H262ZM247%20547V546H15V547V548H247V547ZM15%20547L15%20546C7.26802%20546%201%20539.732%201%20532H0H-1C-1%20540.837%206.16344%20548%2015%20548L15%20547ZM0%20532H1V15H0H-1V532H0ZM0%2015L1%2015C1%207.26802%207.26802%201%2015%201V0V-1C6.16345%20-1%20-0.999998%206.16345%20-1%2015L0%2015ZM15%200V1H297V0V-1H15V0ZM262%20532H261C261%20539.732%20254.732%20546%20247%20546V547V548C255.837%20548%20263%20540.837%20263%20532H262ZM277%20487V486C268.163%20486%20261%20493.163%20261%20502H262H263C263%20494.268%20269.268%20488%20277%20488V487ZM312%20472H311C311%20479.732%20304.732%20486%20297%20486V487V488C305.837%20488%20313%20480.837%20313%20472H312Z%22%20fill%3D%22white%22%20fill-opacity%3D%220.1%22%20mask%3D%22url(%23path-1-inside-1_133_117)%22%2F%3E%3C%2Fsvg%3E');
    background-repeat: no-repeat;
    background-position: bottom right;
    padding: 30px 0 35px 30px;
    background-size: cover;
    margin-right: 30px;
}

.service-single-box.style__02 .service-thumbs {
    margin-right: -30px;
}

.service-single-box.style__02:hover .image-anime::after {
    height: 250%;
    transition: all 600ms linear;
    background-color: transparent;
    border-radius: 30px;
}

.service-single-box.style__02 .service__content {
    margin: 35px 0 0;
}

.service-single-box.style__02 .service__title::before {
    display: none;
}

.service-single-box.style__02 .service__title .title.title {
    margin: 30px 0 0;
}

.service-single-box.style__02 .service__title {
    display: block;
    border-bottom: 0;
    margin-bottom: 0;
    padding-bottom: 0;
}

.service-single-box.style__02 .service__title .title a {
    font-size: 24px;
    font-weight: 600;
    line-height: 30px;
    display: inline-block;
    color: var(--color-white);
}

.service-single-box.style__02 .service__title .title a:hover {
    color: var(--primary-color);
}

.service-single-box.style__02 .service__btn {
    position: absolute;
    bottom: 0;
    right: 0;
}

.service-single-box.style__02 .service__btn a {
    height: 50px;
    width: 40px;
    line-height: 44px;
    border-radius: 10px;
    transform: rotate(0deg);
    border: 1px solid #FFFFFF1A;
    top: 0;
}

.service-single-box.style__02 .service__btn a:hover svg {
    filter: brightness(0) invert(1);
}

.service-single-box.style__02:hover .service__btn a::before {
    border-radius: 10px;
}

/* service slider arrwo button */

.service-section.style__02 .swiper__arrow__button .slider-prev,
.service-section.style__02 .swiper__arrow__button .slider-next {
    border: 1px solid #FFFFFF1A;
    background: #FFFFFF0D;
}

.service-section.style__02 .swiper__arrow__button .slider-prev:hover,
.service-section.style__02 .swiper__arrow__button .slider-next:hover {
    border: 1px solid var(--primary-color);
    background: var(--primary-color);
}

.service-section.style__02 .swiper__arrow__button .slider-prev img,
.service-section.style__02 .swiper__arrow__button .slider-next img {
    filter: brightness(0) invert(1);
}

.service-section.inner_section {
    background: var(--bg-color2);
    border-radius: 0;
    padding: 120px 0 90px;
}

.service-section.inner_section .service-single-box {
    margin-bottom: 30px;
}

/*<!-- =====================================-->
<!-- Start Service Section Style__03 css-->
<!-- =====================================-->*/

.service-section.style__03 {
    padding: 120px 10px 120px 225px;
    background: url(../images/demo-images/service-bg3.jpg);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.service-section.style__03 .sec-title {
    margin-bottom: 42px;
}

.section__description {
    width: 88%;
    margin: 28px 0 0;
    color: var(--text-color);
}

.service-section.style__03 .roofin__right__button {
    text-align: left;
}

.service-single-box.style__03 {
    padding: 20px 20px 35px;
    border-radius: 20px;
    background: url(data:image/svg+xml,%3Csvg%20width%3D%22374%22%20height%3D%22550%22%20viewBox%3D%220%200%20374%20550%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M374%20470C374%20481.046%20365.046%20490%20354%20490H344C332.954%20490%20324%20498.954%20324%20510V530C324%20541.046%20315.046%20550%20304%20550H20C8.95431%20550%200%20541.046%200%20530V20C0%208.95432%208.9543%200%2020%200H354C365.046%200%20374%208.9543%20374%2020V470Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center bottom;
}

.service-single-box.style__03 .service-thumbs figure {
    display: block;
    mask-size: cover;
    mask-position: center center;
    mask-repeat: no-repeat;
    mask-image: url('../images/demo-images/servicehome3-img1.png');
    background-image: url('../images/demo-images/servicehome3-img1.png');
}

.service-single-box.style__03 .service-thumbs img {
    width: 100%;
    object-fit: cover;
}

.ser__icon {
    position: absolute;
    right: 35px;
    top: 54%;
}

.service-single-box.style__03 .service__title {
    border-bottom: 0;
    margin-bottom: 25px;
    padding-bottom: 7px;
}

.service-single-box.style__03 .service__title::before {
    display: none;
}

.service-single-box.style__03 .service__title .title a {
    font-size: 24px;
    line-height: 30px;
    transition: 0.5s;
}

.service-single-box.style__03 .service__title .title a:hover {
    color: var(--primary-color);
}

.service-single-box.style__03 .service__list li {
    font-size: 16px;
    margin-bottom: 8px;
}

.service-single-box.style__03 .service__btn {
    position: absolute;
    bottom: 0;
    right: 0;
}

.service-single-box.style__03 .service__btn a {
    height: 50px;
    width: 40px;
    line-height: 44px;
    border-radius: 15px;
    transform: rotate(0deg);
    border: 1px solid #fff;
    top: 0;
    background: #fff;
}

.service-single-box.style__03 .service__btn a:hover {
    border: var(--primary-color);
}

.service-single-box.style__03:hover .service__btn a::before {
    border-radius: 15px;
}

.service-single-box.style__03 .service__btn a:hover svg {
    filter: brightness(0) invert(1);
}

/*<!-- =====================================-->
<!-- Start Why Choose section css-->
<!-- =====================================-->*/

.choose-section {
    position: relative;
    z-index: 1;
    padding: 120px 0 120px;
}

.choose-section .sec-title {
    margin-bottom: 32px;
}

.bg-buler {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    z-index: -1;
}

.choose-us-img {
    position: relative;
    margin-right: 55px;
}

.choose-us-img figure {
    display: block;
    mask-size: cover;
    mask-position: center center;
    mask-repeat: no-repeat;
    mask-image: url('../images/demo-images/choose-img.png');
    background-image: url('../images/demo-images/choose-img.png');
}

.choose-us-img figure img {
    width: 100%;
    object-fit: cover;
}

/* choose section style inner */
.choose-section.style__inner {
    background: var(--bg-color2);
}

.choose-section.style__inner .main-box.style__two {
    border-top: 1px solid #6e6e6e26;
    border-bottom: 1px solid #6e6e6e26;
}

.choose-section.style__inner .section__description {
    color: var(--text-color);
}

.choose-section.style__inner .icon-single-box.style__two .icon {
    border: 1px solid #1414142e;
}

.choose-section.style__inner .icon-single-box.style__two .icon-content-box h3 {
    color: var(--title-color);
}

/*<!-- =====================================-->
<!-- Start work process css-->
<!-- =====================================-->*/

.work-process {
    background: var(--bg-color1);
}

section.work-process.style__inner {
    background: var(--bg-color2);
}

.process-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    align-items: stretch;
}

/* Process single Box */

.process__single__box {
    background: #fff;
    border-radius: 25px;
    padding: 50px 30px 48px;
    position: relative;
    text-align: center;
    border-radius: 50px;
}

.process__single__box .icon {
    height: 75px;
    width: 75px;
    line-height: 75px;
    text-align: center;
    background: var(--primary-color);
    border-radius: 50%;
    display: inline-block;
}

.process__single__box .icon svg {
    transition: 0.5s;
}

.process__single__box:hover .icon svg {
    transform: scaleX(-1);
}

.process__contnet h3 {
    margin: 24px 0 50px;
    font-size: 24px;
    line-height: 32px;
    font-weight: 600;
}

.process__contnet p {
    font-size: 17px;
    line-height: 26px;

}

.process__contnet .icon {
    width: 50px;
    height: 50px;
    background: #ff8c22;
    color: #fff;
    border-radius: 50%;
    display: grid;
    place-items: center;
    font-size: 22px;
}

/* Arrow */
.process__single__box .arrow {
    position: absolute;
    top: 10%;
    right: -12%;
    z-index: 1;
}

/* Image box */

.process-image {
    border-radius: 50px 10px 10px 50px;
    overflow: hidden;
    background: var(--color-white);
    padding: 16px;
}

.process-image img {
    width: 100%;
    object-fit: cover;
}

.process-grid .process__single__box:first-child {
    border-radius: 10px 50px 50px 10px;
}

/* =========================================
    Start Work Section Css
============================================ */

.work__section {
    padding: 285px 0 90px;
    margin-top: -193px;
    background: var(--bg-color2);
}

.work__section.style__02 {
    background: var(--bg-color2);
    margin-top: 0;
    padding: 120px 0 90px;
}

.main-title {
    text-align: center;
    margin-bottom: 50px;
}

.main-title h2 {
    font-weight: 800;
    font-size: 200px;
    line-height: 182px;
    text-align: center;
}

/* work single box */

.work__single__box {
    padding: 20px 20px 33px;
    background: var(--color-white);
    border-radius: 20px;
    margin-bottom: 30px;
}

.work__thumb {
    position: relative;
    z-index: 1;
}

.work__thumb img {
    width: 100%;
}

.work__tag {
    position: absolute;
    bottom: 25px;
    left: 25px;
}

.work__tag a {
    display: inline-block;
    border: 1px solid #FFFFFF80;
    backdrop-filter: blur(20px);
    background: #FFFFFF4D;
    color: var(--color-white);
    border-radius: 20px;
    font-size: 14px;
    font-weight: 500;
    font-family: var(--title-font);
    padding: 2px 20px;
    margin-right: 6px;
}

.work__title {
    margin-bottom: 2px;
}

.work__title a {
    font-weight: 600;
    font-size: 28px;
    line-height: 38px;
}

p.work__date {
    font-family: var(--title-font);
    font-weight: 500;
    font-size: 18px;
    line-height: 26px;
    color: var(--primary-color);
    padding-left: 40px;
    position: relative;
    z-index: 1;
}

.work__date::before {
    position: absolute;
    content: '';
    left: 0;
    top: 12px;
    width: 30px;
    height: 2px;
    background: var(--primary-color);
}

.work__inner__content {
    justify-content: space-between;
    align-items: center;
    display: flex;
    margin: 15px 20px 0;
}

.work__inner__content .service__btn {
    margin-top: 16px;
    opacity: 0;
    transition: 0.5s;
    margin-right: 50px;
}

.work__single__box:hover .work__inner__content .service__btn {
    opacity: 1;
    margin-right: 0;
}

/*<!-- =====================================-->
<!-- Start roofin Contact section css-->
<!-- =====================================-->*/

.contact-section {
    background: url(../images/demo-images/contact-bg.png);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;
    padding: 120px 0 145px;
    position: relative;
    z-index: 1;
    overflow: hidden;
}

.contact-section .sec-title {
    margin-bottom: 68px;
}

.contact-form-box {
    border-radius: 20px;
    padding: 60px;
    position: relative;
}

.contact-form-box::before {
    background: var(--color-white);
    height: 100%;
    width: 100%;
    border-radius: 20px;
    top: 0;
    left: 0;
    position: absolute;
    content: '';
}

.contact-form-box::after {
    background: var(--primary-color);
    height: 100%;
    width: 100%;
    border-radius: 20px;
    top: 0;
    left: 0;
    position: absolute;
    content: '';
    transform: rotate(-5deg);
    z-index: -1;
}

.form-box {
    position: relative;
}

.form-box i {
    position: absolute;
    right: 20px;
    top: 19px;
    color: var(--primary-color);
}

.form-box input {
    width: 100%;
    height: 55px;
    margin-bottom: 20px;
    display: inline-block;
    background-color: transparent;
    font-size: 15px;
    color: var(--bg-color1);
    font-weight: 400;
    outline: 0;
    border: 1px solid #1414141A;
    border-radius: 10px;
    padding: 0 25px;
}

.form-box textarea {
    width: 100%;
    height: 125px;
    outline: none;
    background: transparent;
    color: #fff;
    border: 1px solid #1414141A;
    border-radius: 10px;
    padding: 15px 25px;
}

.form-box input::placeholder,
.form-box textarea::placeholder {
    color: var(--text-color);
}

.select-wrapper {
    width: 100%;
    max-width: 100%;
    position: relative;
}

.select-wrapper select {
    width: 100%;
    padding: 0 20px;
    font-size: 16px;
    border-radius: 12px;
    border: 1px solid #1414141A;
    outline: none;
    appearance: none;
    background-color: transparent;
    cursor: pointer;
    height: 55px;
    color: var(--text-color);
}

/* Right arrow */

.select-wrapper::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 18px;
    width: 8px;
    height: 8px;
    border-right: 2px solid var(--primary-color);
    border-bottom: 2px solid var(--primary-color);
    transform: translateY(-50%) rotate(45deg);
    pointer-events: none;
}

/* roofin button */
.roofin__buttons {
    margin-top: 18px;
}

.roofin__buttons button {
    display: inline-block;
    background: var(--primary-color);
    backdrop-filter: blur(50px);
    font-family: var(--title-font);
    color: var(--color-white);
    font-weight: 500;
    font-size: 18px;
    padding: 16px 40px;
    border-radius: 30px;
    transition: 0.5s;
    position: relative;
    z-index: 1;
    outline: 0;
    border: 0;
}

.roofin__buttons button::before {
    position: absolute;
    content: "";
    height: 100%;
    width: 100%;
    background: var(--bg-color1);
    border-radius: 30px;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    transition: .5s;
    clip-path: polygon(50% 0, 50% 0, 50% 50%, 50% 100%, 50% 100%, 50% 50%);
    z-index: -1;
}

.roofin__buttons button:hover::before {
    clip-path: polygon(25% -70%, 75% -70%, 120% 50%, 75% 170%, 25% 170%, -20% 50%);
}

.roofin__buttons button i {
    display: inline-block;
    margin-left: 10px;
    height: 60px;
    width: 60px;
    background: var(--primary-color);
    line-height: 60px;
    position: absolute;
    right: -55px;
    top: 0;
    border-radius: 50%;
    transition: 0.5s;
}

.roofin__buttons button:hover i {
    background: var(--bg-color1);
}

/* Contact info */

.contact__info {
    display: flex;
    align-items: center;
    gap: 20px;
    background: #FFFFFF1A;
    width: 50%;
    border: 1px solid #FFFFFF33;
    border-radius: 95px;
    padding: 20px 25px;
    margin-left: 45px;
    margin-top: 50px;
}

.info__content h3 {
    margin: 5px 0 0;
    line-height: 22px;
    color: var(--color-white);
    font-size: 20px;
    font-weight: 600;
}

.contact__info i {
    width: 60px;
    height: 60px;
    line-height: 60px;
    background: var(--primary-color);
    border-radius: 50%;
    color: var(--color-white);
    font-size: 18px;
    cursor: pointer;
}

.info__content p {
    font-family: var(--title-font);
    font-weight: 500;
    font-size: 16px;
    margin: 0;
    color: var(--color-white);
}

/* all shpe */
.contact-arrow {
    position: absolute;
    top: 21%;
    left: 48%;
    transform: translate(-50%);
    z-index: -1;
}

.contact-shape {
    position: absolute;
    right: 0;
    bottom: -15px;
    z-index: -1;
}


/*<!-- =====================================-->
<!-- Start roofin Contact section Style Two css-->
<!-- =====================================-->*/
.contact-section.style__02 {
    background: var(--color-white);
    padding: 120px 0 120px;
}

.contact-section.style__02 .form-box input {
    margin-bottom: 27px;
}

.contact-section.style__02 .sec-title {
    margin-bottom: 30px;
}

p.contact__des {
    font-size: 17px;
    line-height: 26px;
    margin: 0 0 35px;
    width: 84%;
}

.section-title.style__title h2 {
    font-weight: 600;
    font-size: 36px;
    line-height: 20px;
    margin: 0;
}

.contact__info_card {
    background: var(--bg-color2);
    padding: 45px 40px 45px;
    border-radius: 15px;
}

.contact__information {
    display: flex;
    align-items: center;
    gap: 20px;
    background: #FFFFFF1A;
    border: 1px solid #FFFFFF33;
    border-bottom: 1px dashed #7070703b;
    margin-bottom: 25px;
    padding-bottom: 25px;
}

.contact__information.style__02 {
    border-bottom: 0;
    margin-bottom: 0;
    padding-bottom: 0;
}

.contact__information h3 {
    margin: 5px 0 0;
    line-height: 22px;
    color: var(--title-color);
    font-size: 18px;
    font-weight: 500;
}

.contact__information i {
    width: 64px;
    height: 64px;
    line-height: 64px;
    background: transparent;
    border-radius: 50%;
    color: var(--primary-color);
    font-size: 18px;
    cursor: pointer;
    border: 1px solid #1414141A;
    transition: 0.5s;
}

.contact__information p {
    font-size: 16px;
    margin: 0;
    color: var(--text-color);
}

.contact__information:hover i {
    border: 1px solid var(--primary-color);
    background: var(--primary-color);
    color: var(--color-white);
}

.contact__information h3 {
    margin: 10px 0 0;
    line-height: 22px;
    color: var(--title-color);
    font-size: 18px;
    font-weight: 500;
}

.contact-form-box.style__two {
    border-radius: 15px;
    border-top: 10px solid var(--primary-color);
    padding: 60px 50px 50px;
    position: relative;
    box-shadow: 0px 10px 100px 0px #CFCFCF4D;
    background: var(--color-white);
}

.contact-form-box.style__two .form-box textarea {
    height: 160px;
}

.contact-form-box.style__two::before,
.contact-form-box.style__two::after {
    display: none;
}

.check_bx {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 7px;
    margin-top: 8px;
}

.check_bx input[type="checkbox"] {
    height: 16px;
    width: 16px;
}

.check_bx p {
    font-size: 15px;
    font-weight: 400;
    font-family: var(--title-font);
}

/*<!-- =====================================-->
<!-- Start roofin Offer section css-->
<!-- =====================================-->*/

.offer-section {
    position: relative;
    z-index: 1;
    background: url(../images/demo-images/offer-bg.png);
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 73px 0 70px;
    border-radius: 0 0 30px 30px;
}

.offer-section.style__inner {
    background: url(../images/inner-page/offer-bg.png);
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 0;
}

.roofin__offer__title {
    margin-left: 230px;
}

.roofin__offer__title h2 {
    font-weight: 700;
    font-size: 42px;
    line-height: 46px;
    color: var(--color-white);
    margin: 0;
}

.offer-img {
    position: absolute;
    bottom: 0;
    left: 12%;
    z-index: -1;
}

.offer-section .roofin__button a {
    background: var(--color-white);
    color: var(--bg-color1);
}

.offer-section .roofin__button a i.two {
    background: var(--color-white);
}

.offer-section .roofin__button a:hover {
    color: var(--color-white);
}

/*<!-- =====================================-->
<!-- Start roofin Team section css-->
<!-- =====================================-->*/

.team-section {
    padding: 120px 0 90px;
}

.team__single__box {
    background: var(--color-white);
    border-radius: 200px;
    text-align: center;
    padding: 20px 20px 20px;
    margin-bottom: 30px;
}

.team__content {
    padding: 42px 0 30px;
}

.team__single__box.two .team__content {
    padding: 33px 0 40px;
}

.team__content h3 {
    margin: 0 0 2px;
}

.team__content h3 a {
    display: inline-block;
    font-weight: 600;
    font-size: 28px;
    line-height: 32px;
}

.team__content p {
    display: inline-block;
    backdrop-filter: blur(20px);
    background: #FFFFFF4D;
    color: var(--color-text);
    border-radius: 20px;
    font-size: 14px;
    font-weight: 500;
    font-family: var(--title-font);
    padding: 4px 20px;
    border: 1px solid #14141426;
    transition: 0.5s;
}

.team__single__box:hover .image-anime :after {
    height: 250%;
    transition: all 600ms linear;
    background-color: transparent;
}

.team__single__box:hover .team__content p {
    background: var(--primary-color);
    border: 1px solid var(--primary-color);
    color: var(--color-white);
}

/* =================================
    Start Team Section Style Two
================================= */

.team__single__box.style__two {
    border-radius: 25px;
    background: linear-gradient(180deg, #1E1E1E 0%, #141414 100%);
    position: relative;
    z-index: 1;
    padding: 20px 30px 0;
    overflow: hidden;
}

.team__single__box.style__two::after {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 20%;
    background: url('../images/demo-images/team-box-sp.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    z-index: -1;
    transition: 0.5s;
}

.team__single__box.style__two:hover:after {
    background: url('../images/demo-images/team-box-sp2.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    height: 25%;
}

.team__single__box.style__two .team__thumb {
    position: relative;
    z-index: 1;
    overflow: hidden;
}

.team__single__box.style__two .team__thumb::after {
    position: absolute;
    content: '';
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0;
    background: linear-gradient(360deg, #F68931 0%, rgba(20, 20, 20, 0) 50%);
    border-radius: 25px;
    transition: 0.5s;
}

.team__single__box.style__two:hover .team__thumb::after {
    height: 75%;
}

.team__contents {
    margin-bottom: 25px;
}

.team__contents .title {
    font-size: 26px;
    font-weight: 600;
    color: var(--color-white);
}

.team__contents .title span {
    font-family: var(--title-font);
    font-weight: 500;
    font-size: 15px;
    color: #fbf7f7a3;
    margin-left: 32px;
    display: inline-block;
    position: relative;
    top: -2px;
}

.team__contents .title span::before {
    position: absolute;
    content: '';
    top: 25px;
    left: -20px;
    width: 5px;
    height: 2px;
    background: var(--text-color);
}

ul.team__social {
    position: absolute;
    bottom: -30px;
    left: 0;
    right: 0;
    text-align: center;
    margin: auto;
    transition: 0.5s;
    opacity: 0;
}

.team__social li {
    display: inline-block;
    margin-right: 7px;
}

.team__social li:nth-child(2) {
    margin-top: 20px;
}

.team__social li a {
    display: inline-block;
    color: var(--color-white);
    background: var(--color-border2);
    width: 49px;
    height: 49px;
    line-height: 49px;
    border-radius: 50%;
    text-align: center;
    transition: 0.5s;
    position: relative;
    z-index: 1;
    border: 1px solid #FFFFFF33;
    backdrop-filter: blur(10px)
}

.team__social li a::before {
    position: absolute;
    z-index: -1;
    content: "";
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    transform: scale(0);
    border-radius: 50%;
    background: var(--primary-color);
    transition: all 300ms ease;
}

.team__social li a:hover::before {
    transform: scale(1);
}

.team__single__box.style__two:hover .team__social {
    bottom: 30px;
    opacity: 1;
}

.team-section.style__02 .swiper__arrow__button {
    right: 0;
    top: -142px;
}

.team-section.style__02 .swiper__arrow__button .slider-prev,
.team-section.style__02 .swiper__arrow__button .slider-next {
    border: 1px solid #FFFFFF1A;
    background: #FFFFFF0D;
}

.team-section.style__02 .swiper__arrow__button .slider-prev:hover,
.team-section.style__02 .swiper__arrow__button .slider-next:hover {
    border: 1px solid var(--primary-color);
    background: var(--primary-color);
}

.team-section.style__02 .swiper__arrow__button .slider-prev img,
.team-section.style__02 .swiper__arrow__button .slider-next img {
    filter: brightness(0) invert(1);
}

/* team section style inner */
.team-section.style__inner {
    background: var(--bg-color1);
    padding: 325px 0 90px;
    margin-top: -215px;
}

.team-section.style__inner .team__single__box {
    background: #FFFFFF1A;
}

.team-section.style__inner .team__content h3 a {
    color: var(--color-white);
}

.team-section.style__inner .team__content p {
    backdrop-filter: none;
    background: transparent;
    border: 1px solid #FFFFFF1A;
}

/* ================================================
    Start Team Section Style 03
=================================================== */

.team-section.style__03 {
    background: var(--bg-color2);
}

.team__single__box.style__03 {
    border-radius: 20px;
    position: relative;
    z-index: 1;
    padding: 50px 0 30px;
}

.team__single__box.style__03 .team__content {
    padding: 20px 0 20px;
}

.team__single__box.style__03 .team__content h3 {
    margin: 0 0 9px;
}

ul.team__socials {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    text-align: center;
    margin: auto;
    transition: 0.5s;
    opacity: 0;
}

.team__single__box.style__03:hover ul.team__socials {
    bottom: 48px;
    opacity: 1;
}

.team__single__box.style__03:hover .team__content p {
    opacity: 0;
}

.team__socials li {
    display: inline-block;
    margin-right: 7px;
}

.team__socials li:nth-child(2) {
    margin-top: 20px;
}

.team__socials li a {
    display: inline-block;
    color: var(--title-color);
    background: var(--color-border2);
    width: 38px;
    height: 38px;
    line-height: 38px;
    border-radius: 50%;
    text-align: center;
    transition: 0.5s;
    position: relative;
    z-index: 1;
    border: 1px solid #1414144a;
    backdrop-filter: blur(10px);
}

.team__socials li a::before {
    position: absolute;
    z-index: -1;
    content: "";
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    transform: scale(0);
    border-radius: 50%;
    background: var(--primary-color);
    transition: all 300ms ease;
}

.team__socials li a:hover::before {
    transform: scale(1);
}

/* ===================================
    Start Team Section Style 04
====================================== */

.team-section.style__03.style__04 {
    background: url(../images/demo-images/service-bg3.jpg);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

/* team single box style Four */
.team__single__box.style__04 {
    padding: 15px;
    overflow: hidden;
}

.team__single__box.style__04:before {
    position: absolute;
    content: '';
    left: 0;
    bottom: -38%;
    right: 0;
    margin: auto;
    text-align: center;
    background: #FDF2E966;
    height: 280px;
    width: 280px;
    border-radius: 100%;
}

.team__single__box.style__04::after {
    position: absolute;
    content: '';
    left: 0;
    bottom: -48%;
    right: 0;
    margin: auto;
    text-align: center;
    background: var(--bg-color2);
    height: 280px;
    width: 280px;
    border-radius: 100%;
    z-index: -1;
    transition: 0.5s;
    opacity: 0;
}

.team__single__box.style__04:hover:after {
    bottom: -38%;
    opacity: 1;
}

.team__single__box.style__04 .team__contents {
    margin: 25px 0 30px;
}

.team__single__box.style__04 .title {
    color: var(--bg-color1);
    font-weight: 600;
    font-size: 26px;
}

.team__single__box.style__04 .title a {
    font-weight: 600;
}

.team__single__box.style__04 .title a:hover {
    color: var(--primary-color);
}

.team__single__box.style__04 .team__contents span {
    display: inline-block;
    border: 1px solid #0000001f;
    backdrop-filter: blur(20px);
    background: #FFFFFF4D;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 500;
    padding: 4px 24px;
    margin-top: 5px;
    transition: 0.5s;
}

.team__single__box.style__04 .team__contents span:hover {
    background: var(--primary-color);
    border: 1px solid var(--primary-color);
    color: var(--color-white);
}

/*<!-- =====================================-->
<!-- Start roofin Testimonial section css-->
<!-- =====================================-->*/

.testimonial-section {
    padding: 120px 0 90px;
    position: relative;
    z-index: 1;
}

.testimonial-section .sec-title {
    margin-bottom: 45px;
}

.testimonial-section::before {
    position: absolute;
    content: '';
    right: 2px;
    top: 0;
    height: 100%;
    width: 55%;
    background: var(--color-white);
    border-radius: 60px 20px 20px 60px;
    z-index: -1;
}

.testimonial__thumb {
    background: var(--color-white);
    padding: 25px;
    border-radius: 20px 60px 60px 20px;
    display: inline-block;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
}

.video__card {
    position: absolute;
    left: 44%;
    top: 39%;
    transform: translate(-53%, -50%);
}

.video-button-wrapper {
    text-align: center;
    margin-top: 180px;
    position: relative;
    height: 270px;
    width: 270px;
    line-height: 210px;
    background: var(--primary-color);
    border-radius: 50%;
    border: 30px solid var(--color-white);
}

/* Hide on LG */
@media (max-width: 1199.98px) {
    .video-button-wrapper {
        display: none;
    }
}

/* SVG Circle */
.video-button-wrapper svg {
    width: 85%;
    max-width: 100%;
    height: auto;
    overflow: visible;
    word-spacing: 1px;
    transform: rotate(0) scaleX(1) scaleY(1);
}

/* Rotating text */
.video-button-wrapper svg text {
    fill: var(--color-white);
    font-size: 20px;
    font-family: var(--text-font);
    letter-spacing: 2px;
    font-weight: 500;
}

.video-button-wrapper svg .rotate-text {
    animation: rotateText 10s linear infinite;
    transform-origin: center;
}

/* Center video button */
.video-button-wrapper a.video-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: var(--color-white);
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    z-index: 2;
    color: var(--primary-color);
    font-size: 20px;
}

@keyframes rotateText {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* testimonial card */

.testimonial__card {
    padding-left: 175px;
}

.single-testi-box {
    border: 1px solid #1414141A;
    border-radius: 20px;
    padding: 40px 40px 30px;
    position: relative;
    margin-bottom: 30px;
    background: var(--color-white);
}

.single-testi-box::after {
    position: absolute;
    content: '';
    left: 0;
    right: 0;
    margin: auto;
    bottom: -15px;
    height: 100%;
    width: 95%;
    border: 1px solid #1414141A;
    border-radius: 30px;
    z-index: -1;
    background: var(--color-white);
}

.single-testi-box::before {
    position: absolute;
    content: '';
    left: 0;
    right: 0;
    margin: auto;
    bottom: -30px;
    height: 100%;
    width: 90%;
    border: 1px solid #1414141A;
    border-radius: 35px;
    z-index: -1;
}

.testi__arrows {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* testi autor card */
.testi__autor__card {
    display: flex;
    justify-content: space-between;
}

.testi-autor-box {
    display: flex;
    align-items: center;
    gap: 15px;
}

.testi-desc p {
    font-family: var(--title-font);
    font-weight: 400;
    font-size: 22px;
    line-height: 34px;
    color: var(--bg-color1);
    margin: 22px 0 30px;
    border-bottom: 1px solid #1414141A;
    padding-bottom: 30px;
    width: 85%;
}

h3.autor-title {
    font-weight: 500;
    font-size: 24px;
    line-height: 32px;
    margin: 0;
}

.popular-ratting ul li {
    display: inline-block;
    color: #FF974D;
    letter-spacing: 2px;
    margin: 12px 0 18px;
}

.popular-ratting ul span {
    font-size: 22px;
    font-weight: 400;
    font-family: var(--title-font);
    color: var(--bg-color1);
}

/* ====================================
    Start Testimonial Section Style Two
====================================== */
.testimonial-section.style__02 {
    position: relative;
    z-index: 1;
    padding: 120px 0 95px;
    background: url(../images/demo-images/testi-bg-2.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    border-radius: 30px;
}

.testimonial-section.style__02::before {
    display: none;
}

.testi-thumbs {
    margin-top: 165px;
    position: relative;
    z-index: 1;
}

.testi-shape {
    position: absolute;
    top: -27%;
    left: -52%;
    right: 0;
    margin: auto;
    text-align: center;
    z-index: -1;
}

.single-testi-box.style__02 {
    border: 0;
    padding: 45px 55px 45px;
    margin-bottom: 25px;
}

.single-testi-box.style__02::before,
.single-testi-box.style__02::after {
    display: none;
}

.single-testi-box.style__02 .testi-desc p {
    font-weight: 500;
    font-size: 18px;
    line-height: 32px;
    color: var(--text-color);
    margin: 40px 0 30px;
    border-bottom: 0;
    padding-bottom: 0;
    width: 92%;
}

.single-testi-box.style__02 h3.autor-title {
    font-weight: 600;
}

.single-testi-box.style__02 h3.autor-title span {
    font-family: var(--title-font);
    font-weight: 500;
    font-size: 15px;
    color: var(--text-color);
    margin-left: 17px;
    display: inline-block;
    position: relative;
    top: -1px;
}

.single-testi-box.style__02 h3.autor-title span::before {
    position: absolute;
    content: '';
    top: 16px;
    left: -14px;
    width: 5px;
    height: 1px;
    background: var(--text-color);
}

/* ======================================
    Start Testimonial Section Style 03
========================================= */

.testimonial-section.style__03 {
    position: relative;
    z-index: 1;
    padding: 120px 0 175px;
    background: url(../images/demo-images/tes-bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    border-radius: 0;
}

.testi__heading h2 {
    font-weight: 700;
    font-size: 110px;
    color: var(--color-white);
    margin: 0 0 142px;
    position: relative;
    z-index: 1;
}

.testi__heading h2::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    color: #fff;
    opacity: 0.18;
    /* fade strength */
    z-index: -1;

    /* bottom fade mask */
    -webkit-mask-image: linear-gradient(to bottom,
            rgba(0, 0, 0, 1) 35%,
            rgba(0, 0, 0, 0) 100%);
    mask-image: linear-gradient(to bottom,
            rgba(0, 0, 0, 1) 35%,
            rgba(0, 0, 0, 0) 100%);
}

.testi__main__container {
    margin: 0 370px 0;
    position: relative;
}

.testi__main__container::after {
    position: absolute;
    content: '';
    left: 0;
    right: 0;
    margin: auto;
    bottom: 0;
    height: 100%;
    width: 100%;
    border-radius: 20px;
    background: #FFFFFF0D;
    text-align: center;
    border: 1px solid #FFFFFF33;
    transform: rotate(10deg);
    backdrop-filter: blur(100px)
}

.testi__main__container::before {
    position: absolute;
    content: '';
    left: 0;
    right: 0;
    margin: auto;
    bottom: 0;
    height: 100%;
    width: 100%;
    border-radius: 20px;
    background: #FFFFFF0D;
    text-align: center;
    border: 1px solid #FFFFFF33;
    transform: rotate(-10deg);
    backdrop-filter: blur(100px)
}

/* .tes__item {
    padding: 55px 30px;
} */
.single-testi-box.style__03 {
    border-radius: 20px;
    padding: 35px 60px 22px;
    position: relative;
    text-align: center;
    border: 1.5px solid #FFFFFF33;
    background: #61696B;
    margin-bottom: 0;
}

.single-testi-box.style__03::before,
.single-testi-box.style__03::after {
    display: none;
}


.single-testi-box.style__03 .testi__arrows {
    position: absolute;
    top: 50px;
    left: 70px;
}

.single-testi-box.style__03 h3.autor-title {
    font-weight: 600;
    font-size: 26px;
    margin: 14px 0 0;
    color: var(--color-white);
}

.single-testi-box.style__03 .testi-desc p {
    color: var(--color-white);
    margin: 25px 0 12px;
    border-bottom: 0;
    padding-bottom: 0;
    width: 100%;
    font-family: var(--title-font);
    font-weight: 500;
    font-size: 18px;
    line-height: 32px;
    text-align: center;
}

.single-testi-box.style__03 .testi-autor-box {
    display: block;
}

.single-testi-box.style__03 .testi__autor__card {
    display: block;
}

.single-testi-box.style__03 .popular-ratting ul li {
    color: #FFCC00;
}

/*===========================================
<-- blog section css-->
==============================================*/

.blog-section {
    padding: 120px 0px 100px;
}

.single-blog-box {
    margin-bottom: 20px;
}

.blog-section .blog-thumb {
    position: relative;
    overflow: hidden;
}

.blog-section .blog-thumb::after {
    position: absolute;
    bottom: 0;
    left: 115px;
    content: '';
    height: 50px;
    width: 100%;
    background: #FFFFFF1A;
    backdrop-filter: blur(40px);
}

.blog-thumb figure {
    width: 100%;
}

.blog-thumb figure img {
    width: 100%;
}

.meta__blog {
    position: absolute;
    left: 35px;
    bottom: 0;
    display: flex;
    align-items: center;
}

.meta-blog-dete {
    background: var(--primary-color);
    color: var(--color-white);
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 80px;
    width: 80px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 28px;
    font-weight: 600;
    line-height: 28px;
    text-transform: uppercase;
    border-radius: 10px 10px 0 0;
}

.meta-blog-dete b {
    font-size: 16px;
    font-weight: 500;
}

.meta__blog a {
    font-family: var(--title-font);
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    color: var(--color-white);
    margin-bottom: -27px;
    margin-left: 25px;
    position: relative;
    z-index: 1;
}

.blog-content {
    padding: 16px 35px 20px;
    background: var(--color-white);
    border-radius: 0 0 20px 20px;
}

.blog-content h3 a {
    display: inline-block;
    font-weight: 600;
    font-family: var(--title-font);
    font-size: 26px;
    line-height: 36px;
    transition: 0.5s;
}

.single-blog-box:hover .blog-content h3 a {
    color: var(--primary-color);
}

.section-border {
    border-bottom: 1px solid var(--color-border);
    padding-top: 12px;
    margin-bottom: 20px;
    position: relative;
    z-index: 1;
    transition: 0.5s;
}

.section-border::before {
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 0%;
    height: 1px;
    background: var(--primary-color);
    content: "";
    z-index: -1;
    opacity: 0;
    transition: .5s;
}

.single-blog-box:hover .section-border::before {
    width: 100%;
    opacity: 1;
}

.blog-user {
    display: inline-block;
}

.blog-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.blog-user a {
    color: var(--title-color);
    display: inline-block;
    font-family: var(--title-font);
    font-weight: 500;
    font-size: 16px;
    position: relative;
    transition: 0.5s;
}

.blog-user a svg {
    margin-right: 4px;
}

.blog-user a:hover {
    color: var(--primary-color);
}

.blog-user a::before {
    position: absolute;
    content: '';
    height: 14px;
    width: 1px;
    right: 0;
    top: 6px;
    background: var(--color-border1);
}

.blog-user a span {
    display: inline-block;
    color: var(--text-color);
}

.blog-button {
    display: inline-block;
}

.blog-button a {
    display: inline-block;
    font-family: var(--title-font);
    transition: 0.5s;
    text-transform: uppercase;
    color: var(--text-color);
    border: 1px solid #1414141A;
    height: 45px;
    width: 45px;
    line-height: 45px;
    text-align: center;
    font-size: 18px;
    font-weight: 600;
    border-radius: 50%;
}

.single-blog-box:hover .blog-button a {
    background: var(--primary-color);
    color: var(--color-white);
    border: 1px solid var(--primary-color);
}

/*===========================================
<-- blog section Style 02 css-->
==============================================*/

.blog-section.style__02 {
    background: var(--bg-color2);
    border-radius: 30px 30px 0 0;
    padding: 120px 0px 100px;
}

.blog-section.style__02.style__03 {
    background: url(../images/demo-images/blog-bg3.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    padding: 322px 0px 100px;
    margin-top: -202px;
}

.single-blog-box.style__02:hover .image-anime:after {
    height: 250%;
    transition: all 600ms linear;
    background-color: transparent;
}

.blogbt-sp {
    position: absolute;
    right: 90px;
    bottom: 55px;
}

.single-blog-box.style__02 .blog-thumb::after {
    display: none;
}

.single-blog-box.style__02 .blog-content {
    padding: 20px;
    background: #FFFFFF4D;
    margin: -85px 20px 0;
    position: relative;
    z-index: 1;
    backdrop-filter: blur(30px);
    border-radius: 15px;
    border: 1px solid #ffffff4a;
}

.single-blog-box.style__02 .blog-content h3 a {
    font-size: 24px;
    line-height: 34px;
}

.blog__inner {
    background: var(--color-white);
    padding: 20px 35px 30px;
    border-radius: 15px;
}

.single-blog-box.style__02 .section-border {
    padding-top: 6px;
    margin-bottom: 50px;
}

.blog-buttons a {
    display: inline-block;
    font-family: var(--title-font);
    font-size: 16px;
    font-weight: 400;
    color: var(--text-color);
}

.blog-buttons a i {
    display: inline-block;
    text-transform: uppercase;
    color: var(--primary-color);
    background: #FDF2E9;
    height: 45px;
    width: 45px;
    line-height: 45px;
    font-size: 18px;
    font-weight: 600;
    border-radius: 50%;
    transform: rotate(-45deg);
    margin-right: 10px;
    transition: 0.5s;
}

.blog-buttons a:hover i {
    background: var(--primary-color);
    color: var(--color-white);
}

/*===========================================
<-- roofin footer area css-->
==============================================*/
.main-footer-one {
    padding: 105px 0px 35px;
    background: var(--title-color);
    border-radius: 30px;
    position: relative;
    overflow: hidden;
}

.main-footer-one::before {
    position: absolute;
    content: '';
    left: 0;
    bottom: 0;
    height: 113px;
    width: 100%;
    border-radius: 0 0 30px 30px;
    background: #232323;
}

.main-footer-one .main-footer-section {
    position: relative;
    z-index: 1;
    padding: 0px 0 105px;
}

.main-footer-one .main-footer-section .footer-widget-content .footer-desc {
    color: var(--color-white);
    padding: 27px 0 24px;
    font-family: var(--title-font);
    font-weight: 400;
    font-size: 17px;
    line-height: 26px;
    width: 48%;
}

.main-footer-one .main-footer-section .footer-widget-content {
    padding-right: 45px;
}

.main-footer-one .main-footer-section .footer-widget-content.social {
    padding-right: 0px;
    padding-top: 15px;
}

.main-footer-one .main-footer-section .footer-widget-content .footer-social li {
    display: inline-block;
    margin-right: 7px;
}

.main-footer-one .main-footer-section .footer-widget-content .footer-social li a {
    display: inline-block;
    color: var(--color-white);
    background: var(--color-border2);
    width: 42px;
    height: 42px;
    line-height: 42px;
    border-radius: 50%;
    text-align: center;
    transition: 0.5s;
    position: relative;
    z-index: 1;
}

.main-footer-one .main-footer-section .footer-widget-content .footer-social li a::before {
    position: absolute;
    z-index: -1;
    content: "";
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    transform: scale(0);
    border-radius: 50%;
    background: var(--primary-color);
    transition: all 300ms ease;
}

.main-footer-one .main-footer-section .footer-widget-content .footer-social li a:hover::before {
    transform: scale(1);
}

.office__time p {
    font-family: var(--title-font);
    font-weight: 400;
    font-size: 17px;
    line-height: 26px;
    color: var(--color-white);
    margin-bottom: 30px;
    display: flex;
    align-items: center;
    gap: 12px;
}

.main-footer-one .main-footer-section .footer-widget-content .footer-title {
    color: var(--color-white);
    font-weight: 600;
    font-size: 32px;
    margin: 0px 0 28px;
}

.main-footer-one .main-footer-section .footer-widget-content .footer-menu li a {
    display: flex;
    justify-content: space-between;
    color: var(--color-white);
    font-family: var(--title-font);
    font-weight: 500;
    font-size: 17px;
    border-bottom: 1px solid var(--color-white-op16);
    padding-bottom: 13px;
    margin-bottom: 14px;
    transition: 0.5s;
    position: relative;
    z-index: 1;
}

.main-footer-one .main-footer-section .footer-widget-content .footer-menu li a::before {
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 0%;
    height: 1px;
    background: var(--primary-color);
    content: "";
    z-index: -1;
    opacity: 0;
    transition: .5s;
}

.main-footer-one .main-footer-section .footer-widget-content .footer-menu li a:hover::before {
    width: 100%;
    opacity: 1;
}

.main-footer-one .main-footer-section .footer-widget-content .footer-menu li a i {
    display: inline-block;
}

.main-footer-one .main-footer-section .footer-widget-content .footer-menu li a:hover {
    color: var(--primary-color);
}

.footer__info {
    border-bottom: 1px solid var(--color-white-op16);
    padding-bottom: 10px;
}

.main-footer-one .main-footer-section .footer-widget-content .location {
    display: flex;
}

.main-footer-one .main-footer-section .footer-widget-content .location span {
    color: #ffffff75;
    padding-bottom: 15px;
    font-family: var(--title-font);
    font-weight: 400;
    font-size: 17px;
    line-height: 26px;
}

.main-footer-one .main-footer-section .footer-widget-content .location i {
    color: var(--primary-color);
    font-size: 16px;
    margin-top: 5px;
    margin-right: 5px;
}

.subscribe-box {
    position: relative;
    z-index: 1;
}

.subscribe-box input {
    width: 100%;
    height: 60px;
    border-radius: 60px;
    border: 0;
    outline: 0;
    padding: 0 15px 0;
}

.subscribe-box button {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    width: 48px;
    height: 48px;
    border: 0;
    outline: 0;
    border-radius: 50%;
    background: var(--primary-color);
    color: var(--color-white);
}

.subscribe-box input::placeholder {
    color: var(--text-color);
    font-size: 17px;
    font-weight: 500;
    padding: 0 25px;
}

.subscribe-des {
    font-family: var(--title-font);
    font-weight: 400;
    font-size: 17px;
    color: var(--color-white);
    margin: 22px 0 17px;
}

/* footer shape */
.footer-sp1 {
    position: absolute;
    bottom: 0;
    left: 26%;
    z-index: -1;
}

.footer-sp2 {
    position: absolute;
    bottom: -25%;
    left: 5%;
    z-index: -1;
}

.footer-bottom {
    position: relative;
    z-index: 1;
    padding: 30px 0 0;
}

.footer-bottom.style__02 {
    position: relative;
    z-index: 1;
    padding: 25px 0 25px;
    background: #232323;
}

.footer-bottom .copyright-text {
    color: var(--color-white);
    font-weight: 400;
    font-size: 16px;
}

.footer-bottom .copyright-text a {
    display: inline-block;
    color: var(--primary-color);
}

.footer-bottom .footer-bottom-menu {
    text-align: right;
}

.footer-bottom-menu ul li {
    display: inline-block;
    margin-left: 25px;
}

.footer-bottom-menu ul li a {
    color: var(--color-white);
    display: inline-block;
    font-family: var(--title-font);
    font-weight: 500;
    font-size: 16px;
    transition: 0.5s;
    text-decoration: underline;
}

.footer-bottom .footer-bottom-menu ul li a:hover {
    color: var(--primary-color);
}

.footer-bottom .footer-bottom-menu ul li:last-child a {
    background: var(--primary-color);
    padding: 11px 35px;
    font-size: 18px;
    font-weight: 500;
    border-radius: 30px;
    text-decoration: none;
}

.footer-bottom .footer-bottom-menu ul li:last-child a:hover {
    background: var(--color-white);
    color: var(--bg-color1);
}

/* =============================================
    Start Footer Section Style 02
================================================ */
.main-footer-one.style__02 {
    padding: 100px 0 12px;
}

footer.main-footer-one.style__03 {
    padding: 105px 0 0;
    border-radius: 0;
}

footer.main-footer-one.style__03 .footer-sp2 {
    position: absolute;
    bottom: 0;
}

.main-footer-one.style__02 .main-footer-section .footer-widget-content {
    padding-right: 0;
}

.main-footer-one.style__02::before {
    display: none;
}

.footer__main__card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #232323;
    margin-bottom: 105px;
    padding-bottom: 25px;
}

.footer__infos h3 {
    color: var(--color-white);
    font-size: 18px;
    font-weight: 500;
    margin: 0 0 2px;
}

.info__email h4 {
    font-size: 17px;
    font-weight: 400;
    color: #ffffff94;
    margin: 0;
    line-height: 20px;
    cursor: pointer;
}

.info__email i {
    display: inline-block;
    color: var(--primary-color);
    margin-right: 2px;
}

.main-footer-one.style__02 .main-footer-section .footer-widget-content .footer-menu li a {
    font-weight: 400;
}

.main-footer-one.style__02 .main-footer-section .footer-widget-content .footer-title {
    font-size: 28px;
    margin: 0px 0 43px;
}

/* Subscribe */

.subscribe__box {
    background: url('../images/demo-images/subscribe__bx.png');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    text-align: center;
    padding: 32px 30px 35px;
    border-radius: 30px;
    margin: 15px 120px 0;
}

.subscribe__box .subscribe-des {
    color: var(--color-white);
    margin: 0 0 42px;
    font-weight: 600;
    font-size: 28px;
}

.subscribe__box .subscribe-box input {
    border: 2px solid #393939;
    background: transparent;
}

.subscribe__social {
    padding-right: 0px;
    padding-top: 55px;
}

.subscribe__social li {
    display: inline-block;
    margin: 0 8px 0;
}

.subscribe__social li:nth-child(2) {
    position: relative;
    top: -25px;
}

.subscribe__social li a {
    display: inline-block;
    color: var(--color-white);
    background: var(--color-border2);
    width: 42px;
    height: 42px;
    line-height: 42px;
    border-radius: 50%;
    text-align: center;
    transition: 0.5s;
    position: relative;
    z-index: 1;
}

.subscribe__social li a::before {
    position: absolute;
    z-index: -1;
    content: "";
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    transform: scale(0);
    border-radius: 50%;
    background: var(--primary-color);
    transition: all 300ms ease;
}

.subscribe__social li a:hover::before {
    transform: scale(1);
}


/* =============================================================
    Start Project Section
=============================================================== */

.project-section {
    padding: 120px 0 120px;
}

.project__single__box.upper__bottom {
    margin-top: 70px;
}

.project__thumb {
    position: relative;
    z-index: 1;
    overflow: hidden;
    border-radius: 20px;
}

.project__thumb::before {
    position: absolute;
    content: '';
    left: 0;
    bottom: 0;
    height: 0;
    width: 100%;
    background: linear-gradient(180deg, rgba(20, 20, 20, 0) 50%, #F68931 100%);
    transition: 0.5s;
    border-radius: 20px;
    z-index: 1;
}

.project__thumb:hover:before {
    height: 100%;
}

.project__thumb img {
    width: 100%;
}

.project__content {
    position: absolute;
    bottom: 15px;
    left: 40px;
    z-index: 1;
}

.project__content .title a {
    font-family: var(--title-font);
    font-weight: 700;
    font-size: 30px;
    color: var(--color-white);
}

.project__content .service__btn a {
    border: 1px solid #fffefe47;
    top: -36px;
    background: #ffffff33;
    opacity: 0;
    color: var(--color-white);
    backdrop-filter: blur(20px)
}

.project__thumb:hover .project__content .service__btn a {
    opacity: 1;
    top: -5px;
}

.project-section .swiper__arrow__button {
    right: 11%;
    top: -142px;
}

.project-section .swiper__arrow__button .slider-prev,
.project-section .swiper__arrow__button .slider-next {
    border: 1px solid #FFFFFF1A;
    background: #FFFFFF0D;
}

.project-section .swiper__arrow__button .slider-prev:hover,
.project-section .swiper__arrow__button .slider-next:hover {
    border: 1px solid var(--primary-color);
    background: var(--primary-color);
}

.project-section .swiper__arrow__button .slider-prev img,
.project-section .swiper__arrow__button .slider-next img {
    filter: brightness(0) invert(1);
}


.service-section.project_02 {
    background: var(--color-white);
    padding: 120px 10px 0 225px;
}

.project__container {
    background: var(--color-white);
    padding: 0 10px 30px 30px;
    border-radius: 0 0 0 30px;
}

.service-single-box.protfolio__card {
    background: url('data:image/svg+xml,%3Csvg%20width%3D%22374%22%20height%3D%22564%22%20viewBox%3D%220%200%20374%20564%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M374%20484C374%20495.046%20365.046%20504%20354%20504H344C332.954%20504%20324%20512.954%20324%20524V544C324%20555.046%20315.046%20564%20304%20564H20C8.95431%20564%200%20555.046%200%20544V20C0%208.95431%208.9543%200%2020%200H354C365.046%200%20374%208.95431%20374%2020V484Z%22%20fill%3D%22%23FDF2E9%22%2F%3E%3C%2Fsvg%3E');
    padding: 15px 15px 47px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center bottom;

}

.service-single-box.protfolio__card .service-thumbs figure {
    display: block;
    mask-size: cover;
    mask-position: center center;
    mask-repeat: no-repeat;
    mask-image: url('../images/demo-images/prj1.png');
    background-image: url('../images/demo-images/prj1.png');
}

.service-single-box.protfolio__card .service-thumbs img {
    width: 100%;
    object-fit: cover;
}

.service-single-box.protfolio__card .service__content {
    margin: 20px 20px 0;
}

.service-single-box.protfolio__card .service__title {
    border-bottom: 0;
    margin-bottom: 0;
    padding-bottom: 3px;
}

.service-single-box.protfolio__card .service__btn a {
    border: 1px solid var(--bg-color2);
    background: var(--bg-color2);
}

/* =============================================================
    Start Process Section
=============================================================== */

.process-section {
    padding: 125px 0 120px;
    position: relative;
    z-index: 1;
}

.process__count {
    position: relative;
    z-index: 1;
}

.process__number {
    text-align: right;
    margin-right: 65px;
    margin-top: 5px;
}

.process__number h3 {
    display: inline-block;
    height: 70px;
    width: 70px;
    line-height: 70px;
    background: var(--primary-color);
    text-align: center;
    border-radius: 50%;
    color: var(--color-white);
    font-weight: 700;
    font-size: 24px;
}

.process__thumb figure {
    border-radius: 20px;
    border: 1px solid #FFFFFF1A;
    padding: 40px;
}

.process__thumb img {
    border-radius: 20px;
}

.process__sp {
    position: absolute;
    bottom: 11%;
    left: 4%;
    z-index: -1;
}


/* =============================================================
    Start Process Section Style 02
=============================================================== */

.process-section.style__02 {
    position: relative;
    overflow: hidden;
    padding: 120px 0 120px;
}


.process-img {
    transform: translateY(350px);
}

.process-section.style__02 .sec-title {
    margin-bottom: 65px;
}

.process-img {
    margin-top: -300px;
}

.process__main__title {
    margin: 0 0 32px;
    font-weight: 700;
    font-size: 120px;
    line-height: 95px;
    color: #6161611a;
}

.process__single__item {
    background: url(../images/demo-images/process-box-bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    display: flex;
    align-items: center;
    padding: 15px 15px 15px 35px;
    position: relative;
}

.process__item__content {
    margin: 44px 0 0;
}

.process__numbers {
    position: absolute;
    top: 0;
    font-size: 40px;
    font-weight: 700;
    color: #6161615e;
    width: 75px;
    height: 65px;
    background: var(--bg-color2);
    left: 0;
    border-radius: 15px;
    line-height: 65px;
    text-align: center;
    transition: 0.5s;
}

.process__single__item:hover .process__numbers {
    color: var(--color-white);
    background: var(--primary-color);
}

.process__item__content h3 {
    font-weight: 500;
    font-size: 26px;
    line-height: 30px;
    margin: 0;
}

.process__item__content p {
    margin: 14px 0 21px;
    width: 90%;
}

.process__tag a {
    display: inline-block;
    font-weight: 500;
    font-size: 14px;
    text-transform: uppercase;
    border: 1px solid #90909038;
    padding: 4px 20px;
    border-radius: 30px;
    color: var(--text-color);
    margin-right: 6px;
}

.process__thumbs {
    flex-shrink: 0.1;
}

.process__thumbs img {
    width: 100%;
    border-radius: 20px;
}

/* ========================================
    Start Faq Section
=========================================== */

.faq-section {
    background: url('../images/demo-images/faq-bg.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    padding: 110px 0 120px;
    border-radius: 30px;
}

.faq-img {
    position: relative;
    margin-right: 115px;
}

.faq-img .hero__video.style__02 {
    position: absolute;
    top: 50%;
    left: 64%;
    transform: translate(-50%, -50%);
}

.faq-img .hero__video a {
    width: 100px;
    height: 100px;
    line-height: 100px;
    border: 0;
    background: #FFFFFF66;
    backdrop-filter: blur(30px);
}

.faq-img .hero__video a i {
    background: transparent;
    border: 1px solid #fff;
}

.faq-img figure {
    display: block;
    mask-size: cover;
    mask-position: center center;
    mask-repeat: no-repeat;
    mask-image: url('../images/demo-images/faq-img2.png');
    background-image: url('../images/demo-images/faq-img2.png');
}

.faq-img figure img {
    width: 100%;
    object-fit: cover;
}

.tab_container {
    margin-left: 38px;
}

/*accordion*/
.accordion li {
    list-style: none;
    position: relative;
    z-index: 1;
    margin-bottom: 25px;
}

.accordion li::before {
    position: absolute;
    content: '';
    right: 25px;
    top: 18px;
    border: 2px solid #D9D9D9;
    height: 38px;
    width: 38px;
    border-radius: 50%;
    z-index: 99;
}

.active .accordion li:before {
    background-color: rgba(255, 255, 255, 0.10196078431372549) !important;
}

.accordion li a {
    position: relative;
    width: 100%;
    display: block;
    cursor: pointer;
    color: var(--title-color) !important;
    padding: 24px 35px 24px;
    z-index: 1;
    font-size: 20px;
    line-height: 26px;
    font-weight: 500;
    font-family: var(--title-font);
    background: #FDF2E9;
    border-radius: 15px;
}

.accordion li p {
    padding: 38px 35px 34px;
    margin: 0;
    background: var(--primary-color);
    color: #ccd0e2;
    display: none;
    font-family: Inter;
    font-weight: 400;
    font-size: 17px;
    line-height: 28px;
    border-radius: 0 0 15px 15px;
    color: var(--color-white);
    position: relative;
}

.accordion li p::after {
    position: absolute;
    content: '';
    left: 0;
    right: 0;
    margin: auto;
    top: 6px;
    height: 1px;
    width: 90%;
    border-bottom: 1px dashed #fff;
}

.accordion a:before {
    width: 2px;
    height: 14px;
    background: #D9D9D9;
    position: absolute;
    right: 42px;
    content: " ";
    top: 30px;
    transform: rotate(0deg);
    transition: all 0.2s ease-in-out;
}

.accordion a:after {
    width: 14px;
    height: 2px;
    background: #D9D9D9;
    position: absolute;
    right: 36px;
    content: " ";
    top: 36px;
    transition: all 0.2s ease-in-out;
}

.accordion a.active:after {
    transform: rotate(0deg);
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    background: #fff;
}

.accordion a.active:before {
    display: none;
}

.accordion a.active {
    color: #fff !important;
    border-top: none;
    border-bottom: none;
    background: var(--primary-color) !important;
    border-radius: 15px 15px 0 0;
}

/* ===============================================
    Start Faq Section Style 02
================================================ */

.faq-section.style__02 {
    background: var(--color-white);
    border-radius: 0;
    padding: 120px 0 120px;
}

.faq-section.style__02 .sec-title {
    margin-bottom: 70px;
}

.faq-imgs {
    margin-right: 20px;
}

.tab_container.style__02 {
    margin: 0;
}

.accordion.style__02 li::before {
    right: 21px;
    top: 23px;
    border: 2px solid var(--title-color);
    height: 20px;
    width: 20px;
}

.accordion.style__02 li a {
    padding: 19px 30px 19px;
    background: transparent;
    border-radius: 10px;
    border: 1px solid #6161616b;
}

.accordion.style__02 a:after {
    width: 10px;
    height: 2px;
    background: var(--title-color);
    right: 25px;
    top: 31px;
}

.accordion.style__02 a:before {
    width: 2px;
    height: 10px;
    background: var(--title-color);
    right: 29px;
    top: 27px;
}

.accordion.style__02 a.active {
    border: 1px solid var(--primary-color) !important;
    border-radius: 15px 15px 0 0;
}

.accordion.style__02 li p {
    padding: 20px 30px 28px;
    background: transparent;
    color: #616161;
    font-family: var(--text-font);
    font-weight: 400;
    font-size: 16px;
    border-radius: 0 0 10px 10px;
    border: 1px solid #6161616b;
    border-top: 0;
}

.accordion.style__02 li p::after {
    display: none;
}

/*
<!-- ============================== -->
<!-- Start breadcumb Secttion -->
<!-- ==============================-->*/

.breadcumb-section {
    position: relative;
    margin-top: -120px;
    padding: 245px 0 145px;
}

.breadcumb-content h1 {
    margin: 0 0 12px;
    color: var(--color-white);
    font-weight: 700;
    font-size: 52px;
}

.breadcumb-item {
    border: 1px solid #FFFFFF1A;
    display: inline-block;
    backdrop-filter: blur(20px);
    background: #FFFFFF1A;
    padding: 7px 35px 7px 25px;
    border-radius: 30px;
    margin-top: 10px;
}

.breadcumb-item li {
    list-style: none;
    display: inline-block;
    font-size: 17px;
    color: var(--color-white);
    font-weight: 500;
    font-family: var(--title-font);
}

.breadcumb-item li a {
    transition: 0.5s;
    padding: 0 8px 0 0;
    position: relative;
    z-index: 1;
    font-size: 16px;
    color: var(--color-white2);
    font-weight: 500;
}

.breadcumb-item li a i {
    display: inline-block;
    font-size: 15px;
    margin-right: 7px;
    position: relative;
    top: -1px;
    color: var(--primary-color);
}

.breadcumb-item li a:hover {
    color: var(--primary-color);
}

li.slash i {
    display: inline-block;
    transform: rotate(-110deg);
    font-size: 10px;
    position: relative;
    top: -2px;
    left: -4px;
}

/*
<!-- ============================== -->
<!-- Start Brand Secttion-->
<!-- ==============================-->*/

.brand-section {
    background: var(--bg-color2);
    padding: 80px 0;
}

.brand-img {
    text-align: center;
}

/*<!-- ============================================================== -->
<!-- Start Roofin Pricing Area Css -->
<!-- ============================================================== -->*/

.pricing-area {
    background: var(--bg-color2);
    position: relative;
    padding: 130px 0 120px;
    margin-top: -30px;
}

.pricing-area.style__02 {
    margin-top: 0;
    padding: 120px 0 120px;
}

.pricing__main__box {
    background: var(--primary-color);
    border-radius: 20px;
    padding: 12px 10px 10px;
}

.populer h3 {
    font-family: var(--title-font);
    font-weight: 600;
    font-size: 20px;
    line-height: 30px;
    color: var(--color-white);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 15px;
    gap: 15px;
}

.pricing-single-items {
    background: var(--color-white);
    position: relative;
    z-index: 1;
    padding: 55px 40px 40px;
    border-radius: 20px;
}

.pricing_icon {
    float: left;
    margin-right: 18px;
}

.pricing-title h3 {
    margin: 20px 0 6px;
    color: var(--title-color);
    font-weight: 600;
    font-size: 30px;
    line-height: 40px;
}

.pricing-title span {
    font-size: 16px;
    color: var(--text-color);
    line-height: 24px;
    display: inline-block;
    width: 75%;
}

.pricng_ratae {
    position: absolute;
    top: 50px;
    right: 40px;
}

span.pricing {
    color: var(--title-color);
    font-weight: 600;
    transition: .5s;
    font-family: var(--title-font);
    font-weight: 600;
    font-size: 34px;
    line-height: 40px;
}

.pricing__feature__title {
    font-weight: 500;
    font-size: 20px;
    margin: 0 0 2px;
}

/* pricing body */

.pricing-body {
    margin-top: 22px;
    position: relative;
    border-top: 1px solid #14141424;
    padding-top: 12px;
}

.pricing-body:before {
    position: absolute;
    content: "";
    left: -38px;
    top: -32px;
    height: 1px;
    width: 123%;
    background: #ffffff21;
}

.pricing-feature ul li {
    font-family: var(--title-font);
    margin-bottom: 10px;
    transition: .5s;
    font-weight: 400;
    font-size: 17px;
    color: var(--text-color);
}

.pricing-feature ul li img {
    margin-right: 12px;
}

.pricing-btn {
    margin-top: 24px;
}

.pricing-btn a {
    display: inline-block;
    background: transparent;
    text-align: center;
    padding: 8px 30px;
    position: relative;
    z-index: 1;
    border-radius: 30px;
    border: 1px solid #1414143d;
    font-family: var(--title-font);
    font-weight: 500;
    font-size: 16px;
    line-height: 28px;
    color: var(--title-color);
    overflow: hidden;
}

.pricing-btn a:after {
    position: absolute;
    content: "";
    height: 100%;
    width: 0%;
    background: var(--primary-color);
    left: 0;
    top: 0;
    z-index: -1;
    transition: 0.5s;
    transform: scale(0);
    opacity: 0;
}

/* pricing shape */
.pricing-shpe1 {
    position: absolute;
    top: 15%;
    left: 13%;
    z-index: -1;
}

.pricing-shpe2 {
    position: absolute;
    top: 10%;
    right: 8%;
    z-index: -1;
}

/* all hover */

.pricing-single-items:hover .pricing-btn a:after {
    transform: scale(1);
    opacity: 1;
    height: 100%;
    width: 100%;
}

.pricing-single-items:hover .pricing-btn a {
    color: var(--color-white);
    border: 1px solid var(--primary-color);
}

/* ================================
    Start Pricing Area Style 03
=================================== */
.pricing-area.style__03 {
    background: url(../images/demo-images/blog-bg3.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    position: relative;
    z-index: 1;
    padding: 120px 0 90px;
}

.line {
    position: absolute;
    width: 1px;
    height: 100%;
    top: 0;
    left: 11.9%;
    background: rgba(27, 27, 27, 0.1);
    overflow: hidden;
    background-image: linear-gradient(-20deg, #ebebeb 0%, #d7d7d7 100%);
    z-index: -1;
}

.line::after {
    content: "";
    display: block;
    position: absolute;
    height: 15vh;
    width: 100%;
    top: -50%;
    left: 0;
    background: var(--primary-color);
    -webkit-animation: drop 20s 0s infinite;
    animation: drop 4s 0s infinite;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-timing-function: cubic-bezier(0.4, 0.26, 0, 0.97);
    animation-timing-function: cubic-bezier(0.4, 0.26, 0, 0.97);
}

.line:nth-child(2) {
    margin-left: 25.3%;
}

.line:nth-child(2)::after {
    -webkit-animation-delay: 2s;
    animation-delay: 2s;
}

.line:nth-child(3) {
    margin-left: 50.9%;
}

.line:nth-child(3)::after {
    -webkit-animation-delay: 2.5s;
    animation-delay: 2.5s;
}

.line:nth-child(4) {
    margin-left: 76.2%;
}

.line:nth-child(4)::after {
    -webkit-animation-delay: 3s;
    animation-delay: 3s;
}

@-webkit-keyframes drop {
    0% {
        top: -50%;
    }

    100% {
        top: 110%;
    }
}


.pricing-area.style__03 .sec-title {
    margin-bottom: 75px;
}

.pricing-single-items.style__02 {
    padding: 85px 35px 50px;
    margin: 0 30px 30px;

}

.pricing-area.style__03 .premium-title {
    position: absolute;
    top: -36px;
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
}

.pricing-single-items.style__02 .premium-title h3 {
    font-size: 20px;
    font-weight: 500;
    padding: 15px 30px;
    line-height: 20px;
    border-radius: 30px;
    border-bottom: 5px solid var(--bg-color2);
    display: inline-block;
    background: var(--color-white);
}

.pricing-single-items.style__02 .pricng_ratae {
    position: inherit;
    top: 50px;
    right: 40px;
    display: flex;
    align-items: center;
}

.pricing-single-items.style__02 .pricing {
    font-weight: 700;
    font-size: 55px;
}

.pricing-single-items.style__02 .pricng_ratae p {
    display: inline-block;
    text-transform: uppercase;
    font-size: 17px;
    font-family: var(--title-font);
    margin-bottom: -28px;
    margin-left: 15px;
}

.pricing-single-items.style__02 .pricing__persen {
    font-family: var(--title-font);
    font-weight: 400;
    font-size: 16px;
    line-height: 100%;
    border: 2px dashed #14141433;
    border-radius: 30px;
    padding: 7px 22px;
    background: #ffff;
    position: absolute;
    right: 35px;
    top: 27%;
    z-index: 1;
}

.pricing-single-items.style__02 .pricing-body {
    margin-top: 50px;
    border-top: 2px dashed #14141424;
    padding-top: 70px;
    margin-bottom: 54px;
}

.pricing-single-items.style__02 .pricing-feature ul li {
    margin-bottom: 13px;
}

.pricing-single-items.style__02 .pricing-feature ul li img {
    margin-right: 12px;
    margin-top: -4px;
}

.pricing__right__button a {
    display: inline-block;
    font-size: 18px;
    color: var(--text-color);
    font-weight: 500;
    font-family: var(--title-font);
    border-radius: 55px;
    background: var(--color-white);
    padding: 14px 30px;
    transition: 0.5s;
    position: relative;
    z-index: 1;
    border-bottom: 5px solid var(--bg-color2);
}


.pricing__right__button a:hover {
    color: var(--title-color);
    border-bottom: 5px solid var(--primary-color);
    background: var(--bg-color2);
}

.pricing__right__button a:hover::before {
    clip-path: polygon(25% -70%, 75% -70%, 120% 50%, 75% 170%, 25% 170%, -20% 50%);
}

.pricing__right__button a i {
    display: inline-block;
    margin-left: 10px;
    height: 60px;
    width: 58px;
    background: var(--color-white);
    line-height: 55px;
    position: absolute;
    right: -58px;
    top: 0;
    border-radius: 50%;
    transition: 0.5s;
    border-bottom: 5px solid var(--bg-color2);
}

.pricing__right__button a:hover i {
    background: var(--bg-color2);
    color: var(--title-color);
    border-bottom: 5px solid var(--primary-color);
}

/* ======================================================
    Start Service Details Page
========================================================= */
.service__details {
    padding: 120px 0 95px;
}

.custom-scroll {
    margin-left: 20px;
}

.roofin__title h2 {
    font-size: 36px;
    font-weight: 600;
    margin: 28px 0 10px;
}

.roofin__title.two h2 {
    font-size: 30px;
    margin: 55px 0 8px;
}

.roofin__title.style__03 h2 {
    margin: 35px 0 16px;
}

.roofin__title.two.faqs__title h2 {
    margin: 45px 0 26px;
    border-top: 1px solid #04030317;
    padding-top: 45px;
}

.hotelio-description p {
    font-size: 17px;
    line-height: 26px;
    margin-bottom: 22px;
}

.service__details .icon-single-box.style__two {
    background: var(--bg-color2);
    border-radius: 15px;
    padding: 40px 35px 40px;
}

.service__details .icon-single-box.style__two .icon {
    background: var(--color-white);
}

.service__details .icon-single-box.style__two .icon-content-box h3 {
    color: var(--title-color);
}

p.que__text {
    font-size: 17px;
    line-height: 26px;
    margin-bottom: 32px;
}

/* service details list  */

.details__list li {
    font-family: var(--title-font);
    font-weight: 400;
    font-size: 17px;
    line-height: 26px;
    margin-bottom: 12px;
}

.details__list li img {
    margin-right: 10px;
}


/* Sidebar box */
.sidebar__main__box {
    background: var(--bg-color2);
    border-radius: 10px;
    margin-bottom: 30px;
}

.category-title {
    background: var(--primary-color);
    font-size: 24px;
    font-weight: 600;
    color: var(--color-white);
    padding: 10px 40px;
    border-radius: 10px 10px 0 0;
    margin: 0;
}

.sidebar__box {
    padding: 35px 35px 35px;
}

.roofin-service li {
    list-style: none;
    border-radius: 0;
    border: 0;
    position: relative;
    z-index: 1;
    transition: 0.5s;
    background: var(--color-white);
    margin-bottom: 10px;
    padding: 2px 22px;
    border-radius: 5px;
}

.roofin-service li:last-child {
    margin-bottom: 0;
}

.roofin-service li a {
    font-size: 18px;
    color: var(--title-color);
    font-weight: 500;
    padding: 11px 0 11px;
    display: block;
}

.roofin-service li a i {
    margin-right: 6px;
    font-size: 14px;
    display: inline-block;
    color: var(--primary-color);
    transition: 0.5s;
}

.roofin-service li:hover a {
    color: var(--primary-color);
}

/* wigent sidber download button */

.widget-sidber-download-button a {
    display: inline-block;
    width: 100%;
    color: var(--title-color);
    padding: 13px 22px;
    border-radius: 5px;
    font-size: 18px;
    font-weight: 500;
    position: relative;
    z-index: 1;
    transition: 0.5s;
    background: var(--color-white);
    margin-bottom: 10px;
}

.widget-sidber-download-button a:last-child {
    margin-bottom: 0;
}

.widget-sidber-download-button a span i {
    display: inline-block;
    font-size: 16px;
    color: var(--primary-color);
    margin-right: 4px;
}

/* sidebar info */

.widget-sidber-contact-box {
    text-align: center;
}

.sidebar__info__thumb {
    position: relative;
    z-index: 1;
}

.sidebar__info__thumb img {
    width: 100%;
}

.service__sidebar__content {
    position: absolute;
    bottom: 52px;
    left: 0;
    right: 0;
    text-align: center;
}

.widget-sidber-contact-number {
    color: var(--color-white);
    line-height: 36px;
    font-size: 30px;
    font-weight: 600;
    margin: 0 0 33px;
}

.info__btn a {
    background: var(--primary-color);
    padding: 15px 30px;
    font-size: 18px;
    font-weight: 500;
    border-radius: 30px;
    text-decoration: none;
    font-family: var(--title-font);
    color: var(--color-white);
}

.info__btn a:hover {
    background: var(--color-white);
    color: var(--bg-color1);
}

/* ================================
    Start Project Details
=================================== */

.project__details {
    padding: 120px 0 120px;
}

.project__details .roofin__title.two h2 {
    margin: 45px 0 8px;
}

.project__details .roofin__title.style__03 h2 {
    margin: 15px 0 8px;
}

p.benefits__text {
    font-size: 17px;
    margin: 0 26px 28px 0;
}

.project__details .details__list li {
    margin-bottom: 7px;
}

/* project sidebar */

.project__sidebar__main__box {
    background: var(--bg-color2);
    border-radius: 10px;
    margin-top: -70px;
    z-index: 1;
    position: relative;
}

.project__sidebar__box {
    padding: 32px 40px 50px;
}

.project-info .info-item {
    border-bottom: 1px dashed #ddd;
    font-family: var(--title-font);
    padding-top: 12px;
    padding-bottom: 12px;
}

.project-info .info-item .label {
    font-weight: 500;
    color: var(--title-color);
    font-size: 17px;
    margin-right: 15px;
}

.project-info .info-item .value {
    color: #666;
}

.project-info .info-item .status {
    color: #888;
}

.share__title {
    font-family: var(--title-font);
    font-weight: 500;
    font-size: 20px;
    color: var(--title-color);
    margin: 30px 0 0;
}

.project-social {
    padding-top: 17px;
}

.project-social li {
    display: inline-block;
    margin-right: 7px;
}

.project-social li a {
    display: inline-block;
    color: var(--title-color);
    background: var(--color-border2);
    width: 42px;
    height: 42px;
    line-height: 42px;
    border-radius: 50%;
    text-align: center;
    transition: 0.5s;
    position: relative;
    z-index: 1;
    border: 1px solid #ddd;
}

.project-social li a:hover {
    border: 1px solid var(--primary-color);
    color: var(--color-white);
}

.project-social li a::before {
    position: absolute;
    z-index: -1;
    content: "";
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    transform: scale(0);
    border-radius: 50%;
    background: var(--primary-color);
    transition: all 300ms ease;
}

.project-social li a:hover::before {
    transform: scale(1);
}

/* ================================
    Start Latest Blog
=================================== */

.latest__blog {
    background: var(--bg-color2);
    padding: 120px 0px 120px;
}

/* blog sidebar */

.blog__sidebar {
    background: var(--color-white);
    border-top: 10px solid var(--primary-color);
    padding: 40px 40px 40px;
    border-radius: 10px;
    margin-left: 20px;
}

/* search box */

.search-bx {
    position: relative;
    z-index: 1;
}

.search-bx input {
    padding: 10px 25px;
    width: 100%;
    height: 55px;
    border-radius: 10px;
    background: transparent;
    border: 1px solid #ddd;
    font-size: 16px;
    color: var(--title-color);
    font-weight: 500;
    outline: 0;
}

.search-bx input::placeholder {
    color: var(--text-color);
}

.search-bx button.subscribe-btn {
    border: 0;
    background: transparent;
    color: var(--primary-color);
    position: absolute;
    right: 20px;
    top: 15px;
    border-radius: 5px;
    font-size: 16px;
}

h3.sidebar-category-title {
    font-size: 24px;
    font-weight: 600;
    margin: 50px 0 5px;
    line-height: 35px;
}

h3.sidebar-category-title.two {
    margin: 50px 0 24px;
}

.roofin__sideber__list li {
    list-style: none;
    border-bottom: 1px solid #ddd;
    position: relative;
    z-index: 1;
    transition: 0.5s;
    padding-top: 13px;
    padding-bottom: 12px;
}

.roofin__sideber__list li:last-child {
    margin-bottom: 0;
}

.roofin__sideber__list li a {
    font-size: 16px;
    color: var(--title-color);
    font-weight: 500;
    display: block;
    font-family: var(--title-font);
}

.roofin__sideber__list li a span {
    float: right;
    font-family: var(--title-font);
}

.roofin__sideber__list li a i {
    margin-right: 6px;
    font-size: 14px;
    display: inline-block;
    color: var(--primary-color);
    transition: 0.5s;
}

.roofin__sideber__list li:hover a {
    color: var(--primary-color);
}

/* recet post */

.recent__post {
    margin-bottom: 25px;
}

.post-thumb {
    flex-shrink: 0;
}

.recent-content {
    padding-left: 20px;
}

.recent-content h4 {
    margin: 0;
}

.recent-content h4 a {
    display: inline-block;
    transition: 0.5s;
    font-size: 18px;
    line-height: 26px;
    color: var(--title-color);
    font-weight: 500;
    font-family: var(--title-font);
}

.recent-content h4 a:hover {
    color: var(--primary-color);
}

.recent-content h5 {
    text-transform: uppercase;
    font-size: 15px;
    color: var(--primary-color);
    font-weight: 500;
    margin: 0;
    line-height: 15px;
}

.recent__posth3.category-title {
    margin-bottom: 12px;
}

/* list category  */

.list_category li {
    display: inline-block;
    margin-bottom: 10px;
    margin-right: 7px;
}

.list_category li a {
    display: inline-block;
    padding: 3px 25px;
    background: transparent;
    font-size: 14px;
    color: var(--title-color);
    font-weight: 500;
    font-family: var(--title-font);
    border: 1px solid #ddd;
    border-radius: 30px;
}

.list_category li a:hover {
    background: var(--primary-color);
    color: var(--color-white);
    border: 1px solid var(--primary-color);
}



/* blog Pagination button */

.blog-pagination a {
    text-decoration: none;
    font-family: var(--title-font);
    font-size: 16px;
    width: 50px;
    height: 50px;
    line-height: 50px;
    border: 1px solid #e5e5e5;
    border-radius: 50%;
    color: var(--title-color);
    transition: all 0.3s ease;
    font-weight: 500;
    display: inline-block;
    margin-right: 8px;
    text-align: center;
}

.blog-pagination a:hover {
    border-color: #f28c28;
    background: #f28c28;
    color: var(--color-white);
}

.blog-pagination a.active {
    border: 1px solid #f28c28;
    color: var(--color-white);
    background: var(--primary-color);
}

/*=============================================
     blog Details Pagae 
================================================*/

.blog__details .roofin__title.two h2 {
    margin: 36px 0 8px;
}

.blog__custom__card {
    border: 1px solid #ddd;
    padding: 20px 20px 20px;
    border-radius: 15px;
    position: relative;
    z-index: 1;
}

.blog__custom__card::before {
    position: absolute;
    content: '';
    left: 0;
    width: 100%;
    height: 1px;
    background: #ddd;
    top: 742px;
}

.blog__custom__card::after {
    position: absolute;
    content: '';
    left: 0;
    width: 100%;
    height: 1px;
    background: #ddd;
    bottom: 75px;
}

.blog__details__contnet {
    padding: 0 20px 0;
}

.blog-meta-datals {
    display: flex;
    align-items: center;
    gap: 30px;
    font-size: 16px;
    color: #6b7280;
    margin: 15px 0 50px;
}

.blog-meta-datals .blog-author {
    display: flex;
    align-items: center;
    gap: 10px;
}

.blog-meta-datals .blog-author img {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    object-fit: cover;
}

.blog-meta-datals .blog-author strong {
    color: var(--title-color);
    font-weight: 500;
    font-size: 17px;
}

.blog-meta-datals .blog-comments {
    display: flex;
    align-items: center;
    gap: 6px;
    color: var(--title-color);
    font-size: 16px;
    font-weight: 500;
    font-family: var(--title-font);
}

.blog-meta-datals .blog-comments i {
    font-size: 18px;
    color: var(--primary-color);
}

/* blog Quote */

.blog__quote {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 35px;
}

.blog__quote-icon {
    flex-shrink: 0;
}

.blog__quote__text p {
    font-family: var(--title-font);
    font-weight: 500;
    font-size: 22px;
    line-height: 32px;
    color: var(--title-color);
}

.blog__details .details__list li {
    margin-bottom: 12px;
}

/* blog social */

.blog__social {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 45px;
}

.blog__social .project-social {
    padding-top: 0;
}

.blog__social .list_category li {
    margin-bottom: 0;
}

.blog__social .list_category li a {
    padding: 5px 22px;
}

/* pagination card */

.pagination__card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 58px 0 2px;
}

.pagination__btn a {
    font-size: 20px;
    font-weight: 500;
    color: #141414;
    display: flex;
    align-items: center;
    gap: 10px;
}

/* blog Details Comment  */

.blog-details-comment {
    margin-bottom: 20px;
    position: relative;
    padding: 35px 35px 35px;
    background: var(--color-white);
    border-radius: 22px;
}

.blog-details-comment-thumb {
    float: left;
    margin-right: 20px;
    position: relative;
    top: -2px;
}

.blog-details-comment-content {
    overflow: hidden;
}

.blog-details-comment-content h2 {
    margin: 0 0 6px;
    font-size: 20px;
    color: var(--title-color);
    font-weight: 600;
    line-height: 30px;
}

.blog-details-comment-content p {
    font-size: 17px;
    line-height: 26px;
    color: #616161;
    font-weight: 400;
    margin-top: 22px;
}

.author-ratting ul li {
    display: inline-block;
    color: #FF974D;
    letter-spacing: 2px;
}

.author-ratting ul span {
    font-size: 22px;
    font-weight: 400;
    font-family: var(--title-font);
    color: var(--bg-color1);
}

.blog-details-comment-reply a {
    display: inline-block;
    position: absolute;
    right: 35px;
    top: 40px;
    font-size: 15px;
    color: #1e1e1e;
    font-weight: 500;
    text-transform: uppercase;
    border: 1px solid #ddd;
    padding: 4px 20px;
    border-radius: 20px;
}

.blog-details-comment-reply a img {
    margin-right: 4px;
    position: relative;
    top: -1px;
}

/* Comment input box */

.comment-title h3 {
    font-size: 30px;
    font-weight: 600;
    margin: 65px 0 25px;
}

.comment-title.two h3 {
    margin: 10px 0 44px;
}

.comment-form {
    background: var(--color-white);
    padding: 25px 50px 50px;
    border-radius: 20px;
}

input.comment-box {
    border: 1px solid #ddd;
    width: 100%;
    margin-bottom: 20px;
    padding: 25px;
    height: 60px;
    background-color: transparent;
    outline: 0;
    border-radius: 10px;
}

input.comment-box::placeholder {
    color: var(--text-color);
}

#comment-msg-box::placeholder {
    color: var(--text-color);
}

#comment-msg-box {
    width: 100%;
    transition: .5s;
    height: 180px;
    background-color: transparent;
    border: 1px solid #ddd;
    padding: 21px 25px;
    outline: 0;
    border-radius: 10px;
}

.comment-form .submit-comment {
    padding: 14px 18px;
    border: 0;
    transition: .5s;
    border-radius: 0;
    margin-top: 25px;
    font-family: var(--title-font);
    font-size: 16px;
    color: #fff;
    text-transform: uppercase;
    font-weight: 500;
    background: var(--primary-color);
    width: 200px;
    border-radius: 30px;
}

.comment-form .submit-comment:hover {
    background: var(--title-color);
}

/* maps */

.maps iframe {
    width: 100%;
    height: 600px;
}

/* Team details Section 
==============================*/

.team-details-area {
    padding: 120px 0 70px;
    background: var(--color-white);
}

.team-details {
    box-shadow: 6px 5px 30px rgba(0, 0, 0, 0.12);
    padding: 50px;
    margin-bottom: 50px;
    border-radius: 20px;
}

.team-details-thumb img {
    width: 100%;

}

/* Team details content */

.team-details-content {
    padding: 0 0 0 35px;
}

.team-details-title h2 {
    color: #0e0e0e;
    font-size: 30px;
    font-weight: 700;
}

.team-details-title p {
    font-size: 16px;
    margin: 10px 0 0;
    color: var(--title-color);
    font-weight: 600;
}

.team-details-content-text ul li {
    margin-bottom: 17px;
    display: block;
    color: #65677a;
}

.team-details-content-text ul li span {
    font-weight: 500;
    margin-right: 15px;
    font-size: 17px;
    color: var(--title-color);
}

.team-details-content-icon a {
    margin: 3px;
    background: var(--primary-color);
    line-height: 1;
    display: inline-block;
    border-radius: 3px;
    color: var(--color-white);
    height: 35px;
    width: 35px;
    line-height: 35px;
    text-align: center;
    transition: 0.5s;
    border: 1px solid var(--primary-color);
}

.team-details-content-icon a:hover {
    background: transparent;
    border: 1px solid var(--primary-color);
    color: var(--primary-color);
}

.skill-wrapper h6 {
    margin-bottom: 8px;
    margin-top: 20px;
}

.team-detail-title h2 {
    font-size: 35px;
    font-weight: 600;
    color: #161616;
    line-height: 0;
}

.team-detail-title p {
    font-size: 16px;
    font-weight: 400;
    color: #63636b;
    margin-top: 40px;
}


/* ================ All Animation CSS ===================*/

.rotate {
    -webkit-animation-name: rotateme;
    animation-name: rotateme;
    -webkit-animation-duration: 20s;
    animation-duration: 20s;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    background-position: center center;
}

@keyframes rotateme {
    from {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    to {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

.bounce-animate {
    animation-name: float-bob;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
    -moz-animation-name: float-bob;
    -moz-animation-duration: 2s;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: linear;
    -ms-animation-name: float-bob;
    -ms-animation-duration: 2s;
    -ms-animation-iteration-count: infinite;
    -ms-animation-timing-function: linear;
    -o-animation-name: float-bob;
    -o-animation-duration: 2s;
    -o-animation-iteration-count: infinite;
    -o-animation-timing-function: linear;
}

.bounce-animate2 {
    animation-name: float-bob2;
    animation-duration: 3s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
    -moz-animation-name: float-bob2;
    -moz-animation-duration: 3s;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: linear;
    -ms-animation-name: float-bob2;
    -ms-animation-duration: 3s;
    -ms-animation-iteration-count: infinite;
    -ms-animation-timing-function: linear;
    -o-animation-name: float-bob2;
    -o-animation-duration: 3s;
    -o-animation-iteration-count: infinite;
    -o-animation-timing-function: linear;
}

.bounce-animate3 {
    animation-name: float-bob3;
    animation-duration: 3s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
    -moz-animation-name: float-bob3;
    -moz-animation-duration: 3s;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: linear;
    -ms-animation-name: float-bob3;
    -ms-animation-duration: 3s;
    -ms-animation-iteration-count: infinite;
    -ms-animation-timing-function: linear;
    -o-animation-name: float-bob3;
    -o-animation-duration: 3s;
    -o-animation-iteration-count: infinite;
    -o-animation-timing-function: linear;
}

.bounce-animate4 {
    animation-name: float-bob4;
    animation-duration: 5s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
    -moz-animation-name: float-bob4;
    -moz-animation-duration: 5s;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: linear;
    -ms-animation-name: float-bob4;
    -ms-animation-duration: 5s;
    -ms-animation-iteration-count: infinite;
    -ms-animation-timing-function: linear;
    -o-animation-name: float-bob4;
    -o-animation-duration: 5s;
    -o-animation-iteration-count: infinite;
    -o-animation-timing-function: linear;
}

.bounce-animate5 {
    animation-name: float-bob5;
    animation-duration: 6s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
    -moz-animation-name: float-bob5;
    -moz-animation-duration: 6s;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: linear;
    -ms-animation-name: float-bob5;
    -ms-animation-duration: 6s;
    -ms-animation-iteration-count: infinite;
    -ms-animation-timing-function: linear;
    -o-animation-name: float-bob5;
    -o-animation-duration: 6s;
    -o-animation-iteration-count: infinite;
    -o-animation-timing-function: linear;
}

.bounce-animate-slow {
    animation-name: float-bob5;
    animation-duration: 15s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
    -moz-animation-name: float-bob5;
    -moz-animation-duration: 15s;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: linear;
    -ms-animation-name: float-bob5;
    -ms-animation-duration: 15s;
    -ms-animation-iteration-count: infinite;
    -ms-animation-timing-function: linear;
    -o-animation-name: float-bob5;
    -o-animation-duration: 15s;
    -o-animation-iteration-count: infinite;
    -o-animation-timing-function: linear;
}

.bounce-animate-3 {
    animation-name: float-bob6;
    animation-duration: 6s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
    -moz-animation-name: float-bob6;
    -moz-animation-duration: 6s;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: linear;
    -ms-animation-name: float-bob6;
    -ms-animation-duration: 6s;
    -ms-animation-iteration-count: infinite;
    -ms-animation-timing-function: linear;
    -o-animation-name: float-bob6;
    -o-animation-duration: 6s;
    -o-animation-iteration-count: infinite;
    -o-animation-timing-function: linear;
}

@keyframes float-bob {
    0% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }

    50% {
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px);
    }

    100% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }
}

@keyframes float-bob2 {
    0% {
        -webkit-transform: translateY(-60px);
        transform: translateY(-60px);
    }

    50% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }

    100% {
        -webkit-transform: translateY(-60px);
        transform: translateY(-60px);
    }
}

@keyframes float-bob3 {
    0% {
        -webkit-transform: translateY(-50px);
        transform: translateY(-50px);
    }

    50% {
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px);
    }

    100% {
        -webkit-transform: translateY(-50px);
        transform: translateY(-50px);
    }
}

@keyframes float-bob4 {
    0% {
        -webkit-transform: translateY(-50px);
        transform: translateY(-50px);
    }

    50% {
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px);
    }

    100% {
        -webkit-transform: translateY(-50px);
        transform: translateY(-50px);
    }
}

@keyframes float-bob5 {
    0% {
        -webkit-transform: translateY(-50px);
        transform: translateY(-50px);
    }

    50% {
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
    }

    100% {
        -webkit-transform: translateY(-50px);
        transform: translateY(-50px);
    }
}

@keyframes float-bob6 {
    0% {
        -webkit-transform: translateY(-40px);
        transform: translateY(-40px);
    }

    50% {
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px);
    }

    100% {
        -webkit-transform: translateY(-40px);
        transform: translateY(-40px);
    }
}

@keyframes movebounce {
    0% {
        -webkit-transform: translateY(0px);
        transform: translateY(0px);
    }

    50% {
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
    }

    100% {
        -webkit-transform: translateY(0px);
        transform: translateY(0px);
    }
}

@keyframes moveleftbounce {
    0% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px);
    }

    50% {
        -webkit-transform: translateX(20px);
        transform: translateX(20px);
    }

    100% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px);
    }
}

/*--==============================================->
<!-- Consen Animation Dance -->
==================================================-*/
.dance3 {
    -webkit-animation: dance3 8s alternate infinite;
    animation: dance3 8s alternate infinite;
}

@keyframes dance3 {
    0% {
        -webkit-transform: scale(0.5);
    }

    100% {
        -webkit-transform: scale(1);
    }
}

.dance {
    -webkit-animation: dance 2s alternate infinite;
    animation: dance 2s alternate infinite;
}

@keyframes dance {
    0% {
        -webkit-transform: scale(0.5);
    }

    100% {
        -webkit-transform: scale(1.2);
    }
}

.dance2 {
    -webkit-animation: dance2 4s alternate infinite;
    animation: dance2 4s alternate infinite;
}

@keyframes dance2 {
    0% {
        -webkit-transform: translate3d(0, 0, 0);
    }

    50% {
        -webkit-transform: translate3d(25px, -25px, 0);
    }

    100% {
        -webkit-transform: translate3d(0, -25px, 25px);
    }
}

.watermark-animate {
    -webkit-animation: watermark-animate 8s infinite;
    animation: watermark-animate 8s infinite;
    animation-direction: alternate-reverse;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
}

@keyframes watermark-animate {
    0% {
        left: 0;
    }

    100% {
        left: 100%;
    }
}

/*==========================
	Prelaoder
===========================*/
.preloader {
    position: fixed;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    z-index: 999999;
    background: var(--bg-color1);
}

.preloader::before {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    width: 100%;
    text-align: center;
    margin: 0 auto;
    margin-top: 30px;
    color: var(--title-color);
    font-weight: 700;
    font-size: 12px;
    letter-spacing: 1px;
    content: "Loading";
    text-transform: uppercase;
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
}

.loader {
    display: block;
    position: relative;
    left: 50%;
    top: 50%;
    width: 100px;
    height: 100px;
    margin: -75px 0 0 -50px;
    border-radius: 50%;
    border: 3px solid var(--primary-color);
    border-top-color: var(--text-color);
    -webkit-animation: spin 2s linear infinite;
    animation: spin 2s linear infinite;
}

.loader::before {
    content: "";
    position: absolute;
    top: 5px;
    left: 5px;
    right: 5px;
    bottom: 5px;
    border-radius: 50%;
    border: 3px solid transparent;
    border-top-color: var(--primary-color);
    -webkit-animation: spin 3s linear infinite;
    animation: spin 3s linear infinite;
}

.loader::after {
    content: "";
    position: absolute;
    top: 15px;
    left: 15px;
    right: 15px;
    bottom: 15px;
    border-radius: 50%;
    border: 3px solid transparent;
    border-top-color: var(--text-color);
    -webkit-animation: spin 1.5s linear infinite;
    animation: spin 1.5s linear infinite;
}

@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}