/*
	Theme Name: emSpace Nexus Child
	Description: Child theme of emSpace for emSpace Creative
	template: emspace-nexus
	Version: 1.0.1
	Requires at least: 5.0
	Tested up to: 5.9
	Requires PHP: 7.4
	Author: Eliot Matheson
	Author URI: http://www.emspacecreative.ca
	License: GNU General Public License, version 3 (GPLv3)
	License URI: http://www.gnu.org/licenses/gpl-3.0.txt
	Tags: one-column, two-columns, right-sidebar, left-sidebar, custom-menu, featured-images, theme-options, footer-widgets
	Text Domain: emspace-nexus-child
*/

/* Table of contents
––––––––––––––––––––––––––––––––––––––––––––––––––
– Branding
- Header
- Footer
- Front Page
*/


/* Branding
–––––––––––––––––––––––––––––––––––––––––––––––––– */

/* ---------------------------------------------------------------------- 2. Colors */


:root {
	--brand-colour: #ed1c24;
	--secondary-brand-colour: #282828;
	--grinners-red: #ed1c24;
	--medium-grey: #3f3f3f;
}

body {
	color:#706f6f;
	font-family: "latoregular", sans-serif;
}

h1,h2,h3,h4,h5,h6 {
	font-family: "latoblack", sans-serif;
	text-transform: uppercase;
}

h1>a:link,h2>a:link,h3>a:link,h4>a:link,h5>a:link,h6>a:link {
	text-decoration: none;
}

h1,h2,h3 {
	color: var(--brand-colour);
}

h4,h5,h6 {
	color: var(--secondary-brand-colour);
}

a, a:link, a:visited {
	color: var(--brand-colour);
	text-decoration: underline;
}

a:link.button,
button,
input[type='button'],
input[type='reset'],
input[type='submit'] {
  background-color: var(--medium-grey);
  border: 0.1rem solid var(--medium-grey);
  border-radius: .4rem;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  height: 3rem;
  letter-spacing: .1rem;
  line-height: 3rem;
  padding: 0 1.0rem;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
}

a:link.button:focus, a:link.button:hover,
button:focus,
button:hover,
input[type='button']:focus,
input[type='button']:hover,
input[type='reset']:focus,
input[type='reset']:hover,
input[type='submit']:focus,
input[type='submit']:hover {
  background-color: #fff;
  border-color: var(--brand-colour);
  color: var(--medium-grey);
  text-decoration: underline;
  outline: 0;
}

main {
	margin-bottom: -1rem;
}

figure {
  box-shadow: none;
}

/* Header
–––––––––––––––––––––––––––––––––––––––––––––––––– */

.header-banner {
	padding:1.5rem 0 0 0
}

/* Header Menu
–––––––––––––––––––––––––––––––––––––––––––––––––– */



/* Front Page Blocks
–––––––––––––––––––––––––––––––––––––––––––––––––– */

/* Footer
–––––––––––––––––––––––––––––––––––––––––––––––––– */

footer {
  background-color: var(--secondary-brand-colour);
  color: #fff;
  padding: 3rem 0;
  font-size: 80%;
  text-align: center;
}

footer a:link {
	color: #fff;
}

/* Header Logo Columns
–––––––––––––––––––––––––––––––––––––––––––––––––– */

.one-fifth {
	width: 16%;
	float: left;
	box-sizing: border-box;
	margin-left:4%;
}

.one-fifth:first-child {
	margin-left:0%;
}

.one-sixth {
	width: 12.66%;
	float: left;
	box-sizing: border-box;
	margin-left:4%;
}

.one-sixth:first-child {
	margin-left:0%;
}

.one-seventh {
	width: 10.29%;
	float: left;
	box-sizing: border-box;
	margin-left:4%;
}

.one-seventh:first-child {
	margin-left:0%;
}

/* Header
–––––––––––––––––––––––––––––––––––––––––––––––––– */

header {
	border-bottom: 4px solid var(--grinners-red);
	-webkit-box-shadow: 0px 4px 15px 4px rgba(40,40,40,0.47);
	box-shadow: 0px 4px 15px 4px rgba(40,40,40,0.47);
}

.site-description {
	color: var(--grinners-red);
	text-align: center;
	margin-top: 0;
	margin-left: auto;
	font-family: "Time New Roman";
	font-style: italic;
	font-weight: 300;
}

.site-description:before {
	content: '...';
}

.logo-container {
	text-align: center;
}

.top-logo {
	max-width: 300px;
}

.site-description-container {
	text-align: center;
}

@media (min-width: 900px) {
	.site-description {
		display: inline-block;
		margin-top: 5.25rem;
		margin-left: -8%;
		text-align: inherit;
		font-size: 110%;
	}

	.logo-container {
		text-align: auto;
	}
}

@media (min-width: 900px) {
	.site-description-container {
		text-align: inherit;
	}
}

.menu-button-container {
	text-align: center;
}

.nav-collapse li {
	margin-bottom: 0;
}

.header-nav {
	box-shadow: none;
}

.nav-collapse a {
  background: var(--medium-grey);
  color: #fff;
  text-align: center;
}

.nav-collapse a:hover {
  background: #404852;
  color: #fff;
  text-align: center;
}

@media (min-width: 768px) {
	.header-nav {
		margin-top: 3.2rem;
	}

	.nav-collapse {
		float: right;
	}

	.nav-collapse a {
		font-size: 80%;
		color: #fff;
		border-right: none;
		text-decoration: none;
	}

	.nav-collapse li {
		border-left: 1px solid #fff;
	}

	.nav-collapse li:first-child a {
		border-left: none;
	}

	nav li.menu-item-has-children a:after {
		content: "+";
		margin-left: 1rem;
		color: var(--grinners-red);
	}

	nav li.menu-item-has-children a:hover:after {
		content: "1";
		color: #fff;
	}

	.sub-menu a:after {
		display: none;
	}

	.nav-collapse ul li.focus > ul, .nav-collapse ul li:hover > ul {
		top: 55px;
		left: 0%;
		margin-left: 0
	}

	.nav-collapse ul ul {
		width: 100%;
		margin-left: 0;
	}

	.nav-collapse li li {
		width: 100%;
		margin-left: 0;
	}

	.nav-collapse ul ul a {
		width: 100%;
	}

}

.top-logo-row {
	text-align: center;
	border-top: 1px solid var(--grinners-red);
	padding-top: 1rem;
}

.top-logo-row-inner {
	width: 100%;
	margin: 0 auto;
}

@media (min-width: 800px) {
	.top-logo-row-inner {
		width: 80%;
	}
}

.top-brand-logos {
	text-align: center;
}

.top-brand-logos img{
	max-width: 95px;
}

/* Footer
–––––––––––––––––––––––––––––––––––––––––––––––––– */

@media (min-width: 550px) {
	footer {
		text-align: inherit;
	}
}

footer a {
	color: #fff;
	text-decoration: none;
}

footer a:hover {
	color: #a9a9a9;
}

footer h6 {
	color: #fff;
}

.footer-logo {
	max-width: 300px;
}

.footer-logo-columns {
	width: 22%;
	float: left;
	box-sizing: border-box;
	margin-left: 4%;
}

.footer-logo-columns:first-child {
	margin-left: 0;
}

.associations-logos {
	margin-top: 1rem;
	border-top: 2px solid #fff;
	padding-top: 3rem;
}

.associations-logos img {
	width: 100%;
	box-sizing: border-box;
	max-width: 150px;
	height: auto;
}

.copyright {
	text-align: center;
	font-size: 12px;
}

/* Front page
–––––––––––––––––––––––––––––––––––––––––––––––––– */

/* Beauty Image Block */

.fp_beauty_image-block {
	max-height: 500px;
	overflow: hidden;
	text-align: center;
	z-index: -5;
	position: relative;
	border-bottom: 2px solid #747474;
	margin-bottom: 0;
}

@media (min-width: 550px) {

	.fp_beauty_image-block img {
		width: 100%;
	}

}

/* Who We Are Block */

.fp_who_we_are-block {
	padding: 3rem 0 0 0;
	text-align: center;
}

.fp_who_we_are_callout {
	width: 90%;
	background-color: #828282;
	color: #fff;
	margin: 0 auto;
	padding: 0.1rem 1.5rem 0.1rem 1.5rem;
	margin-bottom: 3rem;
}

.fp-button-row {
	margin-bottom: 2rem;
	text-align: center;
	display: inline;
}

.fp-button-row a {
	margin-right: 2rem;
}

a:link.red-button {
	background-color: var(--grinners-red);
	border: 2px solid var(--grinners-red);
	color: #fff;
	text-decoration: none;
}

a:link.red-button:hover {
	background-color: #fff;
	border: 2px solid var(--grinners-red);
	color: initial;
	text-decoration: underline;
}

.quick-links-menu {
	margin-bottom: 0;
}

.quick-links-menu li {
	list-style: none;
	display: inline;
}

.quick-links-menu a {
	padding: 1rem 2rem;
	font-size: 90%;
}

.quick-links-menu li:after {
	content: '|';
	color: var(--grinners-red);
}

.quick-links-menu li:last-child:after {
	content: none;
}

.quick-links-menu li:first-child a {
	padding-left: 0;
}

/* Our Brands Block */

.fp-our-brands-block {
	padding: 5rem 0;
}

.fp-our-brands-block h3 {
	text-align: center;
	color: var(--medium-grey);
}

.fp-our-brands-block h3:after {
	content: '';
	border-bottom: 1px solid var(--medium-grey);
	display: block;
	width: 20%;
	margin: 0 auto;
}

.brand-sub-title {
	text-align: center;
	padding: 2rem 0;
}

.brand-entry {
	margin-bottom: 2rem;
	text-align: center;
}

@media (min-width: 992px) {
	.brand-entry {
		text-align: inherit;
	}
}

@media (min-width: 992px) {
	.one-and-a-half {
		width: 12.5%;
		flex: inherit;
	}
}

.brand-entry img {
	text-align: center;
}

.brand-logos {
	max-width: 300px;
}

.brand-links {
	font-weight: 900;
}

.brand-links a {
	margin-bottom: 2rem;
	display: inline-block;
}

.fp-brands-contact-button {
	width: 100%;
}

/* Potential Partners Block */

.fp_potential_partners-block {
	background-color: var(--grinners-red);
	color: #fff;
	text-align: center;
	padding: 2rem 0;
}

.fp_potential_partners-block h3 {
	color: #fff;
	text-align: center;
	font-size: 175%;
}

.fp_potential_partners-block-text {
	padding: 3rem 0;
}

.franchisee-photo {
	border-radius: 50%;
}

.pp-icons {
	display: block;
}

/* statistics Block */

.fp_statistics-block {
	padding: 5rem 0;
	text-align: center;
	border-top: 1px solid var(--grinners-red);
	margin-top: 5rem;
}

.stats-icons {
	max-width: 250px;
}

@media (min-width: 550px) {

	.stats-icons {
		margin-bottom: 2rem;
		margin-top: 2rem;
	}

}

/* We Are Growing Block */

.fp-growing-block {
	background-color: var(--grinners-red);
	color: #fff;
}

.wag-section-content {
	display: table;
	width: 100%;
	min-height: 400px;
}

@media (min-width: 1300px) {

	.wag-section-content {
		min-height: 700px;
	}

}
.wag-section-content-inner {
	display: table-cell;
	vertical-align: middle;
}

.fp-growing-block h3 {
	color: #fff;
	text-align: center;
	font-size: 175%;
}

@media (min-width: 900px) {
	.fp-growing-block h3 {
		margin-top: 5rem;
	}
}

/* Page Blocks
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.file-download-block {
	border: 1px solid #434343;
	padding: 2rem;
	background-color: #ffefef;
	margin-bottom: 2rem;
}

.file-download-block img {
	border: 1px solid #888888;
	max-width: 150px;
	height: auto;
}

.package-title {
	color: var(--light-grey);
	text-transform: none;
	font-size: 110%;
}

.file-download-block .button{
	font-size: 11px;
}

#grinners-list {
	list-style: inherit;
	padding-left: 2rem;
}

/* Page Content
–––––––––––––––––––––––––––––––––––––––––––––––––– */

.page-header {
	background-position: center;
	background-size: cover;
	overflow: hidden;
	position: relative;
	z-index: -5;
}

.page-top-callout {
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-align: center;
	-webkit-align-items: center;
	-webkit-box-align: center;
	align-items: center;
	height: 300px;
}

.page-top-callout-inner {
	background-color: rgba(255,255,255,0.8);
	padding: 1rem;
}

.brand-logo {
	margin-top: 1rem;
}

.page-sub-head {
	margin-bottom: 3rem;
}

.brand-notice {
	background-color:#f1f1f1;
	padding: 2rem;
	margin: 1rem 0;
}

.brand-notice-title {
	margin-bottom: 0.5rem;
}

.brand-notice-text ul {
	margin-bottom:0;
}

.brand-notice-text li:last-child {
	margin-bottom:0;
}

.archive-post-title {
	text-transform: none;
	font-size: 120%;
}

.post-list-row {
	border-bottom: none;
	margin-bottom: inherit;
}

.community-articles {
	background-color: #f0f0f0;
	padding: 2rem;
	margin-bottom: 3rem;
}

@media (min-width: 550px) {
	.post-list-row {
		margin-bottom: 3rem;
	}
	.community-articles {
		margin-bottom: inherit;
	}
}

.post-template-default h2 {
	font-size: 130%;
}

.post-meta {
	font-style: italic;
}

.wp-block-image img {
	max-width: 100%;
	height: auto;
}

.partner-headers {
	color: var(--light-grey);
	text-transform: none;
	font-size: 120%;
}

.brand-sub-title-text {
	font-weight: 900;
}

.page-template-default article h3:after {
	content: '';
	border-bottom: 1px solid var(--grinners-red);
	width: 15%;
	display: block;
	margin-top: 2rem;
}

/* Our Team Block */

@media (min-width: 900px) {

	.team-members-row {
		padding-bottom: 6rem;
	}

	/* .team-members-row:last-child {
		display: none;
	}*/
}

.team-inner {
	padding: 1.5rem;
	color: #fff;
	margin-bottom: 5rem;
}

@media (min-width: 900px) {
	.team-inner {
		margin-bottom: inherit;
		width: 88%;
	}
}

.team-inner h4 {
	color: #fff;
}

.team-inner a {
	color: #fff;
}

@media (min-width: 900px) {
	.team-member-info {
		margin-top: 4rem;
	}

	.team-member-photo {
		margin-right: -8rem;
	}
}

.team-member-name {
	margin-bottom: 0;
}

.team-member-title {
	display: block;
	font-size: 100%;
	font-weight: 700;
	width: 100%;
	margin-bottom: 2rem;
	border-bottom: 1px solid #fff;
}

.team-contact {
	margin-bottom: 1rem;
}

/* Franchise Information Request Form */

#nf-form-3-cont {
    padding-top: 1rem;
    margin-top: 3rem;
    border-top: 1px solid #000;
}

.nf-form-title h3:after {
    margin: auto;
}

.franchise-request-form-container {
	border-top: 1px solid #ebebeb;
}

.franchise-form-header {
	text-align: center;
}

.nf-form-fields-required {
    text-align:center;
}

.form-match-text {
	font-size: 70%;
}

.nf-form-content .listselect-wrap .nf-field-element div, .nf-form-content input.ninja-forms-field, .nf-form-content select.ninja-forms-field:not([multiple]) {
  height: inherit !important;
}

.franchise-form-button {
	text-align: center;
	margin-top: 3rem;
	margin-bottom: 3rem !important;
}

.form-mice-type p {
	text-align: center;
	font-size: 70%;
}

.red-form-button {
	background-color: var(--grinners-red) !important;
	color: #fff !important;
	border: 1px solid var(--grinners-red) !important;
}

.red-form-button:hover {
	background-color: #fff !important;
	color: var(--grinners-red) !important;
}

/* Timeline */

section#timeline {
	position: relative;
}

section#timeline:before {
	content: '';
	display: block;
	position: absolute;
	left: 50%;
	top: 0;
	margin: 0 0 0 -1px;
	width: 2px;
	height: 100%;
	background: rgba(0,0,0,1);
}

section#timeline article {
  width: 100%;
  margin: 0 0 20px 0;
  position: relative;
}
section#timeline article:after {
  content: '';
  display: block;
  clear: both;
}
section#timeline article div.inner {
  width: 45%;
  float: left;
  border-radius: 6px;
  background-color: #e1e1e1;
}

section#timeline article div.inner span.date {
	display: table;
	width: 60px;
	height: 50px;
	padding: 5px 0;
	position: absolute;
	top: 0;
	left: 50%;
	margin: 0 0 0 -32px;
	border-radius: 100%;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	background: #212428;
	color: #fff;
	border: 2px solid #fff;
}

section#timeline article div.inner span.date span {
	text-align: center;
	vertical-align: middle;
	display: table-cell;
}
section#timeline article div.inner span.date span.day {
  font-size: 10px;
}
section#timeline article div.inner span.date span.month {
  font-size: 18px;
}
section#timeline article div.inner h2 {
  padding: 15px;
  margin: 0;
  color: #fff;
  font-size: 20px;
  text-transform: uppercase;
  letter-spacing: -1px;
  border-radius: 6px 6px 0 0;
  position: relative;
}
section#timeline article div.inner h2:after {
  content: '';
  position: absolute;
  top: 20px;
  right: -5px;
	width: 10px;
	height: 10px;
  -webkit-transform: rotate(-45deg);
}
section#timeline article div.inner p {
  padding: 15px;
  margin: 0;
  color: var(--light-grey);
  border-radius: 0 0 6px 6px;
}
section#timeline article:nth-child(2n+2) div.inner {
  float: right;
}
section#timeline article:nth-child(2n+2) div.inner h2:after {
  left: -5px;
}
section#timeline article:nth-child(1) div.inner h2 {
  background: var(--grinners-red);
}
section#timeline article:nth-child(1) div.inner h2:after {
  background: var(--grinners-red);
}
section#timeline article:nth-child(2) div.inner h2 {
  background: #2ecc71;
}
section#timeline article:nth-child(2) div.inner h2:after {
  background: #2ecc71;
}
section#timeline article:nth-child(3) div.inner h2 {
  background: #e67e22;
}
section#timeline article:nth-child(3) div.inner h2:after {
  background: #e67e22;
}
section#timeline article:nth-child(4) div.inner h2 {
  background: #92288f;
}
section#timeline article:nth-child(4) div.inner h2:after {
  background: #92288f;
}
section#timeline article:nth-child(5) div.inner h2 {
  background: #9b59b6;
}
section#timeline article:nth-child(5) div.inner h2:after {
  background: #9b59b6;
}

@media (max-width: 700px) {
	section#timeline:before {
		left: 0%;
	}

	section#timeline article div.inner {
	  width: 90%;
	  float: right;
	}

	section#timeline article div.inner span.date {
		left: 0%;
	}

	section#timeline article:nth-child(1n+1) div.inner {
	  float: left;
	  margin-left: 5rem;
	}
	section#timeline article:nth-child(1n+1) div.inner h2:after {
	  left: -5px;
	}
}

.seminar-banner {
	background-color: #95c93d;
	padding: 1rem 0;
	margin-bottom: 1rem;
	text-align: center;
	margin-top: -2rem;
	color: #fff;
	text-align: left;
}

.seminar-banner h5 {
	color: #fff;
	text-transform: inherit;
	line-height: 2.5rem;
	margin-bottom: auto;
}

.seminar-banner a {
	color: #fff;
}