/*----------------------------------------*/


/*  1. Template default CSS
/*----------------------------------------*/


/*-- Google Font --*/

@import url('https://fonts.googleapis.com/css?family=Roboto:300,400,500,700,900');

/*-- Common Style --*/

@media only screen and (min-width: 1200px) {
    .container {
        max-width: 1200px;
    }
}
.row {
	margin-right: calc(var(--bs-gutter-x) * -.6);
	margin-left: calc(var(--bs-gutter-x) * -.6);
}
.row > * {
	padding-right: calc(var(--bs-gutter-x) * .6);
	padding-left: calc(var(--bs-gutter-x) * .6);
}
.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
	padding-right: calc(var(--bs-gutter-x) * .6);
	padding-left: calc(var(--bs-gutter-x) * .6);
}


*,
*::after,
*::before {
    box-sizing: border-box;
}

html,
body {
    height: 100%;
}

body {
    background-color: $white;
    line-height: 24px;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    font-family: $roboto;
    color: #333;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    color: $heading-color;
    font-family: $roboto;
    font-weight: 400;
    margin-top: 0;
}

p {
    font-size: 14px;
    font-weight: 400;
    line-height: 24px;
    color: #333;
    margin-bottom: 15px;
}

h1 {
    font-size: 36px;
    line-height: 42px;
}

h2 {
    font-size: 30px;
    line-height: 36px;
}

h3 {
    font-size: 24px;
    line-height: 30px;
}

h4 {
    font-size: 18px;
    line-height: 24px;
}

h5 {
    font-size: 14px;
    line-height: 18px;
}

h6 {
    font-size: 12px;
    line-height: 14px;
}

p:last-child {
    margin-bottom: 0;
}

a,
button {
    color: inherit;
    line-height: inherit;
    text-decoration: none;
    cursor: pointer;
}

a,
button,
img,
input,
span {
    transition: all .3s ease 0s;
}

*:focus {
    outline: none !important;
}

a:focus {
    color: inherit;
    outline: none;
    text-decoration: none;
}

a:hover {
    text-decoration: none;
}

button,
input[type="submit"] {
    cursor: pointer;
}

ul {
    list-style: outside none none;
    margin: 0;
    padding: 0;
}


/*-- 
    - Common Classes
-----------------------------------------*/

.fix {
    overflow: hidden
}

.hidden {
    display: none;
}

.clear {
    clear: both;
}

.section {
    float: left;
    width: 100%;
}

.capitalize {
    text-transform: capitalize;
}

.uppercase {
    text-transform: uppercase;
}

.bg-img {
    background-position: center center;
    background-size: cover;
}

.border-bottom-1 {
    border-bottom: 1px solid #d5d5d5;
}

a:hover {
    color: $theme-color;
}


/*************************
  Basic margin padding
*************************/

.m-0 {
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0;
}

.p-0 {
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
}


/*************************
         Margin top
*************************/

.mt-0 {
    margin-top: 0
}

.mt-10 {
    margin-top: 10px
}

.mt-12 {
    margin-top: 12px
}

.mt-15 {
    margin-top: 15px
}

.mt-20 {
    margin-top: 20px
}

.mt-25 {
    margin-top: 25px
}

.mt-30 {
    margin-top: 30px
}

.mt-40 {
    margin-top: 40px
}

.mt-45 {
    margin-top: 45px
}

.mt-50 {
    margin-top: 50px
}

.mt-60 {
    margin-top: 60px
}

.mt-70 {
    margin-top: 70px
}

.mt-80 {
    margin-top: 80px;
    @media #{$large-mobile} {
        margin-top: 60px;
    }
}

.mt-90 {
    margin-top: 90px
}

.mt-100 {
    margin-top: 100px
}

.mt-110 {
    margin-top: 110px
}

.mt-120 {
    margin-top: 120px
}

.mt-130 {
    margin-top: 130px
}

.mt-140 {
    margin-top: 140px
}

.mt-150 {
    margin-top: 150px
}


/*************************
      Margin right
*************************/

.mr-0 {
    margin-right: 0px
}

.mr-10 {
    margin-right: 10px
}

.mr-12 {
    margin-right: 12px
}

.mr-15 {
    margin-right: 15px
}

.mr-20 {
    margin-right: 20px
}

.mr-30 {
    margin-right: 30px
}

.mr-35 {
    margin-right: 35px
}

.mr-40 {
    margin-right: 40px
}

.mr-50 {
    margin-right: 50px
}

.mr-60 {
    margin-right: 60px
}

.mr-70 {
    margin-right: 70px
}

.mr-80 {
    margin-right: 80px
}

.mr-90 {
    margin-right: 90px
}

.mr-100 {
    margin-right: 100px;
}

.mr-110 {
    margin-right: 110px
}

.mr-120 {
    margin-right: 120px
}

.mr-130 {
    margin-right: 130px
}

.mr-140 {
    margin-right: 140px
}

.mr-150 {
    margin-right: 150px
}


/*************************
      Margin bottom
*************************/

.mb-0 {
    margin-bottom: 0
}

.mb-10 {
    margin-bottom: 10px
}

.mb-12 {
    margin-bottom: 12px
}

.mb-15 {
    margin-bottom: 15px
}

.mb-20 {
    margin-bottom: 20px
}

.mb-30 {
    margin-bottom: 30px
}

.mb-35 {
    margin-bottom: 35px
}

.mb-40 {
    margin-bottom: 40px
}

.mb-45 {
    margin-bottom: 45px
}

.mb-50 {
    margin-bottom: 50px
}

.mb-55 {
    margin-bottom: 55px
}

.mb-60 {
    margin-bottom: 60px
}

.mb-65 {
    margin-bottom: 65px
}

.mb-70 {
    margin-bottom: 70px
}

.mb-75 {
    margin-bottom: 75px
}

.mb-80 {
    margin-bottom: 80px;
    @media #{$large-mobile} {
        margin-bottom: 60px;
    }
}

.mb-90 {
    margin-bottom: 90px
}

.mb-95 {
    margin-bottom: 95px
}

.mb-100 {
    margin-bottom: 100px;
    @media #{$large-mobile} {
        margin-bottom: 50px;
    }
}

.mb-110 {
    margin-bottom: 110px
}

.mb-120 {
    margin-bottom: 120px
}

.mb-130 {
    margin-bottom: 130px
}

.mb-140 {
    margin-bottom: 140px
}

.mb-150 {
    margin-bottom: 150px
}


/*************************
        Margin left
*************************/

.ml-0 {
    margin-left: 0
}

.ml-10 {
    margin-left: 10px
}

.ml-12 {
    margin-left: 12px
}

.ml-15 {
    margin-left: 15px
}

.ml-20 {
    margin-left: 20px
}

.ml-30 {
    margin-left: 30px
}

.ml-40 {
    margin-left: 40px
}

.ml-50 {
    margin-left: 50px
}

.ml-55 {
    margin-left: 55px
}

.ml-60 {
    margin-left: 60px
}

.ml-70 {
    margin-left: 70px
}

.ml-80 {
    margin-left: 80px
}

.ml-90 {
    margin-left: 90px
}

.ml-100 {
    margin-left: 100px
}

.ml-110 {
    margin-left: 110px
}

.ml-120 {
    margin-left: 120px
}

.ml-130 {
    margin-left: 130px
}

.ml-140 {
    margin-left: 140px
}

.ml-150 {
    margin-left: 150px
}


/*************************
        Padding top
*************************/

.pt-0 {
    padding-top: 0
}

.pt-10 {
    padding-top: 10px
}

.pt-15 {
    padding-top: 15px
}

.pt-20 {
    padding-top: 20px
}

.pt-30 {
    padding-top: 30px
}

.pt-40 {
    padding-top: 40px
}

.pt-45 {
    padding-top: 45px
}

.pt-50 {
    padding-top: 50px
}

.pt-55 {
    padding-top: 55px
}

.pt-60 {
    padding-top: 60px
}

.pt-70 {
    padding-top: 70px;
    @media #{$large-mobile} {
        padding-top: 60px;
    }
}

.pt-75 {
    padding-top: 75px
}

.pt-80 {
    padding-top: 80px
}

.pt-95 {
    padding-top: 95px
}

.pt-90 {
    padding-top: 90px;
    @media #{$large-mobile} {
        padding-top: 60px;
    }
}

.pt-100 {
    padding-top: 100px;
}

.pt-95 {
    padding-top: 95px
}

.pt-105 {
    padding-top: 105px
}

.pt-110 {
    padding-top: 110px;
    @media #{$large-mobile} {
        padding-top: 40px;
    }
}

.pt-115 {
    padding-top: 115px
}

.pt-120 {
    padding-top: 120px;
    @media #{$large-mobile} {
        padding-top: 50px;
    }
}

.pt-125 {
    padding-top: 125px;
    @media #{$large-mobile} {
        padding-top: 55px;
    }
    @media #{$tablet-device} {
        padding-top: 75px;
    }
}

.pt-128 {
    padding-top: 128px
}

.pt-130 {
    padding-top: 130px;
    @media #{$large-mobile} {
        padding-top: 60px;
    }
    @media #{$tablet-device} {
        padding-top: 80px;
    }
}

.pt-135 {
    padding-top: 135px
}

.pt-140 {
    padding-top: 140px
}

.pt-150 {
    padding-top: 150px
}

.pt-155 {
    padding-top: 155px
}

.pt-170 {
    padding-top: 170px
}

.pt-180 {
    padding-top: 180px;
    @media #{$large-mobile} {
        padding-top: 60px;
    }
    @media #{$tablet-device} {
        padding-top: 90px;
    }
}

.pt-205 {
    padding-top: 205px;
}

.pt-230 {
    padding-top: 230px
}

.pt-270 {
    padding-top: 270px;
    @media #{$tablet-device} {
        padding-top: 170px;
    }
    @media #{$large-mobile} {
        padding-top: 100px;
    }
}

.pt-240 {
    padding-top: 240px
}

.pt-365 {
    padding-top: 365px
}

.pt-370 {
    padding-top: 370px
}

.pt-380 {
    padding-top: 380px
}


/*************************
        Padding right
*************************/

.pr-0 {
    padding-right: 0
}

.pr-10 {
    padding-right: 10px
}

.pr-15 {
    padding-right: 15px
}

.pr-20 {
    padding-right: 20px
}

.pr-30 {
    padding-right: 30px
}

.pr-40 {
    padding-right: 40px
}

.pr-50 {
    padding-right: 50px
}

.pr-60 {
    padding-right: 60px
}

.pr-70 {
    padding-right: 70px
}

.pr-80 {
    padding-right: 80px
}

.pr-90 {
    padding-right: 90px
}

.pr-100 {
    padding-right: 100px
}

.pr-110 {
    padding-right: 110px
}

.pr-120 {
    padding-right: 120px
}

.pr-130 {
    padding-right: 130px
}

.pr-140 {
    padding-right: 140px
}

.pr-155 {
    padding-right: 155px
}

.pr-270 {
    padding-right: 270px
}


/*************************
        Padding bottom
*************************/

.pb-0 {
    padding-bottom: 0
}

.pb-10 {
    padding-bottom: 10px
}

.pb-15 {
    padding-bottom: 15px
}

.pb-20 {
    padding-bottom: 20px
}

.pb-25 {
    padding-bottom: 25px
}

.pb-30 {
    padding-bottom: 30px
}

.pb-40 {
    padding-bottom: 40px
}

.pb-50 {
    padding-bottom: 50px
}

.pb-60 {
    padding-bottom: 60px
}

.pb-65 {
    padding-bottom: 65px
}

.pb-70 {
    padding-bottom: 70px
}

.pb-80 {
    padding-bottom: 80px;
    @media #{$large-mobile} {
        padding-bottom: 60px;
    }
}

.pb-85 {
    padding-bottom: 85px
}

.pb-90 {
    padding-bottom: 90px
}

.pb-95 {
    padding-bottom: 95px
}

.pb-100 {
    padding-bottom: 100px;
    @media #{$large-mobile} {
        padding-bottom: 30px;
    }
    @media #{$tablet-device} {
        padding-bottom: 50px;
    }  
}

.pb-105 {
    padding-bottom: 105px
}

.pb-110 {
    padding-bottom: 110px;
}

.pb-115 {
    padding-bottom: 115px;
    @media #{$large-mobile} {
        padding-bottom: 45px;
    }
    @media #{$tablet-device} {
        padding-bottom: 65px;
    }
}

.pb-120 {
    padding-bottom: 120px;
    @media #{$large-mobile} {
        padding-bottom: 50px;
    }
}

.pb-125 {
    padding-bottom: 125px;
}

.pb-130 {
    padding-bottom: 130px;
    @media #{$large-mobile} {
        padding-bottom: 60px;
    }
    @media #{$tablet-device} {
        padding-bottom: 80px;
    }
}

.pb-140 {
    padding-bottom: 140px;
    @media #{$large-mobile} {
        padding-bottom: 30px;
    }
    @media #{$tablet-device} {
        padding-bottom: 50px;
    }
}

.pb-145 {
    padding-bottom: 145px
}

.pb-150 {
    padding-bottom: 150px
}

.pb-170 {
    padding-bottom: 170px
}

.pb-180 {
    padding-bottom: 180px
}

.pb-280 {
    padding-bottom: 280px
}

.pb-210 {
    padding-bottom: 210px
}

.pb-285 {
    padding-bottom: 285px
}

.pb-270 {
    padding-bottom: 270px;
    @media #{$tablet-device} {
        padding-bottom: 170px;
    }
    @media #{$large-mobile} {
        padding-bottom: 100px;
    }
}

.pb-290 {
    padding-bottom: 290px
}


/*************************
        Padding left
*************************/

.pl-0 {
    padding-left: 0
}

.pl-10 {
    padding-left: 10px
}

.pl-15 {
    padding-left: 15px
}

.pl-20 {
    padding-left: 20px
}

.pl-30 {
    padding-left: 30px
}

.pl-40 {
    padding-left: 40px
}

.pl-50 {
    padding-left: 50px
}

.pl-60 {
    padding-left: 60px
}

.pl-70 {
    padding-left: 70px
}

.pl-80 {
    padding-left: 80px
}

.pl-90 {
    padding-left: 90px
}

.pl-100 {
    padding-left: 100px
}

.pl-110 {
    padding-left: 110px
}

.pl-120 {
    padding-left: 120px
}

.pl-130 {
    padding-left: 130px
}

.pl-140 {
    padding-left: 140px
}

.pl-150 {
    padding-left: 150px
}

.pl-155 {
    padding-left: 155px
}

.pl-190 {
    padding-left: 190px
}


/***************************
    Page section padding 
****************************/

.ptb-0 {
    padding: 0
}

.ptb-10 {
    padding: 10px 0
}

.ptb-20 {
    padding: 20px 0
}

.ptb-30 {
    padding: 30px 0
}

.ptb-35 {
    padding: 35px 0
}

.ptb-32 {
    padding: 32px 0
}

.ptb-40 {
    padding: 40px 0
}

.ptb-50 {
    padding: 50px 0
}

.ptb-60 {
    padding: 60px 0
}

.ptb-70 {
    padding: 70px 0
}

.ptb-80 {
    padding: 80px 0
}

.ptb-90 {
    padding: 90px 0
}

.ptb-100 {
    padding: 100px 0
}

.ptb-110 {
    padding: 110px 0
}

.ptb-120 {
    padding: 120px 0
}

.ptb-130 {
    padding: 130px 0
}

.ptb-140 {
    padding: 140px 0
}

.ptb-150 {
    padding: 150px 0
}

.ptb-160 {
    padding: 160px 0
}

.ptb-170 {
    padding: 170px 0
}

.ptb-177 {
    padding: 177px 0
}

.ptb-180 {
    padding: 180px 0
}

.ptb-190 {
    padding: 190px 0
}

.ptb-200 {
    padding: 200px 0
}

.ptb-210 {
    padding: 210px 0
}

.ptb-220 {
    padding: 220px 0
}

.ptb-290 {
    padding: 290px 0
}

.ptb-310 {
    padding: 310px 0
}


/***************************
    Page section margin 
****************************/

.mtb-0 {
    margin: 0
}

.mtb-10 {
    margin: 10px 0
}

.mtb-15 {
    margin: 15px 0
}

.mtb-20 {
    margin: 20px 0
}

.mtb-30 {
    margin: 30px 0
}

.mtb-40 {
    margin: 40px 0
}

.mtb-50 {
    margin: 50px 0
}

.mtb-60 {
    margin: 60px 0
}

.mtb-70 {
    margin: 70px 0
}

.mtb-80 {
    margin: 80px 0
}

.mtb-90 {
    margin: 90px 0
}

.mtb-100 {
    margin: 100px 0
}

.mtb-110 {
    margin: 110px 0
}

.mtb-120 {
    margin: 120px 0
}

.mtb-130 {
    margin: 130px 0
}

.mtb-140 {
    margin: 140px 0
}

.mtb-150 {
    margin: 150px 0;
}

.mtb-290 {
    margin: 290px 0;
}


/*-- 
    - Input Placeholder
-----------------------------------------*/

input:-moz-placeholder,
textarea:-moz-placeholder {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}

input::-moz-placeholder,
textarea::-moz-placeholder {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}

input {
    background: #eceff8;
    border: 2px solid #eceff8;
    height: 45px;
    box-shadow: none;
    padding-left: 10px;
    font-size: 14px;
    color: #333;
    width: 100%;
}

select {
    width: 100%;
    background: transparent;
    border: 0px solid #eceff8;
    box-shadow: none;
    font-size: 14px;
    color: #333;
}

option {
    background: #fff;
    border: 0px solid #626262;
    padding-left: 10px;
    font-size: 14px;
}

input:focus {
    background: transparent;
}

textarea {
    resize: vertical;
    background: #eceff8;
    border: 2px solid #eceff8;
    padding: 10px;
    width: 100%;
    font-size: 14px;
}

textarea:focus {
    background: transparent;
    border: 2px solid #4FC1F0;
    outline: none;
}

.input-group.divcenter.input-group .form-control {
    padding-left: 0px
}

.custom-row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -21px;
    margin-left: -21px;
    @media #{$desktop-device} {
        margin-right: -15px;
        margin-left: -15px;
    }
    @media #{$laptop-device} {
        margin-right: -15px;
        margin-left: -15px;
    }
    @media #{$tablet-device} {
        margin-right: -15px;
        margin-left: -15px;
    }
    @media #{$large-mobile} {
        margin-right: -15px;
        margin-left: -15px;
    }
}

.custom-col-5 {
    flex: 0 0 20%;
    max-width: 20%;
    padding-right: 21px;
    padding-left: 21px;
    position: relative;
    width: 100%;
    min-height: 1px;
    @media #{$desktop-device} {
        padding-right: 15px;
        padding-left: 15px;
    }
    @media #{$laptop-device} {
        padding-right: 15px;
        padding-left: 15px;
        flex: 0 0 33.333%;
        max-width: 33.333%;
    }
    @media #{$tablet-device} {
        padding-right: 15px;
        padding-left: 15px;
        flex: 0 0 50%;
        max-width: 50%;
    }
    @media #{$large-mobile} {
        padding-right: 15px;
        padding-left: 15px;
        flex: 0 0 100%;
        max-width: 100%;
    }
    @media #{$small-mobile} {
        flex: 0 0 50%;
        max-width: 50%;
    }
}

.mobile-menu-area {
    display: none;
    @media #{$tablet-device} {
        display: block;
    }
    @media #{$large-mobile} {
        display: block;
    }
    @media #{$small-mobile} {
        display: block;
    }
}

.mean-container a.meanmenu-reveal {
    top: -26px;
}

#mobile-menu-active {
    display: none;
}

.mobile-menu .mean-nav ul.menu-overflow {
    height: 215px;
    margin-top: 10;
    overflow-y: auto;
}

.mobile-menu.mean-container .mean-nav ul {
    margin: 14px 0 0;
}


/*-- 
    Scroll Up 
-----------------------------------------*/

#scrollUp {
    width: 50px;
    height: 50px;
    background-color: $theme-color;
    color: #fff;
    right: 20px;
    bottom: 60px;
    text-align: center;
    overflow: hidden;
    border-radius: 50px;
    z-index: 9811 !important;
    @media #{$large-mobile} {
        width: 40px;
        height: 40px;
    }
    & i {
        display: block;
        line-height: 50px;
        font-size: 22px;
        @media #{$large-mobile} {
            line-height: 40px;
            font-size: 16px;
        }
    }
    &:hover {
        & i {
            animation-name: fadeInUp;
            animation-duration: 1s;
            animation-fill-mode: both;
            animation-iteration-count: infinite;
        }
    }
}


/*--
    - Background Color
------------------------------------------*/

.bg-gray {
    background-color: #f6f7f8;
}

.default-btn {
    background-color: $theme-color;
    color: #fff;
    display: inline-block;
    font-size: 16px;
    font-weight: bold;
    padding: 21px 40px 21px;
    text-align: center;
    text-transform: uppercase;
    -webkit-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
    line-height: 1;
    letter-spacing: .5px;
    border-radius: 50px;
    &:hover {
        background-color: #333;
        color: #fff;
    }
    @media #{$large-mobile}{
		padding: 14px 30px 14px;
        font-size: 15px;
	}
}

.default-overlay {
    position: relative;
    &:before {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        content: "";
        right: 0;
        bottom: 0;
    }
}