/* font */
@import url('https://fonts.googleapis.com/css2?family=Sora:wght@100;200;300;400;500;600;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Be+Vietnam:wght@100;300;400;500;600;700;800&display=swap');
/* variable */
:root {     
    --base-color: #c42a2a;
    --dark-gray: #262b35;
    --medium-gray:#868d98;
    --primary-font: 'Be Vietnam', sans-serif;
    --alt-font: 'Sora', sans-serif;
    
    --font70: max(3rem, min(6vw, 4.375rem));
    --font48: max(2.5rem, min(4vw, 3rem));
    --font32: max(2.5rem, min(4vw, 2rem));
    --font28: max(1.50rem, min(2vw, 1.75rem));
    --font24: max(1.5rem, min(1vw, 1.5rem));
}
h1{
    font-size: var(--font70);
}


/* reset */
body { 
    font-size: 17px;
    line-height: 32px;
}
/* header */
header .navbar-brand img {
    max-height: 100px;
}
header .navbar-brand img.sticky-logo {
    display: none;
}
header.sticky .navbar-brand img {
    max-height: 70px;
}
header.sticky .navbar-brand img.sticky-logo {
    display: block;
}
header.sticky .navbar-brand img.initial-logo {
    display: none;
}
header .navbar-brand {
    padding: 15px 0;
}
header.sticky .navbar-brand {
    padding: 10px 0;
}
.navbar .navbar-nav .nav-link {
    font-size: 17px;
    font-weight: 400;
}
.sticky .header-transparent .header-button .btn {
    color: var(--dark-gray);
    border-color: var(--dark-gray);
}
.sticky .header-transparent .header-button .btn:hover {
    border-color: var(--dark-gray);
    color: var(--white);
    background:  var(--dark-gray);
}
header.sticky.sticky-active [data-header-hover="light"] .widget-text i {
    color: var(--white);
}
.navbar .navbar-nav .nav-item .nav-link.active, .navbar .navbar-nav .nav-item.active .nav-link, .navbar .navbar-nav .nav-item:hover .nav-link {
    opacity:9;
    color: var(--base-color);
}
/* accordion style 02 */
.navbar .navbar-nav .dropdown.dropdown-with-icon-style02 .dropdown-menu {
    background-color: var(--dark-gray);
}
.navbar .navbar-nav .dropdown.dropdown-with-icon-style02 .dropdown-menu li a {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    color: var(--white);
}
.navbar .navbar-nav .dropdown.dropdown-with-icon-style02 .dropdown-menu li:hover a,
.navbar .navbar-nav .dropdown.dropdown-with-icon-style02 .dropdown-menu li.active a{
    opacity: .5;
}
/* bg color */
.bg-gradient-sherpa-blue-black {
    background-image: linear-gradient(to right top, #000, #000, #232348, #222226, #232323);
}
.bg-gradient-sherpa-black-blue {
    background-image: linear-gradient(to right top, #232323, #222226, #232348, #000, #000);
} 
/* bg transparent color */
.bg-base-color-transparent {
    background-color: rgba(87, 88, 214,.8);
}
/*  tabs style 05  */
.tab-style-05 .nav-tabs > li.nav-item {
    letter-spacing: -.5px;
}
/* accordion */
.accordion .accordion-item .accordion-header .accordion-title i {
    top: 52%;
}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {margin-bottom: 25px}

/*  progress bar style 01  */
.progress-bar-style-01 .progress .progress-bar-title {
    bottom: 15px;
}
/* page title */
.page-title-extra-large h1 {
    font-size: 4.7rem;
    line-height: 4.7rem;
}
/* separator line */
.separator-line-9px {
    height: 9px;
}
/* tag */
.tag-cloud a { 
    padding-top: 5px;
    padding-bottom: 9px;
}
/* blog comment */ 
.blog-comment li .btn-reply {
    padding-top: 5px;
    padding-bottom: 7px;
}
/* number pagination style 01 */
.pagination-style-01 .page-item .page-link {
    line-height: 42px;
}
.pagination-style-01 .page-item.active .page-link {
    background: var(--dark-gray);
    color: var(--white);
}
/* top right bottom left */
.bottom-minus-45px {
    bottom: -45px;
}
.right-minus-45px {
    right: -45px;
}
/* footer */
.ftr-top {
    background-color: #2a2a2a;
}

footer .footer-logo img {
    max-height: 70px;
}
footer ul li {
    margin-bottom: 0;
}
.footer-dark a:hover {
    color: var(--base-color);
}
.footer-dark, .footer-dark a, .footer-dark p {
    color: #b4b4b4;
}
.ftr-btm {
    background: #9e2a2a;
}
/* model popup */
.mfp-bg {
    background: #000000;
    opacity: 0.7;
}
.hero-banner-sec .opacity {
    opacity: .4;
}
.banner-1 {
    background: url('../images/banner-1.webp') center no-repeat;
    background-size: cover;
}
.banner-2 {
    background: url('../images/banner-2.webp') center no-repeat;
    background-size: cover;
}
.banner-3 {
    background: url('../images/banner-3.webp') center top no-repeat;
    background-size: cover;
}
.banner-4 {
    background: url('../images/banner-4.webp') center no-repeat;
    background-size: cover;
}
.services-sec .tab-pane img {
    aspect-ratio: 9 / 12;
    object-fit: cover;
}
.hm-abt-b, .hm-abt-f {
    aspect-ratio: 9 / 10;
    object-fit: cover;
}


.since-tag {
    background: var(--base-color);
    border-radius: 50%;
    width: 140px;
    height: 140px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #fff;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0; 
}

.map-wrap iframe{
    height: 100%;
    width: 100%;
}

.map-wrap{
    height: 550px;
    width: 100%;
}
.hero-banner-sec .swiper{
    height: 90vh !important;
}

 /* -------------------- breadcrupm section ------------------- */

 .breadcrump_wrap{
    position: relative;
 }
 .about-breadcrumb{
    /* no-repeat center center / cover */
    background: url('../images/about-banner.webp') no-repeat right / cover ;
 }
.service-breadcrumb{
    background: url('../images/service-banner.webp')  no-repeat right / cover;
}
.contact-breadcrumb{
    background: url('../images/contact-banner.webp')  no-repeat right / cover;
}

/* ----------------------------service page--------------------------------- */

.feature-box:hover svg path{
    fill: var(--white);
}
.industry-we-serve-sec svg{
    height: 42px;
    width: 42px;
}
/* -----------------------------services page ---------------------------------- */

.services-img-wrap img{
    object-fit: cover;
    aspect-ratio: 16/12;
}
header .header-icon span{
    display: flex !important;
    justify-content: center;
    align-items: center;
}
.header-icon .number-wrap{
    display: flex;
}
.about-img.img1{
    aspect-ratio: 9/10;
}
.about-img.img2{
    aspect-ratio: 9/11;
}
.about-img{
    object-fit: cover;
}
.about-heading{
    text-align: left;
}

/* ----------------------contact-us---------------------------------- */
.error {
    color: red;
    font-size: 15px;
}
 
.loading-animation {
    width: 100%;
    bottom: 0;
    z-index: -1;
}
 
#loadingSpinner {
    display: none;
}
 
.spinner {
    border: 5px solid var(--base-color);
    border-top: 4px solid #fff;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    animation: 1s linear infinite spin;
    margin: 20px auto 0;
}
.success-msg h5,
.success-msg p{
    color: var(--black);
}
.success-msg h5{
    margin-bottom: 12px;
    color: var(--black);
}
.success-msg p{
    margin-bottom: 0;

}
.success-msg{
    background: var(--solitude-blue);
    padding: 2.5rem;
    text-align: center;
}
 
@keyframes spin {
    0% {
        transform: rotate(0);
    }
 
    100% {
        transform: rotate(360deg);
    }
}


/* contact link  */

.social-icon-style-11 ul li a{
    padding: 20px 15px 25px;
    background: var(--base-color);
    color: var(--white) !important;
}

.social-icon-style-11 ul li a:hover{
    background: var(--black);
}

.social-icon-style-11 ul li a i{
    font-size: 40px;
}

.ftr-links a:hover{
    color: var(--base-color) !important;
}

.service-links{
    scroll-margin-top: 8rem;
}

.btn.btn-link-gradient:hover {
        color: var(--base-color);
        opacity: 1;
    }
/* ---------media query responsive-------------- */


@media (max-width: 1499px) {
    .navbar .navbar-nav .nav-link {
        padding-left: 15px;
        padding-right: 15px;
    } 
}
@media (max-width: 1399px) {
    .navbar .navbar-nav .nav-link {
        padding-left: 13px;
        padding-right: 13px;
    }
    .sticky-wrap.shadow-in {
        left: 35px;
    }
}
@media (max-width: 1300px) {
    .sticky-wrap.shadow-in {
        left: 10px;
    }
}
@media (max-width: 1199px) {
    .breadcrump_wrap {
        padding: 70px 0 70px;
    }
    .hero-banner-sec .swiper {
        height: 95vh !important;
    }
}

@media (max-width: 991px) {
    .header-transparent .header-button .btn {
        color: var(--dark-gray);
        border-color: var(--dark-gray);
    }
    .header-transparent .header-button .btn:hover {
        border-color: var(--dark-gray);
        color: var(--white);
        background:  var(--dark-gray);
    }
    .navbar .navbar-nav .dropdown.dropdown-with-icon-style02 .dropdown-menu {
        width: calc(100% + 30px) !important;
        margin-left: -15px;
        padding: 10px 45px;
        margin-bottom: 0;
        margin-right: -15px;
    }
    .navbar .navbar-nav .dropdown.dropdown-with-icon-style02 .dropdown-menu li:last-child a {
        padding-bottom: 17px;
    }
    .bg-transparent {
        background-color: transparent !important;
        --bs-bg-opacity: 1 !important;
    }
    .hm-abt-b, .hm-abt-f {
        aspect-ratio: 9 / 6;
        object-fit: cover;
    }
    .services-sec .nav {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        padding-left: 0;
        margin-bottom: 0;
    }
    .bg-transparent {
        --bs-bg-opacity:1;
        background-color: transparent !important;
    }
    .services-img-wrap img {
        aspect-ratio: 16 / 8;
    }
    .breadcrump_wrap {
        padding: 50px 0 50px;
    }
    .map-wrap {
        height: 370px;
    }
    header .navbar.bg-transparent {
        background-color: transparent !important;
    }
    .ipad-top-space-margin, .top-space-margin {
        margin-top: 0 !important;
    }
    .navbar-toggler-line, .swiper-pagination-style-4.dark .swiper-pagination-bullet {
        background: var(--white);
    }
    .sticky.sticky-active .navbar-toggler-line, .swiper-pagination-style-4.dark .swiper-pagination-bullet {
        background: var(--black);
    }
    .hero-banner-sec .swiper {
        height: 80vh !important;
    }
    .about-img.img1{
    aspect-ratio: 9/8;
    }
    .about-img.img2{
        aspect-ratio: 1/1;
    }
    .about-heading{
        text-align: center;
    }
}


@media (max-width: 767px) {
    p {
        margin-bottom: 20px;
    }
    .page-title-extra-large h1 {
        font-size: 48px;
        line-height: 46px;
    }
    .since-tag {
        width: 110px;
        height: 110px;
    }
      .services-sec .tab-pane img {
        aspect-ratio: 9 / 7;
    }
    .elements-social ul li {
        margin-bottom: 0px;
    }
}
@media (max-width: 680px) {
    .breadcrump_wrap {
        padding: 40px 0 40px;
    }
    .hero-banner-sec .swiper {
        height: 70vh !important;
    }
    header .navbar-brand img {
        max-height: 90px;
    }
    .success-msg{
        background: var(--solitude-blue);
        padding: 1.5rem;
    }
}
@media (max-width: 575px) {
    .since-tag {
        width: 100px;
        height: 100px;
    }
    .services-sec .nav {
        grid-template-columns: 100%;
    }
    .services-sec .nav li{
        width: 100% !important;
    }
    .industry-cards .fs-18{
        font-size: 16px;
    }
    .industry-cards .xl-p-30px {
        padding: 30px 20px 30px !important;
    }
    .social-icon-style-11 ul {
        display: flex;
        flex-direction: column;
        gap: 1px;
    }
    .social-icon-style-11 ul li a{
        border-right: 0;
    }
    
}
@media (max-width: 480px) {
    .since-tag {
        width: 100px;
        height: 100px;
    }
    .industry-cards .col{
        width: 100%;
    }
    header .navbar-brand img {
        max-height: 75px;
    }
}
@media (max-width: 380px) {
    .hm-abt-b, .hm-abt-f {
        aspect-ratio: 9 / 8;
        object-fit: cover;
    }
    .since-tag {
        width: 90px;
        height: 90px;
    }
    .services-img-wrap img {
        aspect-ratio: 16 / 10;
    }
    .map-wrap {
        height: 300px;
    }
    .header-right-wrap {
        display: flex;
        flex-direction: column;
        justify-content: center !important;
        align-items: center;
    }
    .number-wrap span{
        width: 26px !important;
        height: 26px !important;
        font-size: 12px;
    }
    .number-wrap span i{
        font-size: 10px;
    }
    .contact-icon-main-wrap{
        margin-right: 0 !important;
    }
}
