@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital@0;1&display=swap');

/***** General CSS *****/

body {
    word-break: break-word;
    font: 15px/25px 'Poppins', sans-serif;
    color: #393939;
    overflow-x: hidden;
}

a {
    text-decoration: none;
    color: #8c7afc;
    white-space: initial;
    display: inline-block;
}

a:hover,
a:focus {
    text-decoration: none;
    color: #393939;
}

a:hover {
    transition: all 0.5s ease-in-out;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
}

input[type="text"]:focus,
textarea:focus,
input[type="password"]:focus,
select:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus {
    transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    outline: none;
}

select,
input[type="text"],
input[type="password"],
input[type="email"],
input[type="url"],
input[type="number"],
textarea,
input[type="tel"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}


/* Chrome, Safari, Edge, Opera */

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

select {
    /* background: #fff url('../images/arrow.png') no-repeat right; */
    padding: 0 40px 0 30px;
}

::-webkit-input-placeholder {
    color: #000;
}

::-moz-placeholder {
    color: #000;
    opacity: 1;
}

:-ms-input-placeholder {
    color: #000;
}

:-moz-placeholder {
    color: #000;
    opacity: 1;
}

ul {
    margin: 0 0 0px;
    padding: 0;
    list-style-type: none;
}

img {
    max-width: 100%
}


/***** Font Files *****/

@font-face {
    font-family: 'dream orphans';
    src: url(../fonts/Dream\ Orphans.otf);
    font-weight: 400;
    font-style: normal
}


/***** Custom Classes *****/

.noPadding {
    padding: 0;
}

.noLeft {
    padding-left: 0;
}

.noRight {
    padding-right: 0;
}

.mt-5 {
    margin-top: 50px;
}

.mb-5 {
    margin-bottom: 50px;
}

.mt-8 {
    margin-top: 80px;
}

.mt-4 {
    margin-top: 40px;
}

.mt-3 {
    margin-top: 30px;
}

.mt-2 {
    margin-top: 20px;
}

.pt-5 {
    padding-top: 50px;
}

.pb-1 {
    padding-bottom: 10px;
}

.pb-2 {
    padding-bottom: 20px;
}

.pb-3 {
    padding-bottom: 30px;
}

.pb-4 {
    padding-bottom: 40px;
}

.pb-8 {
    padding-bottom: 80px;
}

.m-0 {
    margin: 0 !important;
}

.p-0 {
    padding: 0 !important;
}

.pt-8 {
    padding-top: 80px;
}

.pt-4 {
    padding-top: 40px;
}

.pt-3 {
    padding-top: 30px;
}

.pt-2 {
    padding-top: 20px;
}

.all-section {
    padding: 100px 0;
}

.centerCol {
    float: none;
    margin: 0 auto;
}

.d-flex {
    display: flex;
    align-items: center;
}

.over-flow-h {
    overflow: hidden;
}

.flexRow {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
}

.flexCol {
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    align-items: center;
}

h1 {
    font-family: 'dream orphans';
    font-size: 80px;
    color: #000;
    font-weight: 500;
    margin: 0 0 20px;
}

h2 {
    font-family: 'dream orphans';
    font-size: 45px;
    color: #000;
    font-weight: 500;
    margin: 0 0 0px;
}

h3 {
    font-family: 'dream orphans';
    font-size: 35px;
    color: #000000;
    font-weight: 500;
    margin: 0 0 0px;
}

h4 {
    font-family: 'dream orphans';
    font-size: 24px;
    color: #000;
    font-weight: 500;
    margin: 0 0 0px;
}

h5 {
    font-family: 'dream orphans';
    font-size: 16px;
    color: #000;
    font-weight: 500;
    margin: 0 0 0px;
}

h6 {
    font-family: 'dream orphans';
    font-size: 14px;
    color: #000;
    font-weight: 500;
    margin: 0 0 0px;
}

p {
    color: #848484;
    font-size: 14px;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    letter-spacing: 0px;
    margin: 0px;
}


/*header css start */

.menuSec {
    padding: 0px 0;
}

.menuSec img {
    margin: 0;
}

.menuSec ul {
    position: relative;
    list-style: none;
    padding: 0;
    margin: 0;
    text-align: center;
    text-transform: capitalize;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.menuSec ul li {
    position: relative;
    display: inline-block;
    margin: 0;
    padding: 0;
}

.menuSec li ul {
    display: none;
}

.menuSec ul li a {
    position: relative;
    display: inline-block;
    text-decoration: none;
    color: #ffffff;
    padding: 5px 15px;
    font-size: 12px;
    border-radius: 50px;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    text-transform: uppercase;
}

.menusec-login-button {
    text-align: center;
}

.menusec-login-button a {
    background: #000080;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    font-size: 18px;
    color: #fff;
    margin: 0 auto;
}

.header_btn a {
    gap: 10px;
    padding: 15px 20px 15px 20px;
    font-size: 13px;
}

.header_btn a.active {
    background-color: #fff;
    color: #000;
}

.header_btn a span {
    width: 40px;
    height: 25px;
}

.menuSec ul li a:hover,
.menuSec ul li a.active {
    transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    color: #000000;
    background-color: #fff;
}

.menuSec li:hover>ul {
    display: block;
    position: absolute;
    z-index: 1000;
    background-color: #000000;
    left: 0px;
    width: 230px;
    text-align: left;
    top: 38px;
}

.menuSec li>ul>li>a {
    border: none;
    padding: 13px 20px !important;
    color: #fff !important;
    overflow: hidden;
    font-size: 13px;
    line-height: 20px;
}

.menuSec li>ul>li,
.menuSec li>ul>li>a {
    display: block;
    margin: 0;
}

.menuSec li>ul>li>a:before,
.menuSec li>ul>li>a:after {
    display: none;
}

.menuSec li:hover li {
    float: none;
}

.menuSec li ul li a:hover {
    background-color: #ffffff;
    color: #000000 !important;
}

.menuSec ul ul ul {
    left: 100%;
    top: 0;
}

.menuSec ul:before,
.menuSec ul:after {
    content: " ";
    display: table;
    display: none;
}

.menuSec ul:after {
    clear: both;
}

.menuSec li>ul>li:hover>ul {
    left: 230px;
    top: 0px;
    width: 270px;
}


/*header css start */


/*banner css start */

.banner_text p {
    width: 80%;
}

.carousel-inner>.item>a>img,
.carousel-inner>.item>img {
    width: 100%;
}

.carousel-control.right,
.carousel-control.left {
    background: none;
    opacity: 1;
    width: 50px;
    height: 50px;
    top: initial;
    top: 40%;
    background: rgba(255, 255, 255, 0.1);
    text-shadow: none;
}

.carousel-control.right:hover,
.carousel-control.left:hover {
    background: rgba(255, 27, 27, 0.6);
    color: #fff;
}

.carousel-control.right .fa,
.carousel-control.left .fa {
    position: relative;
    top: 12px;
    font-size: 20px;
    color: #fff;
    opacity: 0.5;
}

.carousel-control.right {
    right: 0px;
}

.carousel-control.left {
    left: 0px;
}

.carousel-indicators [data-bs-target] {
    box-sizing: content-box;
    flex: 0 1 auto;
    width: 10px;
    height: 12px;
    padding: 0;
    margin: 3px !important;
    text-indent: -999px;
    cursor: pointer;
    background-color: #fff;
    background-clip: padding-box;
    border: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    opacity: 1;
    /* transition: opacity 0.6s ease; */
    border-radius: 20px;
}

.carousel-caption {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    left: 0;
    right: 0;
    margin: 0;
    padding: 0;
    color: #fff;
    text-align: left;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    background: unset;
}

.carousel-indicators li {
    border: none;
    border-radius: 100%;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    background: #fff;
    width: 12px;
    height: 12px;
    margin: 0;
}

.carousel-indicators .active {
    margin: 0;
    background-color: #28b16d;
    width: 10px;
    height: 12px;
}


/*banner css end*/


/*Media Query Start*/

@media only screen and (min-width: 1366px) and (max-width: 1920px) {}

@media only screen and (min-width: 1291) and (max-width: 1365px) {}

@media only screen and (min-width: 992px) and (max-width: 1290px) {}

@media only screen and (min-width: 768px) and (max-width: 991px) {}

@media only screen and (min-width: 520px) and (max-width: 767px) {}

@media only screen and (min-width: 300px) and (max-width: 519px) {}


/*Media Query End*/

.menuSection .container-fluid {
    padding: 10px 6%;
}

.menuSec {
    padding: 5px 5px;
    background-color: #000080;
    border-radius: 30px;
}

.themebtn {
    font-family: "Montserrat", sans-serif;
    display: inline-flex;
    align-items: center;
    gap: 40px;
    padding: 20px 20px 20px 30px;
    background-color: #000080;
    color: #ffffff;
    text-decoration: none;
    border-radius: 40px;
    text-transform: uppercase;
    font-weight: 600;
}

.themebtn span {
    width: 55px;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #ffffff;
    border-radius: 20px;
    padding: 0px 0;
}

.themebtn img {
    width: auto;
    height: auto;
    /* background-color: #ffffff; */
    border-radius: 20px;
    padding: 0px 0;
    /* object-fit: contain; */
    background-size: contain;
}

.header_btn {
    text-align: end;
}

header {
    position: absolute;
    width: 100%;
    z-index: 99;
}

section.main_slider {
    position: relative;
}


/* about  */

strong {
    color: #000;
}

.about_right h2 {
    font-size: 70px;
    margin-bottom: 30px;
}

.about_right h3 {
    font-size: 30px;
    color: #000080;
    margin-bottom: 30px;
}

.abt_lg {
    height: 637px;
    width: 600px;
}

.abt_lg img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    border-radius: 10px;
}

.abt_lg {
    position: relative;
}

.abt_lg::before {
    position: absolute;
    content: '';
    background: #000080;
    height: 657px;
    width: 620px;
    border-radius: 10px;
    z-index: -1;
    top: -20px;
}

.about_left {
    position: relative;
}

.abt_sm {
    position: absolute;
    height: 200px;
    width: 305px;
    z-index: 1;
    bottom: 5%;
    left: -5px;
}

.abt_sm img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    border: 8px solid #dcd7ef;
    border-radius: 20px;
}

.about_right p {
    margin-bottom: 37px;
}


/* services  */

.services_left img {
    width: 96%;
    height: 771px;
    object-fit: cover;
    border-radius: 0px 10px 10px 0px;
}

.services .container-fluid {
    padding: 0 5% 0 0;
}

.sc_txt ul li::marker {
    color: #fff;
    font-size: 20px;
}

.sc_txt h4 {
    font-size: 20px;
    margin-bottom: 20px;
    transition: color 0.3s ease;
    color: #fff;
}

.service_slider .slick-slide {
    margin: 0px 10px;
}

.service_card {
    background-color: #000080bf;
    border-radius: 10px;
    padding: 10px 10px 20px 10px;
    transition: background-color 0.3s ease;
}

.sc_txt p {
    margin-bottom: 27px;
    font-weight: 600;
    transition: color 0.3s ease;
    color: #fff;
}

.sc_txt ul li {
    color: #fff;
    font-family: 'Montserrat';
    font-size: 12px;
    font-weight: 600;
    transition: color 0.3s ease;
}

.service_card:hover {
    background-color: #000080;
}

.service_card .sc_txt h4,
.service_card .sc_txt p,
.service_card .sc_txt ul li {
    transition: color 0.3s ease;
}

.service_card:hover .sc_txt h4 {
    color: #fff;
}

.service_card:hover .sc_txt p {
    color: #d8cff5;
}

.service_card:hover .sc_txt ul li {
    color: #fff;
}

.sc_txt ul {
    list-style: disc;
    margin-left: 20px;
    margin-bottom: 20px;
}

.contact_box img {
    height: 30px;
    width: 35px;
    object-fit: contain;
}

.sc_img img {
    border-radius: 10px;
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.sc_img {
    height: 243px;
    margin-bottom: 25px;
}

.sc_btn .themebtn {
    font-size: 11px;
    padding: 12px 14px 12px 20px;
    gap: 20px;
    border: 1px solid #fff;
}

.sc_btn .themebtn img {
    width: 45px;
    height: 25px;
    background-color: #ffffff;
    border-radius: 20px;
    padding: 5px 14px;
    object-fit: contain;
}

.sc_txt {
    padding-left: 10px;
}

.row.border_btm {
    border-bottom: 2px solid #c9c7c9;
    margin-bottom: 30px;
}

.services_top {
    padding-left: 20px;
    margin-bottom: 20px;
}

.slick-active {
    opacity: 1;
}

.services_top h2 {
    font-size: 70px;
}

.services_top {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.serv_btns {
    display: flex;
    gap: 10px;
    margin-top: 20px;
}

.serv_btns_left,
.serv_btns_right {
    background-color: #fff;
    border: 1px solid #afadaf;
    border-radius: 100%;
    width: 55px;
    height: 55px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.serv_btns_left:hover,
.serv_btns_right:hover {
    background-color: #000080;
    border: 1px solid #000080;
    transform: scale(1.1);
}

.serv_btns_left:hover i,
.serv_btns_right:hover i {
    color: #fff;
}

.serv_btns i {
    font-size: 16px;
    color: #afadaf;
    transition: color 0.3s ease;
}


/* services  */


/* why choose us */

.whu_right_main {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 40px;
    margin: 50px 0;
    padding-left: 30px;
}

.whu_left h2 {
    font-size: 70px;
    margin-bottom: 25px;
}

.whu_left h3 {
    font-size: 30px;
    color: #000080;
    margin-bottom: 25px;
}

.whu_left p {
    margin-bottom: 18px;
    padding-right: 68px;
}

.whu_left {
    padding-top: 111px;
    padding-bottom: 65px;
}

.whu_left_img img {
    width: 98%;
    height: 420px;
    object-fit: cover;
    border-radius: 10px 0px 10px 10px;
    margin-left: 14px;
}

.whu_right_main_txt h3 {
    font-size: 30px;
    color: #000080;
    margin-bottom: 30px;
}

.verify {
    display: flex;
    align-items: center;
    gap: 20px;
}

.verify p {
    color: #000;
    font-weight: 600;
}

.whu_right_main_txt ul li {
    margin-bottom: 20px;
}


/* why choose us */


/* what our clients say */

.review_slider .slick-slide.slick-current.slick-active.slick-center {
    width: 600px !important;
    transition: none !important;
    opacity: 1;
}

.review_slider .slick-slide.prev {
    width: 320px !important;
    transition: none !important;
    opacity: 1;
}

.review_slider .slick-slide.next {
    width: 320px !IMPORTANT;
    transition: none !important;
    opacity: 1;
}

.review_slider .slick-slide {
    opacity: 0;
    transition: none !important;
}

.review_slider .slick-slide.slick-active .reviews_card {
    height: 249px;
}

.reviews_card p {
    max-height: 70px;
    overflow-y: scroll;
    padding-right: 10px;
    color: #fff;
}

.reviews_card p::-webkit-scrollbar {
    width: 6px;
}

.reviews_card p::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
    border: 1px solid #ff9702;
}

.reviews_card p::-webkit-scrollbar-thumb {
    background: #ff9702;
    border-radius: 10px;
}

.reviews_card p::-webkit-scrollbar-thumb:hover {
    background: #ff9702;
}

.reviews .container-fluid {
    padding: 0 6%;
}

.avatar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 20px;
}

.avatar_img {
    margin-top: -100px;
    border: 10px solid #e8e2f6;
    border-radius: 50%;
}

.avatar_txt h5 {
    font-size: 20px;
    color: #fff;
}

.stars {
    margin-top: 20px;
}


/* .avatar_txt p {}

 */

.stars i {
    color: #ff9702;
}

.reviews_heading h2 {
    font-size: 70px;
    margin-bottom: 15px;
}

.reviews_heading p {
    width: 50%;
    margin: 0 auto;
    font-weight: 600;
}

.reviews_heading {
    margin-bottom: 35px;
    text-align: center;
}

.avatar_txt p {
    overflow-y: visible;
}

.reviews_card {
    background-color: #000080;
    border-radius: 10px;
    padding: 30px;
    transition: all 0.4s ease-in;
    color: #000;
    margin: 50px 0;
}

.review_slider .slick-slide {
    margin: 0px 15px;
}

.reviews_card:hover {
    background-color: #000080;
    color: #fff;
}

.reviews_card:hover .avatar_txt h5,
.reviews_card:hover .avatar_txt p,
.reviews_card:hover p {
    color: #fff;
}

.reviews_card:hover .stars i {
    color: #fff;
}

.review_slider .slick-track {
    display: flex;
    align-items: stretch;
    justify-content: center;
}

.reviews_card:hover .avatar_img {
    border-color: #fff;
}

.review_slider .slick-dots li button:before {
    font-size: 10px;
    opacity: 1;
    color: #000080;
}

.review_slider .slick-dots li.slick-active button:before {
    opacity: 1;
    color: #ffffff;
    background-color: #000080;
    border-radius: 102%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.review_slider .slick-dots {
    position: absolute;
    bottom: -20px;
}


/* what our clients say */


/* contact section  */

.contact_left {
    height: 750px;
    width: 610px;
    position: relative;
}

.contact_left::before {
    position: absolute;
    content: '';
    background: #000080;
    height: 774px;
    width: 635px;
    border-radius: 10px;
    z-index: -1;
    top: -25px;
}

.contact_left img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    border-radius: 10px;
}

.contact_right form {
    margin-top: 30px;
}

.contact_right input[type="text"],
.contact_right input[type="email"],
.contact_right input[type="tel"],
.contact_right textarea,
.contact_right select {
    width: 100%;
    padding: 12px 15px;
    margin-bottom: 20px;
    border: 2px solid #cccbcd;
    border-radius: 6px;
    font-size: 16px;
    transition: border-color 0.3s;
    font-family: "Montserrat", sans-serif;
    height: 60px;
    color: #848484;
    font-weight: 600;
}

.contact_right input:focus,
.contact_right textarea:focus,
.contact_right select:focus {
    border-color: #7c5edc;
    outline: none;
}

.contact_right textarea {
    resize: none;
    min-height: 115px;
}

.custom-checkbox {
    display: flex;
    align-items: center;
    margin-top: 0px;
    cursor: pointer;
    user-select: none;
    color: #7c7c7c;
    font-weight: 600;
    font-family: "Montserrat", sans-serif;
}

section.contact {
    padding-top: 10px !important;
}

section.reviews {
    padding-top: 0 !important;
}

section.whu {
    padding-bottom: 50px;
}

.custom-checkbox input[type="checkbox"] {
    /* display: none; */
    width: 18px;
    height: 18px;
    border: 2px solid #ccc;
}

.custom-checkbox .checkmark {
    height: 20px;
    width: 20px;
    background-color: #eee;
    border-radius: 4px;
    margin-right: 10px;
    position: relative;
    border: 1px solid #ccc;
    transition: all 0.2s;
}

.custom-checkbox input[type="checkbox"]:checked+.checkmark {
    background-color: #dcd7ef;
    border-color: #dcd7ef;
}

.custom-checkbox .checkmark::after {
    content: "";
    position: absolute;
    display: none;
    left: 6px;
    top: 2px;
    width: 5px;
    height: 10px;
    border: solid rgb(0, 0, 0);
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.custom-checkbox input[type="checkbox"]:checked+.checkmark::after {
    display: block;
}

.contact_right h2 {
    font-size: 70px;
    margin-bottom: 15px;
}

.contact_right h3 {
    font-size: 30px;
    margin-bottom: 15px;
    color: #000080;
}

button.contactbtn {
    background: none;
    border: none;
    margin-top: 30px;
}

.contact_right input::placeholder {
    color: #7c7c7c;
}

.contact_right textarea::placeholder {
    color: #7c7c7c;
}

.contact_right {
    margin-left: 20px;
}


/* contact section  */


/* footer */

.footerSec .container-fluid {
    padding: 0 6%;
}

.footerSec {
    background-color: #000080;
    padding-top: 40px;
    padding-bottom: 55px;
}

.ftr_logo {
    text-align: center;
    border-bottom: 1px solid #9a84e5;
    padding-bottom: 30px;
}

.ftr_links h4 {
    color: #ffffff;
    font-size: 20px;
    margin-bottom: 30px;
    text-transform: uppercase;
}

.quick_links h4 {
    color: #ffffff;
    font-size: 20px;
    margin-bottom: 30px;
    text-transform: uppercase;
}

.service_links h4 {
    color: #ffffff;
    font-size: 20px;
    margin-bottom: 30px;
    text-transform: uppercase;
}

.newsletter h4 {
    color: #ffffff;
    font-size: 20px;
    margin-bottom: 30px;
    text-transform: uppercase;
}

.ftr_links p {
    margin-bottom: 25px;
    width: 80%;
    color: #efebfb;
    font-weight: 600;
}

.ftr_links,
.quick_links,
.service_links,
.newsletter {
    margin-top: 60px;
}

.quick_links ul {
    columns: 2;
}

.quick_links ul li {
    margin-bottom: 40px;
}

.quick_links ul li a {
    text-decoration: none;
    font-size: 14px;
    transition: color 0.3s;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    color: #efebfb;
}

.social_links {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 0px;
}

.social_links a {
    width: 40px;
    height: 40px;
    line-height: 35px;
    border: 1px solid #a594ec;
    /* color: #a594ec; */
    color: #fff;
    text-align: center;
    border-radius: 100%;
    margin-right: 8px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: 0.5s;
}

.service_links ul li {
    margin-bottom: 10px;
}

.service_links ul li a {
    color: #efebfb;
    text-decoration: none;
    font-size: 14px;
    transition: color 0.3s;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
}

.newsletter p {
    margin-bottom: 20px;
    width: 100%;
    font-size: 14px;
    transition: color 0.3s;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    color: #efebfb;
}

.newsletter form input {
    width: 100%;
    height: 50px;
    background-color: #fff;
    border: none;
    border-radius: 7px;
    padding: 0 20px;
    color: #ffff;
    text-transform: capitalize;
    font-family: "Montserrat", sans-serif;
}

.newsletter form input::placeholder {
    color: #d3caf6;
}

button.ftr_btn {
    background: none;
    border: none;
    margin-top: 25px;
}

a.themebtn.ftr1,
span.themebtn.ftr1 {
    color: black;
    background-color: white;
    padding: 15px 20px;
    border-radius: 36px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 20px;
}

a.themebtn.ftr1 .icon-circle,
span.themebtn.ftr1 .icon-circle {
    background-color: #000080;
    border-radius: 30px;
    width: 50px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
}

a.themebtn.ftr1 .icon-circle img,
span.themebtn.ftr1 .icon-circle img {
    filter: brightness(0) invert(1);
    width: 16px;
    height: auto;
    display: block;
    background-color: unset;
    padding: 0;
}

.ftr_btm .container-fluid {
    padding: 0 6%;
}

.ftr_btm1 p {
    text-align: start;
    color: #efebfb;
    font-weight: 600;
}

.ftr_btm2 {
    text-align: right;
}

.ftr_btm2 p {
    text-align: right;
    color: #efebfb;
    font-weight: 600;
}

.ftr_btm {
    padding: 30px 0;
    background-color: #000080;
    border-top: 1px solid #fff;
}


/* banner */

.banner_bg {
    height: 600px;
    width: 100%;
}

.banner_bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.main_slider .container-fluid {
    padding: 0 6%;
}

.banner_img {
    position: relative;
    top: 38px;
    z-index: 1;
    height: 850px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.banner_img1 {
    /* position: absolute; */
    width: 66%;
    margin: 0 auto 0px;
    position: relative;
}

.banner_img1 img {
    object-position: center bottom;
    position: relative;
    height: 780px;
    object-fit: contain;
}

.banner-slider {
    z-index: 1;
}

.banner_img1::before {
    content: '';
    position: absolute;
    width: 150%;
    background: #8580fc;
    height: 47%;
    bottom: 0;
    transform: translateX(-50%);
    left: 50%;
    border-radius: 10px;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#7e63de+0,8681f9+100 */
    background: linear-gradient(199deg, rgba(126, 99, 222, 1) 0%, rgba(134, 129, 249, 1) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#7e63de+0,8580fc+55,8580fc+100 */
    background: #000080;
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.banner_img2 {
    position: absolute;
    right: 2%;
    top: 28%;
}

.banner_img3 {
    position: absolute;
    bottom: 25%;
    width: 280px;
    height: 200px;
    left: -4%;
}

.banner_img3 img {
    object-fit: contain;
}

.social .container-fluid {
    padding: 20px 5%;
    background-color: #000080;
}

.social-main {
    text-align: center;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 2;
    position: relative;
}

.banner-number {
    z-index: 3;
    display: flex;
    position: relative;
    align-items: center;
    justify-content: flex-end;
}

.banner-number .slide_counter {
    gap: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.banner-number .slide_counter h2 {
    color: #fff;
    font-size: 14px;
    width: 50px;
    font-family: 'Montserrat';
}

.banner-number .slide_counter button {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    width: 40px;
    opacity: 0.5;
    border-radius: 50%;
    background: transparent;
    border: 1px solid #fff;
}

.banner-number .slide_counter button img {
    filter: brightness(0) saturate(100%) invert(92%) sepia(72%) saturate(2%) hue-rotate(241deg) brightness(115%) contrast(101%);
}

.banner-number .slide_counter button.banner-slider-btn-left img {
    transform: rotate(180deg);
}

.social-main::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 40%;
    transform: translate(-50%, -50%);
    background-color: #a5afc9;
    height: 1px;
    width: 45%;
    z-index: 1;
}

.social-main h5 {
    font-size: 20px;
    font-weight: 600;
    /* color: #9d99fd; */
    color: #fff;
    font-family: "Montserrat", sans-serif;
}

.social_icons {
    display: flex;
    justify-content: center;
    gap: 15px;
}

.social_icons a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    background-color: #000080;
    border-radius: 50%;
    color: #fff;
    /* color: #8580fc; */
    border: 1px solid #fff;
    font-size: 18px;
    transition: background-color 0.3s ease, transform 0.3s ease;
}

.social_icons a:hover {
    background-color: #fff;
    transform: translateY(-3px);
    color: #000080;
}

.search_form {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 20px 0;
    max-width: 700px;
    width: 100%;
}

.search_form select {
    padding: 15px 20px;
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 30px;
    width: 100%;
    height: 55px;
    outline: none;
    transition: border-color 0.3s;
    color: #060606;
    max-width: 70%;
    appearance: auto;
    text-transform: uppercase;
}

.search_form select:focus {
    border-color: #7f62e0;
}

.search_form button {
    padding: 15px 0;
    font-size: 14px;
    color: white;
    background-color: #000080;
    border: none;
    border-radius: 30px;
    cursor: pointer;
    transition: background-color 0.3s;
    width: 28%;
    text-transform: uppercase;
}

a.icon {
    height: 60px;
    width: 60px;
    background-color: #000080;
    border-radius: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
}

.contact_box p {
    color: #000;
    font-weight: 600;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.contact_box a {
    color: #000;
    font-weight: 600;
    margin: 0 auto 10px auto;
}

.contact_box {
    border-radius: 10px;
    background-color: #ffffffd4;
    position: absolute;
    padding: 15px 10px;
    text-align: center;
    right: 3%;
    bottom: 19%;
    width: 21%;
    height: 22%;
}

section.social {
    position: absolute;
    width: 100%;
    bottom: 0;
}

.social_links a:hover {
    background: #fff;
    transition: 0.5s;
    color: #06057e;
}


/* service detail page  */

.sd-page-content img {
    width: 100%;
    height: 600px;
    object-fit: cover;
    border-radius: 10px;
}

.sd_flex {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 10px;
}

section.sd-page ul {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 35px;
    flex-direction: column;
}

.sd-page-content p {
    margin-bottom: 35px;
}

.sd-page-content h2 {
    font-size: 75px;
    margin-top: 35px;
    margin-bottom: 35px;
}


/* service detail page  */

.inner_banner_img {
    position: absolute;
    bottom: -22%;
    right: -25%;
    width: 100%;
    height: 100%;
    z-index: 2;
    width: 65%;
    margin: 0 auto 0px;
}

.inner_banner_img img {
    object-position: center bottom;
    height: 650px;
    object-fit: contain;
    position: relative;
}

.inner_banner_img::before {
    content: '';
    position: absolute;
    width: 60%;
    background: #8580fc;
    height: 60%;
    bottom: 0;
    transform: translateX(-50%);
    left: 20%;
    border-radius: 10px;
    background: linear-gradient(199deg, rgba(126, 99, 222, 1) 0%, rgba(134, 129, 249, 1) 100%);
    background: #06057e;
}

.social .container-fluid.ins {
    padding: 40px 0;
}

.service_card.sci {
    margin-bottom: 40px;
}

section.contact.incs {
    padding-top: 90px !important;
}

.git_icon_main {
    display: flex;
    justify-content: flex-start;
    align-items: start;
    gap: 20px;
}

.getintouch_left ul {
    column-count: 2;
}

.git_icon i {
    font-size: 25px;
    color: #06057e;
}

.getintouch_left h2 {
    font-size: 70px;
    margin-bottom: 40px;
}

.getintouch_left p {
    font-size: 15px;
    width: 65%;
    color: #858485;
    margin-bottom: 30px;
}

.git_txt h6 {
    font-family: 'Montserrat';
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
}

.git_txt a {
    font-family: 'Montserrat';
    color: #afaeaf;
    font-size: 14px;
}

.git_txt p {
    font-size: 12px;
    color: #afaeaf;
    width: 100%;
}

ul.ul_btm {
    margin-top: 40px;
}

.getintouch_right {
    padding: 30px;
}

.getintouch_right input,
.getintouch_right textarea,
.getintouch_right select {
    width: 100%;
    padding: 12px 16px;
    border: 1px solid #cfcbcf;
    border-radius: 6px;
    font-size: 16px;
    background-color: transparent;
    transition: all 0.3s ease;
    margin-bottom: 20px;
}

.getintouch_right input:focus,
.getintouch_right textarea:focus,
.getintouch_right select:focus {
    border-color: #8d78e7;
    background-color: #fff;
    outline: none;
}

.getintouch_right textarea {
    resize: none;
    min-height: 187px;
}

.getintouch_right select {
    appearance: none;
    background: url('data:image/svg+xml;utf8,<svg fill="gray" height="18" viewBox="0 0 24 24" width="18" xmlns="http://www.w3.org/2000/svg"><path d="M7 10l5 5 5-5z"/></svg>') no-repeat right 12px center;
    background-size: 18px;
    padding-right: 40px;
}

.getintouch_right ::placeholder {
    color: #aaa;
}

.services_inner_h h2 {
    width: 70%;
    margin: 0 auto 50px;
    text-align: center;
}

.inr_tsti_h h2 {
    width: 70%;
    margin: 0 auto 20px;
    text-align: center;
}

p.exmar {
    margin-top: 35px;
}


/*Inner Login Signup Start*/

.login-txt form input {
    width: 100%;
    margin-bottom: 18px;
    outline: none;
    padding: 16px 40px 16px 27px;
    color: #000;
    font-weight: 400;
    border: 1px solid #8a73f4;
    font-size: 15px;
    border-radius: 50px;
    font-family: "Montserrat", sans-serif;
}

.login-txt.login-txt-ex.chg {
    background-color: #dcd7ef;
}

.login-txt form input::placeholder {
    color: #00000096;
}

.login-txt-ex form input:focus {
    background-color: #fff;
    color: #000 !important;
}

.login-txt form input:focus {
    box-shadow: none;
    border: 1px solid #0000002b;
}

.login-txt h2 {
    text-align: center;
    margin: 0 0 30px 0;
    text-transform: capitalize;
    color: #000;
    font-size: 44px;
}

.password-box {
    position: relative;
}

.password-box-input input {
    padding: 10px 40px 10px 20px;
}

.password-icon {
    position: absolute;
    top: 25%;
    right: 4%;
}

.password-icon span {
    color: #8d7afc;
    cursor: pointer;
}

.login-txt {
    padding: 45px 40px 35px;
    border-radius: 30px;
    background-color: #fff;
    box-shadow: 0 0 20px 0px #0000001a;
}

.login-txt ul {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin: 20px 0;
    gap: 10px;
}

li.head {
    color: #ca3232;
    font-size: 17px;
    font-weight: 600;
}

.login-txt ul li {
    display: flex;
    gap: 7px;
    font-weight: 500;
    color: #7e7e7e;
    font-family: "Montserrat", sans-serif;
}

li.head a {
    width: 100%;
    font-size: 14px;
    color: #8c7afc;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
}

.login-txt form button {
    width: 100%;
    color: #fff;
    padding: 18px 0px;
    border: none;
    margin-bottom: 20px;
    font-size: 16px;
    text-transform: uppercase;
    transition: ease-in;
    transition-duration: 0.2s;
    background-color: #8c7afc;
    font-weight: 500;
    border-radius: 70px;
    font-family: "Montserrat", sans-serif;
}

.login-txt form button:hover {
    background-image: unset;
    background-color: #000;
    transition: ease-out;
    transition-duration: 0.2s;
}

li.head-ex {
    text-decoration: underline;
}

.login-txt ul li label,
.login-txt .forgot_pass span {
    cursor: pointer;
    font-size: 15px;
    font-weight: 600;
    display: flex;
    gap: 10px;
    text-transform: capitalize;
    padding-left: 30px;
    position: relative;
    color: #8c7afc;
    font-family: "Montserrat", sans-serif;
}

section.login.sec {
    padding: 120px 0px;
    position: relative;
    overflow: hidden;
}

.login-txt.login-txt-ex ul {
    justify-content: space-between;
}

.login-txt.login-txt-ex button {
    margin-bottom: 10px;
}

.login-txt label {
    position: relative;
    padding-left: 30px;
    cursor: pointer;
    font-size: 14px;
    color: #b6b5b5;
    display: flex;
    align-items: center;
    font-family: "Roboto";
}

.login-txt form input::placeholder {
    color: #b0afaf;
}

.login-txt input[type="checkbox"] {
    display: none;
}

.login-txt label span::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    border: 1px solid #8c7afc;
    background-color: white;
    outline: 2px solid #8c7afc;
}

.login-txt input[type="checkbox"]:checked+span::before {
    border-color: #8a72f3;
    outline: 4px solid #8b73f4;
    outline-offset: -10px;
}


/*Inner Login Signup Ends*/


/*Inner Contractor Listing Start*/

.contractor-listing-sec {
    padding: 70px 0 100px;
}

.contractor-listing-box-images img {
    width: 100%;
    height: 277px;
    object-fit: cover;
    border-radius: 8px;
}

.contractor-listing-box-text h2 {
    font-size: 35px;
    margin-top: 8px;
    margin-bottom: 8px;
}

.contractor-listing-box-text p {
    margin-bottom: 12px;
    font-size: 13px;
    line-height: 22px;
    color: #fff;
}

.contractor-listing-box {
    background-color: #06057ec9;
    padding: 20px 20px;
    border-radius: 8px;
    margin-top: 30px;
}

ul.contractor-proflile-list {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 20px;
    margin: 10px 0;
    flex-wrap: wrap;
}

ul.contractor-proflile-list img {
    width: 45px;
    height: 45px;
    border-radius: 50px;
}

ul.contractor-proflile-list h4 {
    font-size: 20px;
    color: #fff;
}

ul.contractor-proflile-list h4 span {
    font-size: 16px;
    color: #666;
    font-family: 'Poppins';
    margin-left: 5px;
}

.rating i {
    color: #ffc30f;
    font-size: 14px;
}

.rating small {
    font-size: 12px;
    color: #777;
    font-weight: 600;
    margin-left: 10px;
    color: #fff;
}

.work-expr {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 5px;
    flex-wrap: wrap;
    margin: 0 0 15px;
}

.work-expr span {
    font-size: 10px;
    color: #fff;
    text-transform: capitalize;
    background: #06057e;
    border-radius: 20px;
    padding: 0 12px;
    font-weight: 600;
    cursor: pointer;
}


/*Inner Contractor Listing Ends*/


/*Inner Contractor Detail Start*/

.contractor-detail-sec {
    padding: 100px 0;
}

.contractor-detail-sec h2 {
    margin-bottom: 12px;
}

.contractor-detail-images {
    background: #847df8;
    padding: 2px;
    border-radius: 10px;
}

.contractor-detail-images img {
    width: 100%;
    height: 450px;
    object-fit: cover;
    border-radius: 8px;
    object-position: top;
}

.contractor-detail-text {
    padding-right: 0;
}

.contractor-detail-row {
    margin-top: 25px;
}

.contractor-detail-row p {
    margin-bottom: 18px;
}

.contractor-detail-text h4 {
    font-size: 40px;
    line-height: 50px;
}

.contractor-detail-text h4 span {
    font-size: 30px;
    font-family: 'Poppins';
    color: #666;
}

.contractor-detail-text .rating {
    margin: 15px 0;
}

.contractor-detail-text .rating i {
    font-size: 20px;
}

.contractor-detail-text .rating small {
    font-size: 16px;
}

.contractor-detail-text h5 {
    font-size: 20px;
    font-family: 'Montserrat';
    font-weight: 600;
    font-style: italic;
    color: #666;
    margin-bottom: 12px;
}

.servi-oferd-div h4 {
    font-size: 40px;
    text-transform: capitalize;
}

.recent-project h4 {
    font-size: 40px;
    text-transform: capitalize;
}

ul.oferd-list {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    row-gap: 25px;
    margin: 20px 0 80px;
}

ul.oferd-list li {
    width: 30%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 15px;
}

ul.oferd-list li i {
    font-size: 24px;
    color: #837df8;
    width: 50px;
    height: 50px;
    border: 1px solid #837df8;
    display: grid;
    place-content: center;
    border-radius: 70px;
    background: #837df80d;
}

ul.oferd-list li p {
    margin: 0;
    font-size: 16px;
}

ul.recent-work {
    display: flex;
    align-items: center;
    gap: 11px;
    flex-wrap: wrap;
}

ul.recent-work li {
    width: 32%;
}

ul.recent-work li img {
    width: 100%;
    height: 250px;
    object-fit: cover;
    border-radius: 10px;
    margin: 20px 0;
    transition: .5s all;
}

ul.recent-work li img:hover {
    box-shadow: 0 0 10px 2px #989898;
}


/*Inner Contractor Detail Ends*/

.login-txt p {
    color: #7e7e7e;
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
}

.verify span.fa.fa-check-circle {
    color: #06057e;
}

.sd_flex i {
    color: #7c5edc;
}

/* PACKAGES PAGE */

.packages-header {
    text-align: center;
    margin-bottom: 60px;
    color: white;
}

.packages-header h1 {
    font-size: 3rem;
    margin-bottom: 20px;
    font-weight: 700;
}

.packages-header p {
    color: #000;
    font-size: 1.2rem;
    opacity: 0.9;
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.6;
}

.packages-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(450px, 1fr));
    gap: 40px;
    justify-items: center;
}

.package-card {
    background: white;
    border-radius: 20px;
    padding: 40px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.1);
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
    max-width: 500px;
    width: 100%;
}

.package-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.15);
}

.package-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 6px;
    background: linear-gradient(90deg, #667eea, #764ba2);
}

.free-package::before {
    background: linear-gradient(90deg, #8366e2, #8366e2);
}

.premium-package::before {
    background: linear-gradient(90deg, #8366e2, #8366e2);
}

.package-header {
    text-align: center;
    margin-bottom: 30px;
}

.package-icon {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    font-size: 2rem;
    color: white;
}

.free-package .package-icon,
.premium-package .package-icon {
    background: linear-gradient(135deg, #8366e2, #8366e2);
}

.package-title {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 10px;
    color: #2d3748;
}

.package-subtitle {
    color: #8366e2;
    margin-bottom: 20px;
}

.package-price {
    font-size: 3rem;
    font-weight: 800;
    color: #2d3748;
    margin-bottom: 30px;
    font-family: 'dream orphans';
}

.package-price .currency {
    font-size: 1.5rem;
    vertical-align: top;
}

.package-price .period {
    font-size: 1rem;
    color: #718096;
    font-weight: 400;
}

.features-list {
    list-style: none;
    margin-bottom: 40px;
}

.features-list li {
    padding: 12px 0;
    display: flex;
    align-items: center;
    border-bottom: 1px solid #e2e8f0;
    font-size: 0.85rem;
}

.features-list li:last-child {
    border-bottom: none;
}

.feature-icon {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 15px;
    font-size: 0.8rem;
    color: white;
}

.free-package .feature-icon {
    background: #8366e2;
}

.premium-package .feature-icon {
    background: #8366e2;
}

.feature-text {
    flex: 1;
    color: #000;
}

@media (max-width: 768px) {
    .packages-container {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .package-card {
        max-width: 100%;
        padding: 30px 20px;
    }

    .packages-header h1 {
        font-size: 2rem;
    }

    .packages-header p {
        font-size: 1rem;
    }

    .package-price {
        font-size: 2.5rem;
    }
}

/* PACKAGES PAGE */

.services_left {
    position: relative;
}

.services_left:before {
    position: absolute;
    content: '';
    background: #000080;
    width: 100%;
    height: 106%;
    z-index: -1;
    top: -20px;
    border-radius: 0px 10px 10px 0px;
}

.whu_right_img img {
    width: 96%;
    height: 491px;
    object-fit: cover;
    border-radius: 10px 10px 10px 0px;
}

.whu_right_img {
    position: relative;
}

.whu_right_img:before {
    position: absolute;
    content: '';
    background: #000080;
    width: 99%;
    height: 104%;
    z-index: -1;
    top: -21px;
    border-radius: 10px 10px 10px 0px;
}

.whu_left_img {
    position: relative;
}

.whu_left_img:before {
    position: absolute;
    content: '';
    background: #000080;
    width: 101%;
    height: 106%;
    z-index: -1;
    top: 0px;
    border-radius: 10px 0px 10px 10px;
    left: -6px;
}

div#load_screen .loader-content .spinner-grow,
div#load_div .loader-content .spinner-grow {
    width: 2.5rem;
    height: 2.5rem;
    color: #000080 !important;
}

.themebtn:hover {
    color: #fff;
}