/* POB 01.06.2026 - 12:25 */
:root {
	--sw-color-black: #000000;
	--sw-color-petrol: #2C4C59;
	--sw-color-petrol-light: #56707A;
	--sw-color-white: #ffffff;
	--sw-color-background-gray-light: #f3f1ed;
	--sw-color-background-beige-light: #F7F6F3;
	--sw-color-background-sand: #D6D1C3;
	--sw-color-apricot: #FDB259;
	--sw-color-apricot-light: #FDC17A;	
	--sw-color-blue: #0064a1;
	--sw-color-blue-light: #5B9BC2;
	--sw-color-gray-light: #D5DBDE;
	--sw-color-gray-blue: #80949B;	
	--sw-color-error: #6EA2C6;
	--sw-color-blue-form-border: #b6d0e3;
	
	--sw-font-family: 'Saira Semi Condensed', Arial, sans-serif;
	
	--sw-border-radius: 42px;
	--sw-button-radius: 26px;
	--sw-text-image-background-offset: 360px;
	--sw-text-image-row-col-offset: 75px;
	--sw-paragaph-margin-bottom: 35px;
	--sw-li-margin-bottom: 45px;
	--sw-accordion-li-margin-bottom: 7px;
	--sw-form-font-size: 24px;
}

::selection {
	/* background: #ffdd6a; */
}

html {
  scroll-behavior: smooth;
}

/* default container padding for all resolutions and container sizes */
.container, .container-fluid, .ark-boxed__boxed-wrapper, .ark-boxed__boxed-wrapper .ark-header {
	padding-left: 30px;
	padding-right: 30px;
}

a {
	/* avoid "all" or "visibility" due to flickering when using JS effects */
	transition: color 0.2s, background-color 0.2s, border-color 0.2s,  opacity 0.2s;
}
a:focus, a:hover {
	text-decoration: none;
}

img:not(.woocommerce-product-gallery img) {
	pointer-events: none; /* Hides visual search icon in Edge */
}

.fg-paragraph p, .fg-paragraph ul, .accordion-v1 .panel-body p, .accordion-v1 .panel-body ul {
	margin-bottom: var(--sw-paragaph-margin-bottom);
}
.fg-paragraph ul li {
	margin-bottom: var(--sw-li-margin-bottom);
}
.ark-accordion-custom__content .fg-paragraph ul li {
	margin-bottom: var(--sw-accordion-li-margin-bottom);
}
ul li::marker {
	color: var(--sw-color-apricot);
}
.fg-paragraph:last-child p:last-child, .fg-paragraph:last-child ul li:last-child, .fg-paragraph ul {
	margin-bottom: 0;
}
.accordion-v1 .panel-body div:last-of-type + p {
	margin-top: 15px;
}
.fg-paragraph p, .fg-paragraph li, .panel-body, .panel-body p, .panel-body li {
	color: var(--sw-color-petrol-light);
}
.fg-heading, .fg-heading p, .fg-text-dark.fg-heading, .fg-text-dark.fg-heading p, h1>a, h2>a, h3>a {
	color: var(--sw-color-petrol);
}
.fg-paragraph a, .fg-paragraph p a {
	color: var(--sw-color-apricot);
}
.fg-paragraph a:hover, .fg-paragraph p a:hover {
	color: var(--sw-color-blue);
}
h1 > p, h2 > p, h3 > p, h4 > p {
	margin: 0;
}
h3.fg-heading:has(+ h4.fg-heading) {
    margin-bottom: 7px;
}
.fg-paragraph strong, .fg-paragraph strong:hover, .accordion-v1 .panel .panel-body p strong, .accordion-v1 .panel .panel-body p strong:hover {
	font-weight: 500 !important;
}
.ark-accordion-custom__content .fg-paragraph strong {
	color: var(--sw-color-blue);
}
.fg-paragraph > ul, .ff-richtext ul:not(.woocommerce-error), .ff-richtext ol {
	padding-left: 24px;
}
.fg-paragraph > ul > li {
	padding-left: 12px !important;
}
.ark-accordion-custom__content .fg-paragraph > ul > li {
	padding-left: 6px !important;
}
/* bootstrap > v.3 standard class for hiding */
.d-none {
	display: none !important;
}

/* 
	Fixed patterns/images in the background
	- To flexibly position the content elements at the right layer, use the following globale Styles, both with position relative and z-index !important:
		- Element in front of Dots (z-index: 1)
		- Element behind Dots (z-index: -1)
	- The left and right indented content elements need some special handling (see Ecofin case for more details):
		Content/Column itself needs z-index auto, set by a css class to override the style attribute set during run time
		
.page-wrapper:before, .page-wrapper:after {
	width: 100vw;
	position: fixed;
	opacity: 0.25;
}
.page-wrapper:before {
	content: url(/wp-content/uploads/pattern_bottom_left.svg);
    top: 53vh;
}
.page-wrapper:after {
	content: url(/wp-content/uploads/pattern_top_right.svg);
    top: 0;
	z-index: -1;
}
.fg-section, .fg-row {
	z-index: auto !important;
}
.z-index-auto {
	z-index: auto !important;
	position: relative;
}
*/

/*
	lightbox
	- For Fullscreen Design set mfp-content zu full size and use the ark standard Sections and Rows to control the width of the content
	- To open the Lightbox also by Clicking on Post Title and Image the corresponsing lightbox css class must be set in custom.js
	- don't use width: 100vw; in .mfp-content, positions the lightbox to the end of the page
	.mfp-iframe-holder  .mfp-content {
		max-width: none;
		height: 100vh;
		width: 100%;
	}
*/
/*
.mfp-bg {
	background: var(--sw-color-white);
	opacity: 0.72;
}
.mfp-iframe-holder .mfp-content {
	max-width: 1135px;
	min-height: 773px;
}
.mfp-iframe-holder {
	padding: 0;
}
.mfp-iframe-scaler iframe {
	background-color: transparent;
	box-shadow: 2px 6px 12px #00000029;
}
.mfp-iframe-scaler iframe {
	background-color: var(--sw-color-white);
}
.mfp-iframe-holder .mfp-close {
	top: 10px;
	right: 10px;
	border-radius: 0;
	opacity: 1;
	background: none;	
	width: 32px;
	height: 32px;
	font-size: 40px;
	line-height: 0.85;
	color: var(--sw-color-petrol);
}

Decoration / No Decoration in Lightbox iFrame - the css classes must be set in custom.js
body.no-decoration {
	background-color: var(--sw-color-white);
}
body.no-decoration .ark-header, body.no-decoration .footer-container, body.no-decoration #footer, body.no-decoration.page .page-wrapper .fg-container-no-padding, body.no-decoration.single-portfolio .page-wrapper .fg-container-no-padding, body.no-decoration .menu-top-menu-container, body.no-decoration .titlebar, body.no-decoration .contact-sidenav {
	display: none;
}
.ark-header, .footer-container, #footer, .page .page-wrapper .fg-container-no-padding, .single-portfolio .page-wrapper .fg-container-no-padding, .menu-top-menu-container, .titlebar, .contact-sidenav {
	visibility: hidden;
}
body.decoration .ark-header, body.decoration .footer-container, body.decoration #footer, body.decoration.page .page-wrapper .fg-container-no-padding, body.decoration.single-portfolio .page-wrapper .fg-container-no-padding, body.decoration .menu-top-menu-container, body.decoration .titlebar, body.decoration .contact-sidenav {
	visibility: visible;
}
*/

/* Header Image and Text */
.header-large {
	height: 50vw;
	min-height: 700px;
	max-height: 860px;
	
	/* Header Text Positioning */
	display: flex;
    /* flex-direction: column; */
    /* justify-content: end; */
	
	padding-top: 203px;
    padding-bottom: 77px;
}
.header-large .fg-heading:last-child {
	margin-bottom: 0;
}
.header-large:not(.text-image-row) {
	align-items: center;
}
.header-medium {
    height: 36vw;
	max-height: 665px;
}
/* .header-small { */
    /* height: 35vw; */
/* } */

/*
	Header Text: Type Writing

.header-text {
	display: inline-block;
	float: left;
	clear: both;
}
.header-text div {
	width: 0;
	background-color: var(--sw-color-apricot);
	animation: typing 1s steps(30, end) forwards;
}
.header-text:last-child div {
	animation-delay: 1s;
}
.header-text p {
	margin-left: calc(15px + 4.5vw);
	margin-right: 20px;
	margin-bottom: 9px;
	overflow: hidden;
	white-space: nowrap;
}

@keyframes typing {
	0% { width: 0; }
	100% { width: 100%; }
}
*/

/*
	Header Text: Poligon.
	The Poligon ist different for left and right aligned Text. The Case below is for right alinged Text.
	For left aligned Text, use the following polygons:
	clip-path: polygon(100% 80%, 100% 100%, 0 100%, 0 0);
	clip-path: polygon(100% 20%, 100% 100%, 0 100%, 0 0);

.header-text p {
	font-weight: 600;
	margin: 0;
	line-height: 1.8;

	-webkit-clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 80%);
	clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 80%);

	transform: translateY(-50px);
	opacity: 0;
	animation-name: titleAnimation;
	animation-timing-function:ease;
	animation-duration: 3.5s;
	-webkit-animation-fill-mode: forwards;
}
.header-text p:nth-child(1){
  animation-delay: 1.7s;
}
.header-text p:nth-child(2){
  animation-delay: 1.6s;
}
.header-text p:nth-child(3){
  animation-delay: 1.5s;
}
.header-text p:nth-child(4){
  animation-delay: 1.4s;
}

@keyframes titleAnimation {
    0% {
      transform: translateY(-50px);
      opacity: 0;
      -webkit-clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 80%);
      clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 80%);
  }
  20% {
      transform: translateY(0);
      opacity: 1;
      -webkit-clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 15%);
      clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 15%);
  }
  100% {
       transform: translateY(0);
       opacity: 1;
      -webkit-clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 15%);
      clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 15%);
  }
}
*/

.display-flex-row {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.display-flex-row-center {
	display: flex;
	flex-direction: row;
	align-items: center;
	flex-wrap: wrap;
}
.display-flex-row-center-center {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
}
.display-flex-column {
	display: flex;
	flex-direction: column;
}
.display-flex-column-center {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.image-full-width {
	/* height: 24vw; */
	/* max-height: 560px; */
}

/* Portfolio flex - adapt margins if a custom horizontal margin is set in ark portfolio element */
.ff-portfolio-grid {
	height: auto !important;
}
.ff-portfolio-grid .cbp-wrapper-outer .cbp-wrapper {
	position: static;
	display: flex;
	flex-wrap: wrap;
	margin: 0 -15px;
	width: auto;
}
.ff-portfolio-grid .cbp-item {
	position: static;
	margin: 0 15px;
}
.cbp-item-off {
    display: none;
}

.ffb-btn, .ffb-btn .btn-text {
	transition: color 0.25s, background-color 0.25s, border 0.25s;
}
.ffb-btn:hover .btn-text {
	color: var(--sw-color-petrol) !important;
}
.page-wrapper .ffb-btn:hover {
	border-color: var(--sw-color-petrol) !important;
}
.ff-form-input {
	background: var(--sw-color-white);
}
.radio input[type=radio], .checkbox input[type=checkbox] {
	margin-top: 3px;
}
form label.error {
	font-style: normal !important;
    color: var(--sw-color-error);
    margin-left: 179px !important;
    margin-top: -52px !important;
	margin-bottom: 18px !important;
	padding-bottom: 14px;
    font-size: 14px !important;
}
form input[type=text]::placeholder, form textarea::placeholder {
	color: color: var(--sw-color-petrol) !important;
}
.form-control {
	padding: 6px 30px;
	border-radius: 0;
}
.ff-form-input-select.form-control {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;

	padding-right: 30px;

	background-image: url('/wp-content/uploads/button-oeffnen-aktiv.svg');
	background-repeat: no-repeat;
	background-position: right 19px center;
	background-size: 23px 12px;
}
.ff-form-input-select.form-control::-ms-expand {
	display: none;
}
.custom-button {
	background-color: var(--sw-color-apricot);
	border-radius: var(--sw-button-radius);
	border: none;
}
.custom-button:hover, .custom-button:focus {
	background-color: var(--sw-color-apricot-light);
}
.ff-custom-form:has(.ff-message-send-ok-duplicate) input.ff-form-input,
.ff-custom-form:has(.ff-message-send-ok-duplicate) select.ff-form-input,
.ff-custom-form:has(.ff-message-send-ok-duplicate) textarea.ff-form-input,
.wpcf7 form.sent input.wpcf7-text,
.wpcf7 form.sent input.wpcf7-email,
.wpcf7 form.sent input.wpcf7-tel,
.wpcf7 form.sent textarea.wpcf7-textarea,
.wpcf7 form.sent select.wpcf7-select,
.wpcf7 form[data-status="sent"] input.wpcf7-text,
.wpcf7 form[data-status="sent"] input.wpcf7-email,
.wpcf7 form[data-status="sent"] input.wpcf7-tel,
.wpcf7 form[data-status="sent"] textarea.wpcf7-textarea,
.wpcf7 form[data-status="sent"] select.wpcf7-select {
	border-color: var(--sw-color-background-sand) !important;
	color: var(--sw-color-background-sand) !important;
}

.ff-custom-form:has(.ff-message-send-ok-duplicate) input.ff-form-input::placeholder,
.ff-custom-form:has(.ff-message-send-ok-duplicate) textarea.ff-form-input::placeholder,
.wpcf7 form.sent input::placeholder,
.wpcf7 form.sent textarea::placeholder,
.wpcf7 form[data-status="sent"] input::placeholder,
.wpcf7 form[data-status="sent"] textarea::placeholder {
	color: var(--sw-color-background-sand) !important;
}

.ff-custom-form:has(.ff-message-send-ok-duplicate) .ff-form-input-select,
.wpcf7 form.sent select.wpcf7-select,
.wpcf7 form[data-status="sent"] select.wpcf7-select {
	background-image: url('/wp-content/uploads/button-oeffnen-unaktiv.svg') !important;
}

.ff-custom-form:has(.ff-message-send-ok-duplicate) .custom-button,
.wpcf7 form.sent input.wpcf7-submit,
.wpcf7 form[data-status="sent"] input.wpcf7-submit {
	border-color: var(--sw-color-background-sand) !important;
	background-color: var(--sw-color-background-sand) !important;
}

.ff-custom-form:has(.ff-message-send-ok-duplicate) .custom-button .btn-text,
.wpcf7 form.sent input.wpcf7-submit,
.wpcf7 form[data-status="sent"] input.wpcf7-submit {
	color: var(--sw-color-white) !important;
}
.wpcf7 input.wpcf7-text,
.wpcf7 input.wpcf7-email,
.wpcf7 input.wpcf7-tel,
.wpcf7 textarea.wpcf7-textarea,
.wpcf7 select.wpcf7-select {
	box-sizing: inherit;
	margin: 0 0 15px;
	font: inherit;
	font-family: inherit;
	display: block;
	width: 100%;
	line-height: 1.42857143;

	transition:
		border-color ease-in-out .15s,
		box-shadow ease-in-out .15s;

	box-shadow: none;
	font-weight: 300;

	background-color: var(--sw-color-white);

	border-radius: 0;
	border: 1px solid var(--sw-color-blue-form-border) !important;

	color: var(--sw-color-petrol) !important;
	letter-spacing: 0.025em !important;
	font-size: var(--sw-form-font-size) !important;
}

.wpcf7 input.wpcf7-text,
.wpcf7 input.wpcf7-email,
.wpcf7 input.wpcf7-tel {
	padding: 6px 30px;
	height: 52px !important;
}

.wpcf7 textarea.wpcf7-textarea {
	padding: 6px 30px;
	overflow: auto;
	outline: 0;
	height: 218px !important;
}

.wpcf7 select.wpcf7-select {
	padding: 6px 30px;
	height: 52px;
	outline: 0;

	background-image: url('/wp-content/uploads/button-oeffnen-aktiv.svg');
	background-repeat: no-repeat;
	background-position: right 19px center;
	background-size: 23px 12px;

	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}

.wpcf7 input::placeholder,
.wpcf7 textarea::placeholder {
	color: var(--sw-color-petrol) !important;
}

.wpcf7 .wpcf7-not-valid-tip {
	box-sizing: inherit;
	display: block;
	max-width: 100%;

	font-family: var(--sw-font-family);
	font-style: normal !important;
	font-weight: 300;
	font-size: 14px !important;
	line-height: 1.42857143;

	color: var(--sw-color-error);

	margin-left: 179px !important;
	margin-top: -52px !important;
	margin-bottom: 18px !important;

	padding-bottom: 14px;
}

.wpcf7 input.wpcf7-submit {
	box-sizing: inherit;

	position: relative;
	display: inline-block;
	overflow: hidden;
	z-index: 1;

	outline: 0;

	font-family: var(--sw-font-family);
	font-size: 18px !important;
	font-weight: 600 !important;
	line-height: 1.4;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	white-space: nowrap;

	color: var(--sw-color-petrol) !important;

	background: var(--sw-color-apricot);
	border: none;
	border-radius: var(--sw-button-radius);

	cursor: pointer;
	user-select: none;
	touch-action: manipulation;

	padding: 13px 50px 11px;

	margin-top: 35px;
	margin-bottom: 20px;

	text-align: right !important;
	text-decoration: none;

	transition:
		color 0.25s,
		background-color 0.25s,
		border 0.25s;
}

.wpcf7 input.wpcf7-submit:hover {
	background: var(--sw-color-apricot-light);
	color: var(--sw-color-petrol) !important;
}
.wpcf7 input:focus,
.wpcf7 textarea:focus,
.wpcf7 select:focus {
	background: var(--sw-color-background-beige-light);
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output, .wpcf7 form.sent .wpcf7-response-output {
	border-color: transparent;
}
.wpcf7 form .wpcf7-response-output {
	margin: 0;
	padding: 30px 0 0 0;
	color: var(--sw-color-apricot);
	font-size: var(--sw-form-font-size);
	font-weight: 300;
}

.wpcf7 form.sent .wpcf7-response-output {
	color: var(--sw-color-petrol);
}

.back-link p {
	margin: 0;
}
/*.back-link a:hover, .back-link a:hover span {
	color: #89acc8 !important;
} */	
.back-link a span, .back-link a span:hover {
	font-size: 115% !important;
	transition: all 0.25s;
}

/* 100% = browser width without scrollbars */
.column-left-indented-to-content {
	padding-right: 0;
}
.column-left-indented-to-content.col-lg-4 {
	padding-left: calc((100% - 1170px) / 2);
	width: calc(390px + (100% - 1170px) / 2);
}
.column-left-indented-to-content.col-lg-5 {
	padding-left: calc((100% - 1170px) / 2);
	width: calc(487.5px + (100% - 1170px) / 2);
}
.column-left-indented-to-content.col-lg-6 {
	padding-left: calc((100% - 1170px) / 2);
	width: calc(585px + (100% - 1170px) / 2);
}
.column-left-indented-to-content.col-lg-7 {
	padding-left: calc((100% - 1170px) / 2);
	width: calc(682.5px + (100% - 1170px) / 2);
}
.column-left-indented-to-content.col-lg-8 {
	padding-left: calc((100% - 1170px) / 2);
	width: calc(780px + (100% - 1170px) / 2);
}
.column-left-indented-to-content.col-lg-12 {
	padding-left: 0;
	width: 100%;
}
.column-right-indented-to-content {
	padding-left: 0;
}
.column-right-indented-to-content.col-lg-4 {
	padding-right: calc((100% - 1170px) / 2);
	width: calc(390px + (100% - 1170px) / 2);
}
.column-right-indented-to-content.col-lg-5 {
	padding-right: calc((100% - 1170px) / 2);
	width: calc(487.5px + (100% - 1170px) / 2);
}
.column-right-indented-to-content.col-lg-6 {
	padding-right: calc((100% - 1170px) / 2);
	width: calc(585px + (100% - 1170px) / 2);
}
.column-right-indented-to-content.col-lg-7 {
	padding-right: calc((100% - 1170px) / 2);
	width: calc(682.5px + (100% - 1170px) / 2);
}
.column-right-indented-to-content.col-lg-8 {
	padding-right: calc((100% - 1170px) / 2);
	width: calc(780px + (100% - 1170px) / 2);
}
.column-right-indented-to-content.col-lg-12 {
	padding-right: 0;
	width: 100%;
}

.two-columns-list {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	margin-bottom: 23px;
}
.two-columns-list p {
	margin-bottom: 5px;
}
.two-columns-list p:nth-child(odd) {
	width: 60px;
}
.two-columns-list p:nth-child(even) {
	width: calc(100% - 60px);
}

.accordion-v1 {
    margin-bottom: 0;
	padding-bottom: 30px;
}
.accordion-v1 .panel-group .panel + .panel {
    margin-top: 0;
	padding-top: 25px;
}
.accordion-v1 .panel-title > a {
	padding: 10px 70px 10px 30px;
	background-color: var(--sw-color-blue) !important;
}
.accordion-v1 .panel-title > a.ffb-title:after {
    line-height: 28px !important;
	margin-top: -20px;
	padding: 0 2px;
    font-size: 40px !important;
	font-weight: 300 !important;
}
.accordion-v1 .panel-title > a.ffb-title[aria-expanded="false"]:after {
	margin-top: -15px;
	padding: 0;
}
.accordion-v1 .panel-body {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	background-color: var(--sw-color-white) !important;
	padding: 25px 30px;
}
.accordion-v1 .panel-body p:last-child {
	margin-bottom: 0;
}
.accordion-v1 .panel-body p {
	width: 100%;
}
.accordion-v1 .panel-body div {
	width: 50%;
}
/*.accordion-v1 .panel-body div:nth-of-type(odd) {
	width: 30%;
}
.accordion-v1 .panel-body div:nth-of-type(even) {
	width: 70%;
}*/
.accordion-v1 .panel-body div {
	padding: 10px 20px;
}
.accordion-v1 .panel-body div:nth-of-type(1), .accordion-v1 .panel-body div:nth-of-type(2) {
	background-color: var(--sw-color-blue);
	font-weight: 500 !important;
	color: var(--sw-color-white) !important;
}
.accordion-v1 .panel-body div:nth-of-type(2n+1) {
	border-right: 1px solid var(--sw-color-petrol);
}
.accordion-v1 .panel-body div:nth-of-type(4n+3), .accordion-v1 .panel-body div:nth-of-type(4n+4) {
	background-color: var(--sw-color-apricot);
}
.accordion-v1 .panel-body div:nth-of-type(4n+5), .accordion-v1 .panel-body div:nth-of-type(4n+6) {
	background-color: var(--sw-color-apricot);
}

.text-image-row {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.text-image-row > .fg-col:first-child > .fg-container {
	padding-right: var(--sw-text-image-row-col-offset);
}
.text-image-row > .fg-col {
	display: flex;
    align-items: center;
}
.text-image-row img:not([src$=".svg"]) {
	border-radius: var(--sw-border-radius);
}
.text-image-row img + h3 {
	padding-top: 26px;
}
.text-image-row > .fg-col:first-child {
	z-index: 2;
}
.text-image-row > .fg-col:nth-child(2) > .fg-bg:has(.fg-bg-type-color) {
	left: - var(--sw-text-image-background-offset);
	width: calc(100% + var(--sw-text-image-background-offset));
}
.text-image-row > .fg-col:has(.fg-bg-type-image) > .fg-container {
	height: 100%;
	padding-left: 0;
}
.text-image-row > .fg-col:nth-child(2):has(.fg-bg-type-image) {
	padding-right: 0;
}
.text-image-row > .fg-col:nth-child(2):has(.fg-bg-type-image) > .fg-container {
	margin-left: 0;
	padding-right: 0;
	border-radius: var(--sw-border-radius) 0 0 var(--sw-border-radius);
}
.text-image-row > .fg-col:has(.fg-bg-type-image) > .fg-container .fg-bg {
	position: relative;
}
.text-image-row .fg-paragraph ul li br + br {
	display: none;
}
.text-image-row .fg-paragraph ul li br + strong {
	margin-top: 0.7em;
	display: inline-block;
}

.quote-sign::before {
	content: url(/wp-content/uploads/zitat-gray.svg);
	width: 170px;
	height: 144px;
	display: block;
	margin-bottom: -35px;
	margin-left: -50px;
}
.quote-sign.gray-light::before {
	content: url(/wp-content/uploads/zitat-gray-light.svg);
}
.quote-sign.blue-light::before {
	content: url(/wp-content/uploads/zitat-blue-light.svg);
}
.quote-sign.text-center::before {
	margin-left: auto;
	margin-right: auto;
}


#footer a:hover {
	text-decoration: none;
}
#footer .ff-custom-form {
	padding-left: 0 !important;
}
#footer input {
	border: 1px solid #E6E3DB !important;
	font-size: 16px !important;
	height: 34px !important;
	padding: 6px 19px 5px 19px !important;
	max-width: 320px;
}
#footer .ffb-btn {
	margin-top: 18px !important;
	background-color: var(--sw-color-blue);
	padding-top: 6px !important;
	padding-bottom: 4px !important;   
    display: flex;
	justify-content: center;
	max-width: 320px;
}
#footer .ffb-btn .btn-text {
	color: var(--sw-color-white) !important;
	text-align: center;
}
#footer .alert-box-general {
	margin-top: 0 !important;
    margin-bottom: -32px;
}
#footer .alert-box-general .alert-box-body span, #footer .alert-box-general .alert-box-body p {
	font-size: 16px !important;
}
#footer form label.error {
	margin-left: 159px !important;
	margin-top: -42px !important;
	padding-bottom: 0;
}
.webagency li {
	margin: 0;	
}

ul.footer-navigation {
	margin: 0;
	list-style: none;
	overflow: hidden;
	padding: 0;
}
.footer-navigation li {
	margin-left: 0;
	margin-right: 28px;
	list-style: none;
	float: left;
}

/* fixes lightbox more than 100% width */
.cbp-popup-wrap {
	width: 100vw;
}

/* Ark Map Element
.ff-map > div {
	pointer-events: all !important;
}
*/

.offering .background-image-right {
	position: absolute;
	right: -496px;
	max-width: 794px;
	z-index: 1;
}
.offering > .fg-wrapper, .offering .fg-paragraph, .offering .fg-heading, .offering .buttons-el-wrapper {
	position: relative;
	z-index: 10;
}
.offering .fg-wrapper > img:not(.background-image-right) {
	margin-bottom: 30px;
}
.offering .display-flex-row {
	padding-top: 9px;
	padding-bottom: 54px;
}
.ff-owl-carousel::before {
	content: url(/wp-content/uploads/zitat-gray-light.svg);
	width: 110px;
    height: 94px;
    display: block;
    margin: 0 auto -46px auto;
}
.ff-owl-carousel .item h3.fg-heading {
	padding-top: 13px;
}
.owl-dot {
	padding: 0 5px;
}
.owl-dots {
	margin-top: 25px;
}

.owl-dot span, .owl-dots span {
	width: 10px;
	height: 10px;
	background: var(--sw-color-gray-light);
	border-color: var(--sw-color-gray-light);
}
.owl-dot span, .owl-dots span {
    border: 1px solid var(--sw-color-gray-light);
}
.owl-dot.active span, .owl-dots.active span {
    background: var(--sw-color-gray-blue);
	border-color: var(--sw-color-gray-blue);
	transform: none;
}
.partner-slider .ff-owl-carousel::before {
	content: "";
	width: auto;
	height: auto;
	margin: 0;
}
.partner-slider .ff-owl-carousel .owl-stage-outer {
	background-color: var(--sw-color-background-beige-light);
	border-radius: var(--sw-border-radius);
}
.partner-slider .ff-owl-carousel .item {
	
	padding: 60px 60px 72px ;
}
.partner-slider .ff-owl-carousel .owl-dots {
	margin-top: 70px;
}
.ark-accordion-custom {
	padding-top: 55px;
}
.ark-accordion-custom__item {
	border-bottom: 1px solid var(--sw-color-gray-light);
}
.ark-accordion-custom__trigger {
	display: grid;
	grid-template-columns: 221px 1fr auto 30px;
	grid-template-rows: auto auto;
	column-gap: 45px;
	padding: 4px 0;
	cursor: pointer;
	align-items: start;
}
.ark-accordion-custom__trigger .buttons-el-wrapper .ffb-button1-1, .ark-accordion-custom__content .buttons-el-wrapper .ffb-button1-1 {
	padding-top: 6px !important;
	padding-bottom: 4px !important;
}
.ark-accordion-custom > .ark-accordion-custom__item:first-of-type .ark-accordion-custom__trigger {
	padding-top: 0;
}
.ark-accordion-custom__trigger .fg-heading {
	grid-column: 1;
	grid-row: 1;
	align-self: start;
	margin-bottom: 0;
}
.ark-accordion-custom__trigger .fg-wrapper {
	grid-column: 2;
	grid-row: 1;
	align-self: start;
}
.ark-accordion-custom__trigger .fg-paragraph {
	grid-column: 2;
	grid-row: 1;
	align-self: start;
}
.ark-accordion-custom__trigger .buttons-el-wrapper {
	grid-column: 3;
    grid-row: 1;
    align-self: center;
	margin-top: -6px !important;
}
.ark-accordion-custom.three-row .ark-accordion-custom__trigger {
	grid-template-columns: 1fr auto 30px;
}
.ark-accordion-custom.three-row .ark-accordion-custom__trigger .fg-wrapper {
	grid-column: 1;
}
.ark-accordion-custom.three-row .ark-accordion-custom__trigger .buttons-el-wrapper {
	grid-column: 2;
}
.ark-accordion-custom.three-row .ark-accordion-custom__icon {
	grid-column: 3;
}

.ark-accordion-custom__trigger .buttons-el-wrapper .ffb-button1-1 {
	margin-top: 0 !important;
}
.ark-accordion-custom__trigger .fg-paragraph p {
	margin-bottom: 0;
}
.ark-accordion-custom__trigger img {
	width: 160px;
	height: auto;
	transition: opacity 0.15s ease-in;
	grid-column: 2;
	grid-row: 1 / span 2;
}
.ark-accordion-custom__icon {
    width: 28px;
    height: 28px;
    border: 2px solid var(--sw-color-blue);
    border-radius: 50%;
    position: relative;
    grid-column: 4;
    grid-row: 1 / span 2;
	justify-self: end;
	align-self: center;
	margin-top: -7px;
}

.ark-accordion-custom__icon::before,
.ark-accordion-custom__icon::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 16px;
    height: 2px;
    background: var(--sw-color-blue);
    transform: translate(-50%, -50%);
	transition: all 0.2s ease;
}

.ark-accordion-custom__icon::after {
    transform: translate(-50%, -50%) rotate(90deg);
}

.ark-accordion-custom__item.is-open .ark-accordion-custom__icon::after {
    transform: translate(-50%, -50%) rotate(0deg);
}
.ark-accordion-custom__item.is-open .ark-accordion-custom__trigger > .buttons-el-wrapper {
	display: none;	
}
.ark-accordion-custom__item.is-open .ark-accordion-custom__icon::after {
	opacity: 0;
	height: 0;
}
.ark-accordion-custom__panel {
	display: none;
}
.ark-accordion-custom__content {
	padding: 14px 0 33px;
}
.ark-accordion-custom__content .fg-paragraph + .fg-heading, .ark-accordion-custom__content .fg-heading + .fg-heading, .ark-accordion-custom__content .fg-row + .fg-heading, .ark-accordion-custom__content .fg-row + .fg-paragraph {
	margin-top: 35px;
}
.ark-accordion-custom__content .fg-heading {
	margin-bottom: 8px;
}
/* .ark-accordion-custom__content { */
	/* display: grid; */
	/* grid-template-columns: 221px 1fr auto; */
	/* grid-template-rows: auto auto; */
	/* column-gap: 45px; */
	/* padding: 4px 0; */
	/* align-items: start; */
/* } */
.ark-accordion-custom__content .ff-slider {
	float: right;
	margin-right: 67px;
}
.ark-accordion-custom__content .ff-slider .fg-image {
	border-radius: var(--sw-border-radius);
}
.ark-accordion-custom__content .ff-slider .carousel-control.right {
    right: -48px;
}
.ark-accordion-custom__content .ff-slider  .carousel-control.left {
    left: -48px;
}
.ark-accordion-custom__content .ff-slider .carousel-control-arrows-v1 {
	background: transparent;
	font-size: 26px;
    color: var(--sw-color-blue);
}

/* Tablet (SM) */
@media screen and (min-width: 768px) {
	.column-left-indented-to-content > .fg-container {
		padding-right: 15px;
	}
	.column-right-indented-to-content > .fg-container {
		padding-left: 15px;
	}
	.webagency {
		float: right;
	}

	.text-image-row > .fg-col:first-child:has(.fg-bg-type-image) {
		padding-left: 0;
		padding-right: 0;
	}
	.text-image-row > .fg-col:first-child:has(.fg-bg-type-image) > .fg-container {
		border-radius: 0 var(--sw-border-radius) var(--sw-border-radius) 0;
	}

	.custom-map #combinedMap {
		/* min-height: 300px; */
	}
	.fg-wrapper > .fg-row:has(.fg-paragraph p) + .fg-row:has(.fg-paragraph ul) {
		padding-top: 60px;
	}
	.ark-accordion-custom__item + .ark-accordion-custom__item {
		padding-top: 15px !important;
	}
	#footer .ffb-btn {
		width: 320px;	    
	}
}

/* Laptop (MD) */
@media screen and (min-width: 992px) {
	.custom-map #combinedMap {
		/* min-height: 325px; */
	}
	.ark-accordion-custom__trigger {
		grid-template-columns: 193px 1fr auto 30px;
	}
	.ark-accordion-custom:not(.three-row) .ark-accordion-custom__content {
		margin-left: -11px;
	}
	.ark-accordion-custom .ark-accordion-custom__content .buttons-el-wrapper {
		margin-right: 75px;
	}
	.fg-col:has(.ff-custom-form), .fg-col:has(.wpcf7) {
		border-left: 1px solid var(--sw-color-blue-form-border) !important;
	}		
	#footer .fg-col:has(.ff-custom-form), #footer .fg-col:has(.wpcf7) {
		border-left: none !important;
	}
	
	.text-image-row:has(> .fg-col:nth-child(2) .fg-bg-type-image):not(.header-large) > .fg-col:first-child > .fg-container:not(:has(img)), .text-image-row:has(> .fg-col:first-child .fg-bg-type-image):not(.header-large) > .fg-col:nth-child(2) > .fg-container:not(:has(img)) {
		margin-top: 45px;
		margin-bottom: 45px;
	}
	.wpcf7 {
		padding-left: 80px;
	}
}

/* Desktop (LG) */
@media screen and (min-width: 1200px) {
	.text-image-row:has(.col-lg-4 .fg-bg-type-image) > .fg-col:first-child > .fg-container, .text-image-row:has(.col-lg-5 .fg-bg-type-image) > .fg-col:first-child > .fg-container {
		padding-right: calc(var(--sw-text-image-row-col-offset) / 2);
	}
	.text-image-row:has(.col-lg-4 .fg-bg-type-image) > .fg-col:nth-child(2) > .fg-container, .text-image-row:has(.col-lg-5 .fg-bg-type-image) > .fg-col:nth-child(2) > .fg-container {
		padding-left: calc(var(--sw-text-image-row-col-offset) / 2);
	}
	.fg-wrapper > .fg-row:has(.fg-paragraph p) + .fg-row:has(.fg-paragraph ul) {
		padding-top: 90px;
	}
	.fg-paragraph > ul, .ff-richtext ul:not(.woocommerce-error), .ff-richtext ol {
		padding-left: 30px;
	}
	.fg-paragraph > ul > li {
		padding-left: 24px !important;
	}
	.ark-accordion-custom__content .fg-paragraph > ul > li {
		padding-left: 12px !important;
	}
	.ark-accordion-custom__trigger {
		grid-template-columns: 221px 1fr auto 30px;
	}
	.ark-accordion-custom:not(.three-row) .ark-accordion-custom__content {
		margin-left: -40px;
	}
	.ark-accordion-custom__item + .ark-accordion-custom__item {
		padding-top: 15px !important;
	}
	.wpcf7 {
		padding-left: 135px;
	}
}

/* Extra Large Additional Media Query  */
@media screen and (min-width: 1650px) {
	:root {
		--sw-text-image-background-offset: 430px;
		--sw-text-image-row-col-offset: 100px;
	}
    .container {
		width: 1370px;
	}

	.column-left-indented-to-content.col-lg-4 {
		padding-left: calc((100% - 1370px) / 2);
		width: calc(456.66px + ((100% - 1370px) / 2));
		padding-right: 0;
	}
	.column-left-indented-to-content.col-lg-5 {
		padding-left: calc((100% - 1370px) / 2);
		width: calc(570.83px + (100% - 1370px) / 2);
	}
	.column-left-indented-to-content.col-lg-6 {
		padding-left: calc((100% - 1370px) / 2);
		width: calc(685px + ((100% - 1370px) / 2));
		padding-right: 0;
	}
	.column-left-indented-to-content.col-lg-7 {
		padding-left: calc((100% - 1370px) / 2);
		width: calc(799.16px + (100% - 1370px) / 2);
	}
	.column-left-indented-to-content.col-lg-8 {
		padding-left: calc((100% - 1370px) / 2);
		width: calc(913.33px + ((100% - 1370px) / 2));
		padding-right: 0;
	}
	.column-right-indented-to-content.col-lg-4 {
		padding-right: calc((100% - 1370px) / 2);
		width: calc(456.66px + (100% - 1370px) / 2);
	}
	.column-right-indented-to-content.col-lg-5 {
		padding-right: calc((100% - 1370px) / 2);
		width: calc(570.83px + (100% - 1370px) / 2);
	}
	.column-right-indented-to-content.col-lg-6 {
		padding-right: calc((100% - 1370px) / 2);
		width: calc(685px + (100% - 1370px) / 2);
	}
	.column-right-indented-to-content.col-lg-7 {
		padding-right: calc((100% - 1370px) / 2);
		width: calc(799.16px + (100% - 1370px) / 2);
	}
	.column-right-indented-to-content.col-lg-8 {
		padding-right: calc((100% - 1370px) / 2);
		width: calc(913.33px + (100% - 1370px) / 2);
	}

	.image-float-left {
		width: 28% !important;
	}
	.image-float-right {
		width: 28% !important;
	}
	.ark-accordion-custom:not(.three-row) .ark-accordion-custom__content {
		margin-left: -107px;
	}
}

/* Extra Large Additional Media Query  */
@media screen and (min-width: 2000px) {	
	.header-large {
		height: 50vw;
		max-height: 1000px;
	}
}

/* Laptop (MD)  */
@media screen and (max-width: 1199px) {
	:root {
		--sw-text-image-background-offset: 280px;
		--sw-text-image-row-col-offset: 30px;
	}
	
	.header-large {
		height: 60vw;
		min-height: 650px;
	}
	.quote-sign::before {
		width: 145px;
		height: 120px;
	}
	
	.column-left-indented-to-content.col-md-4 {
		padding-left: calc((100% - 970px) / 2);
		width: calc(323.33px + (100% - 970px) / 2);
	}
	.column-left-indented-to-content.col-md-5 {
		padding-left: calc((100% - 970px) / 2);
		width: calc(404.16px + (100% - 970px) / 2);
	}
	.column-left-indented-to-content.col-md-6 {
		padding-left: calc((100% - 970px) / 2);
		width: calc(485px + (100% - 970px) / 2);
	}
	.column-left-indented-to-content.col-md-7 {
		padding-left: calc((100% - 970px) / 2);
		width: calc(565.83px + (100% - 970px) / 2);
	}
	.column-left-indented-to-content.col-md-8 {
		padding-left: calc((100% - 970px) / 2);
		width: calc(646.66px + (100% - 970px) / 2);
	}
	.column-left-indented-to-content.col-md-12 {
		padding-left: 0;
		width: 100%;
	}
	.column-right-indented-to-content.col-md-4 {
		padding-right: calc((100% - 970px) / 2);
		width: calc(323.33px + (100% - 970px) / 2);
	}
	.column-right-indented-to-content.col-md-5 {
		padding-right: calc((100% - 970px) / 2);
		width: calc(404.16px + (100% - 970px) / 2);
	}
	.column-right-indented-to-content.col-md-6 {
		padding-right: calc((100% - 970px) / 2);
		width: calc(485px + (100% - 970px) / 2);
	}
	.column-right-indented-to-content.col-md-7 {
		padding-right: calc((100% - 970px) / 2);
		width: calc(565.83px + (100% - 970px) / 2);
	}
	.column-right-indented-to-content.col-md-8 {
		padding-right: calc((100% - 970px) / 2);
		width: calc(646.66px + (100% - 970px) / 2);
	}
	.column-right-indented-to-content.col-md-12 {
		padding-right: 0;
		width: 100%;
	}
	
	.text-image-row > .fg-col:nth-child(2):has(.fg-bg-type-image) > .fg-container {
		padding-left: var(--sw-text-image-row-col-offset);
	}
	.ark-accordion-custom__trigger .buttons-el-wrapper {
		margin-top: 0 !important;
	}
	.ark-accordion-custom__icon {		
		margin-top: -2px;
	}
}

/* Portfolio Medium  */
@media screen and (max-width: 1099px) {

}

/* Tablet (SM) */
@media screen and (max-width: 991px) {
	:root {
		--sw-paragaph-margin-bottom: 25px;
		--sw-li-margin-bottom: 35px;
		--sw-text-image-row-col-offset: 15px;
		--sw-text-image-background-offset: 200px;
		--sw-border-radius: 30px;
		--sw-form-font-size: 19px;
	}
		
	/*
	.mfp-iframe-holder .mfp-content {
		max-width: none;
		min-height: 100vh;
	}
	*/
	.column-left-indented-to-content.col-sm-4 {
		padding-left: calc((100% - 750px) / 2);
		width: calc(250px + (100% - 750px) / 2);
	}
	.column-left-indented-to-content.col-sm-6 {
		padding-left: calc((100% - 750px) / 2);
		width: calc(375px + (100% - 750px) / 2);
	}
	.column-left-indented-to-content.col-sm-8 {
		padding-left: calc((100% - 750px) / 2);
		width: calc(500px + (100% - 750px) / 2);
	}
	.column-left-indented-to-content.col-sm-12 {
		padding-left: 0;
		width: 100%;
	}
	.column-right-indented-to-content.col-sm-4 {
		padding-right: calc((100% - 750px) / 2);
		width: calc(250px + (100% - 750px) / 2);
	}
	.column-right-indented-to-content.col-sm-6 {
		padding-right: calc((100% - 750px) / 2);
		width: calc(375px + (100% - 750px) / 2);
	}
	.column-right-indented-to-content.col-sm-8 {
		padding-right: calc((100% - 750px) / 2);
		width: calc(500px + (100% - 750px) / 2);
	}
	.column-right-indented-to-content.col-sm-12 {
		padding-right: 0;
		width: 100%;
	}
	.ark-accordion-custom__trigger .fg-wrapper {
		grid-column: 1;
		grid-row: 2;
		margin: 10px 0 5px;
	}
	.ark-accordion-custom.three-row .ark-accordion-custom__trigger .fg-wrapper {
		margin-top: 0;
	}
	.ark-accordion-custom__trigger {
		grid-template-columns: 1fr auto auto 30px;
		column-gap: 15px;
	}
	.ark-accordion-custom__trigger .buttons-el-wrapper {
		grid-row: 2
	}
	.ark-accordion-custom .ark-accordion-custom__content .buttons-el-wrapper {
        margin-right: 45px;
    }
	.ark-accordion-custom__icon {
		margin-top: 23px;
	}
	.ark-accordion-custom.three-row .ark-accordion-custom__icon {
		margin-top: 0;
	}
	.partner-slider .ff-owl-carousel .item .fg-row .fg-col:first-child {
		padding-bottom: 25px;
	}
	.form-control, .wpcf7 input.wpcf7-text, .wpcf7 input.wpcf7-email, .wpcf7 input.wpcf7-tel, .wpcf7 textarea.wpcf7-textarea, .wpcf7 select.wpcf7-select {
		padding: 6px 20px;
	}
	.ff-form-input-select.form-control, .wpcf7 select.wpcf7-select {
		background-size: 19px 12px;
	}
	.partner-slider .ff-owl-carousel .owl-dots {
		margin-top: 50px;
	}
	form label.error {
		margin-top: -47px !important;
		margin-bottom: 13px !important;
	}
}

/* Portfolio Small  */
@media screen and (max-width: 799px) {

}

/* Phone (XS) */
@media screen and (max-width: 767px) {
	:root {
		--sw-text-image-row-col-offset: 30px;
	}
	.image-fullwidth {
		/* min-height: 70vw; */
	}

	.column-left-indented-to-content.col-xs-4 {
		width: 33.33%;
	}
	.column-left-indented-to-content.col-xs-6 {
		width: 50%;
	}
	.column-left-indented-to-content.col-xs-8 {
		width: 66.66%;
	}
	.column-right-indented-to-content.col-xs-4 {
		width: 33.33%;
	}
	.column-right-indented-to-content.col-xs-6 {
		width: 50%;
	}
	.column-right-indented-to-content.col-xs-8 {
		width: 66.6%;
	}
	.column-left-indented-to-content.col-xs-12, .column-right-indented-to-content.col-xs-12 {
		padding-left: 0;
		padding-right: 0;
		width: 100%;
	}
	.header-large.text-image-row .fg-container:has(.quote-sign) {
		max-width: 540px;
	}
	.text-image-row > .fg-col:nth-child(2):has(.fg-bg-type-image) > .fg-container {
		margin: 0 30px;
	}
	.header-large {
		padding-top: 0;
		padding-bottom: 0;
		height: auto;
		min-height: auto;
		max-height: none;
		display: flex;
	}
	.header-large > .fg-col:has(h1) {
		min-height: 550px;
		display: flex;
		align-items: center;
		padding-top: 70px;
		padding-bottom: 20px;
	}
	.header-large > .fg-col:first-child:has(.fg-bg-type-image) {
		order: +1;
	}
	.text-image-row img:not([src$=".svg"]) {
		aspect-ratio: 4 / 5.7;
		object-fit: cover;
		object-position: center center;
	}
	/* .text-image-row > .fg-col:first-child:has(img:not([src$=".svg"])) > .fg-container, .text-image-row > .fg-col:nth-child(2) > .fg-container { */
		/* padding-top: 0; */
	/* } */
	/* .text-image-row > .fg-col > .fg-container { */
		/* padding-top: 0; */
	/* } */
	.text-image-row > .fg-col:nth-child(2) > .fg-bg:has(.fg-bg-type-color) {
		left: 0;
		width: 100%;
		top: -70vw;
		height: calc(100% + 70vw);
	}
	.text-image-row:has(> .fg-col:nth-child(2) .fg-bg-type-color) > .fg-col:first-child > .fg-container, .text-image-row > .fg-col:nth-child(2):has(img:not([src$=".svg"])) > .fg-container {
		padding-top: 0;
	}
	.text-image-row > .fg-col:first-child:has(img:not([src$=".svg"])) > .fg-container {
		padding-bottom: 0;
	}
	.text-image-row > .fg-col:first-child > .fg-container:has(.fg-bg-type-image) {
		padding-left: var(--sw-text-image-row-col-offset);
	}
	.text-image-row > .fg-col:nth-child(2):has(.fg-bg-type-image) > .fg-container, .header-large.text-image-row > .fg-col:first-child > .fg-container:has(.fg-bg-type-image)  {
        padding-left: 0;
    }
	.text-image-row > .fg-col > .fg-container > .fg-bg:has(.fg-bg-type-image) {
		width: calc(100vw - 60px);
        aspect-ratio: 4 / 5.7;
        border-radius: var(--sw-border-radius);
        height: 100%;
	}
	.text-image-row:not(.header-large) > .fg-col:nth-child(2):has(.fg-bg-type-image) {
		order: -1;
		padding-top: 110px;
	}
	.text-image-row > .fg-col:nth-child(2):has(.fg-bg-type-image) > .fg-container {
		padding-top: 0;
		padding-bottom: 0;
	}
	.header-large.text-image-row > .fg-col > .fg-container.has-fg-bg {
		margin: 0;
	}
	.header-large.text-image-row > .fg-col > .fg-container > .fg-bg:has(.fg-bg-type-image) {
		aspect-ratio: 4 / 3;
		width: 100vw;
		border-radius: 0;
	}

	.webagency {
		float: left;
	}	

	.custom-map #combinedMap {
		/* min-height: 54vw; */
	}
	.offering .col-sm-4 {
		margin-bottom: 30px;
	}
	.fg-wrapper > .fg-row:has(.fg-paragraph p) + .fg-row:has(.fg-paragraph ul) {
		padding-top: 40px;
	}
	.ark-accordion-custom__item + .ark-accordion-custom__item {
        padding-top: 15px !important;
    }
	.ark-accordion-custom__trigger .buttons-el-wrapper {
		grid-column: 1;
		grid-row: 3;
		margin-bottom: 20px;
	}
	.ark-accordion-custom__content .fg-paragraph > ul > li {
		padding-left: 3px !important;
	}
	.ark-accordion-custom__content .fg-row + .fg-row {
		padding-top: 20px;
	}
	.ark-accordion-custom.three-row .ark-accordion-custom__trigger {
		grid-template-columns: auto auto 30px;
	}
	.ark-accordion-custom.three-row .ark-accordion-custom__trigger .buttons-el-wrapper {
		grid-column: 1;
		grid-row: 3;
	}
	.quote-sign::before {
		margin-left: -15px;
		width: 115px;
		height: 100px;
	}
	.partner-slider .ff-owl-carousel .item {
		padding: 30px 30px 42px;
	}
	.fg-col:has(> .ff-custom-form), .fg-col:has(> .wpcf7) {
		padding-top: 0;
		margin-top: 0;
	}
	.fg-col:has(.ff-custom-form)::before, .fg-col:has(.wpcf7)::before {
		content: '';
		position: absolute;
		top: 0;
		left: 15px;
		right: 15px;
		/* height: 1px; */
		/* background: var(--sw-color-blue-form-border); */
	}
	#footer .fg-col:has(> .ff-custom-form), #footer .fg-col:has(> .wpcf7) {
		padding-top: 0;
	}
	#footer .fg-col:has(.ff-custom-form)::before, #footer .fg-col:has(.wpcf7)::before {
		content: none;
	}
	form label.error {
	   margin-left: 150px !important;
	}
}

/* Portfolio Extra Small  */
@media screen and (max-width: 579px) {
	.ff-portfolio-grid .cbp-item {
		margin-right: 0;
	}
}

/* Extra Small 1 Additional Media Query  */
@media screen and (max-width: 480px) {
	.image-float-left, .image-float-right {
		width: 100% !important;
		margin: 0 0 20px !important;
	}
	#footer .col-xs-12 {
		padding-left: 0;
	}
	.ark-accordion-custom__trigger {
		column-gap: 7px;
	}
	.header-large .fg-container {
		padding: 30px;
	}
}

/* Extra Small 2 Additional Media Query  */
@media screen and (max-width: 400px) {
	#footer .fg-row.display-flex-row-center {
		flex-direction: column;
		align-items: start;
	}
	#footer .fg-row.display-flex-row-center > .fg-col {
		width: auto;
	}
	#footer .col-xs-push-2 {
		left: 0;
		width: auto;
	}
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
	.offering-wrapper .fg-heading {
		min-height: 85px;
		display: flex;
		align-items: center;
		flex-wrap: wrap;
	}
}
@media screen and (min-width: 768px) and (max-width: 991px) {
	.text-image-row .fg-paragraph ul li br + strong {
		margin-top: 0;
	}
	.offering-wrapper .fg-heading {
		min-height: 67px;
	}
}
		
/* Extra Small 3 Additional Media Query  */
@media screen and (min-width: 580px) and (max-width: 991px) {

}

/* Extra Small 4 Additional Media Query  */
@media screen and (min-width: 550px) and (max-width: 767px) {
	.flex-basis-50 {
		flex-basis: 50%;
	}
}

/* effects */
@-webkit-keyframes fadeInUpSPWE {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 12px, 0);
    transform: translate3d(0, 12px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInUpSPWE {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 12px, 0);
    transform: translate3d(0, 12px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUpSPWE;
  animation-name: fadeInUpSPWE;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}