/*
Theme Name: pX-Theme
Text Domain: twentytwenty
Version: 1.0
Requires at least: 6.4
Requires PHP: 7.4.0
Description: Basis-Template zur Webseitenerstellung
Tags: Template
Author: pronomiX, Andreas Mennel
Author URI: https://www.pronomix.de
Theme URI: https://www.pronomix.de
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

All files, unless otherwise stated, are released under the GNU General Public
License version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html)

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned
with others.
*/
:root{
    --search-top:110px;
	--login-right:40px;
}
@font-face {
	font-display: swap;
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 400;
	src: url('assets/fonts/OpenSans-Regular.woff2') format('woff2');
}
@font-face {
	font-display: swap;
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 500;
	src: url('assets/fonts/OpenSans-500.woff2') format('woff2');
}
@font-face {
	font-display: swap;
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 700;
	src: url('assets/fonts/OpenSans-Bold.woff2') format('woff2');
}
@font-face {
	font-display: swap;
	font-family: 'Open Sans';
	font-style: italic;
	font-weight: 400;
	src: url('assets/fonts/OpenSans-Italic.woff2') format('woff2');
}
@font-face {
	font-display: swap;
	font-family: 'Open Sans';
	font-style: italic;
	font-weight: 700;
	src: url('assets/fonts/OpenSans-BoldItalic.woff2') format('woff2');
}
*{
	font-family:'Open Sans', sans-serif;
}
body{
	background: #E2E2E2;
	padding: 15px 0;
}
.e-con-inner > a{
	color: #000;
}
.box, .members-access-error{
	background:#FFF;
	border-radius:20px!important;
	padding:30px!important;
	width:100%;
}
.schwarz{
	background:#000;
	color:#FFF!important;
	border-radius:20px!important;
	padding:30px 120px!important;
	margin:50px 0!important;
}
.rot{
	background:var(--e-global-color-primary);
	color:#FFF!important;
	border-radius:20px!important;
	padding:30px 120px!important;
	margin:50px 0!important;
}
a{
	color: var(--e-global-color-primary);
}
h1, h2, h3, h4, h5, h6{
	padding: 0;
	margin: 0 0 20px 0;
}
h3{
	margin:15px 0!important;
}
figcaption{
	font-style:italic;
	color:#444;
	font-size:14px;
	margin-top:10px;
}
figcaption:empty{
	margin-top:0;
}
.elementor-search-form__container{
	background: #FFF!important;
	border-radius: 20px;
	height:60px!important;
	top: var(--search-top)!important;
	width: 100%;
	max-width: 1260px;
	margin: 0 auto;
	padding: 0 30px!important;
	transition: 0s!important;
	transform: scale(1)!important;
	box-shadow: 0 15px 20px rgba(30, 5, 5, 0.3);
	display: none!important;
}
.elementor-search-form__container.elementor-search-form--full-screen{
	display: flex!important;
}
.elementor-search-form__container input{
	text-align: left!important;
	padding: 0 30px!important;
	color: #000!important;
	font-size: 24px!important;
	transition: 0s!important;
	height: 50px;
	z-index: 2;
}
.elementor-search-form__container .dialog-close-button{
	margin: 0!important;
}
.elementor-search-form__container .dialog-close-button svg{
	fill: var(--e-global-color-primary)!important;
	height: 30px!important;
	width: 30px!important;
}
.elementor-search-form__container .dialog-close-button svg:hover{
	fill: #000!important;
}
.bjw_startseite{
	--search-top:130px;
	--e-global-color-0293d38:#000!important;
}
.dialog-widget-content{
}
.dialog-widget-content{
	top: 115px!important;
	left: calc(50% + min(100vw, 630px) - 430px)
}
.page-id-18 .dialog-widget-content{
	top: 135px!important;
	left: calc(50% + min(100vw, 630px) - 400px)
}
#bjw_anmeldung form a{
	font-size:18px!important;
	width:100%!important;
	text-align:center!important;
}
#bjw_anmeldung form button{
	width: 100%!important;
	cursor: pointer;
}
#lostpasswordform{
	background: #FFF;
	border-radius: 20px;
	padding: 30px;
}
#lostpasswordform fieldset{
	border:none;
	padding:0;
	margin:0;
}
#lostpasswordform label, #lostpasswordform legend, #lostpasswordform p:empty{
	display:none;
}
#lostpasswordform .lostpassword-submit{
	background:none;
	margin:0;
	padding:0;
}
#lostpasswordform button{
	padding:15px!important;
	width:100%;
	max-width:400px;
	box-shadow:none;
	border:none;
}
#lostpasswordform input{
	width:100%;
	max-width:400px;
	margin:20px 0 0 0;
}
#lostpasswordform p{
	padding:0!important;
	margin:0 0 20px 0!important;
	font-weight:400;
}

input, select{
	height:50px;
}
input[type="number"]{
	padding:0 0 0 10px!important;
}
select{
	padding:0 10px!important;
	border-radius:4px;
	font-size:16px!important;
}
button{
	cursor:pointer;
	/*height:60px!important;*/
	/*padding:0!important;*/
}
input[type="checkbox"],
input[type="radio"]{
	width:20px;
	height:20px;
	border-radius:50%!important;
	border:1px solid #000;
	margin:0;
	padding:0;
	appearance:none;
	display:flex;
	align-items:center;
	justify-content:center;
	cursor:pointer;
}
input[type="checkbox"]{
	border-radius:0!important;
}
input[type='checkbox']:checked:after,
input[type='radio']:checked:after {
	width:15px;
	min-width:15px;
	height:15px;
	min-height:15px;
	border-radius:50%;
	background-color: #E10020;
	content: '';
	visibility: visible;
}
input[type='checkbox']:checked:after {
	border-radius:0;
}
input[type="checkbox"]:disabled,
input[type="radio"]:disabled{
	border:1px solid #DDD!important;
	background:#EEE!important;
	cursor:not-allowed;
}
p.msg{
	color:#FFF;
	line-height:30px;
	padding:15px;
	font-size:16px;
	clear:both;
	width:100%;
	display:block;
	text-align:left;
	background-image:url("data:image/svg+xml,<svg width='40' height='40' viewBox='0 0 4 4' xmlns='http://www.w3.org/2000/svg'><g fill='rgba(0,0,0,0.06)' fill-rule='evenodd'><path d='M0 4L4 0H2L0 2M4 4V2L2 4'/></g></svg>");
	text-shadow:0 0 5px rgba(0,0,0,0.5);
	margin:0!important;
	border-radius:4px;
}
p.msg.m1{background-color:#388E3C}
p.msg.m2{background-color:#F57C00}
p.msg.m3{background-color:#E91E63}
ul, ol{
	padding:0 0 0 1.5em;
}
ol > li::marker{
	font-weight:700;
}
li + li{
	margin-top:5px;
}
.elementor-toggle .elementor-toggle-item{
	background:#FFF;
}
.elementor-toggle .elementor-toggle-item:first-of-type{
	border-radius:20px 20px 0 0!important;
}
.elementor-toggle .elementor-toggle-item:only-child{
	border-radius:20px!important;
}
.elementor-toggle .elementor-toggle-item:last-of-type{
	border-radius:0 0 20px 20px!important;
}
.elementor-toggle .elementor-tab-title{
	padding:30px!important;
}
.elementor-toggle .elementor-tab-content{
	min-height:0!important;
	padding:0 30px 30px 30px!important;
}
.elementor-toggle .elementor-tab-content *:first-child{
	margin-top:0!important
}
.elementor-toggle-title{
	color:var(--e-global-color-secondary)!important;
}
.wp-block-file{
	display:block;
	clear:both;
}
.wp-block-file a{
	display:inline-block;
	height:60px;
	line-height:60px;
	padding:0 30px;
	overflow:hidden;
	text-overflow:ellipsis;
	white-space:nowrap;
	margin:0;
	background:var(--e-global-color-primary);
	color:#FFF!important;
	font-size:16px;
	border-radius:4px;
}
.wp-block-file a:hover{
	background:var(--e-global-color-secondary);
}
#bjw_login_btn::after{
	content:'';
	left:50%;
	bottom:-30px;
	display:block;
	position:absolute;
	transition:.3s;
	transition-timing-function: cubic-bezier(.58,.3,.005,1);
	opacity:0;
	width:0;
	z-index:2;
	background:#FFF;
	height:5px;
}
#bjw_login_btn:hover::after{
	opacity:1;
	width:calc(100% - 30px);
	left:0;
}
.elementor-widget-image img{
	border-radius:20px!important;
}
.elementor-select-wrapper .select-caret-down-wrapper svg{
	height:20px;
}
.elementor-326 .elementor-element.elementor-element-904bd1a > .elementor-widget-container{
	margin:0!important;
}
#bjw_anmeldung .elementor-heading-title
{
	margin:0!important;
}
.elementor-widget-theme-post-featured-image img{
	width:auto;
}
@media only screen and (max-width: 440px) {
	.dialog-widget-content{
		left: 15px!important;
		width: calc(100% - 15px)!important;
	}
	.elementor-widget-container h1, .elementor-widget-container h2, .elementor-widget-container h3{
		width:100%;
		text-align:center;
	}
	.elementor-widget-container .px-events h2{
		text-align:left;
	}
	.schwarz{
		padding:30px!important;
	}
	.rot{
		padding:30px!important;
	}
}
@media only screen and (max-width:768px) {
	.elementor-widget-container h1{
		font-size:24px!important;
		line-height:28px!important;
	}
	.elementor-widget-container h2, .elementor-widget-container h3{
		font-size:20px!important;
		line-height:24px!important;
	}
}
@media only screen and (max-width:475px) {
	.elementor-widget-container h1{
		font-size:20px!important;
		line-height:24px!important;
	}
	.elementor-widget-container h2, .elementor-widget-container h3{
		font-size:18px!important;
		line-height:22px!important;
	}
	h1,h2,h3,h4,h5,h5,p,li,a{
		word-break:break-word;
	}
}
