@font-face {
  font-family: 'Noto Sans';
  src: url('/fonts/Noto_Sans/NotoSans-Italic-VariableFont_wdth,wght.ttf') format('ttf'),
       url('/fonts/Noto_Sans/NotoSans-VariableFont_wdth,wght.ttf') format('ttf');
  font-weight: normal;
  font-style: normal;
}

html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

/*.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}*/

html {
  position: relative;
  min-height: 100%;
  line-height:1.15;
  /*font-family: 'Noto Sans', sans-serif !important; ;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0, 0, 0, 0)*/
  font-family: "Noto Sans", sans-serif;
  -webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0, 0, 0, 0)
}

.project-title { position: absolute; top: 20px; left:20px; margin: 0; font-size: 1.25rem;}
.project-title a {text-decoration: none !important; color: #4d4d4d !important; box-shadow: none !important;}
.project-title a:hover {color: #35a825 !important;}


body {
  padding-top: 50px;
  /*margin-bottom: 60px;*/
  overflow-x: hidden;
  color: #4d4d4d !important;
  line-height: 1.7;
  font-family: "Noto Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 16px;
}

#mainBannerCarousel {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  width: 100vw;
}
.newbanner{
  position: relative;
  display: flex;
  height: 65vh;
  /*background: url('/icons/banner1.png') no-repeat center center;*/
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-color: rgba(245, 245, 248, 0.55);
  /*background-color: rgba(245, 245, 248, 0.95);*/
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  justify-content: center;
  align-items: center;
  text-align: center;
  overflow: hidden;
}
.newbanner::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.2);
  /*background: rgba(244, 241, 241, 0.514);*/
  z-index: 1;
  pointer-events: none;
}

/* .newbanner .content {
  position: relative;
  z-index: 2;
  max-width: 800px;
  padding: 1.5rem;
  border-radius: 0.75rem;
  background: rgba(255, 255, 255, 0.5);
  backdrop-filter: blur(6px);
} */
.banner-text-area{
  background: rgba(244, 241, 241, 0.788);
}
.newbanner h1, .newbanner span {
  text-shadow: 0 1px 3px rgba(255, 255, 255, 0.25);
}
.banner-content {
  position: absolute;
  max-width: 800px;
  padding: 25px 15px;
  border-radius: 0.75rem;
  background: rgba(255, 255, 255, 0.6);
  backdrop-filter: blur(6px);
  z-index: 2;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);
}
.banner-text-one-line{
  white-space: nowrap;
}
.banner-text-position-center {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}
.banner-text-position-left {
  top: 50%;
  left: 5%;
  transform: translateY(-50%);
  text-align: left;
}
.banner-text-position-right {
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
  text-align: right;
}
.carousel-inner {
  overflow: hidden;
}
.carousel-indicators [data-bs-target] {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: #999;
  margin: 0 5px;
  opacity: 0.6;
}
.carousel-indicators {
  position: absolute;
  bottom: 5px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
  margin: 0;
}
.carousel-indicators .active {
  background-color: #4caf50;
  opacity: 1;
}
.carousel-control-next-icon {
  display: none !important;
}
.carousel-item {
  transition: opacity 1s ease-in-out;
}

@media (max-width: 768px) {
  .newbanner {
    height: auto;
    min-height: 55vh;
    padding: 80px 15px 30px; /* top padding to clear the header */
    background-position: center;
    background-size: cover;
  }

  .banner-content {
    position: static !important;        /* disables absolute positioning */
    transform: none !important;         /* removes centering shift */
    margin: 0 auto;
    padding: 20px 15px;
    text-align: center;
    background: rgba(255, 255, 255, 0.75);
    backdrop-filter: blur(4px);
    border-radius: 0.75rem;
    max-width: 90%;
  }

  .newbanner h1 {
    font-size: 1.5rem;        /* smaller for mobile */
    line-height: 1.3;
    margin-bottom: 10px;
    white-space: normal;      /* allow line wrap */
  }

  .banner-text-one-line {
    white-space: normal !important;     /* override forced no-wrap */
  }

  .newbanner span {
    font-size: 1rem;
    display: inline;
  }

  .btn.btn-w160 {
    margin-top: 15px;
    font-size: 0.95rem;
    width: auto;
    padding: 10px 20px;
  }
}


/*
.mybanner {
  position: relative;
  background: url('/icons/banner2.png') no-repeat center center;
  background-size: cover;
  height: 65vh;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  overflow: hidden; 
  padding: 0; 
  width: 100%;
}
.mybanner::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(244, 241, 241, 0.73); 
  z-index: 1;
  pointer-events: none;
}
.mybanner .content {
  position: relative;
  z-index: 2;
  max-width: 800px;
}
@media (max-width: 768px) {
  .container.mybanner {
    height: 30vh;
  }
}
  */


button {
  outline: none !important;
  box-shadow: none !important;
}
button:focus {
  outline: none !important;
  box-shadow: none !important;
}

.btn {display: inline-block;font-weight: 400;text-align: center;white-space: nowrap;vertical-align: middle;
  -webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none; border: 1px solid transparent; padding: 0.375rem 0.75rem; font-size: 1rem; line-height: 1.5; border-radius: 0.25rem;
  -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; 
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  -o-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  text-shadow: none !important;
}
.btn {border-radius: 10px; border-color: #ccc; }

.btn-w120{min-width: 120px;}
.btn-w160{min-width: 160px;}

.btn-primary-fill{color: #fff!important; background-color: #117d02!important; border-color: #117d02!important; border-width: 2px; transition: transform 0.2s ease;}
.btn-primary-fill:hover{color:#fff!important;background-color:#35a825!important;border-color: #35a825!important;}
.btn-primary-fill:active{color:#fff!important;background-color:#35a825!important;border-color:#35a825!important; transform: scale(0.95, 0.95);}
/*    background-color: #f4f5f5bd; color: #117d02 !important;*/
.btn-primary{color: #fff!important; background-color: transparent!important; border-color: #117d02!important; border-width: 2px; transition: transform 0.2s ease;}
.btn-primary:hover{color:#fff!important;background-color:#f4f5f5bd!important; color: #117d02!important;border-color: #117d02!important; border-width: 2px;}
.btn-primary:active{color:#fff!important;background-color:#f4f5f5bd!important;color: #117d02!important;border-color:#117d02!important; border-width: 2px; transform: scale(0.95, 0.95);}

.btn-primary-orng-fill{color: #fff!important; background-color: #ff9a42!important; border-color: #ff9a42!important; border-width: 2px; transition: transform 0.2s ease;}
.btn-primary-orng-fill:hover{color: #fff!important; background-color: #f28c28!important; border-color: #f28c28!important; }
.btn-primary-orng-fill:active{color: #fff!important; background-color: #f28c28!important; border-color: #f28c28!important; transform: scale(0.95, 0.95);}

.btn-primary-orng{color: #fff!important; background-color: transparent!important; border-color: #f28c28!important; border-width: 2px; transition: transform 0.2s ease;}
.btn-primary-orng:hover{color: #fff!important; background-color: #ff9a42!important; border-color: #ff9a42!important; border-width: 2px;}
.btn-primary-orng:active{color: #fff!important; background-color: #ff9a42!important; border-color: #ff9a42!important; border-width: 2px; transform: scale(0.95, 0.95);}

.text-white {color: #fff!important;}
.text-orng {color: #f28c28!important;}
.text-primary {color: #117d02 !important;}
.text-blue {color: #246180 !important;}
.font-weight-bold {font-weight: 600 !important;}
.font-more2 {color: #7d7d7d !important;}
.text-black {color: #4d4d4d !important;}

h1 span { font-size: 32px; }
h2 {font-weight: 500; color: #117d02 !important;}
h3 {padding-bottom: 20px; color: #246180 !important;}
h4 {font-size: 22px; font-weight: 400;}
h5 {color: #246180 !important;}

.company-name{font-size: 30px!important;}

a {
  padding: 5px 15px !important;
  color: #4d4d4d !important;
  display: inline-block;
  text-decoration: none !important;
  box-shadow: none !important;  /* !IMPORTANT Blue border Appears around a from  /lib/bootstrap/scss/mixins/_gradients.scss and /lib/bootstrap/scss/mixins/_buttons.scss*/
}
a:hover {color: #35a825 !important;}
a:visited {color: #35a825;}
.menu-text{font-weight: 400;}

.grey-bckg {background-color: rgba(245, 245, 248, 0.95);padding-bottom: 15px;border-radius: 10px;}
.lgreen-bckg {background-color: rgba(119, 191, 109, 0.09);padding-bottom: 15px;border-radius: 10px;}
/*.green-bckg {padding: 15px; background-color: rgba(105, 119, 104, 0.09); border:1px solid #e6e9e6  !important; border-radius: 10px; transition: transform 0.2s ease; min-height: 360px;}*/
.green-bckg {padding: 15px; border:1px solid #c0bbbb  !important; border-radius: 10px; transition: transform 0.2s ease; min-height: 360px;}


.sect {margin: 5px;}

/* .icon-container {
  position: relative;
  display: flex;
  align-items: center;
} 
  
.icon-container img {margin-right: 15px;}

.icon-container span {flex: 1;}*/

.icon-container {
  gap: 15px;
  display: flex;
  align-items: center;
  min-height: 64px;
}
.icon-container .text {
  flex: 1;
  line-height: 20px;
  display: flex;
  align-items: center;
}
.icon-container img {width: 32px; height: auto; flex-shrink: 0;}
.img-high{height: 250px; padding: 20px;}

.nopadding{padding: 0 !important;}
.margin-b20{margin-bottom: 20px !important;}
.margin-b60{margin-bottom: 60px !important;}
.margin-b90{margin-bottom: 90px !important;}
.margin-t20{margin-top: 20px !important;}
.margin-t10{margin-top: 10px !important;}
.margin-r15{margin-right: 15px !important;}
.padding-l20{padding-left: 20px;}
.padding-t20{padding-top: 20px !important;}
.padding-b0{padding-bottom: 0px !important;}
.padding-b40{padding-bottom: 40px !important;}
.margin-b0{margin-bottom: 0px !important;}
.item-details{padding-top: 30px; padding-left: 25px; padding-bottom: 0px; margin-bottom: 0 !important;}
.site-section-paging{margin-top: 25px !important;  margin-bottom: 20px !important;}
.price-padding{padding-right: 10px !important; padding-left: 10px !important;}
.dropdown-custom-s1{margin-right: 15px;}
.dropdown-custom-style {
  min-width: 70px !important;
  margin-top: 0px !important;
  padding: 0 0 !important;
  border: 1px solid #ccc;
  border-radius: 10px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.dropdown-custom-style-a {background-color: transparent !important; border: 0px solid rgba(0, 0, 0, 0);}
.dropdown-item { display: flex; align-items: center; gap: 10px; /* Space between flag and text */ padding: 10px 15px; /* Better spacing for a polished look */}
.dropdown-item:hover { background-color: #f0f0f0; /* Subtle hover effect */}
.dropdown-toggle { display: flex; align-items: center; gap: 10px; /* Space between flag and text */}
.dropdown-toggle::after { margin-left: auto; /* Keep arrow aligned to the right */}
.dropdown-toggle:hover {color: #35a825 !important;}

.headsup-text {
  display: none;
}

#toggle-headsup:checked ~ .headsup-text {
  display: block;
}

.cursor-pointer {
  cursor: pointer;
}


/* Remove background and shadow, add soft hover */
.custom-faq-button {
  background-color: transparent !important;
  box-shadow: none;
  padding-left: 0;
  padding-right: 0;
  transition: background-color 0.2s ease-in-out !important;
  margin-right: 15px !important;
}

.custom-faq-button::before {
  content: '';
  display: inline-block;
  width: 15px;
}

/* Add hover effect */
.custom-faq-button:hover {
  background-color: #f8f9fa !important; /* Light grey */
  color: inherit;
}

/* Remove blue focus ring */
.custom-faq-button:focus {
  box-shadow: none;
  outline: none;
}

.custom-faq-button:not(.collapsed) {
  background-color: transparent;
  color: #198754;
  box-shadow: none;
}

/* Collapse border control */
.accordion-item {
  border-color: #dee2e6 !important;
}

/* Arrow stays green when expanded */
.custom-faq-button:not(.collapsed)::after {
  filter: brightness(0) saturate(100%) invert(39%) sepia(72%) saturate(536%) hue-rotate(88deg) brightness(89%) contrast(85%);
}

/* Optional: smooth rotation */
.custom-faq-button::after {
  transition: transform 0.2s ease-in-out;
}

.custom-rounded {
  border-radius: 1rem !important;
  border: 1px solid rgba(0, 0, 0, 0.05);
}



.footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  white-space: nowrap;
  line-height: 60px;
}