.fc-header-toolbar {
  .fc-toolbar-chunk:first-child {
    display: flex;
    flex-wrap: wrap;
    flex-grow: 0;
  }

  .fc-button-group {
    display: contents;
  }

  /* Container styling */
  .fc-toolbar-chunk:first-child {
    display: grid;
    /* Two columns for the buttons, second row for dates */
    grid-template-columns: 1fr auto 1fr; 
    grid-template-areas: 
      "prev today next"
      "range range range";
    gap: 0px;
    align-items: center;
    max-width: 320px; /* Optional: bounds the width */

    .uc-course-toolbar-range {
      grid-area: range;
      margin: 0;
    }
  }
  
  /* Assigning the children to the grid areas */
  .fc-button-group {
    display: contents; /* Allows children to be treated as grid items */
  }
  
  .fc-prev-button {
    grid-area: prev;
    justify-self: start;
  }
  .fc-next-button {
    grid-area: next;
    justify-self: end;
  }
  .fc-today-button {
    grid-area: today;
  }
}

.uc-course-toolbar-range__field input[type="date"] {
  min-width: 100px !important;
}

footer#colophon .footer{
  padding-top: 100px !important;
  background: rgb(109,78,169);
  background: linear-gradient(95deg, rgba(109,78,169,1) 0%, rgba(232,67,112,1) 100%);
}

.top_site_main {
    padding-top: 0 !important;
}

.uc-course-filter-layout {
    background: transparent !important;
}

.text-primary {
    color: var(--clr-primary) !important;
}

.text-secondary {
    color: var(--clr-secondary) !important;
}

.footer .menu {
    padding-inline-start: 0 !important;
}

.wpex-h-full,
section:has(>.wpex-h-full) {
    height: 100%;
}

.z-inline-block {
	display: inline-block;
}

.z-btn.z-inline-block + .z-btn.z-inline-block {
	margin-left: 20px;
}

.centered-content .wpb_wrapper {
    text-align: center;
}

.vc_tta-color-custom.vc_tta-style-classic .vc_tta-panel div.vc_tta-panel-heading,
.vc_tta-color-custom.vc_tta-style-classic .vc_tta-panel.vc_active div.vc_tta-panel-heading,
.vc_tta-shape-rounded:not(.vc_tta-o-no-fill) .vc_tta-panel.vc_active div.vc_tta-panel-body {
    background-color: transparent;
    border-color: transparent;
}

.vc_tta-panel:has(.vc_tta-panel-heading:hover) {
    background-color: color-mix(in srgb,var(--vc-tta-color),#000 3%);
}





.shadow-card > .vc_column-inner {
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
  background: #fff;          /* shadow needs a visible surface to look right */
  border-radius: 8px;        /* optional */
  padding: 24px !important;  /* WPBakery sets its own padding on this element */
  box-sizing: border-box;
}



/*Adrian CSS */
.vc_tta-container,
.vc_tta.vc_general,
.vc_tta-panels-container,
.vc_tta-panels,
.vc_tta-panel,
.vc_tta-panel-heading,
.vc_tta-panel-body {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: 0 !important; /* remove if you want to keep borders */
}


.wpb_video_widget .wpb_video_wrapper {
    border-radius: 14px !important;
    overflow: hidden !important;
}
.wpb_video_widget .wpb_video_wrapper iframe {
    border-radius: 14px !important;
}

/* Thumbnail facade */
.yt-facade {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-color: #000;
    border: 0;
    padding: 0;
    cursor: pointer;
    border-radius: 14px;
}



/* Remove the 1px border */
.vc_tta-tabs .vc_tta-tab,
.vc_tta-tabs .vc_tta-tab > a,
.vc_tta-tabs .vc_tta-tab h4.vc_tta-panel-title > a {
    border: none !important;
    box-shadow: none !important;
}

/* Make the link fill the whole tab */
.vc_tta-tabs .vc_tta-tab > a,
.vc_tta-tabs .vc_tta-tab h4.vc_tta-panel-title > a {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box;
}

/* Hover color on the whole tab */
.vc_tta-tabs .vc_tta-tab:hover,
.vc_tta-tabs .vc_tta-tab:hover > a
 {
    background-color: #f3712b29 !important;
}

/* Optional: smooth transition */
.vc_tta-tabs .vc_tta-tab,
.vc_tta-tabs .vc_tta-tab > a {
    transition: background-color .3s ease;
}

.vc_tta.vc_general .vc_tta-panel-title {
  border: none !important;
}



.vc_tta-title-text {
  font-size: 24px;
  padding-left: 24px;
  font-weight: 600;
}


input::placeholder {
	color: #777 !important;
}

#contact-us-form {
	button._submit {
		width: auto !important;
		border-radius: 999px !important;
		padding: 12px 36px !important;
		background-color: var(--btn-bg) !important;
		font-weight: 600;
		font-size: 18px;
		font-family: "Nunito Sans";
	
		&:hover {
			background-color: color-mix(in srgb, var(--btn-bg) 90%, black) !important;
		}
	}

	input[type="text"],
	input[type="tel"],
	input[type="date"],
	select,
	textarea {
		padding: 10px 12px !important;
		font-size: 18px !important;
	}

	._form-content {
		display: grid;
		grid-template-columns: 50% 50%;
		gap: 5px 16px;
		grid-template-areas:
			"fn ph"
			"em em"
			"help help"
			"msg msg"
			"fout fout"
			"cap cap";
	}

	._form_element:has([for="fullname"]) {
		grid-area: fn;
	}
	._form_element:has([for="phone"]) {
		grid-area: ph;
	}
	._form_element:has([for="email"]) {
		grid-area: em;
	}
	._form_element:has([for="field[5]"]) {
		grid-area: help;
	}
	._form_element:has([for="field[4]"]) {
		grid-area: msg;
	}
	._form_element:has([for="field[6]"]) {
		grid-area: fout;
	}
	._form_element:has([for="g-recaptcha-response"]) {
		grid-area: cap;
	}
}



.width-navigation .thim-ekits-menu__nav a,
.width-navigation .thim-ekits-menu__nav .cartcontents {
  font-weight: 600 !important;
}

.width-navigation .thim-ekits-menu__nav a:hover,
.width-navigation .thim-ekits-menu__nav a:focus,
.width-navigation .thim-ekits-menu__nav a:active,
.width-navigation .thim-ekits-menu__nav li:hover > a,
.width-navigation .thim-ekits-menu__nav li.current-menu-item > a,
.width-navigation .thim-ekits-menu__nav li.current-menu-ancestor > a,
.width-navigation .thim-ekits-menu__nav li.current_page_item > a,
.width-navigation .thim-ekits-menu__nav li:hover > .icon-toggle,
.width-navigation .thim-ekits-menu__nav li:hover > .icon-toggle i {
  color: #e4398c !important;
}




a.youtube.hasTooltip {
  width: auto !important;
}

.social_link li a:hover i {
  color: #ad1aac !important; /* pick your color */
}


.courses-grid .thim-widget-icon-box {
  border-radius: 16px;
  background-color: transparent;
  box-shadow: 0 0px 0px 0 rgba(127, 0, 117, 0.08);

  img {
    mix-blend-mode: multiply;
  }

  .wrapper-box-icon {
    z-index: initial;
  }

  &:hover {
    background-color: #fef3f8;
    box-shadow: 0 16px 30px 0 rgba(127, 0, 117, 0.08);
  }
}

.new {
    position: relative;

    &::before {
      content: "";
      width: 28px;
      height: 28px;
      background-image: url("data:image/svg+xml,%3Csvg width='29' height='28' viewBox='0 0 29 28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_6872_1619)'%3E%3Cpath d='M28.1885 15.2636L26.1037 11.9553C25.9385 11.693 25.8828 11.3763 25.9483 11.0735L26.776 7.25166C26.905 6.65605 26.5604 6.05989 25.9803 5.87372L22.2567 4.6796C21.9616 4.58489 21.7153 4.37827 21.5708 4.10416L19.7483 0.644629C19.4644 0.105305 18.8173 -0.130053 18.2531 0.100252L14.6329 1.57915C14.346 1.69607 14.0246 1.69607 13.7377 1.57915L10.118 0.10053C9.55382 -0.129775 8.90676 0.105583 8.62259 0.644907L6.80004 4.10411C6.65559 4.37823 6.40929 4.58484 6.11418 4.67955L2.39064 5.87368C1.81015 6.05985 1.4659 6.65605 1.59496 7.25161L2.42231 11.0734C2.48804 11.3762 2.43209 11.693 2.26692 11.9552L0.182353 15.2636C-0.142661 15.7792 -0.0227798 16.4571 0.458829 16.8307L3.54921 19.2263C3.79431 19.4163 3.95503 19.6946 3.99707 20.0019L4.52666 23.8761C4.60895 24.48 5.13673 24.9225 5.74536 24.8988L9.65275 24.7476C9.96237 24.7354 10.2643 24.8456 10.4943 25.0536L13.3899 27.681C13.8413 28.0904 14.5302 28.0904 14.9813 27.681L17.8772 25.0536C18.1066 24.8453 18.4088 24.7354 18.7188 24.7476L22.6258 24.8988C23.235 24.9225 23.7622 24.4797 23.8448 23.8761L24.3744 20.0019C24.4164 19.6946 24.5772 19.4164 24.822 19.2263L27.9124 16.8307C28.3939 16.4571 28.5135 15.7792 28.1885 15.2636ZM10.9049 18.7248L7.45424 16.3147L8.87246 19.6017L7.92727 20.0096L5.75217 14.9696L6.74205 14.5421L10.2578 17.0177L8.80496 13.652L9.75015 13.2438L11.9258 18.284L10.9049 18.7248ZM13.0018 17.8196L10.8267 12.7797L14.5639 11.1664L14.9315 12.0192L12.2118 13.1928L12.694 14.31L15.2246 13.2177L15.5911 14.067L13.0605 15.159L13.6525 16.5307L16.4682 15.3156L16.8346 16.1649L13.0018 17.8196ZM21.5214 14.1429L18.8913 10.8077L19.5168 15.0075L18.4132 15.4838L15.0351 10.9634L16.0765 10.5134L18.3306 13.6476L17.7578 9.78821L18.9685 9.26575L21.3713 12.405L20.6253 8.5506L21.6498 8.10834L22.6009 13.677L21.5214 14.1429Z' fill='%23E4398C'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_6872_1619'%3E%3Crect width='28.4173' height='28' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
      position: absolute;
      top: 11px;
      left: 50%;
      transform: translateX(-35px);
      z-index: 1;
    }
  }
  
.courses-grid {
	.boxes-icon {
		--icon-height: 90px;
	}
	.icon-box-link {
		display: block;
	}

	.heading__primary {
		margin: 0 !important;
		
		.icon-box-link {
		    padding-inline: 12px;
		    padding-block: 5px 32px;
		}
	}

	.wpb_wrapper > .vc_row.vc_row-o-equal-height {
		margin-bottom: 0 !important;
	}
	
	.thim-widget-icon-box .wrapper-box-icon.text-center .iconbox-top .boxes-icon {
	    margin-bottom: 0 !important;
	}
}

.courses-grid .vc_row-o-equal-height > .vc_column_container > .vc_column-inner > .wpb_wrapper {
	height: 100%;
	display: flex;

	.thim-widget-icon-box {
		height: 100%;
	}
}

.courses-grid .vc_row.vc_row-flex>.vc_column_container>.vc_column-inner{
	z-index: initial;
}

a.uc-course-filter-layout__cta {
	box-shadow: none;
	height: auto;
	padding: 12px 36px;
	font-size: 18px;
	line-height: 120%;
}

.z-btn a.vc_btn3.vc_btn3-size-md,
.z-btn a.vc_btn3.vc_btn3-size-sm,
.z-btn button.vc_btn3.vc_btn3-size-md,
.z-btn button.vc_btn3.vc_btn3-size-sm {
	font-size: 18px;
	padding: 12px 36px !important;
}


/*Fill column by image for 2 column image and content layout*/
@media (min-width: 768px) {
  /* 1. Ensure the row stretches both columns equally */
  .fill-column.vc_row-flex {
    display: flex;
    align-items: stretch;
  }

  .fill-column.vc_row-flex .vc_column_container {
    display: flex;
  }

  /* 2. Anchor the absolute image to the column boundaries */
  .fill-column.vc_row-flex .vc_column-inner > .wpb_wrapper {
    position: relative;
    width: 100%;
    height: 100%;
  }

  /* 3. Take the image completely out of the height calculation */
  .fill-column .wpb_single_image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin-bottom: 0 !important;
  }

  .fill-column .wpb_single_image .vc_figure,
  .fill-column .wpb_single_image .vc_single_image-wrapper {
    width: 100%;
    height: 100%;
  }

  /* 4. Fit and crop the image to the content-dictated dimensions */
  .fill-column .wpb_single_image img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover;
    display: block;
  }
  
  /*:is(.compose-mode, .view-mode) .vc_element .vc_element {*/
  /*    height: 100%;*/
  /*}*/
}

.thim-testimonial-carousel .description {
    display: -webkit-box;
	-webkit-line-clamp: initial;
	-webkit-box-orient: vertical;
	overflow: hidden;
	padding-top: 60px;
}

div.thim-testimonial-carousel .content::before {
    top: 20px;
}

.thim-testimonial-carousel .content {
    display: initial !important;
}

div.vc_tta.vc_general .vc_tta-panel-body {
    padding-inline-start: 24px !important;
}

body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #order_review {
	float: none !important;
	width: 100% !important;
}
.woocommerce table.shop_table th {
	border-right-color: #eee;
}
body #order_review .woocommerce-checkout-review-order-table tfoot td {
	border-bottom: 1px solid black;
}
.woocommerce table.shop_table tr.cart-subtotal  th,
.woocommerce table.shop_table tr.cart-subtotal  td{
	border-top: 1px solid black !important;
}

.woocommerce form .form-row select {
	background-color: transparent;
	border: 1px solid #c2bacd !important;
	border-radius: 0;
}

 .woocommerce-page form .form-row-first {
	 /*width: 100%;*/
	 display: flex;
	 flex-wrap: wrap;
	  > label {
		  width: 100%;
	  }

	 [name="exyear"] {
		 width: calc(40% - 20px) !important;
		 margin-right: 20px;
	 }

	 [name="exmonth"] {
		 width: 60% !important;
	 }
 }

div.woocommerce #payment #place_order,
div.woocommerce-page .cart .button,
div.woocommerce-page .wc-proceed-to-checkout a.button,
div.woocommerce .woocommerce-message .button,
div.woocommerce div.product form.cart .button,
div.woocommerce-page div.product form.cart .button {
	background-color: var(--btn-bg) !important;
  border-radius: 32px !important;
  color: var(--btn-fg) !important;
  --thim-font-button-text-transform: capitalize;
	background-image: none !important;

	&:hover {
	background-image: none !important;
		background-color: color-mix(in srgb, var(--btn-bg) 90%, black) !important;
	}
}
span:not(.breadcrumb_last) > a {
	color: #fff !important;
	
	&:hover {
		text-decoration: underline;
	}
}

.single-product div.site-content {
	padding-bottom: 0 !important;
}

div.woocommerce #payment #place_order,
div.woocommerce-page .cart button.button,
div.woocommerce-page .wc-proceed-to-checkout a.button,
div.woocommerce .woocommerce-message button.button,
div.woocommerce div.product form.cart button.button,
div.woocommerce-page div.product form.cart button.button {
	background-image: none !important;
	background-color: var(--btn-bg) !important;

	&:hover {
		background-image: none !important;
		background-color: color-mix(in srgb, var(--btn-bg) 90%, black) !important;
	}
}

.product-grid.owl-carousel .owl-stage {
	align-items: stretch;

	.content__product {
		height: 100%;
	}

	.product_thumb {
		img {
			object-fit: cover;
			aspect-ratio: 4/3;
			
		}
	}

	.product__title a.title {
		font-family: "MuseoSans-700";
		padding-right: 0;
		margin-right:0;
		min-height: 100px;
		color: var(--thim-body-secondary-color);
		font-size: 20px !important;
	}
	
	.product__title .learnpress-excerpt {
	    margin-bottom: 0;
	}

	.product__title .gradient__btn a {
		color: #fff;
		border-radius: 99px;
		background-image: none !important;
		width: 100%;
		background-color: var(--btn-bg) !important;
	
		&:hover {
			background-image: none !important;
			background-color: color-mix(in srgb, var(--btn-bg) 90%, black) !important;
		}
	}

	.product__title a.button {
		
		border-radius: 99px;
	}
}

.product-grid {
	padding: 0 !important;
}

body.woocommerce-cart .cross-sells .owl-carousel .owl-nav {
	--owl-nav-pos: -50px;

	.owl-prev,
	.owl-next {
		top: 50% !important;
	}
}

/* Match price anywhere inside .product-grid rather than strictly inside the title */
.product-grid .product__title .price .woocommerce-Price-amount.amount {
	background: none !important;
	border: 2px solid var(--thim-body-secondary-color);
	border-radius: 99px;
	padding: 2px 8px 4px !important;
	display: inline-flex;
	align-items: center;
}

.product-grid .price .woocommerce-Price-amount bdi {
	background: transparent !important;
	color: var(--thim-body-secondary-color);
	font-size: 16px;
		padding: 0 6px !important;
}

footer#colophon .footer a:hover {
    color: #fff;
}

div.woocommerce #payment #place_order,
body.woocommerce-page .cart .button,
body.woocommerce-page .wc-proceed-to-checkout a.button,
div.woocommerce .woocommerce-message .button,
div.woocommerce div.product form.cart .button {/*body.woocommerce-page div.product form.cart {*/
	background: none !important;
	background-color: var(--thim-body-primary-color) !important;
	border-radius: 99px !important;

	&:hover {
		background-image: none !important;
		background-color: color-mix(in srgb, var(--btn-bg) 90%, black) !important;
	}
}

body.woocommerce-cart .entry-content .woocommerce .woocommerce-cart-form .shop_table .actions .coupon .input-text {
	width: 330px !important;
	padding-block: 12px;
	padding-right: 40px !important;
	border-radius: 99px 0 0 99px !important;
	min-height: 47px;
	
}

body.woocommerce-cart .entry-content .woocommerce .woocommerce-cart-form .shop_table .actions .coupon .button {
	margin-left: -30px;
	background-color: var(--thim-body-secondary-color) !important;
	border-radius: 99px !important;

	&:hover {
		background-image: none !important;
		background-color: color-mix(in srgb, var(--thim-body-secondary-color) 90%, black) !important;
	}
}

:is(.compose-mode, .view-mode) .vc_element .vc_element.vc_vc_single_image  {
	height: 100%;
}

.course-tabs {
	li[class*="thim-col"] {
		width: auto !important;
	}
}


body #order_review .woocommerce-checkout-review-order-table .product-total,
body #order_review .woocommerce-checkout-review-order-table .product-name,
#order_review .woocommerce-checkout-review-order-table tfoot th {
	border-inline-width: 0 !important;
}