/**
Theme Name: Keyhouse
Author: Guy Fagan Digital Consultancy
Author URI: https://guyfagan.com
Description: WordPress theme for Keyhouse website with full CMS support
Version: 2.1.5
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: keyhouse
Template: astra
*/

/* @elements - fonts & headings */

body {
	font-size: 1rem;
}

body,
html {
  font-family: 'Maison';
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Avantgarde';
}

.single-post h3 {
    margin-bottom: 20px;
}

.sub-heading h3.elementor-heading-title {
    font-size: 1em;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #EE1C25;
	font-family: 'Maison';
    font-weight: 600;
}

.no-mb {
	margin-bottom: 0 !important;
}

.mb-10 {
	margin-bottom: 10px !important;
}

.kh-heading span {
	color: #EE1C25;
}

.main-header-menu .menu-link {
	font-size: 16px;
}

section.stories .number h2 {
	font-size: 30vh;
    vertical-align: text-top;
}

section.stories .number.xl h2 {
    font-size: 21vh;
}

section.stories .number.xs h2 {
    font-size: 15vh;
}

section.stories .number span {
    font-size: 4vw;
	line-height: 3em;
    vertical-align: text-top;
}

section.stories .elementor-container, section.logo-showcase .elementor-container, section.video .elementor-container, section.talk .elementor-container, section.products .elementor-container, section.services .elementor-container {
	max-width: 80%;
}

section.video .jet-video__overlay {
    background-size: 100%;
}

section.logo-showcase .slick-initialized .slick-slide {
    display: flex;
    align-content: center;
    align-self: center;
    align-items: center;
    height: 125px;
}

section.stories-inner .jet-scroll-navigation__inner {
    flex-direction: row;
}

section.stories-inner .jet-scroll-navigation__item-hint {
    background-color: transparent;
}

section.stories-inner .jet-scroll-navigation__item-hint {
	display: none;
	left: 0;
	top: 2px;
	position: relative;
}
section.stories-inner .jet-scroll-navigation__item.active .jet-scroll-navigation__item-hint {
	display: flex;
}
section.stories-inner .jet-scroll-navigation {
    top: 15%;
}

section.stories-inner .jet-scroll-navigation__label {
    color: #2E2D6A;
}

section.stories-inner .jet-scroll-navigation__item.invert .jet-scroll-navigation__label {
    color: #ffffff;
}

/* @pages - our story */

.mw-950 {
   max-width: 950px;
   margin: 0 auto 20px;
}

.mw-900 {
   max-width: 900px;
   margin: 0 auto 20px;
}

.mw-540 {
	   max-width: 900px;
   	   margin: 0 auto 20px;
}

/* @pages - our clients */

section.talk a {
    color: #fff;
}

section.talk a i {
    margin-right: 10px;
    color: #8DC8FF;
}

/* @pages - what we offer */
section.products .jet-carousel__item-text h4, section.services .jet-carousel__item-text h4  {
	 font-family: 'Maison';
	 font-weight: 500;
}

/* @elements - scrollbar */

* {
  scrollbar-width: thin;
}

/* @elements - buttons */
.elementor-button-content-wrapper {
    display: inline-flex;
}

.elementor-widget-wrap .inline-button {
    width: 100%;
    display: inline-block;
    margin-right: 15px;
	margin-bottom: 15px;
}

/* @elements - forms */

.gform_wrapper.gravity-theme .enquiry-tabs .gfield_radio {
	display: flex;
}

.gform_wrapper.gravity-theme .enquiry-tabs .gfield-choice-input {
	position: absolute;
    left: -1000%;
}

.gform_wrapper.gravity-theme .enquiry-tabs .gfield-choice-input+label {
    max-width: 400px;
    margin-right: 15px;
    font-size: 1.1em;
    color: rgba(124, 129, 143, 0.7);
    font-family: 'Maison';
	cursor: pointer;
}

.gform_wrapper.gravity-theme .kh-field input[type=text], .gform_wrapper.gravity-theme .kh-field input[type=email] {
	border-radius: 4px;
    height: 50px;
    font-weight: 500;
	font-family: 'Maison';
	padding: 10px 15px;
}

.gform_wrapper.gravity-theme .kh-text-field textarea {
   `border-radius: 4px;
    font-weight: 500;
	font-family: 'Maison';
	padding: 10px 15px;
}

.gform_wrapper.gravity-theme .gform_button {
	background: #2E2D6A;
	font-size: 1.1em;
    border-radius: 7px;
    padding: 16px 30px;
    font-weight: 400;
	border: 1px solid #2E2D6A;
}

.gform_wrapper.gravity-theme .gform_footer {
    margin: 10px 0 0;
    padding: 0;
    text-align: right;
}

.gform_wrapper.gravity-theme .gform_button:hover {
	background: transparent;
	color: #2E2D6A;
	border-color: #2E2D6A;
}

.gform_wrapper.gravity-theme .enquiry-tabs .gfield-choice-input:checked+label {
	color: #2E2D6A;
    font-weight: 600;
}

/* @elements - footer */
@media (min-width: 768px) {
	.d-md-flex {
		display: -ms-flexbox!important;
		display: flex!important;
	}
	.ml-4, .mx-4 {
    	margin-left: 1.5rem!important;
	}
}

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

.footer ul li {
    width: 100%;
}

.footer ul li a {
    color: #ACB1BE;
}

.footer ul li a:hover {
    color: white;
}

.footer .sub {
    margin-bottom: 45px;
}

.footer .footer-container, .footer-bottom .elementor-container {
    max-width: 90%;
	margin: 0 auto;
}

.footer .elementor-icon-list-text {
	color: #ACB1BE;
}

.footer .elementor-icon-list-text:hover {
	color: #fff;
}

/* @elements - other */

.mapLink {
    width: 100%;
    display: inline-block;
    color: #2E2D6A;
    font-size: 20px;
    margin-top: 10px;
}

p.phone {
    margin-top: 30px;
    font-size: 0.8em;
    font-weight: 300;
}

p.phone a {
    color: #747988;
}

.maillink {
    font-size: 1em;
    color: #747988;
    font-weight: 700;
}

.maillink i {
    color: #ee1c25;
}

.mapLink i {
    font-size: 23px;
}

#ast-scroll-top .ast-icon.icon-arrow svg {
    transform: translate(0,5%) rotate(180deg);
}

/* Works on Chrome, Edge, and Safari */
*::-webkit-scrollbar {
  width: 7px;
}
*::-webkit-scrollbar-track {
  background: none;
}
*::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.2);
  width: 10px;
  height: 200px;
  position: absolute;
}

/*elements - post slider */

.post-slider .jet-smart-listing__post-thumbnail a {
    height: 100%;
}

.post-slider .jet-smart-listing__post-thumbnail img {
    width: auto;
    height: 100%;
}

.post-slider .has-thumb-postion-left.has-post-thumb .jet-smart-listing__post-content {
    margin-left: 0;
    padding: 70px;
}

/* @pages - our team */

@media screen and (min-width: 769px) {
	.team-member .jet-team-member__inner {
		 flex-flow: row;
	}
	.team-member .jet-team-member__content {
		padding: 80px;
	}
	.jet-team-member__content * {
    	max-width: 560px;
	}
	.elementor-section.team-member {
		overflow: hidden;
	}
	.team-member.team-reversed .jet-team-member__image {
    	order: 2;
		margin: 15% 10% 0;
	}
	.team-member .jet-team-member__image {
    	margin: 10% 0 0 5%;
	}
	.team-member.team-reversed .jet-team-member__content {
    	order: 1;
		margin-left: 10%;
		max-width: 670px;
	}
	.team-member.team-reversed .jet-team-member__content * {
    	max-width: 100%;
	}
}

/* @elements - side menu */
.ast-mobile-popup-drawer .ast-mobile-popup-inner {
    background: #2e2d6a;
}

.ast-mobile-popup-drawer .side-menu-logo {
	max-width: 155px;
}
.ast-mobile-popup-drawer .ast-mobile-popup-content {
	margin-top: -50px;
}
.ast-mobile-popup-drawer .menu-link {
	color: #fff;
}
.ast-mobile-popup-drawer .ast-icon svg {
    fill: #fff;
}
.ast-mobile-popup-drawer .ast-mobile-popup-header {
	z-index: 101;
}
.ast-mobile-popup-drawer .ast-icon.icon-arrow svg {
    margin-left: 0;
}
.ast-mobile-popup-drawer .ast-menu-toggle {
    border: 0;
}

.main-header-menu ul.sub-menu {
	background: #8C8C8C;
}

.main-header-menu .sub-menu .menu-link {
    padding: 0.7em 1em;
}

.help-desk-wrapper {
	max-width: 570px;
    margin: 0 auto;
}

.help-desk-wrapper .gform_wrapper.gravity-theme .gform_footer {
    margin: 30px 0 0;
    text-align: center;
}

.help-desk-wrapper .gform_wrapper.gravity-theme .gform_button {
    background: #EE1C25;
    color: #FFF;
    border-color: #EE1C25;
}

.help-desk-wrapper .gform_wrapper.gravity-theme .gform_button:hover {
    background: transparent;
    color: #EE1C25;
    border-color: #EE1C25;
}

.help-desk-wrapper .kh-field input[type=text] {
	width: 100%;
    margin-bottom: 15px;
}

.help-desk-wrapper .text-center {
	text-align: center;
}

.scroll-nav-section {
	height: 0 !important;
}

/* @elements - editorial posts */
/*
.editorial-posts .jet-smart-listing__post-thumbnail.post-thumbnail-simple.post-thumbnail-simple, .editorial-posts .jet-smart-listing__meta, .editorial-posts .post-excerpt-simple  {
    display: none;
}
*/

.editorial-posts .jet-smart-listing__featured {
    min-height: 400px;
}

.editorial-posts .jet-smart-listing__posts {
    align-self: center;
}

@media screen and (min-width: 1024px) {
	.editorial-posts .jet-smart-listing__heading {
		display: block;
		position: absolute;
		left: 54%;
	}
}

/* Products and Services */

.elementor-widget-wrap .inline-button.width-auto {
    width: auto;
}

section.video .video-with-thumb .jet-video__overlay {
    background-size: contain;
}

.page-id-368 .jet-scroll-navigation {
    z-index: 9;
}

@media screen and (min-width: 768px) {
	section.video .video-with-thumb.jv-mobile .jet-video.jet-video-aspect-ratio--16-9 {
		min-height: 500px;
	}
}

.mw-650 {
	max-width: 650px;
}

.features-list ul li {
	position: relative;
	margin-bottom: 20px;
}

/* Success Stories */

a.download {
	color: #d8d8d8;
}

a.download:hover {
	color: #ffffff;
}

a.download-alt {
	color: #222222;
}

a.download-alt:hover {
	color: #000000;
}


/* Privacy Policy */

.cookie-btn.cn-button {
    background: #EE1C25;
	font-weight: 400;
    font-size: 13px;
    letter-spacing: .25px;
    line-height: 20px;
    margin: 0;
    text-align: center;
    text-transform: none;
    display: inline-block;
    cursor: pointer;
    touch-action: manipulation;
    white-space: nowrap;
    outline: none;
    box-shadow: none;
    text-shadow: none;
    border: none;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    text-decoration: none;
	padding: 3.5px 10px;
    color: #fff;
}

.cookie-btn.cn-button:hover {
	opacity: 0.7;
}

#cookie-notice a.cn-privacy-policy-link {
	color: #ffffff;
}

a.cn-privacy-policy-link:hover {
    color: #EDEDED;
}

.features-list ul {
	list-style: none;
}

.features-list ul li div {
	background: #ee1c25;
	width: 7px;
	height: 7px;
	position: absolute;
	top: 8px;
}

.alt-slider .jet-smart-tiles__box-content {
    background: #2a2965;
    padding: 20px;
}

@media screen and (min-width: 768px) {
	.features-list.right ul li div {
		right: -20px;
	}

	.features-list.left ul li {
		padding-left: 20px;
	}

	.features-list.left ul li div {
		left: 0;
	}
}

@media screen and (max-width: 767px) {
	.features-list.left ul li, .features-list.right ul li {
		padding-left: 20px;
	}
	.features-list.left ul li div, .features-list.right ul li div {
		left: 0;
	}
	.features-list ul {
		margin: 0 0 1.5em 1em;
	}
}


@media screen and (max-width: 1024px) {
	/*
	section.stories-inner .elementor-container {
		flex-flow: column;
		justify-content: center;
	}
	*/
	section.stories .number span {
    	font-size: 10vw;
    	line-height: 1em;
	}
	section.stories .number h2 {
    	font-size: 30vh;
	}
	#talk-to-us .gform_wrapper.gravity-theme .gform_button {
    	padding: 7px 55px;
	}
}

@media screen and (max-width: 768px) {
	.post-slider .jet-smart-listing__post-thumbnail img {
    	width: auto;
    	height: auto;
	}
	.post-slider .jet-smart-listing__post {
    	flex-direction: column;
	}
	.post-slider .has-thumb-postion-left.has-post-thumb .jet-smart-listing__post-content {
    	padding: 25px;
	}
	.site-logo-img img {
    	max-width: 155px;
	}
	section.stories .number h2 {
    	font-size: 20vh;
	}
	section.stories .number.xl h2 {
    	font-size: 10vh;
	}
	section.stories .number.xs h2 {
    	font-size: 8vh;
	}
	section.stories .info h4 {
    	font-size: 1.1em;
    	text-align: center;
	}
	.elementor-section.fh-section .elementor-container {
    	min-height: 100vh;
	}
	.elementor-widget-jet-scroll-navigation {
		display: none;
	}
	.logo-showcase .slick-slide img {
    	max-width: 80%;
	}
	section.logo-showcase .slick-initialized .slick-slide {
    	opacity: 0.5;
		transition: 0.2s;
	}
	section.logo-showcase .slick-initialized .slick-slide.slick-current {
    	opacity: 1;
	}
}

@media (max-width: 1024px) and (min-width: 768px) {
	.elementor-section.stories .elementor-container {
		align-items: inherit;
	}
	.stories .number-column {
		align-items: flex-end;
	}
	.elementor-section.elementor-section-height-full.logo-showcase {
    	height: auto;
	}
}

@media screen and (min-width: 768px) and (max-width: 921px) {
	.ast-mobile-popup-drawer.active .ast-mobile-popup-inner {
		max-width: 335px;
	}
}

@media screen and (max-width: 550px) {
	.elementor-widget-wrap .inline-button {
		display: inline-block;
		margin-right: 0;
	}
	.maillink, .mapLink, .mapLink i {
		font-size: 0.8em;
	}
}

/* Mobile Landscape adjustments */

@media screen and (orientation: landscape) and (min-width: 769px) and (max-width: 926px) {
	.home .elementor-section#intro h1.elementor-heading-title, .elementor-section#intro h5.elementor-heading-title, .home #your-team h3.elementor-heading-title {
    	font-size: 2.5em !important;
	}
	.elementor-section.elementor-section-height-full {
    	height: auto;
    	min-height: 100vh;
	}
	.elementor-section#intro {
		padding-top: 30vh;
	}
	.elementor-section#your-team, .elementor-section#keyhouse-365, .page-id-1785 #about-2, .page-id-1785 #about-3, .page-id-1625 #about, .page-id-1701 #about, .page-id-1681 #about, .page-id-661 #support-procedure, .page-id-1727 #about, .page-id-1690 #about, .page-id-1844 #about-2, .page-id-1664 #about, .page-id-1823 #about-2, .page-id-1823 #about-3, .page-id-2060 #post-slider, .page-id-1720 #about, .page-id-1673 #about, .page-id-1773 #about-2, .page-id-1773 #about-3, .page-id-1713 #about, .page-id-546 #products, .page-id-546 #services {
		background-image: none !important;
	}
	.elementor-element-2def26a.elementor-widget-heading {
		margin-bottom: 0;
	}
	.hero-container .elementor-widget:not(:last-child) {
    	margin-bottom: 0;
	}
	.page-id-885 .jet-smart-listing__post-thumbnail.post-thumbnail-simple {
		display: none;
	}
	.page-id-423 .elementor-widget.mw-900 {
    	margin-top: 10px;
    	margin-bottom: 20px;
	}
	section.stories .number h2 {
    	font-size: 20vh;
	}
	section.stories .number span {
    	font-size: 3vw;
    	line-height: 2em;
	}
	.team-member .jet-team-member__content {
    	padding: 0px;
	}
	.page-id-1037 .team-member .jet-team-member__image {
    	margin-bottom: 0 !important;
	}
	.page-id-1037 .elementor-section.team-member {
		padding-bottom: 0;
	}
}
	
