/*

Theme Name: fairdrive
Theme URI: https://www.8create.digital
Version: 1.0
Description: fairdrive theme
Author: 8create
Author URI: https://www.8create.digital
Template: Divi

*/

/* ----- General Styles ----- */
/* Fonts */
h1, .ll-h1 {
	color: #055FFF;
	font-family: neuzeit-grotesk,sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 50px;
	line-height: 55px;
}
h1 a {
	border-bottom: 2px solid #055FFF;
}
h2 {
	color: #055FFF !important;
	font-family: neuzeit-grotesk,sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 39px;
	line-height: 46px;
}
h3 {
	color: #2a2a2a !important;
	font-family: neuzeit-grotesk,sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 22px;
	line-height: 30px;
}
h3.gsection_title {
	font-weight: 700;
	margin-top: 36px;
}

p, p strong, strong {
	font-family: neuzeit-grotesk,sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 18px;
	line-height: 26px;
	color: #2A2A2A !important;
}
ul li, ol li {
	font-family: neuzeit-grotesk,sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 18px;
	line-height: 26px;
	color: #2A2A2A !important;
}
ul, ol {
	margin-left:20px;
}
p strong, strong {
	font-weight: 700;
}
.color-dark {
	color: #2A2A2A !important;
}
.text-white h1 {
	color: #ffffff;
}
.circle-number p {
	font-weight: 700;
	line-height: 34px;
}
.display-none {
	display: none;
}

.et_mobile_menu {
	border-color: #055FFF !important;
}
.et_mobile_menu li a {
  color: #212121;
  padding: 5px;
  font-weight: 700;
  background: none !important;
}
.et_mobile_menu li ul li a {
  font-weight: 300;
}
.et_mobile_menu li .sub-menu {
	margin-left: 0 !important;
	padding-left: 0 !important;
}

.snowstar {
	z-index:10000000;
	font-size:50px;
	/*display:none;*/
}


/* Header */
header .et_pb_section {
	background: transparent !important;
}
/* Sticky */
.et-l--header .et_pb_column_0_tb_header {
	transition: ease 0.3s all;
}
.has_et_pb_sticky .et_pb_column_0_tb_header {
	padding-top: 20px;
	padding-bottom: 20px;
}


/* ms_countdown */

.countdown {
	position: fixed;
	bottom: 0;
	right: 50px;
	width: 400px;
	background: #fff;
	z-index: 99999;
	text-align: left;
	padding: 50px 30px 20px 30px;
	-webkit-box-shadow: 0px 0px 15px -2px rgba(0,0,0,0.2);
	-moz-box-shadow: 0px 0px 15px -2px rgba(0,0,0,0.2);
	box-shadow: 0px 0px 15px -2px rgba(0,0,0,0.2);
}
.countdown .toggle-mobile {
	display:none;
}
.countdown .close {
	position: absolute;
	top: 10px;
	right: 10px;
	font-size: 30px;
	cursor: pointer;
}

.countdown .close:before {
	font-family: ETmodules;
	content: '\4d';
}

.countdown p {
	font-size: 16px;
	line-height: 1.2em;
}


/* Formulare */
.gform_body input, .gform_body select {
	  height: 42px;
	  border-radius: 3px;
	  border: 1px solid rgba(0,0,0,0.1);
	  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
	  font-family: neuzeit-grotesk,sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 18px !important;
	line-height: 26px;
	color: #2A2A2A !important;
}
.gform_body textarea {
	  border-radius: 3px;
	  border: 1px solid rgba(0,0,0,0.1);
	  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
	  resize: none;
	  font-family: neuzeit-grotesk,sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 18px !important;
	line-height: 26px;
	color: #2A2A2A !important;
}
.gform_body label.gfield_label, .gchoice label {
	font-family: neuzeit-grotesk,sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 18px !important;
	line-height: 26px;
	color: #055FFF !important;
}
.gchoice label {
	color: #2a2a2a !important;
}
.gform_confirmation_message {
  background: green;
  padding: 20px;
  color: #fff;
  font-weight: bold;
}

.gchoice input {
  width: 25px !important;
}
.gform_wrapper.gravity-theme .ginput_container_date input {
	width: 90%;
}
.ginput_container_fileupload input {
  padding: 20px;
  height: auto;
}
.gform_wrapper.gravity-theme .gfield_checkbox label {
	display: contents;
}

/* Navigation */
.et_pb_menu .et_pb_menu__wrap {
	justify-content: flex-start;
}
.et_pb_menu .et_pb_menu__wrap nav ul li a {
	font-family: neuzeit-grotesk,sans-serif;
	font-weight: 400;
	font-style: normal;
	color: #055FFF;
	font-size: 17px;
}
.woocommerce-product-gallery__trigger {
	display:none !important;
}
.et_pb_menu.nav-white .et_pb_menu__wrap nav ul li a {
	color: #ffffff;
}

.et_pb_menu.nav-white .et_pb_menu__wrap nav ul li ul li a {
	color: #055FFF;
}
.et-menu .menu-item-has-children > a:first-child {
	padding-right: 0;
}
.et-menu .menu-item-has-children > a:first-child::after {
	content: none;
}

/* Dropdown */
.nav li ul {
	border-top: none;
	border-radius: 15px;
	box-shadow: 0 0px 15px rgba(0,0,0,0.1);
	-moz-box-shadow: 0 0px 15px rgba(0,0,0,0.1);
	-webkit-box-shadow: 0 0px 15px rgba(0,0,0,0.1);
}
.nav li ul:after {
	bottom: 100%;
	left: 50%;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(255, 255, 255, 0);
	border-bottom-color: #ffffff;
	border-width: 8px;
	margin-left: -8px;
	box-shadow: 2px 0px 15px rgba(0,0,0,0.1);
	-moz-box-shadow: 2px 0px 15px rgba(0,0,0,0.1);
	-webkit-box-shadow: 2px 0px 15px rgba(0,0,0,0.1);
}
.et-menu-nav ul li ul.sub-menu {
	display: block !important;
}
.et_pb_menu .et_pb_menu__menu > nav > ul > li > ul {
    left: -60%;
    top: calc(100% + 0px);
}
.et_pb_menu--without-logo .et_pb_menu__menu > nav > ul > li > a {
	padding-bottom: 20px;
}

/* Buttons */
.font-neuzeit-bold {
	font-family: neuzeit-grotesk,sans-serif;
	font-weight: 700;
	font-style: normal;
}

/* Content Tabs */
.et_pb_text.tabs.activ, .et_pb_text.tabs.activ:hover {
	background: #055FFF !important;
}
.et_pb_text.tabs {
	transition: ease 0.3s all;
}
.et_pb_text.tabs:hover {
	background: rgba(0,0,0,0.20) !important;
	cursor: pointer;
}
.et_pb_text.tabs.activ h3 {
	color: #ffffff !important;
}

/* Gutscheine */
.product-template-default .woocommerce-tabs, .product-template-default .product_meta {
	display: none;
}

.footer-links a {
	color: #2a2a2a;
	text-decoration: none;
	border-bottom: 1px solid #2a2a2a;
	padding-bottom: 3px;
}
h2.woocommerce-loop-product__title {
	font-size: 35px !important;
	line-height: 41px !important;;
}
.woocommerce ul.products li.product .price {
	font-family: neuzeit-grotesk,sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 18px;
	line-height: 26px;
	color: #2A2A2A !important;
}
.gc_span input, .gc_span textarea {
  	width: 330px;
  	border: 1px solid #2a2a2a;
  	border-radius: 3px;
  	padding: 10px;
  	color: #2a2a2a;
  	font-family: neuzeit-grotesk,sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 18px;
}
.gc_span textarea{
	resize: none;
} 
.woocommerce ul.products li.product a img {
	border-radius: 9px !important;
}
.woocommerce ul.products li.product {
 	border: 1px solid rgba(0,0,0,0.1);
	padding: 10px !important;
	box-sizing: border-box;
 }
 .related.products {
 	display: none;
 } 
 .coupon {
 	display: none;
 }
 .giftcard.coupon {
 	display: block;
 }

 /* Content */
 .button-bar a {
  	background: #f7f7f7;
  	display: inline-block;
  	padding: 10px 25px;
  	border-radius: 9999px;
  	color: #2a2a2a;
}
.button-bar a.active {
  	background: #055FFF;
  	color: #ffffff;
}

.content-blue h3, .content-blue p, .content-blue ul li {
	color: #ffffff !important;
}


li.show-mobile {
	display: none !important;
}

/* splash */

.department_wrapper {
	width: 50% !important;
	transition: width 0.5s;
}

.department_wrapper.hover {
	width: 45% !important;
}

.department_wrapper.hover.active {
	width: 55% !important;
}

.department_boxes {
	margin-left: 0;
	transition: margin-left 0.5s;
}

.department_boxes .et_pb_column {
	width: 50% !important;
}

.department h3 {
	font-weight: bold;
}

.department p:after {
	content: '$';
	font-family: 'ETmodules';
	position: absolute;
	margin-left: 5px;
}

.department#linz:after {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 30px 0 0;
	border-color: #C58E00 transparent transparent transparent;
	position: absolute;
	bottom: -30px;
	right: 0;
}

.department#leonding:after {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 30px 30px 0;
	border-color: transparent #C58E00 transparent transparent;
	position: absolute;
	bottom: -30px;
	left: 0;
}

@media (max-width: 767px) {
	.department h3,
	.department p {
		font-size: 16px;
		line-height: 18px;
	}
}

/* voucher_list */

.voucher_list {
	display: grid;
	grid-template-columns: 23% 23% 23% 23%;
	justify-content: space-between;
	gap: 20px;
}

.voucher_list .voucher {
	padding: 20px;
	border: 1px solid #000;
}

@media (max-width: 980px) {
	.voucher_list {
		grid-template-columns: 48% 48%;
	}
}

@media (max-width: 640px) {
	.voucher_list {
		grid-template-columns: 100%;
	}
}

/* gift cards */

.woocommerce_gc_giftcard_form input,
.woocommerce_gc_giftcard_form textarea {
	padding: 15px;
	width: 100%;
	color: #000;
	border: 1px solid #000;
}

.woocommerce_gc_giftcard_form label abbr {
	text-decoration: none;
}

/* Mobile */


@media (max-width: 980px) {
	.et_pb_row.dont-break.et_pb_row_5col .et_pb_column {
		width: 17% !important;
	}
	.dont-break.et_pb_row_5col .et_pb_column.et_pb_column_4_tb_footer {
		margin-top: 45px;
	}
	.dont-break.et_pb_row_5col .et_pb_column img {
		width: 85% !important;
	}
	.et_pb_row.dont-break .et_pb_column {
		width: 48% !important;
	}
	li.show-mobile {
		display: block !important;
	}
	.mobile-header .et_pb_row.dont-break .et_pb_column {
		width: 40% !important;
	}
	.mobile-header .et_pb_row.dont-break .et_pb_column.et_pb_column_4_tb_header {
		margin-top: 60px !important;
		width: 38% !important;
	}
	.mobile-header .et_pb_row.dont-break .et_pb_column.et_pb_column_5_tb_header {
		margin-top: 22px !important;
		width: 15% !important;
	}
	.et_mobile_menu {
    right: 0 !important;
    width: 300px !important;
    left: auto !important;
  }
	.countdown {	
		bottom:50px;
		right: -400px;
	}
	.countdown .toggle-mobile {
		display: block;
	}
	.toggle-mobile {
		background: red;
		width: 50px;
		height: 100%;
		position: absolute;
		top: 0;
		left: -50px;
		cursor:pointer;
	}
	.toggle-mobile span {
		transform: rotate(-90deg);
		display:block;
		color:#ffffff;
		font-weight:bold;
		width: 140px;
		height: 115px;
		top: 8px !important;
		position: relative;
	}
}
@media (max-width: 600px) {
	h1, .ll-h1 {
		font-size: 31px;
		line-height: 1.3em;
	}
	.et_pb_row.dont-break.et_pb_row_5col .et_pb_column, .et_pb_row.dont-break .et_pb_column {
		width: 100% !important;
	}
	.dont-break.et_pb_row_5col .et_pb_column.et_pb_column_4_tb_footer {
		margin-top: 0;
	}
	.dont-break.et_pb_row_5col .et_pb_column img {
		width: 85% !important;
	}
	.mobile-header .et_pb_row.dont-break .et_pb_column {
		width: 40% !important;
	}
	.mobile-header .et_pb_row.dont-break .et_pb_column.et_pb_column_4_tb_header {
		width: 38% !important;
	}
	.mobile-header .et_pb_row.dont-break .et_pb_column.et_pb_column_5_tb_header {
		width: 15% !important;
	}
	
	.et_mobile_menu {
    right: 0 !important;
    width: 300px !important;
    left: auto !important;
  }
	.custom_form_registration .gfield_html.switcher {
		 display: flex !important;
        flex-direction: column;
	}
	.custom_form_registration .gfield_html.switcher a {
		 width:100%;
		margin-bottom:30px;
	}
}

/* Termine Accordeon */
.acc-content {
	display:none;
}
.type .course {
	cursor: pointer;
}
.course h2 {
    display: flex;
    justify-content: space-between;
    width: 30%;
}
@media (max-width: 700px) {
	.course h2 {
		width: 100%;
	}
}

/*
registration
*/

.custom_form_registration .gf_page_steps {
	border-bottom: 0 !important;
	display: flex;
	justify-content: space-between;
	align-content: center;
	margin-bottom: 40px !important;
}

.custom_form_registration .gf_step {
	margin: 0 !important;
	position: relative;
	flex-grow: 1;
}

.custom_form_registration .gf_step:not(:last-child):after {
	content: '';
	width: 60px;
	height: 2px;
	position: absolute;
	width: 100%;
	background: #ccc;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	z-index: -1;
}

.custom_form_registration .gf_step_number {
	background: #fff !important;
	border: 2px solid #ccc !important;
	color: #ccc !important;
	font-weight: bold !important;
	font-size: 16px !important;
}

.custom_form_registration .gf_step_active .gf_step_number {
	border: 2px solid #033aba !important;
	color: #033aba !important;
}

.custom_form_registration .gf_step_completed .gf_step_number:before {
	width: 35px !important;
	height: 35px !important;
	background: #033aba !important;
	border: 2px solid #033aba !important;
}

.custom_form_registration .gf_step_label {
	display: none !important;
}

.custom_form_registration .gfield_html.switcher {
	display: grid;
	grid-template-columns: 23% 23% 23% 23%;
	gap: 2%;
}

.custom_form_registration .gfield_html.switcher .entry {
	background-color: #033aba;
	color: #fff;
	font-size: 18px;
	text-align: center;
	padding: 80px 10px 20px;
	border-radius: 12px;
	background-size: cover;
	background-position: center;
	position: relative;
	box-shadow: inset 0 0 0 2000px rgba(0, 0, 0, 0.2);
	transition: box-shadow .3s;
	font-weight: 700;
}

.custom_form_registration .gfield_html.switcher .entry:hover {
	box-shadow: none;
}

.custom_form_registration .gfield_html.switcher.type .entry {
	display: none;
}

.custom_form_registration .gfield_html.switcher.type .entry.visible {
	display: block;
}

.custom_form_registration .gfield_html.switcher .entry#Linz {
	background-image: url('/wp-content/uploads/2024/06/fairdrive_linz_department.png');
}

.custom_form_registration .gfield_html.switcher .entry#Leonding {
	background-image: url('/wp-content/uploads/2024/06/fairdrive_leonding_department.png');
}

.custom_form_registration input[type=button],
.custom_form_registration input[type=submit] {
	background-color: #033aba !important;
	border: none;
	padding: 8px 20px;
	border-radius: 999px;
	color: #fff !important;
	font-weight: 400;
	font-style: normal;
	font-size: 18px !important;
	line-height: 26px;
	cursor: pointer;
	margin: 5px !important;
}

.custom_form_registration .gform_page.location_page input.gform_next_button,
.custom_form_registration .gform_page.type_page input.gform_next_button {
	width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

/*
course_dates
*/

.course_dates .type h1 { 
	font-size:29px !important;
	cursor:pointer;
	margin-bottom:0;
	padding-bottom:0;
	display:flex;
	justify-content: space-between;
}
.course_dates .type h1:after { 
	content:"+";
	
}
.course_dates .type {
	background: #eee;
	margin-bottom:8px;
	padding:8px 15px;
	transition:ease 0.3s all; 
}
.course_dates .type:hover {
	background: #ddd;
}
.course_dates .type .course {
	display:none;
	margin-top:30px;
	
}
.course_dates .type .course h2 {
	font-size:22px !important;
	color:#212121 !important;
	line-height:120% !important;
	margin-bottom:0 !important;
	padding-bottom: 0 !important;
}
.course_dates .type .course h3 {
	font-size:20px !important;
	color:#212121 !important;
	line-height:120% !important;
	margin-bottom:4px !important;
	padding-bottom: 0 !important;
	margin-top:20px !important;
}
.course_dates .type .course .module p {
	margin-bottom:0 !important;
	padding-bottom:0 !important;
}
.course_dates .type .course .module {
	margin-top:10px;
	padding-bottom:10px
}
.course_dates .type .course .module p:last-child {
	border-right:0
}

/*
insurance
*/

.insurance-radio {
	padding: 20px 10px !important;
	background-color: #F2F2F2 !important;
	border-radius: 10px;
}
.insurance-radio legend {
	margin-bottom: -15px !important; /* pull content up */
	margin-top: 10px !important;
}

/*
next_courses
*/

.next_courses > div {
	margin: 20px 0;
}

.next_courses p,
.next_courses p strong {
	color: #fff !important;
}

/* found in LIVE in customizer */
.c-p-datum {
    margin-top: 20px;
    font-weight: 600;
}
.c-data {
    padding-bottom: 0px !important;
}
.c-p-modul {
    margin-top: 10px;
}