/*
Theme Name: Greenlinc
Template: generatepress
Theme URI: https://greenlinc.co.nz
Author: Weave Digital Studio
Author URI: https://weave.co.nz/
Description: 
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: gpc
*/

/*
CONTENTS:
1. GLOBALS
	1.1 Theme Variables
	1.2 Fonts
	1.3 Local Icons
	1.4 Layout
	1.5 Heading
	1.6 Text
	1.7 List
	1.8 Blockquote
	1.9 Link & Button
	1.10 Misc
2. HEADER
	2.1 Layout
	2.2 GP Desktop Menu
	2.3 GP Mobile Menu
	2.4 GP Sticky Header
3. FOOTER
4. COMPONENTS
	4.1 Gravity Forms
5. HOME
6. SEARCH RESULTS
7. MISC
8. STYLES TEMPLATE
*/


/*/////////////////////////////////////////////////////
1. GLOBAL
/////////////////////////////////////////////////////*/

/* --------------------------
THEME VARIABLES
-------------------------- */

:root {

	/* COLORS VARIABLES */

	/*
	--error: #ff4e7a;
	*/

	/* MISC VARIABLES */

	--transition-1: all .3s ease-out;

}

/* --------------------------
FONTS
-------------------------- */

/*
.woff2 		=> 	Super Modern Browsers
.woff 		=> 	Modern Browsers
.ttf 		=> 	Safari, Android, iOS
.eot 		=> 	IE9 Compat Modes
.eot?#iefix 	=> 	IE6-IE8
*/


/* --------------------------
LOCAL ICONS
-------------------------- */

[class^="starter-icon-"], 
[class*=" starter-icon-"] {
	display: inline-block;
}

/* --------------------------
LAYOUT
-------------------------- */

/* --- RESPONSIVE --- */

@media (min-width: 769px) {
	.starter-mobile {
		display: none;
	}
}
@media (max-width: 768px) {
	.starter-desktop {
		display: none;
	}
}

/* --------------------------
HEADING
-------------------------- */

h1, h2, h3, h4, h5, h6, 
blockquote, blockquote p {
	text-wrap: balance;
} 
p+:is(h1,h2,h3,h4,h5,h6), 
ul+:is(h1,h2,h3,h4,h5,h6), 
ol+:is(h1,h2,h3,h4,h5,h6) {
	margin-top: 1em;
}

/* FAKE HN */

.starter-fake-h2 :is(h1) {
	font-size: 55px;
}
.starter-fake-h3 :is(h2) {
	font-size: 42px;
	line-height: 1.3;
}

/* --- RESPONSIVE --- */

@media (max-width: 1024px) {
	.starter-fake-h2 :is(h1) {
		font-size: 41px;
	}
	.starter-fake-h3 :is(h2) {
		font-size: 33px;
	}
}
@media (max-width: 768px) {
	.starter-fake-h2 :is(h1) {
		font-size: 28px;
	}
	.starter-fake-h3 :is(h2) {
		font-size: 24px;
	}
}

/* --------------------------
TEXT
-------------------------- */

p {
	text-wrap: pretty;
}
/* strong, 
.fl-builder-content .fl-rich-text strong {
	font-weight: 500;
} */
.starter-text-intro, 
.starter-text-intro p {
	font-size: 20px;
	font-weight: 400;
	line-height: 1.6;
}
.starter-no-margin-b p, 
p.starter-no-margin-b {
	margin-bottom: 0;
}
em {
	font-family: "Albula Pro Oblique";
}

.starter-note, 
.starter-note p {
	font-weight: 700;
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	color: var(--error);
	text-align: center;
}
.starter-note a {
	color: var(--error);
}

/* --- RESPONSIVE --- */

@media (max-width: 1024px) {
	.starter-text-intro, 
	.starter-text-intro p {
		font-size: 19px;
	}
}
@media (max-width: 768px) {
	.starter-text-intro, 
	.starter-text-intro p {
		font-size: 17px;
	}
}

/* --------------------------
LIST
-------------------------- */

#content .fl-builder-content :not(.fl-module-overlay) li {
	margin-bottom: .75em;
}
#content .fl-builder-content .fl-module-overlay li {
	margin-bottom: 0;
}

/* --------------------------
BLOCKQUOTE
-------------------------- */

blockquote {
	margin: 4em 0;
	padding: 20px 30px;
	font-style: normal;
	font-weight: 300;
	color: inherit;
	border-left: 2px solid #e7e7e7;
}
blockquote p {
	margin-bottom: 0;
	font-size: 24px;
}

/* --- RESPONSIVE --- */

@media (max-width: 768px) {
	blockquote {
		padding: 20px;
	}
	blockquote p {
		font-size: 20px;
	}
}

/* --------------------------
LINK & BUTTON
-------------------------- */

a:not([href]):hover {
	cursor: default;	
}
#content a, 
#content a *,
.fl-builder-content a, 
.fl-builder-content a *, 
#content .fl-button, 
#content .fl-button *, 
button.button, 
a.button, 
.button a {
	transition: all 0.15s ease-out;
}
button.button, 
a.button, 
.button a,
[data-node] .pp-gf-content .gform_wrapper .gform-button, 
[data-node] .pp-gf-content .gform_wrapper .gform_footer .gform_button, 
[data-node] .pp-gf-content .gform_wrapper .gform_page_footer .button {
	padding: 15px 45px;
	background-color: transparent;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	text-transform: uppercase;
	letter-spacing: 1.2px;
}
.fl-builder-content .fl-button i {
	font-size: 1.1em;
}

*:focus {
	outline: none;
}
*:focus-visible {
	outline: 1px dotted rgba(0,0,0,.6);
}
.starter-no-link {
	pointer-events: none;
}

/* --- RESPONSIVE --- */

@media (max-width: 1024px) {
	button.button, 
	a.button, 
	[data-node] .pp-gf-content .gform_wrapper .gform-button, 
	[data-node] .pp-gf-content .gform_wrapper .gform_footer .gform_button, 
	[data-node] .pp-gf-content .gform_wrapper .gform_page_footer .button {
		padding: 13px 35px;
		font-size: 13px;
	}
}
@media (max-width: 768px) {
	button.button, 
	a.button, 
	[data-node] .pp-gf-content .gform_wrapper .gform-button, 
	[data-node] .pp-gf-content .gform_wrapper .gform_footer .gform_button, 
	[data-node] .pp-gf-content .gform_wrapper .gform_page_footer .button {
		padding: 11px 25px;
		font-size: 12px;
	}
}

/* --------------------------
MISC
-------------------------- */

hr {
	margin: 2em 0;
	border: none;
	border-top: 1px solid #e7e7e7;
}


/*/////////////////////////////////////////////////////
2. HEADER
/////////////////////////////////////////////////////*/

/* --------------------------
LAYOUT
-------------------------- */

/* --------------------------
GP DESKTOP MENU
-------------------------- */

/* DEV */
/* .main-navigation ul ul {
	left: 0;
	height: auto;
	opacity: 1;
} */
/* END DEV */

/* GLOBAL */ 

/* MENU BUTTON */ 

/* SUB MENU */ 

/* --------------------------
GP MOBILE MENU
-------------------------- */

/* --------------------------
GP STICKY HEADER
-------------------------- */


/*/////////////////////////////////////////////////////
3. FOOTER
/////////////////////////////////////////////////////*/


/*/////////////////////////////////////////////////////
4. COMPONENTS
/////////////////////////////////////////////////////*/

/*--------------------------
GRAVITY FORMS
--------------------------*/

html .gform_wrapper.gravity-theme .ginput_complex label {
	font-size: 80%;
}

/* VALIDATION */

html .gform_wrapper.gravity-theme .gform_validation_errors {
	background: none;
}
html .gform_wrapper.gravity-theme .gform_validation_errors > h2 {
	font-family: "Spline Sans", Arial, Verdana, sans-serif;
	font-size: 15px;
}

html .gform_wrapper.gravity-theme .gfield_validation_message, 
html .gform_wrapper.gravity-theme .validation_message, 
html .pp-gf-content .gform_wrapper .gfield .gfield_description.validation_message {
	background: none;
	padding: 8px 20px;
	border-radius: 5px;
}


/*/////////////////////////////////////////////////////
5. HOME
/////////////////////////////////////////////////////*/


/*/////////////////////////////////////////////////////
6. SEARCH RESULTS
/////////////////////////////////////////////////////*/

.search-results [data-node] .pp-content-post .pp-post-image {
	width: 20%;
}
.search-results [data-node] .pp-content-post .pp-content-body {
	width: 80%;
}
.relevanssi-query-term {
	position: relative;
	z-index: 0;
	padding-bottom: .25em;
}
.relevanssi-query-term::after {
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	right:0;
	bottom: 0;
	left: 0;
	border-bottom: 2px solid var(--green);
}

/* --- RESPONSIVE --- */

@media (max-width: 768px) {
	.search-results .rs-posts.rs-grid .pp-content-post {
		margin-bottom: 0;
	}
	.search-results [data-node] .pp-content-post .pp-post-image {
		max-width: 160px;
		width: auto;
	}
	.search-results [data-node] .pp-content-post .pp-content-body {
		width: 100%;
		padding-left: 0;
	}
}


/*/////////////////////////////////////////////////////
7. MISC
/////////////////////////////////////////////////////*/

.fl-builder-block-thumbnail {
	display: none;
}

/* --- responsive embed --- */
.embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; }
.embed-container iframe, .embed-container object, .embed-container embed, .embed-container video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }


/*/////////////////////////////////////////////////////
8. STYLES TEMPLATE
/////////////////////////////////////////////////////*/

[class*="av-demo-font-"] {
	font-size: 24px;
}
[class*="av-demo-font-"] h2, 
[class*="av-demo-font-"] h3 {
	margin-bottom: .75em; 
}
.av-demo-font-1, 
.av-demo-font-1 h2, 
.av-demo-font-1 h3 {
	font-family: "Font 1"; 
}
.av-demo-font-2, 
.av-demo-font-2 h2, 
.av-demo-font-2 h3 {
	font-family: "Font 2"; 
}