/*
	Theme Name: Sprout
	Theme URI: https://forty8creates.com
	Description: A custom theme for Sevendots based on HTML5 Blank
	Version: 1.0.0
	Author: Forty8Creates
	Author URI: https://forty8creates.com
	Tags: Blank, HTML5, CSS3

	License: MIT
	License URI: http://opensource.org/licenses/mit-license.php
*/


/*------------------------------------*\
    CONTENTS
/*------------------------------------*\
    - Normalize
    - Cookies
    - Modal
    - SVG
    - Flexbox
    - Main
    - Structure
    - Repeatables
    - Ratios
    - Buttons/Links
    - Lists
    - Forms/Inputs
    - Grid (the col grid system)
    - Pages
    - Misc
    - WordPress Core
    - Accordion Base Theme
    - Slippry Base Theme
    - Slick Base Theme
\*------------------------------------*/


/*------------------------------------*\
    Normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css
\*------------------------------------*/

button,hr,input{overflow:visible}progress,sub,sup{vertical-align:baseline}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}abbr[title]{border-bottom:none;text-decoration:underline dotted}b,strong{font-weight:bold}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}fieldset{padding:.35em .75em .625em}legend{color:inherit;display:table;max-width:100%;white-space:normal}textarea{overflow:auto}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}

:root {
  --primary-color: #DA291C;/*red*/
  --primary-dark: #AD190D;
  --primary-light: #EA5448;
  --secondary-color: #201547;/*purple*/
  --secondary-light: #4B3E77;
  --tertiary-color: #F38B23;/*orange*/
}

/*------------------------------------*\
    COOKIES
\*------------------------------------*/

#catapult-cookie-bar.float-accept {
    color: #AAAABB;
    left: 0;
    bottom: 2em;
    width: auto;
    background-color: #111;
    margin-right: 1em;
    padding: 1.5em 2.5em;
    border-left: 15px solid var(--primary-color);
    max-width: 500px;
}

#catapult-cookie-bar.float-accept h3 {
	color: #fff;
	margin: 0;
	font-size: 1.2em;
}

#catapult-cookie-bar.float-accept a,
#catapult-cookie-bar.float-accept:visited {
	color: #fff;
	font-weight: 700;
}

.ctcc-left-side {
	display: block;
	margin: 0.5em 0 0;
}

button#catapultCookie {
	background-color: var(--primary-color);
	background-image: url('img/svg/check-white.svg');
	background-position: right 1em center;
	background-size: 20px;
	background-repeat: no-repeat;
    color: #fff;
    padding: 1em 3.5em 1em 1em;
    border: none;
    display: inline-block;
    cursor: pointer;
    margin-top: 1em;
    font-weight: 700;
}

@media screen and (max-width: 500px) {
	
	#catapult-cookie-bar.float-accept {
		bottom: 0;
		margin-right: 0;
		border-left: none;
		border-top: 15px solid var(--primary-color);
		max-width: 500px;
	}
	
}

/*------------------------------------*\
    MODAL
\*------------------------------------*/

#gateway {
	display: none;
	z-index: 5000;
    background: rgba(0,0,0,0.8);
    position: fixed;
    width: 100%;
    height: 100%;
}

#gateway .flex {
	height: 100%;
}

.modal {
	background: #fff;
	max-width: 600px;
	width: 100%;
	position: relative;
	margin: 1em;
}

.modal h2 {
	color: #fff;
	background: var(--accent);
	padding: 1em 48px;
	margin-top: 0;
}

.modal .inner:not(.svgbg) {
	padding: 0 3em 1em;
}

.modal .col-left,
.mc4wp-form .col-left,
.wpcf7 .col-left {
	width: 50%;
	padding: 0 0.5em 0.5em 0;
}

.modal .col-right,
.mc4wp-form .col-right,
.wpcf7 .col-right {
	width: 50%;
	padding: 0 0 0.5em 0.5em;
}

.optional {
	font-weight: normal;
	float: right;
}

.modal .close {
	position: absolute;
    width: 57px;
    height: 57px;
    z-index: 2;
    text-indent: -999999em;
    right: 1em;
    top: 22.5px;
    cursor: pointer;
}

#wpcf7-f4455-o1 input[type="submit"] {
	background: var(--accent);
}

.modal .close {
    mask-size: 15px;
    -webkit-mask-size: 15px;
    -webkit-mask-image: url(img/svg/close.svg);
    mask-image: url(img/svg/close.svg);
    background: #fff;
}

@media only screen and (max-width: 768px) {

	.modal .col-left,
	.modal .col-right {
		width: 100%;
		padding-left: 0;
		padding-right: 0;
	}

}

@media only screen and (max-width: 500px) {

	.modal .inner:not(.svgbg) {
		padding: 0 1.5em 1em;
	}
	
	.modal h2 {
		padding: 1em 24px;
	}

}

/*------------------------------------*\
    SVG
\*------------------------------------*/

.svgbg {
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-size: contain;
	-webkit-mask-size: contain;
	mask-position: center center;
	-webkit-mask-position: center center;
}

.btn i {
	-webkit-mask-image: url(img/svg/arrow_right_alt.svg);
	mask-image: url(img/svg/arrow_right_alt.svg);
	width: 40px;
	height: 30px;
	display: inline-block;
}

.btn.dark i {
	background-color: var(--secondary-color);
}

.btn.primarycolor i {
	background-color: var(--primary-color);
}

.bulb {
	-webkit-mask-image: url(img/bulb.svg);
	mask-image: url(img/bulb.svg);
}

.home .primary-sec:first-child:before {
	content: '';
	width: 40px;
	height: 40px;
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-size: contain;
	-webkit-mask-size: contain;
	mask-position: center center;
	-webkit-mask-position: center center;
	-webkit-mask-image: url(img/svg/arrow_right_alt.svg);
    mask-image: url(img/svg/arrow_right_alt.svg);
    background-color: #fff;
    transform: rotate(90deg);
    position: absolute;
    top: 20px;
    left: 50%;
    margin-left: -20px;
}

/*------------------------------------*\
    FLEXBOX
\*------------------------------------*/

.flex {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}

.align-center {
	align-items: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
}

.justify-center {
	justify-content: center;
}

.wrap {
	flex-wrap: wrap;
}

/*------------------------------------*\
    MAIN
\*------------------------------------*/

*,
*:after,
*:before {
	box-sizing:border-box;
	-webkit-font-smoothing:antialiased;
	font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}

html {
	font-size:62.5%;
	line-height:1.15;
	overflow-x: hidden;
}

body {
	font:500 16px/160% Roboto,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
	color:#201547;
	margin:0;
	overflow-x: hidden;
	font-display: swap; /* Set to fallback if too apparent */ 
	position: relative;
	left: 0;
}

.small {
	font-size: 0.75em;
	font-weight: 700;
	line-height: 1.6;
}

img {
	max-width:100%;
	vertical-align:bottom;
	border-style:none;
	display: block;
	height: auto;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: Roboto,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
	font-weight: 800;
	margin: .67em auto;
	line-height: 1.2;
	position: relative;
	color: var(--primary-color);
}

h1 {
	font-size: 2.5em;
}

h2 {
	font-size: 2em;
}

h2.banner {
	text-align: center;
	color: #fff;
	background: var(--secondary-color);
	margin: 0;
	padding: 5%;
}

h2.banner.tertiary {
	background: var(--tertiary-color);
}

h3 {
	font-size: 1.6em;
}

h4 {
	font-size: 1.2em;
}

h5 {
	font-size: 1em;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--secondary-color);
}

h6 {
	font-size: .67em;
}

.footer h3 {
	color: #fff;
	margin-top: 16px;
}

/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/

.header,
.footer {
	background: var(--primary-color);
	padding: 1em 5%;
	color: #fff;
	position: relative;
}

.footer .copyright .col-6:last-child {
	text-align: right;
}

.header .col-12 {
    justify-content: space-between;
}

.logo {
	position: relative;
	background: url('img/logo-tagline.svg') center center no-repeat;
	background-size: contain;
	width: 172px;
	height: 46px;
}

.logo a {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-indent: -999999em;
}

.nav {
	overflow: hidden;
}

.nav ul {
	list-style-type: none;
	padding: 0;
	margin: 0;
}

.nav li {
	display: inline-block;
}

.nav a {
	display: block;
}

.nav ul.sub-menu {
	background: var(--secondary-color);
	position: absolute;
	display: none;
	z-index: 10;
	width: 300px;
	margin-left: -1em;
}

.nav ul.sub-menu li {
	width: 100%;
}

.nav ul.sub-menu a {
	display: block;
}

.menu-item-has-children:hover .sub-menu {
	display: block;
}

.article-archive {
	margin: 5%;
}

.article-grid {
	border-top: 1px solid #DBDBDB;
	padding-top: 2em;
}

.article-grid + .row {
	border-bottom: 1px solid #DBDBDB;
	padding-bottom: 2em;
}

.article-grid article,
.single-post .article-grid article {
	padding: 15px;
	width: 50%;
}

body:not(.single-post) .article-grid article:first-child {
	padding: 15px;
	width: 100%;
}

body:not(.single-post) .article-grid.frame-articles article:first-child {
	padding: 0;
}

.article-grid.frame-articles {
	border-top: none;
	padding-bottom: 5%;
}

.article-grid.frame-articles article .featured-image {
	margin-right: 0;
	aspect-ratio: 4 / 2;
}

.article-grid article:first-child .featured-image {
	padding-bottom: 40%;
}

.article-grid article.quote h3 {
	color: #fff;
	background: var(--secondary-color);
	padding: 5%;
	text-align: center;
	position: relative;
	flex: 1;
	margin: 0;
	align-items: center;
	justify-content: center;
	display: flex;
}

.article-grid article.quote h3:before,
.article-grid article.quote h3:after {
	content: '"';
}

.article-grid article .content {
	width: 311px;
	flex-direction: column;
    justify-content: space-between;
}

.article-grid article .details,
body:not(.single-post) .article-grid article:not(.quote):nth-child(2),
body:not(.single-post) .article-grid article:not(.quote):nth-child(3) {
	flex-direction: column;
}

body:not(.single-post) .article-grid article .details,
body:not(.single-post) .article-grid article:nth-child(2) .content,
body:not(.single-post) .article-grid article:nth-child(3) .content {
	width: 100%;
}

body:not(.single-post) .article-grid article:nth-child(2) .featured-image,
body:not(.single-post) .article-grid article:nth-child(3) .featured-image {
	margin-right: 0;
}

.article-grid article.quote .details {
	flex-direction: column-reverse;
}

.article-grid article.quote .content {
	width: 100%;
}

.article-grid article.quote .details {
	flex: 1;
}

.author .headshot {
    width: 38px;
    height: 38px;
    background-size: cover;
    background-position: center center;
    border-radius: 50px;
    margin: 0.75em 0.75em 0.75em 0;
    float: left;
    background-color: var(--secondary-color);
}

.post-stats div {
	flex: 0 0 200px;
}

.post-stats div.duration {
	flex: 1;
}

.post-stats .duration {
	text-align: right;
}

.article-grid article .featured-image {
	flex: 1;
	margin-right: 5%;
	padding-bottom: 56.25%;
	background-color: #f1f1f1;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	position: relative;
	overflow: hidden;
	border-radius: 4px;
}

.article-grid article .featured-image.placeholder,
.person .article-slider .featured-image.placeholder {
	background-size: 20%;
	background-repeat: no-repeat;
	background-position: center center;
}

.overlay {
	background: rgba(0,0,0,0);
	transition: 0.3s ease-in-out;
}

article.video .overlay {
	background: rgba(0,0,0,0.2);
}

article.video .featured-image:after {
	content: '';
	width: 50px;
	height: 50px;
	background: url(img/svg/play_video.svg) center center no-repeat;
	background-size: contain;
	transform: scale(1);
	transition: 0.2s ease-in-out;
	top: 50%;
	margin-top: -25px;
	left: 50%;
	margin-left: -25px;
	position: absolute;
	pointer-events: none;
}

article.video .featured-image:hover:after {
	transform: scale(1.5);
}

.article-grid .featured-image:hover .overlay,
.person .article-slider .featured-image:hover .overlay {
	background: rgba(0,0,0,0.5);
}

.featured-image .view-article {
	color: rgba(255,255,255,0);
    font-weight: 700;
    line-height: 2;
    position: absolute;
    right: 0.5em;
    bottom: -2em;
    transition: 0.3s ease-in-out;
}

.featured-image .view-article i,
.growth-grid article .view-article i,
.person .article-slider .featured-image .view-article i {
	background-color: rgba(255,255,255,0);
	transition: 0.3s ease-in-out;
}

.article-grid .featured-image:hover .view-article i,
.growth-grid article:hover .view-article i,
.person .article-slider .featured-image:hover .view-article i {
    background-color: rgba(255,255,255,1);
}

.article-grid article:not(.video) .featured-image:hover .view-article,
.growth-grid article:hover .view-article,
.person .article-slider .featured-image:hover .view-article {
    color: rgba(255,255,255,1);
    bottom: 0.5em;
}

.cat:after {
	content: '•';
	padding: 0 0.2em 0 0.5em;
}

.cat a,
.cat a:visited,
.post-cats a,
.post-cats a:visited {
	text-transform: uppercase;
	text-decoration: none;
	color: var(--secondary-color);
}
.cat a:hover,
.cat a:active {
	color: var(--secondary-light);
	text-decoration: underline;
}

.pagination {
	text-align: center;
}

.pagination span {
	padding: 0.5em 1em;
}

.pagination a,
.pagination a:visited {
	padding: 0.5em 1em;
	text-decoration: none;
	color: var(--secondary-color);
}

.pagination a:hover,
.pagination a:active {
	color: var(--secondary-light);
}

.pagination a.next,
.pagination a.prev {
	border: 1px solid var(--secondary-color);
	border-radius: 2px;
	background-color: transparent;
}


@media only screen and (max-width: 1299px) {

	.article-grid article:nth-child(n+4),
	.single-post .article-grid article {
		width: 100%;
	}

	.article-grid article:nth-child(n+4) .featured-image,
	.single-post .article-grid article .featured-image {
		padding-bottom: 40%;
	}

}

@media only screen and (max-width: 899px) {

	.introcols {
		flex-wrap: wrap;
	}
	
	.introcols .col-6 {
		flex: 0 0 100%;
	}
	
	.introcols h1 {
		margin: 0;
	}

}

@media only screen and (max-width: 600px) {

	.article-grid article:nth-child(n+1) {
		width: 100%;
		flex-direction: column;
	}
	.article-grid article:nth-child(n+1) .featured-image {
		padding-bottom: 56.25%;
		margin-right: 0;
	}
	.article-grid article:nth-child(n+1) .content {
		width: 100%;
	}
	
	.post-stats {
		flex-wrap: wrap;
	}
	
	.post-stats div {
		flex: 0 0 160px;
	}
	
	.post-stats div.duration {
		flex: 0 0 100%;
		text-align: left;
	}

}


/*------------------------------------*\
    REPEATABLES
\*------------------------------------*/

aside[class*="-sec"],
section[class*="-sec"] {
	padding: 5%;
	color: #fff;
	position: relative;
}

aside.default-sec,
section.default-sec {
	color: unset;
}

.primary-sec {
	background: var(--primary-color);
}

.primary-sec .card {
	background: #fff;
	color: #201547;
}

.primary-sec .card :is(h1,h2,h3,h4,h5,h6) {
	color: var(--primary-color);
}

.secondary-sec {
	background: var(--secondary-color);
}

section.tertiary-sec,
aside.tertiary-sec {
	background: var(--tertiary-color);
	color: unset;
}

.primary-sec :is(h1,h2,h3,h4,h5,h6),
.secondary-sec :is(h1,h2,h3,h4,h5,h6) {
	color: #fff;
}

.primary-sec .btn i {
	background-color: #fff;
}

.tertiary-sec :is(h1,h2,h3,h4,h5,h6),
.tertiary-sec .btn,
.tertiary-sec .btn:visited {
	color: var(--secondary-color);
}

.tertiary-sec .btn i {
	background-color: var(--secondary-color);
}

.indent {
	background: #f1f1f1;
	padding: 5%;
}

.indent .wrapper-small {
	background: #fff;
	padding: 5%;
}

.insights {
	margin: 5%;
}

.insights.frame-insights {
	margin-bottom: 0;
}

.carousel.gallery {
	margin: 3% 0;
}

.carousel.gallery .slider-for {
	justify-content: flex-end;
}


.growth-series-article .hero,
.hero {
	padding: 5%;
	/* height: calc(100vh - 97px); */
	height: 75vh;
	position: relative;
}

.growth-series-article .hero .content,
.hero .content {
	max-width: 450px;
	padding: 15px;
}

.growth.primary-sec .col-12 {
	text-align: center;
}

.growth.primary-sec .col-12 p {
	max-width: 550px;
    margin: 1em auto;
}

.hero .featured-image {
	position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 100%;
    background-color: #f1f1f1;
    border-radius: 500px 0 0 500px;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: cover;
}

.page-id-146 .hero .featured-image {
	border-radius: 0;
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-size: cover;
	-webkit-mask-size: cover;
	mask-position: left top;
	-webkit-mask-position: left top;
	-webkit-mask-image: url(img/growth-series-mask.svg);
	mask-image: url(img/growth-series-mask.svg);
}

.points {
	margin: 5% 5% 0 5%;
}

.differently {
	margin-bottom: 5%;
}

.highlights,
.web,
.value-pillars {
	margin: 5%;
}

.highlights .row {
	margin: 5% 0;
}

.highlights .row:nth-child(even) {
	flex-direction: row-reverse;
}

.highlights .inner {
    padding-left: 2em;
    margin-left: 2em;
    border-left: 3px solid var(--primary-color);
    position: relative;
}

.highlights .inner:before {
    content: '';
    width: 32px;
    height: 29px;
    mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-size: contain;
	-webkit-mask-size: contain;
	mask-position: center center;
	-webkit-mask-position: center center;
	-webkit-mask-image: url(img/bud.svg);
	mask-image: url(img/bud.svg);
	background-color: var(--primary-color);
	position: absolute;
	top: -3px;
    left: -1.1em;
}

.map {
	position: relative;
	overflow: auto;
}



@media only screen and (max-width:1099px) {

	.hero {
		display: block;
		padding: 0;
		height: auto;
	}
	
	.hero .featured-image {
		display: block;
		border-radius: 0;
		width: 100%;
		height: auto;
		padding-bottom: 56.25%;
		position: relative;
	}
	
	.hero .content {
		max-width: 100%;
		padding-right: calc(15px + 5%);
		padding-bottom: calc(15px + 5%);
		padding-left: calc(15px + 5%);
	}

}



@media only screen and (max-width:969px) {

	.highlights .col-5 {
		width: 60%;
	}

	.highlights .col-7 {
		width: 40%;
	}

}


@media only screen and (max-width:699px) {

	.highlights .row,
	.highlights .row:nth-child(even) {
		flex-direction: column-reverse;
	}
	
	.highlights .col-5 {
		width: 100%;
	}

	.highlights .col-7 {
		width: 60%;
	}

}

/*------------------------------------*\
    RATIOS
\*------------------------------------*/

[class*="ratio-"],
.image-block {
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	position: relative;
}

[class*="ratio-"].placeholder {
	background-color: var(--bg-color);
	background-size: 70%;
	background-position: center center;
	background-repeat: no-repeat;
	position: relative;
}

.ratio-square {
	padding: 0 0 100% 0;
}

.ratio-1x1 {
	padding: 0 0 100% 0;
}

.ratio-4x3 {
	padding: 0 0 75% 0;
}

.ratio-16x9 {
	padding: 0 0 56.25% 0;
}


/*------------------------------------*\
    BUTTONS/LINKS
\*------------------------------------*/

a,
a:visited {
	color: var(--primary-color);
	text-decoration: underline;
	background-color: transparent;
	font-weight: 700;
	transition: 0.3s ease-in-out;
}
a:hover,
a:active {
	color: var(--primary-dark);
}
a:focus {

}

a:not(.fill-container):not(.btn):not(.svgbg)[target="_blank"] {
	padding-right: 15px;
    background: url(img/svg/new_window.svg) right top/14px no-repeat;
}

.header a[target="_blank"],
.footer a[target="_blank"] {
	padding-right: 0;
	background: none;
}

a.btn.no-padding {
	padding: 0;
}

a.btn,
a.btn:visited,
input[type="submit"],
.wp-block-button__link,
.wp-block-button__link:visited {
	display: inline-block;
	color: #fff;
    padding: 1em 1.5em;
    border-radius: 3px;
    transition: 0.2s ease-in-out;
    font-family: Roboto,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
	font-weight: 700;
	position: relative;
	border: none;
	cursor: pointer;
}

a.btn:hover,
a.btn:active,
input[type="submit"]:hover,
input[type="submit"]:avtive {
	background-color: var(--primary-color-dark);
}

a.btn.dark,
a.btn.dark:visited {
	color: var(--secondary-color);
}

a.btn.dark:hover,
a.btn.dark:active {
	color: var(--secondary-light);
}

a.btn.primarycolor,
a.btn.primarycolor:visited {
	color: var(--primary-color);
}

a.btn.primarycolor:hover,
a.btn.primarycolor:active {
	color: var(--primary-light);
}

a.btn.primary,
a.btn.primary:visited,
input[type="submit"].primary,
.wp-block-button__link,
.wp-block-button__link:visited {
	background-color: var(--primary-color);
	text-decoration: none;
}

a.btn.primary:hover,
a.btn.primary:active,
input[type="submit"].primary:hover,
.wp-block-button__link:hover,
.wp-block-button__link:active {
	background-color: var(--primary-dark);
	color: #fff;
}

a.btn.secondary,
a.btn.secondary:visited,
input[type="submit"].secondary {
	background-color: var(--secondary-color);
}

a.btn.secondary:hover,
a.btn.secondary:active,
input[type="submit"].secondary:hover {
	background-color: var(--secondary-light);
}

a.btn.hollow,
a.btn.hollow:visited {
	padding: 0.5em 1em;
	text-decoration: none;
	color: var(--secondary-color);
	border: 1px solid var(--secondary-color);
	border-radius: 2px;
	background-color: transparent;
}

a.btn.hollow:hover,
a.btn.hollow:active,
.pagination a.next:hover,
.pagination a.next:active,
.pagination a.prev:hover,
.pagination a.prev:active {
	color: #fff;
	background-color: var(--secondary-color);
}

.header a,
.header a:visited,
.footer a,
.footer a:visited {
	color: #fff;
	text-decoration: none;
	padding: 25.21px 0;
}

.header a:hover,
.header a:active,
.footer a:hover,
.footer a:active,
.current-menu-item a,
.current_page_parent a,
.current-page-ancestor a {
	opacity: 0.5;
}

.sub-menu .current-menu-item a {
	opacity: 1;
}

.single-people #menu-item-160 a,
.tax-region #menu-item-160 a,
.post-type-archive-people #menu-item-160 a  {
	opacity: 0.5;
}

.single-people #menu-item-164 a,
.tax-region #menu-item-164 a,
.post-type-archive-people #menu-item-164 a {
	opacity: 1;
}

.current-cat a,
.current-cat a:visited {
	color: var(--primary-color)
}

/*------------------------------------*\
    LISTS
\*------------------------------------*/

ul.inline li,
ol.inline li,
#menu-footer li {
	display: inline;
}

ul.custom,
ol.custom,
#menu-footer,
.menu ul {
	list-style-type: none;
}

.menu ul {
	padding: 0;
}

.footer .menu li {
	margin-bottom: 1em;
}

#menu-footer {
	font-size: 0.7em;
	padding: 0;
}

nav li,
#menu-footer li {
	margin-left: 1em;
}

.partners {
	padding: 0;
	margin: 0;
}

.partners li {
    position: relative;
    background-color: #fff;
    height: 50px;
    margin-bottom: 1em;
    mask-position: left center;
    -webkit-mask-position: left center;
}

.partners li:first-child {
    margin-bottom: 1.5em;
}

footer ul,
.wp-block-categories {
	list-style-type: none;
	padding: 0;
}

.wp-block-categories li {
	display: inline-block;
	margin-right: 1em;
}

ul.our-process,
ul.our-points {
	text-align: center;
	padding: 0;
	overflow: auto;
	display: flex;
	flex-wrap: wrap;
}

ul.our-process li,
ul.our-points li {
	display: inline-block;
	flex: 1;
	position: relative;
	padding: 0 5%;
	color: var(--secondary-color);
}

ul.our-points.what-we-did li {
	flex: 0 0 33.33%;
	margin: 2em 0;
}

ul.our-points li {
	text-align: left;
}

ul.our-process li:not(:last-child):after {
	content: '+';
	position: absolute;
	top: 27.5px;
	right: -14px;
	font-size: 70px;
	font-weight: 300;
	color: rgba(255,255,255,1);
}

ul.our-process li i,
ul.our-points li i {
	display: block;
    width: 80px;
    height: 80px;
    background-color: white;
    margin: 0 auto 2em;
}

.page-template-frames ul.our-points li i {
	width: 120px;
    height: 120px;
}

ul.our-points li i {
	margin: 0 0 2em;
	background-color: var(--primary-color);
}

.social-channels {
	list-style-type: none;
	padding: 0;
}

.social-channels a, 
.social-channels a:visited {
    width: 20px;
    height: 20px;
    display: block;
    text-indent: -999em;
    background-color: rgba(44,44,44,1);
    opacity: 1;
    margin: 0 0.5em;
}

.social-channels a[target="_blank"] {
	padding: 0;
	background-image: none;
	background-color: rgba(44,44,44,1)!important;
}

.social-channels a:first-child {
	margin-left: 0;
}

/*------------------------------------*\
    FORMS/INPUTS
\*------------------------------------*/

input:focus {
	outline:0;
	border:1px solid #04A4CC;
}

.screen-reader-response {
	display: none;
}

label {
	font-size: 0.875em;
	font-weight: 700;
	color: #0b2440;
}

textarea {
	display: block;
}

input:not([type="submit"]), optgroup, select, textarea {
	width: 100%;
	border: 1px solid #DBDBDB;
	border-radius: 3px;
	padding: 1em;
	margin-top: 0.5em;
	transition: 0.2s ease-in-out;
	outline: none;
	-webkit-appearance: none;
}

input:not([type="submit"]):focus, optgroup:focus, select:focus, textarea:focus {
	border-color: var(--primary-color);
}

/* 
form span:not([class*="wpcf7-"]) {
	font-weight: 400;
	float: right;
}
 */

input.wpcf7-not-valid,
textarea.wpcf7-not-valid,
select.wpcf7-not-valid,
input.wpcf7-not-valid:focus,
textarea.wpcf7-not-valid:focus,
select.wpcf7-not-valid:focus {
	border: 2px solid #d82f2f;
}

.wpcf7-not-valid-tip {
	display: none;
}

input[type="radio"], input[type="checkbox"] {
    width: 32px;
    height: 32px;
    position: relative;
    bottom: -0.7em;
    margin: 0 1em 0 0;
}

form span.mc4wp-checkbox,
form span.mc4wp-checkbox input[type="checkbox"] span {
	float: none;
	font-weight: bold;
}

input[type="radio"]:checked, input[type="checkbox"]:checked {
    border-color: var(--primary-color);
    background: var(--primary-color);
}

input[type="radio"]:checked:before, input[type="checkbox"]:checked:before {
    content: '';
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
    mask-size: 15px;
    -webkit-mask-size: 15px;
    mask-position: center center;
    -webkit-mask-position: center center;
    -webkit-mask-image: url(img/svg/check.svg);
    mask-image: url(img/svg/check.svg);
    background: #fff;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.footer input[type="radio"]:checked, .footer input[type="checkbox"]:checked {
    border-color: #fff;
    background: #fff;
}

.footer input[type="radio"], .footer input[type="checkbox"] {
    border-color: var(--primary-dark);
    background: var(--primary-dark);
}

.footer input[type="radio"]:checked:before, .footer input[type="checkbox"]:checked:before {
	background: var(--primary-color);
}

#wpcf7-f4455-o1 input.wpcf7-not-valid,
#wpcf7-f4455-o1 textarea.wpcf7-not-valid,
#wpcf7-f4455-o1 select.wpcf7-not-valid,
#wpcf7-f4455-o1 input.wpcf7-not-valid:focus,
#wpcf7-f4455-o1 textarea.wpcf7-not-valid:focus,
#wpcf7-f4455-o1 select.wpcf7-not-valid:focus {
	border: 2px solid var(--accent);
}

#wpcf7-f4455-o1 input:not([type="submit"]):focus, 
#wpcf7-f4455-o1 optgroup:focus, 
#wpcf7-f4455-o1 select:focus, 
#wpcf7-f4455-o1 textarea:focus {
	border-color: var(--accent);
}

#wpcf7-f4455-o1 input[type="radio"]:checked, 
#wpcf7-f4455-o1 input[type="checkbox"]:checked {
    border-color: var(--accent);
    background: var(--accent);
}

/*------------------------------------*\
    GRID
\*------------------------------------*/

/* wrapper */
.wrapper-medium {
	max-width:1300px;
	margin:0 auto;
	position:relative;
}
.wrapper-small {
	max-width:1000px;
	margin:0 auto;
	position:relative;
}
.wrapper-xs {
	max-width:800px;
	margin:0 auto;
	position:relative;
}

.row {box-sizing: border-box; overflow: auto;}

[class*="col-"] {float: left; padding: 15px; position: relative;}

.col-1 	{width: 8.33%;}
.col-2 	{width: 16.66%;}
.col-3 	{width: 25%;}
.col-4 	{width: 33.33%;}
.col-5 	{width: 41.66%;}
.col-6 	{width: 50%;}
.col-7 	{width: 58.33%;}
.col-8 	{width: 66.66%;}
.col-9 	{width: 74.5%;}
.col-10 {width: 83.33%;}
.col-11 {width: 91.66%;}
.col-12 {width: 100%;}



/*------------------------------------*\
    PAGES
\*------------------------------------*/

/* GLOBAL */

.footer .row:first-child {
	padding: 5% 0;
}

.footer {
	overflow: hidden;
}

.footer:before {
	content: '';
	width: 400px;
	height: 636px;
	background: url(img/motif.svg) center center no-repeat;
	background-size: contain;
	position: absolute;
	right: -200px;
	top: 1em;
	opacity: 0.1;
}

@media only screen and (max-width: 999px) {

	footer .col-4:first-child {
		width: 100%;
	}
	
	footer .col-4:last-child {
		width: 66.66%;
	}
	
	.partners li {
		display: inline-block;
		width: 33.33%;
		float: left;
		height: 30px;
		mask-position: center center;
		-webkit-mask-position: center center;
	}

}

@media only screen and (max-width: 640px) {
	
	footer .col-4,
	footer .col-4:last-child {
		width: 100%;
	}
	
	.partners li {
		display: block;
		width: 100%;
		float: none;
		height: 30px;
		mask-position: left center;
		-webkit-mask-position: left center;
	}

}


/*HOME*/

.carousel.architect {
    justify-content: flex-end;
    overflow: hidden;
}

.carousel.featured .slider-for {
    width: 100%;
    float: right;
    display: flex!important;
    max-width: /* 650px */50%;
    padding: 15px;
}

.carousel.featured .slider-for .content {
    max-width: 450px;
    padding: 15px;
    width: 100%;
}

.carousel.featured .slider-nav,
.carousel.featured .gallery-slider {
    max-width: 50%;
    float: right;
    flex: 1;
}

.carousel.featured .slider-nav .featured-image {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: left center;
    background-color: #f1f1f1;
    border-radius: 500px 0 0 500px;
    /* height: calc(100vh - 97px); */
    height: 75vh;
    margin-bottom: -7px;
}

.feature-excerpt {
	display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.feature-excerpt .view-article {
	display: none;
}

.people,
.ecosystem {
	margin: 5%;
}

.spotlight {
	padding: 15px;
	width: 100%;
	overflow: auto;
}

.spotlight .content {
	width: 311px;
	float: left;
	margin-right: 5%;
}

.spotlight .content p:nth-child(3) {
	display: -webkit-box;
    -webkit-line-clamp: 12;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.spotlight .content p:nth-child(n+4) {
	display: none;
}

.spotlight .featured-image {
	float: left;
	/* width: calc(95% - 311px); */
	width: 545.48px;
	height: 409.11px;
	background-color: #f1f1f1;
}

.spotlight .col-6:last-child a {
	justify-content: flex-end;
}

.our-people {
	overflow: visible;
	position: relative;
}

.headshot-grid {
	width: 917.47px;
	position: absolute;
    top: 15px;
    left: calc(884px + 5%);
}

.headshot-grid .featured-image {
	float: left;
	margin: 0 15px 15px 0;
	width: calc(20% - 15px);
	background-color: #f1f1f1;
}

.headshot-grid .featured-image:nth-child(n+11) {
	margin-bottom: 0;
}

.spotlight .featured-image,
.spotlight .featured-image div,
.headshot-grid .featured-image,
.headshot-grid .featured-image div,
.team-grid .featured-image,
.team-grid .featured-image div,
.person .featured-image,
.person .featured-image div {
	border-radius: 4px;
}

.spider {
	position: relative;
}

.spider:after {
	content: '';
	width: 350px;
	height: 350px;
	background-color: var(--primary-color);
	background-image: url(img/motif.svg);
	background-size: 40%;
    background-repeat: no-repeat;
    background-position: center center;
	border-radius: 400px;
	position: absolute;
	top: 50%;
	margin-top: -175px;
	left: 50%;
	margin-left: -175px;
	z-index: 10;
}

.fly.special [class*="dots-"] {
	width: 8px;
	height: 300px;
	background-image: url(img/dot-primary.svg);
	background-size: contain;
	background-repeat: round;
	position: absolute;
}

.fly.special .dots-1 {
	left: 50%;
	margin-left: -4px;
	top: -150px;
}

.fly.special .dots-2 {
	transform: rotate(45deg);
	right: 120px;
    top: -105px;
    background-image: url(img/dot-dark.svg);
}

.fly.special .dots-3 {
	left: 70px;
	transform: rotate(90deg);
}

.fly.special .dots-4 {
	transform: rotate(135deg);
	right: 120px;
    bottom: -105px;
    background-image: url(img/dot-secondary.svg);
}

.fly.special .dots-5 {
	left: 50%;
	margin-left: -4px;
	bottom: -150px;
}

.fly.special .dots-6 {
	transform: rotate(45deg);
	left: 120px;
    bottom: -105px;
    background-image: url(img/dot-dark.svg);
}

.fly.special .dots-7 {
	right: 70px;
	transform: rotate(90deg);
}

.fly.special .dots-8 {
	transform: rotate(135deg);
	left: 120px;
    top: -105px;
    background-image: url(img/dot-secondary.svg);
}

.fly {
	flex: 1 1 33.33%;
	text-align: center;
	min-height: 250px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
}

.fly p {
	font-weight: bold;
	max-width: 300px;
}

.fly:nth-child(2),
.fly:nth-child(7),
.fly:nth-child(9) {
	align-items: flex-start;
}

.fly:nth-child(1),
.fly:nth-child(3),
.fly:nth-child(8) {
	align-items: flex-end;
}

.fly:nth-child(7) p,
.fly:nth-child(9) p {
	margin-top: 10%;
}

.fly:nth-child(1) p,
.fly:nth-child(3) p {
	margin-bottom: 10%;
}

.fly:nth-child(4) {
	justify-content: flex-start;
}

.fly:nth-child(6) {
	justify-content: flex-end;
}

@media only screen and (max-width:1200px) {

	.spider:after {
		content: '';
		width: 250px;
		height: 250px;
		margin-top: -125px;
		margin-left: -125px;;
	}
	
	.fly {
		min-height: 220px;
	}
	
	.fly.special .dots-1 {
		top: -90px;
	}
	
	.fly.special .dots-2 {
		right: 140px;
		top: -65px;
	}
	
	.fly.special .dots-3 {
		left: 125px;
	}
	
	.fly.special .dots-4 {
		right: 140px;
		bottom: -65px;
	}
	
	.fly.special .dots-5 {
		bottom: -90px;
	}
	
	.fly.special .dots-6 {
		left: 140px;
		bottom: -65px;
	}
	
	.fly.special .dots-7 {
		right: 125px;
	}
	
	.fly.special .dots-8 {
		left: 140px;
		top: -65px;
	}

}


@media only screen and (max-width: 1035px) {
 
 	.spotlight .content {
 		margin-right: 40px;
 	}
 
	.spotlight .featured-image {
		width: calc(100% - 351px);
		height: auto;
	}
	
	.headshot-grid {
		display: none;
	}

}


@media only screen and (max-width: 960px) {

	.spider,
	.fly {
		display: block;
		min-height: 1px;
	}
	
	.fly p {
		max-width: 100%;
	}
	
	.fly:nth-child(1) p, .fly:nth-child(3) p {
		margin-bottom: auto;
	}
	
	.fly:nth-child(7) p, .fly:nth-child(9) p {
		margin-top: auto;
	}
	
	.spider:after,
	.fly.special {
		display: none;
	}

}


@media only screen and (max-width: 944px) {

	.growth.primary-sec .col-4,
	.triple-column .col-4 {
		width: 100%;
	}
	
	.growth.primary-sec .col-12 {
		text-align: left;
	}
	
	.growth.primary-sec .col-12 p {
		max-width: 100%;
	}
	
	.growth.primary-sec .col-12 a.justify-center {
		justify-content: left;
		padding: 1em 0;
	}

}


@media only screen and (max-width: 710px) {

	.our-people .spotlight {
		display: flex;
		flex-direction: column;
	}
	
	.spotlight .featured-image,
	.spotlight .content {
		width: 100%;
		margin-right: 0;
	}
	
	
	.spotlight .col-6 {
		width: 100%;
	}
	
	.spotlight .col-6:last-child a {
		justify-content: flex-start;
	}

}


@media only screen and (max-width: 630px) {
	.double-column .col-6 {
		width: 100%;
	}
}


@media only screen and (max-width: 600px) {

	ul.our-process, ul.our-points {
		flex-direction: column;
	}
	
	ul.our-process li:not(:last-child), ul.our-points li:not(:last-child) {
		margin-bottom: 4em;
	}
	
	ul.our-process li:not(:last-child):after {
		top: auto;
		bottom: -40px;
		right: 50%;
		margin-right: -14.5px;
	}

}

/*PEOPLE*/

.page-id-144 .locations {
	margin: 0;
}

.locations,
.person {
	margin: 5%;
}

.locations .row:last-child {
	float: right;
	width: calc(100% - 311px);
}

.locations .regions,
.person .experience {
	float: left;
	width: 311px;
	padding: 15px;
}

.locations .team-grid,
.person .bio {
	float: left;
	width: calc(100% - 311px);
	overflow: auto;
}

.team-grid .featured-image,
.person .featured-image div,
.person .article-slider .featured-image {
	background-color: #f1f1f1;
}

.person .article-slider .featured-image div {
	background-color: transparent;
}

#lct-widget-region-container h3 {
	color: var(--secondary-color);
	margin-top: 0;
}

#lct-widget-region,
#lct-widget-region ul {
	list-style-type: none;
	padding: 0;
}

#lct-widget-region > li {
	border-top: 1px solid #f1f1f1;
	padding-top: 0.8em;
	margin-top: 0.8em;
}

#lct-widget-region li {
	color: #ccc;
}

#lct-widget-region a,
#lct-widget-region a:visited {
	font-weight: bold;
	color: var(--secondary-color);
	text-decoration: none;
}

#lct-widget-region a:hover,
#lct-widget-region a:active {
	color: var(--secondary-light);
}

#lct-widget-region ul a,
#lct-widget-region ul a:visited {
	font-weight: normal;
}

#lct-widget-region .current-cat > a {
	font-weight: bold;
	color: var(--primary-color);
}


@media only screen and (max-width:1130px) {

	.team-grid .col-3 {
		width: 33.33%;
	}
	
	.person .bio,
	.person .experience {
		width: 100%;
	}
	
	.person .experience {
		border-top: 1px dashed #ccc;
		margin-top: 1em;
	}

}

@media only screen and (max-width:960px) {

	.team-grid .col-3 {
		width: 50%;
	}

}

@media only screen and (max-width:800px) {

	.locations .regions,
	.locations .team-grid,
	.locations .row:last-child {
		width: 100%;
	}

}

@media only screen and (max-width:740px) {

	.person .bio .col-6 {
		width: 100%;
	}
	
	.article-slider .slick-slide {
		padding: 15px;
	}

}


/* GROWTH ARCHIVE*/

.statistic .value {
	font-weight: 900;
    font-size: 4em;
    margin: 0.5em 0;
}

.stats .card .col-6 {
	padding: 5%;
}

.statistic:first-child {
	margin-bottom: 2em;
	padding-bottom: 0.5em;
	border-bottom: 1px dashed #f1f1f1;
}

.growth-grid article {
	overflow: hidden;
}

.growth-grid .bg {
	filter: grayscale(100%);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	border-radius: 4px;
}

.growth-grid .content {
	position: absolute;
	padding: 3em;
}

.growth-grid .content :is(h3,h5) {
	color: #fff;
}

.growth-grid .overlay,
.hero-wrap .featured-image .overlay {
	transition: 0.3s ease-in-out;
	opacity: 0.6;
}

.growth-grid article:hover .overlay {
	opacity: 0.8;
}

.growth-grid article a {
	z-index: 2;
}

.our-clients .growth-grid article h3 {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;  
	overflow: hidden;
}


@media only screen and (max-width: 1090px) {

	.growth-grid article.col-4 {
		width: 50%;
	}

}


@media only screen and (max-width: 650px) {

	.stats .card .col-6,
	.growth-grid article.col-4 {
		width: 100%;
	}
	
	.growth-grid article.col-4 .ratio-square {
		padding-bottom: 75%;
	}

}


/*GROWTH SINGLE*/

.parent-pageid-146:not(.page-template-frames) main :is(h1,h2,h3,h4,h6) {
	color: var(--accent);
}

.hero-wrap {
	position: relative;
	overflow: auto;
}

.hero-wrap .hero {
	height: auto;
}

.hero-wrap .featured-image {
	position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 100%;
}

.hero-wrap .featured-image .bg,
.hero-wrap .featured-image .overlay {
	mask-image: url(img/growth-article-mask-02.svg);
	-webkit-mask-image: url(img/growth-article-mask-02.svg);
	mask-position: left bottom;
	-webkit-mask-position: left bottom;
	mask-size: cover;
	-webkit-mask-size: cover;
	background-size: cover;
	background-repeat: no-repeat;
}

.hero-wrap .featured-image .bg {
	filter: grayscale(100%);
	background-position: right center;
}

.key-facts {
	margin: 0 5%;
	background: #fff;
	box-shadow: 0px 3px 10px #0000001d;
	border-radius: 4px;
	padding: 3% 5%;
	top: 0;
	left: 0;
}

.key-facts h2 {
	/* width: 150px; */
	padding-right: 50px;
}

.key-facts .statistic {
	flex: 1;
	text-align: center;
}

.key-facts .statistic h5 {
	text-transform: none;
}

.growth-article {
	margin: 5%;
}

.growth-article blockquote {
	margin: 3em auto;
	max-width: 500px;
	color: var(--accent);
	font-weight: 800;
	font-size: 1.6em;
	line-height: 1.2;
}

.growth-article img {
	margin: 3em auto;
}

.growth-download .col-12 {
	padding: 5%;
}

.growth-download .content {
	padding-right: 5%;
	flex: 1;
}

.growth-download .featured-image {
	max-width: 300px;
}


@media only screen and (max-width: 1010px) {

	.hero-wrap .featured-image {
		position: relative;
		width: 100%;
		height: auto;
		padding-bottom: 56.25%;
	}
	
	.statistic .value {
		font-size: 3em;
	}

}


@media only screen and (max-width: 830px) {

	.key-facts {
		display: block;
		overflow: auto;
	}
	
	.key-facts h2 {
		width: 100%;
		padding-right: 0;
		font-size: 1.5em;
		text-align: center;
		margin-top: 0.5em;
	}
	
	.key-facts .statistic {
		float: left;
		width: 25%;
	}

}


@media only screen and (max-width: 660px) {
	
	.key-facts .statistic {
		width: 50%;
	}
	
	.growth-download .featured-image {
		max-width: 200px;
	}

}


@media only screen and (max-width: 569px) {
	
	.growth-download .col-12 {
		flex-direction: column-reverse;
	}
	
	.growth-download .featured-image {
		padding-bottom: 5%;
	}

}


@media only screen and (max-width: 390px) {
	
	.statistic .value {
		font-size: 2em;
	}
	
	.key-facts h5 {
		font-size: 0.875em;
	}

}

/*FRAME SINGLE*/

.page-template-frames h1 {
	font-size: 2em;
}

/*CONTACT*/

.contact-us .col-6:first-child {
	justify-content: flex-end;
	background-position: center center;
	background-size: cover;
	color: #fff;
	padding: 5%;
	position: relative;
	overflow: hidden;
}

.contact-us .overlay {
	background-color: rgba(32,21,71,0.8);
}

.contact-us .col-6:first-child :is(h1,h2,h3,h4,h6) {
	color: #fff;
}

.contact-us .col-6:last-child {
	justify-content: flex-start;
	padding: 5%;
}

.contact-us .inner {
	max-width: 450px;
	z-index: 10;
}


@media only screen and (max-width:750px) {

	.contact-us {
		flex-direction: column;
	}

	.contact-us .col-6 {
		width: 100%;
	}
	
	.contact-us .col-6:first-child,
	.contact-us .col-6:last-child {
		justify-content: center;
	}

}


/*CASE STUDIES*/

.client-details .client-logo,
.study-details .row .section-title {
	width: 400px;
}

.client-details .featured-image,
.study-details .row .content {
	flex: 1;
}


@media only screen and (max-width: 960px) {

	.study-details .row .section-title {
		width: 250px;
	}

}


@media only screen and (max-width: 699px) {

	.study-details .row.flex {
		flex-direction: column;
	}
	
	.study-details .row .section-title {
		width: 100%;
	}

}


/*SINGLE*/

.wp-block-embed.is-type-video .wp-block-embed__wrapper,
.wp-block-embed.is-type-rich .wp-block-embed__wrapper,
.responsive-iframe {
	position: relative;
	padding-bottom: 56.25%;
	margin: 3em 0;
}

.wp-block-embed.is-type-video .wp-block-embed__wrapper iframe,
.wp-block-embed.is-type-rich .wp-block-embed__wrapper iframe,
.responsive-iframe iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 4px;
}

.wp-block-video video,
.responsive-iframe iframe {
	border-radius: 4px;
}

.single-post article {
	margin-bottom: 5%;
}

.single-post article h1 + p {
	font-weight: bold;
}

.single-post .hero-image {
	margin: 3em 0;
	border-radius: 4px;
	background-color: #f1f1f1;
}

.single-post .hero-image.placeholder {
	background-size: 20%;
}

.single-post article :is(p,h1,h2,h3,h4,h5,h6) {
	padding-left: 5%;
	padding-right: 5%;
}

.single-post article :is(ul, ol) {
	padding-left: calc(5% + 40px);
	padding-right: 5%;
}

.single-post blockquote {
    margin: 3em auto;
    max-width: 600px;
}

.single-post cite {
    max-width: 600px;
    display: block;
    margin: 0 5%;
}

.single-post blockquote p {
    color: var(--secondary-color);
    font-weight: 800;
    font-size: 1.6em;
    line-height: 1.2;
}

.heateor_sss_sharing_ul li i {
	margin-bottom: 0.5em!important;
	display: block;
}


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

::selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-webkit-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-moz-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}

.fill-container {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.clear:before,
.clear:after {
    content:' ';
    display:table;
}

.clear:after {
    clear:both;
}

/* The sticky class is added to the navbar with JS when it reaches its scroll position */
header.sticky {
	position: fixed;
	top: 0;
	width: 100%;
	z-index:100;
}

/* Add some top padding to the page content to prevent sudden quick movement (as the navigation bar gets a new position at the top of the page (position:fixed and top:0) */
header.sticky + main {
	padding-top: 108px;
}

/*------------------------------------*\
    PUSH MENU
\*------------------------------------*/

#showRight {
	display: none;
}

@media only screen and (max-width: 1200px) {

	#showRight {
		display: block;
		-webkit-appearance: none;
		position: absolute;
		right: 0;
		width: 57px;
		height: 57px;
		z-index: 1001;
		cursor: pointer;
		background: #fff;
		border-radius: 0;
	}
	
	.cbp-spmenu {
		position: fixed;
		margin: 0;
		color: #fff;
		background: var(--secondary-color);
	}
	
	.cbp-spmenu.nav ul:not(.sub-menu) {
		margin: 2em 0;
		text-align: right;
		width: 100%;
		padding: 114px 0 2em;
	}
	
	.cbp-spmenu.nav ul.sub-menu {
		text-align: right;
	}
	
	.cbp-spmenu.nav li {
		display: block;
		clear: both;
		margin: 0;
		line-height: 3em;
	}

	.header a {
		padding: 0 2em;
	}

	.nav ul.sub-menu {
		position: relative;
		background: #908aa3;
	}

	.menu-item-has-children:hover .sub-menu {
		display: inline-block;
		width: 100%;
		margin-left: 0;
	}
	
	.cbp-spmenu-vertical {
		width: 300px;
		height: 100%;
		top: 0;
		z-index: 1000;
	}

	.cbp-spmenu-right {
		right: -300px;
		text-align: center;
	}

	.cbp-spmenu-right.cbp-spmenu-open {
		right: 0;
		overflow-y: scroll;
	}
	
	.cbp-spmenu,
	.cbp-spmenu-push {
		transition: all .3s ease;
	}
	
	body.cbp-spmenu-push-toleft {
		left: -300px;
	}
	
	.hamburger {
		padding: 3px 0 0;
		transition-property: opacity, filter;
		transition-duration: 0.15s;
		transition-timing-function: linear;
		background-color: transparent;
		border: 0;
		margin: 0;
		overflow: visible;
	}

	.hamburger-box {
		width: 25px;
		height: 19px;
		display: inline-block;
		position: relative; 
	}

	.hamburger-inner {
		display: block;
		top: 50%;
		margin-top: -2px; 
	}
	.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
		width: 25px;
		height: 3px;
		background-color: var(--primary-color);
		border-radius: 4px;
		position: absolute;
		transition-property: transform;
		transition-duration: 0.15s;
		transition-timing-function: ease; 
	}
	.hamburger-inner::before, .hamburger-inner::after {
		content: "";
		display: block; 
	}
	.hamburger-inner::before {
		top: -8px; 
	}
	.hamburger-inner::after {
		bottom: -8px; 
	}
	
	.hamburger--spin .hamburger-inner {
		transition-duration: 0.22s;
		transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); 
	}
	.hamburger--spin .hamburger-inner::before {
		transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; 
	}
	.hamburger--spin .hamburger-inner::after {
		transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); 
	}

	.hamburger--spin.is-active .hamburger-inner {
		transform: rotate(225deg);
		transition-delay: 0.12s;
		transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); 
	}
	.hamburger--spin.is-active .hamburger-inner::before {
		top: 0;
		opacity: 0;
		transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; 
	}
	.hamburger--spin.is-active .hamburger-inner::after {
		bottom: 0;
		transform: rotate(-90deg);
		transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); 
	}

}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone{margin:5px 20px 20px 0}.aligncenter,div.aligncenter{display:block;margin:5px auto 5px auto}.alignright{float:right;margin:5px 0 20px 20px}.alignleft{float:left;margin:5px 20px 20px 0}a img.alignright{float:right;margin:5px 0 20px 20px}a img.alignnone{margin:5px 20px 20px 0}a img.alignleft{float:left;margin:5px 20px 20px 0}a img.aligncenter{display:block;margin-left:auto;margin-right:auto}.wp-caption{background:#fff;border:1px solid #f0f0f0;max-width:96%;padding:5px 3px 10px;text-align:center}.wp-caption.alignnone{margin:5px 20px 20px 0}.wp-caption.alignleft{margin:5px 20px 20px 0}.wp-caption.alignright{margin:5px 0 20px 20px}.wp-caption img{border:0 none;height:auto;margin:0;max-width:98.5%;padding:0;width:auto}.gallery-caption,.wp-caption .wp-caption-text{font-size:11px;line-height:17px;margin:0;padding:0 4px 5px}

.is-provider-anchor-fm-inc .wp-block-embed__wrapper {
	display: flex;
	justify-content: center;
	margin: 3em auto;
}

/*------------------------------------*\
    ACCORDION BASE THEME
\*------------------------------------*/

.accordion {
    font-size: 1em;
    font-weight: 700;
    color: #111;
    line-height: 1.2;
    cursor: pointer;
    padding: 1.5em 3em 1.5em 16px;
    width: 100%;
    text-align: left;
    border-top: 2px solid #f8f8f8;
    border-right: none;
    border-bottom: none;
    border-left: none;
    border-radius: 0;
    outline: none;
    position: relative;
    background: transparent;
}

.active, .accordion:hover {
    color: var(--primary-color);
}

.accordion:first-child {
    border-top: none;
}

.panel {
    padding: 0 16px;
    display: none;
    overflow: hidden;
    margin-bottom: 0.5em;
    margin-top: -1.25em;
}

.active + .panel {
    display: block;
}

.accordion i {
    position: absolute;
    width: 20px;
    height: 20px;
    background-color: var(--primary-color);
    right: 0.5em;
    -webkit-mask-image: url(img/svg/control_point_black_24dp.svg);
    mask-image: url(img/svg/control_point_black_24dp.svg);
    -webkit-mask-size: contain;
    mask-size: contain;
    top: 50%;
    margin-top: -10px;
}

.accordion.active i {
    background-color: #b2b2b2;
    -webkit-mask-image: url(img/svg/remove_circle_outline_black_24dp.svg);
    mask-image: url(img/svg/remove_circle_outline_black_24dp.svg);
}

/*------------------------------------*\
    SLIPPRY BASE THEME
\*------------------------------------*/

/* element that wraps the slides */
.sy-slides-wrap {
	position: relative;
	height: 100%;
	width: 100%; 
}
.sy-slides-wrap:hover .sy-controls {
	display: block; 
}

/* element that crops the visible area to the slides */
.sy-slides-crop {
	height: 100%;
	width: 100%;
	position: absolute;
	overflow: hidden; 
}

/* list containing the slides */
.sy-list {
	width: 100%;
	height: 100%;
	list-style: none;
	margin: 0;
	padding: 0;
	position: absolute; 
}
.sy-list.horizontal {
	transition: left ease; 
}
.sy-list.vertical {
	transition: top ease; 
}

/* single slide */
.sy-slide {
	position: absolute;
	width: 100%;
	z-index: 2; 
}
.sy-slide.sy-active {
	z-index: 3; 
}
.sy-slide > img {
	margin: 0;
	padding: 0;
	display: block;
	width: 100%;
	border: 0; 
}
.sy-slide > a {
	margin: 0;
	padding: 0;
	display: block;
	width: 100%; 
}
.sy-slide > a > img {
	margin: 0;
	padding: 0;
	display: block;
	width: 100%;
	border: 0; 
}

/* next/ prev buttons, with arrows and clickable area a lot larger than the visible buttons */
.sy-controls {
	display: none;
	list-style: none;
	height: 100%;
	width: 100%;
	position: absolute;
	padding: 0;
	margin: 0; 
}
.sy-controls li {
	position: absolute;
	width: 10%;
	min-width: 4.2em;
	height: 100%;
	z-index: 33; 
}
.sy-controls li.sy-prev {
	left: 0;
	top: 0; 
}
.sy-controls li.sy-next {
	right: 0;
	top: 0; 
}
.sy-controls li a {
	position: relative;
	width: 100%;
	height: 100%;
	display: block;
	text-indent: -9999px; 
}
.sy-controls li a:hover, .sy-controls li a:focus {
	opacity: 1;
	outline: none; 
}
.sy-controls li a:hover:after, .sy-controls li a:focus:after {
	background-color: #222; 
}
.sy-controls li.sy-prev a:after {
	transform: rotate(-180deg);
}
.sy-controls li.sy-next a:after {
	right: 0;
	left: auto;
}
.sy-controls li a:after {
	content: "";
	background: url("img/svg/chevron-white.svg") center center/20px no-repeat;
	text-align: center;
	text-indent: 0;
	line-height: 2.8em;
	color: #fff;
	font-weight: 800;
	position: absolute;
	background-color: #444;
	width: 44.8px;
	height: 49.78px;
	left: 22px;
	top: 50%;
	margin-top: -1.4em;
	margin-left: -1.4em;
	border-radius: 5px 0 0 5px; 
}
@media only screen and (max-device-width: 600px) {
	.sy-controls {
		display: block; 
	}
}

/* captions, styled fo the overlay variant */
.sy-caption-wrap {
	position: absolute;
	bottom: 2em;
	z-index: 12;
	left: 50%; 
}
.sy-caption-wrap .sy-caption {
	position: relative;
	left: -50%;
	background-color: rgba(0, 0, 0, 0.54);
	color: #fff;
	padding: 0.4em 1em;
	border-radius: 1.2em; 
}
.sy-caption-wrap .sy-caption a:link, .sy-caption-wrap .sy-caption a:visited {
	color: #e24b70;
	font-weight: 600;
	text-decoration: none; 
}
.sy-caption-wrap .sy-caption a:hover, .sy-caption-wrap .sy-caption a:focus {
	text-decoration: underline; 
}
@media only screen and (max-device-width: 600px), screen and (max-width: 600px) {
	.sy-caption-wrap {
		left: 0;
		bottom: 0.4em; 
	}
	.sy-caption-wrap .sy-caption {
		left: 0;
		padding: 0.2em 0.4em;
		font-size: 0.92em;
		border-radius: 0; 
	} 
}

/* pager bubbles */
.sy-pager {
	clear: both;
	display: block;
	width: 100%;
	margin: 1em 0 0;
	padding: 0;
	list-style: none;
	text-align: center; 
}
.sy-pager li {
	display: inline-block;
	width: 8px;
	height: 8px;
	margin: 0 1em 0 0;
	border-radius: 50%; 
}
.sy-pager li.sy-active a {
	background-color: var(--accent-color); 
}
.sy-pager li a {
	width: 100%;
	height: 100%;
	display: block;
	background-color: #ccc;
	text-indent: -9999px;
	background-size: 2em;
	border-radius: 50%; 
}
.sy-pager li a:link, .sy-pager li a:visited {
	opacity: 1.0; 
}
.sy-pager li a:hover, .sy-pager li a:focus {
	opacity: 0.6; 
}

/* element to "keep/ fill" the space of the content, gets intrinsic height via js */
.sy-filler {
	width: 100%; 
}
.sy-filler.ready {
	transition: padding 600ms ease;
}

/*------------------------------------*\
    SLICK BASE THEME
\*------------------------------------*/

.client-list,
.slider-for.flex,
.gallery-slider,
.client-quotes {
	display: none;
}

.gallery-slider .artwork {
	margin: 0 60px 0 -30px;
}

.carousel .inner {
	max-width: 450px;
    padding: 15px;
    width: 100%;
    margin-right: 20%;
    float: right;
}

.carousel.gallery .inner {
    margin-right: 40%;
}

.slick-list,.slick-slider,.slick-track{position:relative;display:block}.slick-loading .slick-slide,.slick-loading .slick-track{visibility:hidden}.slick-slider{box-sizing:border-box;-webkit-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-khtml-user-select:none;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:0}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-list,.slick-slider .slick-track{transform:translate3d(0,0,0)}.slick-track{top:0;left:0;margin-left:auto;margin-right:auto}.slick-track:after,.slick-track:before{display:table;content:''}.slick-track:after{clear:both}.slick-slide{display:none;float:left;height:100%;min-height:1px;outline:none}[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}.slick-dots{list-style-type:none;padding:0;text-align:center;}.slick-dots li{display:inline-block;}.slick-slider button{-webkit-appearance:none;outline:none;text-indent:-999em;cursor:pointer;border: none; background: #444; width: 10px; height: 10px; border-radius: 50%; margin: 0.5em;padding: 0;}.slick-slider .slick-dots button {opacity:0.2;}.slick-slider .slick-active button{opacity:1;}.slick-dots li:only-child{display:none}

.slick-track {
	float: left;
}

.slick-slider button {
    background: var(--primary-color);
    width: 28.5px;
    height: 57px;
    border-radius: 3px;
    margin: 0;
    z-index:10;
}

.slick-slider button[role="tab"] {
    background: rgba(32,21,71,0.8);
    width: 10px;
    height: 10px;
    margin: 5px;
}

.slick-slider button.slick-disabled {
	background: #f1f1f1;
	border: 3px solid #fff;
}

.slick-next,
.slick-prev {
	position: absolute;
	top: 29%;
	overflow: auto;
}

.slick-next {
	right: 0;
}

.slick-prev {
	left: 0;
	transform: rotate(180deg);
}

.slick-next:before,
.slick-prev:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url('img/svg/chevron_right_white_24dp.svg') center center/20px no-repeat;
}

.primary-sec .slick-slider button.slick-arrow,
.primary-sec .slick-slider button.slick-arrow {
	background: rgba(32,21,71,.2); 
}

.slider-for .slick-next,
.slider-for .slick-prev,
.slider-nav .slick-next,
.slider-nav .slick-prev {
	top: 50%;
	margin-top: -28.5px;
}

.slider-for .slick-next,
.slider-nav .slick-prev {
	opacity: 0;
	pointer-events: none;
}

.gallery-slider .slick-next {
	right: 45px;
	top: 50%;
	margin-top: -66.92px;
}

.gallery-slider .slick-prev {
	left: -15px;
	top: 50%;
	margin-top: -66.92px;
}


@media only screen and (max-width: 1270px) {

	.carousel .inner,
	.carousel.gallery .inner {
		margin-right: 5%;
	}

}


@media only screen and (max-width: 1099px) {

	.carousel.architect {
		display: block;
	}
	
	.carousel.featured .slider-for {
		max-width: 100%;
		padding: 5%;
	}
	
	.carousel .inner {
		margin-right: 0;
		max-width: 100%;
		padding: 0 5%;
	}
	
	.carousel.featured .slider-nav,
	.carousel.featured .gallery-slider {
		display: block;
		float: none;
		max-width: 100%;
    	flex: none;
    	position: relative;
	}
	
	.carousel.featured .slider-for,
	.carousel.architect .slider-for {
		display: block;
		float: none;
	}
	
	.carousel.featured .slider-nav .featured-image {
		border-radius: 0;
		height: auto;
		padding-bottom: 75%;
		display: block!important;
	}
	
	.slider-nav .slick-prev {
		opacity: 1;
		pointer-events: auto;
	}
	
	.slider-nav .slick-next, 
	.slider-nav .slick-prev {
		margin-top: 0;
		top: -28.5px;
	}
	
	.gallery-slider .artwork {
		margin: 0;
	}
	
	.gallery-slider .slick-next {
		right: 16px;
	}
	
	.gallery-slider .slick-prev {
		left: 16px;
	}

}
