/*!
Theme Name: Kava Child
Theme URI:
Author: Zemez
Author URI:
Description: Kava child theme.
Template: kava
Version: 2.0.1
License: GNU General Public License v3 or later
License URI: http://www.gnu.org/licenses/gpl-3.0.html
Text Domain: kava-child
*/
/* Top Bar Menu */

.menu-top-bar-navigation-container .draws a {
	background-color:  var(--e-global-color-accent)!important;
	color: #fff!Important;
}

.menu-top-bar-navigation-container a {
	font-size: 16px;
	font-weight: 400;
}

@media (max-width: 767px) {
	.jet-mobile-menu__item {
	align-items: center !important;
	}
	.jet-mobile-menu__items {
		display: flex;
		height: 100%;
		flex-direction: column;
		justify-content: center;
	}
	.jet-mobile-menu__body, .jet-mobile-menu__list {
		height: 100%;
	}
}
/* Base link setup */
.main-navigation a {
  position: relative;
  display: inline-block;      /* keeps underline sized to the link */
  text-decoration: none;      /* remove default underline */
}

/* The animated underline */
.main-navigation a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;                   /* same as width: 100% but keeps it snug */
  bottom: -2px;               /* tweak if you want it tighter to the text */
  height: 2px;                /* requested thickness */
  background: currentColor;   /* uses the link’s text color */
  transform: scaleX(0);
  transform-origin: right;    /* anchor on the right when hidden */
  transition: transform 220ms cubic-bezier(.4,0,.2,1);
}

/* Hover/focus: grow left -> right */
.main-navigation a:hover::after,
.main-navigation a:focus-visible::after {
  transform: scaleX(1);
  transform-origin: left;     /* anchor on the left when showing */
}

/* Optional: keep underline for the active page */
.main-navigation .current-menu-item > a::after,
.main-navigation .current_page_item > a::after {
  transform: scaleX(1);
  transform-origin: left;
}

/* Accessibility: respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
  .main-navigation a::after { transition: none; }
}

.p-nogap p {
	margin-bottom: 0px;
}

/* Link Box */

.link-box {
	 transition: 0.2s ease-in-out;
}

.link-box:hover {
	transition: 0.2s ease-in-out;
	background-color: var(--e-global-color-accent) !important;
}

.link-box:hover .link-box-title h4 {
	transition: 0.2s ease-in-out;
	color: var(--e-global-color-c5db4dc) !important;
}

.link-box:hover p, .link-box:hover .link-box-text {
	transition: 0.2s ease-in-out;
	color: var(--e-global-color-c5db4dc) !important;
}

.link-box:hover .elementor-icon {
	transition: 0.2s ease-in-out;
	fill: var(--e-global-color-c5db4dc)!important;
	color: var(--e-global-color-c5db4dc)!important; 
		 transform: translatey(5px);
}

/* Blog Card */

.blog-card {
	transition: 0.2s ease-in-out;
	padding: 0px 20px;
}

.blog-card .blog-card-view div {
	font-weight: 400 !important;
	font-size: 18px !important;
}

.blog-card:hover {
	transition: 0.2s ease-in-out;
	background-color: var(--e-global-color-bdad000)!important; 
}

.blog-card:hover .blog-card-view div {
	transition: 0.2s ease-in-out;
	color: var(--e-global-color-accent)!important; 
}


.blog-card:hover .blog-card-title h3 {
	transition: 0.2s ease-in-out;
	color: var(--e-global-color-accent)!important; 
}

/* Sponsor Listing */

.sponsor-listing-item {
	padding: 0px 0px !Important;

}

.sponsor-overlay {
	transition: 0.2s ease-in-out;
	background-color: var(--e-global-color-accent)!important; 
	opacity: 0;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
}

.sponsor-listing-item:hover .sponsor-overlay {
	transition: 0.2s ease-in-out;
	opacity: 0.1;
}

/* Team Member Card*/

.team-member-headshot img {
	aspect-ratio: 1 / 1;
	object-fit: cover;
	object-position: top center;
}

/* Box Link */

a.box-link {
	text-decoration: underline;
}

/* Responsive Table Layout */

.custom-table {
  width: 100%;
  overflow-x: auto;
}

/* Basic table styling */
table {
  width: 100%;
  border-collapse: collapse;
}

th, td {
  padding: 8px;
  border: 1px solid #ddd;
  text-align: left;
}

/* Responsive styles for smaller screens */
@media screen and (max-width: 600px) {
  table, thead, tbody, th, td, tr {
    display: block; /* Make all table elements block-level */
  }

  thead tr {
    position: absolute; /* Hide the original header row */
    top: -9999px;
    left: -9999px;
  }

  tr {
    margin-bottom: 15px;
    border: 1px solid #ccc;
  }

  td {
    border: none; /* Remove cell borders */
    position: relative;
    padding-left: 50%; /* Make space for the label */
  }

  td:before {
    content: attr(data-label); /* Use data-label for the label */
    position: absolute;
    left: 6px;
    width: 45%;
    padding-right: 10px;
    white-space: nowrap;
    font-weight: bold;
  }
}