@charset "utf-8";
/* CSS Document */
body, html {
	font-size: 10px;
	font-family: "Sora", sans-serif;
  	font-optical-sizing: auto;
  	font-style: normal;
	color:#000000;
}


@media (max-width:575.98px) {
	body, html {
		font-size: 8px;
	}
}


a:link, a:visited, a:hover, a:active {
	text-decoration: none;
}

.color-default {
	color: #000000;
}

.color-sage {
	color: #848b79;
}

.color-white {
	color: #FFFFFF;
}

.text16 {
	font-size: 1.6rem;
	line-height: 2.6rem;
}

.text18 {
	font-size: 1.8rem;
	line-height: 3.0rem;
}

.text24 {
	font-size: 2.4rem;
	line-height: 3.6rem;
}

.text32 {
	font-size: 3.2rem;
	line-height: 4.4rem;
}

.text48 {
	font-size: 4.8rem;
	line-height: 6rem;
}

.text72 {
	font-size: 7rem;
	line-height: 8.2rem;
}

.text92 {
	font-size: 9.2rem;
	line-height: 10.4rem;
}

.text-regular {
	letter-spacing: .02rem;
}

.text-title {
	font-family: "Playfair Display", serif;
  	font-optical-sizing: auto;
  	font-style: normal;
}

.title-sage-line-left {
	position:absolute;
	z-index: -50;
	right:4.5rem;
	top:4.8rem;
	width:16rem;
	height:1px;
	background: #848B79;
}

.title-sage-line-regular {
	position:relative;
	z-index:-2;
	width:16rem;
	height:1px;
	background: #848B79;
}

.title-left-position {
	position:relative;
	left:-21.2rem;
}

.mw-title {
	font-size: 6rem;
	line-height: 7.2rem;
}

.mw-description {
	font-size: 1.6rem;
	line-height: 2.8rem;
	letter-spacing: 2px;
}

.space-hero {
	height:12rem;
}

.space-hero-pages {
	height:8rem;
}

.hero-signature {
	position:absolute;
	z-index:-1;
	left:0px;
	top:-60px;
	width:335px;
}

.hero-signature-pages {
	position:absolute;
	z-index:-1;
	left:0px;
	top:-60px;
	width:335px;
}

.google-map {
	position: relative;
	top:1.5rem;
	width:calc(100% - 4.5rem);
	width:100%;
	aspect-ratio: 4 / 2.8;
}

.kontakt-image {
	position:relative;
	z-index:-1;
	background:url(../images/p3-01.jpg);
	background-size: cover;
	top:0.5rem;
	width:100%;
	aspect-ratio: 4 / 2.8;
}

@media (min-width: 576px) {
	.mw-title {
		font-size: 7.8rem;
		line-height: 9rem;
	}
	
	.mw-description {
		font-size: 1.6rem;
		line-height: 2.8rem;
		letter-spacing: 2px;
	}
	.hero-signature {
		position:absolute;
		left:-12px;
		top:-80px;
		width:90%;
	}
	.hero-signature-pages {
		position:absolute;
		z-index:-1;
		left:-12px;
		top:-80px;
		width:90%;
	}	
}

@media (min-width: 768px) {
	.mw-title {
		font-size: 8.8rem;
		line-height: 10rem;
	}
	
	.mw-description {
		font-size: 1.8rem;
		line-height: 3.0rem;
		letter-spacing: 2px;
	}
	
	.hero-signature {
		position:absolute;
		left:-82px;
		top:-90px;
		width:90%;
	}
	.hero-signature-pages {
		position:absolute;
		z-index:-1;
		left:-33px;
		top:-105px;
		width:600px;
	}
	.space-hero {
		height:15rem;
	}
	.space-hero-pages {
		height:12rem;
	}
}

@media (min-width: 992px) {
	.mw-title {
		font-size: 9.2rem;
		line-height: 10.4rem;
	}
	.mw-description {
		font-size: 1.8rem;
		line-height: 3.0rem;
		letter-spacing: 2px;
	}
	.hero-signature {
		left:-156px;
		top:-100px;
		width:100%;
	}
	.space-hero {
		height:20rem;
	}
	.google-map {
		position: relative;
		top:1.5rem;
		width:calc(100% - 4.5rem);
		height:calc(100% - 4.5rem);
	}
	.kontakt-image {
		background:url(../images/p3-01.jpg);
		background-size: cover;
		position: relative;
		top:0.5rem;
		width:calc(100% - 4.5rem);
		height:calc(100% - 3.5rem);
	}
}

.mw-image-container {
	position:relative;
	z-index: -50;
	width:100%;
	aspect-ratio: 2 / 3;
	background:url(../images/mw01.jpg) no-repeat;
	background-size: cover;
	margin-bottom:4.5rem;
}

@media (min-width: 992px) {
    .mw-image-container {
		position:absolute;
		top:.8rem;
		right:4.5rem;
		width:calc(100% - 4.5rem);
		height:calc(100% - 2rem);
		background:url(../images/mw01.jpg) no-repeat;
		background-size: cover;
		background-position: center bottom;
		margin-bottom:auto;
	}
}

.mw-block-container {
	position:relative;
	left:-7px;
	top:127px;
	width:calc(100% - 3rem);
	height:calc(100% - 203px);
	background: rgba(132,139,121,.4);
	margin-top:4.5rem;
}

.mw-bg-top {
	z-index:-50;
	top:-80px;
	left:-114px;
	width:600px;
	height:130px;
	background: #F4F5F7
}

.mw-bg-bottom {
	z-index:-50;
	top:50px;
	left:-114px;
	width:960px;
	height:630px;
	background: #F4F5F7;
}

.mw-bg-bottom-shadow {
	z-index:-20;
	top:380px;
	left:-114px;
	width:300px;
	height:300px;
	background: url(../images/bg_shadow-gradient.png) no-repeat;
}

@media (min-width: 992px) {
	.mw-bg-top {
		left:-114px;
	}
    .mw-bg-bottom {
		left:-114px;
		width:960px;
		height:630px
	}
	.mw-bg-bottom-shadow {
		top:380px;
		left:-114px;
	}
}

@media (min-width: 1200px) {
	.mw-bg-top {
		left:-110px;
	}
    .mw-bg-bottom {
		left:-110px;
		width:1074px;
		height:570px
	}
	.mw-bg-bottom-shadow {
		top:320px;
		left:-110px;
	}
}

@media (min-width: 1400px) {
    .mw-bg-bottom {
		left:-110px;
		width:1186px;
		height:510px
	}
	.mw-bg-bottom-shadow {
		top:260px;
	}
}

.test-bg {
	background: #EEEEEE;
}

.space-text {
	margin: 0 0 2.5rem 0;
}

.space-title {
	margin: 0 0 3.5rem 0;
}

.space-20 {
	height:2rem;
}

.space-30 {
	height:3rem;
}

.space-50 {
	height:4.5rem;
}

.space-100 {
	height:8rem;
}

.background-white {
	background: #FFFFFF;
}

.background-lightgrey {
	background: #F4F5F7;
}

.background-footer {
	background: #E0E2E6;
}

/* Fonts */
.FNT-ExtraLight {
	font-weight: 100;
}

.FNT-Thin {
	font-weight: 200;
}

.FNT-Light {
	font-weight: 300;
}

.FNT-Regular {
	font-weight: 400;
}

.FNT-Medium {
	font-weight: 500;
}

.FNT-SemiBold {
	font-weight: 600;
}

.FNT-Bold {
	font-weight: 700;
}

.FNT-ExtraBold {
	font-weight: 800;
}

/* Header */
.header-container {
	height: 70px;
	position:relative;
}

.header-links {
	color:#B0AFAF;
	box-sizing: border-box;
	border-bottom: 3px solid rgba(255,255,255,0);
	padding: 2.5rem 0 0 0;
	transition: border-bottom .5s ease, color 0.3s ease;
}

.header-links:after {
	display:block;
	content:'';
	padding:0 0 2.2rem 0;
	border-bottom: 1px solid #000000;
	transform: scaleX(0);
	transition: transform .5s ease-in-out;
}

.header-links:hover:after {
	transform: scaleX(1);
}

.header-links.fromLeft:after {
	transform-origin:  0% 50%;
}
.header-links:hover {
	cursor: pointer;
	color: #000000;
}

.header-links-static {
	color:#000000;
	box-sizing: border-box;
	padding: 2.5rem 0 0 0;
}

/* Hero */
.hero-container {
    background: url("../images/shadow-gradient.png") repeat-x top, url(../images/mw_psi.svg) no-repeat bottom left 15rem, #F4F5F7;
	z-index:-5;
}

.hero-position {
	margin-left:0px;
}

@media (min-width: 768px) {
	.hero-position {
		margin-left:65px;
	}
}

@media (min-width: 992px) {
	.hero-position {
		margin-left:110px;
	}
	.hero-container {
    	background: url("../images/shadow-gradient.png") repeat-x top, url(../images/mw_psi.svg) no-repeat bottom right 15%, #F4F5F7;
	}
}

.hero-signature-container {
	position:relative;
}

.hero-psi {
	min-height: 1rem;
	background:none;
	background-size: contain;
}

@media (min-width: 576px) {
	.hero-psi {
		min-height: 1rem;
		background:none;
		background-size: contain;
		display:flex;
		align-items: flex-end;
	}
}

@media (min-width: 992px) {
	.hero-psi {
		min-height: calc(100vh - 7rem);
		background-size: auto;
	}
}

.hero-container-pages {
    background: url("../images/shadow-gradient.png") repeat-x top, #F4F5F7;
	z-index:-5;
}

.white-box-01 {
	position:absolute;
	z-index:-1;
	height:10rem;
	width:66.6666%;
	bottom:0;
	right:0;
	background:#FFFFFF;
}

/* Scroll to top */
#toTopBTN {
	display: none;
  	position: fixed;
  	bottom: 12px;
  	right: 12px;
  	z-index: 99;
  	border: none;
  	outline: none;
  	cursor: pointer;
  	font-size: 1.8rem;
	background:none;
}

/* Footer */
.footer-container {
	padding-top:5rem;
	padding-bottom:7rem;
	background:url(../images/shadow-gradient.png) repeat-x top;
}

@media (min-width: 576px) {
	.footer-container {
		padding-top:10rem;
		padding-bottom:10rem;
	}
}

.footer-links-title {
	font-size: 1.4rem;
	line-height: 2.2rem;
	letter-spacing: 2px;
}

.footer-links-divider {
	width:100%;
	height:1px;
	background:#848b79;
	margin:1.5rem 0;
}

.footer-links, .footer-info {
	color:#636363;
	font-size: 1.4rem;
	line-height: 2.6rem;
}

.footer-links:hover {
	color:#000000;
	font-size: 1.4rem;
	line-height: 2.6rem;
}

.footer-button {
  	color: #636363;
  	font-size: 1rem;
  	border: solid 1px #636363;
  	border-radius: .4rem;
  	padding: .6rem 1rem;
  	display: inline-block; 
  	position: relative;
  	overflow: hidden;
  	cursor: pointer;
  	background-color: transparent;
  	z-index: 1;
  	transition: color .4s ease, border-color .4s ease;
}

.footer-button::before {
  	content: "";
  	position: absolute;
  	top: 0;
  	left: 0;
  	width: 0;
  	height: 100%;
  	background-color: #000;
  	transition: width .4s ease;
  	z-index: -1; 
}

.footer-button:hover {
  	color: #fff;
  	border-color: #000;
}

.footer-button:hover::before {
  	width: 100%;
}

footer .footer-w-30 {
    width: 48%;
}

@media (min-width: 768px) {
    footer .footer-w-30 {
        width: 30%;
    }
}

footer .footer-padding, .header-padding {
	padding-left: 6px;
	padding-right: 6px;
}

@media (min-width: 992px) {
    footer .footer-padding, .header-padding {
        padding-left: 0px;
		padding-right: 0px;
    }
}