/*
Theme Name: Eventalk Child Theme
Theme URI: https://example.com/
Author: Berbach GmbH
Author URI: https://berbach.de/
Description: A Eventalk Child theme for WordPress.
Version: 1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: eventalk-child-theme
*/

@font-face {
	font-family: 'Liebling';
	src: url('./assets/fonts/Liebling_Thin.otf');
	font-weight: 100;
}
@font-face {
	font-family: 'Liebling';
	src: url('./assets/fonts/Liebling_Light.otf');
	font-weight: 300 ;
}
@font-face {
	font-family: 'Liebling';
	src: url('./assets/fonts/Liebling_Regular.otf');
	font-weight: 400;
}
@font-face {
	font-family: 'Liebling';
	src: url('./assets/fonts/Liebling_Medium.otf');
	font-weight: 500;
}
@font-face {
	font-family: 'Liebling';
	src: url('./assets/fonts/Liebling_Bold.otf');
	font-weight: 700 ;
}
@font-face {
	font-family: 'Liebling';
	src: url('./assets/fonts/Liebling_Black.otf');
	font-weight: 800;
}
@font-face {
	font-family: 'Liebling';
	src: url('./assets/fonts/Liebling_Heavy.otf');
	font-weight: 900;
}

html {
	font-family: 'Liebling';
}

body {
	padding-top: 46px;

	@media (width >= 1024px) {
		padding-top: 215px;
	}
}

#primary {
	padding-block: 0 !important;
}

.container {
	max-width: 1300px;
}

.bb-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 99;
	height: 46px;
	background-color: #fff;
	background-image: url('../eventalk-child/assets/video/video.mp4');

	@media (width >= 1024px) {
		height: 215px;
	}

	a,
	a:link,
	a:visited {
		text-decoration: none;
	}

	.container {
		z-index: 1;
		position: relative;
		/* overflow: hidden; */

		@media (width < 1024px) {
			display: flex;
			height: 100%;
			align-items: center;
		}

		@media (width >= 1024px) {
			padding-top: 40px;
			position: relative;
		}
	}

	&:has(input:checked) {
		.bb-header__menu {
			transform: translateX(0);
		}

		.bb-header__menu-toggle {
			&:before {
				content: '';
				background-color: rgba(256, 256, 256, .8);
				display: inline-block;
				top: 46px;
				right: 0;
				left: 0;
				bottom: 0;
				position: fixed;
			}

			span {
				background-color: transparent;

				&:before {
					transform: rotate(-45deg);
					top: 0;
				} 

				&:after {
					transform: rotate(45deg);
					bottom: 0;
				}
			}
		}
	}

	video {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		object-fit: none;
		width: 100%;
		height: 100%;
		pointer-events: none;

		@media (width >= 1024px) {
			object-fit: cover;
			height: 130%;
			top: -65px;
		}
	}
}

.bb-header__friends {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 40px 30px;
	
	@media (width >= 1024px) {
		padding: 0;
		position: absolute;
		top: 30px;
		right: 15px;
	}
	
	svg {
		width: 174px;
	}
}

.bb-header__logo {
	text-align: center;
	width: 200px;
	max-width: calc(100% - 80px);
	position: relative;
	
	@media (width >= 1024px) {
		width: 600px;
		margin-inline: auto;
	}

	a {
		display: inline-block;
		height: 32px;

		@media (width >= 1024px) {
			height: auto;
		}
	}
}

.bb-header__menu-toggle {
	display: grid;
	place-items: center;
	height: 46px;
	width: 46px;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 0;
	right: 0;

	@media (width >= 1024px) {
		display: none;
	}

	span {
		display: inline-block;
		width: 30px;
		height: 3px;
		background-color: #fff;
		font-size: 0;
		position: relative;

		&:before, &:after {
			content: '';
			position: absolute;
			width: 30px;
			height: 3px;
			background-color: #fff;
			left: 0;
		}

		&:before {
			top: -8px;
		}	

		&:after {
			bottom: -8px;
		}
	}

	input {
		display: none;
	}
}

.bb-header__menu {
	@media (width < 1024px) {
		position: fixed;
		padding-block: 20px;
		width: 284px;
		right: 0;
		top: 46px;
		bottom: 0;
		overflow: auto;
		background-color: #fff;
		max-width: 100%;
		border-top: 1px solid #D8D6D6;
		transition: transform 0.3s ease-in-out;
		transform: translateX(100%);
	}

	
}

.menu-hauptmenu-container{
	position: relative;

	@media (width >= 1024px) {
		margin-top: 15px;
		border-bottom: #000 solid .063rem;
	}

	ul {
		margin: 0;
		padding: 0;

		a {
			display: inline-block;
			text-transform: uppercase;
			font-family: 'Liebling';
			padding: 10px;
		}

		ul {
			display: none;
		}

		a:hover,
		[aria-current="page"] {
			position: relative;
			color: inherit;

			&:after {
				content: '';
				position: absolute;
				left: 0;
				right: 0;
				bottom: 0;
				height: 2px;
				background-color: #000;

				@media (width >= 1024px) {
					bottom: -4px;
					height: 4px;
				}
			}
		}
	}

	> ul {
		display: flex;
		flex-direction: column;
		justify-content: space-evenly;

		@media (width >= 1024px) {
			flex-direction: row;
		}

		li {
			@media (width < 1024px) {	
				border-bottom: 1px solid #000;
				padding-inline: 20px;
			}
		}
	}
}

.home .bb-breadcrumbs-wrapper {
	display: none;
}

.bb-breadcrumbs-wrapper {
	margin-bottom: 20px;
}

.bb-breadcrumbs {
	display: flex;
	flex-wrap: wrap;

	.bb-breadcrumb--home {
		display: inline-block;
		height: 46px;
		width: 30px;
		font-size: 0;
		background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="16" viewBox="0 0 18 16"><path d="M-10556-14083.751l9.079-8.012,8.921,8.012v1.988h-18Z" transform="translate(10555.999 14091.763)" fill="%23424967"/><rect width="4" height="7" transform="translate(3 9)" fill="%23424967"/><rect width="4" height="7" transform="translate(11 9)" fill="%23424967"/></svg>');
		background-repeat: no-repeat;
		background-position: left center;
	}

	.bb-breadcrumb,
	.bb-breadcrumb ~ span:not(:last-child) {
		position: relative;

		&:before {
			position: absolute;
			right: -3px;
			top: 0;
			bottom: 0;
			content: '';
			display: inline-block;
			width: 6px;
			background-position: center;
			background-repeat: no-repeat;
			background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="5.073" height="7.447" viewBox="0 0 5.073 7.447"><path d="M2.4,0H0L2.674,3.723,0,7.447H2.4L5.073,3.723Z" fill="%23494d62"/></svg>');
		}

		a {
			text-decoration: none;

			&:hover {
				color: #009FE3;
			}
		}
	}

	.bb-breadcrumb--home ~ span {
		font-size: 14px;
		font-family: 'Liebling';
		line-height: 20px;
		padding: 13px 10px;
		display: inline-block;

		&:last-child {
			color: #009FE3;
		}
	}
}

.elementor-section.elementor-section-boxed > .elementor-container:has(.bb-teaser-box)  {
	@media (width >= 768px) {
		margin-inline: -10px;
	}
}

.bb-bg--blue {
	background-color: #EFF8FD;
}

.elementor-widget-text-editor {

	b, strong {
		font-weight: 500;
	}

	h1 {
		font-size: 30px;
		line-height: 34px;

		@media (width >= 768px) {
			text-align: center;
		}
	}

	h2, h3 {
		font-size: 26px;
		line-height: 28px;

		@media (width >= 768px) {
			text-align: center;
		}

		&.bb-text-left {
			text-align: left;
		}
	}

	* {
		font-family: 'Liebling';
	}

	ul {
		list-style: '– ';
	}
}

.elementor-element:has(.bb-logos--alt) {
	padding-inline: 1.5rem;
}

.rt-el-title {
	font-family: 'Liebling';
	margin-bottom: 20px;

	h2.rtin-title {
		font-family: inherit;
		font-size: 26px;
		line-height: 34px;
		font-weight: 500;

		@media (width >=768px) {
			font-size: 30px;
			line-height: 39px;
		}
	}

	p {
		font-family: inherit;
		width: 100%;
		margin-inline: auto;
	}

	p:last-child {
		margin-bottom: 0;
	}
}

.elementor-widget-button .elementor-button-wrapper {
	/* text-align: center; */

 	.elementor-button {
		font-family: 'Liebling';
		border-radius: 10px;
		background-color: #424967;
		color: #fff;
		border: 1px solid #fff;
		display: inline-block;
		font-size: 18px;
		line-height: 18px;
		padding: 12px 36px;
		text-transform: uppercase;
		text-decoration: none;
		font-weight: 700;

		&:hover {
			color: #424967;
			background-color: #fff;
			border-color: #424967; 
		}
	}
}

.elementor-heading-title {
	font-family: 'Liebling';
	color: #424967;
	font-size: 16px;
	line-height: 22px;
	font-weight: 700;
}

.elementor-section:has(.swiper) {

	@media (width < 1024px) {
		margin-inline: -24px;
	}
}
.home .elementor-widget-container:has(.swiper){
	border-block: 1px solid #D8D6D6;
}

body .elementor-element.elementor-arrows-position-outside .swiper {
	width: calc(100% - 10.25rem);
}

.swiper {

	.elementor-swiper-button {

		&:hover {
			color: #009FE3 !important;
		}

		svg {
			height: 100% !important;
		}
	}

	.swiper-pagination-bullet {
		width: 40px !important;
	 	margin: 0 !important;
		border-radius: 0;
	}
}

.rt-el-speaker-grid-3.row {
	margin-inline: -10px;

	.rtin-item {
		padding-inline: 10px;
	}
}

.speaker-layout4 {
	padding: 0;
	border-radius: 0;
	margin-bottom: 20px;

	@media (width >= 1024px) {
		display: grid;			
		column-gap: 20px;
		grid-template-columns: 180px 1fr;
		grid-template-areas: 'media title' 'media social';
		grid-template-rows: 1fr auto;
	} 

	.speaker-layout4-top {
		padding: 0;

		@media (width >= 1024px) {
			grid-area: media;
			width: 180px;
			height: 180px;
		}
	}
	
	.speaker-layout4-img {
		margin-bottom: 16px;
		border-radius: 0;
		height: 100%;
		border: 1px solid #D8D6D6;

		@media (width >= 1024px) {
			margin-bottom: 0;
		}

		.rounded-circle {
			border-radius: 0 !important;
		}

		img {
			height: 100%;
			object-fit: cover;
		}
	}

	.item-title {
		text-align: left;

		@media (width >= 1024px) {
			grid-area: title;
			margin-block: auto 0;
		}

		.title {
			margin-bottom: 0;

			a {
				text-decoration: none;
				font-size: 26px;
				font-family: 'Liebling';
				font-weight: 500;
			}
		}

		.designation {
			text-align: left !important;
			color: #000;
			font-family: 'Liebling';
		}
	}

	.item-social {

		@media (width >= 1024px) {
			grid-area: social;
			margin-top: 10px;
		}

		.social-icons {
			display: flex;
			flex-wrap: wrap;
			gap: 10px;
			padding: 0;

			li {
				margin: 0;
			}

			a {
				transition: none;
				display: flex;
				color: #424967;
				transition: none;
				border: 1px solid #424967;
				border-radius: 5px;
				text-decoration: none;

				i {
					transition: none;
					color: inherit;
					border-radius: 0;
					background-color: transparent;
				}

				&:hover {
					color: #fff;
					background-color: #009FE3;
					border-color: #009FE3;
				}
			}

			.fa.fa-twitter{
				background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M389.2 48h70.6L305.6 224.2 487 464H345L233.7 318.6 106.5 464H35.8L200.7 275.5 26.8 48H172.4L272.9 180.9 389.2 48zM364.4 421.8h39.1L151.1 88h-42L364.4 421.8z" fill="currentColor"/></svg>');
				background-size: 18px;
				background-repeat: no-repeat;
				background-position: center center;

				&:before {
					display: none;
				}
				
			}
		}
	}
}

.bb-footer {
	background-color: #223B53;
	color: #fff;
	padding-top: 40px;
	font-family: 'Liebling';

	.bb-footer-menu {
		text-transform: uppercase;
		margin-inline: -16px;
		
		@media (width >= 768px) {
			margin: 0;
		}
		
		nav {
			border: none;

			@media (width >= 768px) {
				border-bottom: 1px solid #fff;
			}
		}

		.menu {
			list-style: none;
			display: flex;
			flex-direction: column;
			margin: 0;
			padding: 0;
			text-align: center;
			justify-content: center;

			@media (width >= 768px) {
				flex-wrap: wrap;
				flex-direction: row;
				gap: 60px;
			}

			a {
				display: inline-block;
				text-align: center;
				padding-block: 10px;
			}
		
			a:hover,
			[aria-current="page"] {
				position: relative;
				color: inherit;

				&:after {
					content: '';
					position: absolute;
					left: 0;
					right: 0;
					bottom: 0;
					height: 2px;
					background-color: #fff;

					@media (width >= 1024px) {
						bottom: -4px;
						height: 4px;
					}
				}
			}

			li {
				border-bottom: 1px solid #fff;

				@media (width >= 768px) {
					border-bottom: none;
				}
			}
		}
	}

	a,
	a:visited,
	a:link {
		color: #fff;
		text-decoration: none;
	}

	.bb-footer-content {
		margin-block: 40px;
		text-align: center;
		
		p {
			margin: 0;
		}

		strong, span, a {
			white-space: nowrap;
		}
		
		a:hover {
			text-decoration: underline;
		}
	}

	.bb-copyright {
		color: #223B53;
		position: relative;

		&:before {
			content: '';
			display: inline-block;
			background-color: #fff;
			position: absolute;
			top: 0;
			left: 50%;
			bottom: 0;
			width: 100dvw;
			transform: translateX(-50%);
		}
	}

	.bb-copyright-content {
		padding-block: 20px;
		position: relative;
		text-align: center;
		font-size: 12px;
		text-transform: uppercase;

		p {
			margin: 0;
		}
	}
}

a.scrollToTop:link, 
a.scrollToTop:visited {
	color: inherit;
}

a.scrollToTop {
	background-color: #fff;
	border-color: #424967;
	color: #424967;
	height: 60px;
	width: 60px;
	display: grid;
	place-items: center;
	padding: 0;
	margin: 0;

	svg {
		width: 26px;
	}

	&:hover {
		background-color: #009FE3;
		border-color: #009FE3;
		color: #fff;
	}
}

.gform_legacy_markup_wrapper .gform_body ul.gform_fields {
	flex-wrap: wrap;
	display: flex;
	margin:  0 -10px !important;

	.gfield {
		display: flex;
		flex-direction: column;
		width: 100%;		
		padding: 0 10px;
		margin: 0 0 20px !important;
	}

	.gfield_error {
		background-color: transparent;
		border: none;
	}

	.gfield-top-margin {
		margin-top: 20px !important;
	}

	.validation_message {
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		color: red;
		font-size: 14px;
		font-family: 'Liebling';
	}

}

.gform_legacy_markup_wrapper .gform_body {

	.gfield-half,
	.gfield-full,
	.gfield-address {

		.gform-field-label {
			display: inline-block;
			width: 100% !important; 
			float: none !important;
			margin: 0 0 10px !important;
			padding: 0 !important;
			font-family: "Liebling";
			font-size: 18px;
			font-weight: 400;
			white-space: normal !important;

			a {
				color: #009FE3;
				text-decoration: underline;
				
				&:hover {
					text-decoration: none;
				}
			}

		}

		.ginput_container {
			width: 100% !important;
			margin: 0 !important;

			input[type='text'],
			input[type='email'],
			select {
				margin: 0;
				height: 46px;
				width: 100% ;
				background-color: #F2F2F2;
				color: #646464;
				font-family: 'Liebling';
				font-size: 18px;
				padding: 10px 20px !important;
			}
			
			input[type='text'],
			input[type='email'] {
				box-shadow: inset 5px 3px 6px rgba(0,0,0, .3);
			}

			select {
				background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="28.185" height="16.327" viewBox="0 0 28.185 16.327"><g transform="translate(-1084.908 -2294.948)"><line y1="0.588" x2="19.412" transform="translate(1086.416 2296.04) rotate(45)" fill="none" stroke="%23424967" stroke-width="3"/><line x2="19.412" y2="0.588" transform="translate(1097.858 2309.766) rotate(-45)" fill="none" stroke="%23424967" stroke-width="3"/></g></svg>');
				box-shadow: 5px 3px 6px rgba(0,0,0, .3);
				background-repeat: no-repeat;
				background-position: calc(100% - 20px) center;
				padding-right: 60px;
				-webkit-appearance: none;
				-moz-appearance: none;
			}

			select::-ms-expand {
				display: none;
			}
		}
	}

	.gfield-half {
		@media (width >= 768px) {
			width: 50% !important;
		}
	}

	.gfield-full {
		p {
			margin: 0;
			font-family: 'Liebling';
		}
	}

	.gfield-address {

		.gfield_label {
			font-weight: 700;
		}

		.address_country {
			width: 100%;
			margin-bottom: 0;
		}

		.gform-grid-col {
			margin-top: 20px;

			.gform-field-label {
				font-size: 18px;
				margin: 0 0 10px 0;
			}
		}

		.address_country.ginput_right {

			@media (width >= 641px) {
				padding-right: 0;
			}
		}
	}

	.gfield--type-checkbox {

		.gfield_label {
			order: 1;
			font-weight: 700;
		}

		.ginput_container {
			order: 3;
		}

		.gfield_description {
			font-size: 18px;
			line-height: 28px;
			font-family: 'Liebling';
			order: 2;
			width: 100% !important;
			margin: 0 0 20px 0 !important;
			padding: 0 !important;
		}
	}

	.gfield_checkbox {
		width: 100% !important;
		margin: 0;

		li {
			margin: 0 !important;
		}

		.gfield_label {
			font-weight: 700;
		}
	}

	.gfield_checkbox input[type='checkbox'] {
		display: none;

		&:checked + label:before {
			background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16.263" height="16.264" viewBox="0 0 16.263 16.264"><g transform="translate(1.061 1.061)"><line x2="20" transform="rotate(45)" fill="none" stroke="%23424967" stroke-width="3"/><line x2="20" transform="translate(0 14.142) rotate(-45)" fill="none" stroke="%23424967" stroke-width="3"/></g></svg>');
			background-repeat: no-repeat;
			background-position: center center;
		}

		+ label {
			position: relative;
			padding-left: 66px !important;
			min-height: 46px;
			padding-top: 10px !important;
			margin: 0 !important;

			&:before {
				content: '';
				display: inline-block;
				position: absolute;
				top: 0;
				left: 0;
				width: 46px;
				height: 46px;
				background-color: #F2F2F2;
				box-shadow: inset 5px 3px 6px rgba(0,0,0, .3);
			}
		}

	}

	.gfield_checkbox .gfield-choice-input + .gform-field-label {
		margin: 0;
	}
}

.gform_legacy_markup_wrapper {

	#select_rate,
	#invalid_promo {
		color: red;
		font-weight: 700;
		font-family: 'Liebling';
	}

	.gform_footer {
		width: 100% !important;
		padding: 0 !important;
		margin: 20px 0 0 !important;
		text-align: center;
	}

	input[type="submit"].gform_button {
		text-align: center;
		font-family: 'Liebling';
		background-color: #424967;
		color: #fff;
		display: inline-block;
		font-size: 18px;
		line-height: 18px;
		padding: 12px 36px;
		text-transform: uppercase;
		text-decoration: none;
		font-weight: 700;
		border: 1px solid #fff;
		border-radius: 10px;
		margin: 0 !important;

		&:hover {
			border-color: #424967;
			background-color: #fff;
			color: #424967;
		}
	}
}

#payment_container {
	font-family: 'Liebling';
	font-size: 18px;

	td {
		padding: 5px 0;
	}

	#price_final {
		font-weight: 700;
	}

	@media (width >= 768px) {
		width: 50%;
	}
}

.bb-accordion__content,
.bb-logos-modal__text,
.elementor-widget-heading .elementor-widget-container,
.elementor-widget-text-editor .elementor-widget-container {

	h1, h2, h3 {
		font-weight: 500;
	}

	h1 {
		color: #424967;
		font-size: 30px;
		line-height: 34px;
	}

	h2, h3 {
		text-align: left;
	}

	h2 {
		font-size: 26px;
		line-height: 28px;
	}

	h3 {
		font-size: 22px;
		line-height: 24px;
		margin-bottom: 12px;
	}

	ul {
		margin-bottom: 20px;
		padding-left: 16px;
		list-style: none;

		li {
			position: relative;

			&:before {
				content: "–";
				position: absolute;
				left: -16px;
			}
		}


		ul {
			padding-left: 48px;
			margin-block: 0;
		}
	}

	a,
	a:link,
	a:visited {
		color: #009FE3;
		text-decoration: underline;
		
		&:hover {
			text-decoration: none;
		}
	}

	> :last-child {
		margin-bottom: 0;
	}
}


.dialog-widget.elementor-lightbox {
    background-color: #EFF8FD;


	.elementor-swiper-button.elementor-swiper-button-prev, 
	.elementor-swiper-button.elementor-swiper-button-next,
	.elementor-slideshow__title,
	.elementor-slideshow__header i,
	.elementor-slideshow__counter.swiper-pagination-fraction.swiper-pagination-horizontal,
	.dialog-lightbox-close-button {
		color: #424967;
	}

	.elementor-swiper-button.elementor-swiper-button-prev, 
	.elementor-swiper-button.elementor-swiper-button-next {
		font-size: 55px;
	}

	.dialog-lightbox-close-button,
	.elementor-slideshow__header i,
	.elementor-swiper-button.elementor-swiper-button-prev, 
	.elementor-swiper-button.elementor-swiper-button-next {
		cursor: pointer;

		&:hover {
			color: #009FE3;
		}
	}

	.dialog-lightbox-close-button {
		text-decoration: none;
	}
}

.bb-box-shadow {
	box-shadow: 5px 3px 6px rgba(0,0,0,.3);
}

.bb-list--check.elementor-widget-text-editor .elementor-widget-container {
	
	ul {
        list-style: none;
        padding: 0;
        margin: 0;

        li {
            padding-left: 20px;
            position: relative;

            &:before {
                position: absolute;
                left: 0;
                top: 0;
                content: "\2713";
                color: green;
            }
        }
    }
}

.elementor-image-gallery .gallery-item img {
	box-shadow: 5px 3px 6px rgba(0,0,0,.3);
}


.error-page-area {
	background-color: #fff;

	img {
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		object-fit: fill;
		height: 100%;
		width: 100%;
	}

	.error-page {
		position: relative;
		padding-block: 135px;

		h3, p {
			color: #000;
			max-width: 844px;
			margin-inline: auto;
		}

		h3, p, .btn-fill {
            font-family: 'Liebling';
			position: relative;
			z-index: 2;
		}

		h3 {
			font-weight: 500;
			margin-top: 0;
		}

		.btn-fill {
			text-align: center;
            background-color: #424967;
            color: #fff;
            display: inline-block;
            font-size: 18px;
            line-height: 18px;
            padding: 12px 36px;
            text-transform: uppercase;
            text-decoration: none;
            font-weight: 700;
            border: 1px solid #424967;
            border-radius: 10px;
			min-height: auto;

			&:hover {
				background-color: #fff;
				color: #424967;
			}
		}
	}
}
