@charset "utf-8";

 .mt-30 {margin-top:30px;}
.th-alert .elementor-alert-title {
font-weight: 300!important;
font-size: 28px;
line-height: 1.2em;
padding-bottom: 15px;
margin-top:0.3em;
}
.th-alert .elementor-alert-description {
font-size: 14px!important;
}
.th-alert {
padding-bottom:25px!important;
}
.elementor-popup-modal .dialog-close-button:focus-visible {
border:none!important;
outline: 0!important;
}
#terminsuche_ergebnisse, #fms_terminsuche_error, #fms_terminsuche_requerror {
margin-top:1em;
}
.fms_buttons a.button_reserror {background-color:#b1b1b1;}
#fms_booking_art {font-weight:bold;}
.fms_buchungscal {margin-left:40px;}
.fms_form {margin-top:20px;}
.fms_datum {
float: left;
width: 100px;
margin-bottom: 2px;
height: 14px;
padding-left: 10px;
padding-top: 8px;
color: #6b6b6b;
}
.fms_datum.wochenende {color: #CB9192;}
.fms_tag.fms_tag_slots {overflow: auto;max-width: 670px;}
.fms_tag_active {background-color:#efefef;}
.fms_tag.fms_tag_slots:hover {background-color:#efefef;}
.fms_slots li {
transition: all .3s;
float: left;
margin-right: 6px;
font-size: 12px;
text-align:center;
padding-left: 5px;
padding-right: 5px;
background-color: var(--e-global-color-accent );
border: 1px dashed var(--e-global-color-accent );
list-style: none;
margin-bottom: 3px!important;
margin-top: 3px;
position:relative;
box-sizing:content-box;
padding-top:5px;
color:#fff;
}
.fms_slots li:hover {
background-color: var(--e-global-color-e038fbb);
border: 1px dashed var(--e-global-color-e038fbb);
}
.fms_slots li.slotchecked {background-color:var(--e-global-color-e038fbb);color:#fff;}
.fms_slots li.slotchecked a {color:#fff;}
.fms_slots li.slotenabled  {background-color:#597a8f!important;color:#fff!important;}
.fms_slots li.slotdisabled {background-color:#e0e0e0;color:#a0a0a0;border-color:#a0a0a0;} .fms_slots li.fms_slot_frei:hover a {
color:#fff;
cursor:pointer;
}
.fms_slots li.fms_slot_frei:hover:before {
opacity:0.7;
}
.fms_slot1, .fms_slot2, .fms_slot3, .fms_slot4, .fms_slot10 	{width:70px;}
.fms_slot6 	{width:120px;}
.fms_slot5, .fms_slot7, .fms_slot8, .fms_slot9	{width:158px;}
.fms_slots li a {
display: block;
color: #333;
text-decoration: none;
position:relative;
}
.fms_slot_belegt {
background-color: #ffffff!important;
border: 1px dashed #c3c3c3!important;
color: var(--e-global-color-text )!important;
font-weight: 800;
}
.fms_tag_form {
display:none;
background-color:#efefef;
padding:15px 40px 15px 110px;
margin-bottom:20px;
max-width: 670px;
}
.fms_tag_form fieldset {
margin-left:10%;
border:0;
}
.fms_tag_title {
text-align: center;
border-bottom: 1px solid rgba(0,0,0,0.4);
padding-bottom:5px;
margin-bottom: 5px;
}
.fms_tag_title h3 {
margin-bottom:0;
font-weight:300;
}
.fms_bookinginfo {text-align:center;margin-bottom:15px;line-height: 1.4;}
.fms_buttons {overflow:auto; margin-top:20px;}
.fms_buttons > div > a{margin-bottom:0;}
.fms_buttons > div {width:45%;float:left;text-align:center;}
.fms_buttons > div > p {font-size:0.9em;line-height:1.3em}
.fms_buchen {float:right!important;}
.fms_input.error {
background-color:rgba(185, 74, 72, 0.07)!important;
background-image: url(//www.fotomietstudio.at/wp-content/plugins/th-fms-booking/css/formerror.png);
background-position: right 4px top 4px;;
background-repeat: no-repeat;
}
.fms_buchen-th {
width: 100%;
text-align: center;
margin-top: 2em;
}
.fms_buchen-th i {
margin-left: 6px;
}
.fms_reservieren-th .elementor-button {
background-color: #d9d9d9;
color: #6f6f6f!important;
}
.fms_reservieren-th .elementor-button:hover {
background-color: #4c4c4c;
color:#ffffff!important;
}
span.form-error {
color: #b94a48;
position: relative;
bottom: 19px;
left: 8px;
display: block;
font-size: 14px;
}
input[name='agb'].error ~ .control_indicator {
background:#b94a48!important;
}
input[name='agb'].error ~ span.form-error {
position: absolute;
bottom: 5px;
left: 5px;
}
#fms_booking_form_data {max-width:700px;}
#fms_booking_form_data form .inputfield {position:relative;}
#fms_booking_form_data form input[type="text"], #fms_booking_form_data form textarea {
border: 1px solid #d0d0d0;
top: 8px;
left: 20px;
font-size: 15px;
opacity: 1;
color: #444;
width: 500px;
padding: 25px 15px 10px;
}
#fms_booking_form_data form textarea {
height:60px;
}
#fms_booking_form_data form input[type="text"]:focus, #fms_booking_form_data form textarea:focus {
background-color:rgba(230, 243, 237, 0.33)!important;;
border: 1px solid #519E70;
}
form .fms-vorname 	{float:left;max-width:190px;}
form .fms-nachname 	{float: left;max-width: 290px;margin-left: 20px;}
form .fms-plz {float:left;max-width:100px;}
form .fms-ort {float: left;max-width: 380px;margin-left: 20px;}
form .fms-telefon, form .fms-adresse {clear:both;}
#fms_booking_form_data form .inner-label {
position: absolute;
pointer-events: none;
left: 15px;
top: 10px;
font-size: 13px;
color: #999;
line-height: 1em;
}
#fms_booking_form_data form .control-checkbox{padding: 6px 0px 35px 35px;max-width: 465px;}
#fms_booking_form_data form .control-checkbox.has-error{background-color:rgba(185, 74, 72, 0.07);}
#fms_booking_form_data form .control a, #fms_booking_form_data p a {}
#fms_booking_form_data form .control_indicator {background:#cecece;}
#fms_booking_form_data form .control:hover input ~ .control_indicator {background: #b8ceb6;}
#fms_booking_form_data form .control input:checked ~ .control_indicator {background: #3ea055;}
#fms_booking_form_data .fms_buttons {margin:40px 0;}
#fms_booking_form_data .fms_buttons > div > p {
font-size: 0.95em;
line-height: 1.6em;
}
#fms_booking_form_data ul.fms_slots {
margin-bottom: 20px;
overflow: auto;
}
#fms_booking input[type=date],
#fms_booking input[type=email],
#fms_booking input[type=number],
#fms_booking input[type=password],
#fms_booking input[type=search],
#fms_booking input[type=tel],
#fms_booking input[type=text],
#fms_booking input[type=url],
#fms_booking select,
#fms_booking textarea
{
margin-bottom:20px;
max-width:100%;
} .control {
display: block;
position: relative;
padding-left: 30px;
margin-bottom: 5px;
padding-top: 6px;
cursor: pointer;
padding-right:18px;
font-weight:normal;
line-height:26px;
}
.control input {
position: absolute;
z-index: -1;
opacity: 0;
}
.control_indicator,
.control input:focus ~ .control_indicator {
position: absolute;
top: 5px;
left: 0;
height: 25px;
width: 25px;
background: #ccdbe5;
border: 0px solid #000000;
}
.control-radio .control_indicator {
border-radius: undefined%;
}
.control:hover input ~ .control_indicator {
background: #95adbd;
}
.control input:checked ~ .control_indicator {
background: #597a8f;
}
.control:hover input:not([disabled]):checked ~ .control_indicator,
.control input:checked:focus ~ .control_indicator {
background: #0e6647d;
}
.control input:disabled ~ .control_indicator {
background: #e6e6e6;
opacity: 0.6;
pointer-events: none;
}
.control_indicator:after {
box-sizing: unset;
content: '';
position: absolute;
display: none;
}
.control input:checked ~ .control_indicator:after {
display: block;
}
.control-checkbox .control_indicator:after {
left: 9px;
top: 4px;
width: 5px;
height: 11px;
border: solid #ffffff;
border-width: 0 2px 2px 0;
transform: rotate(45deg);
}
.control-radio .control_indicator:after {
eft: 7px;
top: 7px;
height: 11px;
width: 11px;
border-radius: 50%;
background: #ffffff;
}
.control-radio input:disabled ~ .control_indicator:after {
background: #7b7b7b;
}
.control-checkbox input:disabled ~ .control_indicator:after {
border-color: #7b7b7b;
}
.control-group span.buttondis {color: #C9C9C9;}
.control-group span.buttonchecked {color: #000;font-weight:bold;}
.control-radio .control_indicator {
border-radius: 50%;
}
#fms_booking button {font-size:14px;}
#fms_booking button.lastbutton {font-size:21px;}
.alert_wrapper a {color:#ff0!important;text-decoration:none;display:inline-block;}
.alert_wrapper a:hover {color:#ffa!important;text-decoration:none;}
p.formInfo {max-width:500px;}
@media only screen and (max-width: 767px) {
.fms_buttons>div {width: 40%;}
.fms_tag_form {padding: 15px 20px 5px 20px;}
.fms_buchungscal {margin-left: 0;}
ul.fms_slots {clear:both;}
}
@media only screen and (max-width: 568px) {
form .fms-vorname, form .fms-nachname, form .fms-plz, form .fms-ort
{float:none;max-width:inherit;margin-left:0px;}
}
@media only screen and (max-width: 499px) {
.fms_buttons>div {width: 100%;float: none!important;}
}
.page-id-236 .main_buttons {display:none!important;}
.fms_booking_confirmation {max-width:480px;}
.fms_booking_confirmation button {font-size:15px;vertical-align:top;}
.fms_booking_confirmation ul {list-style:none;}
.fms_booking_confirmation li {margin-bottom:0!important;}
.aufbauinfo {
background-color: #597a8f;
padding: 6px 12px;
color: #fff;
width: 476px;
margin-bottom: 20px;
padding: 10px 12px;
box-sizing: content-box;
}
.aufbauinfo p span {
font-weight: 800;
display: inline-block;
margin-right: 8px;
text-transform: uppercase;
font-size: 1.2em;
color: #ffe000;
}
.aufbauinfo label {
margin-left: 30px;
padding-bottom: 5px!important;
}
.covidbestellinfo {
background-color: #C31818;
padding-bottom: 2px;
}
.th-elementor-button {
color:#fff!important;
line-height:1.4em;
margin-bottom:1em!important;
border:0!important;
}
.th-elementor-button:hover {
cursor:pointer;
}
@media only screen and (max-width: 767px) {
.fms_tag.fms_tag_slots {
padding-bottom: 10px;
}
.fms_datum {
float: none;
display: block;
margin-bottom: 10px;
height: 22px;
}
}