/*-----------------------------------------------------
Table of Contents

1. General Styles
2. Blocks
	# Blog
	# Blog Post
	# Call To Action
	# Clients
	# Footer
	# Header
	# Portfolio
		- Portfolio 2 Columns Grid
		- Portfolio 3 Columns Grid
		- Portfolio 2 Columns Grid No Gap 
		- Portfolio 3 Columns Grid No Gap 
		- Portfolio Metro 01
		- Portfolio Metro 02
		- Portfolio Irregular Grid 01
		- Portfolio Irregular Grid 02
		- Portfolio Cards
		- Interactive Links
	# Services
	# Team
3. Pages
	# About Me
	# About Us
	# Agency Minimal
	# Agency Modern
	# Contact
	# Personal Portfolio
	# Single Project

------------------------------------------------------*/

/*-----------------------------------------------------
0. Font Face Declarations
------------------------------------------------------*/

@font-face {
	font-family: "Basis Grotesque Pro";
	src: url('../fonts/BasisGrotesqueArabicPro-Regular.ttf') format('truetype');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Basis Grotesque Pro";
	src: url('../fonts/BasisGrotesqueArabicPro-Light.ttf') format('truetype');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Basis Grotesque Pro";
	src: url('../fonts/BasisGrotesqueArabicPro-Medium.ttf') format('truetype');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Basis Grotesque Pro";
	src: url('../fonts/BasisGrotesqueArabicPro-Bold.ttf') format('truetype');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Basis Grotesque Pro";
	src: url('../fonts/BasisGrotesqueArabicPro-Black.ttf') format('truetype');
	font-weight: 900;
	font-style: normal;
	font-display: swap;
}

/*-----------------------------------------------------
1. General Styles
------------------------------------------------------*/

* {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

html {
	overflow-x: hidden;
	overflow-y: scroll;
}

body {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-size: 22px;
	line-height: 33px;
	font-weight: 400;
	color: rgb(0, 0, 0);
	background: #fff;
	-webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6 {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-weight: 400;
}

a {
	text-decoration: none;
	transition: all .2s ease-in-out;
}

.btn {
	border-radius: 27.5px;
	display: inline-block;
	font-size: .75rem;
	font-weight: 500;
	height: 55px;
	letter-spacing: 2.5px;
	line-height: 55px;
	text-align: center;
	text-transform: uppercase;
	width: 220px;
}

.contact-form input,
.contact-form textarea {
	border: none;
	outline: none;
}

.contact-form input {
	margin-bottom: 30px;
}

.contact-form input::placeholder,
.contact-form input {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-size: .75rem;
	letter-spacing: .3px;
}

.contact-form input[name=name],
.contact-form input[name=phone],
.contact-form input[name=email] {
	float: left;
	height: 50px;
	line-height: 50px;
	padding-left: 20px;
	width: 48%;
}

.contact-form input[name=name],
.contact-form input[name=phone] {
	margin-right: 4%;
}

.contact-form textarea {
	height: 200px;
	padding: 25px;
	width: 100%;
}

.contact-form textarea {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-size: .875rem;
	line-height: 1.6;
}

.contact-form textarea::-webkit-scrollbar {
    width: 8px; 
}

.contact-form input[type=submit] {
	cursor: pointer;
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	float: right;
	font-size: .6875rem;
	font-weight: 500;
	height: 50px;
	letter-spacing: 3px;
	line-height: 50px;
	margin: 23px 0 0 0;
	text-transform: uppercase;
	transition: all .2s linear;
	width: 220px;
	border-radius: 27.5px;
	border: none;
	color: #fff !important;
	background-color: #0A1573 !important;
}

.contact-form input[type=submit]:hover {
	background-color: #0602e8 !important;
}

.container {
	max-width: 1170px;
	margin: auto;
	position: relative;
}

.container-white-wrapper {
	background: #fff;
	width: 100%;
	padding-top: 60px;
	padding-bottom: 60px;
}

.container-white {
	max-width: 1170px;
	margin: auto;
	background: transparent;
}

.container-large {
	max-width: 1720px;
	margin: auto;
}

.clearfix {
	clear: both;
}

.img-cover  {
    display: block;
    object-fit: cover;
    height: 100%;
    width: 100%;
}

.img-responsive {
    display: block;
    max-width: 100%;
    height: auto;
}


/*-----------------------------------------------------
2. Blocks
------------------------------------------------------*/

/* =============== # Awards =============== */

.awards_01 h2 {
	float: left;
	font-size: 3rem;
	font-weight: normal;
	margin-right:2.5%;
	text-transform: capitalize;
	width: 48.75%;
}

.awards_01 ul {
	float: left;
	list-style: none;
	text-transform: capitalize;
	margin-top: 20px;
	width: 48.75%;
}

.awards_01 ul li {
	font-size: 1.125rem;
	letter-spacing: .3px;
	margin-bottom: 7px;
}

/* =============== # Blog =============== */

.blog {
	margin-bottom: 60px;
}

.blog .container {
	display: flex;
	flex-wrap: wrap;
}

.blog-item {
	float: left;
	margin-bottom: 80px;
	width: 31.666%;
}

.blog-item:nth-of-type(2),
.blog-item:nth-of-type(5) {
	margin-right: 2.5%;
	margin-left: 2.5%;
}

.blog-item .entry-thumbnail {
	height: 470px;
	width: 100%;
}

.blog-item .entry-category,
.related-posts .entry-category {
	display: inline-block;
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-size: .9375rem;
	letter-spacing: .7px;
	margin: 28px 0 6px 0;
	text-transform: capitalize;
}

.blog-item .entry-title,
.related-posts .entry-title {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-size: 1.5rem;
	letter-spacing: 1px;
	line-height: 1.5;
}

.blog-item p {
	font-size: .875rem;
	letter-spacing: .2px;
	line-height: 2;
	margin: 12px 0 17px 0;
}

.blog-item .read-more {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-size: 1.125rem;
	padding-left: 80px;
	letter-spacing: .7px;
	position: relative;
	text-transform: capitalize;
	transition: padding-left .3s linear;
}

.blog-item .read-more:before {
	content: '';
	height: 2px;
	left: 0;
	position: absolute;
	top: 10px;
	transition: width .3s linear;
	width: 50px;
}

.blog-item .read-more:hover {
	padding-left: 100px ;
}

.blog-item .read-more:hover:before {
	width: 70px;
}

/* =============== # Blog Post =============== */

.blog-post {
	margin: 115px 0 150px 0;
}

.entry-header {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	text-align: center;
	text-transform: capitalize;
}

.entry-header .entry-category {
	font-size: 1.1875rem;
	letter-spacing: .5px;
}

.entry-header .entry-title {
	font-size: 3rem;
	font-weight: normal;
	line-height: 1.3;
	margin: 20px 0 15px 0;
}

.entry-header .posted-on {
	font-size: .875rem;
	letter-spacing: .4px;
}

.blog-post .entry-thumbnail {
	height: 600px;
	margin-top: 43px;
	width: 100%;
}

.entry-content {
	margin-top: 70px;
}

.entry-content > p {
	font-size: 1rem;
	letter-spacing: .2px;
	line-height: 1.8;
	margin: 0 auto 24px auto;
	width: 51%;
}

.entry-content .post-img {
	margin: 50px auto;
	height: 450px;
	width: 870px;
}

.entry-content blockquote {
	border-left: 3px solid #0260e8;
	margin: 50px auto;
	padding: 17px 0 19px 40px;
	width: 51%;
}

.entry-content blockquote p {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-size: 1.6rem;
	letter-spacing: .3px;
	line-height: 1.6;
}

.entry-footer {
	margin: 35px auto 0 auto;
	width: 51%;
}

.tag-links {
	float: left;
}

.tag-links a {
	border: 1px solid #0260e8;
	display: inline-block;
	font-size: .75rem;
	font-weight: 500;
	letter-spacing: 2.5px;
	margin-right: 6px;
	padding: 15px 30px;
	text-transform: uppercase;
}

.share-links {
	float: right;
}

.share-links li {
	height: 50px;
	font-size: .875rem;
	float: left;
	line-height: 50px;
	margin-left: 10px;
	text-align: center;
	transition: all .2s linear;
	width: 50px;
}

.share-links li:hover {
	cursor: pointer;
}

.about-author {
	margin: 100px auto 0 auto;
	position: relative;
	width: 51%;
}

.about-author .author-photo {
	height: 150px;
	margin-right: 30px;
	width: 150px;
}

.about-author .author-photo img {
	border-radius: 50%;
}

.about-author .author-info {
	position: absolute;
	right: 0;
	transform: translateY(-50%);
	top: 50%;
	width: calc(100% - 180px);
}

.about-author .name,
.about-author .follow-links {
	display: inline-block;
}

.about-author .name {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-weight: normal;
	font-size: 1.375rem;
	letter-spacing: .2px;
	margin-right: 35px;
	text-transform: capitalize;
}

.about-author .follow-links li {
	float: left;
	font-size: .75rem;
	list-style: none;
	margin-right: 25px;
	position: relative;
	top: 3px;
}

.about-author p {
	font-size: .875rem;
	letter-spacing: .3px;
	line-height: 1.9;
	margin-top: 10px;
}

.related-posts {
	margin: 100px auto 0 auto;
	width: 51%;
}

.related-posts .item {
	float: left;
	width: 47.75%;
}

.related-posts .item:nth-of-type(odd) {
	margin-right: 4.5%;
}

.related-posts .entry-thumbnail {
	height: 270px;
	margin: 0;
}

.related-posts .entry-category {
	font-size: .8125rem;
	letter-spacing: .6px;
	margin: 18px 0 4px 0;
}

.related-posts .entry-title {
	font-size: 1.3rem;
	font-weight: normal;
	letter-spacing: .3px;
	line-height: 1.4;
}

.comments,
.leave-comment {
	margin: 90px auto 0 auto;
	width: 51%;
}

.comments header,
.leave-comment header {
	border: 1px solid #000;
	height: 50px;
	line-height: 50px;
	margin-bottom: 50px;
	text-align: center;
	width: 100%;
}

.comments header h2,
.leave-comment header h2 {
	font-size: .75rem;
	font-weight: 500;
	letter-spacing: 2px;
	text-transform: uppercase;
}

.comment {
	border-bottom: 1px solid #ddd;
	margin-bottom: 40px;
	padding-bottom: 33px;
	position: relative;
}

.comment:last-child {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}

.comment .avatar {
	float: left;
	height: 110px;
	margin-right: 30px;
	width: 110px;
}

.comment .avatar img {
	border-radius: 50%;
}

.comment .content {
	float: right;
	width: calc(100% - 140px);
}

.comment .name {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-size: 1.25rem;
	font-weight: normal;
	letter-spacing: .5px;
	text-transform: capitalize;
}

.comment .publication-date {
	font-size: .75rem;
	font-weight: 400;
	letter-spacing: .5px;
}

.comment p {
	font-size: .875rem;
	letter-spacing: .1px;
	line-height: 1.7;
	margin-top: 12px;
}

.comment .reply {
	font-size: .625rem;
	font-weight: 500;
	letter-spacing: 3px;
	position: absolute;
	right: 0;
	text-transform: uppercase;
	top: 0;
}

.leave-comment .contact-form input[name=name],
.leave-comment .contact-form input[name=email] {
	width: 47.75%;
}

.leave-comment .contact-form input[name=name] {
	margin-right: 4.5%;
}

.leave-comment .contact-form textarea {
	height: 150px;
}

/* =============== # Call To Action =============== */

.cta_01 {
	align-items: center;
	display: flex;
	height: 500px;
	justify-content: center;
	text-align: center;
	width: 100%;
}

.cta_01 h2 {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-size: 3.75rem;
	font-weight: normal;
	letter-spacing: 1px;
	line-height: 1.2;
	margin-bottom: 43px;
}

.cta_02 {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	padding-top: 120px;
    padding-bottom: 0px;
	width: 100% !important;
	display: block !important;
	clear: both !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: 100% !important;
	box-sizing: border-box;
}

.cta_02 h2 {
	font-size: 3.75rem;
	font-weight: normal;
	line-height: 1.1;
	margin-left: -3px;
}

.cta_02 p {
	font-size: 1.25rem;
	letter-spacing: .2px;
	line-height: 1.7;
	margin: 17px 0 20px 0;
}

.cta_02 .cta-link,
.personal-portfolio .hero .cta-link {
	font-size: 1.5rem;
	padding-left: 100px;
	position: relative;
	transition: padding-left .3s linear;
}

.cta_02 .cta-link:before,
.personal-portfolio .hero .cta-link:before {
	content: "";
	height: 2px;
	left: 0;
	position: absolute;
	top: 12px;
	transition: width .3s linear;
	width: 70px;
}

.cta_02 .cta-link:hover,
.personal-portfolio .hero .cta-link:hover {
	padding-left: 120px;
}

.cta_02 .cta-link:hover:before,
.personal-portfolio .hero .cta-link:hover:before {
	width: 90px;
}


/* =============== # Clients =============== */

.clients {
	align-items: center;
	height: 370px;
	display: flex;
}

.clients .item {
	float: left;
	text-align: center;
	margin: 6px 2.5% 0 0;
	width: 23.125%;
}

.clients .item:nth-of-type(4) {
	margin-right: 0;
}

.clients .item:nth-of-type(1) img {
	width: 166px;
}

.clients .item:nth-of-type(2) img {
	width: 77px;
}

.clients .item:nth-of-type(3) img {
	width: 170px;
}

.clients .item:nth-of-type(4) img {
	width: 72px;
}

/* =============== # Call To Action =============== */


/* =============== # Footer =============== */

footer {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
}

footer ul {
	list-style: none;
}

.copyright {
	font-size: .875rem;
	letter-spacing: 1px;
	text-transform: capitalize;
}

.footer-default {
	height: 100px;
	line-height: 100px;
}

.footer-default .copyright {
	float: left;
}

.footer-default .follow-us-links {
	float: right;
}

.footer-default .follow-us-links li {
	float: left;
	font-size: .875rem;
	margin-left: 35px;
}

.footer-default-border {
	border-top: 1px solid #eee;
	height: 101px;
}
.footer-default-inverse-border {
	border-top: 1px solid #333;
	height: 101px;
}

.footer-extended .info {
	padding: 70px 0 90px 0;
}

.footer-extended .info .container {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

.footer-icon {
	flex: 0 0 auto;
}

.footer-icon img {
	width: 200px;
	height: auto;
	display: block;
}

.footer-spacer {
	flex: 1;
	min-width: 100px;
}

.footer-content {
	flex: 0 0 45%;
	max-width: 45%;
	margin-left: auto;
}

.footer-intro {
	font-size: 15px;
	letter-spacing: .2px;
	line-height: 2;
	margin-bottom: 30px;
	color: #000;
}

.footer-contact-item {
	display: flex;
	align-items: flex-start;
	margin-bottom: 12px;
	gap: 10px;
	text-decoration: none;
	color: #000;
}

.footer-contact-item .footer-icon-small {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	margin-top: 4px;
	display: block;
}

.footer-contact-item > div {
	font-size: 15px;
	letter-spacing: .2px;
	line-height: 1.8;
	color: #000;
}

.footer-social {
	display: flex;
	flex-direction: row;
	gap: 20px;
	margin-top: 30px;
}

.footer-social-link {
	display: flex;
	align-items: center;
	gap: 6px;
	text-decoration: none;
	color: #000;
	font-size: 15px;
	letter-spacing: .2px;
	transition: color .2s ease-in-out;
}

.footer-social-link .footer-icon-small {
	width: 18px;
	height: 18px;
	display: block;
}

.footer-social-link:hover {
	color: #0A1573;
}

.footer-extended .info ul {
	float: left;
	margin-right: 2.5%;
	text-transform: capitalize;
	width: 23.125%;
}

.footer-extended .info ul:last-child {
	margin-right: 0;
}

.footer-extended .info ul li:first-child {
	font-size: 1.3125rem;
	letter-spacing: .5px;
	margin-bottom: 10px;
}

.footer-extended .info ul li {
	font-size: .875rem;
	letter-spacing: .7px;
	margin-bottom: 5px;
}

.footer-extended .mailaddress {
	text-transform: lowercase;
}

.footer-houses-line {
	display: flex;
	align-items: flex-end;
	width: 100%;
	height: 1px;
	background-color: #0A1573;
	position: relative;
}

.footer-houses-line-left {
	flex: 1;
	height: 1px;
	background-color: #0A1573;
}

.footer-houses-wrapper {
	position: absolute;
	left: 25%;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	background-color: #fff;
	padding: 0 10px;
}

.footer-houses-icon {
	height: auto;
	width: auto;
	max-height: 90px;
	display: block;
}

.footer-houses-line-right {
	flex: 1;
	height: 1px;
	background-color: #0A1573;
}

.footer-extended .copyright-section {
	height: 100px;
	line-height: 100px;
	padding-top: 0;
}

.footer-extended .copyright-section .container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 100px;
	padding-top: 0;
}

.copyright-left {
	flex: 0 0 auto;
}

.copyright-left .copyright {
	opacity: 0.7;
	font-size: 0.75rem;
}

.copyright-link {
	color: inherit;
	text-decoration: none;
	opacity: 0.7;
	transition: opacity 0.2s ease-in-out;
	margin-left: 20px;
}

.copyright-link:hover {
	opacity: 1;
	text-decoration: underline;
}

.copyright-right {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	gap: 20px;
	margin-top: 0;
	padding-top: 0;
}

.copyright-logo {
	height: auto;
	max-height: 27px;
	width: auto;
	display: block;
	opacity: 0.7;
	filter: brightness(0.7);
}

/* =============== # Header =============== */

.header-default,
.header-minimal {
	height: 100px;
	line-height: 100px;
}

.header-minimal .nav-open {
	display: block;
}

.logo {
	float: left;
	margin-top: 30px;
	height: 46px;
}

.header-right {
	float: right;
	display: flex;
	align-items: center;
	height: 120px;
}

.navigation {
	float: none;
	margin-right: 40px;
}

.header-icons {
	float: none;
	display: flex;
	align-items: center;
	margin-right: 0;
	gap: 15px;
	height: 100px;
}

.header-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: transparent;
	transition: all .2s ease-in-out;
	text-decoration: none;
}

.header-icon:hover img {
	filter: brightness(0) saturate(100%) invert(4%) sepia(99%) saturate(7498%) hue-rotate(234deg) brightness(95%) contrast(101%);
	transition: filter .2s ease-in-out;
}

.header-icon img {
	width: 20px;
	height: 20px;
	object-fit: contain;
	display: block;
}

.navigation > ul > li {
	float: left;
	font-size: 15px;
	font-weight: 560;
	letter-spacing: 2px;
	list-style: none;
	margin-left: 30px;
	position: relative;
	text-transform: uppercase;
	width: auto;
}

.navigation > ul > li > a {
	display: inline-block;
	padding: 8px 16px;
	border-radius: 9999px;
	transition: color .2s ease-in-out;
	width: auto;
	text-decoration: none;
}

.navigation > ul > li > a:hover {
	text-decoration: none;
}

.sub-nav {
	box-shadow: 0 5px 10px rgba(0,0,0,.1);
	display: none;
	font-size: .6875rem;
	left: 0;
	letter-spacing: 1.2px;
	line-height: normal;
	list-style: none;
	position: absolute;
	top: 88px;
	width: 240px;
	z-index: 2;
}

.sub-nav li {
	border-bottom: 1px solid #f1f1f1;
}

.sub-nav li a {
	display: inline-block;
	padding: 20px 30px;
}

.navigation ul li:hover .sub-nav {
	display: block;
}

.sub-nav li:hover {
	border-bottom: 1px solid #0260e8;
	cursor: pointer;
	transition: all .2s linear;
}

.nav-open {
	width: 32px;
	display: flex;
	flex-direction: column;
	gap: 8px;
	align-items: flex-end;
	background: transparent;
	border: 0;
	padding: 0;
	cursor: pointer;
	align-self: center;
	margin: 0;
	-webkit-appearance: none;
	appearance: none;
	-webkit-tap-highlight-color: transparent;
}

.nav-open span {
	display: block;
	height: 3px;
	background-color: #000;
	border-radius: 2px;
	flex: 0 0 auto;
	transition: background-color .2s ease-in-out;
}

.nav-open:hover span {
	background-color: #0A1573;
}

/* bovenste lijn = 50% */
.nav-open span:first-child {
	width: 50%;
}

/* onderste lijn = 100% */
.nav-open span:last-child {
	width: 100%;
}

.full-screen-nav {
	bottom: 0;
	height: 100vh;
	left: -100%;
	overflow-y: scroll;
	overflow-x: hidden;
	opacity: 0;
	position: fixed;
	right: 0;
	top: 0;
	transition: opacity .4s, left 0s .4s;
	width: 100%;
	z-index: 1000;
}

.full-screen-nav.active {
	left: 0;
	opacity: 1;
	transition: opacity .4s, left 0s;
}

.full-screen-nav .container {
	position: relative;
	height: 100%;
	display: flex;
	flex-direction: column;
	max-width: 100%;
	width: 100%;
	padding: 0;
	margin: 0;
}

.nav-columns {
	display: flex;
	height: 100%;
	width: 100%;
	margin: 0;
	padding: 0;
}

.nav-column-left {
	flex: 0 0 50%;
	width: 50%;
	padding: 200px 0 70px 0;
	padding-left: 200px;
	position: relative;
	z-index: 3;
}

.nav-header-items {
	list-style: none;
	margin: 0 0 40px 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 7.5px;
}

.nav-header-items li {
	margin: 0;
}

.nav-header-items li a {
	font-size: 15px;
	font-weight: 560;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #000;
	text-decoration: none;
	padding: 8px 16px;
	border-radius: 9999px;
	transition: color .2s ease-in-out;
	display: inline-block;
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
}

.nav-header-items li a:hover {
	color: #0A1573;
	text-decoration: none;
}

.nav-header-items li a.nav-item-move {
	font-size: 12px !important;
}

.nav-column-left nav .footer-contact-item {
	margin-left: 16px;
	margin-bottom: 12px;
}

.nav-column-left nav .footer-social {
	margin-left: 16px;
	margin-top: 30px;
}

.nav-column-right {
	flex: 1 1 50%;
	width: 50%;
	background: #f8f8f8;
	padding: 200px 0 70px 0;
	min-width: 50%;
	position: relative;
	z-index: 2;
	overflow: hidden;
	min-height: 100vh;
	height: 100%;
}

.nav-bg-icon {
	position: absolute;
	bottom: -135px;
	left: 50%;
	transform: translateX(-50%);
	opacity: 0.5 !important;
	width: 750px;
	height: auto;
	max-width: 70%;
	max-height: 100vh;
	z-index: 3 !important;
	pointer-events: none;
	display: block !important;
	visibility: visible !important;
	object-fit: contain;
}

.nav-column-right .nav-close {
	position: absolute;
	right: 150px;
	top: 35px;
	z-index: 10;
}

.nav-mobile-menu {
	display: none;
}

.nav-column-right::after {
	content: "";
	position: fixed;
	top: 0;
	right: 0;
	width: 50vw;
	height: 100vh;
	background: #f8f8f8;
	z-index: 0;
	pointer-events: none;
}

.full-screen-nav nav {
	padding: 0;
}

.full-screen-nav nav li {
	cursor: pointer;
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-size: 2rem;
	letter-spacing: .5px;
	list-style: none;
	margin-bottom: 12px;
	text-transform: capitalize;
}

.coll-nav-sub-item {
	display: none;
	margin-top: 5px;
	padding-left: 20px;
}

.collapsible-nav > li.nav-active .coll-nav-sub-item {
	display: block;
}

.full-screen-nav nav .coll-nav-sub-item li {
	font-size: 1rem;
	letter-spacing: .2px;
	margin-bottom: 8px;
}

.full-screen-nav .coll-nav-sub-item a {
	position: relative;
}

.full-screen-nav .coll-nav-sub-item a:after {
	bottom: -5px;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	transition: width .4s linear;
	width: 0%;
}

.full-screen-nav .coll-nav-sub-item a:hover:after {
	width: 100%;
}

.nav-close {
  position: absolute;
  width: 32px;
  height: 32px;
  z-index: 10;
}

.nav-close:before, .nav-close:after {
  position: absolute;
  left: 15px;
  content: ' ';
  height: 33px;
  width: 3px;
  background-color: #333;
}

.nav-close:before {
  transform: rotate(45deg);
}

.nav-close:after {
  transform: rotate(-45deg);
}

/* =============== # Portfolio =============== */

.portfolio-item {
	position: relative;
}

.portfolio-item-overlay {
	bottom: 0;
	height: 100%;
	left: 0;
	opacity: 0;
	position: absolute;
	right: 0;
	top: 0;
	transition: all .3s linear;
	width: 100%;
}

.portfolio-item:hover .portfolio-item-overlay {
	opacity: 1;
}

.portfolio-item .info {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	left: 50%;
	position: absolute;
	text-align: center;
	text-transform: capitalize;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
}

.portfolio-item-title {
	font-size: 1.75rem;
	font-weight: normal;
	letter-spacing: .1px;
}

.portfolio-item-category {
	font-size: 1rem;
	font-weight: normal;
	letter-spacing: .8px;
	margin-top: 3px;
}

/* Portfolio 2 Columns Grid */

.portfolio-2-col-grid .portfolio-item {
	float: left;
	height: 570px;
	margin-bottom: 30px;
	width: 48.75%;
}

.portfolio-2-col-grid a:nth-of-type(odd) .portfolio-item {
	margin-right: 2.5%;
}

/* Portfolio 3 Columns Grid */

.portfolio-3-col-grid .portfolio-item {
	float: left;
	height: 370px;
	margin-bottom: 30px;
	width: 31.666%;
}

.portfolio-3-col-grid a:nth-of-type(2) .portfolio-item,
.portfolio-3-col-grid a:nth-of-type(5) .portfolio-item {
	margin-right: 2.5%;
	margin-left: 2.5%;
}

.portfolio-page .portfolio-2-col-grid,
.portfolio-page .portfolio-3-col-grid {
	margin-bottom: 70px;
}

.portfolio-page .irregular-grid-01,
.portfolio-page .irregular-grid-02 {
	margin-bottom: 100px;
}

/* Portfolio 2 Columns Grid No Gap */

.portfolio-2-col-grid-no-gap .portfolio-item {
	float: left;
	height: 480px;
	width: 50%;
}

/* Portfolio 3 Columns Grid No Gap */ 

.portfolio-3-col-grid-no-gap .portfolio-item {
	float: left;
	height: 370px;
	width: 33.333%;
}

/* Portfolio Metro 01 */ 

.portfolio-metro-01 .portfolio-item img,
.portfolio-metro-02 .portfolio-item img {
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.portfolio-metro-01 > a:nth-of-type(1) > .portfolio-item {
	float: left;
	padding-top: 50%;
	position: relative;
	width: 50%;
}

.portfolio-metro-01 .wrapper:nth-of-type(1) {
	float: left;
	width: 25%;
}

.portfolio-metro-01 .wrapper:nth-of-type(1) .portfolio-item {
	padding-top: 100%;
	position: relative;
	width: 100%;
}

.portfolio-metro-01 > a:nth-of-type(2) > .portfolio-item {
	float: right; 
	padding-top: 50%;
	position: relative;
	width: 25%;
}

.portfolio-metro-01 .wrapper:nth-of-type(2) {
	float: left;
	width: 50%;
}

.portfolio-metro-01 .wrapper:nth-of-type(2) a:nth-of-type(1) .portfolio-item,
.portfolio-metro-01 .wrapper:nth-of-type(2) a:nth-of-type(2) .portfolio-item {
	float: left;
	padding-top: 50%;
	position: relative;
	width: 50%;
}

.portfolio-metro-01 .wrapper:nth-of-type(2) a:nth-of-type(3) .portfolio-item {
	margin-top: 50%;
	padding-top: 50%;
	position: relative;
	width: 100%;
}

.portfolio-metro-01 > a:nth-of-type(3) > .portfolio-item {
	float: right;
	padding-top: 50%;
	position: relative;
	width: 50%;
}

/* Portfolio Metro 02 */ 

.portfolio-metro-02 > a:nth-of-type(1) > .portfolio-item {
	float: left;
	padding-top: 50%;
	position: relative;
	width: 50%;
}

.portfolio-metro-02 .wrapper:nth-of-type(1) {
	float: left;
	width: 50%;
}

.portfolio-metro-02 .wrapper:nth-of-type(1) a:nth-of-type(1) .portfolio-item,
.portfolio-metro-02 .wrapper:nth-of-type(1) a:nth-of-type(2) .portfolio-item {
	float: left;
	padding-top: 50%;
	position: relative;
	width: 50%;
}

.portfolio-metro-02 .wrapper:nth-of-type(1) a:nth-of-type(3) .portfolio-item {
	margin-top: 50%;
	padding-top: 50%;
	position: relative;
	width: 100%;
}

.portfolio-metro-02 .wrapper:nth-of-type(2) {
	float: left;
	width: 25%;
}

.portfolio-metro-02 .wrapper:nth-of-type(2) .portfolio-item {
	padding-top: 100%;
	position: relative;
	width: 100%;
}

.portfolio-metro-02 > a:nth-of-type(2) > .portfolio-item {
	float: left;
	padding-top: 50%;
	position: relative;
	width: 25%;
}

.portfolio-metro-02 > a:nth-of-type(3) > .portfolio-item {
	float: right;
	padding-top: 50%;
	position: relative;
	width: 50%;
}

/* Portfolio Irregular Grid 01 */ 

.irregular-grid-01 .portfolio-item {
	float: left;
	width: 47.75%;
}

.irregular-grid-01 a:nth-of-type(odd) .portfolio-item {
	margin-right: 4.5%;
}

.irregular-grid-01 a:nth-of-type(even) .portfolio-item {
	margin: 100px 0 -6px 0;
}

.irregular-grid-01 .portfolio-item img {
	height: 700px;
	margin-bottom: 20px;
}

.irregular-grid-01 .portfolio-item-title {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-size: 1.625rem;
	letter-spacing: .5px;
	text-transform: capitalize;
}

.irregular-grid-01 .portfolio-item-category {
	font-size: 1rem;
	font-size: 14px;
	letter-spacing: .4px;
	margin-top: 1px;
} 

/* Portfolio Irregular Grid 02 */ 

.irregular-grid-02 .portfolio-item {
	float: left;
	width: 48.75%;
}

.irregular-grid-02 a:nth-of-type(1) .portfolio-item {
	height: 770px;
	margin-right: 2.5%;
	margin-bottom: 30px;
}

.irregular-grid-02 a:nth-of-type(2) .portfolio-item {
	height: 570px;
}

.irregular-grid-02 a:nth-of-type(3) .portfolio-item {
	height: 570px;
	margin-right: 2.5%;
}

.irregular-grid-02 a:nth-of-type(4) .portfolio-item {
	height: 770px;
	margin-top: -200px;
}

/* Portfolio Cards */ 

.portfolio-cards .portfolio-item {
	float: left;
	height: 600px;
}

.portfolio-cards a:nth-of-type(1) .portfolio-item {
	margin-right: 3%;
	width: 65.66%;
}

.portfolio-cards a:nth-of-type(2) .portfolio-item,
.portfolio-cards a:nth-of-type(6) .portfolio-item {
	width: 31.33%;
}

.portfolio-cards a:nth-of-type(3) .portfolio-item,
.portfolio-cards a:nth-of-type(4) .portfolio-item,
.portfolio-cards a:nth-of-type(5) .portfolio-item {
	margin-top: 50px;
	margin-bottom: 50px;
	width: 31.33%;
}

.portfolio-cards a:nth-of-type(4) .portfolio-item {
	margin-right: 3%;
	margin-left: 3%;
}

.portfolio-cards a:nth-of-type(7) .portfolio-item {
	margin-left: 3%;
	width: 65.66%;
}

/* Interactive Links */ 

.interactive-links {
	margin-top: 100px;
}

.interactive-links .item {
	text-align: center;
	position: relative;
}

.interactive-links .item h2 {
	display: inline;
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-size: 5.25rem;
	font-weight: normal;
	position: relative;
	text-transform: capitalize;
	z-index: 2;
}

.interactive-links .item span {
	font-size: .75rem;
	position: absolute;
	right: -51px;
	top: 0;
}

.interactive-links .item h2:hover {
	color: rgba(255, 255, 255, 0);
	-webkit-text-stroke: 1.5px rgba(255, 255, 255, 1.0);
}

.interactive-links .item h2:hover span {
	display: none;
}

.interactive-links .item img {
	left: 50%;
	opacity: 0;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
}

.interactive-links .item h2:hover ~ img {
	opacity: 1;
	transition: opacity .4s linear;
}

/* =============== # Services =============== */

.services_01 {
	margin: 136px 0 130px 0;
}

.services_01 .item {
	align-items: center;
	border: 1px solid #eee;
	display: flex;
	float: left;
	height: 370px;
	text-align: center;
	width: 31.666%;
}

.services_01 .item .wrapper {
	margin: auto;
}

.services_01 .item:nth-of-type(2) {
	margin: 0 2.5%;
}

.services_01 img {
	width: 40%;
}

.services_01 h3 {
	font-size: 1.3rem;
	font-weight: normal;
	letter-spacing: .5px;
	margin-top: 20px;
	text-transform: capitalize;
}

 /* =============== # Team =============== */

.team {
	margin-top: 134px;
}

.team-member {
	float: left;
	height: 340px;
	position: relative;
	width: 25%;
}

.team-member .overlay {
	left: 0;
	height: 100%;
	opacity: 0;
	position: absolute;
	text-align: center;
	top: 0;
	transition: all .3s linear;
	width: 100%;
}

.team-member .overlay .info {
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
}

.team-member:hover .overlay {
	cursor: pointer;
	opacity: 1;
}

.team-member .overlay .info h2 {
	font-size: 1.4rem;
	font-weight: normal;
	letter-spacing: .5px;
	text-transform: capitalize;
}

.team-member .overlay .info h3 {
	font-size: .75rem;
	font-weight: normal;
	letter-spacing: 1.5px;
	margin-top: 5px;
	text-transform: uppercase;
}

/*-----------------------------------------------------
3. Pages
------------------------------------------------------


/* =============== # About Me =============== */

.about-me {
	margin-bottom: 136px;
}

.about-me .image {
	float: left;
	height: 770px;
	margin-right: 5%;
	width: 49%;
}

.about-me .content {
	float: right;
	width: 46%;
}

.about-me h2 {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-size: 2.7rem;
	font-weight: normal;
	text-transform: capitalize;
}

.about-me p {
	font-size: .875rem;
	letter-spacing: .1px;
	line-height: 2;
}

.about-me ul {
	list-style: none;
	margin-top: 14px;
	text-transform: capitalize;
}

.about-me li {
	font-size: .875rem;
	letter-spacing: .3px;
	margin-bottom: 10px;
}

.about-me .intro {
	margin: 70px 0 37px 0;
}

.about-me .intro h2,
.about-me .services h2 {
	margin-left: -3px;
}

.about-me .intro p:nth-of-type(1){
	margin: 10px 0 10px 0;
}

.about-me .services {
	margin-bottom: 30px;
}

.about-me .services ul {
	float: left;
}

.about-me .services ul:nth-of-type(1) {
	margin-right: 70px;
}

.about-me .awards {
	margin-bottom: 40px;
}

.contact-me p {
	margin: 10px 0;
}

.mail-link {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-size: 2.125rem;
	position: relative;
}

.mail-link:after {
	bottom: -5px;
	content: "";
	height: 2px;
	left: 0;
	position: absolute;
	transition: width .4s linear;
	width: 0%;
}

.mail-link:hover:after {
	width: 100%;
}



/* =============== # About Us =============== */

.about-us {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	margin-top: 100px;
}

.about-us .intro h2 {
	float: left;
	font-size: 3rem;
	font-weight: normal;
	margin: 0 2.5% 0 -3px;
	text-transform: capitalize;
	width: 48.75%;
}

.about-us .intro p {
	float: left;
	font-size: 1.5rem;
	letter-spacing: .2px;
	line-height: 1.7;
	margin-top: 13px;
	width: 48.75%;
}

/* =============== # Agency Minimal =============== */

.agency-minimal {
	background: #fff;
}

.agency-minimal .cta_02 {
	background: #f8f8f8 !important;
	width: 100vw !important;
	margin-left: calc(-50vw + 50%) !important;
	margin-right: calc(-50vw + 50%) !important;
	position: relative !important;
	left: 0 !important;
	right: 0 !important;
}

.agency-minimal .intro {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	margin: 120px 0 60px 0;
}

.agency-minimal .intro h1 {
	font-size: 4.5rem;
	font-weight: normal;
	line-height: 1.2;
	margin-bottom: 17px;
}

.agency-minimal .intro h2 {
	font-size: 1.375rem;
	font-weight: normal;
	letter-spacing: 1px;
	line-height: 1.5;
}

.section-intro {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
}

.section-intro h2 {
	font-size: 1.375rem;
	font-weight: normal;
	letter-spacing: 1px;
	line-height: 1.5;
	color: #0A1573;
	margin-bottom: 20px;
}

.section-intro h5 {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-size: 2rem;
	font-weight: normal;
	line-height: 1.2;
}

/* =============== # Agency Modern =============== */ 

.agency-modern .hero {
	align-items: center;
	background: url('../img/img-placeholder.png');
	-webkit-background-size: cover;
	background-size: cover;
	background-position: center;
	display: flex;
	height: 100vh;
	justify-content: center;
	position: relative;
	width: 100%;
}

.agency-modern .hero header {
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.agency-modern .hero .content {
	text-align: center;
	margin-top: 50px;
}

.agency-modern .hero h1 {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-size: 4.5rem;
	font-weight: normal;
	line-height: 1.3;
	margin: 33px 0 45px 0;
}

.agency-modern .hero h2 {
	font-size: .75rem;
	font-weight: 500;
	letter-spacing: 2px;
	text-transform: uppercase;
}

.agency-modern .about .info {
	float: left;
	padding-top: 50%;
	padding-bottom: 4px;
	width: 50%;
	position: relative;
}

.agency-modern .about .info .content {
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 75%;
}

.agency-modern .about .info .content h3 {
	font-size: .75rem;
	font-weight: 600;
	letter-spacing: 2.5px;
	text-transform: uppercase;
}

.agency-modern .about .info .content h2 {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-size: 2.625rem;
	font-weight: normal;
	line-height: 1.3;
	margin: 22px 0 29px 0;
}

.agency-modern .about .info .content p {
	font-size: .875rem;
	line-height: 1.9;
	letter-spacing: .3px;
}

.agency-modern .about .info .content p:nth-of-type(1) {
	margin-bottom: 20px;
}

.agency-modern .about .services {
	float: left;
	width: 50%;
}

.agency-modern .about .services .item {
	float: left;
	padding-top: 50%;
	position: relative;
	width: 50%;
}

.agency-modern .about .services .item {
	border: 1px solid #fff;
}

.agency-modern .about .services .item:nth-of-type(1) {
	border-bottom: 1px solid #eee;
}

.agency-modern .about .services .item:nth-of-type(2) {
	border-bottom: 1px solid #eee;
	border-left: 1px solid #eee;
}

.agency-modern .about .services .item:nth-of-type(4) {
	border-left: 1px solid #eee;
}

.agency-modern .about .services .item  .content {
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
}

.agency-modern .about .services .item .content img {
	margin: auto;
	height: 60px; 
}

.agency-modern .about .services .item .content h3 {
	font-size: 1.3rem;
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-weight: normal;
	letter-spacing: .5px;
	margin-top: 23px;
	text-align: center;
	text-transform: capitalize;
}

/* =============== # Contact =============== */

.contact {
	margin: 130px 0 150px 0;
}

.contact h1 {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-size: 3.75rem;
	font-weight: normal;
	line-height: 1.1;
	margin-bottom: 45px;
}

.contact .contact-form {
	float: left;
	width: 66%;
}

.contact-info {
	float: left;
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	list-style: none;
	margin: -6px 0 0 50px;
}

.contact-info li:first-child {
	font-size: 1rem;
	font-weight: 500;
	letter-spacing: 1.5px;
	margin-bottom: 11px;
	text-transform: uppercase;
}

.contact-info li {
	font-size: 15px;
	letter-spacing: .5px;
	margin-bottom: 4px;
}

/* =============== # Personal Portfolio =============== */

.personal-portfolio .hero {
	align-items: center;
	display: flex;
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	padding: 100px 0;
}

.personal-portfolio .content,
.personal-portfolio .hero .img-container {
	width: 50%;
}

.personal-portfolio .hero .img-container img {
	float: right;
}

.personal-portfolio .hero h1 {
	font-size: 4.5rem;
	font-weight: normal;
	line-height: 1.1;
	margin-left: -6px;
	text-transform: capitalize;
}

.personal-portfolio .hero p {
	font-size: 1.5rem;
	letter-spacing: .3px;
	line-height: 1.5;
	margin: 19px 0 24px 0;
}

.personal-portfolio .hero .cta-link {
	font-size: 1.75rem;
	letter-spacing: .4px;
	text-transform: capitalize;
}

.personal-portfolio .hero .cta-link:before {
	top: 14px;
}

.personal-portfolio .irregular-grid-02 {
	margin-bottom: 100px;
}

/* =============== # Single Project =============== */

.project-cover {
	background: url('../img/img-placeholder.png');
	background-position: center;
	-webkit-background-size: cover;
	background-size: cover;
	height: 880px;
	width: 100%;
}

.single-project {
	margin: 145px 0 150px 0;
}

.single-project .intro {
	margin-bottom: 110px;
}

.single-project .info {
	float: left;
	margin-right: 2.5%;
	width: 49%;
}

.single-project .info h2 {
	font-size: .75rem;
	font-weight: 500;
	letter-spacing: 2px;
	text-transform: uppercase;
}

.single-project .info h1 {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-size: 3.75rem;
	font-weight: normal;
	margin: 7px 0 7px -3px;
	text-transform: capitalize;
}

.single-project .info p,
.project-description .content p {
	font-size: 15px;
	letter-spacing: .2px;
	line-height: 2;
}

.single-project .details {
	float: right;
	list-style: none;
	margin-top: 128px;
	width: 32%;
}

.single-project .details li {
	font-size: .75rem;
	font-weight: 500;
	letter-spacing: 1px;
	margin-bottom: 15px;
	position: relative;
	text-transform: uppercase;
}

.single-project .details li span {
	font-weight: 400;
	letter-spacing: .7px;
	position: absolute;
	right: 0;
	text-transform: capitalize;
}

.project-img-full {
	height: 700px;
	width: 100%;
}

.project-img-halved .item {
	float: left;
	height: 700px;
	width: 48.75%;
}

.project-img-halved .item:nth-of-type(1) {
	margin-right: 2.5%;
}

.project-description {
	margin: 80px 0 40px 0;
}

.project-description h2,
.project-description .content {
	float: left;
	width: 48.75%;
}

.project-description h2 {
	margin-right: 2.5%;
}

.project-description h2 {
	font-size: .95rem;
	font-weight: 500;
	letter-spacing: 2px;
	line-height: 2.2;
	position: relative;
	text-transform: uppercase;
}

.project-description h2 span {
	padding-right: 90px;
}

.project-description h2 span:after {
	content: "";
	display: inline-block;
	height: 1px;
	left: 40px;
	top: 12px;
	position: absolute;
	width: 45px;
}

.project-section-bg {
	background: #f8f8f8;
	width: 100%;
	padding-bottom: 0px;
	overflow: hidden;
	clear: both;
	position: relative;
	display: block;
	margin-bottom: 0;
}

.project-section-bg .container {
	position: relative;
	z-index: 1;
}

.project-section-bg::after {
	content: "";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.project-section-bg .container {
	position: relative;
	overflow: hidden;
	padding-bottom: 40px;
	background: transparent;
}

.house-outline-bg {
	position: absolute;
	right: 0;
	bottom: -60px;
	height: auto;
	width: auto;
	max-width: 50%;
	z-index: 1;
	pointer-events: none;
	opacity: 0.3;
}

.agency-minimal {
	position: relative;
}

.project-section-bg {
	position: relative;
}


.project-description .content p:first-child {
	margin-bottom: 20px;
}

.project-description .content a {
	color: #0A1573;
	text-decoration: none;
	transition: color .2s ease-in-out;
}

.project-description .content a:hover {
	color: #08104d;
}

.inline-whatsapp-icon {
	width: 16px;
	height: 16px;
	vertical-align: middle;
	display: inline-block;
	margin: 0 2px;
	position: relative;
	top: -2px;
}

/* =============== # Savings Calculator =============== */

.savings-calculator {
	margin: 0;
	float: right;
	width: 48.75%;
}

.calculator-top {
	display: flex;
	justify-content: space-between;
	margin-bottom: 60px;
	gap: 40px;
}

.calculator-item {
	flex: 1;
}

.calculator-amount {
	font-size: 2rem;
	font-weight: 740;
	color: #000;
	margin-bottom: 10px;
	line-height: 1.2;
}

.savings-item {
	position: relative;
}

.savings-arrow {
	position: absolute;
	top: -40px;
	left: 50%;
	transform: translateX(-50%);
	width: auto;
	height: 40px;
	display: block;
	z-index: 1;
}

.savings-item .calculator-amount {
	color: #0A1573;
	position: relative;
}

.calculator-label {
	font-size: 0.875rem;
	color: #666;
	line-height: 1.6;
}

.calculator-bottom {
	display: flex;
	align-items: center;
	gap: 40px;
}

.price-button-container {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
}

.price-button {
	background-color: #0A1573;
	color: #fff;
	border: none;
	padding: 15px 30px;
	border-radius: 27.5px;
	font-size: 1.25rem;
	font-weight: 500;
	cursor: pointer;
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	margin-bottom: 10px;
	transition: background-color .2s ease-in-out;
}

.price-button:hover {
	background-color: #08104d;
}

.price-label {
	font-size: 0.875rem;
	color: #666;
}

.slider-container {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.price-slider {
	width: 100%;
	height: 8px;
	border-radius: 4px;
	background: #e0e0e0;
	outline: none;
	-webkit-appearance: none;
	appearance: none;
	margin-bottom: 10px;
}

.price-slider::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: #0A1573;
	cursor: pointer;
	box-shadow: 0 0 0 4px rgba(10, 21, 115, 0.1);
	transition: box-shadow .2s ease-in-out;
	margin-top: -8px;
}

.price-slider::-webkit-slider-thumb:hover {
	box-shadow: 0 0 0 6px rgba(10, 21, 115, 0.15);
}

.price-slider::-moz-range-thumb {
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: #0A1573;
	cursor: pointer;
	border: none;
	box-shadow: 0 0 0 4px rgba(10, 21, 115, 0.1);
	transition: box-shadow .2s ease-in-out;
}

.price-slider::-moz-range-thumb:hover {
	box-shadow: 0 0 0 6px rgba(10, 21, 115, 0.15);
}

.price-slider::-webkit-slider-runnable-track {
	height: 8px;
	border-radius: 4px;
	background: linear-gradient(to right, #0A1573 0%, #0A1573 var(--slider-progress, 0%), #e0e0e0 var(--slider-progress, 0%), #e0e0e0 100%);
}

.price-slider::-moz-range-progress {
	height: 8px;
	border-radius: 4px;
	background: #0A1573;
}

.price-slider::-moz-range-track {
	height: 8px;
	border-radius: 4px;
	background: #e0e0e0;
}

.slider-labels {
	display: flex;
	justify-content: space-between;
	font-size: 0.75rem;
	color: #666;
}

.extended-project-details {
	margin: 115px auto 0 auto;
	list-style: none;
	width: 75%;
}

.extended-project-details li {
	border-bottom: 1px solid #eee;
	font-size: .75rem;
	font-weight: 500;
	letter-spacing: 1px;
	padding: 25px 0;
	position: relative;
	text-transform: uppercase;
}

.extended-project-details li:nth-of-type(1) {
	padding-top: 0;
}

.extended-project-details li span {
	font-weight: 400;
	letter-spacing: .7px;
	position: absolute;
	right: 0;
	text-transform: capitalize;
}

.next-project {
	padding: 100px 0 115px 0;
}

.next-project h1 {
	font-family: "Basis Grotesque Pro", Arial, sans-serif;
	font-size: 5rem;
	font-weight: normal;
	margin-left: -5px;
	text-transform: capitalize;
}

.next-project h2 {
	font-size: .75rem;
	font-weight: 500;
	letter-spacing: 2px;
	text-transform: uppercase;
}

/* =============== # Reviews Section =============== */

.reviews-section {
  margin: 0px 0;
  padding: 0;
  background: #fff;
  position: relative;
  z-index: 1;
}

.reviews-section h2 {
  font-family: 'Basis Grotesque Pro', Arial, sans-serif;
  font-size: 28px;
  font-weight: 400;
  margin-top: 0;
  margin-bottom: 5px;
  color: #0A1573;
}

.reviews-section .reviews-subtitle {
  font-family: 'Basis Grotesque Pro', Arial, sans-serif;
  font-size: .95rem;
  font-weight: 500;
  letter-spacing: 2px;
  line-height: 2.2;
  position: relative;
  text-transform: uppercase;
  margin: 0 0 0 0;
  color: #000;
}

/* Homepage: Artikelen en nieuws (eerste 2 blogposts, zelfde stijl als blog featured) */
.home-articles-section {
  background: #fff;
  padding: 30px 0 60px;
}
.home-articles-container {
  max-width: 1170px;
  margin: 0 auto;
  padding: 0 15px;
}
.home-articles-section h2 {
  font-family: 'Basis Grotesque Pro', Arial, sans-serif;
  font-size: 28px;
  font-weight: 400;
  margin-top: 0;
  margin-bottom: 5px;
  color: #0A1573;
}
/* Zelfde ruimte tussen subtitel en cards als bij reviews (subtitle → review cards) */
.home-articles-section .home-articles-subtitle {
  font-family: 'Basis Grotesque Pro', Arial, sans-serif;
  font-size: .95rem;
  font-weight: 500;
  letter-spacing: 2px;
  line-height: 2.2;
  position: relative;
  text-transform: uppercase;
  margin: 0 0 50px 0;
  color: #000;
}
.home-articles-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px;
  grid-auto-rows: 330px;
  margin-bottom: 15px;
}
.home-articles-section .post-card {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  display: block;
  height: 100%;
  min-height: 330px;
  background: #eee;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.08);
  transition: transform 0.2s ease-in-out;
}
.home-articles-section .post-card:hover {
  transform: translateY(-4px);
}
.home-articles-section .post-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.02);
}
.home-articles-section .post-card__overlay {
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 16px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.home-articles-section .post-card__tags {
  display: flex;
  gap: 6px;
  margin-bottom: 8px;
  flex-wrap: wrap;
}
.home-articles-section .post-card__tags .tag {
  font-family: 'Basis Grotesque Pro', Arial, sans-serif;
  font-size: 11px;
  line-height: 1;
  padding: 6px 8px;
  border-radius: 6px;
  background: #0A1573;
  color: #fff;
  font-weight: 600;
}
.home-articles-section .post-card__title {
  margin: 0;
  font-family: 'Basis Grotesque Pro', Arial, sans-serif;
  font-size: 1.375rem;
  font-weight: normal;
  color: #111;
  line-height: 1.2;
}
.home-articles-section .post-card--big .post-card__title {
  display: inline-block;
  width: fit-content;
  max-width: 100%;
  background: #fff;
  padding: 8px 12px 6px 12px;
  border-radius: 6px;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  align-self: flex-start;
}
@media (max-width: 768px) {
  .home-articles-grid {
    grid-template-columns: 1fr;
  }
}

.reviews-container {
  display: flex;
  gap: 20px;
  overflow-x: visible;
  padding-bottom: 60px;
  padding-left: 5px;
  padding-right: 5px;
  max-width: 1170px;
  margin: 0 auto;
}

.review-card {
  min-width: 0;
  width: calc((100% - 60px) / 4);
  height: 342px;
  border-radius: 12px;
  padding: 25px;
  position: relative;
  display: flex;
  flex-direction: column;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  flex-shrink: 0;
}

.review-card.dark-blue {
  background: #0A1573;
  color: white;
}

.review-card.white {
  background: white;
  color: #000;
  border: 1px solid #e0e0e0;
}

.review-card.image-bg {
  background-image: url('/assets/icons/reviews-background.png');
  background-size: cover;
  background-position: center;
  color: white;
  position: relative;
  opacity: 1;
}

.review-card.image-bg::before {
  display: none;
}

.review-card.light-blue {
  background: #E8F0FF;
  color: #000;
}

.review-card .quote-icon {
  position: absolute;
  top: 20px;
  right: 20px;
  width: auto;
  height: 40px;
  object-fit: contain;
  z-index: 1;
}

.review-card .rating-display {
  margin-bottom: 15px;
}

.review-card .rating-stars {
  display: flex;
  gap: 3px;
  margin-bottom: 5px;
}

.review-card .rating-stars .star {
  color: #ffc107;
  font-size: 18px;
}

.review-card.dark-blue .rating-stars .star,
.review-card.image-bg .rating-stars .star {
  color: #ffc107;
}

.review-card .rating-score {
  font-size: 32px;
  font-weight: 600;
  color: #0A1573;
}

.review-card.dark-blue .rating-score {
  color: white;
}

.review-card .review-text {
  flex: 1;
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 20px;
}

.review-card.dark-blue .review-text {
  color: white;
}

.review-card.image-bg .review-text {
  color: #333;
}

.review-card .reviewer-info {
  margin-top: auto;
}

.review-card .reviewer-name {
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 3px;
  line-height: 1;
}

.review-card.image-bg .reviewer-name {
  color: #000;
  text-shadow: 2px 2px 4px rgba(255, 255, 255, 0.8), -1px -1px 2px rgba(255, 255, 255, 0.8), 1px -1px 2px rgba(255, 255, 255, 0.8), -1px 1px 2px rgba(255, 255, 255, 0.8);
}

.review-card .review-date {
  font-size: 13px;
  opacity: 0.7;
  margin-bottom: 10px;
  line-height: 1;
  margin-top: 0;
}

.review-card.image-bg .review-date {
  color: #000;
  opacity: 1;
  text-shadow: 2px 2px 4px rgba(255, 255, 255, 0.8), -1px -1px 2px rgba(255, 255, 255, 0.8), 1px -1px 2px rgba(255, 255, 255, 0.8), -1px 1px 2px rgba(255, 255, 255, 0.8);
}

.review-card .source-logo {
  position: absolute;
  bottom: 15px;
  right: 15px;
  width: 60px;
  height: 30px;
  object-fit: contain;
  opacity: 0.8;
}

.review-card.dark-blue .source-logo {
  filter: invert(1);
}

/* Admin preview specific styles */
.preview-section {
  background: transparent;
  border: none;
  border-radius: 0;
  padding: 0;
  margin-bottom: 30px;
}

.preview-section h2 {
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 20px;
  color: #000;
}

.reviews-preview-container {
  display: flex;
  gap: 20px;
  overflow-x: auto;
  padding-bottom: 10px;
}

.reviews-preview-container .review-card {
  min-width: 280px;
  width: 280px;
}

.reviews-preview-container .review-card .reviewer-name {
  margin-bottom: 5px;
}

.reviews-preview-container .review-card .review-date {
  font-size: 12px;
}

@media (max-width: 768px) {
  .reviews-container {
    flex-direction: column;
    gap: 20px;
    padding-left: 5px;
    padding-right: 5px;
  }

  .review-card {
    width: 100%;
    height: auto;
    min-height: 342px;
  }

  .review-card:nth-child(n+3) {
    display: none;
  }
}

/* Video wrapper styling voor Vimeo embed */
.property-video-wrapper {
  width: 100%;
  max-width: 100%;
  margin-top: 0;
  overflow: hidden;
  position: relative;
  box-sizing: border-box;
}

.property-video-play-button {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80px;
  height: 80px;
  background: #0A1573;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 10;
  transition: transform 0.2s ease-in-out, background-color 0.2s ease-in-out;
  border: none;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.property-video-play-button:hover {
  transform: translate(-50%, -50%) scale(1.1);
  background: #0602e8;
}

.property-video-play-button::after {
  content: '';
  width: 0;
  height: 0;
  border-left: 24px solid white;
  border-top: 14px solid transparent;
  border-bottom: 14px solid transparent;
  margin-left: 4px;
}

.property-video-wrapper.playing .property-video-play-button {
  display: none;
}

/* Video offset voor woning-verkopen pagina - alleen desktop */
@media (min-width: 769px) {
  .property-video-wrapper.video-left-offset {
    margin-left: -5px;
    margin-top: 30px;
  }
  
  /* Team sectie naar linkerkolom op desktop */
  .project-description .team-left-column {
    display: block !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
  }
  
  .project-description .team-left-column .team-columns {
    display: flex !important;
  }
  
  .project-description .team-columns-mobile {
    display: none !important;
  }
  
  /* Verberg team tekst in rechterkolom op desktop (staat al in linkerkolom) */
  .project-description .team-text-mobile {
    display: none !important;
  }
  
  /* Verberg "Persoonlijk contact" tekst en eerste paragraaf in rechterkolom op desktop */
  .project-description .team-right-column .first-paragraph-mobile,
  .project-description .team-right-column .personal-contact-mobile,
  .project-description .team-right-column .mobile-only-br {
    display: none !important;
  }
  
  /* Verberg eerste paragraaf in linkerkolom op desktop */
  .project-description .team-left-column .first-paragraph-desktop {
    display: none !important;
  }
}

/* Op mobiel: verberg linkerkolom team sectie, toon rechterkolom */
@media (max-width: 768px) {
  .project-description .team-left-column {
    display: none !important;
  }
  
  .project-description .team-columns-mobile {
    display: flex !important;
  }
  
  /* Toon team tekst onder teamleden op mobiel */
  .project-description .team-text-mobile {
    display: block !important;
  }
  
  /* Video spacing op mobiel */
  .property-video-wrapper {
    margin-bottom: 10px !important;
  }
  
  /* Team member tekst op één regel op mobiel - verklein font-size om inline styles te overschrijven */
  .project-description .team-columns-mobile > div > div:nth-child(2) {
    font-size: 15px !important;
    line-height: 1.2 !important;
  }
  
  .project-description .team-columns-mobile > div > div:nth-child(3) {
    font-size: 11px !important;
    line-height: 1.2 !important;
    margin-top: 5px !important;
  }
  
  /* Verberg eerste paragraaf in linkerkolom op mobiel (want linkerkolom is verborgen) */
  .project-description .team-left-column .first-paragraph-desktop {
    display: none !important;
  }
  
  /* FAQ: verberg desktop kolommen, toon mobiel kolom */
  .project-description .faq-left-column,
  .project-description .faq-right-column {
    display: none !important;
  }
  
  .project-description .faq-mobile-column {
    display: block !important;
    width: 100% !important;
    float: none !important;
    margin-right: 0 !important;
  }
}

/* FAQ: desktop layout - toon beide kolommen, verberg mobiel kolom */
@media (min-width: 769px) {
  .project-description .faq-left-column,
  .project-description .faq-right-column {
    display: block !important;
  }
  
  .project-description .faq-mobile-column {
    display: none !important;
  }
}