/* montserrat-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  src: url('https://schloss-schrattenthal.at/wp-content/fonts/montserrat-v29-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url('https://schloss-schrattenthal.at/wp-content/fonts/montserrat-v29-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  src: url('https://schloss-schrattenthal.at/wp-content/fonts/montserrat-v29-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  src: url('https://schloss-schrattenthal.at/wp-content/fonts/montserrat-v29-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* xxxxxxxxxxxxxxxxxxxxxxx */
/* START FLUENT FORMS STYLES */
/* xxxxxxxxxxxxxxxxxxxxxxx */

.fluentform textarea { 
	resize: vertical;
}

/* label style */
.fluentform .frm-fluent-form .ff-el-input--label {
	font-size: 1rem;
	font-weight: 300;
	color: var(--footer);
	margin-bottom: 5px;
}

.fluentform div.ff-el-group {
	margin-bottom: 20px;
}

/* field style */
.fluentform .frm-fluent-form div .ff-el-form-control {
	background-color: var(--background-accent);
	border: none;
	border-radius: 0px;
	font-size: 1.125rem;
	padding: 10px 15px;
	color: var(--text-body);
}

/* focus field style */
.fluentform .frm-fluent-form div .ff-el-form-control:focus {
	background-color: var(--background-body);
	color: var(--text-body);
	outline: none;
}


/* placeholder text style */
.fluentform .frm-fluent-form div .ff-el-form-control::placeholder {
	color: var(--text-body);
	opacity: 0.5;
	font-size: 1.125rem;
}

/* placeholder focus text style */
.fluentform .frm-fluent-form div .ff-el-form-control:focus::placeholder {
	color: var(--text-body);
}

/* DSGVO text style */
input[type=checkbox]:checked {
	accent-color: var(--accent);
}
.fluentform .ff-el-form-check-label .ff-el-form-check-input {
	width: 14px;
	height: 14px;
}
.ff-el-form-check-label .ff_t_c {
	font-size: 1rem;
}

/* button style */
.fluentform form.frm-fluent-form div.ff-el-group.ff_submit_btn_wrapper button.ff-btn-submit {
	background-color: var(--accent);
	color: var(--white);
	border: none;
	opacity: 1;
	border-radius: 0;
	font-size: 1.125rem;
	font-weight: 300;
	padding: 10px 15px;
	text-transform: uppercase;
	transition: all 0.3s ease 0s;
}
.fluentform form.frm-fluent-form div.ff-el-group.ff_submit_btn_wrapper {
	margin-bottom: 0;
}

/* button hover style */
.fluentform form.frm-fluent-form div.ff-el-group.ff_submit_btn_wrapper button.ff-btn-submit:hover,
.fluentform form.frm-fluent-form div.ff-el-group.ff_submit_btn_wrapper button.ff-btn-submit:focus {
	background-color: var(--text-body);
	color: var(--white);
	opacity: 1;
}

/* form error text style */
.fluentform .ff-el-is-error div.error.text-danger {
	font-size: 14px;
	margin-top: 0px;
}

/* form error field style */
.fluentform .ff-el-is-error div .ff-el-form-control {
	border: 1px solid #f56c6c;
}

/* success message style */
.fluentform .ff-message-success {
	position: relative;
	border: 2px solid var(--accent);
	color: var(--accent);
	box-shadow: none;
	font-size: 1.5rem;
	line-height: 1.3em;
	padding: 20px;
	margin-top: 20px;
	text-align: center;
}
.fluentform .ff-message-success p {
	margin-bottom: 0;
}

/* phone style */
.fluentform .iti__selected-flag {
	padding-left: 15px;
	background: transparent !important;
}


.fluentform .frm-fluent-form input.ff-el-form-control.ff-el-phone {
	padding-left: 60px;
}

/* dropdown field */
select.ff-el-form-control:not([size]):not([multiple]) {
	height: 41.5px !important;
    background-color: var(--background-accent) !important;
    padding: 10px 15px !important;
    text-overflow: ellipsis;
    background-image: url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2232%22%20height%3D%2232%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22%23878787%22%20d%3D%22M12%2014.975q%2D.2%200%2D.375%2D.062T11.3%2014.7l%2D4.6%2D4.6q%2D.275%2D.275%2D.275%2D.7t.275%2D.7t.7%2D.275t.7.275l3.9%203.9l3.9%2D3.9q.275%2D.275.7%2D.275t.7.275t.275.7t%2D.275.7l%2D4.6%204.6q%2D.15.15%2D.325.213t%2D.375.062%22%2F%3E%3C%2Fsvg%3E') !important;
    background-repeat: no-repeat !important;
    background-position: right 8px center !important;
    background-size: 22px auto !important;
    line-height: 1.3em;
}
select.ff-el-form-control:not([size]):not([multiple]):focus {
	border: none;
  	outline: none;
}

/* Turnliste */
div.ff-el-turnstile.cf-turnstile {
	text-align: center;
}

@media screen and (min-width: 220px) {}

@media screen and (min-width: 768px) {
	.fluentform .ff-message-success {
		font-size: 2rem;
	}
}

@media screen and (max-width: 1025px) {
	.frm-fluent-form .ff-t-container.check-data--container {
		display: block;
	}
}


/* FOOTER FORM */
/* label style */
.fluentform #fluentform_3.frm-fluent-form .ff-el-input--label {
	position: absolute!important;
	width: 1px!important;
	height: 1px!important;
	margin: -1px!important;
	border: 0!important;
	padding: 0!important;
	overflow: hidden!important;
	clip: rect(0,0,0,0)!important;
	white-space: nowrap!important;
	color: var(--white);
}

/* field style */
.fluentform #fluentform_3.frm-fluent-form div .ff-el-form-control {
	background-color: rgba(255, 255, 255, 0.1);
	border: none;
	border-radius: 0px;
	font-size: 1.125rem;
	padding: 10px 15px;
	color: var(--white);
}

/* focus field style */
.fluentform #fluentform_3.frm-fluent-form div .ff-el-form-control:focus {
	background-color: var(--accent);
	color: var(--white);
	outline: none;
}

.fluentform #fluentform_3 div.ff-el-group {
	margin-bottom: 10px;
}

/* placeholder text style */
.fluentform #fluentform_3.frm-fluent-form div .ff-el-form-control::placeholder {
	color: var(--white);
	opacity: 0.5;
	font-size: 1.125rem;
}

/* placeholder focus text style */
.fluentform #fluentform_3.frm-fluent-form div .ff-el-form-control:focus::placeholder {
	color: var(--white);
}

/* button hover style */
.fluentform form#fluentform_3.frm-fluent-form div.ff-el-group.ff_submit_btn_wrapper button.ff-btn-submit:hover,
.fluentform form#fluentform_3.frm-fluent-form div.ff-el-group.ff_submit_btn_wrapper button.ff-btn-submit:focus {
	background-color: var(--white);
	color: var(--footer);
	opacity: 1;
}
/* END FLUENT FORMS STYLES */

.hystmodal__opened,
.hystmodal__shadow {
    position: fixed;
    right: 0;
    left: 0;
    overflow: hidden;
}
.hystmodal__shadow {
    border: none;
    display: block;
    width: 100%;
    top: 0;
    bottom: 0;
    pointer-events: none;
    z-index: 105;
    opacity: 0;
    transition: opacity 0.15s ease;
    background-color: #000;
}
.hystmodal__shadow--show {
    pointer-events: auto;
    opacity: 0.75;
}
.hystmodal {
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    overflow: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    opacity: 1;
    pointer-events: none;
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    z-index: 10000;
    visibility: hidden;
}
.hystmodal--active {
    opacity: 1;
}
.hystmodal--active,
.hystmodal--moved {
    pointer-events: auto;
    visibility: visible;
}
.hystmodal__wrap {
    flex-shrink: 0;
    flex-grow: 0;
    width: 100%;
    /* min-height: 100%;  */
    margin: auto;
    pointer-events: auto;
	padding: 40px;
}
.hystmodal__window {
    margin: 10vh 0;
    box-sizing: border-box;
    flex-shrink: 0;
    flex-grow: 0;
    overflow: visible;
    transition: transform 0.2s ease 0s, opacity 0.2s ease 0s;
    /* transform: scale(0.9); */
    opacity: 0;
}
.hystmodal--active .hystmodal__window {
    transform: scale(1);
    opacity: 1;
}
.hystmodal__close {
    position: absolute;
    z-index: 10;
    top: 10px;
    right: 10px;
    display: block;
    width: 30px;
    height: 30px;
    background-color: var(--accent);
    background-position: 50%;
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' stroke='%23fff' stroke-linecap='square' stroke-miterlimit='50' stroke-width='2' d='M22 2L2 22'/%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='square' stroke-miterlimit='50' stroke-width='2' d='M2 2l20 20'/%3E%3C/svg%3E");
    background-size: 40%;
    border: none;
	border-radius: 100%;
    font-size: 0;
    cursor: pointer;
    outline: none;
	transition: background-color 0.3s ease;
}
.hystmodal__close:hover, .hystmodal__close:focus {
	background-color: var(--contrast);
}
.hystmodal__close:focus {
    outline: 2px dotted #afb3b9;
    outline-offset: 2px;
}
@media (max-width: 767px) {	
    .hystmodal__window {
        margin: 0;
    }
	
	.hystmodal__close {
		width: 26px;
		height: 26px;
		top: 20px;
    	right: 20px;
	}
	
	.hystmodal__wrap {
		padding: 80px 0;
	}
}