/*  =================================================================
    0.0 :ROOT ~ overwrites or extras (if needed)
    ================================================================== */
    :root {
        --row-width: 1280px; /* max-width */
        --row-half-width: -640px; /* half-width */
        --font-poppins: 'Poppins', sans-serif;
        --font-weight: 400;
        
        --clr-grey_13: #131313;
        --clr-grey_3b: #3b3b3b;
        --clr-grey_5d: #5d5d5d;
        --clr-grey_8a: #8a8a8a;
        --clr-grey_c6: #c6c6c6;
        --clr-grey_dd: #dddddd;
        --clr-grey_ef: #efefef;
        --clr-grey_eb: #ebebeb;
        --clr-grey_f6: #f6f6f6;
        --clr-sand_e0: #e0d7ce;        
        --clr-sandstone: #b4ac9f;
		    --clr-green: #439e47;
        --clr-green_b8: #b8bc89;
    		--color-grey-300: #e9ebec;
    		--color-grey-600: #878a99;
    		--color-green-rgba: rgba(10, 179, 156, 0.18);
    		--color-green-rgb: #0ab39c;		
    		--color-red-rgba: rgba(240,101,72, 0.18);
    		--color-red-rgb: #F06548;	
    }


/*  =================================================================
1.0 STANDARDS
================================================================== */
    body, h1, h2, h3, h4, h5, h6, p, ul, ol, label, a, .button, button, input, select, textarea, address {
        font-family: var(--font-poppins);
        /*color: var(--clr-black);*/
		color: var(--clr-grey_5d);
    }

    main.row, .row.outer {
        padding-left: 20px;
        padding-right: 20px;
    }
    .row.outer.collapsed {
        padding-left: 0;
        padding-right: 0;
    }
	
	

/*  1.1 BASE - Golors
    -------------------------------------------------------------- */
    .bgGrey_f6 {
        background-color: var(--clr-grey_f6);
    }
    .bgGrey_5d {
        background-color: var(--clr-grey_5d);
    }
    .bgGrey_8a {
        background-color: var(--clr-grey_8a);
    }
	.bgGrey_ef {
		background-color: var(--clr-grey_ef);
	}
	.bgGrey_eb {
		background-color: var(--clr-grey_eb);
	}
	.bgGrey_dd {
		background-color: var(--clr-grey_dd);
	}
    .bgSandStone {
        background-color: var(--clr-sandstone);
    }

/*  1.2 BASE - Clearfix
    -------------------------------------------------------------- */
    .clear, .clearall, .clearfix {
        clear: both;
    }
	
/*  1.3 BASE - Panes
    -------------------------------------------------------------- */
	.panel {
		width: 100%;
		display: block;
		margin: 0 auto;
		background-color: var(--color-grey-300);
		border: 2px solid var(--color-grey-600);
		padding: 14px;
		padding-bottom: 13px;
		font-size: 16px;
		line-height: 23px;
		margin-bottom: 20px;
	}

	.panel a {
		text-decoration: underline;
	}
	.panel.alert, 
	.panel.notice, 
	.panel.success {
		text-align: center;
	}

	.panel.alert {
		border: 2px solid var(--color-red-rgb);
		background-color: var(--color-red-rgba);
		color: var(--color-red-rgb);
	}	
	.panel.notice {
		border: 2px solid #ff9966;
		background-color: #ffcc00;
		color: #ff9966;
	}	
	.panel.success {
		border: 2px solid var(--color-green-rgb);
		background-color: var(--color-green-rgba);
		color: var(--color-green-rgb);
	}
	.panel.success p {
		color: var(--color-green-rgb);
	}

/*  1.4 BASE - Text stylings
    -------------------------------------------------------------- */
    h1, h2, h3, h4, h5, h6, cite {
        color: var(--clr-grey_5d);
    }
    h1 {
        font-weight: 600;
    }
    h2, .about h3 {
		letter-spacing: -2px;
        padding: 0;
        text-transform: none;
        font-size: 24px;
        line-height: 34px;
        font-weight: 400;
    }
	.intro h2 {
		margin-bottom: 25px;
	}
    h2.floated {
        position: relative;		
        padding-right: 200px;
    }
    h3 {
        font-weight: 300;
        font-size: 40px;
        line-height: 50px;
        text-transform: none;
    }
    p, li {
        font-size: 16px;
        line-height: 24px;
        color: var(--clr-grey_5d);
    }

    input[type="submit"],
    button,
    .button,
    .btn {
        background-color: var(--clr-black);
        color: var(--clr-white);
        font-family: var(--font-poppins);
        -webkit-transform: translateZ(0);
                transform: translateZ(0);
    }
	
	@keyframes zoomEffect {
		0% { transform: scale(1); }
		50% { transform: scale(1.2); }
		100% { transform: scale(1); }
	}

/*  =================================================================
    x.0 HEADER
    ================================================================== */
	nav {
		position: sticky;
		left: 0;
		top: 0;
		padding-left: 20px;
		padding-right: 20px;
		z-index: 999;
		background-color: var(--clr-white);
	}
	nav .logo-link {
		position: relative;
		font-size: 0;
		line-height: 0;
		display: inline-block;
		margin: 20px 0;
		z-index: 1;
	}
	nav .topRow + .logo-link {
		margin: 44px 0 20px 0;
	}
	nav .topRow + .logo-link + .mobileBTN {
		margin-top: 24px;
		margin-left: auto;
		order: 2;
	}
	nav .logo-link img {
		width: auto;
		height: 50px;
	}
	nav .row {
		display: flex;
		align-items: center;
		justify-content: space-around;
	}
	nav .topRow {
		position: absolute;
		top: 0;
		right: -20px;
		text-align: right;
		width: calc(100% + 40px);
		padding: 0 20px;
		background-color: var(--clr-grey_ef);
	}
	
	nav a {
		color: var(--clr-grey_5d);
	}
	nav a.mobileBTN {
		width: 40px;
		line-height: 40px;
		border: 1px solid #5d5d5d;
		text-align: center;
		font-size: 20px;
		border-radius: 5px;
	}
	nav .active > a {
		font-weight: 600;
	}
	nav .topRow a {
		display: inline-block;
		line-height: 24px;
		font-size: 14px;
	}
	nav .row ul {
		margin-left: auto;
		font-size: 0;
		line-height: 0;
		text-align: left;
		display: none;
	}
	nav.showed .row ul {
		display: block;
		position: absolute;
		left: 0;
		top: 90px;
		width: 100%;
		height: calc(100vh - 90px);
		background-color: var(--clr-grey_ef);
		border-top: 2px solid var(--clr-grey_5d);
	}
	nav.showed .row .topRow + .logo-link + .mobileBTN + ul {
		top: 114px;
		height: calc(100vh - 114px);
		left: -20px;
		width: calc(100% + 40px);
	}
	nav .row ul li {
		display: inline-block;
	}
	nav .row ul li:not(:first-of-type),
	nav .topRow a:not(:first-of-type) {
		margin-left: 20px;
	}
	nav.showed .row ul li:not(:first-of-type) {
		margin-left: 0;
	}
	nav.showed .row ul li {
		display: block;
		width: 100%;
		padding-left: 20px;
	}
	nav .row ul a {
		font-size: 18px;
		line-height: 40px;
	}
	nav .row ul a.cta {
		display: inline-block;
		background-color: /*var(--clr-green)*/#89857C;
		color: var(--clr-white);
		font-size: 16px;
		line-height: 24px;
		padding: 8px 16px;
		border-radius: 40px;
		margin-top: 10px;
	}


    /*  =================================================================
    x.0 HEADER	
    ================================================================== */
    header,
    .etalage {
        width: 100%;
        height: /*675px*/475px;
		overflow: hidden;
    }
	header {
		height: calc(100vh - 140px);
	}
	header.text {
		height: auto;
		/*padding-top: 5px;
		padding-bottom: 5px;*/
		font-size: 0;
		line-height: 0;
		margin-bottom: 40px;
	}
    header img,
    .etalage img {
        height: 100%;
        object-fit: cover;
    }
	header:not(.withImg) img {
		animation: zoomEffect 40s infinite ease-in-out;
	}
	header.withImg {
		padding-top: 0;
	}
	header.withImg img {
		height: 400px;
	}
    header hgroup,
    .etalage hgroup {
		position: absolute;
		left: 50%;
		top: 50%;
		z-index: 1;
		-webkit-transform: translate(-50%, -70%);
				transform: translate(-50%, -70%);
		display: inline-block;
		width: var(--row-width);
		max-width: 100%;
		padding-left: 40px;
    }
    header:not(.text) h1,
    header h2,
    .etalage h2,
    .etalage h3 {
        color: var(--clr-white);
    }
    header h1,
    .etalage h2 {
		letter-spacing: -1px;
		font-size: 30px;
		line-height: 38px;
    }
    header h2 {
        margin-top: 30px;
    }
    .etalage h2 {
        font-weight: 600;
    }
    .etalage h3 {
		letter-spacing: -1px;
        margin-top: 25px;
        padding: 0;
        text-transform: none;
        font-size: 26px;
        line-height: 36px;
        font-weight: 400;
    }
	
	
/*  =================================================================
    x.0 BREADCRUMBS
    ================================================================== */
	.breadcrumb {
		font-size: 12px;
		padding: 0px 20px;
	}
	header.withImg .breadcrumb {
		padding-top: 5px;
	}

	.breadcrumb ol {
		list-style: none;
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
		margin: 0;
		padding: 0;
	}
	.breadcrumb li {
		display: flex;
		align-items: center;
		color: #5d5d5d;
		text-transform: lowercase;
	}
	.breadcrumb li:not(:last-child)::after {
		content: "/";
		margin: 0 8px;
		color: #aaa;
	}
	.breadcrumb a {
		text-decoration: none;
		color: var(--clr-green);
		transition: color 0.2s;
	}
	
	
/*  =================================================================
    x.0 SIDEBAR
    ================================================================== */


/*  =================================================================
    x.0 CONTENT
    ================================================================== */
    section.etalage {
		padding-left: 0;
		padding-right: 0; 
	}
	
	.WYSIWYG h1, .WYSIWYG h3, .WYSIWYG h4, .WYSIWYG h5, .WYSIWYG h6,
    .WYSIWYG p:not(:last-of-type),
    .WYSIWYG ol,
    .WYSIWYG ul,
    .WYSIWYG figure {		
        margin-bottom: 20px;
    }
	.WYSIWYG h1,
	.WYSIWYG h2 {
		font-size: 30px;
		line-height: 40px;
		font-weight: 600;
	}
	.WYSIWYG h3 {
		font-size: 18px;
		line-height: 24px;
		font-weight: 500;
		padding: 6px 0;
	}
    .WYSIWYG p strong {
        font-weight: 600;
    }
    .WYSIWYG p a {
        text-decoration: underline;
    }
	.WYSIWYG li {
		position: relative;
		padding-left: 32px;
	}
	.WYSIWYG li:before {
		content: '\EB7B';
		font-family: 'remixicon';
		left: 3px;
		top: 3px;
		position: absolute;
		width: 18px;
		line-height: 18px;
		text-align: center;
		background-color: /*var(--clr-green)*/ #89857C;
		border-radius: 50%;
		color: var(--clr-white);
		font-size: 12px;
	}

/*  x.x SLIDER
    -------------------------------------------------------------- */
	body.home section.title {
		margin-bottom: -75px;
	}
	body.home section.projects {
		padding-top: 75px/*100px*/;
		padding-bottom: 55px/*80px*/;
		padding-left: 20px;
		padding-right: 20px;
	}
	body.home section.WYSIWYG + body.home section.projects {
		padding-top: 0;
	}
    .projects .swiper-slide {
        background-color: #fff;
		font-size: 0;
		line-height: 0;
    }
	
	.projects .text-label,
	.packages.borders .grid-item label {
		opacity: 0;
		visibility: hidden;
		width: fit-content;
		height: 32px;
		background-color: /*#d9ecda*/#89857C;
		color: /*rgb(67, 158, 71)*/ #fff;
		text-align: center;
		font-size: 16px;		
		line-height: 32px;
		position: absolute;
		top: 37px;
		left: -19px;
		border-radius: 4px;
		border-top-left-radius: 0;
		padding: 0 20px;
		box-shadow: 2px 2px 5px 0 rgba(0,0,0, 0.3);
		-webkit-transition: all 300ms ease-in;
				transition: all 300ms ease-in;
	}	
	.projects .text-label:before,
	.packages.borders .grid-item label:before {
		content: "";
		border-bottom: 16px solid /*rgba(67, 158, 71, 1)*/#626360;
		border-left: 18px solid transparent;
		position: absolute;
		top: -16px;
		left: 1px;
	}

	.projects .text-label {
		height: 24px;
		font-size: 14px;
		line-height: 24px;
		top: 25px;
	}
	.projects .text-label:before {
		border-bottom: 12px solid /*rgba(67, 158, 71, 1)*/#626360;
		border-left: 16px solid transparent;
		top: -16px;
		left: 2px;
	}
	
    .projects .swiper-slide.swiper-slide-active .text-label,
	.packages.borders .grid-item label {
		opacity: 1;
		visibility: visible;
    }
	
    .projects.single .swiper-slide {
		border: 1px solid #efefef;
    }
    .projects .swiper-slide img {
        opacity: .2;
    }
    .projects .swiper-slide.swiper-slide-active img {
        opacity: 1;
    }
    .swiper-3d .swiper-slide-shadow {
        background: transparent;
    }
	.projects .singleSwiper {
		margin-bottom: 10px;
		padding-left: 40px;
		margin-left: -40px;
	}
	.projects .singleSwiper .swiper-slide {
		-webkit-transition: all 300ms ease-in;
				transition: all 300ms ease-in;
	}
	.projects .singleSwiper .swiper-slide:not(.swiper-slide-active) {
		opacity: 0;
		visibility: hidden;
	}

    .projects .col.img {
		padding: 0;
    }
    .projects .col.txt {
        padding: /*150px*/ 25px 0 0 0;
    }
    .projects .col.txt p {
		color: var(--clr-grey_5d);
        font-size: 14px;
        line-height: 20px;
        margin-bottom: 20px;
    }
    .projects .col.txt p b {
        text-transform: uppercase;
		font-size: 18px;
    }
	
    .projects .col.txt .more {
        border: 1px solid #d4d4d4;
		border-radius: 24px;
		display: inline-block;
		width: auto;
		line-height: 32px;
		padding: 7px 20px;
		color: #a2a2a2;
    }
	
    .projects .swiper-button-next {
        right: var(--swiper-navigation-sides-offset, 7%);
    }
    .projects .swiper-button-prev, .projects .swiper-button-next {
        border: 1px solid #d4d4d4;
        border-radius: 50%;
        width: 80px;
        height: 80px;
        color: #a2a2a2;
		margin-top: -250px;
	}
    .projects .swiper-button-prev:after, .projects .swiper-button-next:after {
        font-size: 20px;
    }
	
	.summary {
		margin-bottom: 30px;
	}
    .summary li {
		color: var(--clr-grey_5d);
		font-size: 14px;
        line-height: 40px;
    }
    .summary i {
        font-size: 16px;
        width: 28px;
        height: 28px;
        line-height: 26px;
        text-align: center;
        border: 1px solid #d4d4d4;
        color: #a2a2a2;
        display: inline-block;
        border-radius: 50%;
        margin-right: 10px;
    }

    /* ABOUT */
	section.about {
		padding: 0;
	}
	.about .img img {
        height: 100%;
        object-fit: cover;
    }
    .about .text {
        padding: 50px 20px 20px;
    }
	.about .text.bgGrey_dd {
        background-color: var(--clr-grey_eb);
    }
    .about h3 {
        margin-bottom: 50px;
    }
    .about p {
        /*font-size: 20px;
        line-height: 36px;
        margin-bottom: 36px;
        font-weight: 300;*/
        margin-bottom: 24px;
    }
	.about a.button {
		display: inline-block;
		background-color: transparent;
		box-shadow: inset 0 0 0 1px var(--clr-grey_5d);
		color: var(--clr-grey_5d);
		font-size: 16px;
		line-height: 24px;
		padding: 8px 16px;
		border-radius: 40px;
	}

/*  x.x TIMELINE
    -------------------------------------------------------------- */
    .timeline {
        padding-top: 80px;
		  padding-bottom: 75px;
        counter-reset: section;
    }
    .timeline:after {
        content: '';
        position: absolute;
        right: 64px;
        top: 0;
        width: 2px;
        height: 100%;
        background-color: var(--clr-grey_eb);
    }
	.timeline .card {
        position: relative;
        padding: 25px 0;
        padding-right: 100px;
	}
	.timeline .card:first-of-type {
        padding-top: 0;
	}
	.timeline .card:last-of-type {
        padding-bottom: 0;
	}
	.timeline .card h3 {
        margin-bottom: 15px;
        font-weight: 600;
        font-size: 25px;
        line-height: 35px;
	}
	.timeline .card h3::before {
        counter-increment: section;
        content: counter(section) ". ";
	}
	.timeline .card p {
        margin-bottom: 0;
	}
	.timeline .card .iconImg {
        position: absolute;
        right: 0;
        top: 50%;
        -webkit-transform: translate(0,-50%);
                transform: translate(0,-50%);
        width: 90px;
        height: 90px;
        border-radius: 50%;
        background-color: var(--clr-grey_eb);
        overflow: hidden;
        z-index: 1;
	}

/*  x.x FAQ
    -------------------------------------------------------------- */
	.etalage {
		padding-top: 0;
		padding-bottom: 0;
	}

/*  x.x FAQ
    -------------------------------------------------------------- */
    .faq {
		background-color: var(--clr-grey_eb);
		padding-top: 55px/*80px*/;
        padding-bottom: 75px/*100px*/;
    }
    .faq h2 {
        margin-bottom: 30px;
    }
    details,
    details summary,
    details answer {
        position: relative;
        display: block;
        width: 100%;
    }

    details {
        border-top: 1px solid #ccc;
    }
    .faq details:last-of-type {
        border-bottom: 1px solid #ccc;
    }

    details summary,
    details p {
        color: var(--clr-grey_5d);
    }

    details summary {
        line-height: 34px;
        font-size: 18px;
        padding: 28px 76px 23px 19px;
		font-weight: 500;
    }
    details answer {
        padding: 0 38px 38px 38px;
    }
    details p {
        line-height: 28px;
        font-size: 18px;
		font-weight: 300;
    }
    details summary:after {
        content: '\F4B2';
        position: absolute;
        right: 38px;
        top: 50%;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
        font-family: 'remixicon';
        line-height: 40px;
    }
    details[open] summary:after {
        content: '\F1AF';
    }

/*  x.x REVIEWS
    -------------------------------------------------------------- */
    body.home section.reviews {
        padding-top: 75px/*100px*/;
		padding-bottom: 67px/*92px*/;
    }
    section.reviews h2 {
        margin-bottom: 30px;
    }
    .swiper.reviews {
        padding-bottom: 70px;
    }
    .review-text {
        background-color: var(--clr-grey_eb);
        padding: 30px;
        font-size: 16px;
        margin-bottom: 15px;
		  font-weight: 300;
		  min-height: 300px;
    }
    .review-author,
    .review-location {
        text-align: center;
    }
    .review-author {
        font-weight: bold;
        color: var(--clr-grey_3b);
        font-size: 20px;
        margin-bottom: 10px;
    }
    .review-location {
        font-size: 14px;
        color: var(--clr-grey_c6);
    }
	
/*  x.x SWIPER
    -------------------------------------------------------------- */
    .swiper.reviews,
	.socialSlider {
        padding-bottom: 70px;
    }
    .swiper-pagination-bullet {
        opacity: 1;
        background-color: var(--clr-grey_f6);
        width: 16px;
        height: 16px;
    }
    .swiper-pagination-bullet.swiper-pagination-bullet-active {
        background-color: var(--clr-grey_c6);
    }

/*  x.x REVIEWS
    -------------------------------------------------------------- */	
	section.socials {
		padding-top: 75px/*100px*/;
		padding-bottom: 75px/*100px*/;
	}
	.socials h2 {
		margin-bottom: 30px;
	}
	.socials time {
		display: block;
		font-size: 14px;
		text-align: center;
	}

/*  x.x PACKAGES
    -------------------------------------------------------------- */
	body.home section.packages {
		padding-top: 75px/*100px*/;
		padding-bottom: 75px/*100px*/;
	}
	section.borders .gridFrame {
		gap: 36px;
	}
	section.borders .grid-item {
		/*border: 1px solid var(--clr-grey_5d);*/
		background-color: #f7f7f7;
		padding: 20px;
	}
	section.borders .grid-item.padded {
		padding-top: 80px;
	}

/*  x.x CTA
    -------------------------------------------------------------- */
	section.cta {
		padding-top: 75px/*100px*/;
		padding-bottom: 75px/*100px*/;
	}
	section.packages + section.cta {
		padding-top: 0;
	}
	
	.cta .row {
		text-align: center;
	}
	.cta a {
		display: inline-block;
		padding: 22px 50px;
		background-color: var(--clr-green);
		color: var(--clr-white);
		line-height: 26px;
		font-size: 20px;
	}
	.WYSIWYG p a.button,
	a.cta {
		display: inline-block;
		background-color: /*var(--clr-green)*/ #89857C;
		color: var(--clr-white);
		font-size: 16px;
		line-height: 24px;
		padding: 8px 16px;
		border-radius: 40px;
		margin-top: 20px;
		text-decoration: none;
	}

/*  x.x PROJECTS
    -------------------------------------------------------------- */	
	.projects .gridFrame {
		row-gap: 60px;
	}
	.projects article {
		font-size: 0;
		line-height: 0;
	}
	.projects .overview img {
		/*height: 275px;*/
		object-fit: cover;
		margin-bottom: 15px;
		border: 1px solid #efefef;
	}
	.projects h3 {
		line-height: 30px;
		font-size: 20px;
		font-weight: 500;
		margin-bottom: 0px;
	}
	.projects.single h3 {
		margin-bottom: 10px;
	}
	.projects h3.marged {
		margin-top: 20px;
		margin-bottom: 10px;
	}
	.projects p {
		line-height: 28px;
		font-size: 18px;
		font-weight: 300;
		margin-bottom: 15px;
	}
	.projects .small p {
		line-height: 24px;
		font-size: 16px;
	}
	.projects .overview .summary {
		text-align: left;
		font-size: 0;
		line-height: 0;
		vertical-align: top;
		margin-bottom: 15px;
	}
    .projects .overview .summary li {
		display: inline-block;
		/*width: 50%;*/
    }
    .projects.single .summary li {
		display: block;
		width: 100%;
    }
    .projects .overview .summary li:not(:last-of-type) {
		margin-right: 23px;
    }
	.projects span.fakeBtn {
		display: inline-block;
		background-color: /*var(--clr-green)*/ #89857C;
		color: var(--clr-white);
		font-size: 16px;
		line-height: 24px;
		padding: 8px 16px;
		border-radius: 40px;
	}
	.projects .thumbSwiper .swiper-slide img {
		opacity: .2;
    }
	.projects .thumbSwiper .swiper-slide.swiper-slide-thumb-active img {
		opacity: 1;
	}
	
/*  x.x CTA
    -------------------------------------------------------------- */
	form #andersInputContainer:not(.visible), form #yesInputContainer:not(.visible), form #personsInputContainer:not(.visible), form #importanceInputContainer:not(.visible), form #socInputContainer:not(.visible) {
		display: none;
	}
	form #andersInputContainer, form #yesInputContainer, form #personsInputContainer, form #importanceInputContainer, form #socInputContainer {
		position: absolute;
		left: 300px;
		bottom: 0;
		width: 300px;
	}
	form #yesInputContainer {
		left: 100px;
		bottom: 35px;
	}
	form #andersInputContainer input, form #yesInputContainer input, form #personsInputContainer input, form #importanceInputContainer input, form #socInputContainer input {
		width: 100%;
		max-width: none;
	}
	form .row {
		padding-bottom: 20px;
	}
	form h3 {
		line-height: 30px;
		font-size: 20px;
		font-weight: 500;
	}
	form h3 + p {
		/*line-height: 28px;
		font-size: 18px;
		font-weight: 300;*/
		font-size: 14px;
		margin-bottom: 15px;
	}
	form .floated {
		position: relative;
		padding-left: 200px;
		margin-bottom: 5px;
	}
	form .floated span {
		display: block;
		width: 100%;
		max-width: 200px;
		position: absolute;
		left: 0;
		top: 0;
		line-height: 32px;
		font-size: 14px;
	}
	
	form .floated.full {
		padding-left: 0;
	}
	form .floated.full span {
		position: relative;
		left: auto;
		top: auto;
		max-width: none;
		/*float: left;*/
	}
	form .floated.full {
		padding-left: 0;
	}
	
	form input,
	form textarea,
	form select {
		display: block;
		width: 100%;
		/*max-width: 100%;
		height: 28px;*/
		background-color: #efefef /*var(--clr-grey_dd)*/;
		line-height: 32px;
		padding: 0px 10px;
		border-radius; 14px;
	}
	select {
		background-position: center right 4px;
	}
	
	input::-webkit-input-placeholder, select::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
        color: #5d5d5d;
    }
    input::-moz-placeholder, select::-moz-placeholder, textarea::-moz-placeholder {
        color: #5d5d5d;
    }
    input:-ms-input-placeholder, select:-ms-input-placeholder, textarea:-ms-input-placeholder {
        color: #5d5d5d;
    }
    input:-moz-placeholder, select:-moz-placeholder, textarea:-moz-placeholder {
        color: #5d5d5d;
    }
	
	form textarea {
		height: 96px;
	}
	form input.street, form input.nr, form input.zip, form input.place {
		float: left;
	}
	form input.street {
		max-width: calc(80% - 5px);
		margin-right: 5px;
		margin-bottom: 5px;
	}
	form input.nr {
		max-width: 20%;
		margin-bottom: 5px;
	}
	form input.zip {
		max-width: calc(40% - 5px);
		margin-right: 5px;
	}
	form input.place {
		max-width: 60%;
	}
	form .optGroup input {
		position: relative;
		float: left;
		max-width: 32px;
		margin: 0 0 5px 0;
		line-height: 32px;
		padding: 0px 10px;
	}
	form .optGroup input:after {
		content: '';
		position: absolute;
		width: 12px;
		max-width: none;
		margin: 0;
		height: 12px;
		padding: 0px;
		left: 10px;
		top: 10px;
		background-color: transparent;
	}
	form .optGroup input:checked:after {
		background-color: var(--clr-grey_5d);
	}
	form .optGroup input[type="checkbox"],
	form .optGroup input[type="radio"] {
		padding: 0;
		height: 32px;
	}
	form .optGroup label {
		float: left;
		display: block;
		line-height: 32px;
		width: calc(100% - 32px);
		padding-left: 10px;
		margin: 0 0 5px 0;
		font-size: 14px;
	}
	form .optGroup label.before-next-input {
		width: calc(50% - 35px);
	}
	form .optGroup label.before-next-input + input {
		float: left;
		display: block;
		width: 50%;
		max-width: none;
		margin: 0 0 5px 0;
	}
	form .floated input[type="file"] {
		padding-left: 0;
	}
	form .floated ::file-selector-button {
		border: 2px solid transparent;
		padding: 0 10px;
		border-radius: 0;
		background-color: #d5d5d5;
		line-height: 28px;
		margin-right: 30px;
	}
	
	form button {
		display: inline-block;
		background-color: /*var(--clr-green)*/ #89857C;
		color: var(--clr-white);
		font-size: 16px;
		line-height: 24px;
		padding: 8px 16px;
		border-radius: 40px;
		margin-top: 10px;
	}
	
	.news {
		padding-top: 75px/*100px*/;
		padding-bottom: 75px/*100px*/;
	}
	
	/*.news*/ .navi {
		margin-top: 40px;
	}
	/*.news*/ .navi span {
		float: left;
		display: block;
		margin-top: 10px;
	}
	
	
	.news .btn,
	.navi .btn {
		display: inline-block;
		background-color: /*var(--clr-green)*/ #89857C;
		color: var(--clr-white);
		font-size: 16px;
		line-height: 24px;
		padding: 8px 16px;
		border-radius: 40px;
	}
	.news .btn.next:not(.disabled),
	.news .btn.prev:not(.disabled),
	.navi .btn.next:not(.disabled),
	.navi .btn.prev:not(.disabled) {
		background-color: rgba(137, 133, 124, 0.2)/*rgba(67,158,71,0.2)*/;
		box-shadow: 0px 0px 0px 1px rgb(/*67,158,71*/137, 133, 124) inset;
		color: rgb(/*67,158,71*/137, 133, 124);
	}
	.news .btn.disabled,
	.navi .btn.disabled	{
		background: #efefef;
		color: #d5d5d5;
	}
	.news .btn.overview i,
	.navi .btn.overview i	{
		display: inline-block;
		-webkit-transform: rotate(90deg);
				transform: rotate(90deg);
	}

	body.home .contact {
		padding-top: 75px/*100px*/;
		padding-bottom: 75px/*100px*/;
	}
	.contactform li {
		position: relative;
		line-height: 0;
		font-size: 0;
	}
	.contactform label,
	.contactform small,
	.contactform input,
	.contactform select,
	.contactform textarea {
		display: inline-block;
		vertical-align: top;
		font-size: 16px;
		line-height: 24px;
		padding: 4px 10px;
		margin-bottom: 10px;
	}
	.contactform .g-recaptcha {
		display: inline-block;
		vertical-align: top;
		margin-bottom: 10px;
	}
	.contactform label {
		padding: 4px 0;
		width: /*300px*/100%;
	}
	.contactform small {
		width: calc(100% - 24px);
		font-size: 14px;
		line-height: 20px;
	}
	.contactform input,
	.contactform select,
	.contactform textarea {
		width: /*calc(100% - 300px)*/100%;
		border: 1px solid var(--clr-grey-d5d);
		color: var(--clr-grey-585);
	}
	.contactform textarea {
		height: 120px;
	}
	.contactform input[type="checkbox"] {
		padding: 0;
		margin: 4px 0;
		width: 24px;
		height: 24px;
		position: relative;
	}
	.contactform input[type="checkbox"]:after {
		content: '';
		position: absolute;
		left: 3px;
		top: 3px;
		width: 16px;
		height: 16px;
		background-color: transparent;
	}
	.contactform input[type="checkbox"]:checked:after {
		background-color: var(--clr-orange);
	}
	

/*  =================================================================
    FOOTER
    ================================================================== */
	footer {
		margin-top: 40px;
		background-color: var(--clr-grey_dd);
		padding: 25px 20px;
	}
	body.home footer {
		margin-top: 0;
	}
    /*footer .socials p {
        display: inline;
        line-height: 60px;
    }
	footer a {
		color: var(--clr-grey_5d);
	}
    footer .socials span {
        float: right;
    }
    footer .socials a {
        display: inline-block;
        width: 24px;
        line-height: 24px;
        margin-top: 18px;
        text-align: center;
        background-color: rgba(0, 0, 0, 0.1);
        border-radius: 4px;
        margin-left: 4px;
    }
    footer h4 {
		font-weight: 600;
        display: inline-block;
        line-height: 30px;
        margin-bottom: 10px;
    }
    footer address p {
        position: relative;
        margin-bottom: 16px;
    }
    footer figcaption {
        position: absolute;
        z-index: 1;
        left: 0;
        bottom: 0;
        color: #fff;
        padding: 10px;
        width: 100%;
    }*/
	
	footer .row.top {
		padding-bottom: 30px;
	}
	footer .logo-link img {
		width: auto;
		height: 70px;
	}
	footer .logo-link {
		display: block;
		margin-bottom: 20px;
	}
	
	footer h2 {
		font-size: 18px;
		line-height: 24px;
		font-weight: 500;
		letter-spacing: 0;
		margin-top: 10px;
		margin-bottom: 16px;
	}
	
	
	footer p {
		text-align: left;
	}
	footer p span {
		font-size: 10px;
	}
	footer p span.soci {
		display: inline-block;
		margin-top: 95px;
		font-size: 26px;
	}
	footer a.button {
		display: inline-block;
		background-color: /*var(--clr-green)*/ #89857C;
		color: var(--clr-white);
		font-size: 16px;
		line-height: 24px;
		padding: 8px 16px;
		border-radius: 40px;
	}

    /*  =================================================================
    MEDIA QUERIES
    ================================================================== */
    /* MOBILE */
    @media only screen and (min-width: 572px) { }

    @media only screen and (min-width: 572px) and (orientation: landscape) { }
    @media only screen and (min-width: 572px) and (orientation: portrait) { }

    /* IPADS portrait */
    @media only screen and (min-width: 768px) and (min-height: 600px) { }

    /* IPADS */
    @media only screen and (min-width: 768px) {

        .timeline:after {
            right: auto;
            left: calc(50% - 1px);
            top: 0px;
            height: calc(100% + 20px);
        }
        .timeline .card {
            padding: 0;
            margin-bottom: 25px;
        }
		.timeline .card h3 {
			font-size: 30px;
			line-height: 40px;
		}
        .timeline .card:first-of-type {
            padding-top: 0;
        }
        .timeline .card:last-of-type {
            padding-bottom: 0;
        }
        .timeline .card:nth-of-type(even) {
            padding-left: 60%;
        }
        .timeline .card:nth-of-type(odd) {
            padding-left: 0;
            padding-right: 60%;
        }
        .timeline .card .iconImg {
            right: auto;
            left: 50%;
            -webkit-transform: translate(-50%,-50%);
                    transform: translate(-50%,-50%);
        }

    }

    /* IPADS landscape AND mini laptops */
    @media only screen and (min-width: 960px) {
		
		h2, .about h3 {
			font-size: 40px;
			line-height: 50px;
		}
	
        .mobileBTN {
            display: none;
        }
		nav .topRow {
			right: 0;
			width: 100%;
			background-color: transparent;
			top: 5px;
			padding: 0;
		}
		nav .topRow a {
			line-height: 36px;
		}		
		nav .row {
			justify-content: space-between;
		}
		nav .topRow + .logo-link {
			margin: 24px 0 20px 0;
		}
		nav .logo-link img {
			height: 100px;
		}
		nav .row ul {
			display: inline-block;
			text-align: right;
		}		
		nav .row ul a.cta {
			margin-top: 0;
		}
		
		/*header hgroup,
		.etalage hgroup {
			left: 50px;
		}*/
		
		header,
		.etalage {
			height: 675px;
		}
		header {
			height: calc(100vh - 140px);
		}
		
		header hgroup,
		.etalage hgroup {
			padding-left: 100px;
		}
		
		header h1,
		.etalage h2 {
			font-size: 50px;
			line-height: 60px;
		}
		
		.breadcrumb {
			padding: 0px;
		}
		
		.about .text {
			padding: 100px 50px 50px;
		}
		
		details summary {
			font-size: 20px;
			line-height: 90px;
			padding: 0 38px;
		}
		details answer {
			padding: 0 114px 38px 38px;
		}
		
		.projects .swiper-button-next {
			right: var(--swiper-navigation-sides-offset, 0);
			top: auto;
			bottom: 150px;
		}
		.projects .col.img {
			max-width: 60%;
			padding: 0;
		}
		.projects .col.txt {
			max-width: 30%;
			padding: 65px 30px 50px 30px;
		}
		
		.projects .swiper-button-prev, .projects .swiper-button-next {
			margin-top: 0;
		}
		
		.navi span {
			float: right;
			display: inline-block;
			margin-top: 0;
		}
		
		.projects .text-label {
			height: 32px;
			font-size: 16px;
			line-height: 32px;
			top: 37px;
		}
		.projects .text-label:before {
			border-bottom: 16px solid /*rgba(67, 158, 71, 1)*/#626360;
			border-left: 18px solid transparent;
			top: -16px;
			left: 1px;
		}
		
		.contactform label {
			width: 300px;
		}
		.contactform small {
			width: calc(100% - 324px);
		}
		.contactform input,
		.contactform select,
		.contactform textarea {
			width: calc(100% - 300px);
		}
		.contactform button {
			margin-left: 300px;
		}

		#siteContainer {
			min-height: calc(100vh - 144px);
			padding-bottom: 380px;
		}
		footer {
			position: absolute;
			left: 0;
			bottom: 0;
		}

    }

    /* SMALL SCREENS */
    @media only screen and (min-width: 1280px) {		
		
		.projects .col.img {
			max-width: 67%;
		}
		.projects .col.txt {
			max-width: 33%;
			padding: 65px 100px 50px 50px;
		}
		
	}

    /* WEIRD HEADER TEXT BREAKPOINT ~ must be paddings or margins */
    @media only screen and (min-width: 1340px) { }

    /* SMALL SCREENS */
    @media only screen and (min-width: 1440px) {
		
		/*.projects .swiper-button-next {
			right: var(--swiper-navigation-sides-offset, 7%);
		}*/
		.projects .swiper-button-next {
			right: var(--swiper-navigation-sides-offset, 0);
			top: auto;
			bottom: 190px;
		}
		.about .text {
			padding: 100px;
		}
		
	}
    @media only screen and (min-width: 1600px) { }
    @media only screen and (min-width: 1920px) { }

/*  =================================================================
    TOUCH DEVICES
    ================================================================== */
    @media (pointer:coarse) { }

/*  =================================================================
    HOVER STATES
    ================================================================== */
    @media (any-hover: hover) {
		
		.breadcrumb a:hover {
			color: var(--clr-grey_5d);
		}
		
		.WYSIWYG p a:hover {
			text-decoration: none;
		}
	}
