/*
Theme Name: Haukes Labour N.V.
Description: The Haukes Labour N.V. theme is a custom job board and career platform built for internal and external hiring needs.
Author: Haukes Labour
Version: 1.0.0
Requires PHP: 7.2
Tested up to: 6.9
Requires at least: 5.0
Text Domain: haukes-labour
License: GNU General Public License v3 or later
License URI: http://www.gnu.org/licenses/gpl-3.0.html
*/

:root {
  --first-color: #47694c;
}





/* ==========================================================================
   GLOBAL FORM & ACCENT COLORS
   ========================================================================== */
input[type="checkbox"],
input[type="radio"],
input[type="range"],
progress {
  accent-color: var(--first-color);
}

.form-control:focus,
.jvm-form-control:focus,
select:focus,
input:focus,
textarea:focus,
.jvm-sort-select:focus,
.jvm-per-page-select:focus {
  outline-color: var(--first-color) !important;
  border-color: var(--first-color) !important;
  box-shadow: 0 0 0 0.2rem rgba(71, 105, 76, 0.25) !important;
}

.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
  -webkit-transition: none;
  -moz-transition: none;
  -o-transition: none;
  transition: none;
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-weight: 600;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

#content[tabindex="-1"]:focus {
  outline: 0;
}

body {
  font-family: "Poppins", sans-serif !important;
  color: #222D3F;
  margin: 0;
  background: #FFFFFF;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: #222D3F;
  font-weight: bold;
  font-family: "Poppins", sans-serif !important;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

a {
  color: var(--first-color);
  -webkit-transition: color .1s linear;
  -moz-transition: color .1s linear;
  -o-transition: color .1s linear;
  transition: color .1s linear;
  text-decoration: none;
}

#content a:not([class*="button"]):not([class*="btn"]) {
  color: var(--first-color);
}

a:hover,
a:focus {
  color: var(--first-color);
  text-decoration: none;
}

.wp-block-button.is-style-squared .wp-block-button__link {
  border-radius: 0 !important;
}

.wp-block-button__link {
  color: #fff !important;
}

.wp-block-button.is-style-outline .wp-block-button__link {
  border: 2px solid #001025;
  color: #001025 !important;
}

.post-single a,
.page-single a,
.sidebar-area .textwidget a,
.comment-content a,
.woocommerce-product-details__short-description a,
#tab-description a,
.extra-home-content a {
  text-decoration: underline;
  color: var(--first-color);
}

/* ===============================================
   Post Format
   ============================================= */

.entry-video iframe {
  width: 100%;
}

/* ===============================================
   LOGO BOX
   ============================================= */
/*img.custom-logo {
  height: 70px;
  width: 70px;
}*/
.logo {
  padding: 14px 0;
  font-weight: bold;
}

.logo a {
  font-family: Inter;
  font-size: 22px;
  font-weight: 700;
  line-height: 20px;
  color: #ffffff;
}

a.account-box {
  font-family: Inter;
  font-weight: 400;
  font-size: 12px;
  color: #FFFFFF;
}

a.account-box i {
  font-size: 18px;
}

.logo span {
  display: block;
  font-size: 15px;
  line-height: 18px;
  color: #ffffff;
  font-weight: 300;
}

.button-header a {
  background: var(--first-color);
  padding: 10px 20px;
  border-radius: 5px;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  display: inline-block;
}

p.info-button a {
  background: var(--first-color);
  padding: 10px 20px;
  font-weight: 500;
  font-size: 14px;
  border-radius: 5px;
  color: #ffffff;
}

p.info-button a:hover {
  color: var(--first-color);
  background: #ffffff;
}

.header-outter {
  position: relative;
  z-index: 2;
  width: 100%;
  background: #000000;
  transition: transform 0.7s ease !important;
}

.page-template-frontpage .header-outter {
  position: absolute;
  background: transparent;
}

.header-outter>.container.py-2 {
  height: 85px;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.header-outter>.container.py-2>.row {
  height: 100%;
  align-items: center;
}

.header-middle {
  background: #F0F4DA;
}

.social-links {
  font-family: Public Sans;
  font-size: 15px;
  font-weight: 400;
  color: #FFFFFF;
  line-height: 20px;
  transition: all 0.4s ease-in-out;
}

.social-links:hover {
  color: var(--first-color);
  transform: translateY(-2px);
}

.contact-box i {
  color: #ffffff;
  font-size: 18px;
}

.nav-box a i,
.offcanvas-div i {
  color: #ffffff;
}

.offcanvas {
  background: #fff3e2;
}

.admin-bar .offcanvas-header {
  margin-top: 32px;
}

.offcanvas-header {
  justify-content: right
}

.offcanvas-div .offcanvas-header .btn-close {
  background-color: var(--first-color);
  border-radius: 0;
  padding: 16px !important;
}

.offcanvas-div .offcanvas-header .btn-close {
  padding: 5px 12px;
  opacity: 1;
  height: auto;
  width: auto;
}

/**
====================================================================
  Navigation
====================================================================
*/
.top-menu-wrapper {
  padding: 10px 0;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.main-navigation ul .menu-item.menu-item-has-children a,
.main-navigation ul .page_item.page_item_has_children a {
  position: relative;
}

.main-navigation .menu>li i,
.menu li i {
  font-size: 10px;
}



/* Make text change to theme color on hover */
.main-navigation .menu>li>a:hover,
.main-navigation .menu>li>a:focus {
  color: var(--first-color) !important;
}

/* 
.main-navigation li.current_page_item>a:after,
.main-navigation li.current-menu-item>a:after {
  content: "";
  position: absolute;
  bottom: -8px;
  left: 0px;
  width: 100%;
  margin: 0 auto;
  right: 0px;
  background: var(--first-color);
  height: 4px;
}
*/

.main-navigation ul li a {
  text-transform: capitalize;
  color: #fff;
}

.main-navigation ul .menu-item.menu-item-has-children .sub-menu a:after,
.main-navigation ul .page_item.page_item_has_children .children a:after {
  content: none;
}

.main-navigation .menu ul {
  margin-bottom: 0px;
  padding: 0px;
}

.main-navigation .menu li {
  display: inline;
  position: relative;
  list-style: none;
}

.top-menu-wrapper ul {
  gap: 5px 40px;
  display: inline-flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}

.main-navigation .menu>li>a,
.page_item a {
  display: inline-block;
  font-size: 15px;
  font-weight: 600;
}

#site-navigation .page_item_has_children ul li a,
#site-navigation .main-navigation .menu .menu-item-has-children ul li a {
  font-size: 14px;
  position: relative;
  display: block;
  color: var(--first-color);
  text-align: left;
  padding: 12px 20px !important;
  line-height: 22px;
  font-weight: 500;
}

#site-navigation .menu ul.sub-menu li a,
#site-navigation .menu ul.children li a {
  line-height: 1.5;
}

nav#site-navigation {
  padding: 0;
}

.main-navigation ul.sub-menu>li>a,
.main-navigation ul.children>li>a {
  position: relative;
  z-index: 1;
  overflow: hidden;
  display: block;
  transition: color 0.3s ease;
}

.main-navigation ul.sub-menu>li>a::before,
.main-navigation ul.children>li>a::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background-color: var(--first-color);
  color: #fff;
  z-index: -1;
  transition: left 0.4s ease;
}

.main-navigation ul.sub-menu>li>a:hover::before,
.main-navigation ul.sub-menu>li>a:focus::before,
.main-navigation ul.children>li>a:hover::before,
.main-navigation ul.children>li>a:focus::before {
  left: 0;
}

.main-navigation ul.sub-menu>li>a:hover,
.main-navigation ul.sub-menu>li>a:focus,
.main-navigation ul.children>li>a:hover,
.main-navigation ul.children>li>a:focus {
  color: #fff !important;
}

.main-navigation .menu,
.main-navigation .menu ul {
  display: flex;
  gap: 5px 35px;
  flex-wrap: wrap;
}

div#mySidenav {
  display: inline-flex;
}

.main-navigation .menu>li,
.main-navigation .menu li {
  display: inline;
  position: relative;
}

.main-navigation .menu>li>a:hover {
  color: var(--first-color);
}

.main-navigation .sub-menu,
.main-navigation .children {
  background-color: #ffffff;
  list-style: none;
  padding-left: 0;
  position: absolute;
  opacity: 0;
  left: -9999px;
  z-index: 99999;
  width: 200px !important;
  border: none;
}

.main-navigation ul.sub-menu.dropdown-menu {
  border: none;
  border-radius: unset;
}

.main-navigation .sub-menu>li>a:hover,
.main-navigation .sub-menu>li>a:focus,
.main-navigation .children>li>a:hover,
.main-navigation .children>li>a:focus {
  background: #000;
  color: #fff;
}

.main-navigation .sub-menu li ul.sub-menu,
.main-navigation .children li ul.children {
  left: 200px !important;
  top: -1px !important;
}

.main-navigation .sub-menu>li,
.main-navigation .children>li {
  display: block;
  float: none;
  position: relative;
  width: 100%;
}

.main-navigation .sub-menu>li.menu-item-has-children .submenu-expand,
.main-navigation .children>li.page_item_has_children .submenu-expand {
  display: inline-block;
  position: absolute;
  width: calc(24px + 1rem);
  right: 0;
  top: calc(.125 * 1rem);
  bottom: 0;
  color: white;
  line-height: 1;
  padding: calc(.5 * 1rem);
}

.main-navigation .sub-menu>li.menu-item-has-children .submenu-expand,
.main-navigation .children>li.page_item_has_children .submenu-expand {
  margin-right: 0;
}

.main-navigation .sub-menu>li>a,
.main-navigation .sub-menu>li>.menu-item-link-return,
.main-navigation .children>li>.menu-item-link-return {
  color: #000;
  display: block;
  padding: 14px;
  font-weight: 400;
}

.main-navigation .sub-menu>li>.menu-item-link-return,
.main-navigation .children>li>.menu-item-link-return {
  width: 100%;
  font-size: 22px;
  font-weight: normal;
  text-align: left;
}

.main-navigation .sub-menu>li>a:empty,
.main-navigation .children>li>a:empty {
  display: none;
}

.main-navigation .sub-menu>li.mobile-parent-nav-menu-item,
.main-navigation .children>li.mobile-parent-nav-menu-item {
  display: none;
  font-size: 0.88889em;
  font-weight: normal;
}

.main-navigation .sub-menu>li:last-child,
.main-navigation .children>li:last-child {
  border-bottom: none;
}

.toggle-nav,
a.closebtn {
  display: none;
}

.sub-menu span.dashicons.dashicons-arrow-down-alt2 {
  position: absolute;
  top: 10px;
  right: 0;
}

.main-navigation .dashicons-arrow-down-alt2:before {
  content: "\f347";
  font-size: 15px;
  color: #fff;
}

.children.dropdown-menu span.dashicons.dashicons-arrow-down-alt2 {
  position: absolute;
  top: 10px;
  right: 0;
}

/* ===============================================
   POST BOX
   ============================================= */

.post-box {
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 10px;
  padding: 10px;
}

.post-thumbnail {
  line-height: 0;
}

h3.post-title a {
  font-size: 20px;
  text-transform: capitalize;
  font-weight: 500;
}

.post-content p {
  color: #222D3F;
  font-weight: 500;
  font-size: 18px;
}

.post-content {
  word-wrap: break-word;
}

.post-meta i {
  color: var(--first-color);
}

.post-meta span {
  text-decoration: none;
  text-transform: capitalize;
  font-size: 15px;
  font-weight: 500;
  color: #000;
}

pre {
  display: block;
  padding: 9.5px;
  margin: 0 0 10px;
  font-size: 13px;
  line-height: 1.42857143;
  color: #000000;
  white-space: break-spaces;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 4px;
}

.post-content img,
.post-thumbnail img,
.post-content iframe,
.post-content object,
.post-content embed {
  max-width: 100%;
}

.layout-img img {
  max-height: 100%;
  height: 300px;
  width: 100%;
  object-fit: cover;
  border-radius: 10px;
  background: #dfdcdc;
}

.sidebar-area img {
  height: auto;
  width: auto;
}

.post-content {
  color: #3c3c3c;
}

.post-content:after {
  content: "";
  display: table;
  clear: both;
}

#content,
footer {
  float: left;
  width: 100%;
}

.post-meta.my-3 {
  display: flex;
  justify-content: start;
  border-radius: 4px;
  gap: 50px;
}

.post-meta a {
  color: #000;
}

.more-btn i {
  font-size: 15px;
  margin-left: 10px;
}

.blog-grid-layout .post-meta {
  gap: 20px;
}

/*
===================================================================================
    02. Related post CSS
===================================================================================
*/

.related-post-item h4.post-title {
  word-wrap: break-word;
}

/* ===============================================
  Slider
  ============================================= */
p.slider-text {
  color: #585858;
  font-size: 14px;
  font-weight: 400;
}

.form-box {
  position: relative;
  bottom: 15%;
  z-index: 1;
  background: #ffffff;
  padding: 5px 5px;
  width: 100%;
  border: 1px solid #F1F1F1;
  margin: 0 auto;
  border-radius: 5px;
}

.form-box select,
.form-box input,
.form-box button,
.form-box select,
.form-box optgroup,
.form-box textarea {
  width: 100%;
  padding: 4px 10px;
  border: 0px;
  background: #ffffff;
  margin-bottom: 15px;
  color: #8E9AA6;
  font-size: 12px;
  font-weight: 500;
  margin-bottom: 0px;
}

.form-box input {
  border-right: 1px solid #F1F1F1 !important;
}

.form-box input:last-child {
  border-right: 0px;
}

.form-box textarea {
  height: 30px;
}

.form-box p {
  display: flex;
  gap: 20px;
  justify-content: right;
  align-items: center;
}

.form-box input.wpcf7-form-control.wpcf7-submit.has-spinner:hover {
  background: #ffffff;
  color: #1F1B1C;
}

.form-box .wpcf7-form-control-wrap {
  width: 30%;
}

.form-box input.wpcf7-form-control.wpcf7-submit.has-spinner {
  width: 10%;
  padding: 10px 10px;
  border: 0px;
  background: var(--first-color);
  margin-bottom: 0px;
  color: #FFFFFF;
  border-radius: 5px;
  font-size: 15px;
  font-weight: 500;
}

.form-box p,
.form-box form {
  margin: 0px !important;
}

.form-box .wpcf7-spinner {
  position: absolute;
}

.slider-owl-position {
  position: absolute;
  left: 15%;
  right: 15%;
  top: 50%;
  transform: translateY(-50%);
  text-align: center;
}

.slider-owl-position h3 {
  font-weight: 700;
  font-size: 45px;
  color: #FFFFFF;
}

.slider-owl-position p {
  font-weight: 400;
  font-size: 16px;
  line-height: 18px;
  color: #FFFFFF;
}

.slider-button.mb-0 {
  display: flex;
}

/* Style the custom button to exactly match the search box button by default */
.slider-button-wrap .theme-button {
  background: var(--first-color, #0056b3);
  color: #fff !important;
  border: none;
  border-radius: 6px;
  font-weight: 600;
  transition: all 0.3s ease;
}

.slider-button-wrap .theme-button:hover,
.form-box .jvm-btn-search:hover {
  background: #212121 !important;
  filter: none !important;
  color: #fff !important;
}

.slider-button a:hover {
  background: #1F1B1C;
  color: #ffffff;
}

.offcanvas-div button {
  background-color: transparent;
  color: #fff;
  border: none;
}



button.owl-dot span {
  width: 25px;
  height: 25px;
  margin: 0px 6px;
  border-radius: 30px;
  display: block;
  background: transparent;
  border: 1px solid #1F1B1C;
}

.owl-dots {
  text-align: center;
  position: absolute;
  margin: 0 auto;
  left: 0px;
  right: 0px;
  width: 10%;
}

button.owl-dot.active span {
  background: var(--first-color);
  border: 0px;
  width: 26px;
  height: 26px;
}

.slider-inner-banner {
  position: relative;
  background: #000000;
  overflow: hidden;
  flex: 1 1 auto;
}

.slider {
  position: relative;
}

/* ===============================================
   Feature Header Image
   ============================================= */

.feature-header {
  position: relative;
  background-color: #000;
  overflow: hidden;
  min-height: 300px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.feature-header img {
  width: 100%;
  height: 125% !important;
  object-fit: cover;
  opacity: 0.4;
  will-change: transform;
  position: absolute;
  top: -12.5%;
  left: 0;
}

/* Ensure header banner content remains white */
.feature-header h1,
.feature-header h2,
.feature-header h3,
.feature-header p,
.feature-header a,
.feature-header .feature-header-title,
.feature-header .feature-header-subtitle,
.bread_crumb,
.bread_crumb a {
  color: #ffffff !important;
}

/* Ensure slider content remains white by default */
.slider-box h3,
.slider-box p.content {
  color: #ffffff !important;
}

h1.post-title.feature-header-title {
  color: #ffffff !important;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  word-break: break-word;
}

.header-text-overlay h1.post-title.feature-header-title {
  position: relative;
  top: auto;
  left: auto;
  transform: none;
  margin: 0 auto 15px auto;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.6);
  text-transform: uppercase;
  font-size: 45px;
  font-weight: 800;
}

.header-text-overlay .feature-header-subtitle {
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.6);
  font-weight: 500;
}

/* ===============================================
  Latest Update Section
  ============================================= */

.service-icon img {
  height: 200px;
  width: 100%;
}

.ser-content h4 a {
  color: #1B1C1E;
  font-size: 15px;
  font-weight: 400;
  line-height: 23.8px;
}

.categories-heading h4 {
  color: #000000;
  font-weight: 700;
  font-size: 28px;
  line-height: 30.26px;
  text-align: center;
}

.categories-heading h5 {
  font-family: "Croissant One", serif;
  color: #D9DCDF;
  font-weight: 400;
  font-size: 45px;
  position: absolute;
  top: 0px;
  line-height: 20px;
  z-index: 1;
}

.categories-heading {
  position: relative;
}

.categories-heading h4 span.highlight {
  color: var(--first-color);
}

.rental-button {
  position: absolute;
  left: 0px;
  bottom: 0px;
  width: 90px;
  height: 55px;
  text-align: center;
  background: #fff;
}

.rental-button a i {
  transform: rotate(-39deg);
  color: var(--first-color);
  font-size: 25px;
}

.rental-button a {
  border: 2px solid var(--first-color);
  width: 83px;
  height: 48px;
  position: relative;
  display: flex;
  margin-top: 7px;
  bottom: 0px;
  flex-direction: column;
  justify-content: space-around;
}

.rental-button a:hover {
  background: var(--first-color);
}

.rental-button a:hover i {
  color: #ffffff;
}

#google_language_translator .skiptranslate.goog-te-gadget {
  display: block !important;
}

.rental-image img {
  height: 300px;
  width: 100%;
  object-fit: cover;
}

/*.rental-owl-position {
  position: absolute;
  top: 8%;
  left: 7%;
  right: 5%;
}*/
.rental-image {
  text-align: center;
}

.rental-image span {
  color: var(--first-color);
  font-size: 55px;
  display: inline;
}

.rental-box {
  position: relative;
  border: 1px solid #DFDFDF;
  border-radius: 10px;
  text-align: center;
  padding: 35px 15px 25px 15px;
}

.rental-owl-position h3 a {
  color: #222222;
  font-weight: 500;
  font-size: 18px;
  line-height: 22px;
}

.rental-owl-position h6 {
  color: #797979;
  font-weight: 500;
  font-size: 16px;
  line-height: 20px;
}

.cat-box .owl-nav {
  position: absolute;
  display: flex !important;
  bottom: 50px;
  left: -40px;
  top: 50%;
  right: -66px;
  z-index: -1;
  width: 105%;
  justify-content: space-between;
  align-items: center;
  transform: translateY(-50%);
}

.cat-box {
  position: relative;
}

button.owl-prev.disabled {
  position: relative;
  left: 0px;
}

.cat-box .owl-nav i {
  background: #000000;
  width: 40px;
  height: 40px;
  text-align: center;
  padding: 12px 0;
  border-radius: 30px;
  color: #fff;
}

.cat-box .owl-nav i:hover {
  background: var(--first-color);
}

.cat-box button.owl-prev {
  margin-right: 10px;
}

/* ===============================================
   HEADER SEARCH
   =============================================== */
.search-form {
  display: none;
  position: absolute;
  top: 50px;
  /* Adjust as needed */
  right: 0;
  background: #fff;
  padding: 20px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

.search-form.active {
  display: block;
}

.close-search-form {
  background: none;
  border: none;
  font-size: 20px;
  cursor: pointer;
  position: absolute;
  top: 10%;
  right: 4%;
  background: var(--first-color);
  color: #fff;
  width: 45px;
  height: 45px;
}

.header-search i {
  font-size: 18px;
  cursor: pointer;
  color: #ffffff;
}

.header-search .search-form {
  position: fixed;
  top: 0;
  right: -100%;
  width: 100%;
  height: 100%;
  padding: 0;
  z-index: 1001;
  visibility: hidden;
  -webkit-transition-property: all, -webkit-transform;
  transition-property: all, transform;
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  -webkit-transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
  transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
  background: rgba(255, 255, 255, 0.98) none repeat;
  border: none !important;
}

.header-search .search-form.is-open {
  right: 0;
  height: 100%;
  visibility: visible;
}

.header-search .search-form.is-open form {
  position: absolute;
  width: 100%;
  top: 50%;
  transform: translateY(-50%);
  padding: 0 50px;
}

.header-search .search-form a.close-search-form {
  top: 50px;
  position: absolute;
  margin-left: -13px;
  left: 50%;
}

.header-search .search-form i.searchform-close-button {
  font-size: 25px;
  color: #616161 !important;
  opacity: 0;
  -webkit-transition: transform .2s linear;
  -moz-transition: transform .2s linear;
  -o-transition: transform .2s linear;
  transition: transform .2s linear;
}

.header-search .search-form.is-open i.searchform-close-button {
  opacity: 1;
}

.header-search .search-form.is-open i.searchform-close-button:hover {
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
}

.contact-box {
  gap: 20px;
}

/* ===============================================
   Cart & checkout
   ============================================= */

.wp-block-woocommerce-cart .wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button,
.wc-block-components-totals-coupon__button {
  background: var(--first-color);
  color: #fff !important;
  text-decoration: none !important;
  border-radius: 10px;
  border: none !important;
  padding: 10px;
  border: 2px solid transparent;
  width: 50%;
}

.wc-block-cart__submit-container a {
  font-size: 15px;
  font-weight: 600;
}

.wp-block-woocommerce-cart .wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover {
  border: 2px solid #fff;
  background: #000;
  color: #fff !important;
}

.wp-block-woocommerce-cart .wc-block-cart-items,
.wp-block-woocommerce-cart-order-summary-block,
.wp-block-woocommerce-checkout-order-summary-block {
  border: 1px solid #dee2e6 !important;
  padding: 10px;
  border-radius: 10px;
}

.wp-block-woocommerce-cart .wc-block-cart-items__header-image,
.wc-block-cart-items__header-total {
  padding: 10px !important;
}

.wp-block-woocommerce-cart .wc-block-cart .wc-block-cart__submit-container {
  margin-top: 20px;
}

.wp-block-woocommerce-cart .wc-block-components-product-badge {
  background: var(--first-color);
  color: #fff !important;
  padding: 10px !important;
  margin-bottom: 5px;
  margin-top: 5px;
}

a.wc-block-components-product-name,
.wc-block-components-product-name {
  font-size: 22px !important;
  color: #000 !important;
  text-decoration: none !important;
}

.wc-block-components-order-summary-item__quantity {
  background-image: linear-gradient(90deg, #fb6d21 0%, #eb343b 100%) !important;
  color: #fff !important;
  border: none !important;
  box-shadow: none !important;
}

.wc-block-components-sidebar-layout .wc-block-components-main {
  padding-right: 0% !important;
}

.wp-block-woocommerce-cart.alignwide,
.wp-block-woocommerce-checkout.alignwide.wc-block-checkout {
  margin-right: auto !important;
  margin-left: auto !important;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-components-totals-item__label,
.wc-block-components-totals-item__value,
.wc-block-components-product-metadata .wc-block-components-product-metadata__description>p,
.is-medium table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total .wc-block-components-formatted-money-amount,
.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input,
.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button,
.wc-block-components-quantity-selector,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link,
.wc-block-components-product-price__value.is-discounted,
del.wc-block-components-product-price__regular {
  color: #000 !important;
}

.wc-block-components-totals-wrapper:after {
  border-color: #000 !important;
}

tbody.wc-block-cart-items {
  border: 1px solid #000;
  border-radius: 30px;
}

.wc-block-components-product-metadata .wc-block-components-product-metadata__description>p,
button.wc-block-cart-item__remove-link {
  font-size: 16px !important;
}

.is-medium table.wc-block-cart-items .wc-block-cart-items__row {
  grid-template-columns: 270px 47px !important;
  padding: 16px 16px !important;
}

.wp-block-woocommerce-cart .wc-block-components-product-badge {
  display: none;
}

.wp-block-woocommerce-cart .wc-block-cart__submit-button:hover {
  border: unset !important;
}

a.components-button.wc-block-components-button.wp-element-button.wc-block-cart__submit-button.contained {
  text-decoration: none;
}

.wc-block-components-button:not(.is-link) {
  padding: 0px !important;
}

.wc-block-components-sidebar,
.wc-block-components-sidebar-layout .wc-block-components-main {
  width: 100% !important;
}

.wc-block-components-sidebar-layout.wc-block-checkout.is-large {
  flex-flow: column !important;
  flex-direction: column-reverse !important;
}

.is-large .wc-block-checkout__sidebar.is-sticky {
  position: relative !important;
  top: 0px !important;
}

/* ===============================================
   Scroll
   ============================================= */

.scroll-up {
  position: fixed;
  bottom: 12px;
  right: 30px;
  z-index: 999;
}

.scroll-up a {
  background: var(--first-color);
  color: #000;
}

.scroll-up a:hover {
  background: #0d0d0d;
  color: #fff;
}

.scroll-up a {
  display: block;
  height: 2.5rem;
  width: 2.5rem;
  text-align: center;
  line-height: 2;
  font-size: 1.25rem;
  color: #fff;
  opacity: 1;
  transition: all 0.3s ease 0s;
  box-shadow: 0 0 10px rgb(0 0 0 / 20%);
}

.scroll-up span {
  top: 7px;
  position: absolute;
  left: 7px;
  font-size: 25px;
  font-weight: 600;
}

/*===============================================
   PRELOADER
=============================================== */

.cssloader {
  padding-top: calc(45vh - 25px);
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background: #212121;
  z-index: 99999;
}

.sh1 {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 50px 50px 0 0;
  border-color: #354952 transparent #ffffff transparent;
  margin: 0 auto;
  animation: shk1 1s ease-in-out infinite normal;
}

.sh2 {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 50px 50px;
  border-color: transparent transparent var(--first-color) transparent;
  margin: -50px auto 0;
  animation: shk2 1s ease-in-out infinite alternate;
}

/** animation starts here **/
@keyframes shk1 {
  0% {
    transform: rotate(-360deg);
  }

  100% {}
}

@keyframes shk2 {
  0% {
    transform: rotate(360deg);
  }

  100% {}
}

.lt {
  color: #fff;
  margin: 30px auto;
  text-align: center;
  font-weight: 100;
  letter-spacing: 10px;
}

/*--------------------------------*/
.loader-main {
  position: relative;
  width: 110px;
  height: 110px;
  margin: 0 auto;
}

.triangle35b {
  position: absolute;
  transform-origin: bottom center;
  left: 0;
  top: 0;
  margin: 0;
  width: 110px;
  height: 55px;
  clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
  animation: animTriangle35b 3s linear infinite;
}

@keyframes animTriangle35b {

  0%,
  14% {
    transform: rotate(calc(0deg + var(--angle)));
  }

  25%,
  39% {
    transform: rotate(calc(90deg + var(--angle)));
  }

  50%,
  64% {
    transform: rotate(calc(180deg + var(--angle)));
  }

  75%,
  89% {
    transform: rotate(calc(270deg + var(--angle)));
  }

  100% {
    transform: rotate(calc(360deg + var(--angle)));
  }
}

.triangle35b:nth-child(1) {
  --angle: 0deg;
  background: var(--first-color);
  animation-delay: 0.4s;
}

.triangle35b:nth-child(2) {
  --angle: 90deg;
  background: #fff;
  animation-delay: 0.2s;
}

.triangle35b:nth-child(3) {
  --angle: 180deg;
  background: var(--first-color);
}

.loader-site-title {
  position: absolute;
  top: calc(50vh + 100px);
  /* Increased spacing to 100px and locked to center */
  left: 50%;
  transform: translateX(-50%);
  font-weight: 900;
  font-size: 24px;

  /* Glowing Shine Effect */
  background: linear-gradient(to right, #ffffff 30%, var(--first-color) 50%, #ffffff 70%);
  background-size: 200% auto;
  color: #ffffff;
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  background-clip: text;
  animation: textShine 4s linear infinite;

  letter-spacing: 3px;
  text-transform: uppercase;
  margin: 0;
  text-align: center;
}

@keyframes textShine {
  to {
    background-position: -200% center;
  }
}

/* ===============================================
 sticky header
 =============================================== */

.fixed-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
  background: #fff;
}

.admin-bar .sticky-header.fixed-header {
  margin-top: 32px;
}

/* ===============================================
 STICKY POST
 =============================================== */

.post-box.sticky {
  border-radius: 10px;
  border: 1px solid rgba(0, 0, 0, 0.125);
}

h3.post-title {
  position: relative;
}

.sticky h3.post-title::before {
  content: '\f08d';
  font-family: "Font Awesome\ 5 Free";
  font-size: 25px;
  font-weight: 900;
  color: #000;
  margin-top: 10px;
  z-index: 9;
  left: -30px;
  position: absolute;
  bottom: 0px;
}

.sticky h3.post-title {
  margin-left: 30px;
}

/* ===============================================
   Pagination
   ============================================= */

.pagination,
.job-listing-pagination {
  margin: 25px 0;
}

.pagination .nav-links a,
.pagination .nav-links span.current,
.job-listing-pagination a span,
.job-listing-pagination span.current {
  display: inline-block;
  text-decoration: none;
  padding: 10px 12px;
  font-size: 14px;
  line-height: 21px;
  color: #333;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  background: #f3f4f7;
  position: relative;
  margin: 0;
  -webkit-transition: background-color .3s ease;
  -moz-transition: background-color .3s ease;
  -ms-transition: background-color .3s ease;
  -o-transition: background-color .3s ease;
  transition: background-color .3s ease;
}

.pagination .nav-links a:hover,
.pagination .nav-links a:focus,
.pagination .nav-links span.current,
.job-listing-pagination span.current,
.job-listing-pagination span.current:hover,
.job-listing-pagination span.current:focus,
.job-listing-pagination a span:hover,
.job-listing-pagination a span:focus {
  background: var(--first-color);
  color: #fff;
}

.woocommerce nav.woocommerce-pagination ul li span.current {
  background: var(--first-color);
  color: #fff;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-reply a:focus {
  color: #fff;
}

.comment-respond input#submit:hover,
.comment-reply a:hover {
  background: #001025;
  color: #fff;
}

.comment-form-url input,
nav.navigation.pagination {
  width: 100%;
}

.comment-respond input#submit {
  background: var(--first-color);
  border: none;
  color: #fff;
  padding: 10px;
  font-weight: 600;
}

.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

.comments-title {
  font-size: 1.125rem;
}

.comment-body .pull-left {
  padding-right: 0.625rem;
}

.comment-list {
  padding-left: 0;
}

.comment-list .comment {
  display: block;
}

.comment-list .pingback {
  border-top: 1px solid rgba(0, 0, 0, 0.125);
  padding: 0.563rem 0;
}

.comment-list .pingback a {
  margin-left: 5px;
  margin-right: 5px;
}

.comment-content.card-block {
  padding: 15px;
}

.comment-reply a {
  background: var(--first-color);
  padding: 5px 15px;
  color: #fff;
}

li.wp-block-latest-comments__comment {
  padding-bottom: 0px !important;
}

.sidebar-area .wp-block-latest-comments__comment-meta {
  float: none;
  background: transparent;
}

.sidebar-area .wp-block-latest-comments__comment-meta a {
  color: #2f3235;
}

ol.wp-block-latest-comments {
  padding: 0;
}

.sidebar-area .wp-block-latest-comments__comment li {
  margin-bottom: 0;
}

/* ===============================================
   Breadcrumbs
   =============================================== */

.bread_crumb a:hover {
  color: var(--first-color);
}

.bread_crumb a {
  color: #fff;
  cursor: pointer;
  font-size: 17px;
  font-weight: 600;
  text-transform: capitalize;
  padding: 10px;

}

.bread_crumb span {
  color: var(--first-color);
  cursor: pointer;
  font-size: 17px;
  font-weight: 600;
  text-transform: capitalize;
  padding: 10px;
}

.bread_crumb {
  color: #fff;
  position: absolute;
  width: 100%;
  top: 65%;
}


/* ===============================================
   SIDEBARS
   =============================================== */
.sidebar-area {
  color: #000;
}

.sidebar-area .textwidget img {
  width: 100%;
  height: auto;
}

.sidebar-area .sidebar-widget {
  margin-bottom: 25px;
  background: #f5f6f7;
  border-radius: 10px;
  padding: 0px 10px;
}

.sidebar-area a,
.sidebar-area p,
.sidebar-area li,
.sidebar-area address,
.sidebar-area dd,
.sidebar-area blockquote,
.sidebar-area td,
.sidebar-area th,
.sidebar-area .textwidget {
  line-height: 1.9em;
  font-weight: normal;
  color: var(--second-color);
}

footer .sidebar-area a,
footer .sidebar-area p,
footer .sidebar-area li,
footer .sidebar-area address,
footer .sidebar-area dd,
footer .sidebar-area blockquote,
footer .sidebar-area td,
footer .sidebar-area th,
footer .sidebar-area .textwidget {
  color: var(--third-color);
}

.sidebar-area ul,
#calendar_wrap,
.sidebar-area .textwidget,
.tagcloud {
  list-style: circle;
  margin: 0;
  padding: 0 0px;
}

footer .sidebar-area ul,
footer #calendar_wrap,
footer .sidebar-area .textwidget,
footer .tagcloud {
  list-style: none;
}

.sidebar-area li a,
.sidebar-area li {
  font-size: 15px;
  word-wrap: break-word;
}

.sidebar-area li {
  padding-bottom: 5px;
  list-style: circle;
  margin-left: 25px;
}

.sidebar-area ul li {
  position: relative;
  margin-left: 25px;
  list-style: circle;
}

footer .sidebar-area ul li {
  list-style: none;
  margin-left: 0;
}

.sidebar-area ul li ul.children li,
.sidebar-area ul li ul.sub-menu li {
  margin-left: 0;
}

.sidebar-area ul li::marker,
.sidebar-area li::marker {
  color: var(--first-color);
}

.sidebar-area h4.title:before,
.sidebar-area h1.wp-block-heading:before,
.sidebar-area h2.wp-block-heading:before,
.sidebar-area h3.wp-block-heading:before,
.sidebar-area h4.wp-block-heading:before,
.sidebar-area h5.wp-block-heading:before,
.sidebar-area h6.wp-block-heading:before,
.sidebar-area .wp-block-search__label:before {
  content: '';
  position: absolute;
  height: 4px;
  width: 16%;
  bottom: 12px;
  left: 0;
  background-color: var(--first-color);
}

.footer-area h4.title:before,
.footer-area h1.wp-block-heading:before,
.footer-area h2.wp-block-heading:before,
.footer-area h3.wp-block-heading:before,
.footer-area h4.wp-block-heading:before,
.footer-area h5.wp-block-heading:before,
.footer-area h6.wp-block-heading:before,
.footer-area .wp-block-search__label:before {
  display: none;
}

.sidebar-area h4.title,
.sidebar-area h1.wp-block-heading,
.sidebar-area h2.wp-block-heading,
.sidebar-area h3.wp-block-heading,
.sidebar-area h4.wp-block-heading,
.sidebar-area h5.wp-block-heading,
.sidebar-area h6.wp-block-heading,
.sidebar-area .wp-block-search__label {
  padding: 20px 0px;
  color: #000;
  font-size: 22px;
  border-bottom: 1px dashed #dfe0e4;
  font-weight: 500;
  position: relative;
}

.wp-block-search__inside-wrapper {
  margin-top: 10px;
}

footer .sidebar-area form {
  padding: 0px;
}

.sidebar-area .wp-block-search__button {
  background: var(--first-color);
  color: #ffffff;
}

.sidebar-area .tagcloud a,
p.wp-block-tag-cloud a {
  font-size: 15px !important;
  background: var(--first-color);
  color: #fff;
  padding: 5px 10px;
  display: inline-block;
  margin: 5px 0;
  text-decoration: none;
  border-radius: 6px;
}

footer .sidebar-area .tagcloud a,
footer p.wp-block-tag-cloud a {
  background: #000;
}

footer .sidebar-area .tagcloud a:hover,
footer p.wp-block-tag-cloud a:hover {
  background: #fff;
  color: #000;
}

.sidebar-area .tagcloud a:hover {
  background: #000000;
}

.sidebar-area form {
  padding: 15px 0px;
}

.sidebar-area select,
.sidebar-area textarea,
#comments textarea,
.sidebar-area input[type="text"],
#comments input[type="text"],
.sidebar-area input[type="password"],
.sidebar-area input[type="datetime"],
.sidebar-area input[type="datetime-local"],
.sidebar-area input[type="date"],
.sidebar-area input[type="month"],
.sidebar-area input[type="time"],
.sidebar-area input[type="week"],
.sidebar-area input[type="number"],
.sidebar-area input[type="email"],
.sidebar-area input[type="url"],
.sidebar-area input[type="search"],
.sidebar-area input[type="tel"],
.sidebar-area input[type="color"],
.sidebar-area .uneditable-input,
#comments input[type="email"],
#comments input[type="url"] {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  width: 100%;
  padding: 5px 2%;
  border: solid 1px #000000;
}

#wp-calendar th,
#wp-calendar #today,
#wp-calendar #today a {
  background: #f3f4f7;
  color: #434343 !important;
}

#wp-calendar a:hover {
  border: none;
}

#wp-calendar {
  background: #fff;
  width: 100%;
}

#wp-calendar caption {
  font-size: 14px;
  text-transform: uppercase;
  margin: 0 0 10px 0;
  text-align: left;
}

#wp-calendar th,
#wp-calendar td {
  text-align: center;
  font-size: 14px;
  color: #434343 !important;
  padding: 3px 6px;
}

#wp-calendar td a {
  display: block;
  text-align: center;
  font-size: 14px;
  color: #434343 !important;
  text-decoration: underline
}

#wp-calendar td#prev a,
#wp-calendar td#prev a {
  text-decoration: none;
  text-align: left;
}

#wp-calendar th {
  font-weight: bold
}

#footer-widgets caption {
  color: #fff;
}

#footer-widgets a:hover,
#footer-widgets a:focus,
.copyright a:hover,
.copyright a:focus {
  color: #ffffff;
}

.copyright {
  background: #000;
}

#footer-widgets h4 {
  margin-bottom: 30px;
  font-weight: 600;
}

tr:nth-child(2n+2) {
  background-color: #f3f4f7;
}

.searchform label {
  display: block;
}

.searchform input[type=text]::placeholder {
  font-size: 12px;
  color: #ffffff;
  font-weight: 400;
}

.searchform input[type=text] {
  width: calc(100% - 110px);
  margin: 0;
  padding: 12px;
  float: left;
  background-color: #fff;
  border: none;
}

.searchform input[type=submit],
.sidebar-area .wp-block-search__button {
  background: var(--first-color);
  border: none;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  text-align: center;
  position: relative;
  float: left;
  text-shadow: none;
  padding: 14px 0;
  width: 100px;
  margin: 0 auto;
  cursor: pointer;
  -webkit-transition: color .3s ease, background-color .3s ease;
  -moz-transition: color .3s ease, background-color .3s ease;
  -o-transition: color .3s ease, background-color .3s ease;
  transition: color .3s ease, background-color .3s ease;
}

.searchform input[type=submit]:hover,
.searchform input[type=submit]:focus {
  background-color: var(--first-color);
  text-decoration: none
}

.searchform:after {
  content: "";
  display: table;
  clear: both;
}

footer {
  background: var(--first-color);
}

footer .sidebar-area {
  background: none;
  padding: 25px 0 0 0;
}

.wp-block-group__inner-container h2 {
  color: #fff;
}

footer a,
footer p,
footer .sidebar-area li,
footer .sidebar-area address,
footer .sidebar-area dd,
footer .sidebar-area blockquote,
footer .sidebar-area td,
footer .sidebar-area th,
footer .sidebar-area .title,
footer .sidebar-area .textwidget {
  color: #fff;
}

.footer-area ul {
  padding: 0;
}

.footer-area h4.title {
  padding: 0;
  font-size: 30px;
  text-transform: none;
  background: transparent;
  border: none;
}

img.size-auto,
img.size-full,
img.size-large,
img.size-medium,
img.alignleft,
img.alignright,
img.aligncenter,
.attachment img {
  max-width: 100%;
  height: auto;
}

.alignleft,
img.alignleft {
  display: inline;
  float: left;
  margin-right: 24px;
  margin-top: 4px;
}

.alignright,
img.alignright {
  display: inline;
  float: right;
  margin-left: 24px;
  margin-top: 4px;
}

div.aligncenter,
img.aligncenter {
  display: block;
  margin-left: auto !important;
  margin-right: auto !important;
  float: none;
}

img.alignleft,
img.alignright,
img.aligncenter {
  margin-bottom: 12px;
}

.wp-caption {
  line-height: 18px;
  margin-bottom: 25px;
  max-width: 100% !important;
  padding: 4px;
  text-align: center;
}

.wp-caption img {
  margin: 5px 5px 0;
  width: 96%;
  height: auto;
}

.wp-caption p.wp-caption-text {
  color: #888;
  font-size: 12px;
  margin: 5px;
}

.sticky {}

.gallery-caption {}

.bypostauthor {}

/* ===============================================
   footer social links
   =============================================== */
.copy-text a.social-links {
  margin-left: 14px;
}

/* DARK MODE CSS */
body.dark-mode {
  background-color: #000000 !important;
  color: #f1f1f1 !important;
}

body.dark-mode h1,
body.dark-mode h2,
body.dark-mode h3,
body.dark-mode h4,
body.dark-mode h5,
body.dark-mode h6,
body.dark-mode .sticky h3.post-title::before,
body.dark-mode a,
body.dark-mode p,
body.dark-mode li,
body.dark-mode blockquote,
body.dark-mode label,
body.dark-mode span,
body.dark-mode .post-content,
body.dark-mode .main-navigation .dashicons-arrow-down-alt2:before {
  color: #fff !important;
}

body.dark-mode input,
body.dark-mode select,
body.dark-mode textarea,
body.dark-mode button {
  background-color: #333;
  color: #fff;
}

body.dark-mode #site-navigation .page_item_has_children ul li a,
body.dark-mode #site-navigation .main-navigation .menu .menu-item-has-children ul li a,
body.dark-mode p.slider-button a:hover,
body.dark-mode .screen-reader-text:focus,
body.dark-mode #wp-admin-bar-woocommerce-site-visibility-badge a.ab-item {
  color: #000 !important;
}

body.dark-mode input[type="submit"],
body.dark-mode button[type="submit"] {
  background-color: var(--first-color);
  color: #fff;
}

body.dark-mode table {
  background-color: #1e1e1e !important;
  color: #f1f1f1 !important;
}

body.dark-mode th,
body.dark-mode td {
  background-color: #333 !important;
  color: #fff !important;
}

body.dark-mode tr {
  color: #fff !important;
}

body.dark-mode pre,
body.dark-mode code {
  background-color: #1e1e1e !important;
  color: #f1f1f1 !important;
}

body.dark-mode .post-box,
body.dark-mode #coming-soon-footer-banner,
body.dark-mode div.product .woocommerce-tabs ul.tabs li,
body.dark-mode .pagination a,
body.dark-mode .job-listing-pagination a span,
#featured-product {
  background: #121212 !important;
}

body.dark-mode #wp-calendar th,
body.dark-mode #wp-calendar td {
  color: #fff !important;
}

body.dark-mode ul,
body.dark-mode ol {
  color: #f1f1f1 !important;
}

body.dark-mode footer {
  background-color: #1f1f1f;
  color: #f1f1f1;
}

body.dark-mode .pagination a {
  color: var(--first-color);
}

body.dark-mode .widget {
  background-color: #1e1e1e;
}

body.dark-mode .widget a {
  color: #f1f1f1;
}

body.dark-mode .sidebar-area .sidebar-widget,
body.dark-mode .media-body-wrap.card,
nav.woocommerce-MyAccount-navigation ul li:hover {
  background: #121212;
}

@media screen and (max-width : 1000px) {
  body.dark-mode #site-navigation .main-navigation .menu .menu-item-has-children ul li a {
    color: #fff !important;
  }
}

/* User Custom CSS Additions */
.header-outter {
  background: #ffffff !important;
  box-shadow: rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgb(0 0 0 / 47%) 0px 30px 60px -30px !important;
  position: fixed !important;
  top: 0;
  width: 100%;
  z-index: 99998;
  transition: transform 0.3s ease-in-out;
}

/* Adjust header position for logged-in users so it sits below the WordPress admin bar */
body.admin-bar .header-outter {
  top: 32px;
}

@media screen and (max-width: 782px) {
  body.admin-bar .header-outter {
    top: 46px;
    /* WordPress admin bar is 46px tall on mobile */
  }
}

/* Prevent the theme's native fixed-header from causing the content to jump */
.fixed-header {
  position: relative !important;
}


.main-navigation ul li a,
.info-button a,
.contact-box a i,
.logo-content a,
.logo-content span {
  color: #222D3F !important;
}

/* ==========================================================================
   HEADER BUTTONS STYLING
   Modify background, text colors, and borders below to style the header buttons.
   ========================================================================== */

/* Hide mobile floating wrapper by default (desktop) */
.mobile-floating-buttons-wrapper {
  display: none;
}

/* First Header Button */
.info-button a.header-first-button {
  background: var(--first-color) !important;
  color: #ffffff !important;
  border: 1px solid var(--first-color) !important;
  padding: 9px 17px !important;
  font-weight: 500 !important;
  font-size: 12px !important;
  border-radius: 5px !important;
  transition: all 0.3s ease-in-out !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
}

.info-button a.header-first-button:hover {
  background: #333333 !important;
  color: #ffffff !important;
  border-color: #333333 !important;
}

/* Second Header Button */
.info-button a.header-second-button {
  background: #333333 !important;
  /* Change background color */
  color: #ffffff !important;
  /* Change text color */
  border: 1px solid #333333 !important;
  /* Change border color */
  padding: 9px 17px !important;
  font-weight: 500 !important;
  font-size: 12px !important;
  border-radius: 5px !important;
  transition: all 0.3s ease-in-out !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
}

.info-button a.header-second-button:hover {
  background: #555555 !important;
  /* Lighter shade of #333333 */
  color: #ffffff !important;
  /* Change hover colors */
  border-color: #555555 !important;
}

.custom-logo {
  height: auto;
  width: 80px !important;
}

/* Slider Navigation Arrow & Dot Hover Animation Transition */
.owl-nav button.owl-prev,
.owl-nav button.owl-next,
button.owl-dot span {
  transition: all 0.3s ease;
}

.slider-image {
  background: #000;
  overflow: hidden;
  position: relative;
}

.slider-owl-position {
  position: absolute;
  left: 15%;
  right: 15%;
  top: 50%;
  text-align: center;
  will-change: opacity, transform;
  backface-visibility: hidden;
  transform: translateY(-50%) translateZ(0) !important;
}

.slider-owl-position h3,
.slider-owl-position p.content {
  text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.85);
}

.slider-inner-banner img {
  width: 100%;
  height: 100%;
  opacity: 0.4;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  transform-origin: center center;
  will-change: transform;
}

/* Pure CSS Fixed Hero Parallax Helper Classes */
.sticky-hero-slider {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 0;
}

.slider-overlay-section {
  position: relative;
  z-index: 1;
  background-color: #ffffff;
}

/* Fallback for Owl Carousel Fade Transition */
.owl-carousel .animated {
  animation-duration: 1000ms;
  animation-fill-mode: both;
}

.owl-carousel .owl-animated-in {
  z-index: 0;
}

.owl-carousel .owl-animated-out {
  z-index: 1;
}

.owl-carousel .fadeOut {
  animation-name: fadeOut;
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

.owl-carousel .fadeIn {
  animation-name: fadeIn;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

/* Remove all text underlines globally from links, menus, and buttons */
a,
a:hover,
a:focus,
.info-button a,
.main-navigation ul li a {
  text-decoration: none !important;
}

/* Adjust the vertical alignment of the header menu items here */
.main-navigation {
  margin-top: 10px;
  /* Change this value to push the menu down or up */
}

/* Animated Underline for Main Navigation */
.main-navigation ul li>a {
  position: relative;
  display: inline-block;
}

.main-navigation ul li>a:before,
.main-navigation ul li>a:after {
  content: '';
  position: absolute;
  width: 0%;
  height: 3px;
  bottom: -2px;
  /* Position right under the text */
  background: var(--first-color);
}

.main-navigation ul li>a:before {
  left: 0;
}

.main-navigation ul li>a:after {
  right: 0;
  background: var(--first-color);
  transition: width 0.8s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.main-navigation ul li>a:hover,
.main-navigation ul li>a:focus {
  color: var(--first-color) !important;
}

.main-navigation ul li>a:hover:before,
.main-navigation ul li>a:focus:before {
  background: var(--first-color);
  width: 100%;
  transition: width 0.5s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.main-navigation ul li>a:hover:after,
.main-navigation ul li>a:focus:after {
  background: transparent;
  width: 100%;
  transition: 0s;
}

/* Keep line visible for active/current menu items */
.main-navigation ul li.current-menu-item>a,
.main-navigation ul li.current_page_item>a {
  color: var(--first-color) !important;
}

.main-navigation ul li.current-menu-item>a:before,
.main-navigation ul li.current_page_item>a:before {
  width: 100%;
  background: var(--first-color);
}

/* Haukes Job Grid Elementor Widget Styles */
.hl-job-grid-wrapper {
  display: grid;
  gap: 30px;
}

.hl-grid-desktop-1 {
  grid-template-columns: repeat(1, 1fr);
}

.hl-grid-desktop-2 {
  grid-template-columns: repeat(2, 1fr);
}

.hl-grid-desktop-3 {
  grid-template-columns: repeat(3, 1fr);
}

.hl-grid-desktop-4 {
  grid-template-columns: repeat(4, 1fr);
}

@media (max-width: 1024px) {
  .hl-grid-tablet-1 {
    grid-template-columns: repeat(1, 1fr);
  }

  .hl-grid-tablet-2 {
    grid-template-columns: repeat(2, 1fr);
  }

  .hl-grid-tablet-3 {
    grid-template-columns: repeat(3, 1fr);
  }

  .hl-grid-tablet-4 {
    grid-template-columns: repeat(4, 1fr);
  }
}

@media (max-width: 767px) {
  .hl-grid-mobile-1 {
    grid-template-columns: repeat(1, 1fr);
  }

  .hl-grid-mobile-2 {
    grid-template-columns: repeat(2, 1fr);
  }
}

.hl-job-grid-card {
  position: relative;
  padding: 16px;
  background: #ffffff;
  border: 1px solid #eaeaea;
  border-radius: 15px;
  box-shadow: 0 2px 16px -8px rgba(0, 0, 0, 0.25);
  transition: all 0.3s ease;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.hl-job-grid-card-top {
  display: flex;
  justify-content: space-between;
  margin-bottom: 25px;
  align-items: flex-start;
}

.hl-job-grid-badges-left {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 5px;
}

.hl-badge {
  padding: 5px 12px;
  border-radius: 20px;
  font-size: 13px;
  font-weight: 500;
}

.hl-badge-featured {
  background: rgba(39, 136, 61, 0.15);
  color: #25913e;
}

.hl-badge-urgent {
  background: rgba(255, 193, 7, 0.15);
  color: #d39e00;
}

.hl-badge-type {
  background: rgba(0, 123, 255, 0.151);
  color: #007bff;
}

.hl-job-grid-card-center {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  flex-grow: 1;
}

.hl-job-grid-logo {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  overflow: hidden;
  margin-bottom: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f4f4f4;
}

.hl-job-grid-logo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hl-default-logo {
  font-size: 32px;
  font-weight: bold;
  color: #888;
}

.hl-job-grid-category {
  color: var(--first-color, #47694c);
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 10px;
}

.hl-job-grid-title {
  font-size: 18px;
  font-weight: 600;
  margin: 0 0 15px 0;
  line-height: 1.4;
}

.hl-job-grid-title a {
  color: #222D3F !important;
  text-decoration: none;
}

/* Make the whole card clickable by stretching the title link */
.hl-job-grid-title a::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
}

/* Change title color when ANY part of the card is hovered */
.hl-job-grid-card:hover .hl-job-grid-title a {
  color: var(--first-color, #47694c) !important;
}

.hl-job-grid-location {
  color: #777;
  font-size: 14px;
  display: flex;
  align-items: center;
  gap: 5px;
  margin-top: auto;
  /* pushes location to bottom if titles are different heights */
}

.hl-job-grid-location i {
  color: #a0a0a0;
}

/* Related Vacancies section heading */
.hl-related-heading {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 2.9em;
  font-weight: 900;
  color: #222D3F;
  margin: 0 0 16px;
  padding-bottom: 20px;
  border-bottom: 0px solid #f0f0f0;
  text-transform: uppercase;
  letter-spacing: 1px;
  justify-content: center;
}

@media screen and (max-width: 767px) {
  .hl-related-heading {

    letter-spacing: 0px;
    text-align: center;
    justify-content: center;
  }
}

.copyright-text {
  color: #ffffff;
}

/* ===============================================
   Elementor Social Icons Official Colors Fallback
   ============================================= */
.elementor-social-icon-facebook,
.elementor-social-icon-facebook-f {
  background-color: #3b5998;
}

.elementor-social-icon-twitter {
  background-color: #1da1f2;
}

.elementor-social-icon-instagram {
  background-color: #e1306c;
}

.elementor-social-icon-linkedin,
.elementor-social-icon-linkedin-in {
  background-color: #0077b5;
}

.elementor-social-icon-youtube {
  background-color: #ff0000;
}

.elementor-social-icon-whatsapp {
  background-color: #25d366;
}

.elementor-social-icon-tiktok,
.elementor-social-icon-e-fab-tiktok,
.elementor-social-icon-fab-tiktok {
  background-color: #000000;
}

.elementor-social-icon-pinterest {
  background-color: #bd081c;
}

.elementor-social-icon-snapchat {
  background-color: #fffc00;
}

.elementor-social-icon-snapchat i,
.elementor-social-icon-snapchat svg {
  color: #000;
  fill: #000;
}

.elementor-social-icon-github {
  background-color: #333333;
}

/* ===============================================
   Top Bar Section
   ============================================= */
.top-bar-section {
  width: 100%;
  z-index: 100;
  position: relative;
  border-bottom: 1px solid #eeeeee;
}

.top-bar-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 15px;
}

.top-bar-row a {
  color: inherit !important;
  text-decoration: none;
}

.top-bar-left,
.top-bar-right {
  display: flex;
  align-items: center;
  gap: 20px;
  flex: 1;
  flex-wrap: nowrap;
}

.top-bar-left {
  justify-content: flex-start;
}

.top-bar-center {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.top-bar-right {
  justify-content: flex-end;
}

.top-bar-block {
  display: flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
}

.top-bar-block br {
  display: none;
}

.top-bar-block p,
.top-bar-block div,
.top-bar-block span {
  display: inline-block;
  margin: 0;
  padding: 0;
}

.top-bar-block i,
.top-bar-block svg {
  vertical-align: middle;
  line-height: 1;
}

@media (max-width: 991px) {
  .top-bar-row {
    flex-direction: column;
    justify-content: center;
    gap: 10px;
    text-align: center;
  }

  .top-bar-left,
  .top-bar-center,
  .top-bar-right {
    justify-content: center;
    flex: none;
    width: 100%;
  }
}

.copyright-text,
.copy-text,
.copy-text p,
.copy-text a {
  color: #ffffff;
  font-weight: 400;
  font-size: 14px;
}

/* Custom Button Vertical Alignment Override */
.btn,
.button-header a,
p.info-button a,
.elementor-button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  padding-top: 0.575rem !important;
  padding-bottom: 0.575rem !important;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  transform: scale(1) translateZ(0);
  -webkit-font-smoothing: subpixel-antialiased;
}

/* Prevent Elementor Grow hover from stripping translateZ(0) and causing text tilt */
.elementor-animation-grow:hover,
.elementor-animation-grow:focus,
.elementor-animation-grow:active {
  transform: scale(1.04) translateZ(0) !important;
}

/* ===============================================
   Hero Slider Navigation Arrows (Customizable)
   ============================================= */
.slider-inner-banner .owl-nav button.owl-prev,
.slider-inner-banner .owl-nav button.owl-next {
  position: absolute !important;
  top: 45% !important;
  /* Vertical center position */
  transform: translateY(-50%) !important;
  z-index: 99 !important;

  /* Button size */
  width: 50px !important;
  height: 50px !important;

  /* Rounded corners */
  border-radius: 5px !important;
  border: none !important;

  /* Centering the icon inside the button */
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Left Arrow Position */
.slider-inner-banner .owl-nav button.owl-prev {
  left: 100px !important;
  margin-left: 0px !important;
  /* Customize horizontal margin if needed */
}

/* Right Arrow Position */
.slider-inner-banner .owl-nav button.owl-next {
  right: 100px !important;
  margin-right: 0px !important;
  /* Customize horizontal margin if needed */
}

/* ===============================================
   Header Icon-Only Mode (Element Type: Icon Only)
   ============================================= */
a.header-icon-action {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  color: var(--hl-icon-color, #ffffff) !important;
  font-size: var(--hl-icon-size, 20px) !important;
  transition: color 0.3s ease, opacity 0.3s ease !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

a.header-icon-action:hover,
a.header-icon-action:focus {
  color: var(--hl-icon-hover-color, var(--first-color, #47694c)) !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

a.header-icon-action .dashicons {
  font-size: var(--hl-icon-size, 20px) !important;
  width: var(--hl-icon-size, 20px) !important;
  height: var(--hl-icon-size, 20px) !important;
  line-height: 1 !important;
}

/* ==========================================================================
   MOBILE FLOATING BUTTON STYLES (Added to style.css for easy syncing)
   ========================================================================== */
@media screen and (max-width: 1000px) {

  /* Hide original header buttons on mobile to prevent layout issues */
  header .contact-box.d-flex {
    display: none !important;
  }

  /* Make footer-based buttons float at the bottom on mobile */
  .mobile-floating-buttons-wrapper {
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    background: #1d1d1d;
    padding: 8px 15px !important;
    box-shadow: 0 -4px 15px rgb(0 0 0 / 27%) !important;
    z-index: 99998 !important;
    display: flex !important;
    justify-content: center !important;
    gap: 10px !important;
  }

  .mobile-floating-buttons-wrapper a.header-first-button {
    display: block !important;
    width: 100% !important;
    text-align: center;
    padding: 8px 10px !important;
    font-size: 14px !important;
    font-weight: bold;
    border-radius: 4px;
    box-sizing: border-box;
    background: var(--first-color) !important;
    color: #fff !important;
    text-decoration: none;
  }

  /* Prevent content from hiding behind the floating bar */
  body {
    padding-bottom: 50px !important;
  }
}