/*
 Theme Name:     Divi Child
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         Elegant Themes
 Author URI:     https://www.elegantthemes.com
 Template:       Divi
 Version:        1.0.0
*/
 
 
/* =Theme customization starts here
------------------------------------------------------- */
html, body {
	overflow-x: hidden !important;
}
@media (min-width: 1440px) {
	.et_pb_row {
		max-width: 1320px !important;
	}
}
@media (min-width: 1600px) {
	.et_pb_row {
  		max-width: 1440px !important;
	}
}
.forminator-module-edit-link, .forminator-edit-module {
    display: none !important;
}
.forminator-ui {
	margin: 20px 0 0 !important;
}
.custombullet ul li {
	padding-left: 0;
	list-style:none;
}
.custombullet ul li::before {
	content: '\45'; /* or \35 or \24 */
	display: inline-block;
	font-family:'ETmodules';
	font-size: 1em;
	vertical-align: middle;
	margin-left: -1em;
	width: 1em;
}
.custombullet ul li::after {
	margin-right: 0;
	padding-right: 0;
}
@media all and (max-width: 980px) {
	.et_section_specialty.custom_row .et_pb_row,
	.custom_row {
		display: -webkit-box;
		display: -moz-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.first-on-mobile {
		-webkit-order: 1;
		order: 1;
	}
	.second-on-mobile {
		-webkit-order: 2;
		order: 2;
	}
	.third-on-mobile {
		-webkit-order: 3;
		order: 3;
	}
	.fourth-on-mobile {
		-webkit-order: 4;
		order: 4;
	}
}
.footicons {
	width: 32px;
	margin-right: 8px;
}
.et_pb_accordion_item.et_pb_toggle_open .et_pb_toggle_title:after {
	display: block;
	content: "\f068" !important;
	font-family: 'FontAwesome' !important;
	font-size: 18px !important;
	position: absolute;
    right: -3px;
    top: 0;
}
.et_pb_toggle.et_pb_module.et_pb_accordion_item.et_pb_toggle_close .et_pb_toggle_title:before {
	display: block;
	content: "\f067" !important;
	font-family: 'FontAwesome' !important;
	font-size: 18px !important;
}
#et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before,
.et_pb_module.et_pb_menu .et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before {
	content: '\4d';
}
ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
ul.et_mobile_menu li.page_item_has_children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.page_item_has_children .mobile-toggle {
	width: 44px;
	height: 100%;
	padding: 0px !important;
	max-height: 44px;
	border: none;
	position: absolute;
	right: 0px;
	top: 0px;
	z-index: 999;
	background-color: transparent;
}
ul.et_mobile_menu>li.menu-item-has-children,
ul.et_mobile_menu>li.page_item_has_children,
ul.et_mobile_menu>li.menu-item-has-children .sub-menu li.menu-item-has-children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.menu-item-has-children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.page_item_has_children,
.et-db #et-boc .et-l ul.et_mobile_menu>li.menu-item-has-children .sub-menu li.menu-item-has-children {
	position: relative;
}
.et_mobile_menu .menu-item-has-children>a,
.et-db #et-boc .et-l .et_mobile_menu .menu-item-has-children>a {
	background-color: transparent;
}
ul.et_mobile_menu .menu-item-has-children .sub-menu,
#main-header ul.et_mobile_menu .menu-item-has-children .sub-menu,
.et-db #et-boc .et-l ul.et_mobile_menu .menu-item-has-children .sub-menu,
.et-db #main-header ul.et_mobile_menu .menu-item-has-children .sub-menu {
	display: none !important;
	visibility: hidden !important;
}
ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
#main-header ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
.et-db #et-boc .et-l ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
.et-db #main-header ul.et_mobile_menu .menu-item-has-children .sub-menu.visible {
	display: block !important;
	visibility: visible !important;
}
ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle {
	text-align: right;
	opacity: 1;
	z-index: 99;
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: transparent;
}
ul.et_mobile_menu li.menu-item-has-children .mobile-toggle:focus,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle:focus {
	background-color: transparent !important;
	background: transparent !important;
}
ul.et_mobile_menu li.menu-item-has-children .mobile-toggle::after,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle::after {
	top: 10px;
	position: relative;
	font-family: "ETModules";
	content: '\33';
	color: #EC2E35;
	background: #fff;
	border-radius: 50%;
	padding: 3px;
}
ul.et_mobile_menu li.menu-item-has-children.dt-open>.mobile-toggle::after,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children.dt-open>.mobile-toggle::after {
	content: '\32';
}
@media screen and (min-height: 480px) {
	.fixed-crop-image {
	  height: 100%;
	  overflow: hidden;
	}
	.fixed-crop-image .et_pb_image_wrap {
	  height: 100%;
	  display: block;
	}
	.fixed-crop-image img {
	  height: 100%;
	  width: 100%;
	  object-fit: cover;
	  display: block;
	}
}
.ondesks {
	top: 1px;
	position: relative;
}
@media screen and (min-width: 981px) {
    .onmobs {
        display: none !important;
    }
}
@media screen and (max-width: 980px) {
    .ondesks {
        display: none !important;
    }
}
.servicesblurb .et_pb_module_header {
	padding-bottom: 0px !important;
}
.servicesblurb .et_pb_blurb_container {
	padding-left: 7px !important;
}
.bulletcustom ul {
  padding-left: 5px;
  margin: 5px 0 0 !important;
}
.bulletcustom ul li {
	list-style: none;
	padding-bottom: 8px;
	margin-bottom: 8px;
	border-bottom: 1px solid #ddd;
	padding-left: 25px !important;
}
.bulletcustom ul li::before {
    content: " ";
    display: inline-block;
    width: 20px;
    height: 20px;
    background-image: url(/wp-content/uploads/bullet.png);
    margin-right: 8px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    top: 5px;
	margin-left: -29px;
    position: relative;
}
.bulletcustomwhite ul {
  padding-left: 5px;
  margin: 5px 0 0 !important;
}
.bulletcustomwhite ul li {
	list-style: none;
	padding-bottom: 13px;
	margin-bottom: 13px;
	border-bottom: 1px solid rgba(255,255,255,0.2);
	padding-left: 25px !important;
}
.bulletcustomwhite ul li::before {
    content: " ";
    display: inline-block;
    width: 20px;
    height: 20px;
    background-image: url(/wp-content/uploads/bulletwhite.png);
    margin-right: 8px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    top: 5px;
	margin-left: -29px;
    position: relative;
}
.tablerespons {
  min-height: 0.01%;
  overflow-x: auto;
}
.tablerespons table tr th:first-child,
.tablerespons table tr td:first-child,
.tablerespons table tr th:nth-child(2),
.tablerespons table tr td:nth-child(2)  {
	min-width: 200px;
	border-right: 1px solid #eee;
}
.tablerespons table tr td,
.tablerespons table tr th {
	padding: 15px 20px;
}
.tablerespons table tr th {
	background: #003e7e;
	color: #fff !important;
	font-size: 22px;
	font-weight: 700;
}
@media screen and (max-width: 767px) {
  .tablerespons {
    width: 100%;
    margin-bottom: 15px;
    overflow-y: scroll;
     scrollbar-width: thin; 
	  scrollbar-color: #e86d1f #e86d1f; 
	}
	.tablerespons::-webkit-scrollbar {
	  width: 10px;
	}
	.tablerespons::-webkit-scrollbar-track {
	  background: #e86d1f;
	}
	.tablerespons::-webkit-scrollbar-thumb {
	  background-color: #888;
	  border-radius: 5px;
	}
	.tablerespons::-webkit-scrollbar-thumb:hover {
	  background: #555;
	}
}
.disable-menu-item {
	display: none !important;
}



/* Left Menu Styling - Full Height Flex Setup */
.custom-tab-menu {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 500px; /* Matches right image container height */
  background: #f7f7f7;
  border-radius: 0px;
  overflow: hidden;
}

.custom-tab-menu p {
  padding: 0 !important;
  margin: 0 !important;
  flex: 1; /* Assigns equal vertical space to every p block */
  width: 100%;
  height: 100%;
  display: flex;
  align-items: stretch; /* Stretches the button inside to fill 100% height */
}

.custom-tab-menu .tab-btn {
  background: transparent;
  border: none;
  border-bottom: 1px solid #e5e5e5 !important;
  padding: 0 24px;
  text-align: left;
  font-size: 16px;
  color: #333333;
  cursor: pointer;
  outline: none;
  box-shadow: none;
  transition: all 0.3s ease;
  width: 100%;
  font-weight: 600;
}

.custom-tab-menu p:last-child .tab-btn {
  border-bottom: none !important;
}

.custom-tab-menu .tab-btn:hover,
.custom-tab-menu .tab-btn.active {
  background: #ffffff;
  color: #003e7e;
}

/* Container Sizing */
.divi-hover-bg-wrapper {
  position: relative;
  width: 100%;
  height: 500px;
  overflow: hidden;
  border-radius: 0px;
}

/* Base style for all background layers */
.hover-bg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transform: scale(1);
  transition: opacity 0.4s ease-in-out, transform 0.5s ease-out;
  pointer-events: none;
  z-index: 1;
}

/* Default Image Visible */
.hover-bg.bg-default {
  opacity: 1;
}

/* Vertical Line Grid & Accordion Columns */
.grid-triggers {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  z-index: 5;
}

.col-trigger {
  flex: 1;
  height: 100%;
  border-right: 1px solid rgba(255, 255, 255, 0.4);
  cursor: pointer;
  transition: flex 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  z-index: 6;
}

.col-trigger:last-child {
  border-right: none;
}

/* Accordion Line Shift on Column Hover */
.grid-triggers:hover .col-trigger {
  flex: 0.8;
}

.grid-triggers .col-trigger:hover {
  flex: 1.6;
}

/* Pure CSS Hover Transitions */
.grid-triggers:hover .bg-default {
  opacity: 0;
}

.col-trigger-1:hover ~ .bg-hover-1,
.col-trigger-2:hover ~ .bg-hover-2,
.col-trigger-3:hover ~ .bg-hover-3,
.col-trigger-4:hover ~ .bg-hover-4 {
  opacity: 1;
  transform: scale(1.04);
}

/* Floating Card Overlay */
.tab-card-content {
  position: absolute;
  top: 30px;
  right: 30px;
  z-index: 10;
  pointer-events: none;
}

.card-inner {
  background: #ffffff;
  padding: 24px 32px;
  border-radius: 12px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
  pointer-events: auto;
}

.card-inner h3 { margin: 0 0 8px 0; font-size: 18px; color: #333333; }
.card-inner h2 { margin: 0; font-size: 38px; color: #1b834e; font-weight: 700; }
.card-inner p { margin: 4px 0 0 0; font-size: 12px; color: #777777; letter-spacing: 1px; }

/* Floating Card Overlay & Typography */
.tab-card-content {
  position: absolute;
  top: 30px;
  right: 30px;
  z-index: 10;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

.card-inner {
  background: #ffffff;
  padding: 24px 32px;
  border-radius: 12px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
  pointer-events: auto;
  min-width: 200px;
}

/* Card inner styles */
.card-inner .card-title {
  margin: 0 0 8px 0;
  font-size: 18px;
  color: #333333;
  font-weight: 600;
}

.card-inner .card-value {
  margin: 0;
  font-size: 38px;
  color: #003e7e;
  font-weight: 700;
  line-height: 1.2;
}

.card-inner .card-unit {
  margin: 6px 0 0 0;
  font-size: 12px;
  color: #777777;
  letter-spacing: 1px;
}

.card-inner .production-details p {
  margin: 4px 0 !important;
  padding: 0 !important;
  font-size: 15px;
  color: #333333;
}

.card-inner .production-details strong {
  color: #003e7e;
}
@media (max-width: 980px) {
	.custom-tab-menu {
		min-height: auto;
	}
	.custom-tab-menu .tab-btn {
		padding: 15px 24px;
	}
}