/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Oct 28 2025 | 16:48:59 */
/* GLOBALS */
:root {
	--color-p1: #99cc33;
	--color-p2: #87a54b;
	--color-p3: #62733f;
	--color-p4: #46503c;
	--color-p5: #32322d;

	--color-s1: #b6f23d;
	--color-s1-inverted: #490dc2;
	--color-s2: #f2aa24;
	--color-s3: #808080;

	--color-bd1: #ffffe6;
	--color-bd2: #ced9ad;
	--color-bd3: #736b62;
}
.mh-70 {
min-height: 70px;
}
*:focus {
	border: 1px solid var(--color-s2) !important;
}
/* TYPOGRAFIE */
h1, h2, h3, h4 {
	font-family: Montserrat !important;
}
p, a, li {
	font-family: Mulish !important;
}
.wp-block-button:not(.uagb-ifb-button-wrapper) .wp-block-button__link, .wp-block-search .wp-block-search__button, body .wp-block-file .wp-block-file__button {
	text-transform: none;
}
.uagb-button__wrapper {
	margin-top: 0 !important;
}
h1 *, .hero-font{
	color: white !important;
	font-size: 3.5vw !important;
}
h1 #typewriter {
	color: var(--color-p1) !important;
}
/* NAVIGATION */
.site-logo-img .transparent-custom-logo img, .ast-theme-transparent-header .site-logo-img img {
	filter: none;
}
@media (prefers-reduced-motion: reduce) {
	* {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}
.ast-header-break-point .main-header-menu {
	background-color: transparent;
}
#ast-mobile-header {
	display: block !important;
}
#ast-desktop-header {
	display: none !important;
}
#ast-mobile-header {
	width: 100%;
}
#ast-hf-mobile-menu {
	width: 20vw;
	display: flex;
	flex-direction: column;
	gap: 40px;
}
.ast-builder-menu-mobile.ast-builder-menu{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 100vh;
}
.ast-theme-transparent-header .main-header-bar {
	background: none;
}
header .menu-item a {
	text-decoration: none;
	color: #FFF;
	font-weight: 600;
	transition: color 0.5s;
	text-transform: uppercase;
}

header .menu-item {
	transition: all 0.5s ;
}
header .menu-item a:hover {
	color: var(--color-p1) !important;
	font-size: 1.3rem;
	padding-top: 10px;
	padding-bottom: 10px;
	font-weight: bold;
	font-weight: bold;
}
#masthead {
	display: flex;
	justify-content: space-between;
	padding: 0px 10%;
	position: fixed !important;
	width: 100%;
	top: 0px;
	background: transparent;
	transition: all 0.5s;
}
#masthead.is-sticky {
	background: #46503c;
	height: 100px;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-color: var(--color-p1);
}
#masthead .custom-logo-link img {
	transition: all 0.5s;
}
#masthead.is-sticky .custom-logo-link img {
	max-width: 70px !important;
}
#masthead .custom-logo-link img {
	max-width: 100px !important;
	width: 100px !important;
}
.ast-mobile-header-content {
	position: absolute;
	right: -50vw;
	width: 50vw;
	top: 0;
	bottom: 0;
	height: 100vh;
	transition: all 0.5s ease;
	display: block !important;
}
.header-main-layout-1 .ast-main-header-bar-alignment {
	margin: unset;
}
.ast-main-header-nav-open .ast-mobile-header-content {
	right:0;
}
.ast-mobile-header-wrap .ast-mobile-header-content, .ast-desktop-header-content {
	background: #000000d1;
}
/* HAMBURGER ICON */


#hamburger-icon:hover .line-1 {
	width: 30px;
}

#hamburger-icon:hover .line-2 {
	width: 40px;
}

#hamburger-icon:hover .line-3 {
	width: 20px;
}
.ast-theme-transparent-header .ast-builder-menu .main-header-menu li a {
	color: white !important;
}
.ast-theme-transparent-header .ast-builder-menu .main-header-menu li a:hover {
	color: var(--color-p1) !important;
}
@media (min-width: 1200px) {
	.ast-mobile-header-content {
	right: -20vw;
	width: 20vw;
	}
}

@media (max-width: 768px) {
	.ast-theme-transparent-header .main-header-bar, .ast-theme-transparent-header.ast-header-break-point .main-header-bar-wrap .main-header-menu, .ast-theme-transparent-header.ast-header-break-point .main-header-bar-wrap .main-header-bar, .ast-theme-transparent-header.ast-header-break-point .ast-mobile-header-wrap .main-header-bar {
		background-color: transparent;
	}
	.ast-mobile-header-content {
		width: 100vw;
		right: -100vw;
	}
	#ast-hf-mobile-menu {
		width: 100vw;
		align-content: center;
		justify-content: center;
		text-align: center;
		height: 100vh;
	}
	.ast-theme-transparent-header .ast-builder-menu .main-header-menu {
		color: white !important;
		background: none !important;
	}
    .astra-logo-svg:not(.sticky-custom-logo .astra-logo-svg,.transparent-custom-logo .astra-logo-svg,.advanced-header-logo .astra-logo-svg) {
        height: 100% !important;
    }
}
/* CUSTOM CSS */
.wp-block-button:not(.uagb-ifb-button-wrapper) {
	position: relative;
	overflow: hidden;
	border-radius: 5px;
}
.wp-block-button:not(.uagb-ifb-button-wrapper) .wp-block-button__link {
	z-index:2;
	position: relative;
	border-radius: 5px;
}
.wp-block-button:not(.uagb-ifb-button-wrapper):after {
	content: "";
	width: 0%;
	height: 0%;
	opacity: 0;
	line-height: 40px;
	border-radius: 50%;
	background: #87a54b;
	position: absolute;
	transition: all .5s ease-Out;
	top: 20px;
	left: 70px;
	z-index:1;
}
.wp-block-button:not(.uagb-ifb-button-wrapper):hover:after {
	width: 200%;
	height: 500%;
	opacity: 1;
	top: -70px;
	left: -70px;
}
.wp-block-button:not(.uagb-ifb-button-wrapper):hover .wp-block-button__link {
	color: white !important;
}
@media (max-width: 768px) {
	.hero-font, h1 #typewriter {
		font-size: 2rem !important;
	}
}
@font-face {
	font-family: Mulish;
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: url("/wp-content/uploads/fonts/Mulish-Light.woff2") format("woff2");
}

@font-face {
	font-family: Mulish;
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("/wp-content/uploads/fonts/Mulish-Regular.woff2") format("woff2");
}

@font-face {
	font-family: Mulish;
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url("/wp-content/uploads/fonts/Mulish-Medium.woff2") format("woff2");
}

@font-face {
	font-family: Mulish;
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url("/wp-content/uploads/fonts/Mulish-Bold.woff2") format("woff2");
}

@font-face {
	font-family: Mulish;
	font-style: normal;
	font-weight: 800;
	font-display: swap;
	src: url("/fonts/Mulish-ExtraBold.woff2") format("woff2");
}

@font-face {
	font-family: Montserrat;
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: url("/wp-content/uploads/fonts/MontserratAlternates-Light.woff2") format("woff2");
}

@font-face {
	font-family: Montserrat;
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("/wp-content/uploads/fonts/MontserratAlternates-Regular.woff2") format("woff2");
}

@font-face {
	font-family: Montserrat;
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url("/wp-content/uploads/fonts/MontserratAlternates-Medium.woff2") format("woff2");
}

@font-face {
	font-family: Montserrat;
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url("/wp-content/uploads/fonts/MontserratAlternates-SemiBold.woff2") format("woff2");
}

/* Page Loader */
@keyframes fadeInOut {
	0% {
		opacity: 1;
	}
	16% {
		opacity: 1;
	}
	84% {
		opacity: 1;
	}
	100% {
		opacity: 0;
		display: none;
	}
}
.pageloader .start-img {
	height: 200px;
	width: 200px;
	position: absolute;
	left: 50%;
	top: 50%;
	background-image: url("/wp-content/uploads/2025/05/FAIR-Software-Logo-RGB-Negativ-ohneRahmen.svg");
	background-repeat: no-repeat;
}
.pageloader {
	display: none !important;

	position: fixed;
	top:0;
	right:0;
	bottom: 0;
	left:0;
	-webkit-animation: fadeInOut 4s;
	animation: fadeInOut 4s;
	animation-fill-mode: forwards;
	z-index: 3000;
}
.overflow-show {
	overflow: visible !important;
}
.hero-teaser {
	width: 100vw;
	height: 100vh;
	background-image: url(/wp-content/uploads/2025/04/hero-bg.png);
	background-size: cover;
	background-repeat: no-repeat;
}
.wp-block-list {max-width: 85%;}
.leistungs-box .wp-block-image {
	min-width: 200px !important;
}
.leistungs-box .wp-block-image img {
	width: 100% !important;
	max-height:450px;
}
.technology-icon {
	height: 40px !important;
	width: 40px;
	object-fit: contain;
}
.technologien * {
	color: white;
}
@media screen and (max-width: 767px) {
	.leistungs-box * {
		text-align: center;
	}
	.leistungs-box .wp-block-image img {
		max-height: 250px;
		max-width: 150px;
	}
}
.bg-blur {
	backdrop-filter: blur(8px);
}
/* NETWORK BOXES */
.img-fix img {
	object-fit: cover;
	max-height: 100px;
}
/* PORTFOLIO */
.portfolio-home-list {
	margin-bottom: 50px;
}
.portfolio-home-list .uagb-post__inner-wrap, .portfolio-home-list .uagb-post__inner-wrap .uagb-post__image a, .portfolio-list .uagb-post__inner-wrap, .portfolio-list .uagb-post__image {
	overflow: visible !important;
}
.portfolio-home-list .uagb-post__title {
	min-height: 70px;
}
.portfolio-home-list .uagb-post__excerpt {
	min-height: 105px;
}
.portfolio-home-list .uagb-post__image {
	overflow: visible;
	height: 150px;
}
.portfolio-home-list .uagb-post__image img, .portfolio-list .uagb-post__image img {
	margin-top: -20%;
}
.portfolio-list .uagb-post__image img {
	max-height: 250px;
}
.portfolio-list article {
	border-radius: 25px;
	height: 100%;
	margin-top: 130px;
}
.portfolio-list .uagb-post__excerpt {
	min-height: 130px !important;
}
.portfolio-list article .uagb-post__text {
	min-height: 65px;
}
.portfolio-list.uagb-post__items {
	margin-left: 20px !important;
	margin-right: 20px !important;
}
.portfolio-list article h4 {
	min-height: 65px;
}
.kundenlogo {
	max-width: 200px;
}
.feedback-box {
	height: 100%;
}
.network-img img {
	min-height: 80px;
}
.ast-blog-layout-5-grid .ast-blog-featured-section img {
	object-fit: contain;
	max-height: 230px;
}
.wp-block-uagb-separator {
	width: 80%;
	padding: 10px 0;
}
.contact-box:hover {
	box-shadow: 0px 0px 40px 0px #87a54bb5;
}
.team-img img {
	max-height: 270px;
}
/* PORTFOLIO */
.portfolio-template-default main .navigation.post-navigation .nav-previous a {
	width: 100%;
}
.portfolio-template-default main .navigation.post-navigation .nav-previous a {
	position: relative;
	color: transparent; /* Text unsichtbar machen */
}
.portfolio-template-default main .navigation.post-navigation a span {
	color: var(--color-p4);
}
.portfolio-template-default main .navigation.post-navigation a:hover span {
	color: var(--color-p1)!important;
}
.portfolio-template-default main .navigation.post-navigation .nav-previous a::after {
	content: "Vorheriges Projekt";
	position: absolute;
	left: 20px;
	top: 0;
	color: var(--color-p4);
}

.portfolio-template-default main .navigation.post-navigation .nav-next a {
	position: relative;
	color: transparent; /* Text unsichtbar machen */
}

.portfolio-template-default main .navigation.post-navigation .nav-next a::after {
	content: "Nächstes Projekt";
	position: absolute;
	left: 0;
	top: 0;
	color: var(--color-p4);
}
.portfolio-template-default main .navigation.post-navigation .nav-next a:hover::after, .portfolio-template-default main .navigation.post-navigation .nav-previous a:hover::after {
	color: var(--color-p1);
}
.portfolio-template-default .portfolio .pf-facts img {
	max-height: 100px;
}
.portfolio-grid article {
	overflow: visible !important;
	margin-top: 30px;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
}
.portfolio-grid article a {
	overflow: visible !important;
}
.portfolio-grid .uagb-post__title {
	min-height: 65px;
}
.portfolio-grid article img {
	max-height: 200px;
	margin-top: -30px;
}
.portfolio-grid article .uagb-post__excerpt {
	min-height: 80px;
}
.uagb-post__comment {
	display: none !important;
}
.uagb-post-grid .uagb-post__author:not(:last-child)::after, .uagb-post-grid .uagb-post__date:not(:last-child)::after, .uagb-post-grid .uagb-post__comment:not(:last-child)::after {
	content: "";
}
/* BLOG */
.post-template-default.single-post .entry-header {
	display: none;
}
.uagb-post__taxonomy {
	hyphens: auto;
}
.blog-grid article {
	overflow: visible !important;
	margin-top: 30px;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
}
.blog-grid article a {
	overflow: visible !important;
}
.blog-grid .uagb-post__title {
	min-height: 65px;
}
.blog-grid img {
	border-radius: 15px 15px 0 0;
}
.blog-grid article img {
	max-height: 200px;
	margin-top: -30px;
}
.blog-grid article .uagb-post__excerpt {
	min-height: 80px;
}

.blog-image-vh, .blog-image-vh .wp-block-uagb-image__figure img {
	height: 100% !important;
}
@media screen and (max-width: 767px) {
	.blog-image-vh, .blog-image-vh .wp-block-uagb-image__figure img {
		height: 85vw !important;
	}
}
.video-br video {
	border-radius: 15px;
	max-height: 640px;
}
.height-fix {
	width: unset;
	height: 100%;
}
.height-fix-img, .height-fix-img img {
	width: unset !important;
	height: 100% !important;
}
/* ACCORDION */
.accordion-list {
	display: flex;
	flex-direction: column;
	gap: 30px;
}
.accordion-list .wp-block-uagb-faq-child {
	background: white;
	border-radius: 15px;
	box-shadow: 0px 0px 40px 0px rgba(36, 42, 86, 0.15);
}
footer {
	border-top: 1px solid var(--color-p1);
}
.kundenstimmen figure img {
	filter: grayscale(1);
}
.kundenstimmen .wp-block-uagb-container.aos-animate:hover figure img, .kundenstimmen .wp-block-uagb-container.aos-animate a:focus figure img {
	filter: grayscale(0) !important;
}
/* TEAM MODAL */
body.hide-scroll {
	overflow: visible !important;
}
.uagb-modal-popup.active {
	background: none !important;
}
.uagb-modal-popup .teamModal .uagb-modal-popup-wrap {
	width: 27vw;
}
.TeamWrap.uagb-modal-popup .uagb-modal-popup .teamModal.left .uagb-modal-popup-wrap {
	justify-content: flex-start;
	left: 5vw;
}
.TeamWrap.uagb-modal-popup .teamModal.right .uagb-modal-popup-wrap {
	right: 5vw;
	justify-content: flex-end;
}
/* Overlay with smooth blur + dark tone */
.popup-overlay {
	position: relative;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 1000;
	margin-top: 20px;
}
.popup-overlay.left {
	margin-left: 20px;
	justify-content: flex-start;
}
.popup-overlay.right {
	margin-right: 20px;
	justify-content: flex-end;
}

/* Neon-glass popup box */
#TeamWrapBG {
	position: relative;
}
#TeamWrapBG .popupwindow-wrap {
	position: absolute;
	top:0;
	z-index: 1;
}
.popup-box {
	border: 1px solid var(--color-p1);
	background: rgba(70, 80, 60, 0.80);
	backdrop-filter: blur(5px);
	border-radius: 16px;
	max-width: 30vw;
	width: 100%;
	padding: 40px 30px;
	position: relative;
	animation: fadeInUp 0.4s ease;
	box-shadow: 0 0 30px rgb(0 0 0 / 94%);
	text-align: center;
}
.popup-box * {
	color: #FFF !important;
}
/* Close button styled with glow */
.close-popup {
	position: absolute;
	top: 12px;
	right: 16px;
	background: none;
	border: none;
	font-size: 26px;
	color: #2F3B40;
	cursor: pointer;
}

/* Popup title with neon glow */
.popup-title {
	font-size: 2rem;
	color: #2F3B40;
	margin-bottom: 15px;
	letter-spacing: 1px;
}

/* Popup content with slight opacity */
.popup-content {
	font-size: 1.1rem;
	line-height: 1.6;
	color: #2F3B40;
}

/* Button to trigger popup */
.trigger-popup .wp-block-button {
	background: white;
}
/* Fade-in animation */
@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(40px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* Z-index wrapper */
.site-popups {
	position: relative;
	z-index: 999;
}
#TeamWrapBG {
	transition: all 0.5s ease;
}
@media screen and (max-width: 767px) {
	#TeamWrapBG {
		justify-content: flex-end;
	}
	#TeamWrapBG .teamModal {
		min-height: unset !important;
	}
	#TeamWrapBG .teamModal .trigger-popup {
		justify-content: center !important;
	}
	.popup-box {
		max-width: 90vw;
	}
}
.activeL {
	background-image: url("/wp-content/uploads/2025/08/Fair-Software-Teambild-Leistungen-Teaser-Chris.jpg") !important;
}
.activeR {
	background-image: url("/wp-content/uploads/2025/08/Fair-Software-Teambild-Leistungen-Teaser-Bine.jpg") !important;
}
/* FORMULAR */
form .box-shadow {
	padding: 10px;
    border-radius: 15px;
    box-shadow: 0px 16px 26px rgba(0, 0, 0, 0.12);
    height: 100%;
}
.fair-form .ff-el-input--content {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.ff-default .ff-el-input--label label {
	font-weight: 600 !important;
}
.bg-grey {
	background: #fafafa;
    padding: 10px;
    border-radius: 5px;
}
.fluentform .fair-form.ff-el-group.ff_list_inline .ff-el-form-check {
	margin: 0 !important;
	width: calc(97%/4) !important;
}
.fluentform .sub-form.fair-form.ff-el-group.ff_list_inline .ff-el-form-check {
	width: calc(97%/3) !important;
}
@media screen and (max-width: 1120px) {
	.fluentform .fair-form.ff-el-group.ff_list_inline .ff-el-form-check {
	width: calc(98%/2) !important;
}
	.fluentform .sub-form.fair-form.ff-el-group.ff_list_inline .ff-el-form-check {
	width: calc(97%/2) !important;
}
}
@media screen and (max-width: 850px) {
	.fluentform .fair-form.ff-el-group.ff_list_inline .ff-el-form-check {
	width: 100% !important;
}
	.fluentform .sub-form.fair-form.ff-el-group.ff_list_inline .ff-el-form-check {
	width: 100% !important;
}
}
.fair-form .ff-el-form-check-label {
	display: flex;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: flex-start;
}
.fair-form .ff-el-form-check {
	padding: 10px;
    border: 1px solid rgb(209, 213, 219);
	background: white;
    border-radius: 5px;
}
.fair-form .ff-el-form-check.ff_item_selected {
    border-color: var(--color-p1) !important;
}
.fair-form .ff-el-form-check-label > span {
	 padding: 10px;
	width: 100%;
}
.fair-form .ff-el-form-check-label span {
	display: flex;
    flex-direction: column;
}
.fair-form .ff-el-form-check-label .option-text {
	gap: 10px;
}
.fair-form .ff-el-form-check-label .option-title {
	font-size: 1.125rem;
    line-height: 1.2em;
	font-weight: bold;
}
.fair-form .ff-el-form-check-label .option-description {
	color: rgb(107, 114, 128);
	font-size: 0.85rem;
	line-height: 1.1;
}
.fair-form .ff-el-form-check-label .option-count {
	font-weight: bold;
	font-size: 0.85rem;
	line-height: 1.3;
}
.ff-default .ff_btn_style:hover {
	opacity: 1 !important;
}
/* MOBILE */
@media screen and (max-width: 767px) {
	.leistungs-box * {
		text-align: center;
	}
	.leistungs-box .wp-block-buttons {
		justify-content: center !important;
	}
	.blog-grid article .uagb-post__image {
		margin: 0 -20px !important;
	}
}
@media only screen 
	and (min-width: 977px)
	and (orientation: portrait) {
	h1 *, .hero-font {
		font-size: 3rem !important;
	}
}
.wp-block-cover img, .wp-block-cover .wp-block-cover__background {
	max-width: 2000px !important;
}
/* STICKY CTA */
body.home .sticky-cta {
	display: flex;
	
}
.sticky-cta {
	display: none;
}
.sticky-cta {
	padding: 20px;
	position: fixed;
	z-index: 90;
	background: var(--color-bd2);
	bottom:0;
	left:0;
	justify-content: center;
	right:0;
}
.sticky-cta .inner {
	display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    gap: 30px;
}
.sticky-cta .inner p {
	color: var(--color-p5);
	text-align: center;
	font-weight: bold;
    font-size: 22px;
    margin: 0;
}
.DisplayNone {
	display: none !important;
}
@media screen and (max-width: 767px) {
	.sticky-cta .inner {
		gap: 10px;
	}
}
.ast-scroll-to-top-right {
	right: 20px;
    bottom: 20px;
}


