/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
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: 1.0.1
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
*/

/***********************************************************/
/** RESET **************************************************/
/***********************************************************/

[class*="elementor"] h1,
[class*="elementor"] h2,
[class*="elementor"] h3,
[class*="elementor"] h4,
[class*="elementor"] h5,
[class*="elementor"] h6{
	margin: 0 0 25px;
}
[class*="elementor"] .white-headline h1,
[class*="elementor"] .white-headline h2,
[class*="elementor"] .white-headline h3,
[class*="elementor"] .white-headline h4,
[class*="elementor"] .white-headline h5,
[class*="elementor"] .white-headline h6 {
	color: white;
}
*:is(p) {
    text-wrap: pretty;
	margin: 0 0 25px;
}
[class*="elementor"] p:last-of-type {
    margin: 0;
}

[class*="elementor"] .hl-text {
	font-weight: 900;
	color: var(--e-global-color-accent);
}

[class*="elementor"] [data-elementor-type="wp-page"] ul,
[class*="elementor"] [data-elementor-type="wp-post"] ul {
    list-style: none;
}
[class*="elementor"] [data-elementor-type="wp-page"] ul li,
[class*="elementor"] [data-elementor-type="wp-post"] ul li {
	position: relative;
}
[class*="elementor"] [data-elementor-type="wp-page"] ul li::before,
[class*="elementor"] [data-elementor-type="wp-post"] ul li::before {
	content: '';
	display: block;
	width: 5px;
	height: 5px;
	border-radius: 100px;
	background: var(--e-global-color-primary);
	position: absolute;
	top: 17px;
    left: -20px;
}
[class*="elementor"] [data-elementor-type="wp-page"] ul, 
[class*="elementor"] [data-elementor-type="wp-page"] ol,
[class*="elementor"] [data-elementor-type="wp-post"] ul, 
[class*="elementor"] [data-elementor-type="wp-post"] ol {
	padding-left: 20px;
}
[class*="elementor"] [data-elementor-type="wp-page"] ul li, 
[class*="elementor"] [data-elementor-type="wp-page"] ol li,
[class*="elementor"] [data-elementor-type="wp-post"] ul li, 
[class*="elementor"] [data-elementor-type="wp-post"] ol li  {
	line-height: 1.9em;
	font-weight: 400;
}

[class*="elementor"] .two-buttons {
    display: flex;
	flex-wrap: wrap;
    gap: 12px;
    margin-top: 35px;
}
[class*="elementor"] .two-buttons.centered {
	justify-content: center;
}

[class*="elementor"] a {
	transition: .4s all ease;
}
[class*="elementor"] a.elementor-button {
	border: 1px solid transparent;
}
[class*="elementor"] a.elementor-button:hover {
	box-shadow: 0 10px 35px rgba(0, 0, 0, 0.2);
}
[class*="elementor"] a.elementor-button.alt-1, 
[class*="elementor"] .alt-1 a.elementor-button {
    background: white;
    color: var(--e-global-color-primary);
}
[class*="elementor"] a.elementor-button.alt-1:hover, 
[class*="elementor"] .alt-1 a.elementor-button:hover {
	background: var(--e-global-color-accent);
	color: white;
}
[class*="elementor"] a.elementor-button.alt-2:hover, 
[class*="elementor"] .alt-2 a.elementor-button:hover {
	border: 1px solid white;
	color: white;
}

[class*="elementor"] .clip,
[class*="elementor"] [data-elementor-type="wp-page"] {
	overflow-x: clip;
}
[class*="elementor"] .scroll-margin-top {
	scroll-margin-top: 150px;
}
[class*="elementor"] [data-elementor-type="wp-page"] {
	overflow: hidden;
}

[class*="elementor"] [data-elementor-type="single-post"] .elementor-widget-theme-post-content table {
	margin-top: 30px;
}

/** Elementor Animation **/
@keyframes fadeInDown {
	0% {
		opacity: 0;
		transform: translate3d(0, -20%, 0);
	}
	100% {
		opacity: 1;
		transform: none;
	}
}
@keyframes fadeInUp {
	0% {
		opacity: 0;
		transform: translate3d(0, 20%, 0);
	}
	100% {
		opacity: 1;
		transform: none;
	}
}
@keyframes fadeInLeft {
	0% {
		opacity: 0;
		transform: translate3d(-20%, 0, 0);
	}
	100% {
		opacity: 1;
		transform: none;
	}
}
@keyframes fadeInRight {
	0% {
		opacity: 0;
		transform: translate3d(20%, 0, 0);
	}
	100% {
		opacity: 1;
		transform: none;
	}
}

footer.elementor-slideshow__footer {
    display: none;
}

/***********************************************************/
/** HEADER MAIN ********************************************/
/***********************************************************/
#header-main.sticky {
	position: fixed;
	top: 0;
	width: 100%;
	background: white;
	box-shadow: 0 10px 45px rgba(83 65 113 / 20%);
	z-index: 9998;
}

/***********************************************************/
/** FOOTER MAIN ********************************************/
/***********************************************************/
#footer-main .footer-menu ul {
    padding: 0;
    list-style: none;
}
#footer-main .footer-menu ul li:not(:last-child) {
	margin-bottom: 20px;
}
#footer-main .footer-menu ul li a {
/*     line-height: 3.2em; */
    font-size: 14px;
}
#footer-main .footer-details ul li span svg path {
    fill: var(--e-global-color-primary);
}

#footer-main .footer-cta {
    display: flex;
	flex-wrap: wrap;
    align-items: center;
}
#footer-main .footer-cta p:first-of-type {
    margin: 0;
}
#footer-main .footer-cta a.elementor-button {
    padding: 17px 40px;
}

/***********************************************************/
/** HOME PAGE **********************************************/
/***********************************************************/
#banner.home .banner-video {
    transform: translateX(-50%);
    width: 1920px;
    max-width: 1920px;
}

#banner.home,
#signage,
#service-map,
#chat-cta {
	overflow-x: clip;
}
#banner.inner::before {
    width: 1790px;
    height: 603px;
    transform: translateX(-20%);
	left: 50%;
	top: 5%;
	opacity: 0.4;
}

#industries .industries-grid .elementor-widget-icon-box.fadeInLeft {
    animation-name: fadeInLeft2;
}
@keyframes fadeInLeft2 {
	0% {
		opacity: 0;
		transform: translate3d(-100%, 0, 0);
	}
	100% {
		opacity: 1;
		transform: none;
	}
}

#signage::before {
    width: 1791px;
    height: 603px;
    top: unset;
    bottom: -40%;
    left: 50%;
    transform: translateX(-50%);
}
#signage .signage-grid {
	min-height: 600px;
}
#signage .signage-grid .elementor-widget-image-box .elementor-image-box-img {
    display: flex;
    margin: 0;
    position: relative;
	border-radius: 16px;
	overflow: hidden;
	background: var(--e-global-color-primary);
}
#signage .signage-grid .elementor-widget-image-box .elementor-image-box-img::before,
#signage .signage-grid .elementor-widget-image-box .elementor-image-box-img::after {
    content: '';
    width: 100%;
    height: 90%;
    background: linear-gradient(0deg, var(--e-global-color-primary), transparent);
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
	z-index: 1;
	transition: .4s all ease;
}
#signage .signage-grid .elementor-widget-image-box .elementor-image-box-img::after {
	opacity: 0;
}
#signage .signage-grid .elementor-widget-image-box:hover .elementor-image-box-img::after {
	opacity: 1;
}
#signage .signage-grid .elementor-widget-image-box .elementor-image-box-wrapper,
#signage .signage-grid .elementor-widget-image-box .elementor-image-box-img {
	height: 100%;
}
#signage .signage-grid .elementor-widget-image-box .elementor-image-box-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#signage .signage-grid .elementor-widget-image-box.opacity-50 .elementor-image-box-img img {
	opacity: 0.5;
}
#signage .signage-grid .elementor-widget-image-box .elementor-image-box-img a {
    width: 100%;
}
#signage .signage-grid .elementor-widget-image-box .elementor-image-box-img a::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
}
#signage .signage-grid .elementor-widget-image-box .elementor-image-box-content {
    position: absolute;
    bottom: 0;
    padding: 35px;
	z-index: 1;
}

[class*="elementor"] .faq-accordion {
	counter-reset: num;
}
[class*="elementor"] .faq-accordion .e-n-accordion-item {
    padding: 40px 50px;
    background: rgba(83 65 113 / 10%);
    border-radius: 8px;
	counter-increment: num;
}
[class*="elementor"] .faq-accordion .e-n-accordion-item[open] {
	background: rgba(83 65 113 / 20%);
}
[class*="elementor"] .faq-accordion .e-n-accordion-item .e-n-accordion-item-title-text::before {
    content: counter(num);
    font-size: 90%;
    font-weight: 700;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 48px;
    height: 48px;
    background: var(--e-global-color-primary);
    color: white;
    border-radius: 8px;
    margin-right: 15px;
}

#service-map::before {
    width: 1791px;
    height: 603px;
    left: 50%;
    transform: translateX(-50%);
    top: 5%;
}
#service-map .map-locations ul {
    display: flex;
    flex-wrap: wrap;
	justify-content: flex-end;
    gap: 5px 20px;
    padding: 0;
    margin: 0;
}
#service-map .map-locations ul li {
    font-size: 13px;
}
#service-map .map-locations ul li::before {
    top: 9px;
    left: -10px;
}

#chat-cta::before {
    width: 90vw;
    left: 50%;
    transform: translateX(-50%);
    top: 20%;
}
#chat-cta .elementor-widget-image .elementor-widget-container {
    width: 952px;
    max-width: 952px;
    transform: translateX(5%);
}

/***********************************************************/
/** ABOUT US  **********************************************/
/***********************************************************/
#unique .unique-items .elementor-icon-box-wrapper {
	height: 100%;
}
#unique .unique-items .elementor-icon-box-content {
	padding: 65px 55px 55px;
	background: rgba(83 65 113 / 10%);
	border-radius: 10px;
}
#unique .unique-items .elementor-icon-box-icon {
	margin-bottom: -40px;
}
#unique .unique-items .elementor-icon-box-icon,
#unique .unique-items:hover .elementor-icon-box-icon .elementor-icon svg path {
	transition: .4s all ease;
}
#unique .unique-items .elementor-icon-box-icon .elementor-icon {
    background: var(--e-global-color-primary);
    width: 106px;
    height: 80px;
    border-radius: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: auto;
}
#unique .unique-items:hover .elementor-icon-box-icon .elementor-icon svg path {
    fill: var(--e-global-color-primary);
}
#unique .unique-items:hover .elementor-icon-box-icon .elementor-icon {
    position: relative;
    border: 1px solid rgba(83 65 113 / 20%);
	background: white;
}

#chat-cta.about .elementor-widget-image .elementor-widget-container {
    width: 1032px;
    max-width: 1032px;
    height: 500px;
}

/***********************************************************/
/** RESOURCES  *********************************************/
/***********************************************************/
#how-it-works .steps ul {
    counter-reset: count;
    padding: 0;
    margin: 0;
}
#how-it-works .steps ul li {
    padding-left: 70px;
    counter-increment: count;
    line-height: 1.25em;
}
#how-it-works .steps ul li::before {
    content: counter(count);
    display: flex;
    justify-content: center;
    align-items: center;
    width: 56px;
    height: 56px;
    border-radius: 14px;
    font-size: 30px;
    font-weight: 800;
    color: white;
    left: 0;
    top: 0;
	z-index: 1;
}
#how-it-works .steps ul li:not(:last-child) {
	padding-bottom: 40px;
}
#how-it-works .steps ul li:not(:last-child)::after {
	content: '';
	display: block;
	width: 1px;
	height: 100%;
	background: var(--e-global-color-primary);
	position: absolute;
	bottom: 0;
	left: 28px;
}
#how-it-works .steps ul li h3 {
    margin-bottom: 10px;
}

#download .download-button {
    background: #F8F8F8;
    padding: 25px 35px;
    border-radius: 12px;
}
#download .download-button .elementor-widget-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#download .download-button .elementor-widget-container h3 {
	margin: 0;
}
#download .download-button .elementor-widget-container a {
    padding: 19px 25px;
    border-radius: 12px;
    background: var(--e-global-color-accent);
    color: white;
    font-size: 18px;
    font-weight: 800;
	transition: .4s all ease;
	display: flex;
	gap: 10px;
	align-items: center;
	justify-content: center;
}
#download .download-button .elementor-widget-container a:hover {
	background: var(--e-global-color-primary);
}
#download .download-button .elementor-widget-container a::after {
    content: '';
    display: block;
    width: 14px;
    height: 15px;
    background: url(data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2215%22%20viewBox%3D%220%200%2014%2015%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M8%201C8%200.446875%207.55312%200%207%200C6.44688%200%206%200.446875%206%201V7.58437L4.70625%206.29063C4.31563%205.9%203.68125%205.9%203.29063%206.29063C2.9%206.68125%202.9%207.31563%203.29063%207.70625L6.29063%2010.7063C6.68125%2011.0969%207.31563%2011.0969%207.70625%2010.7063L10.7063%207.70625C11.0969%207.31563%2011.0969%206.68125%2010.7063%206.29063C10.3156%205.9%209.68125%205.9%209.29062%206.29063L8%207.58437V1ZM2%2010C0.896875%2010%200%2010.8969%200%2012V13C0%2014.1031%200.896875%2015%202%2015H12C13.1031%2015%2014%2014.1031%2014%2013V12C14%2010.8969%2013.1031%2010%2012%2010H10.5344L8.76562%2011.7688C7.79063%2012.7438%206.20625%2012.7438%205.23125%2011.7688L3.46563%2010H2ZM11.5%2011.75C11.5985%2011.75%2011.696%2011.7694%2011.787%2011.8071C11.878%2011.8448%2011.9607%2011.9%2012.0303%2011.9697C12.1%2012.0393%2012.1552%2012.122%2012.1929%2012.213C12.2306%2012.304%2012.25%2012.4015%2012.25%2012.5C12.25%2012.5985%2012.2306%2012.696%2012.1929%2012.787C12.1552%2012.878%2012.1%2012.9607%2012.0303%2013.0303C11.9607%2013.1%2011.878%2013.1552%2011.787%2013.1929C11.696%2013.2306%2011.5985%2013.25%2011.5%2013.25C11.4015%2013.25%2011.304%2013.2306%2011.213%2013.1929C11.122%2013.1552%2011.0393%2013.1%2010.9697%2013.0303C10.9%2012.9607%2010.8448%2012.878%2010.8071%2012.787C10.7694%2012.696%2010.75%2012.5985%2010.75%2012.5C10.75%2012.4015%2010.7694%2012.304%2010.8071%2012.213C10.8448%2012.122%2010.9%2012.0393%2010.9697%2011.9697C11.0393%2011.9%2011.122%2011.8448%2011.213%2011.8071C11.304%2011.7694%2011.4015%2011.75%2011.5%2011.75Z%22%20fill%3D%22white%22/%3E%3C/svg%3E) no-repeat center / cover;
}

[class*="elementor"] #resources .gform_wrapper.gravity-theme .gfield_label, 
[class*="elementor"] #resources .gform_wrapper.gravity-theme .gfield_checkbox label, 
[class*="elementor"] #resources .gform_wrapper.gravity-theme .gfield_radio label,
[class*="elementor"] #resources .gform_wrapper.gravity-theme .gfield.gfield--type-fileupload .ginput_preview_list .ginput_preview > span,
[class*="elementor"] #resources .gform_wrapper.gravity-theme .gfield.gfield--type-fileupload .ginput_preview_list .ginput_preview > span span,
[class*="elementor"] #resources .gform_wrapper.gravity-theme .gform_fileupload_rules {
    color: white
}

#case-study .cs-content {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
	height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
#case-study .elementor-widget-theme-post-featured-image .elementor-widget-container::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(228.17deg, #534171 19.69%, rgba(83, 65, 113, 0) 80.31%);
    position: absolute;
    bottom: 0;
    left: 0;
    transform: scale(-1);
}
[class*="elementor"] .case-study-grid .elementor-grid .e-loop-item:first-of-type {
    grid-column: 1 / span 2;
}
#case-study .cs-content .elementor-widget-heading {
    position: unset;
}
#case-study .cs-content .elementor-widget-heading a::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

/***********************************************************/
/** PRODUCTS MAIN  *****************************************/
/***********************************************************/
#industries.product .industries-grid .elementor-widget-icon-box .elementor-icon svg rect {
    fill: #ECE8F1;
    opacity: 1;
}
#industries.product .industries-grid .elementor-widget-icon-box .elementor-icon-box-title {
	color: white;
	text-align: center;
	font-size: 16px;
}

/***********************************************************/
/** PRODUCTS INNER  ****************************************/
/***********************************************************/
#banner.product-inner .product-container .table-container {
    margin: 40px 0 0;
}
#banner.product-inner .product-container table {
/* 	table-layout: fixed; */
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-bottom: 0;
	border-radius: 20px;
	border-collapse: separate;
}
#banner.product-inner .product-container table tr th,
#banner.product-inner .product-container table tr td {
    border: 0;
	padding: 10px 20px;
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
#banner.product-inner .product-container table tr th:not(:last-child), 
#banner.product-inner .product-container table tr td:not(:last-child) {
    border-right: 1px solid rgba(0, 0, 0, 0.07);
}

#banner.product-inner .product-container table tr:last-child td:first-child {
	border-radius: 0 0 0 20px;
}
#banner.product-inner .product-container table tr:last-child td:last-child {
	border-radius: 0 0 20px 0;
}
#banner.product-inner .product-container table tr th {
/*     text-align: left; */
    font-size: var(--e-global-typography-accent-font-size);
}
#banner.product-inner .product-container table tbody>tr:nth-child(odd)>td, 
#banner.product-inner .product-container table tbody>tr:nth-child(odd)>th,
#banner.product-inner .product-container table tbody tr:hover>td, 
#banner.product-inner .product-container table tbody tr:hover>th {
	background: white;
}
#banner.product-inner .product-container table tr th,
#banner.product-inner .product-container table tr td {
	text-align: center;
}
#banner.product-inner .product-container table tr:last-child td[colspan] {
	font-style: italic;
	font-weight: 780;
}

#banner.product-inner .product-container ul li {
    line-height: 1.5em;
}


/* ====== LAYOUT: stack vertically (main on top, thumbs below) ====== */
#banner.product-inner .product-container .product-gallery .gallery{
  display:flex;
  flex-direction: column;          /* stack */
  gap: 16px;                       /* space between main & strip */
  height: auto;                    /* let content define height */
}

/* Main (big image) on top */
#banner.product-inner .product-container .product-gallery .gallery-main{
  flex: 0 0 auto;
  background: #fff;
  /* pick a comfortable height; adjust as needed */
  height: 420px;
  border-radius: 16px;
  overflow: hidden;
}

/* Thumbs strip on bottom — horizontal scroll */
#banner.product-inner .product-container .product-gallery .gallery-side{
  flex: 0 0 auto;
  display: flex;                   /* lay thumbs in a row */
  gap: 16px;                       /* spacing between thumbs */
  overflow-x: auto;                /* horizontal scroll */
  overflow-y: hidden;
  padding-bottom: 4px;             /* breathing room above scrollbar */
  scroll-snap-type: x proximity;   /* optional: nicer snap while scrolling */
  -webkit-overflow-scrolling: touch;
  border-radius: 12px;             /* visual consistency */
}

/* Each thumb tile */
#banner.product-inner .product-container .product-gallery .gallery-side .gallery-item{
  flex: 0 0 150px;                 /* thumb width */
  height: 110px;                   /* thumb height */
  border: 1px solid #E5DCF6;
  background: #CCC;
  border-radius: 12px;
  overflow: hidden;
  cursor: pointer;
  scroll-snap-align: start;        /* align nicely when scrolling */
  transition: opacity .2s ease, transform .2s ease;
}

/* Remove old vertical spacing rule */
#banner.product-inner .product-container .product-gallery .gallery-side .gallery-item:not(:last-child){
  margin: 0;                       /* no bottom margin in horizontal row */
}

/* Keep your active/hover visual rules */
#banner.product-inner .product-container .product-gallery .gallery-side .gallery-item img{
  opacity: .2;
  mix-blend-mode: luminosity;
}

#banner.product-inner .product-container .product-gallery .gallery-side .gallery-item.active{
  opacity: 1;
}
#banner.product-inner .product-container .product-gallery .gallery-side .gallery-item.active img{
  transform: scale(1.1);
  opacity: 1;
  mix-blend-mode: normal;
}

/* Main shows only the active item (unchanged) */
#banner.product-inner .product-container .product-gallery .gallery-main .gallery-item{
  display: none;
  height: 100%;
  border: 1px solid #E5DCF6;
  border-radius: 16px;
  overflow: hidden;
}
#banner.product-inner .product-container .product-gallery .gallery-main .gallery-item.active{
  display: block;
}

/* Image fit (unchanged) */
#banner.product-inner .product-container .product-gallery .gallery-main .gallery-item .gallery-icon {
	height: 100%;
}
#banner.product-inner .product-container .product-gallery .gallery img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
/* Optional: nicer thin scrollbar for the strip */
#banner.product-inner .product-container .product-gallery .gallery-side{
  scrollbar-width: thin;
  scrollbar-color: #C6C6C6 transparent;
}
#banner.product-inner .product-container .product-gallery .gallery-side::-webkit-scrollbar{
  height: 8px;
}
#banner.product-inner .product-container .product-gallery .gallery-side::-webkit-scrollbar-thumb{
  background: #C6C6C6; border-radius: 10px;
}
#banner.product-inner .product-container .product-gallery .gallery-side::-webkit-scrollbar-track{
  background: transparent;
}
#banner.product-inner .product-container .product-gallery .gallery-side{
  cursor: grab;
  user-select: none;
  -webkit-user-select: none;
}
#banner.product-inner .product-container .product-gallery .gallery-side.dragging{
  cursor: grabbing;
  scroll-snap-type: none; /* disable snap while dragging */
}


#how-it-works.product-inner .steps ul li::before {
    color: var(--e-global-color-primary);
}
#how-it-works.product-inner .steps ul li::before,
#how-it-works.product-inner .steps ul li:not(:last-child)::after {
    background: white;
}
#how-it-works.product-inner::before {
    width: 1791px;
    height: 603px;
    left: 50%;
    transform: translateX(0%);
    top: 10%;
}

#contact .contact-form h3 {
    margin-bottom: 50px;
}

#banner.product-inner .product-container {
    flex-direction: row;
}
#banner.product-inner .product-container > div {
    width: 50%;
}

/***********************************************************/
/** BLOG MAIN **********************************************/
/***********************************************************/
#banner.inner.blog .blog-main article {
	position: relative;
}
#banner.inner.blog .blog-main article .elementor-post__thumbnail__link {
    margin: 0;
	position: unset;
}
#banner.inner.blog .blog-main article .elementor-post__thumbnail__link::after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
	z-index: 2;
}
#banner.inner.blog .blog-main article .elementor-post__text {
    padding: 35px 35px 50px;
    background: #ECE8F1;
    border-radius: 0 0 16px 16px;
	position: relative;
}
#banner.inner.blog .blog-main article .elementor-post__text .elementor-post__read-more {
    font-size: 0;
    display: block;
    width: 18px;
    height: 18px;
    background: url(data:image/svg+xml,%3Csvg%20width%3D%2222%22%20height%3D%2218%22%20viewBox%3D%220%200%2022%2018%22%20fill%3D%22none%22%20xmlns%3D%22http://www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M1.5%209H19.5M19.5%209L12.2395%201.5M19.5%209L12.2395%2016.5%22%20stroke%3D%22%23534171%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22/%3E%3C/svg%3E) no-repeat center / contain;
    position: absolute;
    bottom: 30px;
    right: 30px;
    z-index: 2;
	transition: .4s all ease;
}
#banner.inner.blog .blog-main article .elementor-post__text .elementor-post__read-more:hover {
	transform: rotate(360deg);
}

/***********************************************************/
/** CONTACT ************************************************/
/***********************************************************/
#banner.inner.contact::before {
	top: 3%;
}
[class*="elementor"] #banner.inner.contact .contact-form .gform_wrapper.gravity-theme .gfield.gfield--width-quarter {
	grid-column: span 6;
	-ms-grid-column-span: 6;
}
#banner.inner.contact .contact-form h3 {
	margin-bottom: 45px;	
}
#banner.inner.contact .banner-text ul {
    margin: 50px 0 0;
	padding: 0;
}
#banner.inner.contact .banner-text ul li::before {
	opacity: 0;
}
#banner.inner.contact .banner-text ul li {
    font-size: var(--e-global-typography-accent-font-size);
    line-height: 1.2em;
    font-weight: 800;
}

#chat-cta.contact .elementor-widget-image .elementor-widget-container {
    width: 752px;
    max-width: 752px;
}

/***********************************************************/
/** GRAVITYFORMS *******************************************/
/***********************************************************/
[class*="elementor"] .gform_wrapper.gravity-theme .ginput_complex:not(.ginput_container_address) span:not([style*="display:none"]):not(.ginput_full),
[class*="elementor"] .gform_wrapper.gravity-theme .ginput_complex:not(.ginput_container_address) span:not([style*="display:none"]):not(.ginput_full)~span:not(.ginput_full) {
	padding: 0;
	margin: 0;
}
[class*="elementor"] .gform_wrapper.gravity-theme .gform_required_legend {
    display: none;
}
[class*="elementor"] .gform_wrapper.gravity-theme .gform_fields {
	grid-gap: 25px 20px;
}
[class*="elementor"] .gform_wrapper.gravity-theme .ginput_complex {
	grid-gap: 25px  20px;
}
[class*="elementor"] .gform_wrapper.gravity-theme input[type=color], 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=date], 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=datetime-local], 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=datetime], 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=email], 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=month], 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=number], 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=password], 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=search], 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=tel], 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=text],
[class*="elementor"] .gform_wrapper.gravity-theme input[type=time], 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=url],
[class*="elementor"] .gform_wrapper.gravity-theme input[type=week], 
[class*="elementor"] .gform_wrapper.gravity-theme select, 
[class*="elementor"] .gform_wrapper.gravity-theme textarea {
	border: 1px solid #EBEBEB;
    border-radius: 12px;
    padding: 15px 25px;
    color: var(--e-global-color-text);
    background: #F8F8F8;
    margin: 0;
	font-family: var(--e-global-typography-text-font-family);
	font-size: var(--e-global-typography-text-font-size);
	font-weight: var(--e-global-typography-text-font-weight);
	line-height: var(--e-global-typography-text-line-height);
}
[class*="elementor"] .gform_wrapper.gravity-theme input[type=color]:focus, 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=date]:focus, 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=datetime-local]:focus, 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=datetime]:focus, 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=email]:focus, 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=month]:focus, 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=number]:focus, 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=password]:focus, 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=search]:focus, 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=tel]:focus, 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=text]:focus,
[class*="elementor"] .gform_wrapper.gravity-theme input[type=time]:focus, 
[class*="elementor"] .gform_wrapper.gravity-theme input[type=url]:focus,
[class*="elementor"] .gform_wrapper.gravity-theme input[type=week]:focus, 
[class*="elementor"] .gform_wrapper.gravity-theme select:focus, 
[class*="elementor"] .gform_wrapper.gravity-theme textarea:focus {
	outline: none;
	border: 1px solid var(--e-global-color-primary);
}

[class*="elementor"] .gform_wrapper.gravity-theme select {
	appearance: none;
	background: url("data:image/svg+xml,%3csvg%20width%3d%2224%22%20height%3d%2224%22%20viewBox%3d%220%200%2024%2024%22%20fill%3d%22none%22%20xmlns%3d%22http://www.w3.org/2000/svg%22%3e%3cpath%20d%3d%22M12%2015L7%2010H17L12%2015Z%22%20fill%3d%22%230B284D%22/%3e%3c/svg%3e");
	background-repeat: no-repeat;
    background-position: calc(100% - 5px) center;
    cursor: pointer;
    color: var( --e-global-color-text );
}
[class*="elementor"] .gform_wrapper.gravity-theme .gform_drop_area {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 19px 25px;
    border-radius: 12px;
    background: #F8F8F8;
    border: 1px solid #EBEBEB;
}
[class*="elementor"] .gform_wrapper.gravity-theme .gform_drop_area .gform_drop_instructions::before {
    content: 'Artwork Upload';
    font-size: 18px;
    font-weight: 300;
}
[class*="elementor"] .gform_wrapper.gravity-theme .gform_drop_area .gform_drop_instructions {
    margin: 0;
    font-size: 0;
}
[class*="elementor"] .gform_wrapper.gravity-theme .gform_drop_area .gform_button_select_files {
    padding: 0;
	font-size: 0;
	width: 20px;
	height: 20px;
	background-color: transparent;
	background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2214%22%20height%3D%2216%22%20viewBox%3D%220%200%2014%2016%22%20fill%3D%22none%22%20xmlns%3D%22http://www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M7.70625%200.292969C7.31563-0.0976562%206.68125-0.0976562%206.29063%200.292969L2.29063%204.29297C1.9%204.68359%201.9%205.31797%202.29063%205.70859C2.68125%206.09922%203.31562%206.09922%203.70625%205.70859L6%203.41484V9.99922C6%2010.5523%206.44688%2010.9992%207%2010.9992C7.55312%2010.9992%208%2010.5523%208%209.99922V3.41484L10.2937%205.70859C10.6844%206.09922%2011.3188%206.09922%2011.7094%205.70859C12.1%205.31797%2012.1%204.68359%2011.7094%204.29297L7.70937%200.292969H7.70625ZM2%2010.9992C2%2010.4461%201.55313%209.99922%201%209.99922C0.446875%209.99922%200%2010.4461%200%2010.9992V12.9992C0%2014.6555%201.34375%2015.9992%203%2015.9992H11C12.6562%2015.9992%2014%2014.6555%2014%2012.9992V10.9992C14%2010.4461%2013.5531%209.99922%2013%209.99922C12.4469%209.99922%2012%2010.4461%2012%2010.9992V12.9992C12%2013.5523%2011.5531%2013.9992%2011%2013.9992H3C2.44688%2013.9992%202%2013.5523%202%2012.9992V10.9992Z%22%20fill%3D%22%23E42289%22/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	position: unset !important;
}
[class*="elementor"] .gform_wrapper.gravity-theme .gform_drop_area .gform_button_select_files::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
[class*="elementor"] .gform_wrapper.gravity-theme .gfield.gfield--type-fileupload .ginput_preview_list .gform_delete_file {
    background: var(--e-global-color-accent);
    font-style: normal;
    padding: 10px;
    margin-left: 20px;
}
[class*="elementor"] .gform_wrapper.gravity-theme .gfield.gfield--type-fileupload .ginput_preview_list .ginput_preview > span,
[class*="elementor"] .gform_wrapper.gravity-theme .gfield.gfield--type-fileupload .ginput_preview_list .ginput_preview > span span {
    font-size: 13px;
    font-style: italic;
}

/* [class*="elementor"] .gform_wrapper.gravity-theme .gfield textarea {
    height: 217px;
} */
[class*="elementor"] .gform_wrapper.gravity-theme .gfield {
	position: relative;
}
[class*="elementor"] .gform_wrapper.gravity-theme .gfield_label,
[class*="elementor"] .gform_wrapper.gravity-theme .gfield_checkbox label, 
[class*="elementor"] .gform_wrapper.gravity-theme .gfield_radio label {
	color: var(--e-global-color-primary);
	font-size: 18px;
	font-weight: 600;
	line-height: 1em;
	transition: .3s;
}

[class*="elementor"] .gform_wrapper.gravity-theme .gform_footer button, 
[class*="elementor"] .gform_wrapper.gravity-theme .gform_footer input, 
[class*="elementor"] .gform_wrapper.gravity-theme .gform_page_footer button, 
[class*="elementor"] .gform_wrapper.gravity-theme .gform_page_footer input {
	white-space: break-spaces;
	width: 100%;
	padding: 19px 25px;
}
[class*="elementor"] .gform_wrapper.gravity-theme .gform_footer input[type=submit]:hover {
	background: var(--e-global-color-primary);
}
[class*="elementor"] .gform_wrapper.gravity-theme .gform_footer input[type=submit]:focus {
	outline: none;
}
[class*="elementor"] .gform_wrapper.gravity-theme .gform_validation_errors {
    background-color: #FF5555;
    border-radius: 15px;
    margin-bottom: 20px;
    padding: 20px;
	text-align: center;
}
[class*="elementor"] .gform_wrapper.gravity-theme .gform_validation_errors h2 {
	letter-spacing: 0;
	color: #FFFFFF;
	font-size: 16px;
	font-weight: normal;
	padding-left: 30px !important;
    text-align: left;
    line-height: 1.4em;
}
[class*="elementor"] .gform_wrapper.gravity-theme .instruction {
	display: none;
}
[class*="elementor"] .gform_wrapper.gravity-theme .gfield_error [aria-invalid=true] {
	border: 1px solid #FF5555;
}
[class*="elementor"] .gform_wrapper.gravity-theme .gfield_validation_message, 
[class*="elementor"] .gform_wrapper.gravity-theme .validation_message {
	background-color: #FF5555;
    border-radius: 10px;
    font-size: 12px;
    border: none;
    color: #FFFFFF;
    width: auto;
    position: absolute;
    bottom: -15px;
    left: 0px;
    padding: 10px 15px;
    line-height: 1;
}
[class*="elementor"] .gform_wrapper.gravity-theme .gfield_validation_message:before,
[class*="elementor"] .gform_wrapper.gravity-theme .validation_message:before {
	content: '';
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-bottom: 5px solid #FF5555;
	position: absolute;
    top: -5px;
}

[class*="elementor"] .gform_wrapper.gravity-theme .gfield.gfield--type-consent .ginput_container_consent {
    display: flex;
    align-items: flex-start;
    gap: 10px;
	position: relative;
}
[class*="elementor"] .gform_wrapper.gravity-theme .gfield.gfield--type-consent .ginput_container_consent label {
	font-family: 'Inter';
	font-size: 16px;
	line-height: 19px;
	color: #0B284D;
}
[class*="elementor"] .gform_wrapper.gravity-theme .gfield.gfield--type-consent .ginput_container_consent label::before {
	content: '';
	display: block;
	width: 15px;
	height: 15px;
	border: 2px solid black;
	border-radius: 3px;
	position: absolute;
    top: 0;
    left: 0;
}
[class*="elementor"] .gform_wrapper.gravity-theme .gfield.gfield--type-consent .ginput_container_consent input[type="checkbox"] {
    width: 15px;
    height: 15px;
    opacity: 0;
}

[class*="elementor"] .gform_wrapper.gravity-theme .gfield.gfield--type-consent .ginput_container_consent input[type="checkbox"]:checked + label::after {
	content: '';
	display: block;
	width: 11px;
	height: 11px;
	background: url("data:image/svg+xml;utf8,<svg width='9' height='7' viewBox='0 0 9 7' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M2.8605 5.1438L7.95972 0.0395508L8.87154 0.950596L2.86088 6.96126L0.128906 4.22928L1.03995 3.31823L2.8605 5.1438Z' fill='%2310103E'/></svg>") no-repeat center/contain;
	position: absolute;
	top: 4px;
	left: 4px;

}

[class*="elementor"] .gform_wrapper.gravity-theme .gfield.position .gfield_label {
    opacity: 0;
}
[class*="elementor"] .gform_wrapper.gravity-theme .gfield.position .gfield_label {
	font-size: var( --e-global-typography-text-font-size );
	margin: 0 0 20px;
}

[class*="elementor"] .gform_wrapper.gravity-theme .gfield.form-left .gfield_course_option_wrapper, 
[class*="elementor"] .gform_wrapper.gravity-theme .gfield.form-right .gfield_course_option_wrapper {
    display: none;
}


/***********************************************************/
/** RESPONSIVE *********************************************/
/***********************************************************/
@media only screen and (max-width: 1680px) {
	header.e-con .e-con-inner, 
	footer.e-con .e-con-inner {
		padding-left: 25px;
		padding-right: 25px;
	}
}
@media only screen and (max-width: 1366px) {
	#footer-main .footer-cta {
		justify-content: center;
		gap: 20px;
		text-align: center;
	}
	#footer-main .footer-cta .elementor-widget-container {
		display: flex;
		flex-direction: column;
		gap: 15px;
	}
	section.e-con > .e-con-inner {
		padding-left: 25px;
		padding-right: 25px;
	}
}
@media only screen and (max-width: 1024px) {
	#signage .signage-grid {
		min-height: unset;
	}
	#header-main .header-menu .elementor-nav-menu--dropdown {
		padding: 30px;
		box-shadow: 0 45px 45px rgba(0 0 0 / 20%);
		border-radius: 20px;
	}
	#header-main .header-menu .elementor-nav-menu--dropdown ul > li > a {
		border-radius: 8px;
	}
	#signage .signage-grid .elementor-widget-image-box .elementor-image-box-img img {
		height: 350px;
	}
	[class*="elementor"] .two-buttons {
		justify-content: center;
	}
	#service-map .map-locations ul {
		justify-content: center;
	}
	#chat-cta .elementor-widget-image .elementor-widget-container,
	#chat-cta.about .elementor-widget-image .elementor-widget-container {
		width: calc(100% + 50px);
		max-width: calc(100% + 50px);
		height: unset;
		transform: none;
		margin-left: -25px;
	}
	#banner.inner::before {
		width: 100vw;
		transform: translateX(-50%);
		opacity: 0.3;
		top: 0;
	}
	[class*="elementor"] .gform_wrapper.gravity-theme .gfield.gfield--width-quarter {
		grid-column: span 6;
		-ms-grid-column-span: 6;
	}
	#banner.product-inner .product-container .product-gallery .gallery-main{
		height: 320px;
	}
	#banner.product-inner .product-container .product-gallery .gallery-side .gallery-item{
		flex-basis: 128px;
		height: 96px;
	}
	#banner.product-inner .product-container .product-gallery .gallery-side {
		padding-bottom: 14px;
	}
	#banner.product-inner .product-container {
		flex-direction: column;
	}
	#banner.product-inner .product-container > div {
		width: 100%;
	}
	#chat-cta.contact .elementor-widget-image .elementor-widget-container {
		width: 100%;
		max-width: 500px;
		margin: 0 auto 60px;
	}
/* 	#banner.product-inner .product-container .product-gallery .gallery {
		flex-wrap: wrap;
		height: unset;
	}
	#banner.product-inner .product-container .product-gallery .gallery-main,
	#banner.product-inner .product-container .product-gallery .gallery-side {
		flex: 0 0 100%;
	}
	#banner.product-inner .product-container .product-gallery .gallery-main {
		height: 450px;
	}
	#banner.product-inner .product-container .product-gallery .gallery-side {
		max-height: unset;
		max-width: 100%;
		overflow-y: hidden;
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
		justify-content: center;
	}
	#banner.product-inner .product-container .product-gallery .gallery-side .gallery-item {
		width: 20%;
		max-width: 20%;
		height: 50px;
		border-radius: 5px;
	}
	#banner.product-inner .product-container .product-gallery .gallery-side .gallery-item:not(:last-child) {
		margin-right: 0;
		margin-bottom: 0;
	} */
}
@media only screen and (max-width: 767px) {
	#footer-main .footer-menu ul li a {
		line-height: 2em;
	}
	[class*="elementor"] .faq-accordion .e-n-accordion-item {
		padding: 30px;
	}
	[class*="elementor"] .faq-accordion .e-n-accordion-item .e-n-accordion-item-title-text::before {
		font-size: 80%;
		width: 38px;
		height: 38px;
		margin-right: 10px;
	}
	#signage .signage-grid .elementor-widget-image-box .elementor-image-box-img img {
		height: 270px;
	}
	#unique .unique-items .elementor-icon-box-content {
		padding: 55px 35px 35px;
	}
	#unique .unique-items .elementor-icon-box-icon {
		margin-bottom: -30px;
	}
	#unique .unique-items .elementor-icon-box-icon .elementor-icon {
		width: 86px;
		height: 60px;
	}
	#banner.product-inner .product-container .product-gallery .gallery-main {
        height: 250px;
    }
	#banner.product-inner .product-container .table-container table {
		width: 450px;
		border-collapse: collapse;
	}
	#banner.product-inner .product-container .table-container {
		width: 100%;
		overflow-x: scroll;
	}
	[class*="elementor"] .case-study-grid .elementor-grid .e-loop-item:first-of-type {
		grid-column: 1;
	}
	
	[class*="elementor"] .gform_wrapper.gravity-theme input[type=color], [class*="elementor"] .gform_wrapper.gravity-theme input[type=date], [class*="elementor"] .gform_wrapper.gravity-theme input[type=datetime-local], [class*="elementor"] .gform_wrapper.gravity-theme input[type=datetime], [class*="elementor"] .gform_wrapper.gravity-theme input[type=email], [class*="elementor"] .gform_wrapper.gravity-theme input[type=month], [class*="elementor"] .gform_wrapper.gravity-theme input[type=number], [class*="elementor"] .gform_wrapper.gravity-theme input[type=password], [class*="elementor"] .gform_wrapper.gravity-theme input[type=search], [class*="elementor"] .gform_wrapper.gravity-theme input[type=tel], [class*="elementor"] .gform_wrapper.gravity-theme input[type=text], [class*="elementor"] .gform_wrapper.gravity-theme input[type=time], [class*="elementor"] .gform_wrapper.gravity-theme input[type=url], [class*="elementor"] .gform_wrapper.gravity-theme input[type=week], [class*="elementor"] .gform_wrapper.gravity-theme select, [class*="elementor"] .gform_wrapper.gravity-theme textarea,
	[class*="elementor"] .gform_wrapper.gravity-theme .gform_drop_area,
	[class*="elementor"] .gform_wrapper.gravity-theme .gform_footer button, [class*="elementor"] .gform_wrapper.gravity-theme .gform_footer input, [class*="elementor"] .gform_wrapper.gravity-theme .gform_page_footer button, [class*="elementor"] .gform_wrapper.gravity-theme .gform_page_footer input {
		padding: 10px 20px;
	}
	[class*="elementor"] .gform_wrapper.gravity-theme .gfield_label, [class*="elementor"] .gform_wrapper.gravity-theme .gfield_checkbox label, [class*="elementor"] .gform_wrapper.gravity-theme .gfield_radio label {
		font-size: 14px;
	}
	[class*="elementor"] .gform_wrapper.gravity-theme .gform_drop_area .gform_drop_instructions::before {
		font-size: 16px;
	}
	[class*="elementor"] .gform_wrapper.gravity-theme .gfield textarea.medium {
		height: 130px;
	}
	#download .download-button .elementor-widget-container {
		flex-wrap: wrap;
		flex-direction: column;
		gap: 20px;
	}
	#download .download-button .elementor-widget-container a {
		padding: 12px 20px;
		border-radius: 6px;
	}
	#banner.product-inner .product-container .product-gallery .gallery-side .gallery-item{
		flex-basis: 96px;
		height: 66px;
	}
}
@media only screen and (max-width: 600px) {
	[class*="elementor"] .faq-accordion .e-n-accordion-item {
		padding: 20px;
	}
	[class*="elementor"] .faq-accordion .e-n-accordion-item .e-n-accordion-item-title-text::before {
		font-size: 15px;
        width: 28px;
        height: 28px;
        margin-right: 5px;
        position: relative;
        top: -3px;
	}
	[class*="elementor"] .gform_wrapper.gravity-theme .gfield.gfield--width-quarter,
	[class*="elementor"] #banner.inner.contact .contact-form .gform_wrapper.gravity-theme .gfield.gfield--width-quarter {
		grid-column: 1 / -1;
	}
	.gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=image]):not([type=file]) {
        min-height: unset;
    }
}
