/**
 *	Theme Name: GP-Child
 *	Template: generatepress
 *	Author: Modern Earth
 *	version: 1.0.0
 */

/* Grab our primary font definitions, which are wrapped in @media(hover:hover) */

@import( 'fonts/roboto-flex.css' );

/* Set css vars including default font stacks to use without downloading any webfonts */
:root {
	--system-sans:		"San Francisco", "Segoe UI", Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", system-ui, sans-serif;
	--system-serif:		Charter, "Bitstream Charter", "Sitka Text", Cambria, serif;
	--system-mono:		ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, "DejaVu Sans Mono", monospace; 
	--body-font:		var( --system-sans );
	--heading-font: 	var( --system-serif );
	--extra-wide:		calc( var( --wp--style--global--wide-size ) + 48px );
}

@media(hover:hover) {
	@font-face {			/* latin */
		font-family:		'Roboto Flex';
		font-weight:		100 1000;
		font-stretch:		50% 200%;
		font-display:		swap;
	/*		src:			url( fonts/roboto-flex.woff2 ) format( 'woff2' ); */
		src:			url( fonts/RobotoFlex[GRAD,XOPQ,XTRA,YOPQ,YTAS,YTDE,YTFI,YTLC,YTUC,opsz,slnt,wdth,wght].woff2 ) format( 'woff2-variations' );
		unicode-range:		U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
	}
	@font-face {			/* latin-ext */
		font-family:		'Roboto Flex';
		font-weight:		100 1000;
		font-stretch:		50% 200%;
		font-display:		swap;
		src: 			url( fonts/roboto-flex-latin-ext.woff2) format( 'woff2' );
		unicode-range:		U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
	}
	@font-face {			/* latin */
		font-family:		'Roboto Serif';
		font-weight:		100 900;
		font-stretch:		100%;
		font-display:		swap;
	/*		font-variation-settings:	"wdth", "GRAD", "ital" */
		src:			url( fonts/roboto-serif.woff2 ) format( 'woff2' );
		unicode-range:		U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
	}
	@font-face {			/* latin-ext */
		font-family:		'Roboto Serif';
		font-weight:		100 900;
		font-stretch:		100%;
		font-display:		swap;
		src:			url( fonts/roboto-serif-latin-ext.woff2 ) format( 'woff2' );
		unicode-range:		U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
	}
	/**
	 * 	Vermiglione - Variable Serif Font - Licensed under OFL
	 * 	https://github.com/m-casanova/Vermiglione	*/
	@font-face {
		font-family:		'Vermiglione';
		font-weight:		200 700;
		font-display:		swap;
		src:			url( 'fonts/vermiglione.woff2' ) format( 'woff2' );
	}

	/**
	 * 	Defining the var on a tag limits the value to that tag and its children
	 * 	These definitions therefore override the :root ones above		**/
	body {
		--body-font:		"Roboto Flex";
		--heading-font:		Vermiglione;
	}
	i, em, .italic {
		font-style:		oblique 12deg;
		letter-spacing:		.01em;
	}
}

/**
 * 	Typography			**/
html {
	/**
	 *	Declaring on html element resets the browser's default rem size
	 *	Not using css clamp avoids a max-value if users zoom in.
	 *	At 320px vw font-size is 16px or 21.1px at 1920px vw; changing
	 *	multiplier to .025vw makes the range 16-22.7px (320-1920px vw) */
	font-size:			calc( 15px + ( 16 * .02vw ) );
}
html > body {
	font-family:			var( --body-font );
	font-style:			normal;
	font-weight:			300;
}
body .wpembed {	/* override default wp style */
	font-family:			var( --body-font );
}
strong b {
	font-weight:			500;
}
#main p, #main li {
	line-height:			1.618em;
	margin-top:			0.809em;
	margin-bottom:			0.809em;
}
#main p:not(.fullwidth), main li:not(.fullwidth) {
	max-width:			75ch;
}
h1, h2, h3, h4, .h1, .h2, .h3, .h4 {
	font-family:			var( --heading-font );
	font-weight:			400;
	text-wrap:			balance;
}
h5, h6, .h5, .h6 {
	font-family:			var( --body-font );
	font-weight:			500;
	text-wrap:			balance;
}
h1, .h1 { font-size: 2.617rem; }
h2, .h2 { font-size: 2.023rem; }
h3, .h3 { font-size: 1.618rem; }
h4, .h4 { font-size: 1.25rem; }
h5, .h5 { font-size: 1rem; }
h6, .h6 { font-size: .809rem; }

mark, ins, abbr {
	background:			var( --wp--preset--color--very-light-gray );
	border-bottom:			2px dotted currentColor;
	padding:			0 2px;
}

p:empty, div:empty {	/* don't let Gutenberg cruft break the design/spacing */
	display:			none;
}


/**
 * 	ME or 100% Footer Logo		**/
.site-footer {
	a:not(:hover) #webhost-logo g[id] path,
	a:not(:hover) #me-logo g[id] path { 
		fill:			currentColor !important;
		opacity:		.7;
		transition:		all .3s linear;
	}
	a:not(:hover) #me-logo g#circle path {
		opacity:		.6;
	}
	.site-credit {
		width:			fit-content;
		font-size:		.77rem;
		line-height:		1.2;
	}
	.text-before {
		display:		inline-block;
		float:			left;
		width:			10ch;
	}
	.text-below {
		text-align:		center;
	}
}



/**
 * 	Normalize Button Styles		**  /

.woocommerce button.button.alt,
body button, a[class*="button"] {
	background:			var( --wp--preset--color--brand-primary );
	color:				var( --wp--preset--color--theme-white );
	border-radius:			3px !important;
	font-weight:			500;
}
.woocommerce button.button.alt:hover,
.header-search-form button.search-submit:hover, /* for customify override *  /
body button:hover, a[class*="button"]:hover {
	background:			var( --wp--preset--color--brand-primary );
	box-shadow:			inset 50px 50px 50px rgba(0, 0, 0, .4);
	color:				var( --wp--preset--color--theme-white );
}
.entry-readmore a[class*="button"], /* for customify override *  /
.is-style-outline a[class*="button"], .ghost a[class*="button"] {
	background:			transparent;
	color:				var( --wp--preset--color--brand-primary );
	border:				2px solid currentColor;
}
.entry-readmore a[class*="button"]:hover, /* for customify override *  /
.is-style-outline a[class*="button"]:hover, .ghost a[class*="button"]:hover {
	background:			var( --wp--preset--color--brand-primary );
	border-color:			var( --wp--preset--color--brand-primary );
	color:				var( --wp--preset--color--theme-white );
	box-shadow:			unset;
}

*/

button, a[class*="button"] {
	border-radius:			var( --wp--custom--border-radius );
}
button, a[class*="button"]:not(.has-background) {
	background-color:		var( --wp--preset--color--accent-1 );
	border:				2px solid var( --wp-preset--color--accent-1 );
}
.wp-block-button.is-style-outline > a[class*="button"] {
	border:				2px solid var( --wp--preset--color--accent-1 ) !important;
	&:hover {
		background-color:	var( --wp--preset--color--accent-1 );
		color:			var( --wp--preset--color--theme-white );
	}
}
button[disabled], button.gform_button[disabled] {
	cursor:				unset !important;
}

/* fix for when TinyMCE buttons pick up front end themes styles */
.mce-btn-group button {
	background-color:		transparent !important;
	color:				#333 !important;
	display:			flex !important;
	flex-direction:			column;
	justify-content:		center;
	align-items:			center;
}
.mce-btn-group button:hover {
	border-color:			currentColor !important;
	box-shadow:			inset 0 0 0 120px rgba(255, 255, 255) !important;
}
.mce-toolbar .mce-btn-group .mce-btn:hover {
	box-shadow:			0 0 0 1px currentColor !important;
}


/**
 * 	Utility Classes			**/

#main p.fullwidth {
	max-width:			unset;
}
.use-text-shadow {
	text-shadow:			1px 1px 4px rgba( 0, 0, 0, 0.8 );
}
.use-light-text-shadow {
	text-shadow:			-2px 2px 6px rgba( 255, 255, 225, 0.6 );
}

/**	Otter Blocks - section block	**/
.has-inner-width-max > .innerblocks-wrap {
	max-width:	 		var( --wp--style--global--wide-size );
	margin:				0 auto;
}
.has-inner-width-content > .innerblocks-wrap {
	max-width:			var( --wp--style--global--content-size );
	margin:				0 auto;
}
.has-inner-width-paragraph > .innerblocks-wrap {
	max-width:			75ch;
	margin:				0 auto;
}


/**
 * 	Print Styles			**/
@media print {
	@page {
		size:			8.5in x 11in portrait;
		margin:			1.5in .75in .75in;
		margin-top:		.75in;
	}
	@page :first {
	}
	nav {
		display:		none !important;
	}
	.home .main-header-wrapper {
		min-height:		unset;
	}
	body * {
		color:			black !important;
		background:		transparent !important;
	}
}


/**
 * 	Bespoke styles for theme	**/



#page { /* on a page with very little content, keep the footer at the bottom of the screen */
	min-height:			70vh;
}




