/* 
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 */


/* ------------------------- Start Scaling System -------------------------  */

/* Tablet */
@media screen and (max-width: 991px) {
  :root {
    --container-padding: 1.5em;
  }
}
/* Mobile Landscape */
@media screen and (max-width: 767px) {
  :root {
    --container-padding: 1em;
    --section-padding: calc(var(--gap) * 2);
  }
}
/* Mobile Portrait */
@media screen and (max-width: 479px) {
  :root {}
}

/* Desktop */
:root {
  --size-unit: 16; /* body font-size in design - no px */
  --size-container-ideal: 1440; /* screen-size in design - no px */
  --size-container-min: 992px;
  --size-container-max: 1920px;
  --size-container: clamp(var(--size-container-min), 100vw, var(--size-container-max));
  --size-font: calc(var(--size-container) / (var(--size-container-ideal) / var(--size-unit)));
}
/* Tablet */
@media screen and (max-width: 991px) {
  :root {
    --size-container-ideal: 834; /* screen-size in design - no px */
    --size-container-min: 768px;
    --size-container-max: 991px;
  }
}
/* Mobile Landscape */
@media screen and (max-width: 767px) {
  :root {
    --size-container-ideal: 390; /* screen-size in design - no px */
    --size-container-min: 480px;
    --size-container-max: 767px;
  }
}
/* Mobile Portrait */
@media screen and (max-width: 479px) {
  :root {
    --size-container-ideal: 440; /* screen-size in design - no px */
    --size-container-min: 0px;
    --size-container-max: 479px;
  }
}

/* ------------------------- End Scaling System -------------------------  */




body, html {background:#f5f5f5 !important; font-size:18px;}

body  {
	font-family: "Roboto", sans-serif;
    font-size: var(--size-font) !important;
	background:#f5f5f5;
	color:#696969;
	font-weight:300;
}


.elementor-nav-menu .elementor-item,
.elementor-nav-menu .elementor-sub-item {
  font-size: calc(var(--size-font) * 1.3) !important;
}


/*gsap visibility */

body:not(.elementor-editor-active) header > div, body:not(.elementor-editor-active) .hero, .hero-text h1, body:not(.elementor-editor-active) .hero-text h2, body:not(.elementor-editor-active) .hero-text p, body:not(.elementor-editor-active) .hero-text .elementor-button-wrapper, body:not(.elementor-editor-active) .hero-image, body:not(.elementor-editor-active) .hero-text .form-wrap {visibility: hidden;}
.loaded .hero-text h1 {visibility:visible;}
.no-anim {visibility:visible !important;}

/*end gsap visibility */

.elementor-popup-modal .dialog-close-button {background:#fff !important; padding:8px !important;}
#elementor-popup-modal-2291 .dialog-close-button {background:transparent !important; padding:0px !important;}

.object-cover, .object-cover img {object-fit:cover; min-width:100%; min-height:100%;}
.overflow-hidden {overflow:hidden;}
.zoom-out.object-cover, .zoom-out {overflow:hidden; -webkit-border-radius:8px; border-radius:8px;}
.zoom-out.overflow-visible {overflow:visible;}

.per-blue-dark {color:#00406E;}
.per-blue {color:#5a75f8;}
.per-blue-light {color:#25ADE3;}
.per-blue-xlight {color:#CEE6F8;}
.per-gray {color:#696969;}
.per-gray-light {color:#f6f6fa;}

.bg-per-blue-dark {background:#00406E;}
.bg-per-blue {background:#5a75f8;}
.bg-per-blue-light {background:#25ADE3;}
.bg-per-blue-xlight {background:#CEE6F8;}
.bg-per-gray {background:#696969;}
.bg-per-gray-light {background:#f6f6fa;}

.vh-100-mv4 {height:calc(100vh - 4rem);}


.elementor-popup-modal .dialog-close-button {top:30px !important; right:40px !important;}
.elementor-popup-modal .dialog-close-button svg {height:0.75em; width:0.75em; fill:#4D4D4D;}

@property --bg-angle {
  inherits: false;
  initial-value: 0deg;
  syntax: "<angle>";
}

@keyframes spin {
  to { --bg-angle: 360deg; }
}

.gradient-box-light {position: relative;  border: solid 2px transparent; background-clip: padding-box;}
.gradient-box-light:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  margin: -2px;
  border-radius: inherit;
  background: conic-gradient(from var(--bg-angle) at 50% 50%, #25ADE3, #25ADE3, rgba(206,230,248,1), #25ADE3, rgba(37, 173, 227,1), rgba(37, 173, 227,1), rgba(37, 173, 227,1), rgba(206,230,248,1), rgba(37, 173, 227,1), rgba(37, 173, 227,1));
/*  background: linear-gradient(45deg, rgba(37,173,227,1) 0%, rgba(206,230,248,1) 52%, rgba(37,173,227,1) 100%);*/	
  animation: spin linear 2s infinite;	
}
.gradient-box-light.no-motion:before {animation:none; background: conic-gradient(from 45deg at 50% 50%, #25ADE3, #25ADE3, rgba(206,230,248,1), #25ADE3, rgba(37, 173, 227,1), rgba(37, 173, 227,1), rgba(37, 173, 227,1), rgba(206,230,248,1), rgba(37, 173, 227,1), rgba(37, 173, 227,1));}

.gradient-box-dark {position: relative;  border: solid 2px transparent; background-clip: padding-box;}
:root {--bg-angle: 0;}
.gradient-box-dark:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  margin: -2px;
  border-radius: inherit;
  background: conic-gradient(from var(--bg-angle) at 50% 50%, #00406E, #00406E, rgba(37, 173, 227,1), #00406E, rgba(0, 64, 110,1), rgba(0, 64, 110,1), rgba(0, 64, 110,1), rgba(37, 173, 227,1), rgba(0, 64, 110,1), rgba(0, 64, 110,1));
/*  background: linear-gradient(45deg, rgba(37,173,227,1) 0%, rgba(206,230,248,1) 52%, rgba(37,173,227,1) 100%);*/	
  animation: spin linear 2s infinite;	
}
.gradient-box-dark.no-motion:before {animation:none; background: conic-gradient(from 45deg at 50% 50%, #00406E, #00406E, rgba(37, 173, 227,1), #00406E, rgba(0, 64, 110,1), rgba(0, 64, 110,1), rgba(0, 64, 110,1), rgba(37, 173, 227,1), rgba(0, 64, 110,1), rgba(0, 64, 110,1));}

/* .box-gradient-border.rotate {background: conic-gradient(from var(--bg-angle) at 50% 50%, #25ADE3, #25ADE3, rgba(206,230,248,1), #25ADE3, rgba(37, 173, 227,1), rgba(37, 173, 227,1), rgba(37, 173, 227,1), rgba(206,230,248,1), rgba(37, 173, 227,1), rgba(37, 173, 227,1)); animation: spin linear 3s infinite;	} */

@keyframes gradientDown { 
    0%{background-position:0% 100% ;}
    100%{background-position:0% 0%;}
}

body:not(.elementor-editor-active ) .qpd-process-steps.e-flex > div:after {animation: gradientDown linear 2s infinite; animation-delay:3s; background: linear-gradient(0deg, rgba(255,255,255,1) 46%, rgba(37,173,227,1) 50%, rgba(255,255,255,1) 54%); background-size:100% 800% !important; }

body:not(.elementor-editor-active ) .qpd-process-steps.e-flex > div > div:after {animation: gradientDown linear 2s infinite; animation-delay:3s; background: linear-gradient(0deg, rgba(255,255,255,1) 46%, rgba(37,173,227,1) 50%, rgba(255,255,255,1) 54%); background-size:100% 800% !important; height:64px; transform:translate(-50%,calc(-100% - 16px)); }
body:not(.elementor-editor-active ) .qpd-process-steps.e-flex > div > div:nth-child(2):after {display:none;}

.icon-wrap img {width:100%; height:auto;}


/* @keyframes singleStepGradientDown { 
    0%{top:-8rem ;}
    100%{top:calc(100% + 8rem);}
}

.single-step-bg {overflow:hidden; border-radius:8px; position:absolute; top:0; left:0; width:100%; height:100%;  }
.single-step-bg:before, .single-step-bg:after {content:''; position:absolute; width:3px; height:12rem; background: linear-gradient(0deg, rgba(255,255,255,1) 25%, rgba(37,173,227,1) 50%, rgba(255,255,255,1) 75%); top:0; animation: singleStepGradientDown linear 2s infinite; }
.single-step-bg:before {left:0;}
.single-step-bg:after {right:0;} */

.hero {position:relative; overflow:hidden; transform:rotate(0deg) !important; clip-path:inset(0% round 0px);}
.hero:before {content:''; z-index:2; position: absolute; top:0; left:0; width:100%; height:100%; background: rgb(0,64,110); background: linear-gradient(45deg, rgba(0,64,110,0.36) 18%, rgba(0,64,110,0) 100%);}
.hero > div {position:relative; z-index:2;}
.hero .e-con.e-child, .hero .e-con.e-child > div, .hero .e-con.e-child > div > div, .hero .e-con.e-child > div > div > div {position:static;}


.hero .video-wrap {
    position:absolute; bottom:2rem; right:2rem; width:400px; height:225px;
    transition: 0.8s;
    overflow: hidden;
	border: 2px solid #fff;
    border-radius: 8px;
}
.hero .video-wrap {transition:0.8s; overflow:hidden;}
.hero .video-wrap:before {content:''; position:absolute; width:calc(100vw + 4rem); height:calc(100vh + 4rem); right:-2rem; bottom:-2rem; background:transparent; transition:0.8s; transition:0.8s; -webkit-border-radius:0; border-radius:0;}

.hero .video-wrap.is-active {position:fixed; z-index:5; bottom:2rem; right:2rem; width:calc(100% - 4rem); height:calc(100% - 4rem); border:none; transition:0.8s; overflow:visible; border-radius: 0px; }
.hero .video-wrap.is-active:before {content:''; z-index:1; background:rgba(0,64,110,0.6); transition:0.8s;}
.hero .video-wrap video {position:absolute; z-index:2;  background:#111; bottom:0rem; right:0rem; width:100%; height:100%;transition:0.8s; object-fit:cover;}
.hero .video-wrap.is-active video {-webkit-border-radius:0.5rem; border-radius:0.5rem;}

.hero-vid-btn {position:absolute; z-index: 2; bottom:1rem; left:1rem; border:none; height:48px; width:48px; display:flex; align-items:center; justify-content: center; transition:0.6s; background:#fff url(https://z.perimetrics.ai/AE8341B1-99A6-4536-BB8A-5838F01D394C/wp-content/uploads/2025/03/211876_play_icon-png.webp) no-repeat center center!important; background-size:20px!important; font-size:0;}
.hero-vid-close-btn {display:none; position:absolute; top:1rem; right:1rem; border:none; height:48px; width:48px; align-items:center; justify-content: center; transition:0.6s;background:#fff  url(https://z.perimetrics.ai/AE8341B1-99A6-4536-BB8A-5838F01D394C/wp-content/uploads/2025/03/4115230_cancel_close_delete_icon-png.webp) no-repeat center center!important; background-size:20px!important;font-size:0;}
.hero-vid-close-btn.flex {display:flex; z-index:2;}
 

.quote-section-bg {height:100vh; padding:2rem 0;}
.quote-section-bg > div {height:calc(100% - 4rem); display:block; border-radius:8px; -webkit-border-radius:8px; overflow:hidden;}
.quote-section-bg > div img {object-fit:cover;}


.hero-image {clip-path: inset(0% 8% round 16px);}

.elementor-icon-box-wrapper .elementor-icon-box-content .elementor-icon-box-title {margin-top:-0.4rem !important;}

.swiper-js-container-wrap {overflow:hidden;}
/* .swiper.swiper-initialized {overflow:visible;} */

@media screen and (max-width: 30em) {
	nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {top:-24px !important; width:100vw !important; height:100vh !important; z-index:0; padding:4rem 2rem; background:#fff !important;}
	nav.elementor-nav-menu--dropdown.elementor-nav-menu__container a {color:#00406E !important; display:inline-flex; width:100% !important; justify-content:space-between; font-size:24px !important;}
	nav.elementor-nav-menu--dropdown.elementor-nav-menu__container a > span.sub-arrow {justify-self:flex-end;}
	nav.elementor-nav-menu--dropdown.elementor-nav-menu__container > ul > li {border-bottom:solid 2px #CEE6F8;padding:0.5rem 0 !important;}
	nav.elementor-nav-menu--dropdown.elementor-nav-menu__container > ul > li > a {font-size:32px !important;}
	nav.elementor-nav-menu--dropdown.elementor-nav-menu__container a > span.sub-arrow svg {fill:#00406E !important; }
	.elementor-475 .elementor-element.elementor-element-3580135c .elementor-menu-toggle {position:relative; z-index:59999;}
	.elementor-menu-toggle > svg {fill:#00406E !important;}
	.elementor-475 .elementor-element.elementor-element-3580135c .elementor-nav-menu--dropdown a.elementor-item-active, .elementor-475 .elementor-element.elementor-element-3580135c .sub-menu.elementor-nav-menu--dropdown, .elementor-475 .elementor-element.elementor-element-3580135c .elementor-nav-menu--dropdown a.highlighted, .elementor-475 .elementor-element.elementor-element-3580135c .elementor-nav-menu--dropdown a, ul.elementor-nav-menu li.menu-item > a, ul.elementor-nav-menu li.menu-item ul.sub-menu.elementor-nav-menu--dropdown { background:transparent !important;}
	
	.hero .elementor-element-4e6fb31 {margin-bottom:240px !important;}
	.hero .video-wrap {bottom:1rem; right:1rem; max-width:calc(100vw - 2rem);}
	.hero .video-wrap.is-active {bottom:1rem; right:1rem; width:calc(100vw - 2rem); height:calc(100vh - 2rem);}
	.hero .video-wrap:before {width:calc(100vw + 2rem); height:calc(100vh + 2rem); right:-1rem; bottom:-1rem;}
	.hero .video-wrap.is-active video {object-fit:contain;}
}	