/*
Theme Name:   Hello Elementor Child – ZAY Records
Theme URI:    https://zay-records.com/
Description:  Child theme for the ZAY Records website. Rebuild of the original YOOtheme/UIkit (Juno style) design with Hello Elementor + Elementor. Fonts are hosted locally.
Author:       ZAY Records / Jerschabek GmbH
Template:     hello-elementor
Version:      1.0.0
Text Domain:  hello-elementor-child
*/

/* ==========================================================================
   Breakpoints (same as the original UIkit theme)
   s = 640px   m = 960px   l = 1200px   xl = 1600px
   Elementor kit breakpoints are set to: mobile ≤639, tablet ≤959, widescreen ≥1600
   ========================================================================== */

/* --------------------------------------------------------------------------
   Fonts (local)
   -------------------------------------------------------------------------- */
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 400;
	font-stretch: normal;
	font-display: swap;
	src: url('fonts/open-sans-400.woff2') format('woff2');
}
@font-face {
	font-family: 'Kanit';
	font-style: normal;
	font-weight: 200;
	font-display: swap;
	src: url('fonts/kanit-200.woff2') format('woff2');
}

/* --------------------------------------------------------------------------
   Base
   -------------------------------------------------------------------------- */
html {
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.58;
	-webkit-text-size-adjust: 100%;
	background: #404d59;
	color: #fff;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	overflow-y: scroll;
}
body.zay {
	margin: 0;
	padding: 0;
	background: #404d59;
	color: #fff;
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.58;
}
.zay a { color: #72b2e1; text-decoration: none; cursor: pointer; transition: color .1s ease-in-out; }
.zay a:hover { color: #fff; text-decoration: none; }
.zay b, .zay strong { font-weight: bolder; }
.zay em { color: #fff; }
.zay img { max-width: 100%; height: auto; box-sizing: border-box; }
.zay p, .zay ul:not([class]), .zay ol:not([class]), .zay dl, .zay pre, .zay address, .zay fieldset, .zay figure { margin: 0 0 30px 0; }
.zay * + p, .zay * + ul:not([class]), .zay * + ol:not([class]), .zay * + dl, .zay * + pre, .zay * + address, .zay * + fieldset, .zay * + figure { margin-top: 30px; }
.zay ul:not([class]), .zay ol:not([class]) { padding-left: 30px; }
.zay hr { overflow: visible; text-align: inherit; margin: 0 0 30px 0; border: 0; border-top: 1px solid #eee; }
.zay * + hr { margin-top: 30px; }

.zay h1, .zay h2, .zay h3, .zay h4, .zay h5, .zay h6,
.zay .elementor-widget-heading .elementor-heading-title {
	margin: 0 0 30px 0;
	font-family: 'Open Sans', sans-serif;
	font-weight: 300;
	color: #fff;
	text-transform: uppercase;
}
.zay * + h1, .zay * + h2, .zay * + h3, .zay * + h4, .zay * + h5, .zay * + h6 { margin-top: 40px; }
.zay h1, .zay .elementor-heading-title.elementor-size-default:is(h1) { font-size: 34px; line-height: 1.2; }
.zay h2, .zay .elementor-heading-title.elementor-size-default:is(h2) { font-size: 27px; line-height: 1.3; }
.zay h3, .zay .elementor-heading-title.elementor-size-default:is(h3) { font-size: 14px; line-height: 1.4; }
.zay h4, .zay .elementor-heading-title.elementor-size-default:is(h4) { font-size: 26px; line-height: 1.4; }
@media (min-width: 960px) {
	.zay h1, .zay .elementor-heading-title.elementor-size-default:is(h1) { font-size: 40px; }
	.zay h2, .zay .elementor-heading-title.elementor-size-default:is(h2) { font-size: 30px; }
}
/* Elementor widgets: no inner margins, spacing comes from the container gap (30px) */
.zay .elementor-widget-heading .elementor-heading-title { margin: 0; }
.zay .elementor-widget-text-editor > :first-child,
.zay .elementor-widget-text-editor .elementor-widget-container > :first-child { margin-top: 0; }
.zay .elementor-widget-text-editor > :last-child,
.zay .elementor-widget-text-editor .elementor-widget-container > :last-child { margin-bottom: 0; }
.zay .elementor-widget-text-editor { font-size: 14px; line-height: 1.58; color: #fff; }
.zay .elementor-widget-text-editor a { color: #72b2e1; }
.zay .elementor-widget-text-editor a:hover { color: #fff; }
.zay .elementor-widget-text-editor ol, .zay .elementor-widget-text-editor ul { padding-left: 30px; }
.zay .elementor-widget-text-editor ol > li, .zay .elementor-widget-text-editor ul > li { margin: 0; }

/* Containers: no default inner padding (set explicitly per container) */
.zay .e-con { --container-default-padding-top: 0; --container-default-padding-right: 0; --container-default-padding-bottom: 0; --container-default-padding-left: 0; }
.zay .e-con > .e-con { min-width: 0; }

/* Skip link (Hello) */
.zay .skip-link { position: absolute; left: -9999px; }
.zay .skip-link:focus { left: 10px; top: 10px; z-index: 100000; background: #fff; color: #0081c1; padding: 10px; }

/* --------------------------------------------------------------------------
   Layout helpers
   -------------------------------------------------------------------------- */
.zay-container {
	display: flow-root;
	box-sizing: content-box;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 15px;
	padding-right: 15px;
}
@media (min-width: 640px) { .zay-container { padding-left: 25px; padding-right: 25px; } }
@media (min-width: 960px) { .zay-container { padding-left: 40px; padding-right: 40px; } }

/* --------------------------------------------------------------------------
   Header
   -------------------------------------------------------------------------- */
.zay-header { position: relative; z-index: 980; }
.zay-navbar-container { background: #fff; }
.zay-container-header { padding-left: 15px; padding-right: 15px; }
@media (max-width: 959px) { .zay-container-header { max-width: none; } }
.zay-navbar { display: flex; position: relative; justify-content: space-between; }
.zay-navbar-left, .zay-navbar-right { display: flex; align-items: center; flex-wrap: wrap; gap: 15px; }
@media (min-width: 960px) { .zay-navbar-left, .zay-navbar-right { gap: 30px; } }

.zay-logo {
	display: flex;
	align-items: center;
	min-height: 100px;
	padding: 0;
	font-size: 30px;
	font-family: 'Open Sans', sans-serif;
	color: #404d59;
	text-decoration: none;
	text-transform: uppercase;
}
.zay-logo:hover { color: #404d59; }
.zay-logo-img, .zay-logo img { display: block; width: 130px; height: auto; max-width: 100%; }

/* Desktop navigation (≥ 960px) */
.zay-navbar-nav { display: none; margin: 0; padding: 0; list-style: none; border-right: 1px solid #e0e0e0; }
@media (min-width: 960px) { .zay-navbar-nav { display: flex; flex-wrap: wrap; } }
.zay-navbar-nav > li { position: relative; margin: 0; padding: 0; }
.zay-navbar-nav > li > a {
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: .25em;
	box-sizing: border-box;
	min-height: 100px;
	padding: 0 15px;
	font-size: 15px;
	font-weight: 300;
	line-height: 1.58;
	font-family: inherit;
	text-decoration: none;
	text-transform: uppercase;
	color: #7c7c7c;
	border-left: 1px solid #e0e0e0;
	position: relative;
	z-index: 1;
	transition: .1s ease-in-out;
	transition-property: color, background-color, border-color, box-shadow;
}
.zay-navbar-nav > li > a::before {
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	bottom: 0;
	left: 0;
	right: 100%;
	height: 2px;
	background-color: transparent;
}
.zay-navbar-nav > li:hover > a,
.zay-navbar-nav > li.zay-focus > a,
.zay-navbar-nav > li > a:active,
.zay-navbar-nav > li.current-menu-item > a,
.zay-navbar-nav > li.current-menu-ancestor > a,
.zay-navbar-nav > li.current-menu-parent > a,
.zay-navbar-nav > li.current_page_parent > a { color: #0081c1; }
.zay-navbar-nav > li:hover > a::before,
.zay-navbar-nav > li.zay-focus > a::before,
.zay-navbar-nav > li.current-menu-item > a::before,
.zay-navbar-nav > li.current-menu-ancestor > a::before,
.zay-navbar-nav > li.current-menu-parent > a::before,
.zay-navbar-nav > li.current_page_parent > a::before { right: 0; background-color: #0081c1; }
.zay-navbar-nav > li.mobile-only { display: none; }

/* Dropdown */
.zay-navbar-nav .sub-menu {
	display: none;
	position: absolute;
	top: 100%;
	left: -25px;
	z-index: 1020;
	box-sizing: border-box;
	width: 300px;
	margin: 0;
	padding: 25px;
	list-style: none;
	background: #5f5f63;
	color: #fff;
}
.zay-navbar-nav > li:hover > .sub-menu,
.zay-navbar-nav > li.zay-focus > .sub-menu { display: block; }
.zay-navbar-nav .sub-menu li { margin: 0; padding: 0; }
.zay-navbar-nav .sub-menu a {
	display: block;
	padding: 5px 0;
	color: #ddd;
	font-size: 14px;
	font-weight: 300;
	line-height: 1.58;
	text-transform: none;
	text-decoration: none;
	transition: color .1s ease-in-out;
}
.zay-navbar-nav .sub-menu a:hover { color: #ccc; }
.zay-navbar-nav .sub-menu .current-menu-item > a { color: #fff; }

/* Mobile toggle (< 960px) */
.zay-navbar-toggle {
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
	min-height: 100px;
	padding: 0;
	color: #707070;
	text-decoration: none;
}
.zay-navbar-toggle:hover { color: #0081c1; }
@media (min-width: 960px) { .zay-navbar-toggle { display: none; } }
.zay-navbar-toggle-icon {
	display: inline-block;
	width: 20px;
	height: 20px;
	line-height: 0;
	border: 1px solid currentColor;
	border-radius: 100%;
	fill: currentColor;
}
.zay-navbar-toggle-icon svg { display: block; width: 20px; height: 20px; }

/* Off-canvas menu */
.zay-offcanvas {
	position: fixed;
	inset: 0;
	z-index: 1000;
	display: none;
	background: rgba(0, 0, 0, .1);
}
.zay-offcanvas.zay-open { display: block; }
.zay-offcanvas-bar {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	box-sizing: border-box;
	width: 300px;
	max-width: 100%;
	padding: 20px;
	background: #fff;
	overflow-y: auto;
	display: flex;
	flex-direction: column;
	transform: translateX(-100%);
	transition: transform .3s ease-out;
}
.zay-offcanvas.zay-open .zay-offcanvas-bar { transform: none; }
@media (min-width: 640px) { .zay-offcanvas-bar { width: 350px; padding: 25px; } }
.zay .zay-offcanvas-bar .zay-offcanvas-close {
	position: absolute;
	z-index: 1000;
	top: 5px;
	right: 5px;
	padding: 5px;
	margin: 0;
	border: 1px solid #707070;
	border-radius: 100%;
	background: transparent;
	color: #707070;
	line-height: 0;
	cursor: pointer;
}
.zay .zay-offcanvas-bar .zay-offcanvas-close { box-sizing: content-box; width: 14px; height: 14px; font-size: 0; line-height: 0; }
.zay .zay-offcanvas-bar .zay-offcanvas-close:hover { color: #0081c1; border-color: #0081c1; background: transparent; }
.zay-offcanvas-close svg { display: block; width: 14px; height: 14px; }
@media (min-width: 640px) { .zay .zay-offcanvas-bar .zay-offcanvas-close { top: 10px; right: 10px; } }
.zay-nav { margin: 0; padding: 0; list-style: none; font-size: 15px; font-weight: 300; text-transform: uppercase; }
.zay-nav li { margin: 0; padding: 0; }
.zay-nav > li > a {
	display: block;
	padding: 5px 0;
	color: #707070;
	text-decoration: none;
	transition: color .1s ease-in-out;
}
.zay-nav > li > a:hover,
.zay-nav > li.current-menu-item > a,
.zay-nav > li.current-menu-ancestor > a,
.zay-nav > li.current-menu-parent > a { color: #0081c1; }
.zay-nav .sub-menu { margin: 0; padding: 5px 0 5px 15px; list-style: none; }
.zay-nav .sub-menu a { display: block; padding: 2px 0; color: #707070; font-size: 13px; text-decoration: none; }
.zay-nav .sub-menu a:hover,
.zay-nav .sub-menu .current-menu-item > a { color: #0081c1; }
body.zay-offcanvas-open { overflow: hidden; }

/* --------------------------------------------------------------------------
   Footer
   -------------------------------------------------------------------------- */
.zay-footer { background: #404d59; padding: 40px 0; }
.zay-footer-grid { display: flex; flex-wrap: wrap; margin-left: -30px; }
.zay-footer-grid > * { box-sizing: border-box; width: 100%; padding-left: 30px; }
@media (min-width: 960px) { .zay-footer-grid > * { width: 50%; } }
@media (min-width: 1200px) { .zay-footer-grid { margin-left: -40px; } .zay-footer-grid > * { padding-left: 40px; } }
.zay-footer-left { display: none; }
@media (min-width: 960px) { .zay-footer-left { display: block; } }
.zay-footer-subnav { display: flex; flex-wrap: wrap; align-items: center; margin: 0 0 0 -21px; padding: 0; list-style: none; }
.zay-footer-subnav > li { display: flex; align-items: center; flex: none; padding-left: 10px; margin: 0; position: relative; }
.zay-footer-subnav > li::before { content: ""; height: 1.5em; margin-left: -5px; margin-right: 5px; border-left: 1px solid transparent; }
.zay-footer-subnav > li:nth-child(n+2)::before { border-left-color: #eee; }
.zay-footer-subnav > li > a { display: flex; align-items: center; column-gap: .25em; color: #ddd; font-size: 14px; font-weight: 300; text-transform: none; text-decoration: none; transition: color .1s ease-in-out; }
.zay-footer-subnav > li > a:hover { color: #ccc; }
.zay-footer-subnav > li.current-menu-item > a { color: #fff; }
.zay-footer-right { text-align: center; color: #fff; font-size: 14px; }
@media (min-width: 960px) { .zay-footer-right { text-align: right; } }

/* --------------------------------------------------------------------------
   Buttons (Elementor button widget)  –  UIkit "default"/"primary" look
   -------------------------------------------------------------------------- */
.zay .elementor-widget-button .elementor-button,
.zay .zay-button {
	margin: 0;
	display: inline-block;
	box-sizing: border-box;
	padding: 0 25px;
	vertical-align: middle;
	font-size: 14px;
	font-weight: 300;
	line-height: 43px;
	text-align: center;
	text-decoration: none;
	text-transform: none;
	border-radius: 0;
	background-color: transparent;
	color: #fff;
	border: 1px solid #fff;
	background-image: linear-gradient(90deg, #fff 50%, transparent 50%);
	background-origin: border-box;
	background-size: 200%;
	background-position-x: 100%;
	transition: .17s ease-in-out;
	transition-property: color, background-color, background-position, background-size, border-color, box-shadow;
}
.zay .elementor-widget-button .elementor-button .elementor-button-content-wrapper { display: inline; }
.zay .elementor-widget-button .elementor-button .elementor-button-text { display: inline; }
.zay .elementor-widget-button .elementor-button:hover,
.zay .elementor-widget-button .elementor-button:focus,
.zay .zay-button:hover {
	background-color: transparent;
	color: #008fd5;
	border-color: #fff;
	background-position-x: 0;
}
.zay .zay-section-primary .elementor-widget-button .elementor-button:hover,
.zay .zay-section-primary .elementor-widget-button .elementor-button:focus { color: #47aa50; }

/* --------------------------------------------------------------------------
   Divider widget → UIkit hr / divider-icon
   -------------------------------------------------------------------------- */
.zay .zay-hr .elementor-divider { padding: 0; }
.zay .zay-hr .elementor-divider-separator { border-top: 1px solid #eee; width: 100%; }
.zay .zay-divider-icon .elementor-divider { padding: 0; }
.zay .zay-divider-icon .elementor-divider-separator { height: 20px; align-items: center; }
.zay .zay-divider-icon .elementor-divider-separator::before,
.zay .zay-divider-icon .elementor-divider-separator::after { border-color: #eee; border-width: 0 0 1px 0; border-style: solid; }
.zay .zay-divider-icon .elementor-divider__element { margin: 0 18px; }
.zay .zay-divider-icon .elementor-icon { color: #eee; font-size: 14px; line-height: 0; display: block; }
.zay .zay-divider-icon .elementor-icon svg { width: 14px; height: 14px; fill: #eee; display: block; }

/* --------------------------------------------------------------------------
   Home: hero slideshow (Image Carousel widget, class .zay-hero)
   Original: UIkit slideshow ratio 4:1, min 250px, max 500px, caption bottom/left
   -------------------------------------------------------------------------- */
.zay-hero .elementor-image-carousel-wrapper { position: relative; }
.zay-hero .swiper, .zay-hero .swiper-container { height: clamp(250px, 25vw, 500px); }
.zay-hero .swiper-slide { height: clamp(250px, 25vw, 500px); }
.zay-hero .swiper-slide-inner { position: relative; display: block; width: 100%; height: 100%; margin: 0; }
.zay-hero .swiper-slide-image { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: 50% 50%; }
.zay-hero .elementor-image-carousel-caption {
	position: absolute;
	left: max(15px, calc((100% - 1230px) / 2 + 15px));
	bottom: 40px;
	max-width: calc(100% - 30px);
	box-sizing: border-box;
	margin: 0;
	padding: 15px;
	background: rgba(0, 143, 213, .8);
	color: #fff;
	font-size: 35px;
	font-weight: 400;
	line-height: 1.1;
	text-transform: none;
	text-align: left !important;
	font-style: normal;
	pointer-events: none;
}
@media (min-width: 640px) {
	.zay-hero .elementor-image-carousel-caption { left: max(25px, calc((100% - 1250px) / 2 + 25px)); max-width: calc(100% - 50px); }
}
@media (min-width: 960px) {
	.zay-hero .elementor-image-carousel-caption { left: max(40px, calc((100% - 1280px) / 2 + 40px)); bottom: 65px; max-width: calc(100% - 80px); }
}
@media (min-width: 1200px) {
	.zay-hero .elementor-image-carousel-caption { font-size: 72px; }
}
/* dots */
.zay-hero .swiper-pagination.swiper-pagination-bullets { bottom: 15px; line-height: 0; }
.zay-hero .swiper-pagination-bullet, .zay-artists .swiper-pagination-bullet {
	width: 10px;
	height: 10px;
	margin: 0 6px !important;
	border-radius: 50%;
	background: rgba(255, 255, 255, .5);
	opacity: 1;
	transition: .2s ease-in-out;
	transition-property: color, background-color, border-color, box-shadow;
}
.zay-hero .swiper-pagination-bullet-active, .zay-artists .swiper-pagination-bullet-active { background: #fff; }
/* arrows: only on ≥1600px like the original (uk-visible@xl) */
.zay-hero .elementor-swiper-button, .zay-artists .elementor-swiper-button { display: none !important; }
@media (min-width: 1600px) {
	.zay-hero .elementor-swiper-button, .zay-artists .elementor-swiper-button {
		display: flex !important;
		align-items: center;
		justify-content: center;
		box-sizing: content-box;
		width: 11px;
		height: 18px;
		padding: 22px 26px;
		color: rgba(255, 255, 255, .9);
		border: 1px solid rgba(255, 255, 255, .9);
		border-radius: 100%;
		font-size: 18px;
		transition: .1s ease-in-out;
		transition-property: color, background-color, border-color, box-shadow;
	}
	.zay-hero .elementor-swiper-button:hover, .zay-artists .elementor-swiper-button:hover { color: #fff; border-color: #fff; }
	.zay-hero .elementor-swiper-button-prev { left: 50px; }
	.zay-hero .elementor-swiper-button-next { right: 50px; }
	.zay-artists .elementor-swiper-button-prev { left: -115px; }
	.zay-artists .elementor-swiper-button-next { right: -115px; }
}

/* --------------------------------------------------------------------------
   Home: features list (Icon List widget, class .zay-features)
   -------------------------------------------------------------------------- */
.zay-features .elementor-icon-list-items {
	display: grid !important;
	grid-template-columns: 1fr;
	gap: 15px;
	margin: 0;
	padding: 0;
	list-style: none;
}
@media (min-width: 640px) and (max-width: 959px) { .zay-features .elementor-icon-list-items { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1200px) { .zay-features .elementor-icon-list-items { grid-template-columns: 1fr 1fr; } }
.zay-features .elementor-icon-list-item { display: flex !important; align-items: flex-start; gap: 15px; margin: 0 !important; padding: 0 !important; }
.zay-features .elementor-icon-list-icon {
	flex: none;
	box-sizing: content-box;
	width: 20px;
	height: 20px;
	margin: 0;
	border: 1px solid #fff;
	border-radius: 100%;
	background: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpolyline%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%221.1%22%20points%3D%224%2C10%208%2C15%2017%2C4%22%2F%3E%3C%2Fsvg%3E") 50% 50% / 20px 20px no-repeat;
}
.zay-features .elementor-icon-list-icon i, .zay-features .elementor-icon-list-icon svg { display: none !important; }
.zay-features .elementor-icon-list-text { padding: 0 !important; color: #fff; font-size: 14px; font-weight: 300; line-height: 1.4; text-transform: uppercase; }

/* --------------------------------------------------------------------------
   Home: release covers (Image widgets with class .zay-cover inside a grid container)
   Hover overlay (UIkit uk-overlay-primary, uk-transition-fade)
   -------------------------------------------------------------------------- */
.zay-cover .elementor-widget-container, .zay-cover { line-height: 0; }
.zay-cover figure, .zay-cover .elementor-image { position: relative; display: block; margin: 0; overflow: hidden; }
.zay-cover img { display: block; width: 100%; height: auto; }
.zay-cover figcaption {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	box-sizing: border-box;
	max-width: 100%;
	margin: 0;
	padding: 15px;
	background: rgba(71, 170, 80, .85);
	color: #fff;
	font-size: 14px;
	font-weight: 300;
	font-style: normal;
	line-height: 1.4;
	text-transform: uppercase;
	text-align: center;
	white-space: nowrap;
	opacity: 0;
	transition: opacity .3s ease-out;
	pointer-events: none;
}
.zay-cover figure:hover figcaption, .zay-cover:hover figcaption { opacity: 1; }

/* --------------------------------------------------------------------------
   Home: artists slider (Image Carousel widget, class .zay-artists)
   Round images, hover overlay (uk-overlay-default), dots below
   -------------------------------------------------------------------------- */
.zay-artists .swiper-slide { text-align: left; }
.zay-artists .swiper-slide-inner { position: relative; display: inline-block; vertical-align: top; max-width: 100%; margin: 0; }
.zay-artists .swiper-slide-image { display: block; width: 270px; max-width: 100%; height: auto; border-radius: 100%; }
.zay-artists .elementor-image-carousel-caption {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	box-sizing: border-box;
	max-width: 100%;
	margin: 0;
	padding: 15px;
	background: rgba(0, 143, 213, .8);
	color: #fff;
	font-size: 14px;
	font-weight: 300;
	font-style: normal;
	line-height: 1.4;
	text-transform: uppercase;
	text-align: center;
	white-space: nowrap;
	opacity: 0;
	transition: opacity .3s ease-out;
	pointer-events: none;
}
.zay-artists .swiper-slide-inner:hover .elementor-image-carousel-caption { opacity: 1; }
.zay-artists .swiper, .zay-artists .swiper-container { padding-bottom: 20px; }
.zay-artists .swiper-pagination.swiper-pagination-bullets { bottom: 0; line-height: 0; }

/* --------------------------------------------------------------------------
   Tabs (Nested Tabs widget, class .zay-tabs) → UIkit uk-tab-right / uk-switcher
   -------------------------------------------------------------------------- */
.zay-tabs .e-n-tabs { --n-tabs-gap: 30px; --n-tabs-title-gap: 0; gap: var(--n-tabs-gap); }
@media (min-width: 1200px) { .zay-tabs .e-n-tabs { --n-tabs-gap: 40px; } }
.zay-tabs .e-n-tabs-heading { flex: 0 0 auto; width: auto; --n-tabs-heading-width: auto; padding: 0; margin: 0; }
.zay-tabs .e-n-tab-title {
	--n-tabs-title-padding-block-start: 5px;
	--n-tabs-title-padding-block-end: 5px;
	--n-tabs-title-padding-inline-start: 10px;
	--n-tabs-title-padding-inline-end: 10px;
	box-sizing: border-box;
	margin: 0;
	padding: 5px 10px;
	background: transparent !important;
	border: 0;
	border-left: 1px solid transparent;
	border-radius: 0;
	box-shadow: none;
	justify-content: flex-start;
	text-align: left;
	color: #fff !important;
	--n-tabs-title-color: #fff;
	--n-tabs-title-color-hover: #fff;
	--n-tabs-title-color-active: #fff;
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	font-weight: 300;
	line-height: 1.58;
	text-transform: none;
	cursor: pointer;
	transition: .1s ease-in-out;
	transition-property: color, background-color, border-color, box-shadow;
}
.zay-tabs .e-n-tab-title:hover { border-left-color: #eee; color: #fff; }
.zay-tabs .e-n-tab-title[aria-selected="true"], .zay-tabs .e-n-tab-title.e-active { border-left-color: #b2dfff; color: #fff; }
.zay-tabs .e-n-tab-title-text { color: inherit; font: inherit; }
/* tabs on top (mobile / tablet): horizontal wrapped list like uk-tab */
.zay-tabs .e-n-tabs-heading.zay-tabs-top, .zay-tabs.zay-tabs-top-mobile .e-n-tabs-heading { }
@media (max-width: 639px) {
	.zay-tabs .e-n-tabs { flex-direction: column; }
	.zay-tabs .e-n-tabs-heading { flex-direction: row; flex-wrap: wrap; margin-left: -20px; width: auto; overflow: visible; }
	.zay-tabs .e-n-tab-title { margin-left: 20px; border-left: 0; border-bottom: 1px solid transparent; }
	.zay-tabs .e-n-tab-title:hover { border-bottom-color: #eee; }
	.zay-tabs .e-n-tab-title[aria-selected="true"], .zay-tabs .e-n-tab-title.e-active { border-bottom-color: #b2dfff; }
}
@media (min-width: 640px) and (max-width: 959px) {
	.zay-tabs.zay-tabs-top-tablet .e-n-tabs { flex-direction: column; }
	.zay-tabs.zay-tabs-top-tablet .e-n-tabs-heading { flex-direction: row; flex-wrap: wrap; margin-left: -20px; width: auto; overflow: visible; }
	.zay-tabs.zay-tabs-top-tablet .e-n-tab-title { margin-left: 20px; border-left: 0; border-bottom: 1px solid transparent; }
	.zay-tabs.zay-tabs-top-tablet .e-n-tab-title:hover { border-bottom-color: #eee; }
	.zay-tabs.zay-tabs-top-tablet .e-n-tab-title[aria-selected="true"], .zay-tabs.zay-tabs-top-tablet .e-n-tab-title.e-active { border-bottom-color: #b2dfff; }
}
.zay-tabs .e-n-tabs-content { padding: 0; }
.zay-text-justify, .zay-text-justify .elementor-widget-text-editor { text-align: justify; }

/* Tab panel / release page: image column keeps its natural size */
.zay-img-auto .elementor-widget-container, .zay-img-auto { line-height: 0; }
.zay .e-con > .elementor-widget-image.zay-img-auto { flex: 0 0 auto; width: auto; }
.zay .zay-img-auto img { display: block; max-width: 100%; }
/* text column next to the image fills the remaining space */
.zay .e-con.zay-tabpanel > .e-con { flex: 1 1 0%; width: auto; min-width: 0; }
@media (max-width: 959px) { .zay .e-con.zay-tabpanel > .e-con { flex: 0 0 auto; width: 100%; } }
.zay-img-auto img { display: block; }

/* --------------------------------------------------------------------------
   Release pages: sub navigation (shortcode [zay_release_nav]) → uk-subnav
   -------------------------------------------------------------------------- */
.zay-subnav { display: flex; flex-wrap: wrap; align-items: center; margin: 0 0 0 -10px; padding: 0; list-style: none; }
.zay-subnav > li { flex: none; box-sizing: border-box; padding-left: 10px; margin: 0; position: relative; }
.zay-subnav > li > a { display: flex; align-items: center; column-gap: .25em; color: #ddd; font-size: 14px; font-weight: 300; line-height: 1.58; text-transform: none; text-decoration: none; transition: .1s ease-in-out; transition-property: color, background-color, border-color, box-shadow; }
.zay-subnav > li > a:hover { color: #ccc; }
.zay-subnav > li.zay-active > a { color: #fff; }

/* Video (Aura Chorda): fixed 300x150 player like the original */
.zay .zay-video { line-height: 0; }
.zay .zay-video .elementor-wrapper { position: static !important; width: 300px !important; max-width: 100%; height: 150px !important; padding: 0 !important; aspect-ratio: auto !important; }
.zay .zay-video .elementor-video, .zay .zay-video video { position: static !important; display: block; width: 300px !important; max-width: 100%; height: 150px !important; background: #000; }

/* Legal notice: hosting badge */
.zay-badge img { width: 300px; height: auto; }

/* --------------------------------------------------------------------------
   Grid columns (uk-grid): width = fraction of (container + gutter) - gutter
   -------------------------------------------------------------------------- */
@media (min-width: 960px) and (max-width: 1199px) {
	.zay .e-con.e-flex.zay-row { gap: 30px; }
	.zay .e-con.zay-col-25 { flex: 0 0 auto; width: calc((100% + 30px) * .25 - 30px); }
	.zay .e-con.zay-col-50 { flex: 0 0 auto; width: calc((100% + 30px) * .5 - 30px); }
	.zay .e-con.zay-col-33 { flex: 0 0 auto; width: calc((100% + 30px) / 3 - 30px); }
	.zay .e-con.zay-col-66 { flex: 0 0 auto; width: calc((100% + 30px) / 3 * 2 - 30px); }
}
@media (min-width: 1200px) {
	.zay .e-con.e-flex.zay-row { gap: 40px; }
	.zay .e-con.zay-col-25 { flex: 0 0 auto; width: calc((100% + 40px) * .25 - 40px); }
	.zay .e-con.zay-col-50 { flex: 0 0 auto; width: calc((100% + 40px) * .5 - 40px); }
	.zay .e-con.zay-col-33 { flex: 0 0 auto; width: calc((100% + 40px) / 3 - 40px); }
	.zay .e-con.zay-col-66 { flex: 0 0 auto; width: calc((100% + 40px) / 3 * 2 - 40px); }
}
@media (min-width: 640px) and (max-width: 959px) {
	.zay .e-con.e-flex.zay-row { gap: 30px; }
	.zay .e-con.zay-col-t50 { flex: 0 0 auto; width: calc((100% + 30px) * .5 - 30px); }
}
