/*
 Theme Name:   GeneratePress Child
 Theme URI:    http://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Thomas Usborne
 Author URI:   http://edge22.com
 Template:     generatepress
 Version:      0.1
 Tags:
*/

/* custom styles start */

/* general */

b, strong {
	font-weight: 600;
}

a,
.main-navigation .main-nav ul li a,
.menu-toggle,
.main-navigation .menu-bar-item > a,
input[type="submit"] {
	transition: 0.35s;
}

.zero-margin {
	margin-bottom: 0;
}

/* header and navigation */

#header-logo {
	width: 200px;
}

.navigation-search {
	max-width: 1320px;
	margin: 0 auto;
}

.main-navigation .main-nav ul li a {
	display: inline-block;
	position: relative;
}

.main-navigation .main-nav ul li a::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 1px;
  top: 80%;
  left: 0;
  background: var(--accent);
  transition: transform 0.5s;
  transform: scaleX(0);
  transform-origin: right;
}

.main-navigation .main-nav ul li a:hover {
	color: var(--accent);
}

.main-navigation .main-nav ul li a:hover::after {
	transform: scaleX(1);
	transform-origin: left;
}

.main-navigation .main-nav ul ul li a {
	width: 100%;
}

.has-menu-bar-items button.menu-toggle {
	flex-grow: 1;
}

button.menu-toggle {
	text-align: right;
}

#generate-slideout-menu .inside-navigation {
	padding: 0;
}

.main-navigation.slideout-navigation .main-nav > ul > li > a {
	width: 100%;
}

#menu-item-5066 {
	margin-right: -10px;
}

.main-navigation .menu-bar-item>a {
	padding-left: 0;
	padding-right: 40px;
}

.main-navigation .inside-navigation {
	padding: 10px 40px 0px 40px;
}

.main-navigation.navigation-stick .inside-navigation {
	padding: 0 40px;
}

#secondary-navigation .menu-toggle {
	display: none;
}

/* events */

.em.em-list .em-item,
.em.em-list .em-item .em-item-meta .em-item-meta-line a {
	color: var(--contrast) !important;
}

.em.em-item .em-item-meta .em-item-meta-line a,
.em.em-list .em-item .em-item-meta .em-item-meta-line a,
.em.em-list-widget .em-item .em-item-meta .em-item-meta-line a {
	font-style: normal !important;
}

#page .em-list-widget a {
	text-decoration: none;
	color: var(--contrast) !important;
}

#page .em-list-widget a:hover {
	color: var(--accent) !important;
}

#block-3 a {
	text-decoration: none;
}

#block-11 .widget_em_widget {
	padding: 0;
}

#page .em-event-single .em-event-location a,
.em.pixelbones a {
	color: var(--accent) !important;
}

#page .em.pixelbones .button.input {
	background-color: var(--accent) !important;
	color: #fff !important;
	font-weight: 600 !important;
	font-size: 16px !important;
	height: 44px !important;
	border-radius: 18px 0 18px 18px !important;
	padding-top: 2px !important;
}

#page .em.pixelbones .button .em-icon {
	color: #fff !important;
}

#page .em.pixelbones .button.input:hover,
#page .em-event-single .em-event-location a:hover {
	background-color: var(--contrast-2) !important;
}

#page .em-event-single .em-event-location a {
	background-color: var(--accent) !important;
	color: #fff !important;
	font-weight: 600 !important;
	font-size: 16px !important;
	/*height: 44px !important;*/
	border-radius: 18px 0 18px 18px !important;
	padding: 20px 30px !important;
}

#page .em-event-single .em-event-location div a {
	background-color: transparent !important;
	color:var(--accent) !important;
	font-weight: 400 !important;
	padding-top: 0 !important;
}

#page .em-event-single .em-icon-at {
	margin-top: 20px !important; 
}

/* qi blocks */

.qodef-e-title {
	font-size: 22px;
}

.qi-block-blog-list.qi-block-blog-list.qodef-title--hover-underline .qodef-e-title-link {
	background-image: linear-gradient(transparent calc(100% - 1px),currentColor 1px);
}

.wp-block-qi-blocks-progress-bar-horizontal {
	margin-bottom: 30px;
}

.qodef-e-date::after {
  content: ",";
  color: #fff;
  margin-left: -0.275em;
  font-weight: 700;
}

#main .qi-block-timeline .qodef-e-title a[href] {
	color: var(--accent);
	text-decoration: underline;
}

.qi-block-team-member .qodef-m-social-icons>* {
	fill: unset !important;
	stroke: unset !important;
	font-size: 2rem !important;
}

#post-4081 .qodef-m-text {
	background-color: var(--base);
	padding: 5px 20px;
	margin-top: 1em !important;
}

.qodef-m-icon-holder {
	font-size: 3rem !important;
	fill: unset !important;
	stroke: unset !important;
}

#ki-banner .qodef-m-subtitle {
	background-color: var(--accent);
	padding: 10px 20px;
	margin-bottom: 30px;
	max-width: 392px;
}

/* social icons in header and footer */

.secondary-navigation .inside-navigation {
	padding: 0px 40px;
}

.secondary-menu .menu-item,
#menu-top-navigation-1 .menu-item {
	background-repeat: no-repeat;
	background-size: 25px;
	transition: transform .2s;
}

.secondary-menu .menu-item {
	background-position: center;
}

#menu-top-navigation-1 {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
}

#menu-top-navigation-1 li {
	width: 40px;
}

.secondary-menu li:hover,
#menu-top-navigation-1 li:hover {
	transform: scale(1.1); 
	cursor: pointer;
}

#menu-item-4551, .menu-item-4551 {
	background-image: url(/wp-content/themes/generatepress_child/icons/linkedin-icon.svg);
}

#menu-item-4552, .menu-item-4552 {
	background-image: url(/wp-content/themes/generatepress_child/icons/facebook-icon.svg);
}

#menu-item-4553, .menu-item-4553 {
	background-image: url(/wp-content/themes/generatepress_child/icons/twitter-icon.svg);
}

#menu-item-4554, .menu-item-4554 {
	background-image: url(/wp-content/themes/generatepress_child/icons/youtube-icon.svg);
}

#menu-item-5066, .menu-item-5066 {
	background-image: url(/wp-content/themes/generatepress_child/icons/instagram-icon.svg);
} 

#menu-top-navigation-1 a {
	padding:10px;
	text-decoration: none;
}

/* footer */

.inside-site-info {
	display: block;
}

.site-info {
	text-align: right;
}

#block-9 .alignright {
	margin: 0;
}

.site-footer {
	box-shadow: 0px -3px 2px -2px rgba(0, 0, 0, 0.2);
	
}

#footer-widgets .footer-widgets-container {
	max-width: 1400px;
}

/* forms */

input[type="submit"] {
	border-bottom-right-radius: 18px;
}

#mc4wp-form-2 input,
#mc4wp-form-1 input {
	margin-bottom: 20px;
}

#content .qi-block-contact-form-7 label {
	display: initial;
}

.wpcf7-list-item {
	margin: 0;
}

#content .qi-block-contact-form-7 input[type=checkbox]{
	margin-right: 5px;
}

.qi-block-contact-form-7 button[type=submit],
.qi-block-contact-form-7 input[type=submit] {
	background-color: var(--accent);
	color: #fff;
}

.qi-block-contact-form-7 button[type=submit]:focus,
.qi-block-contact-form-7 button[type=submit]:hover,
.qi-block-contact-form-7 input[type=submit]:focus,
.qi-block-contact-form-7 input[type=submit]:hover {
	background-color: var(--contrast-2);
}

/* wp blocks */

.cover-container {
	max-width: 1400px;
	margin: 0 auto;
	padding: 0px 40px;
}

#content .wp-block-cover {
	padding: 0;
}

.wp-block-button__link {
	border-radius: 18px 0 18px 18px;
}

#page .wp-block-cover p:not(.has-text-color) {
	color: var(--contrast);
}

.wp-block-table.dem-table td {
	border-width: 0px 0px 1px 0px;
	border-color: #ccc;
	padding: 1em 0;
}

.wp-block-table.dem-table table {
	border: none;
}

.wp-block-image figcaption {
	text-align: left;
	margin: 10px 0 30px 0 !important;
}


/* page customization */

.dl {
	border-bottom: 1px solid #ccc;
	margin-top: 15px;
}

.dl a {
	font-size: 20px;
	color: var(--contrast);
	text-decoration: none;
	margin-right: 10px;
}

.dl a:hover {
	color: var(--accent);
}

.dl:before {
	content: url(/wp-content/themes/generatepress_child/icons/download-icon.svg);
	display: inline-block;
	margin-right: 5px;
	vertical-align: middle;
	width: 40px;
}

.page-child.parent-pageid-4137 #content,
.page-id-4137 #content,
.page-id-4355 #content {
	padding-top: 0;
}

.partner img {
	display: block;
	transform: scale(1.005) translateZ(0);
	transition: transform .35s cubic-bezier(.25,.46,.45,.94);
	width: 100%;
	will-change: transform;
}

/*.partner img, .uan img {
	filter: grayscale(100%);
	transition: 0.3s;
}

.partner img:hover, .uan img:hover {
	opacity: 1;
	filter: none;
}

.op-85 img {
	opacity: .85;
}

.op-6 img {
	opacity: .6;
}

.op-65 img {
	opacity: .65;
}

.op-7 img {
	opacity: .7;
}*/

#post-35 .card {
	margin-bottom: 20px;
}

a.card:hover {
	-webkit-transform: translateY(-5px);
	transform: translateY(-5px);
	box-shadow: 0 4px 6px 0 rgba(90, 97, 105, .21), 0 8px 16px 0 rgba(90, 97, 105, .22), 0 30px 44px 0 rgba(90, 97, 105, .2), 0 14px 70px 0 rgba(90, 97, 105, .2);
}

.card {
  position: relative;
  display: block;
  overflow: hidden;
  background-color: #fff;
  border-radius: 18px 18px 0px 18px;
  padding: 30px;
  margin-bottom: 40px;
  will-change: box-shadow, transform;
  transition: box-shadow .2s, -webkit-transform .2s;
  transition: box-shadow .2s, transform .2s;
  transition: box-shadow .2s, transform .2s, -webkit-transform .2s;
  box-shadow: 0 2px 3px 0 rgba(90, 97, 105, .11), 0 4px 8px 0 rgba(90, 97, 105, .12), 0 15px 22px 0 rgba(90, 97, 105, .1), 0 7px 35px 0 rgba(90, 97, 105, .1);
}

.new-card-horizontal {
	display: flex;
}

.new-card {
	padding: 20px;
    display: block;
    overflow: hidden;
    background-color: #fff;
    border-radius: 18px 0px 18px 18px;
    /* padding: 30px; */
    margin-bottom: 40px;
    will-change: box-shadow,transform;
    transition: box-shadow .2s,-webkit-transform .2s;
    transition: box-shadow .2s,transform .2s;
    transition: box-shadow .2s,transform .2s,-webkit-transform .2s;
/*    box-shadow: 0 2px 3px 0 rgba(90,97,105,.11),0 4px 8px 0 rgba(90,97,105,.12),0 15px 22px 0 rgba(90,97,105,.1),0 7px 35px 0 rgba(90,97,105,.1);*/
	border: 1px solid #ccc;
  }

.card-image {
	overflow: hidden;
	position: relative;
	margin: -30px -30px 30px;
	height: 0;
	padding-bottom: 70%;
	max-width: calc(100% + 60px);
}

.entry-content .new-card img {
	height: 100%;
}

.entry-content .new-card-horizontal img {
	height: auto;
}

.card-image img {
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: 50%;
	object-position: 50%;
	z-index: 0;
}

.simple-card {
    display: inline-block;
    margin: auto 1em;
    position: relative;
    left: 0;
    -webkit-transition: left 0.25s;
    -moz-transition: left 0.25s;
    -o-transition: left 0.25s;
    transition: left 0.25s;
}

.simple-card:hover {
    left: -10px;
}

.page-id-4312 :where(.wp-block-columns.is-layout-flex) {
	gap:3em;
}

.page-id-4312 .one-container .site-content {
	padding-top: 0;
}

.page-child.parent-pageid-33 .qi-block-banner {
	max-height: 420px;
}

.page-child.parent-pageid-33 .qodef-m-subtitle {
	font-size:22px;
}

.lyte_disclaimer {
	font-size: 12px;
	line-height: 1.2;
}

.lL {
	margin-top: 10px !important;
}

#content #ctf-more {
	max-width: 200px;
	margin: 0 auto;
	font-weight: 600;
	border-radius: 18px 0 18px 18px;
	padding: 10px 20px;
	margin-top: 20px;
}

/* media queries */

@media screen and (max-width: 525px) {
	#ki-banner .qodef-m-image {
		height: 350px;
		background-color: rgba(163,173,196,1.00);
	}
	
	#ki-banner .qodef-m-content {
		padding: 0;
		justify-content:flex-start;
	}
	
	#ki-banner .qodef-m-subtitle {
		margin-bottom: 20px;
	}
	
	#ki-banner .qodef-m-title {
		margin-top:0;
		padding: 0px 30px;
	}
	
	#ki-banner .qodef-m-text {
		padding:0px 30px;
		margin-top:40px;
	}
}

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

	.page-child.parent-pageid-33 .qodef-m-title {
		font-size: 24px;
	}

	.page-child.parent-pageid-33 .qodef-m-subtitle {
		font-size: 16px;
	}

	.page-child.parent-pageid-33 .qodef-m-text,
	.main-navigation .menu-bar-items,
	.hide-mobile {
		display: none;
	}
	.page-child.parent-pageid-33 .qi-block-banner.qodef-layout--in-box .qodef-m-content {
		padding: 20px;
	}
	.main-navigation .inside-navigation {
		padding: 0 30px;
	}
	.menu-toggle {
		padding-right: 0;
	}
	h1 {
		font-size: 40px;
	}
	.qodef-m-title, h2 {
		font-size: 32px;
	}
	.qi-block-progress-bar-horizontal h3 {
		font-size: 26px;
	}
	#content .nl-section {
		padding: 50px 0;
	}
	#content .partner, #content .uan {
		display: block;
	}
	#content .partner .wp-block-column,
	#content .uan .wp-block-column {
		width: 50%;
		float: left;
	}
	.footer-widget-3 {
		margin-top: 30px;
	}
	.footer-widget-4 .wp-block-image .alignright {
		float: none;
	}
	.site-info {
		text-align: left;
	}
	#main .em.pixelbones .em-list .em-item-title {
		font-size: 26px !important;
		line-height: 1.3 !important;
	}
	.em-list .em-event-book-now {
		margin-top: 20px;	
	}
	#menu-item-5066 {
		margin-right: -20px;
	}
}

@media screen and (max-width: 768px) {
	.secondary-navigation #menu-top-navigation,
	.secondary-navigation:not(.toggled) .main-nav>ul {
		display: flex;
	}
	.hide-mobile {
		display: none;
	}
}