/* Tempus - your custom CSS.
   This file loads AFTER the course styles, so rules here win.
   Safe to edit: nothing automated will overwrite it.
   Edit via Appearance > Theme File Editor, or over SFTP at:
   wp-content/themes/inlingua-child/assets/tempus-custom.css
*/

:root {
	--tmp-brdr-radius: 14px;
	--tmp-panl-radius: 20px;
	--tmp-btn-brdr-radius: 12px;
	--tmp-box-shadow: 0 4px 50px rgba(31, 33, 33, .18);
}

#masthead .elementor-sticky--effects {
	background-color: var(--e-global-color-background-field);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
	transition: box-shadow .2s ease, background-color 1s ease;
}

.tempus-course .tc-grid { 
	padding-top: 0;
	padding-bottom: 40px;
}

.tempus-course .tc-breadcrumb { padding-top: 40px; }

.tempus-course .tc-hero:before { background-image: none; }

.tempus-course .tempus-modal__dialog { height: min(calc(86vh - 90px), 810px); }

.tempus-course .tempus-faq summary { background: var(--tmp-tint); }

.tempus-course .tc-faq-section { margin-top: 40px; }

.tc-js .inlingua-related-product-section {
	padding-left: 0;
    padding-right: 0;
}

.tc-js .tempus-includes__head { margin-bottom: 40px; }

.tc-js .tc-contact { margin-top: 25px; }

.tc-js .tc-related-card__media { aspect-ratio: 1.8695652174; }

.tc-js .tc-contact__item { margin-bottom: 0; }

.tc-js .related > h2:first-child { font-size: 2rem; }

.tc-js .tempus-includes li .tc-glance-icon { 
	width: 25px; 
	height: 25px;
}

button.tc-related-carousel__arrow {
	border-style: none;
	background-color: var(--e-global-color-tmpwht, #ffffff);
	box-shadow: 0 3px 4px rgba(31, 33, 33, .18);
	transition: all .5s ease;
}

button.tc-related-carousel__arrow:hover { background-color: #929C9A; }

.tc-related-carousel__arrow--prev { 
	left: 0;
	border-radius: 0 50% 50% 0; 
}

.tc-related-carousel__arrow--next { 
	right: 0;
	border-radius: 50% 0 0 50%; 
}

.tc-contact__item span:first-child { min-width: 50px; }

.tc-contact__social { gap: 10px; }

.course-hl-flex {
	display: flex;
	flex-flow: row;
	justify-content: space-around;
	gap: 20px;
}

.course-hl-promo {
	width: 300px;
	box-sizing: border-box;
    display: flex;
    flex-flow: column;
    justify-content: flex-start;
    align-items: center;
    gap: 1rem;
}

.course-hl-promo .txt-1 {
	margin-bottom: 4px;
	color: var(--e-global-color-d6838c6, #A6A6A6);
    font-size: 1rem;
	line-height: normal;
	font-weight: 500;
    text-align: center;
}

.course-hl-promo .txt-2 {
	color: var(--e-global-color-tmpdgry, #1F2121);
    font-size: 1.2rem;
	line-height: normal;
	font-weight: 500;
    text-align: center;
}

.course-hl-promo .txt-3 {
	color: var(--e-global-color-tmpdgry, #1F2121);
    font-size: 1rem;
	line-height: normal;
	text-align: center;
}

.course-hl-promo p { margin-bottom: 0; }

.course-hl-promo img { max-width: 160px; }

.tempus-course-filter,
.tempus-post-filter {
	padding: 30px;
	width: 390px;
	border-radius: var(--tmp-brdr-radius);
    border: 1px solid var(--e-global-color-border);
	background-color: #FFFFFF;
}

.tcf__search-wrap,
.tpf__search-wrap { 
	padding-right: 25px; 
	border-bottom: 2px solid var(--e-global-color-text);
}

.tcf__search-wrap:before,
.tpf__search-wrap:before {
	content: "\e08e";
	position: absolute;
    top: calc(50% - 11px);
    right: 6px;
    display: inline-block;
	vertical-align: middle;
	color: var(--e-global-color-text);
	font-size: 20px;
    font-style: normal;
    font-variant: normal;
    font-weight: 500;
    line-height: 1;
	font-family: "inlingua-icon";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.tempus-course-filter input[type=search],
.tempus-post-filter input[type=search] {
	padding-left: 5px !important;
	font-size: 16px; 
	border-style: none;
	background: none;
}

.tempus-course-filter input::placeholder,
.tempus-post-filter input::placeholder {
	opacity: 0.7;
  	color: var(--e-global-color-tmpdgry);
  	font-size: 16px;
}

.tempus-course-filter a.tcf__reset,
.tempus-post-filter a.tpf__reset {
	color: var(--e-global-color-text);
	font-weight: 500;
	text-decoration: none;
}

.tempus-course-filter a.tcf__reset:hover,
.tempus-post-filter a.tpf__reset:hover {
	color: var(--e-global-color-primary);
	text-decoration: underline;
}

.archive #page .product-block { 
	height: 100%;
	display: flex;
    flex-flow: column;
	border-radius: var(--tmp-brdr-radius);
}

.archive #page .product-block .product-caption .tempus-card-info .woocommerce-loop-product__title { margin-bottom: 20px; }

.archive #page .product-block .product-image a { aspect-ratio: 1.8695652174; }

.archive #page .product-block .product-image a img { 
	display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
	aspect-ratio: 16 / 9;
    pointer-events: none;
}

.archive #page .product-block .product-caption { 
	padding: 15px; 
	flex: 1;
    display: flex;
    flex-flow: column;
    justify-content: space-between;
}

.archive #page .product-block .product-caption a,
.archive #page .product-block .product-caption a:hover,
.archive #page .products-list .product-caption a,
.archive #page .products-list .product-caption a:hover { background-image: none; }

.archive #page .product-block .product-caption .woo-wrap-rating { display: none; }

.archive #page .inlingua-products-grid ul.products { 
	grid-column-gap: 15px;
	grid-row-gap: 15px; 
}

.archive #page .inlingua-products-grid .product-block .inlingua-woocommerce-price-atc {
	margin-left: 0;
    width: 100%;
}

.tcf-panel button.tcf-panel__close,
.tpf-panel button.tpf-panel__close { 
	color: #FFFFFF; 
	font-size: 22px;
	background: none;
}

.inlingua-sorting .tcf-toggle:hover, .inlingua-sorting .tcf-toggle:focus {
    background: none;
    color: var(--e-global-color-secondary, #1f2121);
}

.inlingua-sorting button.tcf-toggle,
.btn-filter-articles button.tpf-toggle {
	padding: 15px 20px;
	color: var(--e-global-color-text);
	font-weight: 500;
	border-radius: var(--tmp-brdr-radius);
	border: 1px solid var(--e-global-color-border);
	background-color: transparent;
}

.inlingua-sorting button.tcf-toggle i,
.btn-filter-articles button.tpf-toggle i { 
	font-size: 20px;
	font-weight: 600;
}

ul.products-list li.product-list { padding: 8px; }

.archive #page ul.products-list li.product-list .product-image img { 
	margin-bottom: 0; 
	aspect-ratio: 4 / 3;
	border-radius: calc(var(--tmp-brdr-radius) - 4px);
}

.archive #page ul.products-list li.product-list .product-caption {
	padding: 15px 30px;
    display: flex;
    flex-flow: column;
    justify-content: space-between;
}

.tempus-card-category {
	margin-bottom: 0;
	color: var(--e-global-color-lighter);
	font-size: 14px;
}

.archive #page ul.products-list li.product-list ul.tempus-card-meta {
	margin: 0;
	display: flex;
    flex-flow: row;
	gap: 15px;
}

.archive #page ul.products-list li.product-list ul.tempus-card-meta .tempus-card-meta__label { display: none; }

.archive #page ul.tempus-card-meta .tempus-card-meta__icon {
	width: 22px;
    height: 22px;
	color: var(--e-global-color-lighter);
    fill: var(--e-global-color-lighter);
}

.tc-js .tc-hero { padding-bottom: 50px; }

.tc-js .tc-hero .tc-hero__aside { 
/* 	margin-top: -35px;  */
	margin-top: 0; 
}

.tc-js .tc-hero .tc-glance-panel .tempus-includes__head { margin-bottom: 30px; }

.tc-js .tc-hero .tc-glance-panel .tempus-highlight-notes li:not(:last-child) {
	padding: 0 0 14px 34px;
    margin-bottom: 14px;
    border-bottom: 1px solid var(--tmp-border);
}

.site-header-cart-side { background: #FFFFFF; }

.site-header-cart-side .cart-side-heading { 
	padding-bottom: 14px;
	justify-content: space-between;
	background-color: var(--e-global-color-dark); 
}

.site-header-cart-side .cart-side-heading .cart-side-title {
	color: #FFFFFF;
	font-size: 18px;
    font-weight: 500;
	line-height: 20px;
	font-family: var(--e-global-typography-primary-font-family, Rubik, "Rubik Fallback", Arial, Helvetica, sans-serif);
}

.site-header-cart-side .cart-side-heading .close-cart-side { 
	padding-right: 0; 
	display: flex;
}

.site-header-cart-side .cart-side-heading .close-cart-side svg {
	width: 20px;
	height: 20px;
	fill: currentColor;
}

.site-header-cart-side .widget_shopping_cart { padding: 20px; }

.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__product { margin-bottom: 12px; }

.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__product .elementor-menu-cart__product-image { 
	margin-bottom: 12px;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	border-radius: var(--tmp-brdr-radius); 
}

.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__product .elementor-menu-cart__product-image a {
	width: 100%;
	height: 100%;
	display: block;
}

.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__product .elementor-menu-cart__product-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__product .product-name { font-weight: 600; }

.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__product .product-name,
.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__product .product-price { padding: 0 12px; }

.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__product .elementor-menu-cart__product-name dl.variation {
	margin: 10px 0 0 0;
	display: flex;
	justify-content: flex-end;
	gap: 5px;
	font-size: 16px;
}

.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__product .elementor-menu-cart__product-name dl.variation dt { font-weight: 600; }

.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__product .elementor-menu-cart__product-name dl.variation dd { 
	margin-bottom: 0;
	font-weight: 500; 
}

.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__product .elementor-menu-cart__product-name dl.variation dd p { margin-bottom: 0; }

.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__product .product-price {
	display: flex;
    justify-content: flex-end;
    align-items: center;
	gap: 10px;
}

.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__subtotal { 
	margin-bottom: 12px;
	padding: 12px;
	display: flex;
    justify-content: flex-end;
    align-items: center;
	gap: 10px;
	line-height: 1;
	border: 1px solid #cdcdcd;
    border-radius: var(--tmp-btn-brdr-radius);
}

.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__footer-buttons {
	display: flex;
    gap: 12px;
}

body:not(.home) #page h1,
body:not(.home) #page h2 { font-weight: 500; }

#page .woocommerce-MyAccount-content h2 { font-size: 1.5rem; }

a.scrollup { 
	border-width: 2px;
	border-style: solid;
	border-color: var(--e-global-color-accent);
	background: var(--e-global-color-accent);
	transition: all .3s ease;
}

a.scrollup:hover { 
	transform: scale(1.1);
	border-color: var(--e-global-color-accent);
	background: var(--e-global-color-dark); 
}

a.scrollup .scrollup-icon { 
	color: var(--e-global-color-text);
	font-size: 1.3rem;
	line-height: 1.4rem;
	transition: all .3s ease;
}

a.scrollup .scrollup-icon:before { 
	font-weight: 600;
	line-height: 1.4rem;
}

a.scrollup:hover .scrollup-icon { color: var(--e-global-color-accent); }

.pg-header:not(.no-border) { border-bottom: 1px solid var(--e-global-color-border); }



    


/*
 * Override styles
 */
body.theme-inlingua { background-color: var(--e-global-color-background-field); }

body.wp-singular h1, 
body.wp-singular.woocommerce h1,
body.wp-singular h2, 
body.wp-singular.woocommerce h2, 
body.wp-singular h3, 
body.wp-singular.woocommerce h3, 
body.wp-singular h4, 
body.wp-singular.woocommerce h4, 
body.wp-singular h5, 
body.wp-singular h6 { 
	letter-spacing: normal;
	text-transform: none; 
}

.primary-navigation .menu-title { 
	letter-spacing: normal;
	text-transform: none !important; 
}

::selection {
	color: var(--e-global-color-text) !important;
  	background: color-mix(in srgb, var(--e-global-color-accent) 30%, transparent);
}

#masthead .main-navigation ul.menu > li.menu-item > a { margin: 0px 8px; }

.tc-tablist { 
	gap: 8px;
	border-radius: var(--tmp-brdr-radius); 
}

h5.courses {
	padding: 10px 0 5px 0;
	font-size: 1rem;
    font-weight: 600;
}

#page .site-content { 
	margin-top: 0; 
	margin-bottom: 100px;
}

.woocommerce-account #page .site-content { margin-top: 80px; }

.woocommerce-cart #page .site-content,
.woocommerce-checkout #page .site-content,
.woocommerce-account.logged-in #page .site-content { margin-top: 60px; }

.woocommerce-account .tempus-account-title { margin-bottom: 50px; }

ul.products li.product img { border-radius: calc(var(--tmp-brdr-radius) - 4px); }

.inlingua-sorting .woocommerce-ordering select { border-radius: var(--tmp-brdr-radius); }

.inlingua-sorting .woocommerce-ordering select.orderby { width: fit-content !important; }

.gridlist-toggle a,
.gridlist-toggle a:hover { color: var(--e-global-color-primary); }

.elementor-default button.elementor-button { border-radius: var(--tmp-btn-brdr-radius); }

.tc-card .product-add-to-cart-form .quantity_wrap,
.tc-card .product-add-to-cart-form button[type="submit"] i { display: none; }

header .header-group-action { gap: 15px; }

header .header-group-action .site-header-cart,
header .header-group-action .site-header-account { 
	padding: 4px 0 6px 0; 
	position: relative;
}

header .header-group-action .site-header-cart .tempus-nav-icon, 
header .header-group-action .site-header-account .tempus-nav-icon { fill: var(--e-global-color-text); }

.logged-in header .header-group-action .site-header-account .tempus-nav-icon { fill: var(--e-global-color-primary); }

header .header-group-action .site-header-account .icon { margin-right: 0; }

header .header-group-action .site-header-cart:after,
header .header-group-action .site-header-account:after {
	content: '';
	position: absolute;
	bottom: 0;
    left: 0;
	width: 0;
	height: 2px;
	background-color: var(--e-global-color-text);
	transition: all 0.4s ease;
}

.logged-in header .header-group-action .site-header-account:after { background-color: var(--e-global-color-primary); }

header .header-group-action .site-header-cart:hover:after,
header .header-group-action .site-header-account:hover:after { width: 100%; }

header .header-group-action .site-header-cart .count,
.inlingua-mobile-nav .site-header-cart .count {
	padding: 0;
	top: -10px;
    left: calc(100% - 22px);
	width: 20px;
	min-width: 20px;
    color: var(--e-global-color-text);
    font-size: 0.7rem;
    font-weight: 600;
	text-align: center;
    background: none;
}

header .inlingua-info-button .inlingua-icon > span, 
header .menu-mobile-nav-button .inlingua-icon > span { height: 2px; }

.main-navigation ul.menu > li.menu-item > a .menu-title:before { top: calc(100% + 5px); }

.main-navigation .sub-menu,
.site-header-account .account-dropdown .account-wrap { border-radius: var(--tmp-brdr-radius); }

.site-header-account .account-links-menu li a, 
.site-header-account .account-dashboard li a,
.main-navigation li.tempus-mega > ul.sub-menu > li.menu-item > ul.sub-menu > li.menu-item > a {
	padding: 0 0 2px 0;
	position: relative;
	width: fit-content;
	border-bottom: none;
}

.site-header-account .account-links-menu li a:hover, 
.site-header-account .account-dashboard li a:hover { text-decoration: none; }

.site-header-account .account-links-menu li a:after, 
.site-header-account .account-dashboard li a:after,
.main-navigation li.tempus-mega > ul.sub-menu > li.menu-item > ul.sub-menu > li.menu-item > a:after {
	content: '';
	margin-left: 0 !important;
	display: block;
	width: 0;
	height: 1px;
	position: absolute;
	bottom: 2px;
	left: 0;
	background-color: var(--e-global-color-secondary);
	transition: all 0.4s ease;
}

.site-header-account .account-links-menu li a:hover:after, 
.site-header-account .account-dashboard li a:hover:after,
.main-navigation li.tempus-mega > ul.sub-menu > li.menu-item > ul.sub-menu > li.menu-item > a:hover:after { width: 100%; }

.woocommerce-page .wc-block-components-text-input input[type=text],
.woocommerce-page .wc-block-components-quantity-selector { border-radius: var(--tmp-btn-brdr-radius); }

.woocommerce-page .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input { 
	padding: 10px; 
	font-size: 16px;
}

.woocommerce-page .wc-block-components-panel__button,
.woocommerce-page .wc-block-components-panel__button:hover {
	font-size: 16px;
    text-decoration: none;
}

.woocommerce-page .wp-block-woocommerce-checkout .wc-block-checkout textarea::placeholder { color: rgba(0, 0, 0, 0.5); }

.elementor form input:not([type="radio"]):not([type="checkbox"]):not(.tempus-search__input),
.elementor form textarea { padding: 5px 15px; }

.elementor form .e-form-radio-button-base { position: relative !important; }

.elementor form .e-form-radio-button-base::before {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
}

.elementor form .e-form-success-message-base {
	color: #508d56;
	font-size: 16px;
	line-height: 1.2rem;
	border-radius: 12px;
    border: 1px solid #508d56;
    background-color: #D4E9D6;
}

.elementor form .e-form-error-message-base {
	color: #8f5050;
	font-size: 16px;
	line-height: 1.2rem;
	border-radius: 12px;
    border: 1px solid #8f5050;
    background-color: #ffdede;
}

.tsb-calendar-live { padding-top: 15px; }

.tsb-calendar-live .ph-calendar-container {
	overflow: hidden;
	border-radius: 16px;
}

.tsb-calendar-live .ph-calendar-container .ph-calendar-month { 
	margin-top: 0; 
	padding: 10px 0;
	background-color: var(--e-global-color-dark) !important;
}

.tsb-calendar-live .ph-calendar-container .ph-calendar-month ul li { 
	font-size: 16px; 
	font-weight: 400;
	text-transform: none;
	font-family: var(--e-global-typography-primary-font-family, Rubik, "Rubik Fallback", Arial, Helvetica, sans-serif);
}

/* .tsb-calendar-live .ph-calendar-container .ph-calendar-month .span-month, 
.tsb-calendar-live .ph-calendar-container .ph-calendar-month .span-year, 
.tsb-calendar-live .ph-calendar-container .ph-calendar-month .ph-prev, 
.tsb-calendar-live .ph-calendar-container .ph-calendar-month .ph-next {
    color: var(--e-global-color-text) !important;
} */

.tsb-calendar-live .ph-calendar-container ul.ph-calendar-weekdays {
	padding: 10px 0;
	border-top: 1px solid #ffffff;
	background-color: var(--e-global-color-dark) !important;
}

.tsb-calendar-live .ph-calendar-container ul.ph-calendar-weekdays li { 
	margin-bottom: 0; 
/* 	color: var(--e-global-color-text) !important; */
	font-size: 16px; 
	font-weight: 400;
	font-family: var(--e-global-typography-primary-font-family, Rubik, "Rubik Fallback", Arial, Helvetica, sans-serif);
}

.tsb-calendar-live .ph-calendar-container ul.ph-calendar-days { 
	padding: 10px 5px !important;
	background-color: var(--e-global-color-tmplgry) !important; 
}

.tsb-calendar-live .ph-calendar-container ul.ph-calendar-days li.ph-calendar-date {
	margin-bottom: 0;
	padding: 6px 0;
	border-radius: 6px;
}

.tsb-calendar-live .ph-calendar-container ul.ph-calendar-days li.ph-calendar-date.mouse_hover:not(.selected-date), 
.tsb-calendar-live .ph-calendar-container ul.ph-calendar-days li.ph-calendar-date:not(.selected-date):hover { 
	color: #FFFFFF !important;
	background-color: var(--e-global-color-d6838c6) !important; 
}

.tsb-calendar-live .ph-calendar-container ul.ph-calendar-days li.ph-calendar-date.de-active.mouse_hover, 
.tsb-calendar-live .ph-calendar-container ul.ph-calendar-days li.ph-calendar-date.de-active:hover { background-color: #ededed !important; }

.tsb-calendar-live .ph-calendar-container ul.ph-calendar-days li.ph-calendar-date.selected-date {
	color: #FFFFFF !important;
	background-color: var(--e-global-color-dark) !important;
}

.tsb-calendar-live .booking-info-wraper {
	margin-top: 16px;
	padding: 16px 18px;
	display: flex;
	flex-flow: column;
    gap: 10px;
    border-radius: 12px;
    border: 1px solid var(--tmp-border);
    background-color: transparent !important;
}

.tsb-calendar-live .booking-info-wraper p#booking_info_text,
.tsb-calendar-live .booking-info-wraper p#booking_price_text {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	color: var(--tmp-muted) !important;
	font-size: 16px;
    line-height: 1;
}

.woocommerce-page .tc-related-carousel h2 { margin-bottom: 30px; }

.woocommerce-page .tc-related-carousel .inlingua-swiper .swiper-slide { max-width: 300px; }

.woocommerce-page .tc-related-carousel .inlingua-swiper .tempus-card-meta { margin: 0 0 15px 0; }

.woocommerce-order .woocommerce-thankyou-order-received { background-color: transparent; }

input[type=text]:focus, input[type=text]:hover, input[type=number]:focus, input[type=number]:hover, input[type=email]:focus, input[type=email]:hover, input[type=tel]:focus, input[type=tel]:hover, input[type=url]:focus, input[type=url]:hover, input[type=password]:focus, input[type=password]:hover, input[type=search]:focus, input[type=search]:hover, input[type=date]:focus, input[type=date]:hover, input[type=time]:focus, input[type=time]:hover, textarea:focus, textarea:hover, .input-text:focus, .input-text:hover,
.wp-block-woocommerce-checkout .wc-block-checkout .wc-block-components-text-input .wc-blocks-components-select__select:hover, .wp-block-woocommerce-checkout .wc-block-checkout .wc-block-components-text-input input[type=email]:hover, .wp-block-woocommerce-checkout .wc-block-checkout .wc-block-components-text-input input[type=text]:hover, .wp-block-woocommerce-checkout .wc-block-checkout .wc-block-components-text-input input[type=tel]:hover, .wp-block-woocommerce-checkout .wc-block-checkout .wc-blocks-components-select .wc-blocks-components-select__select:hover, .wp-block-woocommerce-checkout .wc-block-checkout .wc-blocks-components-select input[type=email]:hover, .wp-block-woocommerce-checkout .wc-block-checkout .wc-blocks-components-select input[type=text]:hover, .wp-block-woocommerce-checkout .wc-block-checkout .wc-blocks-components-select input[type=tel]:hover { border-color: var(--e-global-color-dark); }

.wc-block-components-sidebar-layout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label, 
.wc-block-components-sidebar-layout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__prices .price, 
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__prices .price,
.wc-block-components-sidebar-layout.wc-block-cart table.wc-block-cart-items tbody tr.wc-block-cart-items__row .wc-block-cart-item__total .wc-block-components-product-price { 
	font-size: 18px; 
	font-weight: 500;
}

.wc-block-components-totals-item__description { font-size: 16px; }

.wc-block-components-sidebar-layout.wc-block-cart table.wc-block-cart-items .wc-block-cart-item__wrap .wc-block-components-product-name:hover { background-size: 0; }

.wc-block-components-sidebar-layout.wc-block-cart .wc-block-cart__sidebar .wc-block-components-totals-coupon__content .wc-block-components-text-input input[type=text]:hover { border-color: var(--e-global-color-dark); }

.wc-block-components-sidebar-layout .wc-block-components-sidebar .wc-block-formatted-money-amount { font-weight: 500; }

.wc-block-components-order-summary .wc-block-components-order-summary-item__quantity { background: var(--e-global-color-accent) !important; }

.elementor-widget-icon-list .elementor-icon-list-items .elementor-icon-list-text:hover { background-size: 0; }

.carousel-grey .elementor-brand-wrapper img, 
.carousel-grey .elementor-brand-wrapper svg { 
	opacity: 0.5;
	-webkit-opacity: 0.5;
	filter: grayscale(100%); 
}



/*
 * Multiple select field.
 */
.choices {
	width: 100%;
	max-width: 100%;
}

.choices .choices__inner {
	padding: 0;
    width: 100%;
    border: none;
    background-color: transparent;
}

.choices .choices__inner .choices__list.choices__list--multiple {
	display: flex;
	flex-flow: row wrap;
}

.choices .choices__inner .choices__input {
	width: 100% !important;
	min-width: 100% !important;
	border-color: #D6D5D5;
}

.choices .choices__inner .choices__list.choices__list--multiple .choices__item {
	padding: 0 10px 0 0;
	display: flex;
    align-items: center;
	gap: 4px;
	color: #7e7c7c;
	font-size: 15px;
	font-weight: 400;
	border-radius: 0;
    border: none;
    background-color: transparent;
}

.choices .choices__inner .choices__list.choices__list--multiple .choices__item .choices__button {
	margin-left: 0;
    padding: 0;
    width: 9px;
    filter: invert(1);
    border-left: none;
    background-size: 9px;
    background-color: transparent;
}

.choices .choices__list--dropdown, 
.choices .choices__list[aria-expanded] {
	margin-top: -4px;
	border-radius: 12px;
}

.choices .choices__list--dropdown .choices__item, 
.choices .choices__list[aria-expanded] .choices__item {
	padding: 10px 15px;
}





/*
 * Login/Register styles
 */
.site-header-account .login-form-title {
	font-size: 20px;
    font-weight: 600;
	font-family: var(--e-global-typography-primary-font-family, Rubik, "Rubik Fallback", Arial, Helvetica, sans-serif);
}

.site-header-account .account-dropdown .login-form-head { align-items: flex-end; }

.site-header-account .account-dropdown input,
input[type=text], 
input[type=number], 
input[type=email], 
input[type=tel], 
input[type=url], 
input[type=password], 
input[type=search], 
input[type=date], 
input[type=time], 
textarea, 
.input-text{
	border-radius: var(--tmp-btn-brdr-radius);
	font-size: 16px;
}

.site-header-account .account-dropdown button,
button.btn-slip-effect, 
.button.btn-slip-effect, 
input[type=button].btn-slip-effect, 
input[type=reset].btn-slip-effect, 
input[type=submit].btn-slip-effect,
form.woocommerce-form-login button[type=submit],
form.woocommerce-form-register button[type=submit] { 
	padding: 12px 24px;
	color: #ffffff; 
	font-size: 16px;
	line-height: 1;
	border-radius: var(--tmp-btn-brdr-radius);
}

.site-header-account .account-dropdown a.register-link {
	padding: 6px 18px;
    color: var(--e-global-color-text);
    font-size: 14px;
	font-weight: var(--e-global-typography-accent-font-weight);
    line-height: 1;
    border-radius: calc(var(--tmp-btn-brdr-radius) - 2px);
	background-color: var(--e-global-color-11a024c);
}

.site-header-account .account-dropdown a.register-link:hover {
	color: #ffffff;
	background-color: var(--e-global-color-secondary);
}

.woocommerce-page .woocommerce-form-login,
.woocommerce-page .woocommerce-form-register {
	padding: 30px;
	height: 100%;
	border-radius: var(--tmp-panl-radius);
	background: var(--e-global-color-tmpwht, #fff);
    box-shadow: var(--tmp-box-shadow);
}

.woocommerce-MyAccount-content a:hover {
	color: var(--e-global-color-primary);
	text-decoration: underline;
}

.woocommerce-account #page nav.woocommerce-MyAccount-navigation li > a {
	padding: 14px 6px;
	display: flex;
    justify-content: space-between;
    align-items: center;
}

.woocommerce-account #page .addresses header.title a {
	margin-top: 0;
	padding: 12px 0;
	width: auto;
	height: auto;
	float: none;
	display: flex;
	align-items: center;
	gap: 10px;
	text-indent: 0;
	transition: none;
}


.woocommerce-account #page .addresses header.title a:hover { text-decoration: none; }

.woocommerce-account #page .addresses header.title a:before {
	content: '';
	width: 0;
	height: 0;
}

.woocommerce-account #page .addresses header.title a:after {
	content: '';
	width: 18px;
	height: 18px;
	display: block;
	mask-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M6.41421%2015.89L16.5563%205.74785L15.1421%204.33363L5%2014.4758V15.89H6.41421ZM7.24264%2017.89H3V13.6473L14.435%202.21231C14.8256%201.82179%2015.4587%201.82179%2015.8492%202.21231L18.6777%205.04074C19.0682%205.43126%2019.0682%206.06443%2018.6777%206.45495L7.24264%2017.89ZM3%2019.89H21V21.89H3V19.89Z%22%2F%3E%3C%2Fsvg%3E);
	mask-repeat: no-repeat;
	background-color: var(--e-global-color-text);
}

.woocommerce-account #page .addresses header.title a:hover:after { background-color: var(--e-global-color-primary); }

.tempus-modal__iframe #forms-component div[data-testid="card-layout"] {
	background-color: pink;
}




/*
 * Utility styles
 */
.pad-vrt-30 { padding: 30px 0; }

.pad-top-15 { padding-top: 15px; }

.para-wrap {
	overflow-wrap: break-word;
    word-break: break-word;
}

.el-hover-grow { transition: transform 0.3s ease; }

.el-hover-grow:hover { transform: scale(1.05); }

a.lnk-button {
	padding: 16px 24px;
	display: block;
	width: fit-content;
    text-align: center;
	color: var(--e-global-color-tmpwht, #fff);
	font-size: 16px;
	font-weight: 600;
	text-decoration: none;
	font-family: var(--e-global-typography-primary-font-family, Rubik, "Rubik Fallback", Arial, Helvetica, sans-serif);
	cursor: pointer;
	border: 0;
    border-radius: var(--tmp-brdr-radius);
    background: var(--tmp-accent);
}

a.lnk-button:hover {
	color: var(--e-global-color-tmpwht, #ffffff);
    background: var(--tmp-ink);
}

ul.list-tick { list-style: none; } 

ul.list-tick li { padding-left: 25px; }

ul.list-tick li:before {
	content: "";
	position: absolute;
    display: inline-block;
	font-size: 0.75rem;
    font-style: normal;
    font-variant: normal;
    font-weight: 700;
    line-height: 1;
	font-family: "inlingua-icon";
    vertical-align: middle;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	background: transparent;
}

ul.list-tick.txt-grn li:before{ color: var(--e-global-color-tmpgrn, #19CB98); }
ul.list-tick.txt-blu li:before{ color: var(--e-global-color-tmpblue, #18A5F3); }

.txt-take-note {
	margin-top: 20px;
	padding-top: 4px;
	width: fit-content;
	color: var(--e-global-color-tmpred, #FE6571);
	border-top: 1px solid var(--e-global-color-tmpred, #FE6571);
}

.site-content .type-post .custom-social-style .uael-container .elementor-grid {
	margin-left: 0;
    margin-right: 0;
	display: flex;
	gap: 10px;
}

.site-content .type-post .custom-social-style .uael-container .elementor-grid .elementor-grid-item a.uael-share-btn-facebook div.uael-share-btn,
.site-content .type-post .custom-social-style .uael-container .elementor-grid .elementor-grid-item a.uael-share-btn-twitter div.uael-share-btn,
.site-content .type-post .custom-social-style .uael-container .elementor-grid .elementor-grid-item a.uael-share-btn-linkedin div.uael-share-btn {
	margin-left: 0;
    margin-right: 0;
	transition: all .3s ease;
}

.site-content .type-post .custom-social-style .uael-container .elementor-grid .elementor-grid-item a.uael-share-btn-facebook:hover div.uael-share-btn,
.site-content .type-post .custom-social-style .uael-container .elementor-grid .elementor-grid-item a.uael-share-btn-twitter:hover div.uael-share-btn,
.site-content .type-post .custom-social-style .uael-container .elementor-grid .elementor-grid-item a.uael-share-btn-linkedin:hover div.uael-share-btn {
	transform: scale(1.1);
}

.site-content .type-post .custom-social-style .uael-container .elementor-grid .elementor-grid-item a.uael-share-btn-facebook div.uael-share-btn span.uael-share-btn__icon,
.site-content .type-post .custom-social-style .uael-container .elementor-grid .elementor-grid-item a.uael-share-btn-twitter div.uael-share-btn span.uael-share-btn__icon,
.site-content .type-post .custom-social-style .uael-container .elementor-grid .elementor-grid-item a.uael-share-btn-linkedin div.uael-share-btn span.uael-share-btn__icon { 
	background-color: transparent !important;	
}

.site-content .type-post .custom-social-style .uael-container .elementor-grid .elementor-grid-item a.uael-share-btn-facebook div.uael-share-btn .uael-share-btn__icon i.fa-facebook,
.site-content .type-post .custom-social-style .uael-container .elementor-grid .elementor-grid-item a.uael-share-btn-twitter div.uael-share-btn .uael-share-btn__icon i.fa-x-twitter,
.site-content .type-post .custom-social-style .uael-container .elementor-grid .elementor-grid-item a.uael-share-btn-linkedin div.uael-share-btn .uael-share-btn__icon i.fa-linkedin {
	color: var(--e-global-color-lighter);
}

.site-content .type-post .custom-social-style .uael-container .elementor-grid .elementor-grid-item a.uael-share-btn-facebook:hover div.uael-share-btn .uael-share-btn__icon i.fa-facebook {
	color: rgb(24, 119, 242);
}

.site-content .type-post .custom-social-style .uael-container .elementor-grid .elementor-grid-item a.uael-share-btn-twitter:hover div.uael-share-btn .uael-share-btn__icon i.fa-x-twitter {
	color: rgb(0, 0, 0);
}

.site-content .type-post .custom-social-style .uael-container .elementor-grid .elementor-grid-item a.uael-share-btn-linkedin:hover div.uael-share-btn .uael-share-btn__icon i.fa-linkedin {
	color: rgb(10, 102, 194);
}

.site-content .type-post .custom-post-navigation a:hover .post-navigation__arrow-wrapper,
.site-content .type-post .custom-post-navigation a:hover .post-navigation__prev--label,
.site-content .type-post .custom-post-navigation a:hover .post-navigation__prev--title,
.site-content .type-post .custom-post-navigation a:hover .post-navigation__next--label,
.site-content .type-post .custom-post-navigation a:hover .post-navigation__next--title {
	color: var(--e-global-color-dark);
    fill: var(--e-global-color-dark);
}

/* Primary button */
.elementor .e-button-base,
.elementor .e-button-base.btn-primary,
.tempus-modal button.tempus-cart-modal__btn--continue,
.tempus-course .tempus-apply-wrap--purchase .single_add_to_cart_button,
.tc-related-card .tempus-apply-btn,
.tempus-course .tempus-apply-btn,
.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__footer-buttons a.elementor-button,
#page .inlingua-products-grid .product-block .product-caption .quantity_cart .button,
.woocommerce-page button.woocommerce-Button[type="submit"],
.wc-block-components-sidebar-layout.wc-block-cart .wc-block-cart__sidebar .wc-block-cart__submit-container a.wc-block-components-button,
.wp-block-woocommerce-checkout .wc-block-checkout .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button,
.elementor-widget-button:not(.btn-footer):not(.btn-category) .elementor-button.elementor-button-link,
.elementor .e-form-submit-button-base,
.archive #page ul.products-list li.product-list .product-caption .quantity_cart a.button,
.info-box-btn-primary .elementor-button {
	padding: 14px 24px;
    cursor: pointer;
	height: auto;
	min-height: 0;
    color: #FFFFFF;
    font-size: 16px;
    font-weight: 500 !important;
	font-style: normal;
	line-height: 1;
	text-decoration: none;
    font-family: var(--e-global-typography-primary-font-family, Rubik, "Rubik Fallback", Arial, Helvetica, sans-serif) !important;
    border-radius: var(--tmp-btn-brdr-radius);
    border: 2px solid var(--e-global-color-primary);
    background-color: var(--e-global-color-primary);
    transition: all .3s ease;
}

.elementor .e-button-base:hover,
.elementor .e-button-base.btn-primary:hover,
.tempus-modal button.tempus-cart-modal__btn--continue:hover,
.tempus-course .tempus-apply-wrap--purchase .single_add_to_cart_button:hover,
.tc-related-card .tempus-apply-btn:hover,
.tempus-course .tempus-apply-btn:hover,
.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__footer-buttons a.elementor-button:hover,
#page .inlingua-products-grid .product-block .product-caption .quantity_cart .button:hover,
.woocommerce-page button.woocommerce-Button[type="submit"]:hover,
.wc-block-components-sidebar-layout.wc-block-cart .wc-block-cart__sidebar .wc-block-cart__submit-container a.wc-block-components-button:hover,
.wp-block-woocommerce-checkout .wc-block-checkout .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button:hover,
.elementor-widget-button:not(.btn-footer):not(.btn-category) .elementor-button.elementor-button-link:hover,
.elementor .e-form-submit-button-base:hover,
.archive #page ul.products-list li.product-list .product-caption .quantity_cart a.button:hover,
.info-box-btn-primary .elementor-button:hover,
.elementor .e-button-base:focus,
.elementor .e-button-base.btn-primary:focus,
.tempus-modal button.tempus-cart-modal__btn--continue:focus,
.tempus-course .tempus-apply-wrap--purchase .single_add_to_cart_button:focus,
.tc-related-card .tempus-apply-btn:focus,
.tempus-course .tempus-apply-btn:focus,
.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__footer-buttons a.elementor-button:focus,
#page .inlingua-products-grid .product-block .product-caption .quantity_cart .button:focus,
.woocommerce-page button.woocommerce-Button[type="submit"]:focus,
.wc-block-components-sidebar-layout.wc-block-cart .wc-block-cart__sidebar .wc-block-cart__submit-container a.wc-block-components-button:focus,
.wp-block-woocommerce-checkout .wc-block-checkout .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button:focus,
.elementor-widget-button:not(.btn-footer):not(.btn-category) .elementor-button.elementor-button-link:focus,
.elementor .e-form-submit-button-base:focus,
.archive #page ul.products-list li.product-list .product-caption .quantity_cart a.button:focus,
.info-box-btn-primary .elementor-button:focus { 
	color: #FFFFFF;
	transform: scale(1.05);
	border-color: var(--e-global-color-dark);
	background-color: var(--e-global-color-dark) !important; 
}

.tempus-course .tempus-apply-wrap--purchase .single_add_to_cart_button { background-color: var(--e-global-color-primary) !important; }

.tempus-course .tempus-apply-wrap--purchase .single_add_to_cart_button.alt.disabled {
	opacity: 0.4;
	cursor: default;
	pointer-events: none;
	color: var(--e-global-color-tmpwht);
	background-color: var(--e-global-color-primary) !important;
}

/* Secondary button */
.elementor .e-button-base.btn-secondary,
.tempus-course-filter .tcf__apply,
.tempus-post-filter .tpf__apply,
.woocommerce-page .tempus-course a.button-link,
.tempus-modal a.tempus-cart-modal__btn--basket,
.elementor-widget-button.btn-secondary .elementor-button.elementor-button-link,
.wp-block-woocommerce-cart .wc-block-components-totals-coupon__content .wc-block-components-totals-coupon__button,
.wp-block-woocommerce-checkout .wc-block-checkout .wp-block-woocommerce-checkout-order-summary-coupon-form-block .wc-block-components-totals-coupon__button,
.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__footer-buttons a.elementor-button.elementor-button--view-cart,
.elementor-widget-hfe-infocard .hfe-infocard .hfe-infocard-text-wrap .hfe-button-wrapper .elementor-button-link,
.info-box-btn-secondary.elementor-widget-uael-infobox .elementor-widget-button .elementor-button.elementor-button-link {
	padding: 14px 24px;
    cursor: pointer;
    color: var(--e-global-color-primary);
    font-size: 16px;
    font-weight: 600;
	font-style: normal;
	line-height: 1;
	text-decoration: none;
    font-family: var(--e-global-typography-primary-font-family, Rubik, "Rubik Fallback", Arial, Helvetica, sans-serif);
    border-radius: var(--tmp-btn-brdr-radius);
    border: 2px solid var(--e-global-color-primary);
    background-color: #FFFFFF;
    transition: all 0.3s ease;
}

.info-box-btn-secondary.elementor-widget-uael-infobox .elementor-widget-button .elementor-button.elementor-button-link { padding: 10px 20px; }

.info-box-btn-secondary.elementor-widget-uael-infobox .elementor-widget-button .elementor-button.elementor-button-link svg { width: 22px; }

.wp-block-woocommerce-cart .wc-block-components-totals-coupon__content .wc-block-components-totals-coupon__button:disabled { opacity: 0.5; }

.wc-block-components-button:not(.is-link):disabled .wc-block-components-button__text { opacity: 1 !important; }

.elementor .e-button-base.btn-secondary:hover,
.tempus-course-filter .tcf__apply:hover,
.tempus-post-filter .tpf__apply:hover,
.woocommerce-page .tempus-course a.button-link:hover,
.tempus-modal a.tempus-cart-modal__btn--basket:hover,
.elementor-widget-button.btn-secondary .elementor-button.elementor-button-link:hover,
.wp-block-woocommerce-cart .wc-block-components-totals-coupon__content .wc-block-components-totals-coupon__button:hover,
.wp-block-woocommerce-checkout .wc-block-checkout .wp-block-woocommerce-checkout-order-summary-coupon-form-block .wc-block-components-totals-coupon__button:hover,
.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__footer-buttons a.elementor-button.elementor-button--view-cart:hover,
.elementor-widget-hfe-infocard .hfe-infocard .hfe-infocard-text-wrap .hfe-button-wrapper .elementor-button-link:hover,
.info-box-btn-secondary.elementor-widget-uael-infobox .elementor-widget-button .elementor-button.elementor-button-link:hover,
.elementor .e-button-base.btn-secondary:focus,
.tempus-course-filter .tcf__apply:focus,
.tempus-post-filter .tpf__apply:focus,
.woocommerce-page .tempus-course a.button-link:focus,
.tempus-modal a.tempus-cart-modal__btn--basket:focus,
.elementor-widget-button.btn-secondary .elementor-button.elementor-button-link:focus,
.wp-block-woocommerce-cart .wc-block-components-totals-coupon__content .wc-block-components-totals-coupon__button:focus,
.wp-block-woocommerce-checkout .wc-block-checkout .wp-block-woocommerce-checkout-order-summary-coupon-form-block .wc-block-components-totals-coupon__button:focus,
.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__footer-buttons a.elementor-button.elementor-button--view-cart:focus,
.elementor-widget-hfe-infocard .hfe-infocard .hfe-infocard-text-wrap .hfe-button-wrapper .elementor-button-link:focus,
.info-box-btn-secondary.elementor-widget-uael-infobox .elementor-widget-button .elementor-button.elementor-button-link:focus { 
	color: var(--e-global-color-text);
	transform: scale(1.05);
	border-color: var(--e-global-color-dark); 
	background-color: #FFFFFF !important;
}

/* Primary dark button */
.elementor .e-button-base.btn-primary.btn-dark {
	color: #FFFFFF;
	border: 2px solid var(--e-global-color-dark);
    background-color: var(--e-global-color-dark);
}

.elementor .e-button-base.btn-primary.btn-dark:hover {
	color: var(--e-global-color-text);
	border: 2px solid #FFFFFF;
    background-color: #FFFFFF !important;
}

/* Secondary dark button */
.elementor .e-button-base.btn-secondary.btn-dark {
	color: var(--e-global-color-text);
	border: 2px solid var(--e-global-color-dark);
    background-color: #FFFFFF;
}

.elementor .e-button-base.btn-secondary.btn-dark:hover {
	color: #FFFFFF;
	border: 2px solid #FFFFFF;
    background-color: var(--e-global-color-dark) !important;
}

/* Standard X no background button */
.tempus-modal button.tempus-modal__close { background-color: transparent; }

.tempus-modal button.tempus-modal__close:hover { background-color: transparent; }

/* Button override styles */
.wp-block-woocommerce-cart .wc-block-components-totals-coupon__content .wc-block-components-totals-coupon__button .wc-block-components-button__text,
.wp-block-woocommerce-checkout .wc-block-checkout .wp-block-woocommerce-checkout-order-summary-coupon-form-block .wc-block-components-totals-coupon__button .wc-block-components-button__text { 
	color: var(--e-global-color-primary); 
	line-height: normal;
	text-transform: initial;
}

.wp-block-woocommerce-cart .wc-block-components-totals-coupon__content .wc-block-components-totals-coupon__button:hover .wc-block-components-button__text,
.wp-block-woocommerce-checkout .wc-block-checkout .wp-block-woocommerce-checkout-order-summary-coupon-form-block .wc-block-components-totals-coupon__button:hover .wc-block-components-button__text { color: var(--e-global-color-text); }

/* Category button */
.elementor .elementor-widget-button.btn-category .elementor-button { 
	height: stretch;
	position: relative;
	fill: var(--e-global-color-text);
	color: var(--e-global-color-text);
	border-color: var(--e-global-color-text); 
	background-color: #FFFFFF;
	transition: all .3s ease;
}

.elementor .elementor-widget-button.btn-category .elementor-button:hover { 
	fill: #FFFFFF;
	color: #FFFFFF;
/* 	transform: scale(1.05); */
	border-color: var(--e-global-color-text); 
/* 	background-color: var(--e-global-color-dark);  */
}

.elementor .elementor-widget-button.btn-category .elementor-button:before { 
	content: '';
	width: 500px;
	height: 500px;
	position: absolute;
	top: 50%;
	left: 50%;
	border-radius: 100%;
	background-color: rgb(25, 25, 25);
	opacity: 0;
	transform: translate(-50%, -50%) scale(0);
	transition: transform .5s ease, opacity .8s ease;
}

.elementor .elementor-widget-button.btn-category .elementor-button:hover:before {
	opacity: 1;
	transform: translate(-50%, -50%) scale(1);
}

.elementor .elementor-widget-button.btn-category .elementor-button .elementor-button-content-wrapper { 
	width: 100%;
	flex-direction: column;
	gap: 15px;
	z-index: 99;
}

.elementor .elementor-widget-button.btn-category .elementor-button .elementor-button-content-wrapper .elementor-button-icon svg { width: 1.8em; }

/* Tab button */
.tc-tablist button.tc-tab { 
	padding: 12px 18px 10px 18px;
	flex: 1 1 auto;
  	white-space: nowrap;
  	min-width: 0; 
	color: color-mix(in srgb, var(--e-global-color-text) 70%, transparent);
	font-size: 15px; 
	font-weight: 500;
	line-height: 1;
	border-radius: var(--tmp-btn-brdr-radius);
	background-color: transparent;
	transition: background-color .3s ease;
}

.tc-tablist button.tc-tab:hover { 
	transform: scale(1.05);
	background-color: color-mix(in srgb, var(--e-global-color-dark) 8%, transparent); 
}

.tc-tablist button.tc-tab.is-active,
.tc-tablist button.tc-tab.is-active:hover {
	pointer-events: none;
	color: var(--e-global-color-text);
    background-color: var(--e-global-color-accent);
}

.wp-block-woocommerce-checkout .wc-block-checkout .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button { width: fit-content; }

.woocommerce-page .wc-block-checkout__main .wc-block-checkout__actions .wc-block-checkout__actions_row { justify-content: flex-start; }

.tsb-tablist {
	width: 100%;
	border-bottom: none;
}

.tsb-tablist .tsb-tab,
.tsb-tablist .tsb-tab.is-active,
.tsb-tablist .tsb-tab.is-active:hover {
	padding: 10px 4px 6px 4px;
	color: var(--e-global-color-text);
	font-size: 15px;
	border-bottom: 4px solid var(--e-global-color-d6838c6);
	background-color: transparent;
}

.tsb-tablist .tsb-tab:hover { color: var(--e-global-color-text); }

.tsb-tablist .tsb-tab.is-active,
.tsb-tablist .tsb-tab.is-active:hover { border-bottom: 4px solid var(--e-global-color-primary); }

.site-header-cart-side .widget_shopping_cart .elementor-menu-cart__footer-buttons a.elementor-button { flex: 1 1 auto; }

.wp-block-woocommerce-cart .wc-block-components-totals-coupon__content .wc-block-components-totals-coupon__button { display: flex; }

.wp-block-woocommerce-cart .wc-block-components-totals-coupon__content .wc-block-components-totals-coupon__button .wc-block-components-button__text { font-size: 16px; }

.txt-itl,
.hentry a.txt-lnk strong { font-style: italic; }

a.txt-lnk,
.hentry a.txt-lnk strong {
	color: var(--e-global-color-primary);
	text-decoration: none;
}

a.txt-lnk:hover { text-decoration: underline; }




/*
 * Mobile main navigation
 */
.mobile-nav-close { 
	top: 32px;
	font-size: 22px;
	color: #FFFFFF;
}

.inlingua-mobile-nav { background-color: var(--e-global-color-dark); }

.inlingua-mobile-nav .mobile-nav-tabs ul li { 
	padding: 30px 0; 
	color: #FFFFFF;
}

.inlingua-mobile-nav .tempus-mobile-home,
.inlingua-mobile-nav .site-header-cart a, 
.inlingua-mobile-nav .site-header-account a,
.inlingua-mobile-nav .site-header-cart .count,
.tempus-mobile-search .tempus-search .tempus-search__toggle,
.tempus-mobile-search .tempus-search .tempus-search__toggle:focus, 
.tempus-mobile-search .tempus-search .tempus-search__toggle:hover, 
.tempus-mobile-search .tempus-search .tempus-search__clear, 
.tempus-mobile-search .tempus-search .tempus-search__clear:focus, 
.tempus-mobile-search .tempus-search .tempus-search__clear:hover{ color: #FFFFFF; }

.inlingua-mobile-nav .mobile-nav-tabs {
	padding: 0 25px 30px 25px;
	background-color: transparent; 
}

.menu-scroll-mobile { padding-bottom: 50px; }

.mobile-navigation ul > li > ul.sub-menu, 
.mobile-navigation-categories ul > li > ul.sub-menu { margin-top: 0; }

.inlingua-mobile-nav .mobile-nav-tabs ul li:before { background-color: transparent; }

.mobile-navigation ul > li.menu-item > a, 
.mobile-navigation-categories ul > li.menu-item > a { 
	padding: 7px 0;
	color: #FFFFFF;
	border-bottom-style: none; 
}

.mobile-navigation .dropdown-toggle, 
.mobile-navigation-categories .dropdown-toggle { 
	padding: 10px 0; 
	right: 25px;
}

.mobile-navigation ul > li.menu-item button::after, 
.mobile-navigation-categories ul > li.menu-item button::after { color: #FFFFFF; }

.mobile-navigation .sub-menu .dropdown-toggle, 
.mobile-navigation-categories .sub-menu .dropdown-toggle { right: 0; }

.mobile-navigation ul > li.menu-item > a:hover, 
.mobile-navigation-categories ul > li.menu-item > a:hover { color: var(--e-global-color-tmpdgry); }

.mobile-navigation ul > li.menu-item button:after, 
.mobile-navigation-categories ul > li.menu-item button:after,
.mobile-navigation ul li button.toggled-on:after, 
.mobile-navigation-categories ul li button.toggled-on:after {
	font-size: 14px;
	font-weight: 700;
}

.mobile-navigation ul ul.sub-menu > li.menu-item > a, 
.mobile-navigation-categories ul ul.sub-menu > li.menu-item > a {
	margin: 4px 0 4px 15px;
	color: #FFFFFF;
	text-decoration: none;
}

.mobile-navigation ul ul.sub-menu > li.menu-item a[href="#"],
.mobile-navigation-categories ul ul.sub-menu > li.menu-item a[href="#"],
.mobile-navigation ul ul.sub-menu > li.menu-item a[href="#"]:hover,
.mobile-navigation-categories ul ul.sub-menu > li.menu-item a[href="#"]:hover { 
	margin: 7px 0 7px 15px;
	color: var(--e-global-color-primary);
	text-decoration: none; 
}

.mobile-navigation ul ul.sub-menu > li.menu-item.current-menu-item > a, 
.mobile-navigation ul ul.sub-menu > li.menu-item.current-menu-parent > a, 
.mobile-navigation ul ul.sub-menu > li.menu-item.current-menu-ancestor > a, 
.mobile-navigation-categories ul ul.sub-menu > li.menu-item.current-menu-item > a, 
.mobile-navigation-categories ul ul.sub-menu > li.menu-item.current-menu-parent > a, 
.mobile-navigation-categories ul ul.sub-menu > li.menu-item.current-menu-ancestor > a { text-decoration: none; }

.inlingua-mobile-nav .mobile-menu-tab { padding: 0; }

.mobile-navigation ul#menu-main-menu > li.menu-item, 
.mobile-navigation-categories ul#menu-main-menu > li.menu-item { 
	padding: 0 25px; 
	transition: padding-top .3s ease, padding-bottom .3s ease;
}

/*.mobile-navigation ul#menu-main-menu > li.menu-item:hover, 
.mobile-navigation ul#menu-main-menu > li.menu-item:focus,
.mobile-navigation-categories ul#menu-main-menu > li.menu-item:hover,
.mobile-navigation-categories ul#menu-main-menu > li.menu-item:focus { background-color: #fbbd1f; }*/

/*.mobile-navigation ul#menu-main-menu > li.menu-item.menu-item-has-children.tempus-open, 
.mobile-navigation-categories ul#menu-main-menu > li.menu-item.menu-item-has-children.tempus-open { 
	padding-top: 15px;
	padding-bottom: 15px;
	background-color: #fbe2a3;
}*/




/*
 * Expanding header search  
 * (magnifier → underline → input)
 */
.tempus-search { 
	padding-left: 10px;
	display: flex; 
	justify-content: flex-end; 
}

.tempus-search .tempus-search__form {
	margin-bottom: 0;
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 0;
	border-bottom: none;
	max-width: 100%;
}

.tempus-search .tempus-search__form:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 0;
	height: 2px;
	background-color: var(--e-global-color-text);
}

.tempus-search:not(.is-open) .tempus-search__form:after { transition: all 0.4s ease; }

.tempus-search.is-open .tempus-search__form:after,
.tempus-search .tempus-search__form:hover:after { width: 100%; }

.tempus-mobile-search .tempus-search .tempus-search__form {
	margin-bottom: 0;
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 0;
	border-bottom: 2px solid #FFFFFF;
	max-width: 100%;
}

.tempus-mobile-search .tempus-search .tempus-search__form:after { content: none; }

.tempus-search .tempus-search__toggle,
.tempus-search .tempus-search__toggle:focus,
.tempus-search .tempus-search__toggle:hover,
.tempus-search .tempus-search__clear,
.tempus-search .tempus-search__clear:focus,
.tempus-search .tempus-search__clear:hover{
	flex: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px; 
	height: 34px;
	padding: 0; 
	border: 0;
	background: transparent;
	color: var(--e-global-color-text);
	cursor: pointer;
	line-height: 1;
}

.tempus-search .tempus-search__clear,
.tempus-search .tempus-search__clear:hover { color: color-mix(in srgb, var(--e-global-color-text) 70%, transparent); }

.inlingua-mobile-nav .tempus-search .tempus-search__input::placeholder {
	color: color-mix(in srgb, #FFFFFF 70%, transparent);
	opacity: 1;
}

.inlingua-mobile-nav .tempus-search .tempus-search__clear,
.inlingua-mobile-nav .tempus-search .tempus-search__clear:hover { 
	display: none !important;
	color: #916e15; 
}

header .elementor .elementor-element .menu-mobile-nav-button:hover .inlingua-icon > span { background-color: var(--e-global-color-text) !important; }

.tempus-search .tempus-search__toggle i,
.tempus-search .tempus-search__clear i { font-size: 20px; }

.tempus-search .tempus-search__input {
	width: 0; 
	min-width: 0;
	height: 34px;
	padding: 0; 
	border: 0; 
	outline: 0;
	background: transparent;
	color: var(--e-global-color-text);
	font: inherit;
	opacity: 0;
	visibility: hidden;
	box-sizing: border-box;
	transition: width .32s ease, padding .32s ease, opacity .2s ease;
}

.tempus-search .tempus-search__input::placeholder { color: color-mix(in srgb, var(--e-global-color-text) 70%, transparent); }

/* hide the browser's own clear "x" so ours is the only one */
.tempus-search .tempus-search__input::-webkit-search-cancel-button { 
	-webkit-appearance: none; 
	appearance: none; 
}

.tempus-search .tempus-search__clear { display: none; }

/* ---- open state ---- */
.tempus-search.is-open .tempus-search__input {
	width: clamp(250px, 30vw, 480px);
	padding: 0 0 0 6px;
	opacity: 1;
	visibility: visible;
}

.tempus-search.is-open .tempus-search__clear { display: inline-flex; }

.tempus-mobile-search .tempus-search .tempus-search__input { color: #FFFFFF; }

@media (max-width: 1024px) { .tempus-search.is-open .tempus-search__input { width: 170px; } }

/*
 * Adult Learning mega menu
 * Requires the CSS class  tempus-mega  on the top-level item,
 * nested 3 levels: item > section headings > links.
 * Inert until that class + nesting exist, so safe to add now.
 */
.main-navigation li.menu-item.tempus-mega { position: relative; }

/* the panel: first-level sub-menu becomes a row of columns */
.main-navigation li.tempus-mega > ul.sub-menu {
	display: flex;
	flex-direction: row;
	gap: 56px;
	left: 0;
	width: max-content;
	max-width: 90vw;
	min-width: 0;
	padding: 30px 36px;
}

/* Keep every first-level nav dropdown -- mega menu and standard flyouts alike --
   at the same vertical offset (15px) below the link that triggers it.
   Specificity (0,4,3) beats both the parent theme's base rule (0,2,2) and the
   mega panel's own selector (0,3,2) above, so it wins without !important and
   without needing a rule per menu item. Replaces the old stray
   ".main-navigation ul li:hover > ul { top: 85% }" rule, which was pulling the
   standard flyouts up tight against their links, and the mega panel's
   hardcoded "top: 75px", which sat far below its link. */
.main-navigation ul.menu > li.menu-item > ul.sub-menu {
	top: calc(100% + 15px);
}

/* Invisible hover bridge across the 15px gap above.
   Without this, the mouse leaves both the li and the sub-menu the instant it
   crosses that gap, dropping :hover on the li mid-transit -- so the panel
   vanishes (and pointer-events:none re-applies) before the cursor ever
   reaches it, making its links unclickable. This pseudo-element is a plain
   descendant box of the sub-menu, so visibility/opacity/pointer-events all
   inherit from it and toggle together with the panel: inert while closed,
   hoverable while open. It plugs the gap so the hover path from link to
   panel is continuous, for both the mega menu and the standard flyouts. */
.main-navigation ul.menu > li.menu-item > ul.sub-menu::before {
	content: '';
	position: absolute;
	top: -15px;
	left: 0;
	right: 0;
	height: 15px;
}

.main-navigation .menu .tempus-mega a:after { margin-left: 6px !important; }

/* reveal on hover / keyboard focus (self-contained) */
.main-navigation li.tempus-mega:hover > ul.sub-menu,
.main-navigation li.tempus-mega:focus-within > ul.sub-menu {
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
}

/* each section = a column */
.main-navigation li.tempus-mega > ul.sub-menu > li.menu-item {
	margin: 0;
	min-width: 190px;
}

/* section heading (the # parent link of each column) */
.main-navigation li.tempus-mega > ul.sub-menu > li.menu-item > a {
	display: block;
	margin: 0 0 14px !important;
	padding: 0 0 4px !important;
	color: var(--e-global-color-primary) !important;
	border-bottom: 2px solid var(--e-global-color-primary) !important;
	font-weight: 500 !important;
	pointer-events: none;   /* it's a label, not a link */
	cursor: default;
}

.main-navigation li.tempus-mega > ul.sub-menu > li.menu-item > a:after { content: none !important; }

/* drop the theme's hover-grow underline + flyout chevron on the heading */
.main-navigation li.tempus-mega > ul.sub-menu > li.menu-item > a .menu-title:before,
.main-navigation li.tempus-mega ul.sub-menu > li.menu-item-has-children > a::after { content: none; }

.main-navigation li.tempus-mega > ul.sub-menu > li.menu-item > ul.sub-menu > li.menu-item > a .menu-title:before { background-color: transparent; }

/* grandchildren layout only — NO visibility/opacity/pointer-events here,
   so when the panel is closed they inherit its hidden, inert state */
.main-navigation li.tempus-mega > ul.sub-menu > li.menu-item > ul.sub-menu {
	position: static;
	float: none;
	display: block;
	transform: none;
	transition: none;
	min-width: 0;
	width: auto;
	margin: 0;
	padding: 0;
	background: none;
	box-shadow: none;
	border-radius: 0;
}
/* show + enable the grandchildren only while the panel is actually open */
.main-navigation li.tempus-mega:hover > ul.sub-menu > li.menu-item > ul.sub-menu,
.main-navigation li.tempus-mega:focus-within > ul.sub-menu > li.menu-item > ul.sub-menu {
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
}

.main-navigation li.tempus-mega > ul.sub-menu > li.menu-item > ul.sub-menu > li.menu-item { margin: 0; padding: 0; }
.main-navigation li.tempus-mega > ul.sub-menu > li.menu-item > ul.sub-menu > li.menu-item > a {
	margin: 0;
	padding: 8px 0 8px 0;
	color: var(--e-global-color-text);
}

@media (max-width: 1200px) { .main-navigation li.tempus-mega > ul.sub-menu { gap: 36px; padding: 28px 30px; } }


/*
 * Responsive Media Queries
 */
@media (max-width: 1540px) {
	
    .tc-related-carousel__arrow--prev { left: 0; }
	
	.tc-related-carousel__arrow--next { right: 0; }
	
}

@media (max-width: 1024px) {
	
    .tc-js .tc-hero .tc-hero__aside { margin-top: 0; }
	
	.tcf-panel,
	.tpf-panel { background-color: var(--e-global-color-dark); }
	
	.tempus-course-filter,
	.tempus-post-filter { background-color: transparent; }
	
	.tcf__search-wrap:before,
	.tempus-course-filter,
	.tempus-course-filter input[type=search],
	.tcf-panel .tcf-panel__title,
	.tempus-course-filter .tcf__label, 
	.tempus-course-filter .tcf__heading,
	.tempus-course-filter .tcf__count,
	.tpf__search-wrap:before,
	.tempus-post-filter,
	.tempus-post-filter input[type=search],
	.tpf-panel .tpf-panel__title,
	.tempus-post-filter .tpf__label, 
	.tempus-post-filter .tpf__heading,
	.tempus-post-filter .tpf__count { color: #FFFFFF; }
	
	.tempus-course-filter input::placeholder,
	.tempus-post-filter input::placeholder { color: color-mix(in srgb, #FFFFFF 70%, transparent); }
	
	.tcf__search-wrap,
	.tpf__search-wrap { border-bottom: 2px solid #FFFFFF; }
	
	.tcf-panel .tcf__checkbox-wrapper .tcf__checkbox,
	.tpf-panel .tpf__checkbox-wrapper .tpf__checkbox { 
		border: 2px solid color-mix(in srgb, #FFFFFF 70%, transparent); 
		background-color: transparent;
	}
	
	.tcf__checkbox-wrapper input:checked ~ .tcf__checkbox,
	.tpf__checkbox-wrapper input:checked ~ .tpf__checkbox { 
		border-right-color: #FFFFFF; 
		border-bottom-color: #FFFFFF; 
	}
	
	.tcf-panel .tempus-course-filter .tcf__apply,
	.tpf-panel .tempus-post-filter .tpf__apply { background-color: transparent; }
	
	.tcf-panel .tempus-course-filter .tcf__apply:hover,
	.tpf-panel .tempus-post-filter .tpf__apply:hover {
		color: #FFFFFF;
		border-color: #FFFFFF; 
		background-color: transparent !important;
		transform: none;
	}
	
	
	.tempus-course-filter a.tcf__reset,
	.tempus-post-filter a.tpf__reset {
		color: #FFFFFF;
	}

	.tempus-course-filter a.tcf__reset:hover,
	.tempus-post-filter a.tpf__reset:hover {
		color: var(--e-global-color-primary);
	}
	
}

@media (max-width: 768px) {
	
    .woocommerce-account .woocommerce-MyAccount-content { padding-top: 50px; }
	
	.site-content .type-post .custom-post-navigation a .post-navigation__prev--title,
	.site-content .type-post .custom-post-navigation a .post-navigation__next--title { display: none; }
	
	.archive #page .product-block .product-caption {
		align-items: flex-start;
		text-align: left;
	}
	
	.archive #page .product-block .product-caption .tempus-card-info .tempus-card-category { text-align: left; }

}

@media (min-width: 1024px) {
	
    .main-navigation ul ul.sub-menu li { margin-bottom: 0; }
	
	.tcf-panel-host .tempus-course-filter,
	.tcf-panel-host .tempus-post-filter {
        width: 100%;
        max-width: none;
    }
	
}

@media (min-width: 768px) {

    .col2-set#customer_login {
		align-items: stretch;
        gap: 40px;
    }
	
	.col2-set#customer_login > div,
	.col2-set#customer_login > div > form { 
		margin-bottom: 0;
		height: 100%; 
	}
	
	.main-navigation ul.menu ul.sub-menu > li.menu-item:first-child > a, 
	.main-navigation ul.nav-menu ul.sub-menu > li.menu-item:first-child > a,
	.main-navigation ul.menu ul.sub-menu > li.menu-item > a, 
	.main-navigation ul.nav-menu ul.sub-menu > li.menu-item > a { 
		padding: 8px 0 8px 0;
		line-height: 1.3rem;
	}

}

@media (max-width: 563px) {
	
	.tc-tablist .tc-tab { width: 100%; }
	
	.course-hl-flex {
		flex-flow: column;
		align-items: center;
		gap: 30px;
	}
	
	.inlingua-sorting button.tcf-toggle span { display: none; }
	
}

@media (max-width: 400px) {
	
	.tempus-course .tc-card,
	.tempus-course  .tc-contact {
		padding-left: 20px;
		padding-right: 20px;
	}
	
}






/* =========================================================================
   TEMPUS LIST VIEW LAYOUT FIX
   The Product Archive uses Elementor Pro's "Products" widget, whose outer
   wrapper carries .elementor-grid-3 (its Columns setting). Elementor's grid
   CSS ( .elementor-grid-N .elementor-grid { grid-template-columns: repeat(N,1fr) } )
   is a descendant rule, so that 3-column value bleeds down onto the inner
   <ul class="...elementor-grid"> even when the theme's own wrapper says
   elementor-grid-1 for list view. Force a single column when list view is
   active (the theme marks the <ul> with .products-list), so items stack as
   full-width rows. Grid view (ul.products, no .products-list) is untouched.
   ========================================================================= */
.elementor-products-grid ul.products-list.elementor-grid,
ul.inlingua-products.products-list.elementor-grid {
  grid-template-columns: 1fr !important;
}

/* =========================================================================
   TEMPUS LOOP ACTION BUTTON -- FORCE CONSISTENT BOX MODEL (re-applied)
   .tempus-loop-action sits inside .quantity_cart as a bare <a>, not wrapped
   in the .add_to_cart div the theme's own sizing rules expect, so those never
   apply. Meanwhile several other sources target the generic .button class it
   also carries with conflicting property sets (WooCommerce core, this specific
   Elementor Products widget's own per-instance Style-tab CSS which is configured
   for a plain text-link look with zero padding, and our own pill-button rule).
   Pin every layout-relevant property directly so none of those can contest it.
   ========================================================================= */
.tempus-loop-action {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  position: static !important;
  width: auto !important;
  margin: 12px 0 0 0 !important;
  padding: 12px 30px !important;
}

/* =========================================================================
   TEMPUS LOOP ACTION CONTAINER -- STOP THE WRAPPING FLEX ROW FROM COLLAPSING
   .inlingua-woocommerce-price-atc (the flex row wrapping .quantity_cart, which
   in turn wraps the button) was measuring ~26px tall in DevTools -- far
   shorter than the padded button inside it -- so the button visually spills
   out of that box into whatever sits below/around it. Root cause: with the
   quantity input hidden (.quantity_wrap{display:none}) and .quantity_cart set
   to flex:1 by the theme, the row's own auto-height calculation was not
   reliably picking up the button's real rendered height. Force both wrapper
   levels to size to their content explicitly.
   ========================================================================= */
.inlingua-woocommerce-price-atc {
  height: auto !important;
  min-height: 0 !important;
  align-items: flex-start !important;
}
.inlingua-woocommerce-price-atc .quantity_cart {
  display: flex !important;
  flex-direction: column;
  height: auto !important;
  min-height: 0 !important;
}

/* =========================================================================
   ORDERBY SELECT -- CUSTOMIZABLE SELECT (appearance: base-select)
   Progressive enhancement, Chromium-only at time of writing (Firefox/Safari
   still implementing). Browsers without support ignore the whole block and
   render the normal native select, which stays fully functional -- including
   the change event WooCommerce uses to auto-submit the ordering form.

   ARROW: the parent theme sets an inline-SVG chevron as a background-image on
   select:not([size]):not([multiple]) (with appearance:none), and .inlingua-sorting
   then stretches it to background-size:52px 9px. Under base-select the browser
   supplies its own ::picker-icon, so that background MUST be removed here or the
   control shows two arrows. Only inside @supports, so the theme arrow survives
   untouched in non-supporting browsers.
   ========================================================================= */
@supports (appearance: base-select) {

	.inlingua-sorting .woocommerce-ordering select.orderby,
	.inlingua-sorting .woocommerce-ordering select.orderby::picker(select) {
		appearance: base-select;
	}

	/* Closed control. background-image:none kills the theme chevron (see above).
	   Specificity here is 0,3,1 against the theme rule at 0,2,1, so this wins
	   without !important. */
	.inlingua-sorting .woocommerce-ordering select.orderby {
		background-image: none;
		display: flex;
		align-items: center;
		gap: 10px;
		height: 52px;
		padding: 8px 22px;
		border: 1px solid var(--e-global-color-border);
		border-radius: var(--tmp-brdr-radius);
		background-color: transparent;
		color: var(--e-global-color-secondary);
		font-size: 16px;
		font-weight: 500;
	}

	.inlingua-sorting .woocommerce-ordering select.orderby:hover,
	.inlingua-sorting .woocommerce-ordering select.orderby:open {
		background-color: var(--e-global-color-highlight);
	}

	/* Swapped for the chevron-down/chevron-up icon-font glyphs, in place of a single
	   icon rotated 180deg. ::picker-icon accepts content like any other generated
	   box, so font-family plus the icon font codepoint reproduces the glyph without
	   needing a class on it (there is nothing to attach a class to -- this is a
	   UA-generated pseudo-element, not a real DOM node). Codepoints pulled from
	   inlingua/assets/css/base/icons.css: chevron-down U+E057, chevron-up U+E05A.
	   NB ::picker-icon is not in the accessibility tree (MDN), so this is decorative
	   only -- fine here since the select already has its own accessible name. */
	.inlingua-sorting .woocommerce-ordering select.orderby::picker-icon {
		font-family: "inlingua-icon";
		content: "\e057";
		margin-left: auto;
		color: var(--e-global-color-secondary);
		font-size: 14px;
	}
	.inlingua-sorting .woocommerce-ordering select.orderby:open::picker-icon {
		content: "\e05a";
	}

	/* The dropdown panel itself -- the part that was never stylable before.
	   Rendered in the top layer, so no parent overflow can clip it. */
	.inlingua-sorting .woocommerce-ordering select.orderby::picker(select) {
		border: 1px solid var(--e-global-color-border);
		border-radius: var(--tmp-brdr-radius);
		box-shadow: 0 4px 30px rgba(31, 33, 33, .15);
		background: #fff;
		padding: 8px;
		/* margin-BLOCK, not margin-top. The picker is anchored to the button, but
		   Chromium position-try fallbacks flip it ABOVE the button when there is no
		   room below. A margin-top then pushes the picker DOWN onto the button it is
		   sitting above, so the picker overlaps the control. Clicks meant for the
		   button land inside the picker instead, which is not an outside click, so
		   light-dismiss never fires and the picker will not close. margin-block puts
		   the gap on both edges so it is correct in either direction. */
		margin-block: 6px;
	}

	.inlingua-sorting .woocommerce-ordering select.orderby option {
		padding: 10px 14px;
		border-radius: calc(var(--tmp-brdr-radius) - 6px);
		font-size: 15px;
		color: var(--e-global-color-secondary);
	}

	/* base-select inserts a ::checkmark into the selected option by default, which
	   indents its text out of line with the others. Removed for a flat list. */
	.inlingua-sorting .woocommerce-ordering select.orderby option::checkmark {
		display: none;
	}

	.inlingua-sorting .woocommerce-ordering select.orderby option:focus {
		background: var(--e-global-color-accent);
		color: var(--e-global-color-text);
	}
	
	.inlingua-sorting .woocommerce-ordering select.orderby option:hover {
		background: color-mix(in srgb, var(--e-global-color-accent) 20%, transparent);
		color: var(--e-global-color-text);
	}

	.inlingua-sorting .woocommerce-ordering select.orderby option:checked {
		background: var(--e-global-color-accent);
		color: var(--e-global-color-text);
		font-weight: 500;
	}
}

/* Basket page: match content width to course pages (.tc-grid in tempus-course-style2.css
   is max-width:1290px;margin:0 auto). Without this, the WC Cart block only gets the
   parent theme's `.alignwide` treatment (inlingua/assets/css/base/gutenberg-blocks.css:
   `.alignwide{margin-left:calc(25% - 25vw);width:calc(50vw + 50%);max-width:calc(50vw + 50%)}`),
   which stretches it to near-full viewport width instead. Scoped to the basket page only
   via WooCommerce's `.woocommerce-cart` body class (post 16560) - does not touch
   `.alignwide` anywhere else on the site. Constraining the outer `.wp-block-woocommerce-cart`
   wrapper carries every child along (cart table, empty-cart message, order summary, and the
   [tempus_popular_courses] carousel nested inside its EmptyCartBlock innerBlocks). */
body.woocommerce-cart .wp-block-woocommerce-cart.alignwide {
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	max-width: 1290px;
}


/* Header colour separation - eng.tempustraining.co.uk
   The parent theme (inlingua/style.css) hardcodes a sitewide default for every heading tag:
   `h1, h2, h3, h4, h5, h6 { color: var(--e-global-color-secondary); ... }`. That's what any
   heading with no explicit per-widget colour override falls back to. This file loads after both
   the parent theme's style.css and the Elementor kit CSS (elementor-post-7-css loads before
   inlingua's style.css, so an override placed in the kit's own Custom CSS loses the cascade here
   on identical specificity), so a same-specificity selector placed here reliably wins by source
   order without needing !important.
   Redirects the *default* heading colour to the dedicated --e-global-color-heading-text System
   Colour (kept in sync with every other place "Heading Text" is used - see PROJECT_STATE.md)
   rather than Elementor's built-in "Secondary" slot, which other widgets/plugins keep hardcoding
   as their own default and which is no longer meant to represent heading colour on this site.
   Any heading with its own explicit colour override (set via Elementor's colour picker on that
   widget) is unaffected - only the fallback default changes. */
h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--e-global-color-heading-text);
}


/* ==========================================================================
   H2 default size change (Kit Theme Style: 32px desktop / 28px mobile)
   These 3 rules preserve the EXISTING appearance of H2 headings on
   WooCommerce pages (shop filter panel, my-account login/register,
   empty-cart title) which would otherwise be overridden by the new
   sitewide kit default, per instruction: don't change any H2 on any
   WooCommerce page. Values below reproduce each element's PRE-EXISTING
   effective size exactly - nothing here changes how these look.
   ========================================================================== */

/* Shop page filter panel "Search courses" title - previously fell back to
   the parent theme's bare h2{} cascade (76/50/40px); replicate that. */
.tcf-panel__head h2.tcf-panel__title {
  font-size: 76px;
}
@media (max-width: 1024px) {
  .tcf-panel__head h2.tcf-panel__title,
  .tpf-panel__head h2.tpf-panel__title {
    font-size: 24px;
  }
}
@media (max-width: 767px) {
  .tcf-panel__head h2.tcf-panel__title,
  .tpf-panel__head h2.tpf-panel__title {
    font-size: 24px;
  }
}

/* My Account login / register form titles - keep their existing 28px */
.woocommerce-form-login h2.login-form-title,
.woocommerce-form-register h2.register-from-title {
  font-size: 28px;
}

/* Empty-cart block title ("Your basket is currently empty!") - WooCommerce
   Blocks sets this to font-size:inherit by design; restore that. */
.wp-block-woocommerce-empty-cart-block h2.wc-block-cart__empty-cart__title {
  font-size: inherit;
}

/* ==========================================================================
   Single blog post template (Elementor Theme Builder "Posts" single
   template, elementor-id 19464) - allow widgets added to the template to
   run full width and sit flush against the top of #content, matching the
   same treatment already given to Elementor pages, the homepage, and
   single course pages (see the body.elementor-page / single-lp_course rule
   in the parent theme's style.css). Overrides that parent rule here since
   this stylesheet loads after it.
   Companion change: the "Breadcrumb single post" global template (ID 1030)
   was unpublished and post type "post" excluded from the "Breadcrumb
   default" template (ID 202) so the .breadcrumb-wrap div no longer renders
   above #content on single posts. */
body.single-post #page .site-content {
  margin-top: 0;
  margin-bottom: 0;
}
body.single-post #page .site-content {
  padding-left: 0;
  padding-right: 0;
}

