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

/* This styles and sets the height on the Header */
header.elementor section.elementor-section.header_section {
	--header-height: 95px;
	--shrink-header-to: 0.8;
	--transition: .45s cubic-bezier(.4, 0, .2, 1);
	transition: background-color var(--transition),
				box-shadow var(--transition-timing);
}
@media only screen and (max-width: 767px) {
	header.elementor section.elementor-section.header_section {
		--header-height: 100px;
	}
}

/* This styles and sets the height on the Sticky Header when activated */
header.elementor section.elementor-section.header_section.elementor-sticky--effects {
	background-color: var( --e-global-color-accent );
	box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.5);
}
header.elementor section.elementor-section.header_section > .elementor-container {
	min-height: var(--header-height);
	transition: min-height var(--transition);
}
header.elementor section.elementor-section.header_section.elementor-sticky--effects > .elementor-container {
	min-height: calc( var(--header-height) * var(--shrink-header-to) );
}

/* This changes the Logo height when the Sticky Header is activated on Tablet, Laptop and Desktop resolutions */
@media only screen and (min-width: 768px) {
	header.elementor section.elementor-section.header_section.elementor-sticky--effects div.elementor-element.header_logo img {
		transform: scale(.9);
	}
}

/* This changes the Logo height for Mobile resolutions */
@media only screen and (max-width: 767px) {
	header.elementor section.elementor-section.header_section div.elementor-element.header_logo img {
		transform: scale(.9);
	}
}

/* This styles the drop-down underline for the Header Navigation */
div.elementor-element.header_nav nav.elementor-nav-menu--main  ul.elementor-nav-menu li.menu-item  a.elementor-item::after {
	transform: rotate(90deg);
	height: 1px;
	width: 20px;
	top: -50px;
	transition: .5s;
	left: 0px;
	right: 0px;
	margin: auto;
}

/* This styles the Burger Menu toogle icon for the Header Menu on Tablet and Mobile resolutions */
@media only screen and (max-width: 1024px) {
	.header_nav {
    	--gap: 8px;
    	--width: 40px;
	}
}
.header_nav .elementor-menu-toggle {
    position: relative;
    background-color: transparent;
}
.header_nav .elementor-menu-toggle:before {
        --weight: 1px;
}
.header_nav .elementor-menu-toggle:after {
        --weight: 3px;
}
.header_nav .elementor-menu-toggle i:after {
        --weight: 2px;
}
.header_nav .elementor-menu-toggle:before,
.header_nav .elementor-menu-toggle:after,
.header_nav .elementor-menu-toggle i:after {
    content: "";
    height: var(--weight);
    width: var(--width);
    position: absolute;
    background: currentColor;
    top: 50%;
    left: 50%;
    transform: translate(-50%,calc(-50% + var(--gap)));
    transition: all 0.3s ease-in-out;
}
.header_nav .elementor-menu-toggle.elementor-active:before {
    transform: translate(-50%,-50%) rotate(-45deg);
    --weight: 2px;
}
.header_nav .elementor-menu-toggle:after {
    transform: translate(-50%,calc(-50% - var(--gap)));
}
.header_nav .elementor-menu-toggle.elementor-active:after {
    transform: translate(-50%,-50%) rotate(45deg);
    --weight: 2px;
}
.header_nav .elementor-menu-toggle i:after {
    transform: translate(-50%,-50%);
}
.header_nav .elementor-menu-toggle i:before,
.header_nav .elementor-menu-toggle.elementor-active i:after {
    opacity: 0;
}

/* This makes the Drop-Down Header Menu take up the full screen and hides the scrollbar on Tablet and Mobile resolutions */
.header_nav.elementor-nav-menu--toggle .elementor-menu-toggle.elementor-active + .elementor-nav-menu__container {
	position: fixed;
    height: 100%;
    max-height: 100%;
	top: auto !important;
    scroll-behavior: smooth;
	-ms-overflow-style: none;
	scrollbar-width: none;
}
.header_nav.elementor-nav-menu--toggle .elementor-menu-toggle.elementor-active + .elementor-nav-menu__container::-webkit-scrollbar {
  display: none;
}

/* This changes the animation speed for the Drop-Down Header Menu on Tablet and Mobile resolutions */
.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
	transition: max-height .6s,transform .0s;
}

/* This changes the hover speed, width and positions the Drop-Down Header Menu tabs on Tablet and Mobile resolutions */
.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu a.elementor-item {
	transition: .3s ease-in-out;
	width: fit-content;
	margin: 0px;
	text-transform: none;
}

/* This adds padding to the Drop-Down Header Menu on Tablet and Mobile resolutions */
@media (min-width: 768px) and (max-width: 1024px) {
	.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu {
		padding: 75px 0px 100px 60px;
	}
}
@media only screen and (max-width: 767px) {
	.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu {
		padding: 75px 0px 125px 25px;
	}
}

/* This adds a background to the Drop-Down Header Menu on Tablet and Mobile resolutions */
@media (min-width: 768px) and (max-width: 1024px) {
	.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu {
		background-image: url("/wp-content/uploads/2023/09/header_background.svg");
		background-position: 11% 24%;
		background-repeat: repeat-x;
		background-size: 32% auto;
	}
}
@media only screen and (max-width: 767px) {
	.header_nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu {
		background-image: url("/wp-content/uploads/2023/09/header_background.svg");
		background-position: 11% 21%;
		background-repeat: repeat-x;
		background-size: 60% auto;
	}
}

/* This fixes the height on the Footer social icons when entering small Laptop resolutions */
@media (min-width: 1025px) and (max-width: 1224px) {
	div.footer_socials ul.elementor-icon-list-items li.elementor-icon-list-item {
		margin-top: 2.5px;
		margin-bottom: 2.5px;
	}
}
@media only screen and (max-width: 1024px) {
	div.footer_socials ul.elementor-icon-list-items li.elementor-icon-list-item {
		margin-top: 4.5px;
		margin-bottom: 4.5px;
	}
}
@media (min-width: 768px) and (max-width: 1024px) {
	div.footer_socials ul.elementor-icon-list-items li.elementor-icon-list-item span.elementor-icon-list-text {
		padding-left: 0px;
	}
}
@media only screen and (max-width: 767px) {
	div.footer_socials ul.elementor-icon-list-items li.elementor-icon-list-item span.elementor-icon-list-text {
		padding-left: 2.5px;
	}
}

/* This makes the sections with fixed width align to the right when entering Tablet and Mobile resolutions */
@media only screen and (max-width: 1024px) {
	section.elementor-section.fixed_width_section .elementor-container {
		margin: 0px;
	}
}

/* This fixes the z-index on the Lottie element whenever a background image is applied */
div.lottie_z_index_fix div.e-lottie__container div.e-lottie__animation svg {
	position: relative;
	z-index: -1;
}

/* This aligns the 4x4 columns inside of the section */
section.elementor-section.four_col_section {
	display: inline-block;
	text-align: center;
}
@media (min-width: 1025px) and (max-width: 1279px) {
	section.elementor-section.four_col_section {
		max-width: 926px;
		margin-left: auto;
		margin-right: auto;
	}
}
@media only screen and (max-width: 1024px) {
	section.elementor-section.four_col_section {
		text-align: start;
	}
}
section.elementor-section.four_col_section div.elementor-container {
	display: block;
}
@media only screen and (max-width: 1024px) {
	section.elementor-section.four_col_section div.elementor-container {
		margin-left: 0px;
	}
}

/* This styles the fixed four columns */
div.elementor-column.fixed_four_col {
	display: inline-flex;
	width: 300px;
	margin: 0px 16.5px 60px 16.5px;
	min-height: 254px;
}
@media only screen and (min-width: 1280px) {
	div.elementor-column.fixed_four_col:first-child {
		margin-left: 0px;
	}
	div.elementor-column.fixed_four_col:last-child {
		margin-right: 0px;
	}
}
@media (min-width: 1366px) and (max-width: 1439px) {
	div.elementor-column.fixed_four_col {
		width: 290px;
	}
}
@media (min-width: 1280px) and (max-width: 1365px) {
	div.elementor-column.fixed_four_col {
		width: 270px;
	}
}
@media (min-width: 767px) and (max-width: 1024px) {
	div.elementor-column.fixed_four_col {
		width: 290px;
		margin: 0px 15px 60px 15px;
		min-height: 150px;
	}
}
@media only screen and (max-width: 767px) {
	div.elementor-column.fixed_four_col {
		width: 100%;
		max-width: 280px;
		margin: 0px 10px 45px 10px;
		min-height: 100px;
	}
}

/* This fixes the position on the icon elements that are used in the 4x4 column sections */
@media only screen and (max-width: 767px) {
	div.col_icon div.elementor-icon-box-wrapper {
		align-items: center;
	}
}

/* This sets a fixed width on the icon list elements that are used in the 4x4 column sections */
@media only screen and (min-width: 768px) {
	div.icon_list_col div.elementor-widget-container {
		min-height: 163px;
	}
}
@media only screen and (max-width: 767px) {
	div.icon_list_col div.elementor-widget-container {
		min-height: 100px;
	}
}



.dng-solutions-rectangle .elementor-widget-wrap{
	border-radius: 50px 0;
}
