/*!
Theme Name: JY Group - CHILD
Theme URI: https://www.jygroup.ca/
Author: JY Group Inc.
Author URI: https://www.jygroup.ca/
Description: Customized JY Group Inc. Child Theme
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Template: ohio
Text Domain: ohio-child
Tags: JY Group
*/

/*--------------------------------------------------------------
## Jy Group Colors Reference (HEX)
--------------------------------------------------------------*/

/*
Gold (Plain) - #ceb888
Gold (Dark) - #baa478
Black (Plain) - #101010
Black (Charcoal) - #27272a
Black (Jet) - #000000
Grey (Text) - #797979
White (Plain) - #ffffff
White (Ghost - #f8f8ff
White (Borders) - #f2f2f2
*/

/*Variables*/
:root {
	--light: #FFFFFF;
	--dark: #101010;
	--grey: #797979;
	--lines: #F2F2F2;
	--lines-dark: #27272a;
	--brand: #ceb888;
	--brand-link: #baa478;
}

/*--------------------------------------------------------------
## Body, fonts, Typography, etc.
--------------------------------------------------------------*/

/* JY Light Styles */
.jy-light h1, .jy-light h2, .jy-light h3, .jy-light h4, .jy-light h5, .jy-light h6, .jy-light div, .jy-light span, .jy-light p {color:var(--light) !important;}
h1.jy-light, h2.jy-light, h3.jy-light, h4.jy-light, h5.jy-light, h6.jy-light, div.jy-light, span.jy-light, p.jy-light {color:var(--light) !important;}

/* JY Dark Styles */
.jy-dark h1, .jy-dark h2, .jy-dark h3, .jy-dark h4, .jy-dark h5, .jy-dark h6, .jy-dark div, .jy-dark span, .jy-dark p, .jy-dark small {color:var(--dark) !important;}
h1.jy-dark, h2.jy-dark, h3.jy-dark, h4.jy-dark, h5.jy-dark, h6.jy-dark, div.jy-dark, span.jy-dark, p.jy-dark {color:var(--dark) !important;}

/* JY Grey Styles */
.jy-grey h1, .jy-grey h2, .jy-grey h3, .jy-grey h4, .jy-grey h5, .jy-grey h6, .jy-grey div, .jy-grey span, .jy-grey p {color:var(--grey) !important;}
h1.jy-grey, h2.jy-grey, h3.jy-grey, h4.jy-grey, h5.jy-grey, h6.jy-grey, div.jy-grey, span.jy-grey, p.jy-grey {color:var(--grey) !important;}

/* JY Brand Styles */
.jy-brand h1, .jy-brand h2, .jy-brand h3, .jy-brand h4, .jy-brand h5, .jy-brand h6, .jy-brand div, .jy-brand span, .jy-brand p, .jy-brand strong {color:var(--brand) !important;}
h1.jy-brand, h2.jy-brand, h3.jy-brand, h4.jy-brand, h5.jy-brand, h6.jy-brand, div.jy-brand, span.jy-brand, p.jy-brand {color:var(--brand) !important;}

/*Links - Light */
.jy-light a, a.jy-light {color:var(--light) !important;}
.jy-light a, a.jy-light:hover {color:var(--brand) !important;}

/*Links - Dark */
.jy-dark a, a.jy-dark {color:var(--dark) !important;}
.jy-dark a, a.jy-dark:hover {color:var(--brand) !important;}

/*Links - Grey */
.jy-grey a, a.jy-grey, .jy-grey li a {color:var(--grey) !important;}
.jy-grey a, a.jy-grey:hover {color:var(--brand) !important;}

/*Links - Brand */
.jy-brand a, a.jy-brand {color:var(--brand) !important;}
.jy-brand-link a, a.jy-brand-link {color:var(--brand-link) !important;}
.jy-brand a:hover, a.jy-brand:hover {color:var(--brand-link) !important;}

/*Font Weights + Special*/
.jy-100 {font-weight:100 !important;} /*Thin*/
.jy-200 {font-weight:200 !important;} /*Extra-light*/
.jy-300 {font-weight:300 !important;} /*Light*/
.jy-400 {font-weight:400 !important;} /*Regular*/
.jy-500 {font-weight:500 !important;} /*Medium*/
.jy-600 {font-weight:600 !important;} /*Semi-bold*/
.jy-700 {font-weight:700 !important;} /*Bold*/
.jy-800 {font-weight:800 !important;} /*Extra-bold*/
.jy-900 {font-weight:900 !important;} /*Black*/
strong {font-weight:400 !important;} /*Strong Class*/

/*--------------------------------------------------------------
## Layout Elements, Boxes & Special Areas
--------------------------------------------------------------*/

/*Header Effects*/
.jy-header-fade {background:#101010 !important;}
/*.header:not(.-mobile) .menu>.nav-item>a {color:#797979;}*/

/*REmove Main Navigation Numbers*/
.nav.with-counters .nav-item > a > span::before {display:none !important;}

/* Subtitle Headers with Underline */
.subtitle {
	color:var(--brand);
	font-size:600 !important;
	text-transform:uppercase;
	letter-spacing:3px;}

.heading .divider {background-color: var(--brand);}
.jy-box-subtitle h2.title {margin-top:20px;}
.jy-box-subtitle h4.title {margin-top:30px;}

/* Subtitle Headers with Arrow*/
.jy-box-subtitle-link {color: var(--brand);}
.jy-box-subtitle-link:hover {color: var(--brand-link) !important;}

/* Optional Animated Arrows*/
.jy-box-subtitle-link::after {
	display: inline-block;
	padding-left: 10px;
	content: "\02192"; 
	-webkit-transition: transform 0.5s ease-out;
	-moz-transition: transform 0.5s ease-out;
	-ms-transition: transform 0.5s ease-out;
	-o-transition: transform 0.5s ease-out;
	transition: transform 0.5s ease-out;}

.jy-box-subtitle-link:hover::after {
	color: var(--brand-link);
	-webkit-transform: translateX(10px);
	-moz-transform: translateX(10px);
	-ms-transform: translateX(10px);
	-o-transform: translateX(10px);
	transform: translateX(10px);} 

/*Greyscale Image Animation Hover Effect*/
.jy-image-effect img {
  transition: all 1s;
  -webkit-transition: all 1s;
  -moz-transition: all 1s;}

.jy-image-effect img {
  height: 100px;
  float: left;
  filter: grayscale(0%);
  -webkit-filter: grayscale(0%);
  -moz-filter: grayscale(0%);}

.jy-image-effect img:hover {
  filter: grayscale(100%);
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  transform: scale(1);
  -webkit-transform: scale(1);
  -moz-transform: scale(1);}

/* Vertical Text Accordian Header */
h6.accordion-header {font-weight:300;color:var(--brand);}

/*CSS Switcher*/
.color-switcher-toddler-item, .color-switcher-item-state {font-weight:100;}
.color-switcher-item-state svg {color:var(--brand);}

/*Button Styles*/
.button.-text, a.button.-text {
	font-weight:600;
	font-size:0.9em;
	letter-spacing:3px !important;
	color: var(--dark);
	text-transform:uppercase;}

/*Remove li stuff*/
.jy-li-title {
	font-weight:600;
	font-size:0.9em;
	letter-spacing:5px;
	color:var(--brand) !important;
	text-transform:uppercase;}

.jy-li-blank {
	list-style:none;
	padding-left:0;
	margin-top:20px !important;}


/*Menu - Desktop - Numbers*/
.nav.with-counters .nav-item > a > span::before {
	/*display:none !important;*/
	content: "0" counter(number);
    display: inline-block;
    font-weight: 600;
    width: auto;
    right: 0;
    top: -0.75em;
    line-height: 0.6em;
    font-size: 0.8em;
    position: absolute;
	color:var(--brand);
    height: auto;
    opacity: 1;}

/*Menu - Desktop - Hamburger Icon*/
.hamburger.icon-button > .icon::before,
.hamburger.icon-button > .icon::after {
	color:var(--brand);
	height:1px;}

/*Menu - Desktop - Hamburger Menu Items*/
.hamburger-nav .menu .nav-item > a::before {
	color:var(--brand);
	font-weight:600 !important;
/* 	font-family: Gibson, sans-serif; */
}
.hamburger-nav.type3 .menu .mega-menu-item > a span {
    font-size: 5vh;
/* 	font-family: Kepler Std, serif; */
	font-style:italic;
	font-weight:200;
	text-transform: none;
	color:var(--grey);}
.hamburger-nav.type3 .menu .mega-menu-item > a span.cloned {color:#ceb888;}

/*Social Links - Desktop - Right*/
.social-bar-holder li {font-weight:100;}
.social-bar-holder li:first-child {
	color:var(--brand);
	font-weight:600;}

/*Text Spinner*/
#jy-spinner-container { margin: -20vh 0 0 0; background: rgba(0, 0, 0, 0);}
#jy-spinner-circle {
	position: absolute; 
	overflow: hidden;
	right:0;
	/*background-image: url("https://www.jygroup.ca/wp-content/uploads/jy-logo-GOLD-CEB888-FINAL-1-1.svg");*/
	background-position: center center;
	background-repeat:no-repeat;
	background-size:15%;
	transition: all 0.5s ease;}

/*#jy-spinner-circle:hover {
	background-image: url("https://www.jygroup.ca/wp-content/uploads/jy-logo-GOLD-CEB888-FINAL-1-1.svg");
	cursor:pointer;}*/

#jy-spinner-circle text {
	font-size: 10px; 
	font-weight: 200;
	color:#ceb888;
	text-transform:uppercase;
	letter-spacing:5px;}

#jy-spinner-circle svg {
	width: 100%;
	height: 40vh;
	-webkit-animation-name: rotate;
	-moz-animation-name: rotate;
	-ms-animation-name: rotate;
    -o-animation-name: rotate;
	animation-name: rotate;
	-webkit-animation-duration: 10s;
	-moz-animation-duration: 10s;
	-ms-animation-duration: 10s;
	-o-animation-duration: 10s;
	animation-duration: 10s;
	-webkit-animation-iteration-count: infinite;
	-moz-animation-iteration-count: infinite;
	-ms-animation-iteration-count: infinite;
	-o-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
	-webkit-animation-timing-function: linear;
	-moz-animation-timing-function: linear;
	-ms-animation-timing-function: linear;
	-o-animation-timing-function: linear;
	animation-timing-function: linear;}

@-webkit-keyframes rotate {
    from { -webkit-transform: rotate(360deg); }
    to { -webkit-transform: rotate(0); }
}
@-moz-keyframes rotate {
    from { -moz-transform: rotate(360deg); }
    to { -moz-transform: rotate(0); }
}
@-ms-keyframes rotate {
    from { -ms-transform: rotate(360deg); }
    to { -ms-transform: rotate(0); }
}
@-o-keyframes rotate {
    from { -o-transform: rotate(360deg); }
    to { -o-transform: rotate(0); }
}
@keyframes rotate {
    from { transform: rotate(360deg); }
    to { transform: rotate(0); }
}

/*Services Carousel*/
.jy-services-carousel h6 {
	font-weight:600;
	margin-top:20px;
	color:var(--brand);}

/*Text Hover Underline*/
.jy-hover-underline-animation {
  display: inline-block;
  position: relative;
  color:var(--brand);}

.jy-hover-underline-animation::after {
  content: '';
  position: absolute;
  width: 100%;
  transform: scaleX(0);
  height: 1px;
  bottom: -5px;
  left: 0;
  background-color: var(--brand);
  transform-origin: bottom right;
  transition: transform 0.25s ease-out;}

.jy-hover-underline-animation:hover::after {
  transform: scaleX(1);
  transform-origin: bottom left;}

/*REMOVE NUMBERS ON MOBILE MENU ITEMS*/
@media only screen and (max-width: 768px) {
	.nav.with-counters .nav-item > a > span::before {display:none;}
}

/*--------------------------------------------------------------
## Homepage Services Accordian
--------------------------------------------------------------*/

/*Accordian Box*/
.jy-services .elementor-toggle-item  {border-top: 1px solid var(--lines);}
.dark-scheme .jy-services .elementor-toggle-item  {border-top: 1px solid var(--lines-dark);}

/*Toggle Icon*/
.jy-services .elementor-toggle .elementor-tab-title .elementor-toggle-icon.elementor-toggle-icon-right {
    float: right;
    text-align: right;
    margin-top: 90px;}

/*Row*/
.jy-services-row {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;}

/*Column*/
.jy-services-column {
	display: flex;
	flex-direction: column;
	flex-basis: 100%;
	flex: 1;}

/*Title*/
.jy-services-column-left {
	text-transform:uppercase;
	letter-spacing:3px;
	padding: 60px 0 60px 0;
	font-weight:600;
	font-size:0.9em;
	vertical-align: middle;
	color: var(--brand);}

/*Description*/
.jy-services-column-right {
	font-weight:100;
	line-height:1.4em;
	padding: 60px 60px 60px 10px;
	vertical-align: middle;
	color: var(--dark);}

.jy-services-brand-title {font-size:1.6em;font-weight:100;letter-spacing:10px;color:var(--brand) !important;}
.jy-services-brand-subtitle {font-size:1.6em;font-weight:600;letter-spacing:10px;line-height:10px;}

/*Dark Scheme Styles*/
.dark-scheme .jy-services-column-right {color: var(--light);}


/*--------------------------------------------------------------
## Homepage Process Accordian
--------------------------------------------------------------*/
/*.horizontal-accordion-item {
	-webkit-box-shadow: none;
	box-shadow:none;
	border-right:1px solid var(--lines);
}
.dark-scheme .horizontal-accordion-item {
	-webkit-box-shadow: none;
	box-shadow:none;
	border-right: none;
}
.horizontal-accordion-item:not(:last-child) {
	-webkit-box-shadow: none;
	box-shadow:none;
}
.horizontal-accordion-item:last-child {border-right:none;}*/

/*--------------------------------------------------------------
## Contact Page, Submission Forms, Passwords, etc.
--------------------------------------------------------------*/
/*Map Styles*/
.jy-contact-map-light {display:block;}
.dark-scheme .jy-contact-map-light {display:none;}
.jy-contact-map-dark {display:none;}
.dark-scheme .jy-contact-map-dark {display:block;}

/*Forms Styling*/
.gform_wrapper.gravity-theme .gfield input {
	height:55px;
	max-width: 100%;
    border: 1px solid var(--brand);
    border-radius: 0;
    padding: 15px 20px 15px 20px !important;
	font-size:1em;
	font-weight:100;
	background:var(--light);}

.gform_wrapper.gravity-theme .gfield_label {
	color: var(--brand);
	text-transform:uppercase;
	font-size:0.9em !important;
	font-weight:600 !important;
	letter-spacing:3px !important;}

.gform_wrapper.gravity-theme .gfield-choice-input+label {
	font-weight:100;}

.gform_wrapper.gravity-theme input[type=text] {font-size:1em !important;}

.gform_wrapper.gravity-theme .gfield input:focus {
	border: 1px solid var(--grey);
	outline:0 !important;}

.gform_wrapper.gravity-theme .gfield select {
	height:55px;
	max-width: 100%;
    border: 1px solid var(--brand);
    border-radius: 0;
	font-size:1em;
	font-weight:100;
	color:var(--grey);
    padding: 12px 20px 15px 15px !important;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-appearance: none;
	-moz-appearance: none;
	background-image:
		linear-gradient(45deg, transparent 50%, gray 50%),
		linear-gradient(135deg, gray 50%, transparent 50%),
		linear-gradient(to right, #ccc, #ccc);
	background-position:
		calc(100% - 20px) calc(1.2em + 2px),
		calc(100% - 15px) calc(1.2em + 2px),
		calc(100% - 2em) 0.6em;
	background-size:
		5px 5px,
		5px 5px,
		1px 1.5em;
	background-repeat: no-repeat;
	background-color: var(--light);}

.gform_wrapper.gravity-theme .gfield select:focus {
	background-image:
		linear-gradient(45deg, #2a2a2a 50%, transparent 50%),
		linear-gradient(135deg, transparent 50%, #2a2a2a 50%),
		linear-gradient(to right, #ccc, #ccc);
	background-position:
		calc(100% - 15px) 1.2em,
		calc(100% - 20px) 1.2em,
		calc(100% - 2em) 0.6em;
	background-size:
		5px 5px,
		5px 5px,
		1px 1.5em;
	background-repeat: no-repeat;
	border-color: var(--grey);
	outline: 0;}

.gform_wrapper.gravity-theme .gfield textarea {
	max-width: 100%;
    border: 1px solid var(--brand);
    border-radius: 0;
    padding: 15px 20px 15px 20px !important;
	font-size:1em;
	font-weight:100;
	color: var(--grey);
	background: var(--light);}

.gform_wrapper.gravity-theme .gfield textarea:focus {
	border-color: var(--grey);
	outline: 0;}

/*Checkbox Styling*/
input[type=checkbox] + label {
	display: block;
	margin: 0.2em;
	cursor: pointer;
	padding: 0.2em;
	font-size:1em !important;}

input[type=checkbox] {
	display: none !important;}

input[type=checkbox] + label:before {
	content: "\2714";
	border: 1px solid var(--brand);
	border-radius: 0;
	display: inline-block;
	width: 20px;
	height: 20px;
	padding-left: 0.2em;
	padding-top: 0.1em;
	margin-right: 15px;
	vertical-align: bottom;
	color: transparent;
	transition: .2s;
	font-size:0.8em !important;}

input[type=checkbox] + label:active:before {
	transform: scale(0.5);}

input[type=checkbox]:checked + label:before {
	background-color: var(--brand);
	border-color: var(--brand);
	color: var(--light);}

input[type=checkbox]:disabled + label:before {
	transform: scale(1);
	border-color: var(--brand);}

input[type=checkbox]:checked:disabled + label:before {
	transform: scale(1);
	background-color: var(--brand);
	border-color: var(--brand);}

/*Radio Buttons Styling*/
input[type=radio] + label {
	display: block;
	margin: 0.2em;
	cursor: pointer;
	padding: 0.2em;
	font-size:1em !important;}

input[type=radio] {
	display: none !important;}

input[type=radio] + label:before {
	content: "\2714";
	border: 1px solid var(--brand);
	border-radius: 0;
	display: inline-block;
	width: 20px;
	height: 20px;
	padding-left: 0.2em;
	padding-top: 0.1em;
	margin-right: 15px;
	vertical-align: bottom;
	color: transparent;
	transition: .2s;
	font-size:0.8em !important;}

input[type=radio] + label:active:before {
	transform: scale(0.5);}

input[type=radio]:checked + label:before {
	background-color: var(--brand);
	border-color: var(--brand);
	color: var(--light);}

input[type=radio]:disabled + label:before {
	transform: scale(1);
	border-color: var(--brand);}

input[type=radio]:checked:disabled + label:before {
	transform: scale(1);
	background-color: var(--brand);
	border-color: var(--brand);}

/*Button*/
input[type=submit] {
	border: 1px solid var(--brand);
	background:none !important;
	border-radius:0;
	padding:13px 40px 13px 40px;
	color:var(--brand) !important;
	font-size: 0.9em;
	font-weight:500;
	letter-spacing:3px;
	text-transform:uppercase;}

input[type=submit]:hover {
	background:var(--brand);
	border: 1px solid var(--grey);
	color:var(--grey) !important;}

/*DARK MODE FORMS*/

/*Input
.dark-scheme .gform_wrapper.gravity-theme .gfield input,
.gform_wrapper.gravity-theme .gfield select,
.gform_wrapper.gravity-theme .gfield textarea {
	border: 1px solid var(--lines-dark); 
	background:var(--dark);
	background-color: var(--dark);
	color:var(--lines-grey);}*/

/*--------------------------------------------------------------
## Global Video Effects
--------------------------------------------------------------*/
/*Hover to Play Button on Video*/
.jy-hover-to-play-btn {opacity : 1;}

.jy-hover-to-play-box-0:hover ~ .jy-hover-to-play-btn,
.jy-hover-to-play-box-1:hover ~ .jy-hover-to-play-btn,
.jy-hover-to-play-box-2:hover ~ .jy-hover-to-play-btn,
.jy-hover-to-play-box-3:hover ~ .jy-hover-to-play-btn {opacity : 0;}

.jy-hover-to-play-btn:not(hover) {
    animation-delay:500ms;
    -webkit-animation-delay:500ms;
    -webkit-transition: opacity 500ms ease-out;
    opacity : 1;}

/*Hover to Play Controls on Video*/
video::-webkit-media-controls-panel {
    display: flex;
    opacity: 0;}

.jy-hover-to-play-box-1:hover video::-webkit-media-controls-panel {
    display: flex;
    opacity: 1;}

/*--------------------------------------------------------------
## JY Group Project Address Map
--------------------------------------------------------------*/

.wpgmp_filter_wrappers {
	position:absolute;
	width:300px;
	background:none;
	top:5%;
	left:5%;
	z-index:99;
}
.wpgmp_before_listing {
	color:var(--brand);
	font-weight:600;
	font-size:0.9em;
	text-transform:uppercase;
	letter-spacing:3px;}
div.categories_filter select {
    border-bottom: 1px solid #ceb888;
    float: left;
    border-radius: 0;
    height: inherit;
    line-height: 1.8;
    font-weight: 100;
    max-width: 225px;
    text-transform: capitalize;
    cursor: pointer;
    appearance: none;
    background-position-x: 99%;
    background-position-y: 50%;
    background-size: initial;
    background-repeat-x: no-repeat;
    background-repeat-y: no-repeat;
    background-attachment: initial;
    background-origin: initial;
    background-clip: initial;
    background-color: #2B2B2B;
}