html {
	scroll-behavior: smooth;
}
body {
	margin: 0;
    padding: 0;
    font-family: 'Mori Gothic', sans-serif;
    font-weight: normal;
    font-style: normal;
    overflow-x: hidden;
}

.slick-slider .slick-list {
	width: 100% !important;
    overflow-x: hidden;
}
.slick-prev {
	width: 52px;
	height: 52px;
	border: 1px solid #b5a282;
	background: #fff;
	border-radius: 52px;
	position: absolute;
	left: 10vh;
	bottom: calc(50% - 26px);
    z-index: 100;
	cursor: pointer;
    transition: all .3s ease;
    font-size: 0;
}
.slick-next {
	width: 52px;
	height: 52px;
	border: 1px solid #b5a282;
	background: #fff;
	border-radius: 52px;
	position: absolute;
	right: 10vh;
	bottom: calc(50% - 26px);
	cursor: pointer;
    transition: all .3s ease;
    font-size: 0;
}
.slick-prev:hover, .slick-next:hover {
	opacity: .75;
}
.slick-prev::before {
  	content: url("../images/arrow-left.svg");
  	width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.slick-next::before {
  	content: url("../images/arrow-right.svg");
  	width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.slick-prev.slick-disabled, .slick-prev.slick-disabled, .slick-disabled {
	opacity: .25;
}
.slick-slide {
	border-right: 1px solid #fff;
    border-left: 1px solid #fff;
}
.mfp-wrap {
	background: rgba(181, 162, 130, .5);
}
.mfp-title {
	display: none !important;
}
.mfp-figure:after {
	box-shadow: none;
}

.cover-heading {
    font-family: 'Mori Gothic', sans-serif;
    font-weight: 200;
    font-style: normal;
}
.lead, h1 span.it, h3 span, .view { 
	font-family: freight-big-pro, serif;
	font-weight: 600;
	font-style: italic;
}
.gold {
	color: #B5A282;
}
.gold-bg {
	background: #B5A282;
}
.green {
	color: #042B2D;
}
.green-bg {
	background: #042B2D;
}
.center {
	text-align: center;
}
.left {
	text-align: left;
}
.right {
	text-align: right;
}
.fl-left {
	float: left;
}
.fl-right {
	float: right;
}
.clear {
	width: 100%;
    clear: both;
}

h1 {
    font-family: 'Mori Gothic', sans-serif;
    font-weight: 200;
    font-size: 3.5rem;
}
h2 {
	font-weight: 700;
    text-align: left;
}
h2, h3, h5 {
    font-family: 'Mori Gothic', sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 1.75rem;
    text-align: right;
}
h3 span {
	font-size: 2rem;
}
b {
	font-weight: 700;
}

a, #scroll, .btn, .trans, svg {
	-moz-transition: all .3s ease;
    -webkit-transition: all .3s ease;
    -o-transtion: all .3s ease;
	transition: all .3s ease;
}

header {
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100px;
    z-index: 100;
}
header img { 
	margin: 5vh 10vh 10vh 10vh;
    width: auto;
    height: 100px;
    float: left;
}
header #nav { 
    float: right;
    list-style: none;
    margin: 10vh 5vh 0 0;
}
header #nav li { 
    float: left;
    padding-left: 30px;
}
header #nav li a {
	font-size: 21px;
    font-weight: 600;
    color: #042B2D;
    text-decoration: none;
    text-shadow: none;
}
header #nav li a:hover, header #nav li.active a {
	color: #B5A282;
}

header #lang {
	float: right;
    width: 52px;
    height: 52px;
    border-radius: 52px;
    line-height: 50px;
    font-weight: 600;
    margin: 8.5vh 10vh 0 0;
    border: 1px solid #B5A282;
    background: rgba(255, 255, 255, 0);
    color: #B5A282;
    transition: all .3s ease;
}
header #lang:hover {
	background: #B5A282;
    color: #fff;
    cursor: pointer;
}

#scroll {
	width: 52px;
    height: 52px;
    border: 1px solid #B5A282;
    background: #fff;
    border-radius: 52px;
    position: absolute;
    left: 10vh;
    bottom: 10vh;
    cursor: pointer;
}
#scroll:hover {
	border-color: rgba(76, 68, 57, .75);
    background: rgba(76, 68, 57, .75);
}
#scroll svg {
	width: 50%;
    height: auto;
    margin: 25%;
    fill: red !important;
}
#scroll:hover svg path, #scroll svg:hover path {
	fill: #fff;
}

h1.cover-heading .btn svg, .btn svg {
    transform: rotate(270deg);
    height: 24px;
    margin-left: 10px;
    margin-right: -5px;
}
h1.cover-heading .btn svg, .btn svg {
	transform: rotate(270deg);
    height: 24px;
    margin-left: 10px;
    margin-right: -5px;
}
h1.cover-heading .btn svg path, .btn:hover svg path{
	fill: #fff;
}
h1.cover-heading .btn:hover svg, .btn:hover svg {
	margin-right: -10px;
    margin-left: 15px;
}

.main {
	width: 100%;
    height: auto;
}
.specs {
	float: left;
	list-style: none;
    margin: 6.5vh 10vh 10vh 10vh;
    padding: 0;
}
.specs li {
	font-size: 18px;
    font-weight: 300;
	color: #042B2D;
    text-align: left;
    list-style: none;
    margin: 0;
    padding: 0;
    opacity: 1;
}
.specs li span {
	font-weight: 600;
    width: 150px;
    display: inline-block;
}
.specs li a { color: #B5A282; font-weight: 600; }
.cover {
}
h1.cover-heading {
	text-align: left;
    font-size: 12.5rem;
    line-height: 12.5rem;
    color: #B5A282;
    font-weight: 600;
    position: relative;
    top: 5vh;
    margin: 20vh 10vh 0 10vh;
    z-index: 50;
}
h1.cover-heading span.it {
	font-size: 4.25rem;
    line-height: 3.75rem;
}
h2 {
	text-align: left;
    color: #B5A282;
    width: 80%;
    position: relative;
    top: 0;
    margin: 0;
    padding: 0 0 2vh 0;
    z-index: 50;
    font-weight: 700;
    float: left;
}


#scrollto { 
	height: 10vh;
    margin-top: 10vh;
}

#project-main-img {
	width: 100%;
    height: 90vh;
	margin: auto;
    border-radius: 10vh;
}

.intro {
	padding: 10vh;
    text-align: left;
    color: #514F4C;
    font-weight: 300;
}
.intro .container-fluid {
	padding-left: 0
 }
.intro img {
	width: 40%;
    height: auto;
    margin: 10vh 30%;
}
.intro h3 {
	text-align: left;
    line-height: 2rem;
    color: #fff;
}

#projects {
	background: #fff;
}
#projects h2 {
	text-align: left;
    margin: 10vh;
    font-weight: 600;
    width: auto;
}
#projects .view {
	text-align: right;
    margin: 10vh;
    font-size: 1.5rem;
    text-decoration: none;
}
#projects .view:hover {
	opacity: .5;
}

#projects .project {
	width: 33.333%;
    float: left;
    text-align: left;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    cursor: pointer;
}
#projects .project:hover h3, #projects .project:hover span {
	opacity: .5;
}
#projects a:last-of-type .project {
	border-right: none;
}
#projects .project h3 {
	font-weight: 600;
	text-align: left;
    margin-left: 10vh;
    margin-bottom: 0;
    line-height: 100%;
    transition: all .3s ease;
}
#projects .project span {
	margin: 0 0 10vh 10vh;
    float: left;
    transition: all .3s ease;
}
#projects .project span.project-link {
    position: relative;
    top: -6vh;
    left: 0;
    padding: 10px 25px 10px 45px;
    background: #b5a282;
    color: #fff;
    border-radius: 30px;
    margin-bottom: 0;
	clear:both;
}
#projects .project span.project-link:hover {
	left: 20px;
    cursor: pointer;
}
#projects .project span.project-link::before {
    content: url(https://bespoke-bau.com/images/arrow-right.svg);
    width: 30px;
    height: 30px;
    position: absolute;
    top: 6px;
    left: 10px;
    z-index: 5;
}
#projects .project .image {
	width: 100%;
    height: 33.333vw;
    float: left;
    position: relative;
}
#projects .project .image span {
	width: 100%;
    height: 100%;
    margin: 0;
    position: absolute;
    left: 0;
    background: rgba(181, 162, 130, .5);
    transition: all .3s ease;
}
#projects .project .image span:hover {
    background: rgba(181, 162, 130, 0);
    cursor: pointer;
}

.cta {
	padding: 10vh;
    color: #fff;
}
.cta a {
	color: #fff;
    text-decoration: none;
    border-bottom: 1px solid #fff;
}
.cta a:hover {
	border-bottom: 1px solid #B5A282;
}
footer {
    color: #fff;
    padding-bottom: 10vh;
    border-top: 1px solid #fff;
}
footer a {
	color: #fff;
    text-decoration: none;
    font-weight: 300;
}
footer a:hover {
	color: #B5A282;
}
footer p {
    margin: 10vh 10vh 0 10vh;
}
footer p a {
	margin-left: 20px;
}
footer .btn {
	color: #B5A282;
    padding: 10px 30px;
    border: 1px solid #B5A282;
    border-radius: 30px;
    font-weight: bold;
    font-size: 21px;
    line-height: 30px;
}
footer .btn:hover {
	background: #B5A282;
    color: #fff;
}
footer img {
	width: 40%;
    height: auto;
    margin: 10vh 30%;
}

.fadein-5 {
	opacity: 0;
    -moz-transition: opacity 1s;
    -webkit-transition: opacity 1s;
    -o-transtion: opacity: 1s;
    transition: opacity 1s;
}
.fadein-1 {
	opacity: 0;
    -moz-transition: opacity 1s;
    -webkit-transition: opacity 1s;
    -o-transtion: opacity: 1s;
    transition: opacity 1s;
    transition-delay: .5s;
}
.fadein-15 {
	opacity: 0;
    -moz-transition: opacity 1s;
    -webkit-transition: opacity 1s;
    -o-transtion: opacity: 1s;
    transition: opacity 1s;
    transition-delay: 1s;
}
.fadein-2 {
	opacity: 0;
    -moz-transition: opacity 1s;
    -webkit-transition: opacity 1s;
    -o-transtion: opacity: 1s;
    transition: opacity 1s;
    transition-delay: 1.5s;
}
.fadein-25 {
	opacity: 0;
    -moz-transition: opacity 1s;
    -webkit-transition: opacity 1s;
    -o-transtion: opacity: 1s;
    transition: opacity 1s;
    transition-delay: 2s;
}
.fadein-3 {
	opacity: 0;
    -moz-transition: opacity 1s;
    -webkit-transition: opacity 1s;
    -o-transtion: opacity: 1s;
    transition: opacity 1s;
    transition-delay: 2.5s;
}
body.loaded .fadein-5, body.loaded .fadein-1, body.loaded .fadein-15, body.loaded .fadein-2, body.loaded .fadein-25, body.loaded .fadein-3 {
	opacity: 1;
}

.show-mobile {
    	display: none;
    }
    .hide-mobile {
    	display: block;
    }

@media screen and (max-width: 992px) {

	html, body { overflow-x: hidden !important; }

	.show-mobile {
    	display: block;
    }
    .hide-mobile {
    	display: none;
    }
    
    header img {
    	margin:  20px 5vh;
        height: 80px;
    }

	h2, h3, h5 {
    	font-size: 1.25rem;
        line-height: 2rem;
        text-align: center;
    }
    h3 span {
    	font-size: 1.5rem;
    }
    .intro h3 {
    	text-align: center;
    }
	h1.cover-heading {
    	font-size: 3rem;
        line-height: 2.5;
        width: 90%;
        text-align: left;
        left: 0;
        bottom: auto;
        margin: -30px 0 0 5vh;
    }
    h1.cover-heading span {
    	margin-left: 0 !important;
    }
    h2.show-mobile {
    	text-align: left;
        margin-left: 5vh;
        width: 90vh;
    }
    h1.cover-heading span.it {
		font-size: 2.25rem;
        line-height: 2rem;
	}
    h1.cover-heading .btn {
    	font-size: 1rem;
    }
    h2.quick {
    	text-align: left;
        margin: 5vh !important;
    }
    .cover {
    	{exp:ce_img:pair src="{site_url}images/bespoke-main-mobile.jpg" width="1125" height="2436" crop="yes" interlace="yes" quality="85" parse="inward"}
    background-image: url("{made}");
    background-image: image-set(
		url("{exp:pea:webp src='{made}'}") type("image/webp"),
       	url("{made}") type("image/jpg")
    );
    {/exp:ce_img:pair}
    	background: url({site_url}images/bespoke-main-mobile.jpg);
        background-size: cover;
    	background-position: center;
    }
    #scroll {
    	left: 50%;
        bottom: 5vh;
        margin-left: -26px;
    }
    
    .intro, .cta {
    	padding: 5vh;
    }
    
    .intro img {
        width: 50%;
    	height: auto;
    	margin: 10vh 0;
    }
    
    .slick-prev {
    	left: 5vh;
        width: 32px;
        height: 32px;
    }
    .slick-next {
    	right: 5vh;
        width: 32px;
        height: 32px;
    }
    
    .specs {
    	margin: 0 5vh 5vh 5vh;
    }
    .specs li {
    	font-size: 1rem;
    	line-height: 1.5rem;
    }
    .specs li span { 
    	width: 100px;
    }
    #mobile-main {
    	width: 100%;
        height: 100vw;
        margin-top: 120px;
    }
    #scrollto {
    	height: 0;
        margin-top: 0;
    }
    
    #project-main-img {
    	width: 90vw;
    	height: 60vw;
        border-radius: 2.5vh;
    }
    
    #projects h2, #projects .project h3, #projects .project span {
    	margin-left: 5vh;
        margin-right: 0;
    }
    #projects .view {
    	margin-right: 5vh;
        margin-left: 0;
        line-height: 1.5rem;
    }
    #projects .project {
    	width: 100%;
        border: none !important;
    }
    #projects .project .green {
    	font-size: 14px;
    }
    #projects .project .image {
		height: 85vw;
    }
    #projects .project .image span {
    	background: rgba(181, 162, 130, 0);
    	transition: all .3s ease;
	}
	#projects .project .image span:hover {
    	background: rgba(181, 162, 130, .5);
	}
    #projects {
    	border-bottom: 1px solid #fff;
    }
    #gallery .slick-slide img {
    	display: block;
    	width: 100%;
    	height: auto;
	}
    #projects .slick-prev, #projects .slick-next {
    	width: 32px;
        height: 32px;
        top: 0;
    }
    #projects .slick-prev {
    	right: calc(5vh + 42px);
        left: auto;
    }
    #projects .slick-next {
		right: 5vh
    }

    footer p {
    	font-size: 13px;
    	text-align: center;
        margin-left: 2vh;
        margin-right: 2vh;
    }
    footer p a {
		margin-left: 10px;
	}
    footer .right p {
    	margin-top: 2.5vh;
    }
    .quick { margin: 10vh 5vh; }
}
.quick { margin: 10vh; margin-bottom: 0; max-width: 600px;}

@media screen and (min-width: 992px) { #projects a { opacity: 1 !important; } }