*,
* button:focus {
    outline: 0;
}

:root {
    --mainColor: #03A65C;
    --subColor: #C8C5C7;
    /* --subColor2: #77643d; */
}

.mainColor {
    color: var(--mainColor) !important;
}

.mainBack {
    background-color: var(--mainColor) !important;
    border-color: var(--mainColor) !important;
}

html::-webkit-scrollbar {
    height: 20px;
    width: 10px;
    background: #f1f1f1;
    border-radius: 10px;
}

html::-webkit-scrollbar-thumb {
    background: #999;
    border-radius: 10px;
}

html::-webkit-scrollbar-corner {
    background: #999;
    border-radius: 10px;
}

body {
    font-family: "Poppins", sans-serif;
    text-decoration: none;
    font-size: 0.9em;
    overflow-x: hidden;
    position: relative;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    line-height: 1.2;
    font-family: "Space Grotesk", sans-serif;
}

body a:hover {
    text-decoration: none;
}

body a:focus {
    outline: 0;
}

body ul:not(.list-style) {
    list-style-type: none;
    margin: 0;
}

[type=email], [type=number], [type=tel], [type=url] {
    direction: inherit;
}

.btn-default:active,
.btn-default:active:focus,
.btn-default:active:hover,
.btn-default:focus,
.btn-default:hover,
.btn-primary:not(:disabled):not(.disabled):active:focus,
.btn:not(:disabled):not(.disabled).active,
.btn:not(:disabled):not(.disabled):active {
    -webkit-appearance: none;
}

.btn:active,
.btn:active:focus,
.btn:active:hover,
.btn:focus,
.btn:hover,
.btn:not(:disabled):not(.disabled).active,
.btn:not(:disabled):not(.disabled):active {
    transition: all 0.6s ease;
    outline: 0;
}

/* ==================== global style ============================== */
a,
span,
img {
    display: inline-block;
    transition: all 0.3s ease;
    color: inherit;
    text-decoration: none;
}

a:hover {
    color: inherit;
}

ul {
    padding: 0;
}

img {
    max-width: 100%;
    max-height: 100%;
}

.img_cover {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.img_contain {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

p {
    font-size: 15px;
    line-height: 1.7;
    margin: 0;
}

.text,
.text * {
    font-size: 14px;
    line-height: 1.8;
}

small.text {
    font-size: 12px;
}

.section_padding {
    padding: 100px 0;
}

.dropdown .dropdown-menu {
    border-radius: 10px;
    padding: 10px;
    border: 0;
    box-shadow: 15px 15px 30px rgba(0, 0, 0, 0.0666666667);
}

.dropdown .dropdown-menu .dropdown-item {
    font-size: 14px;
    padding: 0.5rem 1rem;
    border-radius: 10px;
}

/* --------------- to_top button --------------- */
.progress-wrap {
    position: fixed;
    left: 20px;
    bottom: 20px;
    height: 50px;
    width: 50px;
    cursor: pointer;
    display: block;
    border-radius: 50px;
    box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.0666666667);
    opacity: 0;
    overflow: hidden;
    visibility: hidden;
    transform: translateX(-100px);
    z-index: 99;
    transition: all 200ms linear;
}

.progress-wrap::after {
    background: url(../images/top-arrow.png);
    background-size: contain;
    background-repeat: no-repeat;
    content: "";
    display: flex;
    align-items: center;
    align-content: center;
    justify-content: center;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    position: absolute;
    color: #000;
    left: 13px;
    top: 13px;
    height: 25px;
    width: 25px;
    display: block;
}

.progress-wrap svg path {
    fill: #f8f8f8;
}

.progress-wrap svg.progress-circle path {
    stroke: #000;
    stroke-width: 5;
    box-sizing: border-box;
}

.progress-wrap.active-progress {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* --------------- buttons --------------- */
.butn {
    position: relative;
    text-align: center;
    border: 0;
    background-color: var(--mainColor);
    border-radius: 10px;
    padding: 18px 50px;
    font-size: 16px;
    text-transform: capitalize;
}

.butn * {
    color: #fff;
}

.butn .h-ico {
    opacity: 0;
    width: 0;
    transition: all 0.3s ease;
}

.butn:hover {
    background-color: #000;
    box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.0666666667);
    transform: translateY(-3px);
}

.butn:hover .h-ico {
    opacity: 1;
    transform: translateX(5px);
}

.butn:hover .txt {
    transform: translateX(-5px);
}

.line-btn {
    font-size: 18px;
    text-transform: uppercase;
}

.line-btn:hover {
    color: var(--mainColor);
}

.line-btn i {
    margin-inline-start: 20px;
}

/* --------------- navbar --------------- */
.navbar {
    background-color: transparent;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 99;
    padding: 15px 0;
    transform: translateY(0);
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.navbar .navbar-nav .nav-link {
    font-size: 16px;
    margin: 0 20px;
    color: #000;
    text-transform: capitalize;
}

.navbar .navbar-nav .nav-link.active, .navbar .navbar-nav .nav-link:hover {
    color: var(--mainColor) !important;
    /*text-decoration: underline;*/
}

.navbar .navbar-brand .logo {
    height: 70px;
}

.navbar.navbar-dark .navbar-nav .nav-link {
    color: #fff;
}

.navbar.fixed {
    position: fixed;
    padding: 10px 0;
    left: 0;
    top: -100px;
    transform: translateY(100px);
    width: 100%;
    background-color: #fff;
    box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.0666666667);
    transition: transform 1s ease;
}

.navbar.fixed .navbar-brand .logo {
    height: 60px;
}

.navbar.fixed .navbar-nav .nav-link {
    color: #000;
}

/* --------------- header --------------- */
header {
    position: relative;
    height: 700px;
    display: flex;
    align-items: center;
    z-index: 1;
    overflow: hidden;
    color: #fff;
    padding-top: 130px;
}

header::after {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #000;
    z-index: 1;
    opacity: 0.4;
    pointer-events: none;
}

header .content {
    position: relative;
    z-index: 20;
}

header .content h1 {
    font-size: 70px;
    font-weight: bold;
    color: #fff;
    line-height: 1.2;
}

header .content .text {
    font-size: 17px;
    color: #fff;
    line-height: 2;
}

header .content .play-btn {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    border: 1px solid #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 25px;
    margin: 0 auto;
}

header .content .play-btn:hover {
    background-color: var(--mainColor);
    border-color: var(--mainColor);
    color: #fff;
    box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.0666666667);
    transform: translateY(-3px);
}

header .content .btns {
    display: flex;
    align-items: center;
    margin-top: 70px;
}

header .content .cont-link {
    margin-inline-start: 30px;
}

header .content .cont-link h5 {
    margin-top: 5px;
    font-weight: bold;
}

header .bg-slider {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    max-height: 100vh;
}

header .bg-slider .bg-slider {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

header .vid-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

/* --------------- about --------------- */
.about {
    position: relative;
}

.about .info {
    position: relative;
}

.about .info .title {
    position: relative;
}

.about .info .title h2 {
    font-size: 90px;
    font-weight: bold;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    margin-bottom: 30px;
}

.about .info .title h2 .txt {
    font-size: 14px;
    max-width: 330px;
    font-weight: 400;
    margin-inline-end: 30px;
}

.about .info .title h2 .arrow {
    font-size: 70px;
    color: var(--mainColor);
    margin-inline-start: 50px;
}

.about .info .title h2 a {
    transition: all 0.3s ease;
}

.about .info .title h2 a:hover {
    color: var(--mainColor);
}

.about .info .more-lnk {
    position: relative;
    font-size: 30px;
    margin-top: 40px;
    text-transform: uppercase;
}

.about .info .more-lnk:hover {
    color: var(--mainColor);
}

.about .info .rotate-box {
    position: absolute;
    right: 0;
    bottom: -200px;
    width: 300px;
    height: 300px;
    display: block;
    z-index: 20;
}

.about .info .rotate-box .num {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    font-size: 70px;
    font-weight: 600;
}

.about .info .rotate-box .rotate-text {
    animation: rotateText 20s linear infinite;
    font-weight: 400;
    text-transform: uppercase;
    position: absolute;
    left: 0;
    border-radius: 50%;
    font-size: 30px;
    font-weight: 600;
    direction: ltr;
}

.about .info .rotate-box .rotate-circle svg {
    width: 300px;
    height: 300px;
    fill: #000;
    transform: scale(1);
}

@keyframes rotateText {
    0% {
        transform: rotate(360deg);
    }
    100% {
        transform: rotate(0deg);
    }
}

.about .img {
    position: relative;
    height: 400px;
    margin-top: 50px;
    z-index: 1;
}

.about .pat1 {
    position: absolute;
    top: 3vw;
    right: 5vw;
    height: 60%;
    opacity: 0.3;
    pointer-events: none;
}

/* --------------- section-title --------------- */
.section-title {
    position: relative;
    margin-bottom: 30px;
    text-align: center;
}

.section-title h2 {
    position: relative;
    font-size: 60px;
    text-transform: capitalize;
    padding: 0 60px;
    display: inline-block;
}

.section-title h2::before {
    position: absolute;
    content: "";
    left: 0;
    top: 45px;
    width: 30px;
    height: 8px;
    background-color: var(--mainColor);
}

.section-title h2::after {
    position: absolute;
    content: "";
    right: 0;
    top: 45px;
    width: 30px;
    height: 8px;
    background-color: var(--mainColor);
}

/* --------------- vision --------------- */
.vision {
    position: relative;
    padding-bottom: 100px;
}

.vision .title {
    position: relative;
}

.vision .title h3 {
    font-size: 35px;
    margin-bottom: 20px;
}

.vision .title .text {
    text-transform: uppercase;
}

.vision .cards .vision-card {
    position: relative;
    display: block;
    padding: 40px;
    background-color: #ebf5f0;
    margin-bottom: 24px;
    height: calc(100% - 24px);
}

.vision .cards .vision-card .icon {
    height: 60px;
    margin-bottom: 20px;
    -o-object-fit: contain;
    object-fit: contain;
}

.vision .cards .vision-card h6 {
    font-size: 30px;
    text-transform: capitalize;
    margin-bottom: 15px;
}

.vision .cards .vision-card .text {
    font-size: 18px;
}

.vision .cards .vision-card .more {
    margin-top: 20px;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: var(--mainColor);
}

/* --------------- projects --------------- */
.projects {
    position: relative;
    overflow: hidden;
}

.projects .swiper-button-next,
.projects .swiper-button-prev {
    width: 50px;
    height: 50px;
    border: 1px solid #fff;
}

.projects .swiper-button-next::after,
.projects .swiper-button-prev::after {
    font-size: 16px;
    color: #fff;
}

.projects .swiper-button-next:hover,
.projects .swiper-button-prev:hover {
    background-color: #fff;
}

.projects .swiper-button-next:hover::after,
.projects .swiper-button-prev:hover::after {
    color: #000;
}

.projects .swiper-button-next {
    right: 4vw;
}

.projects .swiper-button-prev {
    left: 4vw;
}

.projects .project-card {
    display: block;
    position: relative;
    height: 650px;
    display: flex;
    align-items: flex-end;
    border-inline-end: 1px solid rgba(255, 255, 255, 0.6);
}

.projects .project-card:hover .info {
    background-image: linear-gradient(to top, transparent, transparent);
    background-color: #fff;
    color: #000;
    box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.0666666667);
}

.projects .project-card .info {
    padding: 40px;
    width: 100%;
    color: #fff;
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.9058823529), transparent);
    text-align: center;
    border-top: 1px solid rgba(255, 255, 255, 0.6);
    transition: all 0.3s ease;
}

.projects .project-card .info h6 {
    font-size: 14px;
    text-transform: uppercase;
}

.projects .project-card .info h3 {
    font-size: 23px;
    text-transform: uppercase;
    min-height: 74px;
}

.projects .projects-content {
    position: relative;
    overflow: hidden;
}

.projects .projects-content .glry-img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.projects .projects-content .glry-img .tab-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transform: scale(1.1, 1.1);
    opacity: 0;
    transition: all 0.7s;
}

.projects .projects-content .glry-img .tab-img.current {
    transform: scale(1);
    opacity: 1;
}

.projects .swiper-button-next.swiper-button-disabled, .projects .swiper-button-prev.swiper-button-disabled {
    pointer-events: all;
}

.projects .line-btn {
    margin-top: 80px;
}

.swiper-notification {
    display: none;
}

/* --------------- services --------------- */
.services {
    position: relative;
    padding: 100px 0;
    background-color: #f7f7f7;
    z-index: 20;
}

.services .service-card {
    position: relative;
    background-color: #fff;
    overflow: hidden;
    margin-top: 5px;
    display: block;
}

.services .service-card .img {
    position: relative;
    height: 330px;
    margin: 5px 5px 0;
    border-radius: 5px;
    overflow: hidden;
}

.services .service-card .img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    transition: all 1s ease;
}

.services .service-card .info {
    position: relative;
    padding: 30px 15px;
    text-align: center;
}

.services .service-card .info h5 {
    font-weight: bold;
    font-size: 18px;
    transition: all 0.3s ease;
}

.services .service-card:hover .img img {
    transform: scale(1.1) rotate(2deg);
}

.services .service-card:hover .info h5 {
    color: var(--mainColor);
}

/* --------------- why_us --------------- */
.why_us {
    position: relative;
    padding-top: 100px;
}

.why_us .title {
    position: relative;
    padding-bottom: 30px;
    height: calc(100% - 24px);
    padding-inline-end: 6vw;
}

.why_us .title::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 1px;
    background-color: #000;
    left: 0;
    bottom: 0;
}

.why_us .title h3 {
    font-size: 35px;
    margin-bottom: 20px;
}

.why_us .title .text {
    text-transform: uppercase;
}

.why_us .let_btn {
    position: relative;
    padding: 40px;
    border: 1px solid rgba(153, 153, 153, 0.2666666667);
    height: 230px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    text-transform: uppercase;
    font-size: 16px;
    line-height: 2;
}

.why_us .let_btn:hover {
    background-color: var(--mainColor);
    color: #fff;
}

.why_us .content {
    position: relative;
    padding: 100px 0;
    border-top: 1px solid rgba(153, 153, 153, 0.3333333333);
}

.why_us .content .dots {
    position: absolute;
    content: "";
    right: 100px;
    bottom: 200px;
    width: 200px;
    height: 200px;
}

.why_us .why_card {
    position: relative;
    margin-bottom: 24px;
    padding: 30px;
    border: 1px solid rgba(153, 153, 153, 0.2666666667);
    height: calc(100% - 24px);
}

.why_us .why_card .img {
    position: relative;
    height: 230px;
}

.why_us .why_card .info .icon {
    height: 50px;
    margin-bottom: 15px;
}

.why_us .why_card .info h5 {
    font-size: 22px;
    margin-bottom: 10px;
}

.why_us .why_card .info .text {
    font-size: 13px;
    line-height: 2;
    text-transform: capitalize;
}

/* --------------- subscribe --------------- */
.subscribe {
    position: relative;
}

.subscribe .float_img {
    position: absolute;
    right: 0;
    top: 0;
    width: 28vw;
    height: 600px;
    transform: translateY(-300px);
    opacity: 0.2;
    -o-object-fit: cover;
    object-fit: cover;
    max-height: unset;
    pointer-events: none;
}

.subscribe .subs_card {
    position: relative;
    padding: 5vw;
    background-image: url(../images/subs.jpg);
    background-size: cover;
    z-index: 20;
}

.subscribe .subs_card::after {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: 0.5;
}

.subscribe .subs_card .cont {
    position: relative;
    z-index: 10;
}

.subscribe .subs_card h2 {
    font-size: 80px;
    margin-bottom: 30px;
    font-weight: bold;
    line-height: 1;
    color: #fff;
}

.subscribe .subs_card .form-group {
    display: flex;
}

.subscribe .subs_card .form-group .form-control {
    border-radius: 10px;
    font-size: 16px;
    border: 1px solid rgba(153, 153, 153, 0.2666666667);
    /*text-transform: uppercase;*/
    padding: 15px 20px;
}

.subscribe .subs_card .form-group .butn {
    margin-inline-start: 30px;
    flex-shrink: 0;
}

.swiper-button-next:after, .swiper-button-prev:after {
    color: #000;
    font-size: 25px;
}

/* --------------- testimonials --------------- */
.testimonials {
    position: relative;
    padding-top: 120px;
    text-align: center;
}

.testimonials .content {
    position: relative;
}

.testimonials .testi_slider {
    position: relative;
    overflow: hidden;
}

.testimonials .main_text {
    font-size: 30px;
    margin-top: 50px;
    text-transform: capitalize;
    line-height: 1.7;
}

.testimonials .user_info {
    margin-top: 30px;
}

.testimonials .user_info h5 {
    text-transform: uppercase;
    margin-bottom: 10px;
}

/* --------------- partners --------------- */
.partners {
    position: relative;
    padding: 80px 0;
    z-index: 20;
    overflow: hidden;
}

.partners .partners-slider {
    position: relative;
}

.partners .partners-slider .swiper-wrapper {
    transition-timing-function: linear !important;
    position: relative;
    pointer-events: none;
}

.partners .partner {
    position: relative;
    height: 140px;
    background-color: #ebf5f0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    outline: 3px solid #fff;
    outline-offset: -6px;
    margin-top: 20px;
}

.partners .partner img {
    max-width: 70%;
    height: 80px;
    -o-object-fit: contain;
    object-fit: contain;
}

/* --------------- footer --------------- */
.footer {
    position: relative;
    padding-top: 50px;
    background-color: #151515;
    color: #fff;
}

.footer .logo {
    height: 50px;
    margin-bottom: 30px;
}

.footer .foot-social a {
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    border-radius: 50%;
    margin-inline-end: 10px;
    border: 1px solid #ccc;
    font-size: 14px;
}

.footer .foot-social a:hover {
    background-color: var(--color-orange1);
    border-color: var(--color-orange1);
    color: #151515;
    background-color: #fff;
}

.footer .footer-links a {
    display: inline-flex;
    font-size: 18px;
    color: #d7d7d7;
    text-transform: capitalize;
    margin: 8px 0;
}

.footer .footer-links a i {
    margin-top: 4px;
    margin-inline-end: 20px;
    flex-shrink: 0;
}

.footer .footer-links a:hover {
    color: var(--mainColor);
}

.footer .foot {
    padding: 30px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
    margin-top: 50px;
}

.footer .foot .foot-links a {
    font-size: 16px;
    margin-inline-end: 3vw;
}

.footer .foot .foot-links a:last-of-type {
    margin: 0;
}

.footer .foot .foot-links a:hover {
    color: var(--mainColor);
}

/* --------------- pages style --------------- */
.inner-header {
    position: relative;
    overflow: hidden;
    background-color: #f9f9f9;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 40px 0;
}

.inner-header::before {
    position: absolute;
    content: "";
    right: 0;
    top: 0;
    width: 10vw;
    height: 10vw;
    background-color: var(--mainColor);
    pointer-events: none;
    filter: blur(100px);
}

.inner-header::after {
    position: absolute;
    content: "";
    left: 30%;
    bottom: 0;
    width: 10vw;
    height: 10vw;
    background-color: var(--mainColor);
    pointer-events: none;
    filter: blur(150px);
}

.inner-header .info {
    position: relative;
}

.inner-header .info .links a {
    position: relative;
    margin-inline-start: 35px;
    text-transform: capitalize;
    letter-spacing: 2px;
    color: #000;
}

.inner-header .info .links a::before {
    position: absolute;
    content: "/";
    left: -20px;
    bottom: 0;
    font-size: 13px;
    color: var(--mainColor);
}

.inner-header .info .links a:first-of-type {
    margin-inline-start: 0;
}

.inner-header .info .links a:first-of-type::before {
    display: none;
}

.inner-header .info h1 {
    font-size: 35px;
    margin-top: 30px;
    text-transform: capitalize;
    letter-spacing: 2px;
}

.grad-bg1 {
    background-image: linear-gradient(to right, rgba(239, 60, 50, 0.1254901961), transparent);
}

.grad-bg2 {
    background-image: linear-gradient(to left, rgba(239, 60, 50, 0.1254901961), transparent);
}

/* --------------- contact-pg --------------- */
.contact-pg {
    position: relative;
    padding: 120px 0;
    z-index: 20;
}

.contact-pg .lg-title {
    position: relative;
    height: 100%;
}

.contact-pg .lg-title .txt {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) rotate(90deg);
    white-space: nowrap;
    color: #f0f0f0;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 200px;
    background: -webkit-linear-gradient(-90deg, transparent, #f0f0f0);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.contact-pg .contact-info {
    margin-bottom: 50px;
    padding: 0 25px;
}

.contact-pg .contact-info .info-items .item {
    position: relative;
    display: flex;
    margin-bottom: 24px;
    padding: 40px 30px;
    border: 1px solid rgba(153, 153, 153, 0.3333333333);
    border-radius: 20px;
}

.contact-pg .contact-info .info-items .item .icon {
    position: relative;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(120deg, var(--mainColor) 0%, #fff 100%);
    padding: 15px;
    margin-inline-end: 20px;
    flex-shrink: 0;
    margin-top: 5px;
    font-size: 25px;
    color: #000;
}

.contact-pg .contact-info .info-items .item .icon::before {
    position: absolute;
    content: "";
    right: 5px;
    bottom: 5px;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 1px dashed var(--mainColor);
}

.contact-pg .contact-info .info-items .item h4 {
    text-transform: capitalize;
    margin-top: 10px;
    font-size: 18px;
}

.contact-pg .contact-info .info-items .item .text {
    font-size: 14px;
    color: var(--mainColor);
    text-transform: uppercase;
}

.contact-pg .contact-info .info-items .item .butn {
    position: relative;
    margin-top: 20px;
    display: flex;
    padding: 0;
    width: -moz-max-content;
    width: max-content;
}

.contact-pg .contact-info .info-items .item .more {
    color: var(--mainColor);
    text-transform: uppercase;
    margin-top: 25px;
    letter-spacing: 3px;
}

.contact-pg .contact-info .info-items .item:hover {
    border-color: var(--mainColor);
    background-color: rgba(239, 60, 50, 0.0274509804);
}

.contact-pg .contact-info .info-items .item:hover .butn {
    background-color: var(--mainColor);
    border-color: var(--mainColor);
}

.contact-pg .contact-info .map {
    height: 515px;
    max-height: 100vw;
    border-radius: 20px;
    overflow: hidden;
}

.contact-pg .contact-info .map iframe {
    margin-bottom: -6px;
}

.contact-pg .contact-box {
    position: relative;
    padding: 0 25px;
}

.contact-pg .contact-box::before {
    position: absolute;
    content: "";
    left: 0;
    top: 50px;
    width: 20px;
    height: 50%;
    background-color: #f0f0f0;
    background-size: cover;
    border-radius: 30px;
}

.contact-pg .contact-box::after {
    position: absolute;
    content: "";
    right: 0;
    bottom: 50px;
    width: 20px;
    height: 50%;
    background-color: #f0f0f0;
    background-size: cover;
    border-radius: 30px;
}

.contact-pg .contact-form {
    position: relative;
    padding: 4vw;
    background-color: #f0f0f0;
    background-size: cover;
    border-radius: 30px;
}

.contact-pg .contact-form .form-group {
    position: relative;
    margin-top: 30px;
}

.contact-pg .contact-form .form-control {
    background-color: transparent;
    border-radius: 30px;
    min-height: 55px;
    padding: 15px 30px;
    font-size: 14px;
    box-shadow: none;
}

.contact-pg .contact-form .form-control::-moz-placeholder {
    opacity: 0.5;
}

.contact-pg .contact-form .form-control::placeholder {
    opacity: 0.5;
}

.up_group {
    position: relative;
}

.up_group .input-group-append {
    position: absolute;
    left: 6px;
    bottom: 5px;
    width: 150px;
    font-size: 15px;
    min-height: calc(100% - 10px);
    text-align: center;
    display: inline-block;
    background-color: var(--mainColor);
    border-radius: 30px !important;
    overflow: hidden;
    color: #fff;
    pointer-events: none;
    padding: 10px;
}

.up_group .file {
    position: absolute;
    opacity: 0;
    left: 2px;
    bottom: 2px;
    width: 150px;
    min-height: 50px;
    z-index: 20;
    cursor: pointer;
}

.up_group .input_ques {
    padding-left: 180px !important;
    border-radius: 30px !important;
}

.up_group .input_ques::-moz-placeholder {
    color: rgba(153, 153, 153, 0.6);
}

.up_group .input_ques::placeholder {
    color: rgba(153, 153, 153, 0.6);
}

/* --------------- choose --------------- */
.choose {
    position: relative;
}

.choose .item {
    position: relative;
    padding: 30px;
    background-color: #fff;
    display: flex;
    margin-bottom: 15px;
}

.choose .item .icon {
    height: 40px;
    margin-inline-end: 30px;
    flex-shrink: 0;
    margin-top: 8px;
}

.choose .item .text {
    position: relative;
    font-size: 16px;
}

.choose .item strong {
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 500;
}

/* --------------- services-pg --------------- */
.service-pg {
    position: relative;
    padding-bottom: 100px;
}

.service-pg .header-img {
    position: relative;
    overflow: hidden;
    margin: 30px;
}

.service-pg .header-img .img {
    position: relative;
    height: 500px;
    border-radius: 20px;
    overflow: hidden;
}

.service-pg .header-img .float-title {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
}

.service-pg .header-img .float-title .content {
    position: relative;
    padding: 40px 30px 20px;
    background-color: #fff;
    text-align: center;
    border-radius: 30px 30px 0 0;
    filter: drop-shadow(5px 5px 20px rgba(0, 0, 0, 0.2));
}

.service-pg .header-img .float-title .content::before {
    position: absolute;
    content: "";
    left: -40px;
    bottom: 0;
    width: 40px;
    height: 40px;
    border-bottom-right-radius: 40px;
    box-shadow: 10px 10px 0 10px #fff;
}

.service-pg .header-img .float-title .content::after {
    position: absolute;
    content: "";
    right: -40px;
    bottom: 0;
    width: 40px;
    height: 40px;
    border-bottom-left-radius: 40px;
    box-shadow: -10px 10px 0 10px #fff;
}

.service-pg .check-cards {
    position: relative;
}

.service-pg .check-cards .item {
    position: relative;
    display: flex;
    font-size: 16px;
    margin-top: 15px;
}

/*.service-pg .check-cards .item i, */
.service-pg .service-content .item i.fa-check,
.service-pg .service-content i.fa-check {
    position: relative;
    font-size: 16px;
    color: var(--mainColor);
    margin-inline-end: 10px;
    top: 5px;
    flex-shrink: 0;
}

.service-pg li {
    margin: 10px 0;
    font-size: 16px;
}

/* --------------- section --------------- */
/* ======== */
@media screen and (max-width: 991px) {
    .navbar,
    .navbar.fixed {
        position: relative;
        background-color: #151515;
        padding: 15px 0;
    }

    .navbar .navbar-brand,
    .navbar.fixed .navbar-brand {
        width: calc(100% - 85px);
    }

    .navbar .navbar-nav,
    .navbar.fixed .navbar-nav {
        margin-top: 15px;
    }

    .navbar .navbar-nav .nav-item .nav-link,
    .navbar.fixed .navbar-nav .nav-item .nav-link {
        color: #fff;
        margin-inline-start: 0;
    }

    .navbar .navbar-toggler-icon,
    .navbar.fixed .navbar-toggler-icon {
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
    }

    .navbar .navbar-toggler,
    .navbar.fixed .navbar-toggler {
        color: rgba(255, 255, 255, 0.55);
        border-color: rgba(255, 255, 255, 0.1);
    }

    .projects .project-card {
        height: 400px;
    }

    header .content h1 {
        font-size: 40px;
    }

    header .content .btns {
        display: block;
    }

    header .content .cont-link {
        margin-inline-start: 0;
        margin-top: 30px;
    }

    header .content .play-btn {
        margin: 30px 0;
    }

    .about .info .title {
        margin-bottom: 150px;
    }

    .about .info .title h2 {
        font-size: 30px;
    }

    .about .info .title h2 .arrow {
        font-size: 20px;
    }

    .about .info .title h2 .txt {
        display: none;
    }

    .about .info .rotate-box {
        bottom: -300px;
    }

    .services .title {
        margin-bottom: 50px;
    }

    .why_us .title .text {
        margin-bottom: 20px;
    }

    .subscribe .float_img,
    .why_us .content .dots {
        display: none;
    }

    .subscribe .subs_card h2 {
        font-size: 35px;
    }

    .subscribe .subs_card .form-group {
        display: block;
    }

    .subscribe .subs_card .form-group .butn {
        margin-inline-start: 0;
        margin-top: 30px;
    }

    .testimonials .main_text {
        font-size: 16px;
    }

    .testimonials .swiper-button-prev,
    .testimonials .swiper-button-next {
        display: none;
    }

    .section-title h2 {
        font-size: 30px;
    }

    .section-title h2::after, .section-title h2::before {
        top: 18px;
    }

    .inner-header .info .links a {
        margin-top: 10px;
        letter-spacing: 0;
    }

    .service-pg .header-img .float-title .content {
        padding: 20px 15px;
        margin-bottom: -1px;
    }
    
    .about {
        overflow: hidden;
    }
    
}

/* ======= */
html[dir=ltr] {
    @import url("https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600;700;800;900&display=swap");
}

html[dir=ltr] body {
    direction: ltr;
    font-family: "Poppins", sans-serif;
}

/*# sourceMappingURL=style.css.map */

.terms-pg {
    position: relative;
    padding: 100px 0 50px;
}

.terms-pg .main-text,
.terms-pg .main-text * {
    position: relative;
    font-size: 18px;
    margin-bottom: 15px;
}

.terms-pg .text,
.terms-pg li {
    position: relative;
    font-size: 16px;
    margin-bottom: 15px;
    color: #777;
}

.terms-pg .container .item:last-of-type {
    border: 0 !important;
    padding-bottom: 0 !important;
}

.about-us-page ul {
    list-style-type: inherit !important;
}
