

.web_site_menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
    position: absolute;
    right: 0px;
    width: 300px;
    top: 50px;
    border-radius: 4px;
    overflow: hidden;
    background: #1e1e1e;
    padding: 16px;
    transform-origin: top right!important;
}
.web_site_menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container ul li a,
.web_site_menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container ul li {
    border-radius: 4px;
    overflow: hidden;
    transition: 0.3s ease-in-out;
    color: #fff;
}
/* .web_site_menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container ul li{
    margin-bottom: 10px!important;
} */
.web_site_menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container ul li a:hover,
.web_site_menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container ul li.current_page_item a,
.web_site_menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container ul li:hover,
.web_site_menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container ul li.current_page_item {
    background: #0077B6!important;
}

/*contact form css added on 6 oct 2025*/
/* ====== Contact Form 7 custom form styling ====== */
/* Grid wrapper */
.contact-form-grid {
  max-width: 800px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  /* gap: 20px; */
}

/* Two-column row for first/last name */
.contact-form-grid .form-row.two-col {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

/* General row styling */
.contact-form-grid .form-row {
  width: 100%;
}

/* Field block */
.contact-form-grid .form-field {
  display: flex;
  flex-direction: column;
  width: 100%;
}

/* Hide default CF7 <br> tags */
.contact-form-grid br {
  display: none !important;
}

/* Labels */
.contact-form-grid .form-field label {
  font-size: 16px;
  font-weight: 400;
  margin-bottom: 8px !important;
  color: #404040;
}

/* Inputs & textarea */
.contact-form-grid .form-field input[type="text"], .contact-form-grid .form-field input[type="email"], .contact-form-grid .form-field textarea {
  width: 100%;
  padding: 10px 16px;
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  background-color: #f7f7f7;
  font-size: 14px;
  color: #404040;
  box-sizing: border-box;
  font-weight: 400;
  margin-top: 10px;
}

/* Textarea size */
.contact-form-grid .form-field textarea {
  min-height: 150px;
  resize: vertical;
}

/* Submit button */
.contact-form-grid .submit-button {
  background: linear-gradient(90deg, #00205b 0%, #00b3e3 100%);
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  padding: 14px 40px;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  display: inline-block;
  text-align: center;
  transition: background 0.3s ease, opacity 0.3s ease;
}

.contact-form-grid .submit-button:hover {
  opacity: 0.9;
}

/* Mobile responsiveness */
@media (max-width: 768px) {
  .contact-form-grid .form-row.two-col {
    grid-template-columns: 1fr;
  }
}
/* Style all phone and email links */
/* a[href^="tel:"],
a[href^="mailto:"] {
    color: #404040 !important;
    text-decoration: none !important;
} */
/*tab white background on hover added 8oct2025*/
/* Tab text padding and transition */
.my-tabs span.e-n-tab-title-text {
  padding: 5px 20px 8px 20px;
  transition: background-color 0.3s ease; /* smooth transition */
}

/* Hover effect */
.my-tabs span.e-n-tab-title-text:hover {
  background-color: #fff;
  color: #023E8A;
  border: none;
}

/* Active tab */
/* Active tab styling */
.my-tabs span.e-n-tab-title-text:active {
  background-color: white;
}
/* Active tab styling */
.my-tabs .e-n-tabs-heading .e-active span.e-n-tab-title-text {
  background-color: #fff;  /* same as hover */
  color: #023E8A;          /* same as hover text color */
  border: none;
}

/* css to change order of icon in news page for read more button 8oct2025*/
/* Only affects this read more item */
.read-more-btn {
  display: flex;
  align-items: center; /* vertical alignment */
}

.read-more-btn .elementor-icon-list-text {
  order: 1; /* text first */
  margin-right: 8px; /* spacing between text and icon */
}

.read-more-btn .elementor-icon-list-icon {
  order: 2; /* icon after text */
}

/*pagination as butttons for loop grid added 9oct2025*/
/* Container */
.sl_grp_archive_pagination .elementor-pagination {
  display: flex;
  align-items: center;
  margin-top: 20px;
  flex-wrap: nowrap;
}

/* Numbers (exclude prev/next) */
.sl_grp_archive_pagination .elementor-pagination .page-numbers:not(.prev):not(.next) {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: transparent; /* no hover color */
  color: #000;
  font-weight: 500;
  font-size: 16px;
  text-decoration: none;
  margin-right: 6px;
  transition: all 0.25s ease;
  order: 1; /* numbers first */
}

/* Remove hover background for numbers */
.sl_grp_archive_pagination .elementor-pagination .page-numbers:not(.prev):not(.next):hover {
  background: transparent;
  color: #000;
}

/* Active number gradient underline */
.sl_grp_archive_pagination .elementor-pagination .page-numbers.current {
  border-bottom: 2px solid;
  border-image-slice: 1;
  border-image-source: linear-gradient(83.94deg, #03045E -0.12%, #0096C7 99.51%);
  border-radius: 0; /* remove circle effect for underline */
}

/* Previous button */
.sl_grp_archive_pagination .elementor-pagination .page-numbers.prev {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  font-size: 0; /* hide text */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-left: auto; /* push buttons to right */
  order: 2; /* after numbers */
  transition: transform 0.2s ease, opacity 0.2s ease;
}

/* Next button */
.sl_grp_archive_pagination .elementor-pagination .page-numbers.next {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  /* height: 39px; */
  font-size: 0; /* hide text */
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-left: 10px; /* spacing between prev and next */
  order: 3;
  transition: transform 0.2s ease, opacity 0.2s ease;
}

/* Prev button SVG */
.sl_grp_archive_pagination .elementor-pagination .page-numbers.prev::before {
  content: "";
  display: inline-block;
  width: 44px;
  height: 44px;
  background-image: url('https://lime-okapi-830865.hostingersite.com/wp-content/uploads/2025/10/left_navigation-1.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* Next button SVG */
.sl_grp_archive_pagination .elementor-pagination .page-numbers.next::after {
  content: "";
  display: inline-block;
  width: 44px;
  height: 44px;
  background-image: url('https://lime-okapi-830865.hostingersite.com/wp-content/uploads/2025/10/right_navigation-1.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* Hover effect for buttons */
.sl_grp_archive_pagination .elementor-pagination .page-numbers.prev:hover::before,
.sl_grp_archive_pagination .elementor-pagination .page-numbers.next:hover::after {
  opacity: 0.8;
  transform: scale(1.1);
}
.blog-card {
  position: relative;
  overflow: hidden;
  border-radius: 12px;
  cursor: pointer;
  transition: transform 0.4s ease;
}

.blog-card:hover {
  transform: scale(1.03); /* subtle zoom on the whole card */
}

/* Image container */
/* .blog-card-image {
  position: absolute;
  inset: 0;
  z-index: 1;
} */
.blog-card-image {
  position: absolute;
  inset: 0;
  z-index: 3; /* higher than content */
}
.blog-card-content a {
  position: relative; /* ensures proper stacking */
  z-index: 10;        /* higher than image */
  pointer-events: auto;
}


.blog-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}

.blog-card:hover .blog-card-image img {
  transform: scale(1.1); /* zoom-in effect on image */
}

/* Content area */
.blog-card-content {
  position: relative;
  z-index: 10;
  padding: 20px;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
  background: linear-gradient(180deg, rgba(0,0,0,0) 40%, rgba(0,0,0,0.7) 100%);
}

/* /*blog sidebar cs added 11oct2025* */

/* Common style for categories and archives */
.sl_blog_categories_in_single {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 0;
  margin: 0;
}

.sl_blog_categories_in_single li {
  padding: 4px 8px; /* vertical + horizontal padding */
  background-color: #F2F2F2;
  border-radius: 6px;
  cursor: pointer;
  transition: background-color 0.3s ease, color 0.3s ease;
}

/* Target links inside the li */
.sl_blog_categories_in_single li a {
  color: #5F5F5F !important; /* default color */
  text-decoration: none !important; /* remove underline */
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 100%;
  letter-spacing: 0%;
  display: inline-block; /* ensures padding works nicely */
}

/* Hover effect for li */
.sl_blog_categories_in_single li:hover {
  background-color: #E0E0E0;
}

.sl_blog_categories_in_single li:hover a {
  color: #333333 !important; /* hover color for link */
}

/* Nested ul inside custom list */
.sl_blog_categories_in_single ul {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 0;
  margin: 0;
}
/* Headings for categories and archives */
/* H5 headings on blog detail page only */
/* H5 headings on blog detail page with custom class */
/* Target h5 inside Elementor kit with custom class */
.elementor-kit-10 h5 {
  font-family: "Plus Jakarta Sans", Sans-serif; /* replace Aboreto */
  font-size: 22px;
  font-weight: 600; /* SemiBold */
  color: #404040; /* or use your global color variable */
  line-height: 100%;
  letter-spacing: 0%;
  margin-bottom: 10px; /* spacing below heading */
}


/*lighbox icon adjustment*/
/* Base */
.elementor-lightbox .elementor-slideshow__footer,
.elementor-lightbox .elementor-slideshow__header {
  left: 0;
  padding: 15px 20px;
  position: absolute;
  transition: .3s;
  width: 97% !important;
}

/* For laptops and medium desktops: 1025px–1366px */
@media screen and (min-width: 1025px) and (max-width: 1367px) {
  .elementor-lightbox .elementor-slideshow__footer,
  .elementor-lightbox .elementor-slideshow__header {
    width: 96% !important;
  }
}

/* For tablets: 679px–1024px */
@media screen and (min-width: 679px) and (max-width: 1024px) {
  .elementor-lightbox .elementor-slideshow__footer,
  .elementor-lightbox .elementor-slideshow__header {
    width: 91% !important;
  }
}

/* For mobiles: 300px–700px */
@media screen and (min-width: 300px) and (max-width: 700px) {
  .elementor-lightbox .elementor-slideshow__footer,
  .elementor-lightbox .elementor-slideshow__header {
    width: 84% !important;
  }
}
/*15dec2025*/
.project-video-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 15px;
}
.video-card {
  position: relative;
  cursor: pointer;
}
.video-card img {
  width: 100%;
  display: block;
  border-radius: 8px;
}
/* .video-overlay {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 40px;
  color: white;
  background: rgba(0,0,0,0.4);
  opacity: 0;
  transition: opacity 0.3s;
  border-radius: 8px;
} */

.video-title { margin-top: 20px; text-align: center; font-weight: bold; }

/* Lightbox */
/* Lightbox container */
.video-lightbox {
  display: none;
  position: fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background: rgba(0,0,0,0.85);
  justify-content: center;
  align-items: center;
  flex-direction: column; /* column layout */
  z-index: 9999;
  padding: 20px;
}

.video-lightbox.active {
  display: flex;
}

/* Video inside lightbox */
#lightbox-video-container video,
#lightbox-video-container iframe {
  width: 90vw;
  max-width: 1200px;
  height: 70vh; /* increase height for better visibility */
  max-height: 800px;
  margin-bottom: 20px; /* spacing below video */
}

/* Title below video */
.lightbox-title {
  color: #fff;
  text-align: center;
  font-size: 22px;
  font-weight: 500;
  margin-bottom: 30px;
}

/* Arrow buttons */
.lightbox-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: none !important;
  color: #fff;
  border: none;
  font-size: 30px;
  width: 50px;
  height: 50px;
  cursor: pointer;
  z-index: 10;
  font-size: 18px !important;
}

.left-arrow {
  left: 20px;
  font-size: 30px !important;
}
.right-arrow { 
  right: 20px;
  font-size: 30px !important;
 }

.lightbox-arrow:hover {
  background: rgba(255,255,255,0.2);
}

/* Close button */
.video-lightbox .close {
  position: absolute;
  top: 20px;
  right: 20px;
  font-size: 35px;
  color: #fff;
  cursor: pointer;
  z-index: 10;
}
.video-lightbox .close {
  position: absolute;
  top: 20px;
  right: 20px;
  font-size: 40px;           /* bigger size */
  
  color: #ffffff;            /* ensure white on dark background */
  
  height: 50px;
  line-height: 50px;
  text-align: center;
  border-radius: 50%;        /* circle background */
  cursor: pointer;
  z-index: 10001;            /* above everything */
  transition: all 0.2s ease;
}



.project-video-gallery .swiper-pagination {
  display: flex;
  /* justify-content: center; */
  margin-top: 20px;
  flex-wrap: nowrap;
}



/* Next button SVG */
.swiper-button-next {
    background-image: url('https://lime-okapi-830865.hostingersite.com/wp-content/uploads/2025/10/right_navigation.svg');
}

/* Prev button SVG */
.swiper-button-prev {
    background-image: url('https://lime-okapi-830865.hostingersite.com/wp-content/uploads/2025/10/left_navigation.svg');
}

/* === Controls Row (Below the Slider) === */
.video-gallery-controls {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 25px;
  gap: 20px;
  flex-wrap: nowrap;
}

/* Pagination (Dots) */
.video-gallery-pagination {
  flex: 1;
  display: flex;
  justify-content: flex-start;
}

.video-gallery-pagination .swiper-pagination {
  position: static !important;
  display: flex !important;
  justify-content: flex-start;
  align-items: center;
  gap: 8px;
}

.video-gallery-pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background: #B7930580;
  border-radius: 50%;
  opacity: 1;
  transition: all 0.3s ease;
}



/* Arrows (Next/Prev) */
.video-gallery-navigation {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 12px;
}

.video-gallery-navigation .swiper-button-prev,
.video-gallery-navigation .swiper-button-next {
  position: static !important;
  width: 44px;
  height: 44px;
  text-indent: -9999px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  cursor: pointer;
  transition: all 0.25s ease;
}

.video-gallery-navigation .swiper-button-prev {
  background-image: url('https://lime-okapi-830865.hostingersite.com/wp-content/uploads/2025/10/left_navigation-1.svg');
}

.video-gallery-navigation .swiper-button-next {
  background-image: url('https://lime-okapi-830865.hostingersite.com/wp-content/uploads/2025/10/right_navigation.svg');
}

.video-gallery-navigation .swiper-button-prev:hover,
.video-gallery-navigation .swiper-button-next:hover {
  opacity: 0.8;
  transform: scale(1.1);
}

/* Responsive */
@media (max-width: 767px) {
  .video-gallery-controls {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 35px !important;
  }

  .video-gallery-pagination,
  .video-gallery-navigation {
    justify-content: center;
  }
  /* .left-arrow {
    left: -10px !important;
    font-size: 30px !important;
  }
  .right-arrow {
    left: -10px !important;
    font-size: 30px !important;
  } */
}
@media (min-width:768px) and (max-width:1024px) {
  .video-gallery-controls {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 35px !important;
    gap: 20px;
    flex-wrap: nowrap;
}
  
}
.swiper-pagination {
  position: absolute;
  text-align: left !important;
  transition: .3s opacity;
  transform: translate3d(0,0,0);
  z-index: 10;
}
.video-gallery-pagination .swiper-pagination-bullet-active {
  transform: scale(1.2);
  background-color: #B79305;
}
.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0px !important;
}

