/* 
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{
	--pri: #01916D;
	--sec: #CCE9E2;
	--border: #e2e8f0;
}
html,body{
	overflow-x: hidden;
	margin: 0;
	padding: 0;
}
.white_img img,img.white_img{
	filter: brightness(0) invert(1);
}
.p_50{
	padding: 3rem 1rem;
}
.p_050{
	padding: 0 1rem 3rem;
}
.p_500{
	padding: 3rem 1rem 0;
}
.p_80{
	padding: 5rem 1rem;
}
.p_080{
	padding: 0 1rem 5rem;
}
.p_800{
	padding: 5rem 1rem 0;
}
.p_3 {
	padding: 3rem 1rem;
}
.color span,span.color{
	color: var(--pri);
}
.color2 span,span.color2{
	color: var(--sec);
}
.square img{
	aspect-ratio: 1/1;
	object-fit: cover;
}
.portrait img{
	aspect-ratio: 16/9;
	object-fit: cover;
}
a {
	color: var(--pri);
}
i {
    aspect-ratio: 1/1;
}
.do-fa6 {
    background-color: rgba(1,145,109, 0.1);
    padding: 1rem;
    border-radius: 3rem;
    color: rgb(1,145,109);
    margin-right: 1rem;
    font-size: 1.5rem;
	place-content: center;
}
.fa6 {
  color: #01916D;
  font-size: 30px;
  --fa-secondary-opacity: .4;
  border: 1px solid var(--border);
  border-radius: 3rem;
  padding: 1rem;
	place-content: center;
}
i.xp {
    padding-inline: 1.25rem !important;
}
.elementor-widget-container:hover:has(.fa6) .fa6 {
  border-color: var(--border) !important;
}

.grecaptcha-badge { visibility: hidden; }

#industries .industries-icons .industry:hover i {
	border-color: var(--pri) !important;
}

.e-n-menu-item.active-parent > .e-n-menu-title {
	a, span {
		color: #1E293B !important;
	}
}

.learn-more-btn .elementor-button * {
    transition: all 0.3s ease !important;
}
.learn-more-btn .elementor-button-icon {
    align-items: center;
}
.learn-more-btn .elementor-button:hover .elementor-button-content-wrapper {
    gap: 14px !important;
}
.elementor-message-svg:before {
    vertical-align: top;
    position: relative;
    top: 0.25rem;
}

.tab-image {
	display: none;
	transition: display 100ms linear;
}
.tab-image.image-active {
	display: block !important;
	transition: display 300ms ease;
}
.okta-images img {
	border-radius: 0.75rem;
	box-shadow: 0 1rem 3rem #0206172d;
}

.scroll-to-top {
    position: fixed;
    bottom: 0;
    right: 1.5rem;
    width: 50px;
    height: 50px;
    cursor: pointer;
    opacity: 0;
    transition: all 0.3s ease-out;
}

.scroll-to-top.active {
    opacity: 1;
	bottom: 1.5rem;
}

.scroll-to-top::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 0.5rem;
    box-sizing: border-box;
    background: conic-gradient(
		from -40deg,
		var(--pri) var(--scroll-progress, 0%), 
		transparent 0%);
    mask: linear-gradient(white 0 0) content-box, linear-gradient(white 0 0);
    mask-composite: exclude;
    padding: 2px;
    inset: 0;
	transform-origin: top left;
    background-position: top left;
}
.e-con.e-parent {
	margin-inline: auto;
}

/* Contact Form */
.elementor-message.elementor-message-danger {
	display: none !important;
}
.elementor-form {
	opacity: 1 !important;
}
.elementor-form label[for=form-field-interested] {
    pointer-events: none;
	
	a {
		pointer-events: auto;
	}
}
.elementor-field-group {
    height: 100%;
}
input {
    border: 1px solid #e2e8f0 !important;
    border-radius: .5rem !important;
}
input:focus {
	box-shadow: rgba(1, 145, 109, 0.25) 0px 0px 0px 0.25rem !important;
	border-color: rgb(128, 200, 182) !important;
}
input.invalid-feedback {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23db1436'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23db1436' stroke='none'/%3e%3c/svg%3e");
	background-position: right calc(.375em + .25rem) center;
    background-repeat: no-repeat;
    background-size: calc(.75em + .5rem) calc(.75em + .5rem);
    border-color: #db1436 !important;
}
.contact-form .wpforms-field {
    padding: 0 !important;
    padding-bottom: 1rem !important;
}
.contact-form .submit-btn {
    width: 100% !important;
    background: var(--pri) !important;
    border-radius: 50rem !important;
    font-size: 1rem !important;
    font-family: 'Clarimo UD PE', sans-serif !important;
    font-weight: 600 !important;
}
.contact-form .submit-btn:hover {
	background: #27a283 !important;
}
label.invalid-feedback {
    color: #db1436 !important;
    font-size: .875em !important;
	font-weight: 300 !important;
	line-height: 1.5 !important;
}

@media (width >= 576px) {
    .e-con.e-parent > .e-con-inner {
        max-width: 540px;
    }
}
@media (width >= 768px) {
    .e-con.e-parent > .e-con-inner {
        max-width: 720px;
    }
}
@media (width >= 992px) {
    .e-con.e-parent > .e-con-inner {
        max-width: 960px;
    }
}
@media (width >= 1200px) {
    .e-con.e-parent > .e-con-inner {
        max-width: 1140px;
    }
}
@media (width >= 1400px) {
	.e-con.e-parent > .e-con-inner {
        max-width: 1320px;
    }
}
@media(max-width:1023px) {
	.p_80 {
		padding: 2rem 1rem;
	}
	.p_800 {
		padding: 2rem 1rem 0;
	}
	.p_080 {
		padding: 0 1rem 2rem;
	}
	.wpforms-container .wpforms-one-half {
		width: 100% !important;
		margin-inline: 0 !important;
	}
	#elementor-popup-modal-1290 {
		position: fixed;
	}
	.dialog-message.dialog-lightbox-message {
		border-radius: 1rem;
	}
}

/* Hide default checkboxes */
.elementor-field-type-checkbox input[type="checkbox"] {
    display: none !important;
}

/* Style the label as a toggle switch */
.elementor-field-type-checkbox .elementor-field-option {
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    font-size: 16px;
    padding-left: 50px; /* Space for the toggle */
}

/* Create the toggle track */
.elementor-field-type-checkbox .elementor-field-option label::before {
    content: "";
    position: absolute;
    left: 0;
	top: 0.25rem;
    width: 2.25rem;
    height: 1.25rem;
    background-color: white;
    border-radius: 20px;
    transition: all 0.3s;
	border: 1px solid #ccc;
}

.elementor-field-type-checkbox input[type="checkbox"]:focus + label::before {
    box-shadow: rgba(1, 145, 109, 0.25) 0px 0px 0px 0.25rem !important;
    border-color: rgb(128, 200, 182) !important;
}

/* Create the toggle knob */
.elementor-field-type-checkbox .elementor-field-option label::after {
    content: "";
    position: absolute;
    left: 2px;
    top: calc(0.25rem + 2px);
    width: 1rem;
    height: 1rem;
    background-color: rgba(2, 6, 23, 0.25);
    border-radius: 50%;
    transition: all 0.3s;
	cursor: pointer;
}

/* Change toggle switch when checkbox is checked */
.elementor-field-type-checkbox input[type="checkbox"]:checked + label::before {
    background-color: var(--pri);
	border-color: var(--pri);
}

.elementor-field-type-checkbox input[type="checkbox"]:checked + label::after {
    transform: translateX(1rem);
	background-color: white;
}
