*{
    margin: 0;
    padding: 0;
    text-decoration: none;
    box-sizing: border-box;
   
}
html{
    scroll-behavior: smooth;
    overflow-x: hidden;
    scroll-padding: 100px;
}
body{
    background-color: #F7F7F7 !important;
    overflow: hidden;
    line-height: 1.6;
}

/* fonts */

@font-face {
    font-family:GT-Sectra;
    font-weight: 400;
    font-style: normal;
    src: url(../Fonts/GT-Sectra/GT-Sectra-Regular.ttf);
  
  }
@font-face {
    font-family:GT-Sectra;
    font-weight: 700;
    font-style: normal;
    src: url(../Fonts/GT-Sectra/GT-Sectra-Bold.ttf);
  
  }
@font-face {
    font-family:GT-Sectra;
    font-weight: 400;
    font-style: normal;
    font-style: italic;
    src: url(../Fonts/GT-Sectra/GT-Sectra-Regular-Italic.ttf);
  
  }
@font-face {
    font-family:GT-Sectra;
    font-weight: 700;
    font-style: italic;
    src: url(../Fonts/GT-Sectra/GT-Sectra-Bold-Italic.ttf);
  
  }
@font-face {
    font-family:GothamBook;
    font-weight:400;
    font-style: normal;
    src: url(../Fonts/Gotham/GOTHAMBOOK.TTF);
  }
  
@font-face {
    font-family:GothamBook;
    font-weight:400;
    font-style: italic;
    src: url(../Fonts/Gotham/GOTHAMBOOK-ITALIC.TTF);
  }
  
:root{
    --primary-color:#2C2C75;
    --secondary-color:#E31E27;
    --body-text-color:#000;
    --heading-color:#2F2B3C;
    --white-color:#fff;
}
h1,h2,h3,h4,h5,h6,p,a{
    margin-bottom: 0 !important;
}


button{
    border: none;
    outline: none;
    border-radius: 5px;
}
 
:focus{
    outline: none
}
header .navbar{
    height: 100px;
}
label.error{
    font-size: 24px !important;
    margin-top: 16px;
    color: red !important;
}

/* menu-btn */
  .bar1, .bar2, .bar3 {
    width: 30px;
    height: 3px;
    background-color: #312272;
    margin: 6px 0;
    transition: 0.4s;
  }
  .bar2{
    width: 20px;
  }
  
  .change .bar1 {
    transform: translate(0, 6px) rotate(314deg);
  }
  
  .change .bar2 {opacity: 0;}
  
  .change .bar3 {
    transform: translate(0, -12px) rotate(40deg);
  }

  /*  */

.primary_btn{
    background: #2C2C75;
    width: 267px;
    height: 75px;
    font-size: 27px;
    border-radius: 50px;
    color: var(--white-color);
    font-family:GothamBook;
    text-align: center;
    padding: 14px;
    display: grid;
    align-items: center;
    text-decoration: none;
}


.primary_btn:hover{
    color: var(--white-color);
}

.secondary_btn{
    background: var(--white-color);
    width: 267px;
    height: 75px;
    border: 1px solid var(--secondary-color);
    border-radius: 50px;
    color: var(--secondary-color);
    font-size: 27px;
    font-family:GothamBook;
    text-align: center;
    display: grid;
    align-items: center;
    text-decoration: none;
    padding: 14px;
}
.secondary_btn:hover{
    color: var(--secondary-color);
}


.container{
    max-width: 1500px !important;
    padding: 0 !important;
}

/* navbar */
.navbar .nav-item .nav-link {
    font-size: 25px;
    color: var(--primary-color);
    padding: 0 !important;
    position: relative;
    font-family:GT-Sectra;
}
#navbar{
    transition: all 0.5s;
}

.navbar .nav-item .nav-link::after{
    content: '';
    position:absolute;
    bottom: 0;
    width: 100%;
    background: var(--secondary-color);
    display: block;
    height: 2px;
    transform: scale(0);
    transform-origin: right;
    transition: transform 0.8s;
}
.navbar .nav-item .nav-link:hover::after{
    transform: scale(1);
    transform-origin: left;
}
.navbar-nav{
    margin-right: 54px;
}


/* hero-page */
#hero{
    overflow: hidden;
    height: 1076px;
    width: 100%;
    background: rgb(242,242,255);
    background: linear-gradient(90deg, rgba(242,242,255,1) 55%, rgba(253,179,182,1) 100%);
}
#hero .hero_page  .left_side{
 
    height: 1076px;
    padding-left: 100px !important;
}

#hero .hero_page  .left_side .Display_heading{
   font-size: 118px;
   color: var(--primary-color);
   font-family:GT-Sectra;
}
#hero .hero_page  .left_side .Display_text{
   font-size: 25px;
   color: var(--body-text-color);
   font-family:GothamBook;
   margin-top: 53px;
}
#hero .hero_page  .left_side .content{
    margin-top: 264px;
}

#hero .hero_page  .left_side .button_group{
    margin-top: 62px;
}
#hero .hero_page  .right_side .home_img{
    position: absolute;
    bottom: 0;
    left: -240px;
    pointer-events: none;
}

/* services */ 
 .heading{
font-size: 48px;
color: var(--primary-color);
font-family:GothamBook;
}
#services .line{
    height: 1px;
    width: 100%;
    margin-left: 62.5px;
    background: #2C2C75;
}
#services{
    margin-top: 84px;
}
#services .service_cards{
margin-top: 39px;
}
#services .service_cards .row:nth-child(2),#services .service_cards .row:nth-child(3),#services .service_cards .row:nth-child(4),#services .service_cards .row:nth-child(5){
margin-top: 51px;
}

#services   .service_card{
    padding: 39px 0px 39px 39px;
}
#services   .service_card .card_img {
    height: 472px;
}
#services   .service_card .card-body{
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 0 78px !important;
}

#services .service_card .card-title {
    font-size: 55px;
    margin-top: 20px;
    color: var(--primary-color);
    font-family:GT-Sectra;
    font-weight: 400;
}
#services .service_card .card-subtitle {
    font-size: 23px;
    color: var(--body-text-color);
    margin-top: 23px;
    font-weight: 900;
    font-family:GothamBook;
}
#services .service_card .card-text {
    font-size: 20px;
    color: var(--primary-color);
    font-family:GothamBook;
    margin-top: 20px;
    
}
#services .service_card .card_btn {
    background: transparent;
    font-size: 27px;
    margin-top: auto;
    border-radius: 50px;
    font-family:GothamBook;
    width: 216px;
    border: 1px solid var(--primary-color);
    color: var(--primary-color);
    height: 69px;
}

#services .service_card .card_img::after{
    content: url(../images/shape2.png);
    position: absolute;
    bottom: 10px;
    right: 10px;
    transform: scale(.6);
}
#services .service_card .card_img::before{
    content: url(../images/shape1.png);
    position: absolute;
    top:10px;
    transform: scale(.6);
    left:10px;
    z-index: 1;
}


/* contact */

#contact{
background: var(--primary-color);
background-image: url(../images/background-overlay.png);
background-repeat: no-repeat;
background-size: cover;
padding: 95px 0 115px 0;
display: grid;
align-items: center;

}
#contact .heading{
    font-size: 67px;
    color: var(--primary-color);
    font-family:GothamBook;
    margin-bottom: 61px !important;
    }
#contact .contact_form{
    background: var(--white-color);
    padding: 48px;
    border-radius: 20px;
    width: 1100px;
    min-width: 50%;
    max-width: 100%;
    margin: auto;
}
#contact .contact_form .form-control{
background: transparent;
border: none;
border-bottom: 1px solid var(--primary-color) !important;
border-radius: 0;
padding: 17px 0;
font-size: 24px;
}
#contact .contact_form input:focus{
    box-shadow: none;
}
#contact .contact_form .message_input, #contact .contact_form  .email_input , #contact .contact_form  .input_button {
margin-top: 57.9px !important;
}
#contact .contact_form .form-control::placeholder , #contact .contact_form #message::placeholder {
    color: var(--primary-color);
    font-family:GothamBook;
    font-size: 30px;
  }

  #contact .contact_form #message{
  border: none;
  border-bottom: 1px solid var(--primary-color) !important;
  width: 100%;
  resize: none;
  }

  /* tour-section */

  #tour{
    background: #EAEAFF;
    overflow: hidden;
    margin-top: 180px;
    padding: 75px 0px;
  }
  #tour .heading{
    font-size: 79px;
    color: var(--primary-color);
    font-family:GothamBook;
    font-weight: 900;
    margin-bottom: 65px !important;
    }
    
 
  #tour .tour_descriptions{
    margin-top: 120px;
  }
  #tour .tour_detials h6{
    font-size: 40px;
color: var(--primary-color);
font-family:GT-Sectra;
  }
  #tour .tour_detials{
    padding: 0 54px 0 0;
  }
  #tour .tour_descriptions .border-right{
    border-right: 1px solid var(--secondary-color);
  }
 

  /* footer */
  footer{
     display: grid;
    background: #fff4f4;
    align-content: center;
    height: 232px;
  }
  footer .footer_content {
   align-items: flex-start!important;
 }
 footer  .footer_content a{
    color: var(--primary-color) ;
    font-size: 30px;
    font-family:GothamBook;
    font-weight: 400;
  }
  footer  .footer_content p{
    color: var(--body-text-color);
    font-size: 30px;
    font-family:GothamBook;
  }


  /* slider */
  .slider button{
    display: none !important;
  }
  .slick-slide {
    width: 100%;
    margin: 0 27px;
  }
  .slick-slide img {
    display: block;
    width: 100% !important;
}
  .slick-list{
    overflow: visible !important;
  }
  .slick-slide.slick-center{
    position: relative;
  }
  .slick-slide.slick-center::after{
    content: url(../images/shape2.png);
    position: absolute;
    bottom: -40px;
    right: -40px;
    transform: scale(0.8);
}
.slick-slide.slick-center::before{
    content: url(../images/shape1.png);
    position: absolute;
    top: -62px;
    transform: scale(0.8);
    left: -63px;
}

  .slick-dots{
    display: none !important;
  }

  /* copyright */
  #copyright{
    background: #2E2E2E;
    height: 83px;
    color: var(--white-color);
    display: grid;
    align-items: flex-end;
    padding-bottom: 17px;
    font-family:GothamBook;
  }

.success_message{
    margin-top: 24px;
    color: green;
    font-size: 24px;
}

  

   /* <!-------------------------     Media-Queries    ------------------------------> */

  @media (min-width:992px) and (max-width:1299px){
    .container{
        max-width: 960px !important;
    }
    #hero .hero_page .left_side {
        padding-left: 40px !important;
    }
    #hero .hero_page .left_side .Display_heading {
        font-size: 68px;
    }
    #hero .hero_page .left_side .Display_text {
        font-size: 18px;
    }
    .secondary_btn, .primary_btn {
        font-size: 18px;
    }
    footer .footer_content p ,footer .footer_content a ,#contact .contact_form label , #tour .tour_detials h6 {
        font-size: 24px;
    }
    #contact .heading , #tour .heading {
        font-size: 56px;
    }
 
    #services .service_card .card-title {
        font-size: 32px;
    }
    #services .service_card .card-text {
        font-size: 16px;
    }
    #services .service_card .card-subtitle {
        font-size: 18px;
    }
    #services .service_card .card_btn {
        font-size: 18px;
        width: 180px;
        height: 56px;
    }
    #contact .contact_form {
        width: 700px;
    }
    .slick-slide.slick-center::after {
        bottom: -75px;
        right: -65px;
        transform: scale(0.5);
    }
    .slick-slide.slick-center::before {
        top: -80px;
        transform: scale(0.5);
        left: -72px;
    }
}

  @media (min-width:1300px) and (max-width:1550px){
    .container{
        max-width: 1200px !important;
    }
    #hero .hero_page .left_side .Display_heading {
        font-size: 80px;
    }
    #hero .hero_page .left_side .Display_text {
        font-size: 16px;
    }
    .secondary_btn, .primary_btn {
        width: 225px;
        height: 75px;
        font-size: 24px;
    }
    footer .footer_content p ,footer .footer_content a ,#contact .contact_form label , #tour .tour_detials h6 {
        font-size: 24px;
    }
    #contact .heading , #tour .heading {
        font-size: 56px;
    }
 
    #services .service_card .card-title {
        font-size: 40px;
    }
    #services .service_card .card-text {
        font-size: 18px;
    }
    #services .service_card .card-subtitle {
        font-size: 20px;
    }
    #services .service_card .card_btn {
        font-size: 22px;
        width: 180px;
        height: 56px;
    }
    
}





   
   @media (max-width:991px){
  
    .card_icon{
        text-align: end !important;
    }
 
    .navbar .nav-item .nav-link {
        width: 86px;
    }
    .navbar-nav{
        margin-top: 32px;
    }
    header .navbar{
        height: auto;
        padding: 24px 0;
    }
    #tour .tour_detials h6 {
        font-size: 16px;
    }
    footer  .footer_content a,footer .footer_content p{
        font-size: 16px;
    }

    #hero .hero_page  .left_side .Display_heading{
        font-size: 64px;
        color: var(--primary-color);
        margin-top: 110px;
     }
    
     #contact .contact_form {
        width: 100%;
    }
     #hero .hero_page  .left_side .Display_text{
        font-size: 18px;
        color: var(--body-text-color);
     }
     #hero{
        height: 100%;
     }
     #hero .hero_page .right_side .home_img {
        left: 169px !important;
        width: 100%;
    }
     #services .service_card .card-title {
            font-size: 34px;
    }


.button_group {
            /* flex-direction: column; */
            align-items: center;
           }
           #contact .contact_form .form-control::placeholder , #contact .contact_form #message::placeholder {
            font-size:16px;
          }
           .primary_btn,.secondary_btn{
            width: 200px;
            font-size: 16px;
           }
           #services .heading{
            font-size: 40px;
           }
             
        #services .service_card .card_img::before {
            content: url(../images/shape1.png);
            position: absolute;
            top: -60px;
            transform: scale(.3);
            left: -60px;
        }
        #services .service_card .card_img::after {
            content: url(../images/shape2.png);
            position: absolute;
            bottom: -60px;
            transform: scale(.3);
            right: -60px;
        }
        .slick-slide.slick-center::after {
            content: url(../images/shape2.png);
            position: absolute;
            bottom: -90px;
            transform: scale(.2);
            right: -90px;
        }
        .slick-slide.slick-center::before {
            content: url(../images/shape1.png);
            position: absolute;
            top: -90px;
            transform: scale(.2);
            left: -90px;
        }
      
      
           #hero .hero_page  .left_side .Display_heading{
            font-size:54px !important;
         }
         #hero .hero_page  .left_side .Display_text{
            font-size: 20px !important; 
         }
         #contact .contact_form #message {
           padding:8px 0; 
        }
      
        .navbar-toggler{
            border: none !important;
            outline: none;
        }
        .navbar-toggler:focus{
            border: none !important;
            box-shadow: none !important;
            outline: none;
        }
  
        #hero .hero_page .left_side .content {
            margin-top: 200px;
        }
        #services .service_card {
            padding: 40px;
        }
        #services .service_card .card_img {
            height:100%;
            width: 100%;
        }
        #services .service_card .card-text {
          margin-top: 0px;
        }
        #services .service_card .card-body {
            padding:0 !important;
            gap: 24px;
            margin-top: 24px;
           margin-bottom: 24px;
            justify-content: unset;
        }
        #services .service_card .card-subtitle {
            font-size: 16px;
            margin-top:0px;
        }
        #services .service_card .card_btn {
            font-size: 16px;
        }
   
        #tour .heading {
            font-size: 40px;
            color: var(--primary-color);
            font-family: GothamBook;
            font-weight: 900;
        }
        
        footer {
            height: 254px;
        }
        #contact .heading {
            font-size: 40px;
        }
        #contact .contact_form label {
            font-size: 16px;
        }
  
         .button_group{
            align-items:start !important;
          }
        
        }
      

@media (min-width:768px) and (max-width:991px){
    .container {
        max-width: 720px !important;
    }
    #hero .hero_page .right_side {
        height: 25vh;
        pointer-events: none;
    }
    #hero .hero_page .left_side .Display_heading {
        font-size: 80px !important;
    }
    #hero .hero_page .right_side:before {
        top: -299px;
        left: 363px;
        scale: 0.8;
    }
    #hero .hero_page .right_side:after {
        bottom: 216px;
        right: 158px;
        scale: 0.8;
    }
} 


 
 @media (max-width:768px){
    #hero .hero_page .right_side .home_img {
        display: none;
    }
 #services .service_card .card-text ,footer .footer_content p,  #contact .contact_form .form-control ,.navbar .nav-item .nav-link ,label.error{
        font-size:14px !important;
    }
    #tour .heading{
        margin-bottom: 0 !important; 
    }
    #contact .contact_form .message_input, #contact .contact_form .email_input, #contact .contact_form .input_button {
        margin-top: 16px !important;
    }
footer {
    height: 254px;
}
#tour .tour_descriptions {
    gap: 12px !important;
}
.container {
    max-width: 640px !important;
    padding: 0 24px !important;
}

footer .footer_content {
    flex-direction: column;
    text-align: center !important;
    align-items: center !important;
    gap: 16px;
 }

 #hero .hero_page .left_side .content {
  margin-top: 0px;
}

#tour .tour_detials h6 {
    font-size: 14px;
}
#hero .hero_page .left_side{
    padding: 56px 0 !important;
}
#hero .hero_page .left_side{
    height: 100%;
}
}

 @media (min-width:320px) and (max-width:480px){
  
    #hero .hero_page .left_side .Display_text{
        font-size: 14px;
    }
    #tour {
        margin-top: 0;
      }
      #tour .heading {
          font-size: 40px;
          color: var(--primary-color);
          font-family: GothamBook;
          font-weight: 900;
      }
      #tour .tour_descriptions .border-right {
          border-right: 0px solid var(--secondary-color);
      }
      .content{
        text-align: start;
    }
      #tour .tour_detials {
          padding: 0;
      }
      #tour .tour_descriptions{
        flex-direction: column;
        gap: 32px !important;
            margin-top: 64px;
    }
    #hero .hero_page  .left_side .Display_heading{
        font-size:48px !important;
     }
     #hero .hero_page .left_side .Display_text , #services .service_card .card-text ,footer .footer_content p,  #contact .contact_form .form-control ,.navbar .nav-item .nav-link ,label.error{
        font-size:14px !important;
    }
  
    #hero .hero_page .left_side {
        height: 100%;
    } 
    #services .service_card .card_btn, .primary_btn, .secondary_btn {
        font-size: 14px;
      margin-top: 0;
        width: 160px;
        height: 58px;
    }
 
#services .service_card .card-title {
    font-size: 24px;
}
#services .heading {
    font-size: 34px;
}
.card_icon img{
    width: 48px;
}
#services .service_card {
    padding: 24px;
}
}

