/*############################## GENERAL COSTUM CSS ##############################*/

/*############ SCROLLBAR ############*/
 
::-webkit-scrollbar {
  width: 12px;
}

::-webkit-scrollbar-track {
	box-shadow: inset 0 0 0px #f0f0f0;
	background-color: #f2f2f2;
}

::-webkit-scrollbar-thumb {
  background: #2f2f2f;
  border-radius: 1px;
}

/*############ SECTIONS ############*/

.syd-full-width .container {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0px !important;
}

.post-entry-type-page .entry-content-wrapper .syd-small-width {
	width: 80%;
	margin-right: 10%;
	margin-left: 10%;
}

.av-layout-grid-container.syd-small-width {
	padding-left: 20%;
	padding-right: 20%;
}

.post-entry-type-page .entry-content-wrapper .syd-small-width-left {
	width: 38% !important;
	margin-left: 10% !important;
	margin-right: 4%;+ !important;
}

.post-entry-type-page .entry-content-wrapper .syd-small-width-right {
	width: 38% !important;
	margin-right: 10% !important;
	margin-left: 0% !important;
}

.syd-full-width-background {
	/* background-size: 100% !important; */
}

.avia-section .container {
	padding-top: 70px;
	padding-bottom: 70px;
}

.avia-section.syd-no-padding-top .container {
	padding-top: 0px;
}

.avia-section.syd-no-padding-bottom .container {
	padding-bottom: 0px;
}

.av-layout-grid-container.syd-padding-top {
	padding-top: 70px;
}

.av-layout-grid-container.syd-padding-bottom {
	padding-bottom: 70px;
}


/*############################## HEADER ##############################*/

.av_minimal_header_shadow {
	box-shadow: 0 0 2px 3px rgba(0, 0, 0, .1) !important;
}


#header_meta .container .phone-info,
#header_meta .container .phone-info a {
	color: #ffffff;
	font-size: clamp(0.75rem, 0.7083rem + 0.1389vw, 0.875rem);
}

#top #header .av-main-nav > li > a {
	text-transform: uppercase;
}

#top #header .av-main-nav > li > a:hover {
	background-color: #f8991d;
	color: #fff;
}

.av-main-nav-wrap .menu-item {
	font-size: 16px;
}

#top #header .av-main-nav > li.syd-get-in-touch > a {
	background-color: #f8991d;
    padding-left: 25px;
    padding-right: 25px;
	margin-left: 10px;
	color: #fff;
}

#top #header .av-main-nav > li.syd-get-in-touch > a:hover {
	background-color: #0094e3;
}

li.menu-item:hover ~ .avia-menu-text,
ul.sub-menu li.menu-item:hover ~ a .avia-menu-text {
	color: #fff;
}

#top #wrap_all .av-main-nav ul.sub-menu > li > a:hover {
    color: #fff !important;
}

/*############################## BUTTONS ##############################*/

#top .gform_wrapper input[type=submit],
body .gform_wrapper .gform_body .gform_page_footer .gform_next_button {
    background-color: #f8991d !important;
    color: #fff !important;
    font-size: clamp(0.875rem, 0.7917rem + 0.2778vw, 1.125rem) !important;
    text-transform: uppercase;
    padding: 20px !important;
    font-weight: 400 !important;
}

body .gform_wrapper .gform_body .gform_page_footer .gform_next_button {
    background-color: #0094e3 !important;
    color: #fff !important;
    font-size: clamp(0.875rem, 0.7917rem + 0.2778vw, 1.125rem) !important;
    text-transform: uppercase;
    padding: 20px !important;
    font-weight: 400 !important;
}

#top .gform_wrapper input[type=submit]:hover,
body .gform_wrapper .gform_body .gform_page_footer .gform_next_button:hover {
    background-color: #0094e3;
}

/*############################## TYPOGRAPHIE ##############################*/
	
h1 {
	font-size: clamp(1.625rem, 1.2083rem + 1.3889vw, 2.875rem) !important;
	font-weight: 700;
	margin-bottom: 1em;
}

h2 {
	font-size: clamp(1.5rem, 1.1667rem + 1.1111vw, 2.5rem) !important;
	font-weight: 700;
	margin-bottom: 0.7em;
}

h3 {
	font-size: clamp(1.375rem, 1.2083rem + 0.5556vw, 1.875rem) !important;
	font-weight: 700;
	text-transform: uppercase;
}

h4,
.gotrgf_form_overview_container>.gotrgf_summary_title>h5 {
	font-size: clamp(1.25rem, 1.1458rem + 0.3472vw, 1.5625rem) !important;
	font-weight: 400;
	text-transform: uppercase;
}

p,
ul,
li,
avia-menu-text,
#top label span,
#top legend {
	font-size: clamp(0.875rem, 0.7917rem + 0.2778vw, 1.125rem) !important;
	line-height: 1.8 !important;
	color: #2f2f2f; 
	font-weight: 100;
}

#top label {
	font-size: clamp(0.875rem, 0.7917rem + 0.2778vw, 1.125rem) !important;
	line-height: 1 !important;
	color: #2f2f2f; 
	font-weight: 100;
}

ul.avia-icon-list li {
	line-height: 2.5 !important;
}

/*############################## LINK-ANIMATION ##############################*/

/*

.avia-section a {
  position: relative;
  color: #fff; 
  text-decoration: none;
}

.avia-section a:hover {
  color: #fff; 
}

.avia-section a::after {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 2px;
  bottom: -5px;
  left: 0;
  background-color: #fff;
  transform: scaleX(0);
  transition: transform 0.3s ease;
}

.avia-section a:hover::after {
  transform: scaleX(1);
}

.avia-button-wrap a::after {
	display: none;
}

a {
  text-decoration: none;
  color: #18272F;
  font-weight: 700;
  position: relative;
}

.avia-section a::after,
.syd-socket a::after {
  content: '';
  background-color: hsla(196, 61%, 58%, .75);
  position: absolute;
  left: 0;
  bottom: 3px;
  width: 100%;
  height: 8px;
  z-index: -1;
  transition: all .3s ease-in-out;
}


.avia-section a:hover::after,
.syd-socket a:hover::after {
  bottom: 0;
  height: 100%;
}

.avia-section a,
.syd-socket a {
  box-shadow: inset 0 0 0 0 #54b3d6;
  color: #54b3d6;
  margin: 0 -.25rem;
  padding: 0 .25rem;
  transition: color .3s ease-in-out, box-shadow .3s ease-in-out;
}

.avia-section a:hover,
.syd-socket a:hover {
  box-shadow: inset 100% 0 0 0 #54b3d6;
  color: white;
}

*/

/*############################## BUTTONS ##############################*/

#top .avia-button-fullwidth .avia-button-fullwidth,
#top .avia-button .avia_iconbox_title {
	font-size: clamp(0.875rem, 0.7917rem + 0.2778vw, 1.125rem) !important;
	text-transform: uppercase;
	font-weight: 900;
}

.avia-button.avia-size-large {
	padding: 20px !important;
}

/* CUSTOM LIST ICON */

/*############################## ELEMENTS ##############################*/

/*########## BANNER ##########*/

.syd-banner h1 {
	font-size: clamp(1.75rem, 0.6667rem + 3.6111vw, 5rem) !important;
	line-height: 1.3em;
	color: #fff;
	margin-bottom: 0;
}
.syd-banner p {
	font-size: clamp(1.25rem, 1.0833rem + 0.5556vw, 1.75rem) !important;
	color: #fff;
}

/*########## GRAVITY-FORMS ##########*/

.gotrgf_form_container {
	margin-top: 6em !important;
}

.gotrgf_form_wrapper {
	border-radius: 2px !important;
	padding: 40px !important;
	padding-bottom: 0px !important;
	background-color: #fff;
}

.syd-contact-form_wrapper .gform_heading {
	display: none !important;
}

.syd-contact-form_wrapper #top label {
	line-height: 1 !important;
}

.gform-theme--foundation .gform_fields {
  grid-row-gap: 20px !important;
}

.gform-theme--framework .gf_progressbar .percentbar_blue {
	background-color: #0094e3 !important;
}

span.gfield_required {
	color: #c02b0a !important;
	font-size: clamp(0.75rem, 0.6667rem + 0.2778vw, 1rem) !important;
}

label.gform-field-label {
	line-height: 1 !important;
}

#top fieldset {
	margin-bottom: 0px !important
}

.syd-contact-form-check-box label.gform-field-label {
	line-height: 1 !important;
}

.gsection_title {
	margin-top: 20px;
}

.gfield--type-section {
	border-bottom: 0px !important;
}

.gfield_consent_description {
	border-radius: 2px !important;
}

.syd-contact-form-line-height label {
	line-height: 1.0 !important;
}

.gotrgf_form_overview_container>.gotrgf_summary_title>h5 {
	padding: 20px !important;
}

.gotrgf_form_overview_container>.gotrgf_summary_lines {
	padding: 20px !important;
}

h2.gform_submission_error {
	font-size: clamp(0.875rem, 0.7917rem + 0.2778vw, 1.125rem) !important;
    line-height: 1.8 !important;
    font-weight: 700 !important;
    letter-spacing: normal !important;
    text-transform: inherit !important;
}

#top .alternate_color .input-text, #top .alternate_color input[type='text'], #top .alternate_color input[type='input'], #top .alternate_color input[type='password'], #top .alternate_color input[type='email'], #top .alternate_color input[type='number'], #top .alternate_color input[type='url'], #top .alternate_color input[type='tel'], #top .alternate_color input[type='search'], #top .alternate_color textarea, #top .alternate_color select {
    border-color: #f2f2f2;
    background-color: #f2f2f2;
    color: #2f2f2f;
    font-family: inherit;
    box-shadow: 0px 0px 0px #fff;
}

.gform-theme--framework input[type=checkbox]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::before {
	font-size: clamp(0.875rem, 0.7917rem + 0.2778vw, 1.125rem) !important;
	color: #0092e3 !important;
}

.gotrgf_form_overview_container {
	border-radius: 2px !important;
}

.gotrgf_line_part_right {
  max-width: 100% !important;         /* Beschränkt die Breite des divs */
  word-wrap: break-word !important;   /* Wortumbruch aktivieren */
  word-break: break-word !important;  /* Auch Wortmittenumbruch zulassen */
}

.gotrgf_form_overview_container>.gotrgf_summary_lines>.gotrgf_summary_line>.gotrgf_line_part_left {
	font-weight: 700 !important;
	margin-top: 10px !important;
}

.gotrgf_form_overview_container>.gotrgf_summary_lines>.gotrgf_summary_line>.gotrgf_line_part_right {
	font-weight: 400 !important;
	text-align: left !important;
}

.gotrgf_form_overview_container>.gotrgf_summary_lines>.gotrgf_summary_line {
	flex-direction: column;
	font-size: clamp(0.75rem, 0.6667rem + 0.2778vw, 1rem) !important;
}

/*########## FULL-WIDTH PICTURE CONTENT ##########*/

.syd-full-width-picture-content .flex_cell:nth-child(2) {
	padding: 7% !important;
	padding-right: 12%;
}

.syd-full-width-content-picture .flex_cell:nth-child(1) {
	padding: 7% !important;
	padding-left: 12%;
}

.syd-full-width-picture-content .avia-button-wrap,
.syd-full-width-content-picture .avia-button-wrap {
	margin-top: 3em;
}

/*########## BIG-CONTENT ##########*/

.syd-big-content h2 {
	font-size: clamp(1.625rem, 1.2083rem + 1.3889vw, 2.875rem) !important; 
}

.syd-big-content p {
	font-size: clamp(1rem, 0.9167rem + 0.2778vw, 1.25rem) !important;
	font-weight: 500;
}

/*########## CONTACT-ICONS ##########*/

.syd-phone:before,
.syd-mail:before,
.syd-instagram:before,
.syd-facebook:before,
.syd-x:before {
	font-size: clamp(0.875rem, 0.7917rem + 0.2778vw, 1.125rem) !important;
}

.syd-phone:before {
    content: '\e854';
    display: inline-block;
    padding-left: 10px;
    font-family: 'entypo-fontello';
    transform: translateY(5px);
	color: #fff;
	transform: scaleX(-1);
    -moz-transform: scaleX(-1);
    -webkit-transform: scaleX(-1);
    -ms-transform: scaleX(-1);
}

.syd-mail:before {
    content: '\e805';
    display: inline-block;
    padding-right: 10px;
    font-family: 'entypo-fontello';
    color: #fff;
}

.syd-instagram:before {
    content: '\f16d';
    display: inline-block;
    padding-right: 10px;
    font-family: 'entypo-fontello';
    color: #fff;
}

.syd-facebook:before {
    content: '\e8f5';
    display: inline-block;
    padding-right: 10px;
    font-family: 'entypo-fontello';
    color: #fff;
}

.syd-x:before {
    content: '\e932';
    display: inline-block;
    padding-right: 10px;
    font-family: 'entypo-fontello';
    color: #fff;
}

/*########## ICON-LIST ##########*/

#top .av-iconlist-small li {
	margin-bottom: 1em;
}

#top .av-iconlist-small .iconlist_icon {
	margin-right: .75em;
}

.avia-icon-list .av-iconlist-empty .iconlist_title {
	margin-top: 0px;
}

.avia-icon-list .iconlist_icon {
    height: 54px;
    width: 54px;
    line-height: 54px;
    font-size: 24px;
    text-align: center;
    border-radius: 500px;
    position: relative;
    float: left;
    margin-right: 25px;
    margin-left: 0px;
    z-index: 5;align-content
}

h4.av_iconlist_title {
	font-size: clamp(1rem, 0.875rem + 0.4167vw, 1.375rem);
	line-height: 1.5;
    text-transform: none !important;
}

.avia_transform .avia-icon-list.av-iconlist-big.avia-iconlist-animate .avia_start_animation .iconlist-timeline {
	display: none;
}

/*########## AKKORDEON ##########*/

#top .togglecontainer p.toggler {
	padding: 15px !important;
	padding-left: 30px !important;
	border-radius: 7px !important;
}

#top .togglecontainer p.toggler {
	text-transform: uppercase;
	font-weight: 900;
}

.togglecontainer.syd-akkordeon #top .togglecontainer .toggle_wrap .toggle_content {
	background-color: #f2f2f2;
}

/*########## TEAM-MEMBER ##########*/

.syd-team-member {
	background-color: #fff;
}

/*########## CTA-SECTION ##########*/

.syd-cta-section .container {
	padding-top: 0px !important;
	padding-bottom: 0px !important;
}

.syd-cta-section .entry-content-wrapper .flex_column .av_textblock_section {
	padding-top: 12px;
}

/*########## INFO-BOX ##########*/

.syd-info-box {
	border-radius: 3px;
	background-color: #fff !important;
	padding: 50px;
}

.syd-info-box .iconbox_content {
	padding: 0px !important;
	background-color: #fff !important;
	border: 0px solid #fff;
	box-shadow: 0 0 0px 0 rgba(0,0,0,.3) !important
}

/* ==> Spezielle Anpassungen für Infobox mit Button darunter */

.syd-info-box.syd-info-box-button {
	border-bottom-left-radius: 0px !important;
	border-bottom-right-radius: 0px !important;
}

.syd-info-box-button .avia-button-fullwidth {
	border-top-left-radius: 0px !important;
	border-top-right-radius: 0px !important;	
}

/*########## COUNTER ##########*/

.syd-counter .avia-animated-number-title {
	font-family: oswald !important;
	font-weight: 700 !important;
	color: #f8991d;
	letter-spacing: 0.05em;
	padding-right: 0.65em;
}

.syd-counter .avia-animated-number-content p {
    margin: 0;
    font-size: 18px !important;
    font-weight: 600;
    margin-top: 10px;
}

/* ==> Spezielle Anspassungen für Organge-Section */

.syd-orange-section .syd-counter .avia-animated-number-title,
.syd-orange-section .syd-counter p {
	color: #fff;
}

/*############################## FOOTER ##############################*/

.syd-footer .container,
.syd-socket .container {
	padding-top: 0px !important;
	padding-bottom: 0px !important;
}

.syd-footer .container:nth-child(1) .content {
	padding-top: 35px !important;
	padding-bottom: 60px;
}

.syd-footer .container:nth-child(1) .flex_column {
	margin-top: 0px !important;
}

.syd-footer .container:nth-child(2) .flex_column {
	background-color: #0092e3;
}

.syd-footer p,
.syd-footer ul li {
	color: #fff !important;
}

.av_default_container_wrap .content {
	padding-top: 0px;
	padding-bottom: 0px;
	font-size: clamp(0.75rem, 0.6667rem + 0.2778vw, 1rem) !important;
}

.footer-page-content div:nth-child(2) a {
	border-bottom: 0px solid !important;
	color: #fff !important;
    transition: transform 0.3s ease !important;
}

.footer-page-content div:nth-child(2) a:hover,
.syd-footer a:hover {
	border-bottom: 2px solid !important;
    transition: transform 0.3s ease !important;
}

.footer-page-content div:nth-child(2) a {
	color: #f7981c !important;
}

.footer-page-content .av_default_container_wrap p {
	font-size: clamp(0.75rem, 0.6875rem + 0.2083vw, 0.9375rem) !important;
}



/*############################## RESPONSIVE ##############################*/

/*########## 980 ##########*/

@media only screen and (max-width: 980px) {
	.post-entry-type-page .entry-content-wrapper .syd-small-width {
		width: 100%;
		margin-right: 0% !important; 
		margin-left: 0% !important;
	}
	.syd-full-width-picture-content .flex_cell,
	.syd-full-width-content-picture .flex_cell {
		min-height: 300px !important;
		background-size: cover !important;
	}
	.syd-full-width-content-picture {
		display: flex;
		flex-direction: column-reverse;
	}
	.avia-section .container {
		padding-top: 40px;
		padding-bottom: 40px;
	}
}

/*########## 600 - 980 ##########*/

@media only screen and (min-width: 600px) and (max-width: 989px) {
	.syd-footer .flex_column {
		width: 48% !important;
	}
	.syd-footer .flex_column:nth-child(1) {
		width: 100% !important;
	}
}

/*########## 768 ##########*/

@media only screen and (max-width: 768px) {
	.syd-banner .container {
		height: 50vh !important;
	}
	.syd-full-width-picture-content .flex_cell:nth-child(2),
	.syd-full-width-content-picture .flex_cell:nth-child(1) {
		padding-top: 90px !important;
		padding-bottom: 90px !important;
	}
	.footer-page-content .av_default_container_wrap .flex_column:nth-child(1) {
		margin-top: 20px !important;
		margin-bottom: 0px !important;
	}
	.footer-page-content .av_default_container_wrap .flex_column p {
		text-align: left !important;
	}
}