/* Common Components Starts */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Bitter:ital,wght@0,100..900;1,100..900&display=swap');

body {
    font-family: "Playfair Display", serif!important;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}
p {
    margin-top: 1rem;
    margin-bottom: 1rem;
}
a {
    text-decoration: none;
    color: inherit;
}
.modal-backdrop.show {
    opacity: var(--bs-backdrop-opacity);
    z-index: 0!important;
}
.getModal .modal-content {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    color: var(--bs-modal-color);
    pointer-events: auto;
    background-color: var(--bs-modal-bg);
    background-clip: padding-box;
    border: var(--bs-modal-border-width) solid var(--bs-modal-border-color);
    border-radius: 0;
    outline: 0;
    border-bottom: solid 8px #19247f;
}
.getModal .form-control {
    display: block;
    width: 100%;
    padding: 12px 12px;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.5;
    color: var(--bs-body-color);
    background-color: var(--bs-body-bg);
    background-clip: padding-box;
    border: solid 1px #121b6721;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
.getModal form {
    padding: 0 8.5rem;
}
.getModal .modal-header {
    border: none !important;
    padding: 15px 30px;
}
.getModalclose {
    margin: 0 0 0 auto;
}
.getModal  img{
    height: auto;
    width: 42px;
}
.getModal .btn-primary{
    margin: 0!important;
}
section {
    padding: 4rem 0;
}
.request-hd {
    color: black;
    font-size: 34px;
    margin: 0 0 20px 0;
    font-weight: 500;
}
.btn-primary {
    color: white!important;
    background-color: #162484;
    border-color: #162484;
    font-size: 15px;
    font-weight: bold;
}
.btn-primary:hover {
    color: white!important;
    background-color: #0f1b6b!important;
    border-color: #0f1b6b!important;
}
.main-head{
    padding: 0 0 1rem 0;
}
/* Common styles ends */


/* navbar styles starts */
.bg-light {
    background-color: #ffffff!important;
}
.navbar-toggler-icon {
    display: inline-block;
    width: 22px!important;
    height: 22px!important;
}
.navbar-light .navbar-toggler {
    color: rgb(255 255 255);
    border-color: #162484;
    background: #162484;
    padding: 5px 10px;
}
.navbar-light .navbar-toggler-icon {
    background-image: url(../images/togg-icon.svg)!important;
}
.navbar-light .navbar-nav .nav-link {
    color: #333333;
    font-family: "Bitter";
    font-weight: 700;
    margin: 0 12px;
    padding: 15px 15px;
    font-size: 16px;
}
.navbar-light .navbar-nav .nav-link:hover {
    color: #19247f;
}
.navbar-brand img {
    height: auto;
    width: 132px;
}
.nav-item .btn-primary {
    color: white!important;
    background-color: #162484;
    border-color: #162484;
    font-size: 15px;
    font-weight: bold;
    padding: 10px 20px!important;
    margin: 4px 8px!important;
}


/* navbar styles ends */

/* Hero carousel starts */
.hero-div{
    padding: 12rem 0;
    color: white;
}
.hero .carousel-item{
    height: 720px;
    background-position: center 20%;
    background-attachment: fixed;
    background-repeat: no-repeat no-repeat;
    background-size: cover;
    position: relative;
    overflow: hidden;
}
.hero-slide-overlay{
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: linear-gradient(to right, rgba(0,0,0,0.5), rgba(0,0,0,0.15) 65%);
}
.hero .carousel-item .container{
    position: relative;
    z-index: 2;
}
.hero .carousel-indicators{
    margin-bottom: 2rem;
}
.hero .carousel-control-prev,
.hero .carousel-control-next{
    width: 5%;
}
.hero-p{
    margin: 20px 0;
    font-weight: normal;
}
.carousel-item .btn-primary{
    color: white!important;
    background-color: #162484;
    border-color: #162484;
    font-size: 15px;
    font-weight: bold;
    padding: 10px 20px!important;
    margin: 4px 0px!important;
}
/* Hero carousel ends */

/* floating contact buttons start */
.floating-contact-btns{
    position: fixed;
    right: 20px;
    bottom: 20px;
    z-index: 1050;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.floating-btn{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    color: #ffffff !important;
    font-size: 26px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.25);
    transition: transform 0.2s ease;
}
.floating-btn:hover{
    transform: scale(1.08);
    color: #ffffff !important;
}
.floating-whatsapp{
    background-color: #25D366;
}
.floating-call{
    background-color: #162484;
}
@media (max-width: 767px) {
    .floating-contact-btns{
        right: 14px;
        bottom: 14px;
        gap: 10px;
    }
    .floating-btn{
        width: 48px;
        height: 48px;
        font-size: 22px;
    }
}
/* floating contact buttons end */


/* About Starts */
#about {
    margin: 3rem 0;
}
.abt-bg{
    position: relative;
    background-image: url(../images/about-bg.svg);
    height: 480px;
    border-top-right-radius: 100px;
}
.abt-shape {
    position: absolute;
    background: #FFD301;
    padding: 30px 23px;
    border-top-right-radius: 100px;
    height: 199px;
    width: 183px;
    bottom: 332px;
    font-weight: 600;
    left: 240px;
}
.anchor{
    height: 30px;
    width: 30px;
    margin: 12px 0;
}
.abtimg{
    margin: 0 auto;
    display: flex;
}
.abt-padd {
    padding: 6rem 24px;
}
/* About Ends */

/* Service Starts */
#service {
    margin: 3rem 0;
}
.service-bx{
    text-align: center;
}
.serv-icon{
    height: auto;
    width: 95px;
    margin: 12px 0;
}
.maint-icon{
    display: block;
    font-size: 48px;
    color: #162484;
    margin: 12px 0 18px 0;
}
.serv-bx-hd{
    color: #333333;
    font-size: 26px;
    margin: 0 0 15px 0;
    font-weight: 500;
}
#service .btn-primary {
    color: white !important;
    background-color: #162484;
    border-color: #162484;
    font-size: 15px;
    font-weight: bold;
    padding: 15px 38px;
}
/* Service Ends */

/* Maintenance service blocks starts */
.maint-block {
    padding: 2.5rem 0;
    border-bottom: 1px solid #e6e8f2;
}
.maint-block:last-child {
    border-bottom: none;
}
.maint-block-img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(22, 36, 132, 0.12);
}
.maint-block-text {
    padding: 1.5rem 2rem;
}
.maint-block-num {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #162484;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 10px;
}
.maint-block-num i {
    font-size: 20px;
}
.maint-block .comtdetl-ul {
    padding-left: 0;
    margin-bottom: 0;
}
.maint-block .comtdetl-ul li {
    padding: 6px 0;
}
.maint-block .btn-primary {
    color: white !important;
    background-color: #162484;
    border-color: #162484;
    font-size: 15px;
    font-weight: bold;
    padding: 13px 34px;
}
@media (max-width: 991px) {
    .maint-block-text {
        padding: 1.5rem 0 0 0;
    }
}
/* Maintenance service blocks ends */

/* Services list page starts */
#services-list {
    padding: 3rem 0;
}
.services-group-hd {
    text-align: center;
    margin: 3.5rem 0 0.5rem 0;
    padding-top: 2.5rem;
    border-top: 2px solid #e6e8f2;
}
/* Services list page ends */

/* whatwedo starts */
#whatwedo{
    margin: 3rem 0;
    padding: 3rem 0;
    background: #071545;
    color: white !important;
}
.whatwedo-bx {
    text-align: center;
    margin: 22px 0;
}
#whatwedo p{
    color: #D9D9D9;
}
/* whatwedo ends */

/* lstssale starts */
#letsstart{
    margin: 3rem 0;
    padding: 3rem 0;
}
.letssale-padding{
    padding: 6rem 3rem;
}
#letsstart li {
    padding: 0 0 1.5rem 0;
}
.letssailbg {
    background-image: url(../images/letssail.svg);
    height: auto;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat no-repeat;
}
#letsstart  ul {
    padding-top: 12px;
    padding-left: 15px;
}
/* letsstartends */

/* gallery starts */
#gallery{
    margin: 3rem 0;
    padding: 3rem 0;
}
#gallery .btn-primary {
    color: white !important;
    background-color: #162484;
    border-color: #162484;
    font-size: 15px;
    font-weight: bold;
    padding: 15px 38px;
}
/* gallery ends */

/* contactsec-home starts */
#contactsec-home{
    margin: 3rem 0;
    padding: 3rem 0;
    background: #E8ECFD;
}
.divider {
    height: 100%;
    width: 1px;
    background: #D9D9D9;
    text-align: center;
    margin: 0 auto;
}
.cnttitle {
    font-weight: 700;
    color: #333333;
    margin: 24px 0 0 0;
    font-size: 22px;
}
#contactsec-home ul {
    padding-left: 0rem;
    padding-top: 20px;
}
#contactsec-home li {
    list-style-type: none;
    font-size: 20px;
    color: #555555;
    padding-left: 0px;
}
.v-none{
    visibility: hidden;

}
#contactsec-home .form-control {
    display: block;
    width: 100%;
    padding: 12px 12px;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    background-color: transparent;
    background-clip: padding-box;
    border: 1px solid #BAC7F8;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius:0;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
#contactsec-home .btn-primary {
    color: white !important;
    background-color: #162484;
    border-color: #162484;
    font-size: 15px;
    font-weight: bold;
    padding: 15px 50px;
}
/* contactsec-home ends */

/* footer map starts */
.footer-map-wrap {
    position: relative;
    width: 100%;
    height: 320px;
    border-radius: 6px;
    overflow: hidden;
}
@media (max-width: 767px) {
    .footer-map-wrap {
        height: 260px;
    }
}
.footer-map-wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}
/* footer map ends */

/* social media starts */


#social-media {
    padding: 1rem 0;
    border-bottom: solid 10px #162484;
}
#social-media ul {
    display: flex;
    align-items: center;
    justify-content: center;
}
#social-media li {
    transition: transform 0.3s ease;
    float: left;
    list-style-type: none;
    margin: 0 20px;
}
.social li:hover {
    transform: scale(1.1); /* Increase the size on hover */
    transition: transform 0.5s ease; /* Smooth transition effect */
}
.social li img:hover {
    animation: rotate 0.1s ease-in-out; /* Apply the rotation animation on hover */
}
@keyframes rotate {
    0% {
        transform: rotate(0deg);
    }
    50% {
        transform: rotate(180deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
.foot-menu-ul {
    margin: 32px 0 0 0 !important;
}
.foot-menu-ul li {
    margin: 0 26px!important;
}
#social-media li img{
    height: auto;
    width: 45px;
}
.copyright {
    color: #333333;
    margin-top: 3rem;
    margin-bottom: 1rem;
}
.foot-menu-ul li a:hover {
    text-decoration: none;
    color: #19247f;
}
/* social media ends */

/* breadsec starts */
#breadsec{
    background: #E8ECFD;
    padding: 3rem 0;
}
/* breadsec ends */

/* company details starts */
#comp-dtl{
    padding: 3rem 0;
}
.comp-data{
    padding: 0 12px;
}
#comp-dtl ol, ul {
    padding-left: 0;
}
.comtdetl-ul li {
    list-style-type: none;
    padding: 12px 0px;
}
.comtdetl-ul li::before {
    content: url('../images/tick.svg');
    margin-right: 8px; /* Adjust the margin as needed */
    width: 16px; /* Adjust the width of the image */
    height: 16px; /* Adjust the height of the image */
    display: inline-block; /* Ensures the image aligns with the text properly */
  }
  .comp-dat{
    padding: 12px 24px;
  }
  
/* company details ends */

/* missionandvision-sec-starts */
#mission-vision{
    padding: 3rem 0;
}
#mission-vision img{
    height: auto;
    width: 72px;
}
.mission-vision-box{
    padding: 40px 40px;
}
.mission-vision-hd{
    color: #000000;
    font-size: 28px;
    margin: 19px 0 0 0;
}
/* missionandvision-sec-ends */

/* together sec starts */
#together{
    padding: 3rem 0;
    background-image: url(../images/together-bg.svg);
    background-position: center center;
    background-repeat: no-repeat no-repeat;
    background-size: cover;
    height: auto;
}
#together .btn-primary {
    color: #1C2A86 !important;
    background-color: white;
    border-color: white;
    font-size: 15px;
    font-weight: bold;
    padding: 16px 31px;
}
/* together sec ends */

/* freedom starts */
#freedom{
    padding: 3rem 0;
}
#freedom ol, ul {
    padding-left: 0;
}
.freedom-ul li {
    list-style-type: none;
    padding: 12px 0px;
}
.freedom-ul li::before {
    content: url('../images/tick.svg');
    margin-right: 8px; /* Adjust the margin as needed */
    width: 16px; /* Adjust the width of the image */
    height: 16px; /* Adjust the height of the image */
    display: inline-block; /* Ensures the image aligns with the text properly */
  }
  .freedom-bx {
    background-color: #071545;
    color: white;
    padding: 20px 10px;
    margin: 12px 0;
    border-radius: 12px;
    box-shadow: 6px 18px 10px 0px #07154570;
}
.freedom-bx-light {
    background-color: #E8ECFD;
    color: #000000;
    padding: 22px 10px;
    margin: 12px 0;
    border-radius: 12px;
    box-shadow: none;
}
.freedom-bx img {
    height: auto;
    width: 69px;
    margin: 12px 0;
    filter: brightness(27.5);
}
.freedom-bx-light img{
    height: auto;
    width: 69px;
    margin: 12px 0;
}
.count{
    font-size: 30px;
}
/* freedom ends */

/* services-page starts */
#services-page{
    padding: 3rem 0;
}
.serv-contents{
    padding: 2rem 4rem;
}
#services-page ol, ul li{
    padding-left: 18px;
}
#services-page li {
    padding: 0;
    line-height: 30px;
    margin: 0 0px 0 13px;
}
/* services=page ends */

/* package gallery starts */
img.gallery-photo,
video.gallery-photo{
    width: 100%;
    height: 280px;
    object-fit: cover;
}
@media (max-width: 767px) {
    img.gallery-photo,
    video.gallery-photo{
        height: 220px;
    }
}
/* package gallery ends */

/* home gallery starts */
.home-gallery-photo{
    width: 100%;
    aspect-ratio: 3 / 4;
    object-fit: cover;
}
/* home gallery ends */

/* gallery-page starts */
#gallery-page{
    padding: 3rem 0;
}
#gallery-page .form-select {
    font-size: 14px;
    color: #555555;
    margin: 10px 0;
}
.gallery-ul {
    padding-left: 0;
}
.gallery-ul li {
    float: left;
    margin: 0 20px 0 20px;
    padding: 0;
    font-size: 20px;
    color: #555555;
}
.gallaimg-title {
    color: #333333;
    font-size: 22px;
    font-weight: 500;
    margin: 0 0 30px 0;
}
.pagination .page-link {
    padding: 14px 20px;
    color: #555555 !important;
    line-height: normal;
    font-family: 'Bitter';
    border-radius: 8px;
}
/* gallery-page ends */

/* contact-page starts */
#contactsec-page {
    margin: 3rem 0!important;
    padding: 3rem 0!important;
    background: white!important;
}
#contactsec-page li {
    list-style-type: none;
    font-size: 20px;
    color: #555555;
    padding-left: 0px;
}
#contactsec-page .btn-primary {
    color: white !important;
    background-color: #162484;
    border-color: #162484;
    font-size: 15px;
    font-weight: bold;
    padding: 15px 50px;
}
/* contact-page ends */

/* Media Queries */

/* Laptop Container */
@media (min-width: 1400px){
    .container {
        max-width: 1230px;
    }
}


/* Mobile Devices */
@media (max-width: 767px) {
    body {
        font-family: "Playfair Display", serif!important;
      font-optical-sizing: auto;
    }
    .navbar-brand img {
        height: auto;
        width: 86px;
    }
    .serv-contents {
        padding: 1rem 1rem;
    }
    #letsstart{
        padding: 0!important;
    }
    .letssailbg {
        height: 100vh;
    }
    section{
        margin: 0!important;
        padding: 3rem 0!important;
    }
    #service .btn-primary {
        color: white !important;
        background-color: #162484;
        border-color: #162484;
        font-size: 14px;
        font-weight: bold;
        padding: 10px 20px;
        margin: 17px 0;
    }
    #service {
        margin: 3rem 0;
        padding: 3rem 0;
        background: #E8ECFD;
    }
    .cnttitle {
        font-weight: 700;
        color: #333333;
        margin: 24px 0 0 0;
        font-size: 16px;
    }
    .letssale-padding {
        padding: 3rem 0rem;
    }
    .copyright {
        color: #333333;
        margin-top: 2rem;
        margin-bottom: 1rem;
        font-size: 11px;
    }
    #contactsec-home li {
        list-style-type: none;
        font-size: 14px;
        color: #555555;
    }
    #social-media{
        margin: 0 !important;
        padding: 3rem 0 0.5rem 0 !important;
    }
    #social-media li {
        padding: 0 !important;
        margin: 0 8px !important;
        font-size: 12px !important;
    }
    .foot-menu-ul li {
        padding: 0!important;
        margin: 0 8px !important;
        font-size: 12px !important;
    }
    a {
        text-decoration: none;
        color: inherit;
    }
    .hero .carousel-item {
        height: auto;
        min-height: 420px;
        background-position: center center;
        background-attachment: inherit;
        background-repeat: no-repeat no-repeat;
        background-size: cover;
    }
    .navbar-light .navbar-nav .nav-link {
        color: #333333;
        font-family: "Bitter";
        font-weight: 700;
        margin: 0 0 13px 0;
        padding: 15px 16px;
        font-size: 16px;
    }
    .hero-div {
        padding: 6rem 0;
        color: white;
    }
    .abt-padd {
        padding: 2rem 0px;
    }
    .getModal form {
        padding: 0 1rem;
    }
    .pagination .page-link {
        padding: 6px 12px;
        color: #555555 !important;
        line-height: normal;
        font-family: 'Bitter';
        border-radius: 8px;
    }
    #services-page ol, ul li {
        padding-left: 6px;
    }
    .gallery-ul li {
        float: left;
        margin: 0 14px 0 14px;
        padding: 0;
        font-size: 14px;
        color: #555555;
    }
    .gallaimg-title {
        color: #333333;
        font-size: 18px;
        font-weight: 500;
        margin: 0 0 22px 0;
    }
    /* .gallery-view {
        display: flex;
        flex-direction: column;
      }
    
      .gallaimg-title {
        order: -1; 
        margin-bottom: 12px; 
      }
    
      .gallery-ul {
        order: 0; 
        padding: 0 !important;
      } */
}

/* Tablet Devices */
@media (min-width: 768px) and (max-width: 1024px) {
    body {
        font-family: "Playfair Display", serif!important;
      font-optical-sizing: auto;
      font-weight: <weight>;
      font-style: normal;
    }
    .getModal form {
        padding: 0 2.5rem;
    }
    .mission-vision-box {
        padding: 10px 5px;
    }
  li {
        font-size: 11px!important;
        padding: 0 !important;
        line-height: 30px;
    }
    p{
        font-size: 11px;
    }
    a {
        text-decoration: none;
        color: inherit;
    }
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 700px!important;
    }
    .navbar-light .navbar-nav .nav-link {
         padding: 15px 0px;
    }
}

/* ipad Pro */
@media only screen and (min-device-width: 1024px) and (max-device-width: 1366px) and (-webkit-min-device-pixel-ratio: 2) {
    body {
        font-family: "Playfair Display", serif!important;
      font-optical-sizing: auto;
      font-weight: <weight>;
      font-style: normal;
    }
    .getModal form {
        padding: 0 2.5rem;
    }
    
    a {
        text-decoration: none;
        color: inherit;
    }
    .container {
        max-width: 900px !important;
    }
}

@media screen and (min-width: 989px) and (max-width: 1040px) {
    body {
        font-family: "Playfair Display", serif!important;
      font-optical-sizing: auto;
      font-weight: <weight>;
      font-style: normal;
    }
    
    a {
        text-decoration: none;
        color: inherit;
    }
}


@media screen and (min-width: 1005px) and (max-width: 1200px) {
    body {
        font-family: "Playfair Display", serif!important;
      font-optical-sizing: auto;
      font-weight: <weight>;
      font-style: normal;
    }
    
    a {
        text-decoration: none;
        color: inherit;
    }
}