/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
:root {
	--edge-size-lg: 4em;
	--edge-size-sm: 1em;
}

/* Body Overflow */
body, html {
	overflow-x: hidden;
}
/* Bullets */
p + ul {
	margin-bottom: 15px;
}
/* Overall Padding Classes */
.p-0, .p-0>.e-con-inner {
	padding: 0 !important;
}
.p-25 {
	padding: 25px;
}
.p-50 {
	padding: 50px;
}
.p-75 {
	padding: 75px;
}
.p-100 {
	padding: 100px;
}

@media screen and (max-width: 1024px) {
.p-25 {
	padding: 15px;
}
.p-50 {
	padding: 25px;
}
.p-75 {
	padding: 35px;
}
.p-100 {
	padding: 50px;
}
}

@media screen and (max-width: 767px) {
.p-50, .p-75, .p-100 {
	padding: 35px 15px;
}
}
/* Animations */
/** Fade In Up Overwrite **/
@keyframes speedyFadeInUp {
	0% {
		opacity: 0;
		transform: translate3d(0, 25px, 0);
	}
	100% {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}
.elementor-element.animated.fadeInUp {
	animation-name: speedyFadeInUp !important;
	animation-duration: 0.7s !important;
}

/* Text Styles */
h1 i, h1 em, h2 i, h2 em, h3 i, h3 em {
	font-weight: 600;
	color: var(--e-global-color-accent);
}
.eyebrow {
	font-size: 22px;
	font-family: 'Zilla Slab', Arial, sans-serif;
	font-weight: 600;
	color: var(--e-global-color-e1814db);
	line-height: 0 !important;
	display: flex;
    align-items: center;
	text-transform: uppercase;
	letter-spacing: 5%;
}
.eyebrow:before {
	content: url("/wp-content/uploads/accent-earring.svg");
	display: inline-block;
}
.accent-tophat:before {
	content: url("/wp-content/uploads/accent-earring.svg");
	position: absolute;
	bottom: 100%;
	left: 0;
}
.accent-earring:before {
	content: url("/wp-content/uploads/accent-earring.svg");
	position: absolute;
	top: 0;
	right: calc(100% + 15px);
}
.subhead {
	font-size: 26px;
	font-family: 'Funnel Display', Arial, sans-serif;
	font-weight: 600;
	color: var(--e-global-color-0749dee);
}
.callout, .ordered-steps li::marker, .ordered-steps li {
	font-size: 20px;
	font-family: 'Funnel Display', Arial, sans-serif;
	font-weight: 500;
	color: var(--e-global-color-e1814db);
}
.large-stat {
	font-size: 140px;
	font-family: 'Funnel Display', Arial, sans-serif;
	font-weight: 700;
	color: var(--e-global-color-e1814db);
	line-height: 0.7em;
}
@media screen and (min-width: 1200px) and (max-width: 1919px) {
	h1 {
		font-size: 84px !important;
	}
}
@media screen and (max-width: 1919px) {
	.subhead {
		font-size: 24px;
}
}
@media screen and (max-width: 767px) {
	.subhead {
		font-size: 22px;
	}
	.callout {
		font-size: 18px;
	}
	.accent-earring, .accent-tophat, .accent-earring:before, .accent-tophat:before {
		margin-top: 25px !important;
	}
	.accent-earring:before {
		top: unset;
		right: unset;
		bottom: 100%;
		left: 0;
	}
	.eyebrow {
		font-size: 18px;
	}
	.choose-crs .subhead {
		font-size: 16px !important;
		width: 30ch !important;
		line-height: 0.8em !important;
		
	}
}
/* Image Overlap */
.two-image-grid-overlap .elementor-widget-image:first-child { grid-area: 1 / 1 / 5 / 4; }
.two-image-grid-overlap  .elementor-widget-image:last-child { grid-area: 3 / 3 / -1 / -1; }
.four-two-grid-overlap .elementor-widget-image:first-child { grid-area: 1 / 1 / 5 / 5; }
.four-two-grid-overlap  .elementor-widget-image:last-child { grid-area: 3 / 4 / -1 / -1; }
/* Image Corners */
.two-corner-image img {
  clip-path: polygon( var(--edge-size-lg) 0%, 100% 0, 100% calc(100% - var(--edge-size-lg)), calc(100% - var(--edge-size-lg)) 100%, 0 100%, 0% var(--edge-size-lg));
}
.one-corner-image-br img {
	clip-path: polygon( 0 0,100% 0, 100% calc(100% - var(--edge-size-lg)), calc(100% - var(--edge-size-lg)) 100%, 0 100%, 0% var(--edge-size-lg));
}
.one-corner-image-tl img {
	clip-path: polygon( 0 0,100% 0, 100% calc(100% - var(--edge-size-lg)), calc(100% - var(--edge-size-lg)) 100%, 0 100%, 0% var(--edge-size-lg));
}
a.e-gallery-item.elementor-gallery-item:nth-child(3n) {
	clip-path: polygon( 0 0,100% 0, 100% calc(100% - var(--edge-size-lg)), calc(100% - var(--edge-size-lg)) 100%, 0 100%, 0% var(--edge-size-lg));
}
/* Background Corners */
.two-cut-corner {
	clip-path: polygon(var(--edge-size-lg) 0%, 100% 0, 100% calc(100% - var(--edge-size-lg)), calc(100% - var(--edge-size-lg)) 100%, 0 100%, 0% var(--edge-size-lg));
}
.one-cut-corner-br {
	clip-path: polygon( 0 0,100% 0, 100% calc(100% - var(--edge-size-lg)), calc(100% - var(--edge-size-lg)) 100%, 0 100%, 0% var(--edge-size-lg));
}
.one-cut-corner-br-sm {
	clip-path: polygon( 0 0,100% 0, 100% calc(100% - var(--edge-size-sm)), calc(100% - var(--edge-size-sm)) 100%, 0 100%, 0% var(--edge-size-sm));
}
.one-cut-corner-tl {
	clip-path:polygon( var(--edge-size-lg) 0%,100% 0, 100% 100%, 0 100%, 0 var(--edge-size-lg));
}
.filetab-corner:before {
	content:'';
    position: absolute;
    width:100%;
    height: 100%;
    top: 0;
    left: 0;
	clip-path: polygon(calc(45% - 8em) calc(100% - 8em), 100% calc(100% - 8em), 100% 100%, calc((45% - 8em) - 8em) 100%);
    background-color: #fff;
}
.clip-corner-br:before {
    content:'';
    position: absolute;
    width:100%;
    height: 100%;
    top: calc(100% - 4em);
    left: calc(100% - 4em);
    clip-path: polygon(4em 0, 0% 4em, 4em 4em);
    background-color: #fff;
}
.clip-corner-br-tan:before {
	content:'';
    position: absolute;
    width:100%;
    height: 100%;
    top: calc(100% - 4em);
    left: calc(100% - 4em);
    clip-path: polygon(4em 0, 0% 4em, 4em 4em);
    background-color: var(--e-global-color-secondary);
}
/* Vertical Divider Using Elementor Widget */
@media screen and (min-width: 768px) {
	.vertical-divider .elementor-divider-separator {
		width: 1px !important;
		height: 100% !important;
		align-self: stretch !important;
		display: block !important;
		margin: 0 auto !important;
		background: var(--divider-color);
	}
	.vertical-divider .elementor-divider {
		height: 100% !important;
		width: var(--divider-border-width) !important;
	}
	.vertical-divider {
		width: var(--divider-border-width) !important;
	}
}
/* Buttons */
/* Primary + Default */
.elementor-button {
	padding: 0 !important;
	background-color: transparent !important;
}
.elementor-button-text, .elementor-button-icon {
    transition: all .3s;
    position: relative;
    overflow: hidden;
    z-index: 1;
}	
.elementor-widget-button:not(.secondary-btn) .elementor-button {
	border: 2px solid var(--e-global-color-accent);
}
.elementor-widget-button:not(.secondary-btn) .elementor-button-text {
	background-color: var(--e-global-color-accent) !important;
	padding: 15px 20px 15px 20px;
}
.elementor-widget-button:not(.secondary-btn) .elementor-button-icon {
	background-color: transparent;
	padding: 15px 20px 15px 20px;
	color: var(--e-global-color-e1814db) !important;
	fill: var(--e-global-color-e1814db) !important;
}
.white-fill.elementor-widget-button .elementor-button-icon {
	fill: #fff !important;
}
.elementor-widget-button:not(.secondary-btn) .elementor-button-text:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0%;
    height: 100%;
    background-color: var(--e-global-color-34d5262);
    transition: all .3s;
    z-index: -1;
}
.elementor-widget-button:not(.secondary-btn) .elementor-button:hover {
    border: 2px solid var(--e-global-color-34d5262);
}
.elementor-widget-button:not(.secondary-btn) .elementor-button:hover .elementor-button-text:before {
      width: 100% !important;
}
/* Secondary */
.secondary-btn .elementor-button-text {
	padding: 0 15px 0 0 !important;
	background-color: transparent !important;
	align-content: center;
	color: var(--e-global-color-e1814db);
	font-weight: 600 !important;
	font-size: 14px !important;
}
.secondary-btn .elementor-button-icon {
	padding: 5px;
	background-color: var(--e-global-color-fef8aff) !important;
	color: var(--e-global-color-e1814db) !important;
	fill: var(--e-global-color-e1814db) !important;
	clip-path: polygon(  0% 0%, 100% 0, 100% 100%, 100% 100%, 0 100%, 0% 0%);
	transition: all .3s ease;
}
.secondary-btn .elementor-button-icon:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0%;
    height: 100%;
    background-color: var(--e-global-color-34d5262);
    transition: all .3s;
    z-index: -1;
}
.secondary-btn .elementor-button:hover .elementor-button-icon {
    color: #fff !important;
	fill: #fff !important;
	clip-path: polygon(
		5px 0%, 100% 0, 100% calc(100% - 5px), calc(100% - 5px) 100%, 0 100%, 0% 5px);
}
.secondary-btn .elementor-button:hover .elementor-button-icon:before {
      width: 100%;
}
/* Hubspot Form Styling */
.hbspt-form fieldset, .hbspt-form fieldset.form-columns-1 .hs-input:not([type=checkbox]), .hbspt-form fieldset.form-columns-2 .hs-input:not([type=checkbox]) {
	max-width: 100% !important;
	width: 100% !important;
}
.form-columns-2, .form-columns-1 {
	margin-bottom: 15px !important;
}
.hbspt-form input[type=date], input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea {
border-bottom: 1px solid var(--e-global-color-e1814db) !important;
	border-right: 0;
	border-top: 0;
	border-left: 0;
    border-radius: 0 !important;
	background-color: rgba(0,0,0,.03);
	padding: 15px 0;
	&:focus {
		border-color: var(--e-global-color-accent) !important;
	}
	&:focus-visible {
		outline: none;
		background-color: rgba(0,0,0,0.02)
	}
	}
.hbspt-form label {
	color: var(--e-global-color-e1814db) !important;
}
.hbspt-form ul.inputs-list.multi-container {
	display:flex;
	flex-direction: row;
	flex-wrap: wrap;
	column-gap: 20px;
	padding-inline-start: 0px;
}
.hbspt-form ul.inputs-list.multi-container li {
    list-style-type: none !important;
	
}
.hbspt-form ul.inputs-list.multi-container li input {
	margin-right: 5px;
}
.hbspt-form [type=button], .hbspt-form [type=submit], .hbspt-form button {
	border: none;
	width: 100%;
}
.hbspt-form .hs-error-msgs {
	list-style-type: none !important;
	font-size:14px;
	font-style: italic;
	padding-inline-start: 0px;
}
/* Awards */
@media screen and (max-width: 767px) {
	.two-awards {
		position: inherit;
		right: 0 !important;
		bottom: 0 !important;
		width: 100%;
	}
	.five-awards {
		gap: 15px !important;
	}
	.five-awards .elementor-widget.elementor-widget-image {
		width: 125px !important;
	}
}