/*
Theme Name: Marc Woods
Theme URI: n/a
Author: Lisa Kew / Els van Bloois
Author URI: https://theartpartnership.co.uk/
Description: Theme for MarcWoods.com
Version: 1.0
License: no license, use a theme from https://wordpress.org/themes/ instead.
License URI: n/a
Tags: n/a
Text Domain: marcwoods
*/

/*

Dark colour #272027
Bright green #179d74
Light green #e1f0ed

Montserrat Regular and Medium for most of the text - sizes on the mark ups
Roboto Slab for the quotes

*/

html,body,h1,h2,h3,h4,h5,h6,p,ul,li,form{
	padding:0;
	margin:0;
}
.screen-reader-text{
	position:absolute;
	top:-40000px;
	left:-40000px;
}
.skip-link:focus{
	top:40px;
	left:40px;
	background:white;
	color:black;
	padding:10px 20px;
	border:2px solid black;
	text-decoration:none;
	text-transform:uppercase;
	font-size:100%;
}
img,
iframe{
	max-width:100%;
}

/* font-sizes */

body{
	font-family:'Montserrat',Arial,sans-serif;
	font-size:100%;
	font-weight:400;
	line-height:1;
}

h1{
	font-size:38px;
	font-weight:600;
	text-transform:uppercase;
	line-height:1.2;
}
.widecentered h1{
	margin-top:1em;
	margin-bottom:1em;
}
.snippets h2{
	font-size:26px;
	font-weight:600;
	text-transform:uppercase;
	line-height:1.2;
	margin-bottom:1.5em;
}
h2{
	font-size:18px;
	font-weight:600;
	line-height:1.3;
	margin-bottom:.7em;
}
.teamsmodel h2{
	font-size:22px;
	margin-top:2em;
}
.snippets h3{
	font-size:18px;
	font-weight:600;
	text-transform:uppercase;
	line-height:1.3;
	margin-bottom:.7em;
}
h3{
	font-size:16px;
	font-weight:600;
	line-height:1.5;
	margin-bottom:1em;
}
.teamsmodel h4{
	font-size:22px;
	font-weight:600;
	line-height:1.75;
	margin-bottom:.5em;
}
p,ul,ol{
	font-size:14px;
	font-weight:400;
	line-height:1.65;
	margin-bottom:0.825em;
}
.home .pageintro p,
.widecentered p,
.teamsmodel p.introline,
.snippets p{
	font-size:16px;
}
h1.site-title,
p.site-title{
	line-height:1 !important;
	margin-bottom:0 !important;
}
.videowrapper h2{
	font-size:16px;
	text-transform:uppercase;
}
.button,
a.linktext{
	font-size:18px;
	font-weight:600;
	line-height:1.2;
}
.blockoverlay{
	font-size:30px;
	font-weight:600;
	text-transform:uppercase;
	line-height:1.2;
}
p.quote{
	font-family:'Roboto Slab',serif;
	font-size:22px;
	font-weight:400;
	line-height:1.3;
}
.reviewsblocks p.quote{
	font-size:18px;
}
.singlequote p.quote{
	margin-bottom:.5em;
}
p.byline{
	font-size:14px;
	font-weight:600;
	margin-bottom:0;
}
.reviewsblocks p.byline{
	font-size:16px;
}
.site-nav ul{
	font-size:clamp(13px,1.4vw,15px);
	text-transform:uppercase;
}
.site-nav ul li.current_page_item{
	font-weight:600;
}
.site-email{
	font-size:14px;
	font-weight:600;
}
.footer-email{
	font-size:16px;
	font-weight:400;
	line-height:1.5;
	margin-bottom:1em;
}

/* end font-sizes */


.menu-toggle{
	display:none;
}

.inner{
	max-width:1150px;
	padding:0 20px;
	margin:0 auto;
}

#page{
	padding-top:94px;
	transition:padding .5s ease-in-out 0s;
}
#masthead{
	position:fixed;
	z-index:10000;
	top:0;
	left:0;
	width:100%;
	background:#fff;
	height:94px;
	height:134px;
	transition:all .5s ease-in-out 0s;
}
.admin-bar #masthead{
	top:32px;
}
@media(max-width:782px){
	.admin-bar #masthead{
		top:46px;
	}
}
#page.scrolled {
	padding-top:50px;
	padding-top:90px;
}
.scrolled #masthead{
	height:50px;
	height:90px;
}
#masthead .topstrip .inner{
	height:40px;
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-end;
	text-align:right;
	align-items:center;
}
#masthead .topstrip .inner:after{
	content:"";
	display:block;
	width:100%;
	height:1px;
	border-bottom:1px solid #b8b8b8;
}
#masthead .inner{
	height:calc(100% - 40px);
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:center;
}
.site-title img{
	display:block;
}
.site-nav{
	display:flex;
	align-items:baseline;
}
.site-email{
	margin-left:35px;
}
#social-navigation{
	margin-left:10px;
}

#masthead a{
	color:inherit;
	text-decoration:none;
}
#masthead a:focus,
#masthead a:hover,
#masthead a:active{
	color:#179d74;
}
.site-nav ul{
	margin-bottom:0 !important;
}
.main-navigation li{
	list-style:none;
	display:inline-block;
	margin-left:1.5em;
}
.main-navigation li a{
	display:block;
}
.socialnav li{
	list-style:none;
	display:inline-block;
}
.socialnav li a{
	display:block;
	height:17px;
	background-color:transparent;
	background-repeat:no-repeat;
	background-position:center;
	background-size:contain;
}
.socialnav li.twitter a{
	width:26px;
}
.socialnav li.linkedin a{
	width:17px;
}
ul#socialtop{
	margin-bottom:0;
}
#socialtop li{
	margin-left:15px;
}
#socialtop li.twitter a{
	background-image:url(img/tw-dark.png);
}
#socialtop li.linkedin a{
	background-image:url(img/li-dark.png);
}
#socialfooter li{
	margin-right:15px;
}
#socialfooter li.twitter a{
	background-image:url(img/tw-white.png);
}
#socialfooter li.linkedin a{
	background-image:url(img/li-white.png);
}
.socialnav li.twitter a:focus,
.socialnav li.twitter a:hover,
.socialnav li.twitter a:active{
	background-image:url(img/tw-green.png) !important;
}
.socialnav li.linkedin a:focus,
.socialnav li.linkedin a:hover,
.socialnav li.linkedin a:active{
	background-image:url(img/li-green.png) !important;
}


/* banners / page headings */

.page-header{
	text-align:center;
}
.banner{
	position:relative;
	height:0;
	padding-top:435px;
	background-color:black;
	background-repeat:no-repeat;
	background-position:center;
	background-size:cover;
	color:#ffffff;
}
.videowrap{
	position:relative;
	height:0;
	padding-top:56.25%;
	background-color:black;
	background-repeat:no-repeat;
	background-position:center;
	background-size:cover;
	color:#ffffff;
}
.videowrap video{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
.banneroverlay{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
}
.banneroverlay h1{
	padding:0 20px;
}
.page-header .button{
	padding-top:2em;
}
.page-header.nobanner{
	color:#179d74;
	padding-top:40px;
	border-top:1px solid #179d74;
	margin-bottom:40px;
}
.page-id-132 #colophon{
	border-top:1px solid #179d74;
}


/* generic */

.button a{
	display:inline-block;
	text-transform:uppercase;
	text-decoration:none;
	background:#179d74;
	color:#ffffff;
	padding:8px 15px;
	transition:all .2s ease-in-out 0s;
}
.button a:focus,
.button a:hover,
.button a:active{
	background:#ffffff;
	color:#179d74 !important;
}

/* pages / columns */

.home .entry-content{
	background:#e1f0ed;
	padding:80px 0 50px 0;
}
.pageintro{
	text-align:center;
	box-sizing:border-box;
	padding:0 2%;
	margin:0 auto 50px auto;
}
.home .pageintro{
	max-width:800px;
	margin-bottom:80px;
}

#primary ul li{
	/* should not apply to menus or reviewssliders */
	list-style-position:outside;
	margin-left:1.2em;
}


.page-header.banner,
.entry-content,
.wideblock{
	margin-bottom:80px;
}
.testimonials{
	margin-bottom:50px;
}
.page-id-11 .testimonials{
	background:#e1f0ed;
	padding-top:50px;
	padding-bottom:50px;
	margin-bottom:0;
}
.page-id-11 .testimonials .bx-wrapper .bx-controls-direction a{
	background-color:#e1f0ed;
}
.singlequote{
	margin-top:-33px;
	margin-bottom:35px;
}
.singlequote{
	text-align:center;
	max-width:800px;
	box-sizing:border-box;
	padding:0 2%;
	margin:-33px auto 35px auto;
}
.singlequote p.quote{
	color:#179d74;
}
.columns.auto2col{
	column-count:2;
	column-gap:40px;
}
.columns.flex2col{
	display:flex;
	justify-content:space-between;
}
.columns.flex2col.vertcenter{
	align-items:center;
}
.columns .column{
	width:calc(50% - 25px);
}
.wideblock{
	background:#e1f0ed;
	display:flex;
}
.wideblock .text,
.wideblock .image{
	width:50%;
}
.wideblock .text .inside{
	float:right;
	max-width:550px;
	padding-right:25px;
	padding-left:20px; /* same as .inner */
	padding-top:50px;
	padding-bottom:50px;
}
.wideblock .image{
	background-repeat:no-repeat;
	background-position:right;
	background-size:cover;
}
.testimonials ul{
	list-style:none;
	text-align:center;
}
ul.reviewsslider{
	display:flex;
	justify-content:center;
	align-items:center;
}
ul.reviewsslider li p{
	padding:0 14.6%;
}
ul.reviewsblocks{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	margin-left:-18px;
	margin-right:-18px;
}
ul.reviewsblocks li{
	width:33.33%;
	box-sizing:border-box;
	padding:0 18px;
	margin-bottom:30px;
}
.testimonials p.byline{
	color:#179d74;
}

.videowrapper,
.imgbox{
	text-align:center;
	padding-top:6px;
	margin-bottom:20px;
}
.videowrapper h2{
	color:#179d74;
}
.videowrapper a{
	position:relative;
	display:block;
	margin:0 auto;
}
.videowrapper img,
.videowrapper span{
	display:block;
}
.videowrapper span{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:url(img/play.png) transparent no-repeat center / auto;
	transition:background .2s ease-in-out 0s;
}
.videowrapper a:focus span,
.videowrapper a:hover span,
.videowrapper a:active span{
	background-color:rgba(0,0,0,.5);
}
.book{
	text-align:center;
	margin-bottom:40px;
}
.book img{
	margin-bottom:20px;
}
.book .byline{
	text-transform:uppercase;
	color:#179d74;
	margin-bottom:2em;
}

.widecentered{
	background:#e1f0ed;
	text-align:center;
	padding:50px 0 20px 0;
}
.widecentered .intro{
	margin-bottom:40px;
}
.widecentered .imgbox{
	max-width:100%;
	padding-top:20px;
	margin:0 auto 40px auto;
}
.textlink a{
	color:inherit;
}
.teamsmodel{
	text-align:center;
}
.teamsmodel p.introline{
	margin:1.5em 0;
}
.teamsmodel .columns{
	max-width:960px;
	display:flex;
	flex-wrap:wrap;
	margin:0 auto;
}
.teamsmodel .columns .col2{
	border-width:0 1px;
	border-style:solid;
	border-color:#b8b8b8;
}
.teamsmodel .columns .col{
	box-sizing:border-box;
	width:33.33%;
	padding:0 3vw;
}
@media(max-width:500px){
	.teamsmodel .columns .col{
		width:100%;
		padding:0;
	}
	.teamsmodel .columns .col2{
		border-width:0;
	}
}
.teamsmodel .col h4{
	color:#fff;
	max-width:6em;
	margin-left:auto;
	margin-right:auto;
}
.teamsmodel .col1 h4{
	background:#ff0000;
}
.teamsmodel .col2 h4{
	background:#ff9700;
}
.teamsmodel .col3 h4{
	background:#8dc667;
}
.buythebook{
	max-width:35rem;
	text-align:center;
	margin:4rem auto;
}
.buythebook .imgbox img{
	display:block;
	width:min(14.125rem,100%);
	margin:0 auto;
}

.iframewrapper iframe{
	width:100%;
}


/* pagination */
/* kriesi */

.pagination{
	text-align:center;
	padding:50px 0;
}
.pagepn{
	text-indent:-4000px;
	background-repeat:no-repeat;
	background-position:center;
	background-size:auto 10px;
}
.page-first{background-image:url(img/page-first.png);}
.page-prev{background-image:url(img/page-prev.png);}
.page-next{background-image:url(img/page-next.png);}
.page-last{background-image:url(img/page-last.png);}

.pagination a,
.pagination span{
	display:inline-block;
	width:28px;
	height:28px;
	font-size:14px;
	font-weight:600;
	line-height:28px;
	border-radius:25px;
	box-sizing:border-box;
	padding-top:1px;
}
.pagination a.inactive{
	opacity:0.5;
	cursor:default;
}
.page-numbers{
	color:inherit;
	margin:0 7px;
}
.page-numbers.current{
	background:#FF5229;
	color:#fff;
}
.page-prev{
	margin-left:-5px;
	margin-right:7px;
}
.page-next{
	margin-right:-5px;
	margin-left:7px;
}

/* contact form */

.wrapped,
.wrapcheckbox{
	margin-bottom:30px;
}
.grouped{
	display:flex;
	justify-content:space-between;
}
.wrapped label{
	display:block;
	font-size:16px;
	font-weight:600;
	line-height:1.2;
	margin-bottom:5px;
}
.grouped .inputwrap{
	width:calc(50% - 10px);
}
.grouped .inputwrap span,
.wpcf7-form-control-wrap span{
	display:block;
	font-size:12px;
	line-height:1.2;
	padding-top:5px;
}
span.wpcf7-list-item-label{
	font-size:14px;
	padding-top:0;
}
.wrapped input,
.wrapped textarea{
	display:block;
	width:100%;
	font-size:16px;
	box-sizing:border-box;
	padding:10px;
	border:1px solid black;
	border-radius:5px !important; /* to override even webkit zero override */
}
span.wpcf7-list-item{
	margin-left:0 !important; /* overriding default styling from wpcf7 */	
}
.wrapcheckbox label{
	display:flex;
	align-items:center;
	font-size:14px;
}
.wrapcheckbox input{
	width:25px;
	height:25px;
	border:1px solid black;
	border-radius:25px;
	margin-right:1em;
}
.wrapcheckbox a{
	color:#179d74;
	text-decoration:none;
}
.wrapcheckbox a:hover{
	color:inherit;
}
.wrappedsubmit input{
	width:150px;
	background:#179d74;
	border-color:#179d74;
	color:#fff;
	font-weight:600;
	text-transform:uppercase;
	text-align:center;
	border-radius:0 !important;
	margin:0 auto;
	cursor:pointer;
}
.wrappedsubmit input:hover{
	background:#fff;
	color:#179d74;
}
.wrappedsubmit input:disabled{
	background:#179d74;
	color:#fff;
}


/* table in privacy page */

body.page-id-3 .tablewrap{
	overflow:auto;
}
body.page-id-3 table{
	width:100%;
	border-collapse:collapse;
	margin-top:1em;
	margin-bottom:2em;
}
body.page-id-3 table th,
body.page-id-3 table td{
	vertical-align:top;
	border:1px solid black;
	padding:10px;
}


.search-form{
	clear:both;
	overflow:hidden;
}
.search-field *{
	height:20px;
	line-height:20px;
}
.search-field{
	float:left;
	width:70%;
}
.search-submit{
	float:right;
	width:25%;
	text-align:center;
	padding:0;
}



/* blocks */

.introblocks,
.snippets{
	background:#e1f0ed;
	padding:50px 0 20px 0;
	margin-bottom:80px;
	text-align:center;
}
.testimonials .inner,
.home .entry-content .inner,
.snippets inner{
	overflow:hidden;
}
.snippets h3{
	color:#179d74;
}


/* connect + footer */

#connect{
	background:#272027;
	color:#ffffff;
	padding:82px 0 90px 0;
}
#colophon{
	background:#ffffff;
	color:#272027;
	padding:30px 0 100px 0;
}
#connect .inner{
	overflow:hidden;
}
#connect .fcols{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	margin-left:-25px;
	margin-right:-25px;
}
#colophon .inner{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:center;
}
#connect a,
#colophon a{
	color:inherit;
	text-decoration:none;
}
#connect .footer-email a:focus,
#connect .footer-email a:hover,
#connect .footer-email a:active,
#colophon a:focus,
#colophon a:hover,
#colophon a:active{
	color:#179d74;
}
#connect h3{
	color:#179d74;
	text-transform:uppercase;
}
#socialfooter{
	margin-bottom:3.5em;
}
.fcol{
	width:33.33%;
	box-sizing:border-box;
	padding:0 25px;
}
.theblocks{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	margin-left:-18px;
	margin-right:-18px;
	text-align:center;
}
.theblocks .block{
	width:33.33%;
	box-sizing:border-box;
	padding:0 18px;
	margin-bottom:30px;
}
.block a{
	display:block;
	position:relative;
	overflow:hidden;
	text-decoration:none;
}
.block a img{
	display:block;
	transition:all .5s ease-in-out 0s;
}
.block a:hover img{
	transform:scale(1.1);
}

.block a span.blockoverlay{
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	box-sizing:border-box;
	padding:10px;
	display:flex;
	justify-content:center; /* needed for when nothing wraps */
	align-items:center;
	text-align:center; /* needed for when things wrap */
	color:#ffffff;
	transition:all .2s ease-in-out 0s;
	z-index:2;
}
.block a:focus span.blockoverlay,
.block a:hover span.blockoverlay,
.block a:active span.blockoverlay{
	background:rgba(255,255,255,.2);
}
.block .excerpt{
	padding-top:1em;
}
.block a.linktext{
	text-transform:uppercase;
	color:#179d74;
}
.block a.linktext:hover{
	color:inherit;
}


#footernav li{
	list-style:none;
	display:inline-block;
	line-height:.8;
	padding-left:10px;
	border-left:1px solid #272027;
	margin-left:10px;
}
#footernav li:first-child{
	margin-left:0;
	padding-left:0;
	border-left-width:0;
}




/* webkit things */

input[type=text],
input[type=search],
input[type=button],
input[type=email],
input[type=submit],
textarea{
	-webkit-appearance:none;
	-webkit-border-radius:0;
}
*{
	-webkit-text-size-adjust:100%;
}

/* Where placeholder needs to obey the styles */

/* fix the stupid placeholder colour */
/* separate rules, because: "a group of selectors containing an invalid selector is invalid". */
::-webkit-input-placeholder { /* WebKit, Blink, Edge */
	font-family:"Montserrat",Arial,sans-serif;
	/* font-size:13px; */ font-size:11px;
	letter-spacing:1px;
	color:#fff;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
	font-family:"Montserrat",Arial,sans-serif;
	/* font-size:13px; */ font-size:11px;
	letter-spacing:1px;
	color:#fff;
	opacity:1;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
	font-family:"Montserrat",Arial,sans-serif;
	/* font-size:13px; */ font-size:11px;
	letter-spacing:1px;
	color:#fff;
	opacity:1;
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
	font-family:"Montserrat",Arial,sans-serif;
	/* font-size:13px; */ font-size:11px;
	letter-spacing:1px;
	color:#fff;
}
::-ms-input-placeholder { /* Microsoft Edge */
	font-family:"Montserrat",Arial,sans-serif;
	/* font-size:13px; */ font-size:11px;
	letter-spacing:1px;
	color:#fff;
}

@media (max-width:1250px){
	.banner{
		padding-top:35.3%;
	}
}
@media (max-width:1170px){
/*
	#social-navigation,
	.site-email,
	#social-navigation li{
		margin-left:5px;
	}
*/
}
@media (max-width:1100px){
}
@media (max-width:1050px){
	.site-branding{
		width:25%;
	}
}
@media (max-width:900px){
	h1{
		font-size:32px;
	}
	.banner .button{
		font-size:16px;
	}
}
@media (max-width:900px){
	.blockoverlay{
		font-size:26px;
	}
}
@media(max-width:870px){
	.videowrap{
		padding-top:480px;
		overflow:hidden;
		background-repeat:no-repeat;
		background-position:center;
		background-size:cover;
	}
	.videowrap video{
		position:absolute;
		top:0;
		left:50%;
		width:852px;
		height:100%;
		margin-left:-426px;
    	}
}
@media (max-width:767px){
	h1{
		font-size:26px;
	}
	.banner .button{
		font-size:14px;
	}
	.columns.auto2col{
		column-count:1;
		column-gap:0;
	}
	.columns.flex2col{
		display:block;
	}
	.columns .column{
		width:100%;
	}
	.blockoverlay{
		font-size:20px;
	}
}
@media (max-width:765px){
	#masthead .inner{
		display:block;
		position:relative;
		overflow:hidden;
	}
	.site-branding{
		display:flex;
		align-items:center;
		width:170px;
	}
	.site-nav{
		display:block;
	}
	.menu-toggle{
		position:absolute;
		right:20px;
		top:0;
		display:block;
		width:40px;
		background:url(img/menu-19px.png) transparent no-repeat right center / contain;
		padding:0;
		border-width:0;
		margin-bottom:10px;
		cursor:pointer;
	}
	.site-branding,
	.menu-toggle{
		height:94px;
		transition:height .5s ease-in-out 0s;
	}
	.scrolled .site-branding,
	.scrolled .menu-toggle{
		height:50px;
	}
	.menu-toggle span{
		position:absolute;
		left:-4000px;
	}
	.site-nav .nav-menu li{
		display:block;
		text-align:center;
		margin:0 auto;
	}
	.site-nav .nav-menu li a{
		padding:10px 0;
	}
	/*
	.site-email,
	#social-navigation{
		display:block;
		width:100%;
		padding:10px 0;
		text-align:center;
	}
	.site-email,
	#social-navigation{
		margin:0 auto;
	}
	#social-navigation li{
		margin:0 15px;
	}
	*/
	#site-navigation .nav-menu{
		visibility:hidden;
	}
	.toggled-on #masthead{
		height:100%;
	}
	#site-navigation.toggled-on .nav-menu{
		visibility:visible;
	}
}

@media (max-width:720px){
	ul.reviewsblocks li,
	.theblocks .block,
	.fcol{
		width:50%;
	}
	.fcol3{
		display:none;
	}
}


@media (max-width:580px){
	h1{
		font-size:22px;
	}
	.banner .button{
		font-size:13px;
		padding-top:1.5em;
	}
}
@media (max-width:550px){
	.wideblock{
		flex-wrap:wrap;
	}
	.wideblock .text,
	.wideblock .image{
		width:100%;	
	}
	.wideblock .text .inside{
		float:none;
		padding-right:20px;
	}
	.wideblock .image{
		order:-1;
		padding-top:50%;
	}
}
@media (max-width:498px){
	.videowrap{
		padding-top:100%;
	}
	.videowrap video{
		display:none;
	}
}	
@media (max-width:480px){
	ul.reviewsblocks li,
	.theblocks .block,
	.fcol{
		width:100%;
		max-width:360px;
	}
	.fcol3{
		display:block;
	}
	.fcol{
		text-align:center;
		margin-bottom:30px;
	}
	#socialfooter{
		margin-bottom:20px;
	}
	#socialfooter li{
		margin:0 10px;
	}
	.fcol1 .button{
		margin-bottom:50px;
	}
	
}
@media (max-width:460px){
	h1{
		font-size:20px;
	}
	.banner .button{
		font-size:12px;
		padding-top:.5em;
	}
}

/* height based queries */

@media (max-height:380px){
	.site-nav .nav-menu li a,
	.site-email,
	#social-navigation{
		padding:5px 0;
	}
}