/*
  Theme Name: Asli Child
  Template: asli
  Theme URI: https://artemsemkin.com/asli/wp/
  Description: This is a child theme of Asli, used for codebase customizations
  Author: Artem Semkin
  Author URI: https://artemsemkin.com/
  Version: 1.0.0
*/

/* Menü */

.sub-menu .parent {
	margin-bottom: 3rem;
	font-size: 60px !important;
}

.menu-overlay {
	margin-top: 6rem !important;
}

.menu-overlay li a:hover {
	color: var(--e-global-color-accent) !important;
}


/* Buttons */

main .taskforms-container .btn-primary,
.taskforms-container .btn {
	border: 2px solid var(--e-global-color-accent) !important;
}

main .elementor-button:hover,
main .taskforms-container .btn-primary:hover {
	background: #53bbdd !important;
	border: 2px solid #53bbdd !important;
}


/* News Bereich */

.archive .elementor-grid .category {
	display: none;
}







/* Lightbox */

.elementor-lightbox .elementor-lightbox-item {
	padding: 100px !important;
}

.dialog-lightbox-close-button {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 45px !important;
	height: 45px !important;
	background-color: #ffffff !important;
	border-radius: 50% !important;
	position: absolute !important;
	top: 25px !important;
	right: 25px !important;
	z-index: 9999999 !important;
	box-shadow: 0 2px 10px rgba(0,0,0,0.2) !important;
}

.dialog-lightbox-close-button:hover {
	background-color: var(--e-global-color-accent) !important;
}

.dialog-lightbox-close-button:hover .custom-close-icon {
	filter: brightness(0) invert(1) !important; 
}

.custom-lightbox-arrow {
	position: fixed !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	background-color: #fff !important;
	border-radius: 50%;
	z-index: 9999999 !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	box-shadow: 0 2px 10px rgba(0,0,0,0.2) !important;
	cursor: pointer;
}

.custom-lightbox-arrow img {
	width: 24px;
	height: 24px;
}

.custom-lightbox-arrow:hover {
	background-color: var(--e-global-color-accent) !important;
}

.custom-lightbox-arrow:hover img {
	filter: brightness(0) invert(1) !important;
}

.custom-prev { 
	left: 25px !important; 
}

.custom-next { 
	right: 25px !important; 
}

/* Das originale Elementor SVG Icon im Button verstecken */
.dialog-lightbox-close-button svg {
	display: none !important;
}

.elementor-lightbox .dialog-lightbox-close-button {
	background-image: url('assets/close.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: 24px;
	transition: background-color 0.3s ease, filter 0.3s ease;
}

.elementor-lightbox .dialog-lightbox-close-button:hover {
	background-image: url('assets/close-white.svg');
}

.elementor-lightbox .elementor-lightbox-image {
	border-radius: 0 !important;
	border: none !important;
}


/* Elementor Galerie: Lupe & Zoom Effekt */

.elementor-image-gallery .gallery-item {
	position: relative !important;
	overflow: hidden !important;
}

.elementor-image-gallery .gallery-item .gallery-icon a {
	display: block !important;
	position: relative !important;
	overflow: hidden !important;
	text-decoration: none !important;
	box-sizing: border-box !important;
}

.elementor-image-gallery .gallery-item .gallery-icon img {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
	transform: scale(1) !important;
	backface-visibility: hidden !important;
	-webkit-backface-visibility: hidden !important;
	border: none !important;
}

.elementor-image-gallery .gallery-item:hover .gallery-icon img {
	transform: scale(1.08) !important;
}

.elementor-image-gallery .gallery-icon a::before {
	content: '' !important;
	position: absolute !important;
	top: 50% !important;
	left: 50% !important;
	width: 60px !important;
	height: 60px !important;
	background-color: var(--e-global-color-accent, #007bff) !important;
	border-radius: 50% !important;
	z-index: 10 !important;
	opacity: 0 !important;
	transform: translate(-50%, -50%) scale(0.4) !important;
	transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.3s !important;
	pointer-events: none !important;
}

.elementor-image-gallery .gallery-icon a::after {
	content: '' !important;
	position: absolute !important;
	top: 50% !important;
	left: 50% !important;
	width: 24px !important;
	height: 24px !important;
	background-image: url('assets/glass.svg') !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: contain !important;
	filter: brightness(0) invert(1) !important;
	-webkit-filter: brightness(0) invert(1) !important;
	z-index: 11 !important;
	opacity: 0 !important;
	transform: translate(-50%, -50%) scale(0.4) !important;
	transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.3s !important;
	pointer-events: none !important;
}

.elementor-image-gallery .gallery-item:hover .gallery-icon a::before,
.elementor-image-gallery .gallery-item:hover .gallery-icon a::after {
	opacity: 1 !important;
	transform: translate(-50%, -50%) scale(1) !important;
}

.elementor-image-gallery .gallery-item:hover {
	box-shadow: none !important;
}


/* Rechtliches */

.law h2 {
	margin-top: 1em !important;
	font-family: var(--e-global-typography-c6ff66f-font-family), serif !important;
	font-weight: 500 !important;
}

.law h3 {
	font-size: 30px !important;
	margin-top: 1.5em !important;
	font-family: var(--e-global-typography-c6ff66f-font-family), serif !important;
	font-weight: 500 !important;
}

.law ul {
	margin: 1em 0 2em 0 !important;
}

.law ul li {
	margin-bottom: 8px !important;
}


/* Accordeon */

.e-n-accordion-item-title {
	display: flex !important;
	flex-direction: row !important;
	justify-content: space-between !important;
	align-items: center !important;
	width: 100% !important;
}

.e-n-accordion-item-title-header {
	flex-grow: 1 !important;
	text-align: left !important;
	order: 1 !important;
}

.e-n-accordion-item-title-icon {
	display: flex !important;
	order: 2 !important;
	margin-left: auto !important;
	padding-left: 20px !important;
}

.e-n-accordion-item-title-icon .e-opened,
.e-n-accordion-item-title-icon .e-closed {
	display: none !important;
}

.e-n-accordion-item[open] .e-n-accordion-item-title-icon .e-opened {
	display: flex !important;
}

.e-n-accordion-item:not([open]) .e-n-accordion-item-title-icon .e-closed {
	display: flex !important;
}

.elementor-widget-n-accordion .e-n-accordion-item .e-n-accordion-item-title-icon span > svg {
	fill: #000;
}


/* Videos als Iframe im 16:9 Format */

iframe[src*="youtube.com"], 
iframe[src*="youtu.be"], 
iframe[src*="player.vimeo.com"] {
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 16 / 9;
	display: block;
	margin-bottom: 2rem;
}


/* Tabelle */

table {
	margin-bottom: 2rem;
}

thead th {
	color: #FFFFFF;
	background: var(--e-global-color-accent);
}

table th, 
table td {
	padding: 20px !important;
	border: 0;
}

table td {
	background: #efefef !important;
	color: #333;
	vertical-align: top !important;
}


/* Bestellen Button ausblenden */

body.product-not-purchasable .anfragen-btn, 
body.product-cat-radierungen .versandkosten,
body.product-not-purchasable .versandkosten, 
body.product-not-purchasable .lieferung, 
body.category-not-radierungen .galeristen,  
body.category-not-radierungen .versand,
body.product-cat-radierungen .preis,
body.has-galerist-link .galeristen-btn {
	display: none !important;
}


/* UL schöner */

.elementor-widget-text-editor ul,
.desc ul {
	list-style: none !important;
	padding-left: 0 !important;
	margin-left: 0 !important;
}

.elementor-widget-text-editor ul li,
.desc ul li {
	position: relative;
	padding-left: 40px !important;
	margin-bottom: 20px;
	color: #ffffff !important;
	line-height: 1.6;
	align-items: flex-start;
}

.elementor-widget-text-editor ul li::before, 
.desc ul li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 28px;
	height: 28px;
	background-image: url('assets/bird.svg');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	filter: brightness(0) invert(1); 
}


/* Underline Hover Effekt */

.elementor-widget-text-editor a:hover {
	text-decoration: underline;
	text-underline-offset: 4px;
}


/* Malreisen Slider */

.no-horizontal-scroll img.no-hs-of-cover-contain {
	-o-object-fit: cover !important;
	object-fit: cover !important;
}


/* Taskforms */

/* Zusammengeführte .btn-primary Regel */
.taskforms-container .btn-primary {
	margin-top: 1.5rem;
	font-family: var(--e-global-typography-7190751-font-family), serif !important;
	font-size: var(--e-global-typography-7190751-font-size) !important;
	font-weight: var(--e-global-typography-7190751-font-weight) !important;
	text-transform: var(--e-global-typography-7190751-text-transform) !important;
	line-height: var(--e-global-typography-7190751-line-height) !important;
	letter-spacing: var(--e-global-typography-7190751-letter-spacing) !important;
	color: var(--e-global-color-54dc823) !important;
	fill: var(--e-global-color-54dc823) !important;
	background-color: var(--e-global-color-accent) !important;
	border: 1px solid var(--e-global-color-primary) !important;
	padding: 10px 25px !important;
	border-radius: 30px !important;
}

.taskforms-container .has-feedback .form-control {
	height: 44px;
	margin: 10px 0;
	border-color: #fff;
	border-radius: 0 !important;
}

.taskforms-container textarea {
	height: 200px !important;
}

.taskforms-container legend {
	font-size: 1.5rem;
	margin-top: 2rem;
	margin-bottom: 1rem;
}

.taskforms-container .form-control:focus {
	border-color: var(--e-global-color-accent) !important;
	outline: 0;
	box-shadow: none !important;
}


/* Radio Buttons */

.taskforms-container .formio-component-radio .field-required,
.taskforms-container .formio-component-radio label::before,
.taskforms-container .formio-component-radio label::after,
.taskforms-container .formio-component-radio span::before,
.taskforms-container .formio-component-radio span::after,
.taskforms-container .formio-component-radio .form-check::before,
.taskforms-container .formio-component-radio .form-check::after {
	display: none !important;
	content: "" !important;
	background: none !important;
}

.taskforms-container .formio-component-radio [ref="radioGroup"] {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	gap: 15px !important;
}

.taskforms-container .formio-component-radio.required [ref="radioGroup"]::after {
	content: "*" !important;
	color: #ff0000 !important;
	margin-left: 4px !important;
	font-weight: bold !important;
	display: inline-block !important;
}

.taskforms-container .formio-component-radio .form-check {
	margin: 0 !important;
	padding-left: 0 !important;
	display: flex !important;
	align-items: center !important;
}

.taskforms-container .formio-component-radio .form-check-input {
	margin: 0 6px 0 0 !important;
}

.taskforms-container .formio-component-radio .form-check-label {
	margin: 0 !important;
	padding: 0 !important;
}

.taskforms-container .checkbox,
.taskforms-container .checkbox a {
	font-size: 14px !important;
}


/* Mobile */

@media (max-width: 767px) {
	#menu-main-menu {
		padding-right: 40px;
	}
	
	.menu-overlay {
		margin-top: 2rem !important;
	}  
	
	 .malreisen-slider .portfolio-item__wrapper-button, 
    .button-circle.portfolio-item__button {
        display: none !important;
    }
    
   .malreisen-slider .portfolio-item .js-ajax-transition-element__media {
    	width: 100% !important;
    	height: auto !important;
    	aspect-ratio: 4 / 3 !important; 
    	object-fit: cover !important;
	}
	
}