@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');

* {
   margin: 0;
   padding: 0;
   box-sizing: border-box;
   font-family: "Roboto", sans-serif;
   text-decoration: none;
}

.container {
   max-width: 1140px;
   --bs-gutter-x: 1.5rem;
   --bs-gutter-y: 0;
   width: 100%;
   padding-right: calc(var(--bs-gutter-x)* .5);
   padding-left: calc(var(--bs-gutter-x)* .5);
   margin-right: auto;
   margin-left: auto;
}


/* Default styles for small screens */
.responsive-grid {
   display: grid;
   grid-template-columns: 1fr;
   /* 1 column by default on small screens */
   grid-gap: 1rem;
   /* Adjust gap between grid items */
}

/* For small screens (min-width: 576px) */
@media (min-width: 576px) {

   .container,
   .container-sm {
      max-width: 540px;
   }

   .responsive-grid {
      grid-template-columns: 1fr 1fr;
      /* 2 columns on small screens */
   }
}

/* For medium screens (min-width: 768px) */
@media (min-width: 768px) {

   .container,
   .container-md,
   .container-sm {
      max-width: 720px;
   }
}

/* For large screens (min-width: 992px) */
@media (min-width: 992px) {

   .container,
   .container-lg,
   .container-md,
   .container-sm {
      max-width: 960px;
   }

   .responsive-grid {
      grid-template-columns: repeat(3, 1fr);
      /* 3 columns on large screens */
   }
}


@media (min-width: 1200px) {

   .container,
   .container-lg,
   .container-md,
   .container-sm,
   .container-xl {
      max-width: 1140px;
   }
}

@media (min-width: 1400px) {

   .container,
   .container-lg,
   .container-md,
   .container-sm,
   .container-xl,
   .container-xxl {
      max-width: 1320px;
   }
}




.header-main-container {
   padding: 30px 0;
   background: #FFFFFF;
   background-color: #046bd2;

   .container {
      display: flex;
      justify-content: flex-start;
      align-items: flex-start;
      gap: 1rem;
      flex-direction: column;

      >* {
         width: 100%;
      }
   }
}

.container-authbar {
   display: flex;
   justify-content: end;
   align-items: center;
   gap: 0.75rem;

   a {
      color: #FFFFFF;
      font-size: 0.875rem;
   }
}



.container-main-wrapper {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 1rem;
}
   
 .site-brand {
      width: 150px;
}

    .site-brand  img {
         width: 100%;
      }
   

   .site-title {
      text-align: center;
      color: #FFFFFF;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 0.5rem;
      flex-direction: column;
}
      h1{
         font-size: 7rem;
         letter-spacing: 1px;
         font-family: Arial Black;
         font-weight: 500;
   }

      p {
         text-align: center;
         letter-spacing: 2px;
      }
   

   .site-contact {
      background-color: #000000;
      height: 30px;

      ul {
         list-style-type: none;
         color: #FFFFFF;
         display: flex;
         align-items: flex-start;
         justify-content: flex-start;
         gap: 0.5rem;
         flex-direction: column;

         li {
            &.big-one {
               font-size: 1.25rem;
               font-weight: 500;
            }
         }
      }
   }
}

.main-nav-bar {
   background: #4344452b !important;
   position: sticky;
   top: 0;
   z-index: 999;
   width: 100%;

   .container {
      ul {
         display: flex;
         align-items: center;
         justify-content: space-around;
         list-style-type: none;

         li {
            position: relative;
            padding-left: 10px;
            padding-right: 10px;

            &:hover {
               ul {
                  display: block;
               }
            }

            a {
               display: block;
               font-size: 15px;
               font-weight: 900;
               text-transform: uppercase;
               color: #626060;
               padding: 17px 0;
               transition: all 0.3s ease;
               cursor: pointer;

               &:hover {
                  color: #0390fc;
               }
            }

            ul {
               display: none;
               position: absolute;
               top: 100%;
               left: 50%;
               transform: translateX(-50%);
               box-shadow: 0 0 1rem rgba(0, 0, 0, 0.125);

               li {
                  a {
                     text-align: center;
                     display: block;
                     font-size: 14px;
                     font-weight: 400;
                     text-transform: uppercase;
                     color: #000;
                     padding: 17px 0;
                     transition: all 0.3s ease;
                     cursor: pointer;
                     background-color: #FFFFFF;
                     min-width: 160px;

                     &:hover {
                        color: #000;
                     }
                  }
               }
            }
         }
      }

      .menu-open {
         display: none;
         width: fit-content;
         margin: auto;
         background-color: transparent;
         border: none;
         outline: none;
         cursor: pointer;

         i {
            font-size: 1.5rem;
            color: #fff;
            background: transparent;
            padding: 17px 0;
         }
      }

      .menu-close {
         display: none;
      }
   }
}



@media screen and (max-width: 1200px) {
   .container-main-wrapper {
      .site-brand {
         width: 100px;
      }

      .site-title {
         h1 {
            font-size: 3rem;
            letter-spacing: 30px;
         }

         p {
            text-align: center;
            letter-spacing: 0px;
         }
      }

      .site-contact {
         ul {
            li {
               font-size: 0.875rem;

               &.big-one {
                  font-size: 1rem;
               }
            }
         }
      }
   }
}

/*Updated 27-11-24*/
.drp-cus {
   width: 100%;
   height: 50px;
}


@media screen and (max-width: 991px) {
   .container-main-wrapper {
      .site-brand {
         width: 100px;
      }

      .site-title {
         h1 {
            font-size: 2.5rem;
            letter-spacing: 15px;
         }

         p {
            font-size: 0.875rem;
         }
      }
   }
}

@media screen and (max-width: 768px) {
   .container-main-wrapper {
      flex-direction: column;

      .site-brand {
         width: 120px;
      }

      .site-title {
         h1 {
            font-size: 2.5rem;
            letter-spacing: 15px;
         }

         p {
            font-size: 0.875rem;
         }
      }

      .site-contact {
         ul {
            width: 100%;

            li {
               width: 100%;
               text-align: center;
               font-size: 0.875rem;
            }
         }
      }
   }

   .main-nav-bar {
      .container {
         position: relative;

         &.active {
            ul {
               left: 0;
            }

            .menu-close {
               display: flex;
            }
         }

         ul {
            transition: left 0.3s linear;
            position: fixed;
            top: 0;
            left: -100%;
            width: 100vw;
            height: 100vh;
            overflow: hidden;
            background: #fff;
            color: #000;
            flex-direction: column;
            justify-content: flex-start;
            align-items: flex-start;
            padding: 50px 20px 0;

            li {
               a {
                  color: #000;
               }

               ul {
                  display: none;
                  position: relative;
                  top: 0;
                  left: 0;
                  transform: translateX(0);
                  width: fit-content;
                  height: auto;
                  overflow: hidden;
                  background: transparent;
                  padding: 0;
                  color: #000;
                  box-shadow: none;

                  li {
                     a {
                        min-width: fit-content;
                     }
                  }
               }
            }
         }

         .menu-open {
            display: block;
         }

         .menu-close {
            position: fixed;
            z-index: 9;
            margin: auto;
            background-color: transparent;
            border: none;
            outline: none;
            cursor: pointer;
            top: 10px;
            left: 50%;
            transform: translateX(-50%);
            width: 40px;
            height: 40px;
            border: 1px solid rgba(0, 0, 0, 0.125);
            display: none;
            align-items: center;
            justify-content: center;
            border-radius: 50%;

            i {
               font-size: 1rem;
               color: #000;
               background: transparent;
               padding: 17px 0;
            }
         }
      }
   }
}

@media screen and (max-width: 576px) {
   .container-main-wrapper {
      flex-direction: column;

      .site-brand {
         width: 90px;
      }

      .site-title {
         none h1 {
            font-size: 2.5rem;
            letter-spacing: 15px;
         }

         p {
            font-size: 0.875rem;
         }
      }

      .site-contact {
         ul {
            width: 100%;

            li {
               width: 100%;
               text-align: center;
               font-size: 0.875rem;
            }
         }
      }
   }
}

.row {
   position: relative;
}

.fixed-sidebar {
   /* positon: relative; */
   position: sticky;
   top: 1px;
   height: fit-content;

   .right_side_area {}

   .btn-coustom {
      height: 100px;
      background-color: #3abd3a;
   }
}

/*update 27-11-24*/

.image-container{
    h1 {
      margin: 0.5rem 0;
      padding: 1rem;
      text-transform: capitalize;
      display: flex;
      align-items: center;
      justify-content: space-between;
      font-size: 1rem;
      background-color: #fff;

      span {
         font-size: 0.875rem;
      }
   }

   .container-img ,
      img {
         width: 100%;
         height:200px;
      }
   
}


.artcle-containers-custom {
   margin: 2rem 0 3.5rem;

   header h1 {
      font-size: 28px;
   }

   /* Grid setup for .band with .card-item-main */
   .band:has(.card-item-main) {
      display: grid;
      grid-template-columns: 1fr;
      grid-template-rows: auto;
      grid-gap: 20px;

      /* 2 columns for screens 480px and above */
      @media (min-width: 30em) {
         grid-template-columns: 1fr 1fr;
      }

      /* 3 columns for screens 960px and above */
      @media (min-width: 60em) {
         grid-template-columns: repeat(3, 1fr);
      }
   }

   /* Style for paragraphs within .band */
   .band>p {
      width: 100%;
      padding: 1rem !important;
      background-color: #fff;
      display: block;
   }

   /* Card styles */
   .card {
      background-color: white;
      text-decoration: none;
      color: #444;
      box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
      display: flex;
      flex-direction: column;
      min-height: 100%;
      position: relative;
      top: 0;
      transition: all 0.1s ease-in;

      &:hover {
         top: -2px;
         box-shadow: 0 4px 5px rgba(0, 0, 0, 0.2);
      }

      article {
         padding: 20px;
         flex: 1;
         display: flex;
         flex-direction: column;
         justify-content: space-between;
      }

      h1 {
         font-size: 20px;
         margin: 0;
         color: #333;
      }

      p {
         flex: 1;
         line-height: 1.4;
      }

      span {
         font-size: 12px;
         font-weight: bold;
         color: #999;
         text-transform: uppercase;
         letter-spacing: 0.05em;
         margin-top: 2em;
      }

      .thumb {
         height: 200px;
         background-size: cover;
         background-position: center;
      }
   }

   /* Specific style for .item-1 */
   .item-1 {
      @media (min-width: 60em) {
         grid-column: 1 / span 2;

         h1 {
            font-size: 24px;
         }
      }
   }
}