 * {
   font-family: "Roboto", sans-serif;
 }

 a {
   color: white;
   text-decoration: none;
 }

 a:hover {
   color: white;
   text-decoration: none;
 }

 h1,
 h2,
 .font-weight-bold {
   font-weight: 700 !important;
 }

 h3,
 h4,
 .font-weight-semi-bold {
   font-weight: 600 !important;
 }

 h5,
 h6,
 .font-weight-medium {
   font-weight: 500 !important;
 }

 .btn {
   font-family: "Merienda", cursive;
 }

 .btn-square {
   width: 36px;
   height: 36px;
 }

 .btn-sm-square {
   width: 28px;
   height: 28px;
 }

 .btn-lg-square {
   width: 46px;
   height: 46px;
 }

 .btn-square,
 .btn-sm-square,
 .btn-lg-square {
   padding-left: 0;
   padding-right: 0;
   text-align: center;
 }

 .btn-icon {
   width: 77px;
   height: 77px;
   display: flex;
   align-items: center;
   justify-content: center;
   flex-shrink: 0;
 }


 .logo_name {
   color: #cd012d;
 }

 .cstm_nav_design {
   border-bottom: 3px solid #cd012d;

 }

 .cstm_btn {
   position: relative;
   overflow: hidden;
   background-color: #cd012d;
   color: white;
   border: none;
   font-weight: 500;
   transition: color 0.3s ease;
   z-index: 1;
 }

 .cstm_btn::before {
   content: '';
   position: absolute;
   top: 0;
   left: -100%;
   width: 100%;
   height: 100%;
   background-color: #970021;
   z-index: -1;
   transition: left 0.4s ease;
 }

 .cstm_btn:hover::before {
   left: 0;
 }

 .cstm_btn:hover {
   color: #fff;
 }


 .navbar-light .navbar-nav .nav-link {
   font-family: "Merienda", cursive;
   padding: 30px 15px;
   font-size: 18px;
   font-weight: 500;
   color: #120F2D;
   outline: none;
 }

 .navbar-light .navbar-nav .nav-link:hover,
 .navbar-light .navbar-nav .nav-link.active {
   color: #cd012d !important;
 }

 .nav-link.active {
   color: #cd012d !important;
   font-weight: bold;
 }

 .call_btn {
   background-color: #cd012d;
   color: #fff;
 }

 .call_btn:hover {
   background-color: #fff;
   color: #cd012d;
 }

 @media (max-width: 991.98px) {
   .navbar-light .navbar-nav .nav-link {
     padding: 10px 15px;
   }
 }

 /* hero section start  */
 .cstm_bg_hero {
   background-image: url('../img/hero_bg_1.webp');
   background-repeat: no-repeat;
   background-size: cover;
   background-position: center;
   color: white;
   display: flex;
   align-items: center;
   padding: 130px 0;
   position: relative;
   z-index: 1;
   min-height: 80vh;
   text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.6);
 }

 .cstm_bg_hero::after {
   content: "";
   position: absolute;
   top: 0;
   left: 0;
   height: 100%;
   width: 100%;
   background-color: rgba(0, 0, 0, 0.4);
   z-index: 2;
 }

 .cstm_bg_hero>* {
   position: relative;
   z-index: 3;
 }

 .cstm_bg_hero h1,
 .cstm_bg_hero h4,
 .cstm_bg_hero p {
   font-family: "Roboto", sans-serif;
 }

 .cstm_bg_hero h4 {
   font-size: 1.25rem;
 }

 .cstm_bg_hero h1 {
   font-size: clamp(2rem, 6vw, 5rem);
   /* responsive font size */
   font-weight: 700;
 }

 .cstm_bg_hero p {
   font-size: 1rem;
   line-height: 1.6;
   max-width: 600px;
 }

 @media (max-width: 426px) {
   .hero_content {
     display: none;
   }

   .cstm_bg_hero {
     min-height: 34vh;
   }

   .cstm_bg_hero::after {
     min-height: 34vh;
   }
 }

 @media (max-width: 768px) {
   .cstm_bg_hero {
     padding: 30px 0;
     text-align: center;
   }

   .cstm_bg_hero h1 {
     font-size: 2rem;
   }

   .cstm_bg_hero p {
     font-size: 0.95rem;
     margin: 0 auto;
   }
 }

 /* hero section end */


 /* about section start  */
 .cstm_about_img {
   /*border: 5px solid #cd012d;*/
   width: auto;
   height: auto;
   object-fit: cover;
   transition: transform 0.3s ease;
 }

 .cstm_about_img:hover {
   transform: scale(1.03);
 }

 .about_content h2 {
   font-size: 40px;
   color: #cd012d;
 }




 /* about section end */


 /* contact form start  */
 .contact-section {
   margin: 60px auto;
   background: #fff;
   border-radius: 40px;
   overflow: hidden;
   box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
 }

 .contact-left {
   background-color: #970021;
   color: white;
   padding: 50px 30px;
 }

 .contact-left h3 {
   font-weight: bold;
   margin-bottom: 30px;
 }

 .contact-left p {
   margin: 15px 0;
   font-size: 15px;
 }

 .contact-left i {
   margin-right: 10px;
 }

 .contact-right {
   padding: 50px 30px;
 }

 .contact-right h4 {
   margin-bottom: 30px;
   font-weight: 600;
   color: #333;
 }

 .cstm_contact_icon {
   background-color: #fff;
   padding: 10px 13px;
   font-size: 22px;
   border-radius: 30px;
   color: #cd012d;
 }

 .cstm_contact_icon2 {
   background-color: #fff;
   padding: 10px;
   font-size: 22px;
   border-radius: 30px;
   color: #cd012d;
 }

 @media (max-width: 768px) {
   .contact-section {
     flex-direction: column;
   }
 }

 /* contact form end  */


 /* counter start  */

 .count {
   font-family: 'Josefin Sans', sans-serif;
   font-size: 40px;
   font-weight: bold;
 }

 .counter-wrapper {
   background: #333;
   background-image: url('../img/about-2.webp');
   background-size: cover;
   background-repeat: no-repeat;
   background-position: center center;
   position: relative;
 }

 .counter-wrapper:after {
   content: '';
   position: absolute;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   background: rgba(0, 0, 0, .8);
 }

 .counter-inner {
   position: relative;
   z-index: 2;
 }

 .count-icon {
   font-size: 48px;
 }


 /* counter end */

 /* why choose us start  */
 .cstm_choose_img {
   width: 90%;
   height: 600px;
   object-fit: cover;
 }
 @media (max-width: 426px) {
   .cstm_choose_img {
   height: 370px;
 }
 }

 /* why choose us end  */

 /* back to top button start  */
 #backToTop {
   position: fixed;
   bottom: 40px;
   right: 30px;
   display: none;
   z-index: 99;
   background-color: #cd012d;
   /* Your color */
   border: none;
   color: white;
   padding: 12px 18px;
   border-radius: 50%;
   font-size: 18px;
   transition: all 0.3s ease-in-out;
   box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
 }

 #backToTop:hover {
   transform: scale(1.1);
   background-color: #970021;
 }


 /* back to top button end  */