/*
Theme Name: 	Baxmann
Theme URI: 		https://www.pictibe.de
Author: 		pictibe
Author URI: 	https://www.pictibe.de
Description:	Template Framework 
Template:		betheme
Version: 		1.6.1.1
*/

/* Theme customization starts here
-------------------------------------------------------------- */

/* HEADER */
#Header_wrapper #Action_bar .column { font-size: 90%; }

#Top_bar.is-sticky { opacity: 1 !important; }
#Top_bar .menu li ul li { width: 300px; }
#Top_bar .menu > li ul li a { font-size: 90%; }
#Top_bar .menu li ul li a span { line-height: 130%; }
body #Top_bar .menu > li > ul.mfn-megamenu { padding: 10px 0 20px 0 !important; }
body #Top_bar.is_sticky .menu > li > ul.mfn-megamenu { padding: 20px 0 !important; }
body #Top_bar .menu > li > ul.mfn-megamenu > li a { padding: 6px 15px 4px 15px !important; }


/* MENU EXTRAS */
.menu-label {
    position: absolute !important;
    bottom: 95%;
    white-space: nowrap;
    z-index: 1;
    display: inline-block;
    margin-left: -5px;
    padding: 2px 4px;
    text-transform: uppercase;
    vertical-align: middle;
    -webkit-transition: opacity .3s ease,color .25s ease,background-color .25s ease;
    transition: opacity .3s ease,color .25s ease,background-color .25s ease;
    background: #6d1f7c;
}
span.menu-label {
    color: #fff;
    line-height: 12px !important;
    letter-spacing: .3px;
    font-size: 9px;
    font-weight: 600;
    padding: 4px !important;
}
.menu-label::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 10px;
    width: 0;
    height: 0;
    border-style: solid;
    border-color: #005da7;
    border-width: 4px 7px 0 0;
    border-top-color: transparent;
    border-left-color: transparent !important;
    border-right-color: transparent !important;
    border-bottom-color: transparent !important;
}


/* SUBHEADER */
.subheader-both-left #Subheader .breadcrumbs { margin-top: 0; }
#Subheader ul.breadcrumbs li { font-size: 80%; }


/* SCHRIFTEN */
.largetext { font-size: 140%; line-height: 130%; }

.whitecolor, .whitecolor h1, .whitecolor h2, .whitecolor h3, .whitecolor h4, .whitecolor p, .whitecolor a, .whitecolor a.button span, .whitecolor table th, .whitecolor li, .whitecolor form.wpcf7-form .wpcf7-submit { color: white; }
.whitecolor a span.button, .whitecolor button, .whitecolor button.bitrixbutton, #Content .vc_row-has-fill button.bitrixbutton { background: white !important; color: #327db5 !important; font-weight: 600; }
.whitecolor a.button:hover span, .whitecolor a:hover span.button, .whitecolor .wpcf7-submit, .whitecolor button:hover, .whitecolor button.bitrixbutton:hover, #Content .vc_row-has-fill button.bitrixbutton:hover { background: #327db5 !important; color: white !important; }
.whitecolor hr { background-color: white; color: white; }
.whitecolor a { text-decoration: underline; }

.textbottom p, .textbottom li { font-size: 85%; line-height: 140%; }
.textbottom h1, .textbottom h2, .textbottom h3, .textbottom h4, .textbottom h5 { line-height: 120%; font-weight: 500; margin-bottom: 10px; }
.textbottom h1 { font-size: 110%; color: #006fbe; }
.textbottom h2 { font-size: 90%; text-transform: none; }
.textbottom h3 { font-size: 90%; text-transform: none; }
.textbottom h4 { font-size: 90%; text-transform: none; }
.textbottom h5 { font-size: 90%; text-transform: none; }


/* CONTENT */
.wpb_single_image .vc_single_image-wrapper, .wpb_gmaps_widget, .wpb_map_wraper, .wpb_video_widget .wpb_video_wrapper, .wpb_video_widget { margin-bottom: 0 !important; }

body .wpb_gmaps_widget .wpb_wrapper { padding: 0; background: none; }

.wpcf7-form .column { line-height: 100%; }
.wpcf7-submit { font-size: 80%; }

.vc_tta-panel-title { font-size: 100% !important; font-weight: 600; }

#Content table th, #Content table td { text-align: left; }

#Content small { font-size: 85%; }

#Content img.alignleft { margin-top: 0; }


body .wpb_text_column blockquote { font-size: 140%; line-height: 120%; margin: 0 0 35px 0; }
body .wpb_text_column blockquote::after { display: block; }


.widget-area::before { background: none; }
.aside_right .widget-area { border: 0; }

.socialbuttons a { display: inline-block; padding: 8px 15px; margin-right: 5px; color: white !important; border: 0 !important; font-weight: 400; }
.socialbuttons a:hover { text-decoration: none !important; border: 0 !important; font-weight: 600; }
.socialbuttons a.fb { background: #3b5999; }
.socialbuttons a.insta { background: #4c68d7; }
.socialbuttons a.youtube { background: #cd201f; }


/* CONTACT-FORM */
input[type="date"], input[type="email"], input[type="number"], input[type="password"], input[type="search"], input[type="tel"], input[type="text"], input[type="url"], select, textarea { font-size: 100%; }



/* BUTTON */
body #Content span.button, #Content button.bitrixbutton, body #Footer #custom_html-2 span.button { transition: all 0.4s ease 0s; display: inline-block; padding: 14px 20px !important; margin: 0 8px 15px 0; min-width: 130px; text-align: center; font-size: 100%; font-weight: 400; line-height: 140%; color: white !important; text-decoration: none; -webkit-hyphens: none; -moz-hyphens: none; -ms-hyphens: none; -o-hyphens: none; hyphens: none; border-radius: 5px; background: #005da7 !important; border: none !important; }
body #Content span.button:hover, #Content button.bitrixbutton:hover, body #Footer #custom_html-2 span.button:hover { background: #8BB65C !important; border: none !important; }


@keyframes jump {
  0%   {transform: translate3d(0,0,0) scale3d(1,1,1);}
  40%  {transform: translate3d(0,30%,0) scale3d(.9,1.1,1);}
  100% {transform: translate3d(0,100%,0) scale3d(1.1,.9,1);}
}


span.button.action { align-self: flex-end; transform-origin: 10% 10%; animation: jump 2s linear alternate infinite; animation-delay: 3s; }



/* FIXED ELEMENTE */
img.focus-fixed { top: 10%; }
img.focus-fixed { position: fixed; top: 20vh; right: 0; z-index: 100; }


/* CUSTOM RELATED POST */
.yuzo_related_post .yuzo_wraps > div { width: 30% !important; height: auto !important; margin: 0 1% 0 1%; background: white; }
.yuzo_related_post h4 { font-weight: bold; }
.yuzo_related_post .yuzo__text--title { padding: 0 15px; font-size: 120% !important; margin-bottom: 10px; display: block; }
.yuzo_related_post .yuzo_text { padding: 0 15px; font-size: 90% !important; line-height: 135%; color: #626262; }
body .yuzo_related_post .relatedthumb .yuzo-img-wrap { background: none !important; }
body .yuzo_related_post .relatedthumb .yuzo-img { width: 100% !important; }
body .yuzo_related_post .relatedthumb:hover { background: #ffffff !important; }



/* PAGE-LIST */
.page-list > div.page-list-ext-item { float: left; clear: none !important; width: 31% !important; height: auto !important; min-height: 445px; margin: 0 1% 25px 1%; background: white; border: 1px solid #cfcfcf; -webkit-transition: all .3s; -moz-transition: all .3s; transition: all .3s; padding-bottom: 20px; }
.page-list > div.page-list-ext-item:hover { background: white; border-color: #348841; cursor: pointer; border-radius: 10px; -moz-border-radius: 10px; overflow: hidden; }
.page-list > div.page-list-ext-item:hover .page-list-ext-image img { opacity: 0.9; }
.page-list > div .page-list-ext-image { float: none; display: block; margin: 0 0 20px 0; max-height: 230px; overflow: hidden; }
.page-list > div .page-list-ext-image img { width: 100%; }
.page-list > div h3 { clear: both; font-size: 120%; line-height: 130%; font-weight: bold; padding: 0 5%; margin-bottom: 5px; }
.page-list > div .page-list-ext-item-content { font-size: 85%; line-height: 130%; padding: 0 3% 0 5%; }
.page-list { clear: both; }


/* FORMULARE */
.wpcf7-form span.wpcf7-list-item { margin: 0; }
.wpcf7-form input.wpcf7-submit { margin-left: 10px; }
.wpcf7-form .wpcf7-acceptance span { font-weight: normal; font-size: 90%; line-height: 130%; }


/* VERANSTALTUNGEN */
ul.ecs-event-list { margin-left: 0; }
ul.ecs-event-list li { list-style: none; }
.upcominglist ul.ecs-event-list li { clear: both; border: 1px solid #ccc; padding: 15px; min-height: 150px; font-size: 90%; }
.upcominglist ul.ecs-event-list li img { float: left; margin-right: 35px; }
.upcominglist ul.ecs-event-list li h4 { font-size: 150%; line-height: 130%; margin-bottom: 5px; }
.upcominglist ul.ecs-event-list li .ecs-excerpt { font-size: 90%; }
.upcominglist ul.ecs-event-list li span.time { display: block; margin-top: 10px; }
.upcominglist ul.ecs-event-list li span.venue em { display: none; }
.upcominglist ul.ecs-event-list li:hover { background: #f2f2f2; }

.outdatedlist ul.ecs-event-list li { clear: both; border: 1px solid #ccc; list-style: none; padding: 5px 10px; font-size: 90%; }
.outdatedlist ul.ecs-event-list li h4 { font-size: 120%; line-height: 130%; margin-bottom: 5px; }
.outdatedlist ul.ecs-event-list li span.time { display: inline-block; margin: 5px 20px 0 0; }
.outdatedlist ul.ecs-event-list li span.venue em { display: none; }
.outdatedlist ul.ecs-event-list li:hover { background: #f2f2f2; }


/* Newsletter */
form.newsletteranmeldung .leftcolumn { display: none; }
form.newsletteranmeldung input { width: 100%; padding: 8px 12px; font-size: 80%; margin-bottom: 10px; border-radius: 5px; -moz-border-radius: 5px; }
form.newsletteranmeldung button { padding: 10px 25px; color: white !important; background: #005da7 !important; border-radius: 5px; -moz-border-radius: 5px; }
form.newsletteranmeldung .legaltext { font-size: 70%; line-height: 120%; margin-top: -10px; }
#Footer .footer_action form.newsletteranmeldung button { font-size: 90%; color: #005da7 !important; background: white !important; border-radius: 5px; -moz-border-radius: 5px; }
#Footer .footer_action form.newsletteranmeldung { width: 80%; margin: 0 auto; }




/* COOKIE */
#cookie-notice { z-index: 100000000000; }
#cookie-notice .cookie-notice-container { width: 100%; padding: 40px 5%; font-size: 130%; font-weight: 400; line-height: 140%; }
#cookie-notice .cookie-notice-container #cn-notice-text a { color: white !important; text-decoration: underline; }
#cookie-notice .cookie-notice-container .button { margin: 20px auto 0 auto; display: block; max-width: 300px; border-radius: 25px; transition: all 0.1s ease-in-out 0.1s, visibility 0.2s ease-in-out; text-transform: none; }
#cookie-notice .cookie-notice-container .button#cn-accept-cookie { font-size: 120%; padding: 15px 35px; }
#cookie-notice .cookie-notice-container .button#cn-refuse-cookie, #cookie-notice .cookie-notice-container #cn-refuse-cookie { background: none !important; padding: 10px; margin: 15px auto 0 auto; font-size: 80%; color: white !important; font-weight: 400; border-radius: 0; border: 0; }
#cookie-notice .cookie-notice-container .button#cn-refuse-cookie:hover { text-decoration: underline; }
#cn-close-notice, .cn-close-icon { display: none !important; }



/* FOOTER */
#Footer .footer_copy { padding-bottom: 40px; }
#Footer .footer_copy .copyright { font-size: 80%; }


@media screen and (max-width: 1400px) {
	
	img.focus-fixed { top: 30vh; width: 100px; }
	
}


@media screen and (max-width: 1240px) {
	
	body #Top_bar .menu > li > a span:not(.description) { padding: 0 15px; }
	
	img.focus-fixed { top: 30vh; width: 100px; }
	
}


@media screen and (max-width: 960px) {

	img.focus-fixed, #ProvenExpert_widget_container { display: none !important; }
	
	span.button, #Content button.bitrixbutton { display: block; }
	
}


@media screen and (max-width: 768px) {
	
	.yuzo_related_post .yuzo_wraps > div, .page-list > div.page-list-ext-item { width: 98% !important; float: none !important; height: auto !important; margin: 20px auto; }
	
	.page-list > div .page-list-ext-item-content { font-size: 95%; line-height: 130%; }
	.page-list > div.page-list-ext-item { min-height: 250px; }

	
}

/* Anfrage Formular */
.ortho-form .nf-breadcrumbs,
.ortho-form .nf-before-form-content,
.ortho-form .nf-error.field-wrap .nf-field-element:after,
.ortho-form .nf-pass.field-wrap .nf-field-element:after {
    display: none !important;
}

.ortho-form .nf-field-container {
    margin-bottom: 1rem;
}

.ortho-form .submit-wrap {
    margin-top: 1rem;
}

.ortho-form .nf-error-wrap {
    text-align: left !important;
}

.ortho-form .nf-error-wrap .nf-error-msg {
    color: #ffe0e0 !important;
    display: inline-block;
    background-color: #e74c3c;
    color: #fff !important;
    padding: .25rem .5rem;
    border-radius: 5px;
    line-height: 1;
}

.ortho-form .nf-form-content {
    background-color: #005da7;
    padding: 1.5rem 1rem .5rem 1rem;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);
    position: relative;
    color: #fff;
}

.ortho-form .nf-progress-container {
    position: absolute;
    background-color: #4aadef;
    margin: 0;
    height: 10px;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
}

.ortho-form .nf-progress-container .nf-progress {
    height: 10px;
    background-color: #f18207;
    min-width: 50px;
}

.ortho-form .nf-form-content label {
    text-align: left !important;
    color: #fff !important;
}

.ortho-form .nf-form-content .nf-field-label,
.ortho-form .nf-form-content input,
.ortho-form .nf-form-content textarea {
    text-align: left !important;
}

.ortho-form .nf-form-content textarea {
    min-width: 100%;
    max-width: 100%;
    max-height: 100px;
    min-height: 50px;
}

.ortho-form .nf-form-content .nf-field-label label {
    font-size: 1.3rem;
    line-height: 1.2;
    color: #fff !important;
    font-weight: 300;
    margin-bottom: .5rem !important;
    display: inline-block;
}

.ortho-form .nf-form-content .smalllabel .nf-field-label label {
    font-size: 1rem;
    margin-bottom: 0 !important;
}

.ortho-form .nf-form-content .list-checkbox-wrap ul,
.ortho-form .nf-form-content .list-radio-wrap ul {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.ortho-form .nf-form-content .list-checkbox-wrap ul li label,
.ortho-form .nf-form-content .list-radio-wrap ul li label {
    display: inline-block;
    border-radius: 5px;
    font-size: .8rem;
    line-height: 1.2;
    min-height: 30px;
    border: 1px solid rgba(255, 255, 255, .75);
    padding: .35rem .5rem .35rem 30px !important;
    background-color: rgba(255, 255, 255, .1);
    cursor: pointer;
    margin: 0 !important;
}

.ortho-form .nf-form-content .list-checkbox-wrap ul li label:hover,
.ortho-form .nf-form-content .list-radio-wrap ul li label:hover {
    background-color: #3498db;
}

.ortho-form .nf-form-content .list-checkbox-wrap ul li label.nf-checked-label,
.ortho-form .nf-form-content .list-radio-wrap ul li label.nf-checked-label {
    background-color: #3498db;
}

.ortho-form .nf-form-content .list-checkbox-wrap ul li label:before {
    left: 5px !important;
    top: 5px !important;
    color: #f18207;
    line-height: .8;
}

.ortho-form .nf-form-content .list-radio-wrap ul li label:before {
    left: 9px !important;
    top: 9px !important;
    background-color: #f18207;
    line-height: .8;
}

.ortho-form .nf-form-content .list-checkbox-wrap ul li label:after,
.ortho-form .nf-form-content .list-radio-wrap ul li label:after {
    left: 5px !important;
    top: 5px !important;
}

.ortho-form .nf-form-content .nf-next-previous input {
    background-color: #f18207;
    color: #fff !important;
    border-radius: 5px;
}

.ortho-form .nf-form-content .nf-next-previous input.nf-previous {
    background-color: #888;
}

.ortho-form .nf-form-content .nf-next-previous input:hover {
    background-color: #db7406;
}

.ortho-form .nf-form-content .nf-next-previous input.nf-previous:hover {
    background-color: #555;
}

.ortho-form .nf-form-content .file_upload-wrap .nf-field-element {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.ortho-form .nf-form-content .file_upload-wrap button {
    height: 50px;
    display: flex;
    align-items: center;
    padding: 0 1rem;
    background-color: #3498db;
    color: #fff !important;
    width: 100%;
    justify-content: center;
}

.ortho-form .nf-form-content .file_upload-wrap button.nf-fu-button-cancel,
.ortho-form .nf-form-content .file_upload-wrap input,
.ortho-form .nf-form-content .file_upload-wrap .nf-fu-progress {
    display: none !important;
}

.ortho-form .nf-form-content .file_upload-wrap button span {
    color: #fff !important;
}

.ortho-form .nf-form-content .file_upload-wrap .files_uploaded {
    margin: .5rem 0;
}

.ortho-form .nf-form-content .file_upload-wrap .files_uploaded p {
    color: #fff !important;
    text-align: left !important;
}

.ortho-form .nf-form-content .file_upload-wrap .files_uploaded p .delete {
    color: #ffe0e0 !important;
    display: inline-block;
    background-color: #e74c3c;
    color: #fff !important;
    padding: .25rem .5rem;
    border-radius: 5px;
    line-height: 1;
}

.ortho-form .nf-form-content .submit-wrap input {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f18207;
    color: #fff !important;
    text-transform: uppercase;
    font-weight: 700;
}

.ortho-form .nf-form-content .submit-wrap input:hover {
    background-color: #db7406;
}

.ortho-form .nf-response-msg p {
    display: inline-block;
    padding: .5rem 1rem;
    background-color: #27ae60;
    border-radius: 5px;
    color: #fff !important;
    line-height: 1.3;
}

.ortho-form .nf-after-form-content {
    padding: 1rem 0;
}

@media only screen and (min-width: 600px) {
    .ortho-form .nf-form-content {
        padding: 3rem 2rem 1rem 2rem;
    }

    .ortho-form .nf-form-content .nf-field-label label {
        font-size: 1.6rem;
    }

    .ortho-form .nf-form-content .list-checkbox-wrap ul li label,
    .ortho-form .nf-form-content .list-radio-wrap ul li label {
        font-size: .9rem;
    }

    .ortho-form .nf-form-content .nf-cell {
        padding: 0 .75rem !important;
    }
}
