/*
Theme Name: Heywood Theme
Theme URI: n/a
Author: Lisa Kew
Author URI: KewCreative.com
Description: Theme for HREGroup.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: heywoodtheme
*/

@font-face {
  font-family: 'DanielsSignature';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(fonts/DanielsSignature.otf) format('opentype');
}

/* generic things */

html,body,h1,h2,h3,h4,h5,h6,p,ul,li,form{
	padding:0;
	margin:0;
}
*{
	box-sizing:border-box;
}
html {
	font-family:'Lato',serif;
	font-size:16px; /* for rem base */
	scroll-behavior: smooth;
	/* note: this replaces the javascript version, which is not accessible due to the 'return false' setting. */
}
html,#nav{
	scrollbar-width: thin;
}
.screen-reader-text,
.skip-link,
.social-navigation li a span{
	position:fixed;
	top:-4000rem;
	left:-4000rem;
}
.skip-link:focus,
#toggle a:focus span.skip-link{
	top:2rem;
	left:2rem;
	background:black;
	color:white;
	padding:.5rem 1rem;
	border:2px dotted white;
	text-decoration:none;
	text-transform:uppercase;
	font-size:100%;
	z-index:10000;
}
.admin-bar .skip-link:focus,
#toggle a:focus span.skip-link{
	top:4rem;
}
iframe,
img{
	max-width:100%;
}
img.attachment-thumbnail,
img.attachment-large{
	height:auto !important;
}

/* colours */

#2D2E30 - dark grey
#595647 - middle grey
#E8E3DF - creme/white
#AB9887 - beige

html{
	scrollbar-color:#2D2E30 #E8E3DF;
}
#nav{
	background:#2D2E30;
	background:rgba(45,46,48,.6);
	color:#E8E3DF;
}
.social-navigation li.instagram a{
	background-image:url(img/icon-ig.svg);
}
.social-navigation li.facebook a{
	width:.41875rem;
	background-image:url(img/icon-fb.svg);
}
.social-navigation li.youtube a{
	background-image:url(img/icon-yt.svg);
}
.social-navigation li.linkedin a{
	width:.76rem;
	background-image:url(img/icon-li.svg);
}
.colour0{
	background:#fff;
}
.colour2{
	background:#eee;
}
.colour3{
	background:#ddd;
}
.colour4{
	background:#aaa;
	color:#fff;
}
.colour5{
	background:#666;
	color:#fff;
}

/* links */

#nav a{
	text-decoration:none;
}


/* fonts */


h1.site-title,
p.site-title{
	font-size:3rem;
}
h1{
	font-size:2rem;
	line-height:1.2;
	margin-bottom:.2em;
}
h2{
	font-size:1.5rem;
	line-height:1.3;
	margin-bottom:.2em;
}

p,ul,ol{
	font-size:1.125rem;
	line-height:1.5;
	margin-bottom:1.5em;
}
#nav ul{
	font-size:1rem;
	font-weight:400;
	text-transform:uppercase;
	line-height:1;
}
.intro p,
.intro ul,
.intro ol{
	font-size:1.5rem;
	line-height:1.5;
	margin-bottom:.75em;
}
.quotebox p.quote{
	font-size:1.5rem;
	line-height:1.5;
	margin-bottom:0;
}
.quotebox p.byline{
	padding-top:.5em;
	margin-bottom;
}
.quotebox{
	padding:1.5rem 0;
}
.button{
	font-size:1.125rem;
	line-height:1.5;
	margin-bottom:1.5em;
}
p.caption{
	padding-top:.5em;
}
ul{
	list-style:none;
}
.page-content ul li{
	padding-left:1em;
	position:relative;
}
.page-content ul li:before{
	content:"\2022 ";
	display:inline-block;
	position:absolute;
	left:0;
	top:0;
}




/* layout */

#nav,
.outer,
.widebox p.caption{
	padding-left:clamp(1rem,7vw,3rem);
	padding-right:clamp(1rem,7vw,3rem);
}
.inner{
	max-width:75rem;
	margin:0 auto;
}
.page-content .inner{
	padding:1px 0; /* to keep colours and margins inside */
}

#page{
	padding-top:6.25rem; /* same as #masthead height */
}
#nav{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:0;
	min-height:8.125rem; /* enough height for logo + nav menus */
	transition:height .5s ease-in-out 0s;
}
.admin-bar #nav{
	top:32px;
}
@media(max-width:782px){
	.admin-bar #nav{
		top:46px;
	}
}
#nav .inner{
	display:flex;
	height:100%;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:center;
}
.site-branding{
	width:13.75rem;
	order:0;
}
#toggle{
	display:none;
	order:1;
}
#navcontent{
	order:2;
}
.site-nav{
	display:flex;
	justify-content:flex-end;
}
.site-nav .main-navigation{
	text-align:center;
}
.site-nav .navi{
	display:inline-block;
}
.main-navigation li{
	display:inline-block;
	position:relative;
	margin-right:2.5em;
}
.social-navigation li{
	display:inline-block;
	margin-right:1.5em;
}
.site-nav .social-navigation li:last-child{
	margin-right:0;
}
.social-navigation li a{
	display:inline-block;
	height:.8375rem;
	width:.8375rem;
	background-color:transparent;
	background-repeat:no-repeat;
	background-position:center bottom;
	background-size:contain;
}
.site-nav .main-navigation li a:after{
	content:"";
	position:absolute;
	left:0;
	top:2em;
	height:1px;
	width:0px;
	background:red;
	transition:width .3s ease-in-out 0s;
}
.site-nav .main-navigation li.current_page_item a:after,
.site-nav .main-navigation li a:focus:after,
.site-nav .main-navigation li a:hover:after,
.site-nav .main-navigation li a:active:after{
	width:100%;
}



.columns{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
.col1,
.col2{
	width:46%;
}
@media(max-width:767px){
	.col1,
	.col2{
		width:100% !important;
	}
}
.widesplit{
	display:flex;
	flex-wrap:wrap;
}
.widesplit .imageside{
	width:50%;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
}
.widesplit.imgright .imageside{
	order:2;
}
.widesplit .textside{
	width:50%;
}
.widesplit.imgleft .textside{
	padding-right:clamp(1rem,7vw,3rem);
}
.widesplit.imgright .textside{
	padding-left:clamp(1rem,7vw,3rem);
}
.widesplit .textside .inside{
	display:flex;
	flex-direction:column;
	justify-content:center;
	/* min-height is set in HTML, from image dimensions in the imageside */
	padding-top:max(2rem,6%);
	padding-bottom:max(2rem,6%);
	max-width:40.625rem;
}
.widesplit.imgleft .textside .inside{
	padding-left:clamp(2rem,5.7vw,4.8rem); /* 5.7vw (80/1400), otherwise narrow width gives more space for the text than wide width */
	margin-left:0;
	margin-right:auto;
}
.widesplit.imgright .textside .inside{
	padding-right:clamp(2rem,5.7vw,4.8rem); /* 4.8rem instead of 5rem of design, to fit a specific long title on one line */
	margin-right:0;
	margin-left:auto;
}
.widesplit .imageside .mobileplaceholder{
	display:none;
}
@media(max-width:767px){
	.widesplit .imageside{
		width:100%;
		/* height:56.25vw; */
	}
	.widesplit .imageside .mobileplaceholder{
		display:block;
		/* this one has the image dimensions as style */
	}
	.widesplit.imgright .imageside{
		order:0;
	}
	.widesplit .textside{
		width:100%;
	}
	.widesplit .textside{
		padding-left:0 !important;
		padding-right:0 !important;
	}
	.widesplit.imgleft .textside .inside,
	.widesplit.imgright .textside .inside{
		max-width:100%;
		padding-right:clamp(1rem,7vw,3rem);
		padding-left:clamp(1rem,7vw,3rem);
	}
	.colourdivider.narrowonly{
		display:block;
	}

}



/* pagination */
/* kriesi */

.pagination{
	text-align:center;
	padding:3rem 0;
}
.pagepn{
	text-indent:-250rem;
	background-repeat:no-repeat;
	background-position:center;
	background-size:auto 1rem;
}
.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:1.75rem;
	height:1.75rem;
	font-size:.875rem;
	font-weight:600;
	line-height:1.75rem;
	border-radius:1.75rem;
	box-sizing:border-box;
	padding-top:.1rem;
}
.pagination a.inactive{
	opacity:0.5;
	cursor:default;
}
.page-numbers{
	color:inherit;
	margin:0 .5rem;
}
.page-numbers.current{
	background:#FF5229;
	color:#fff;
}
.page-prev{
	margin-left:-.5rem;
	margin-right:.5rem;
}
.page-next{
	margin-right:-.5rem;
	margin-left:.5rem;
}


/* 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:.875rem;
	color:#fff;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
	font-family:"Montserrat",Arial,sans-serif;
	font-size:.875rem;
	color:#fff;
	opacity:1;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
	font-family:"Montserrat",Arial,sans-serif;
	font-size:.875rem;
	color:#fff;
	opacity:1;
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
	font-family:"Montserrat",Arial,sans-serif;
	font-size:.875rem;
	color:#fff;
}
::-ms-input-placeholder { /* Microsoft Edge */
	font-family:"Montserrat",Arial,sans-serif;
	font-size:.875rem;
	color:#fff;
}


@media (max-width:900px){
	#page{
		padding-top:6.25rem; /* same as #nav height */
	}
	#masthead{
		background:yellow;
	}
	.site-branding,
	#toggle{
		position:fixed;
		top:0;
	}
	.admin-bar .site-branding,
	.admin-bar #toggle{
		top:32px;
	}
	@media(max-width:782px){
		.admin-bar .site-branding,
		.admin-bar #toggle{
			top:46px;
		}
	}
	.site-branding{
		left:clamp(2rem,8vw,8.75rem); /* same as padding on .outer */
	}
	#toggle{
		right:clamp(2rem,8vw,8.75rem); /* same as padding on .outer */
	}
	#nav{
		height:6.25rem; /* enough to show the logo */
		transition:height 2.5s ease-in-out 0s;
		overflow:hidden;
		background:rgba(255,255,255,.9);
	}
	#nav .inner{
		align-items:flex-start;
	}
	#toggle{
		display:block;
		width:3rem;
		height:6.25rem; /* same height as #nav when #nav is closed */
		order:1;
	}
	#toggle a{
		display:block;
		width:100%;
		height:100%;
	}
	#toggle a span.burger{
		display:block;
		width:100%;
		height:100%;
		background:url(img/menu.svg) green no-repeat right center / contain;
	}
	#toggle a.navisopen span.burger{
		background:url(img/close.svg) red no-repeat right center / contain;
	}
	#navcontent{
		display:none;
	}
	body.toggled-on{
		overflow:hidden;
	}
	.toggled-on #nav,
	#nav:target{
		height:100%;
		overflow:auto;
	}
	.toggled-on #navcontent,
	#nav:target #navcontent{
		display:block;
		padding-top:6.25rem;
		padding-bottom:5rem;
		/* to make sure that even with the admin bar, there will be */
		/* a scrollbar for the last items in the list */
	}
	.site-nav .navi{
		width:100%;
		margin-top:0;
		margin-left:auto;
	}
	ul.nav-menu{
		width:100%;
		text-align:center;
		margin-bottom:1rem;
	}
	.site-nav ul.nav-menu li{
		display:block;
		float:none;
		width:100%;
		margin-right:revert;
	}
	.site-header ul.nav-menu li a{
		display:block;
		padding:1rem 0;
	}
	#social-navigation ul{
		text-align:center;
	}
	#social-navigation ul li{
		float:none;
		display:inline-block;
		padding:0 .3rem;
	}
	#nav .navisopen,
	#nav:target .navisclosed,
	.toggled-on #nav .navisclosed{
		display:none;
	}
	#nav .navisclosed,
	#nav:target .navisopen,
	.toggled-on #nav .navisopen{
		display:block;
	}

	
}