:root {
/* 	--site-padding-x: clamp(16px, calc(28.66vw - 203.7px), 140px); */
	--site-padding-x: clamp(22px, 4vw, 68px);
	--site-padding-y: 60px;

	--ych-blue: #1E4488;
	--ych-orange: #F6A81C; /*yellow*/
	--ych-orange-dark: #DA6F27;
	--ych-blue-light: #F1F4F8;
	--ych-blue-dim: #E6EAF2;
	
	/* set via js */
	--header-height: 0px;
	--wpadminbar-offset: 0px;
	--sub-banner-height: 0px;
}
@media (max-width: 767px) {
	:root {
		--site-padding-y: 40px;
	}
}

/* site padding */
.sx { padding-left: var(--site-padding-x); padding-right: var(--site-padding-x); }
.sx-l { padding-left: var(--site-padding-x); }
.sx-r { padding-right: var(--site-padding-x); }
.sy { padding-top: var(--site-padding-y); padding-bottom: var(--site-padding-y); }
.sy-t { padding-top: var(--site-padding-y); }
.sy-b { padding-bottom: var(--site-padding-y); }

/* utilities */
.add-header-height { margin-top: var(--header-height); }
.bold, .bold * { font-weight: bold !important; }
.unbold, .unbold * { font-weight: normal !important; }
.italic, .italic * { font-style: italic !important; }
.overflow-visible, .overflow-visible div { overflow: visible !important; }
.hover-to-show, .hover-to-show * { visibility: hidden; opacity: 0; transition: all 0.4s ease; } div:hover > .hover-to-show, div:hover > .hover-to-show * { visibility: visible; opacity: 1; transition: all 0.4s ease; } .hover-to-show *, div:hover > .hover-to-show { transition: all 0.3s ease; }
.hover-img-zoom { overflow: hidden; background-size: 120% !important; transition: all 0.5s ease; } .hover-img-zoom img { transform: scale(1); transition: transform 0.5s ease; } .hover-img-zoom:hover img { transform: scale(1.1); } 
.hover-img-zoom:hover { background-size: 130% !important; }
.hover-img-zoom-parent:hover .hover-img-zoom img { transform: scale(1.1); }
.visibility-hidden { visibility: hidden !important; }
.no-pointer-events { pointer-events: none !important; }
@media (min-width: 768px) { .show-hover-mobile .hover-to-show { background: var(--ych-blue); } }
@media (max-width: 767px) {
	.show-hover-mobile .hover-to-show, .show-hover-mobile .hover-to-show * { visibility: visible; opacity: 1; }
	.show-hover-mobile .hover-to-show { position: relative; }
	.show-hover-mobile.career-sheng { position: relative !important; }
	.show-hover-mobile.career-sheng .hover-to-show { min-height: 0 !important; }
	.show-hover-mobile.career-sheng .hover-to-show * { color: var(--ych-blue) !important; }
}
.white-logo-shadow img {
	filter:
		drop-shadow(1px 0 0 #fff)
		drop-shadow(-1px 0 0 #fff)
		drop-shadow(0 1px 0 #fff)
		drop-shadow(0 -1px 0 #fff);
}
.animated-underline a { position: relative; padding: 6px 0; }
.animated-underline a::after { content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: 2px; background-color: var(--ych-orange); 
	transform: scaleX(0); transform-origin: left center; transition: transform 0.28s cubic-bezier(.2, .7, .2, 1); }
.animated-underline a:hover::after { transform: scaleX(1); }

/* link default style */
.elementor-widget-text-editor a { color: var(--ych-blue); text-decoration: underline; transition: color 0.3s ease; }
.elementor-widget-text-editor a:hover { color: var(--ych-orange); }

/* buttons */
/* -- pill: button widget, tabs widget */
.pill .elementor-button, .e-n-tabs-heading button {	min-width: 200px !important; padding: 13px 30px 13px 30px !important;
	background: white !important; color: var(--ych-blue) !important;
	border: 1px solid var(--ych-blue) !important; border-radius: 100px !important; }
.pill.hero-cta-btn .elementor-button { background: var(--cta-button-colour) !important; color: white !important; border: 1px solid var(--cta-button-colour) !important; }
.pill.hero-cta-btn:has(a[href$="/contact-us"]),
.pill.hero-cta-btn:has(a[href$="/contact-us/"]) {
	display: none !important;
}
.pill.mini .elementor-button, .e-n-tabs-heading button { min-width: 130px !important; padding: 8px 24px 8px 24px !important; }
.pill.blue .elementor-button { background: var(--ych-blue) !important; color: white !important; border: 1px solid white !important; }
.pill.no-bg .elementor-button { background: none !important; }
.pill .elementor-button:hover, .e-n-tabs-heading button:hover { background: var(--ych-orange) !important; border-color: var(--ych-orange) !important; color: white !important; }
.e-n-tabs-heading button[aria-selected=true] { background: var(--ych-blue) !important; border-color: var(--ych-blue) !important; color: white !important; }
.pill.no-outline .elementor-button { border: 0 !important; }
.pill.orange .elementor-button { background: var(--ych-orange) !important; color: white !important; border: none !important; }
.pill.orange .elementor-button:hover { background: white !important; color: var(--ych-blue) !important; }
.pill.hover-up .elementor-button { transform: translateY(0); transition: transform .2s ease, background .2s ease, color .2s ease, border-color .2s ease; }
.pill.hover-up .elementor-button:hover { transform: translateY(-2px); }
.pill.no-minw .elementor-button { min-width: 0 !important; }
/* -- circle: button widget */
.circle .elementor-button, .circle-parent .circle > * { width: 38px; height: 38px; padding: 0;
	background: white; color: var(--ych-blue);
	border: 0; border-radius: 999px;
	position: relative; display: inline-flex; 
	align-items: center; justify-content: center; }
.circle.blue .elementor-button, .circle-parent .circle.blue > * { background: var(--ych-blue); color: white; }
.circle .elementor-button::after, .circle-parent .circle > *::after { content: ""; width: 14.25px; height: 9.5px; background-color: currentColor; transition: transform 0.3s ease-in-out;
	-webkit-mask: url("/wp-content/themes/hello-theme-child-master/theme/default/images/circle-btn-arrow.svg")
		no-repeat center / contain;
	mask: url("/wp-content/themes/hello-theme-child-master/theme/default/images/circle-btn-arrow.svg")
		no-repeat center / contain; }
.circle .elementor-button:hover::after, .circle-parent:hover .circle > *::after { transform: translateX(6px); }
/* -- left blue circle: header widget */
.add-blue-circle { display: inline-flex; align-items: center; gap: 8px; position: relative; }
.add-blue-circle::before { content: "";	width: 38px; height: 38px; border-radius: 999px; background: var(--ych-blue); flex-shrink: 0; }
.add-blue-circle::after { content: ""; position: absolute; left: 19px; top: 50%; transform: translate(-50%, -50%); width: 14.25px; height: 9.5px;
	background-color: white; -webkit-mask: url("/wp-content/themes/hello-theme-child-master/theme/default/images/circle-btn-arrow.svg") no-repeat center / contain;
	mask: url("/wp-content/themes/hello-theme-child-master/theme/default/images/circle-btn-arrow.svg") no-repeat center / contain; transition: transform 0.3s ease-in-out; }
.add-blue-circle:hover::after { transform: translate(calc(-50% + 6px), -50%); }
.add-blue-circle-parent:hover .add-blue-circle::after { transform: translate(calc(-50% + 6px), -50%); }
/* -- right arrow: header widget */
.add-right-arrow a, .add-right-arrow-parent .add-right-arrow p { position: relative; display: inline-flex; align-items: center; }
.add-right-arrow a::after, .add-right-arrow-parent .add-right-arrow p::after { content: ""; display: inline-block; width: 18px; height: 12px; margin-left: 6px; 
	-webkit-mask: url("/wp-content/themes/hello-theme-child-master/theme/default/images/right-arrow.svg") no-repeat center;
	mask: url("/wp-content/themes/hello-theme-child-master/theme/default/images/right-arrow.svg") no-repeat center;
	background-color: currentColor; transform: translatex(0); transition: transform 0.3s ease-out; }
.add-right-arrow a:hover::after, .add-right-arrow-parent:hover .add-right-arrow p::after { transform: translatex(4px); }

/* header */
#header-main { top: var(--wpadminbar-offset) !important; background-color: transparent; transform: translateY(0); transition: background-color .3s ease, transform .3s ease; }
#header-main * { font-family: "Montserrat", Sans-serif !important; }
#header-logo { width: 120px; height: auto; display: block; transition: width .3s cubic-bezier(.2,.7,.2,1); }
body.scrolled #header-main, body.elementor-editor-active #header-main { background-color: var(--ych-blue); }
body.scrolled #header-logo { width: 92px; }
body.scrolled #header-top { padding: 13px 0; }

/* menu */
#header-main ul.elementor-nav-menu { width: 100%; justify-content: space-between; }
#header-main ul.elementor-nav-menu::after { display: none; }
#header-main .elementor-sub-item { border-width: 2px 10px !important; }

/* desktop + mobile chevrons */
#header-mobile :is(.elementor-nav-menu--main > ul > li > a.has-submenu, nav.elementor-nav-menu--dropdown a.has-submenu) { display: flex !important; align-items: center; gap: 8px; }
#header-mobile :is(.elementor-nav-menu--main > ul > li > a.has-submenu, nav.elementor-nav-menu--dropdown a.has-submenu)::before { --chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 7'%3E%3Cpath d='M.652 0 0 .688 5.674 6.67 6 7l.326-.33L12 .688 11.348 0 6 5.639Z'/%3E%3C/svg%3E"); content: "" !important; display: block !important; position: static !important; inset: auto !important; order: 2; flex: none; width: 12px !important; height: 7px !important; opacity: 1 !important; visibility: visible !important; background: currentColor !important; -webkit-mask: var(--chevron) center/contain no-repeat; mask: var(--chevron) center/contain no-repeat; transform: rotate(0) !important; transition: transform .3s ease; pointer-events: none; }
#header-main :is(.elementor-nav-menu--main > ul > li > a.has-submenu, nav.elementor-nav-menu--dropdown a.has-submenu)[aria-expanded="true"]::before { transform: rotate(180deg) !important; }

/* desktop underline */
#header-main .e--pointer-underline .elementor-item::after { transform: scaleX(0); transform-origin: left; transition: transform .28s cubic-bezier(.2,.7,.2,1); }
#header-main .e--pointer-underline .elementor-item:hover::after { transform: scaleX(1); }

/* search */
#header-search-icon { position: relative; cursor: pointer; width: 28px; height: 28px; transition: transform .16s ease; }
#header-search-icon::before { content: "\2715"; display: none; width: 28px; height: 28px; margin-top: -1px; font-size: 22px; color: #fff; }
#header-main.search-active #header-search-icon::before { display: inline-block; }
#header-main.search-active #header-search-icon svg { display: none; }
#header-search-icon::after { content: ""; position: absolute; top: 50%; left: 50%; width: 40px; height: 40px; border-radius: 50%; background: #fff; opacity: 0; transform: translate(-50%,-50%) scale(.86); transition: opacity .16s ease, transform .16s ease; z-index: -1; }
#header-search-icon:hover { transform: scale(.94); }
#header-search-icon:hover::after { opacity: .08; transform: translate(-50%,-50%) scale(1); }
#header-search-icon.is-clicked { transform: scale(.74); }
#header-search-icon.is-clicked::after { opacity: .2; transform: translate(-50%,-50%) scale(1.12); }

#header-search-bar { max-width: 0; opacity: 0; overflow: hidden !important; transition: max-width .5s ease, opacity .5s ease; }
#header-main.search-active #header-search-bar { max-width: 800px; opacity: 1; }
#header-main.search-active #header-search-bar > div { border-radius: 100px; background: linear-gradient(to right,rgba(255,255,255,.05) 0%,rgba(255,255,255,.1) 10%,rgba(255,255,255,.1) 15%,transparent 100%); }
#header-contact-btn { opacity: 1; transition: opacity .2s ease .2s, visibility .2s ease .2s; }
#header-main.search-active #header-contact-btn { visibility: hidden; opacity: 0; transition: opacity .2s ease, visibility .2s ease; }
#header-search-bar .e-search-label svg path { fill: rgba(255,255,255,.3); }

/* menu toggle */
#header-main .elementor-menu-toggle { margin: 0; padding: 0; }
#header-main .elementor-menu-toggle span { width: 28px; height: 10px; margin-top: -3px; line-height: 10px; }
#header-main .elementor-menu-toggle span svg { width: 28px; height: 10px; }
#header-main .elementor-menu-toggle span.elementor-menu-toggle__icon--close { margin-top: -6px; }
#header-main .elementor-menu-toggle span.elementor-menu-toggle__icon--close svg { width: 18px; height: 18px; margin-left: 5px; }

/* desktop submenus */
@media (min-width: 1251px) {
	#header-main ul ul li.menu-item-has-children { position: relative; }
	#header-main ul ul li.menu-item-has-children > .elementor-sub-item { border-right-width: 32px !important; }
	#header-main ul ul li.menu-item-has-children::after { content: ""; position: absolute; top: 50%; right: 18px; width: 8px; height: 8px; border-top: 2px solid currentColor; border-right: 2px solid currentColor; transform: translateY(-50%) rotate(45deg); pointer-events: none; transition: color .4s ease .2s; }
	#header-main ul ul li.menu-item-has-children:hover::after { color: #fff; transition: color .4s ease; }
}

@media (min-width: 1251px) and (max-width: 1350px) {
	#header-main nav .elementor-nav-menu, #header-main p { font-size: 14px; }
	#header-logo { width: 92px; }
}

/* mobile */
@media (max-width: 1250px) {
	#header-desktop { display: none; }
	#header-mobile { display: block; }
	#header-logo { max-width: 92px; }
	#header-main ul.elementor-nav-menu { height: calc(100vh - 70px); height: calc(100dvh - 70px); padding: 12px 0; overflow-y: auto; }
	#header-main ul.elementor-nav-menu li a { padding: 12px var(--site-padding-x); border-inline-start-width: 20px; }
	#header-main ul.elementor-nav-menu * { font-size: 16px; }
	#header-main nav.elementor-nav-menu--dropdown a.has-submenu::before { margin-left: auto; margin-right: 8px; }
	#header-search-bar { top: auto; right: calc(var(--site-padding-x) * -1); bottom: calc(-100% + 20px); width: calc(100% + 2 * var(--site-padding-x)); margin: 0; padding: 12px var(--site-padding-x); background: transparent; }
	#header-search-bar .elementor-widget-search { margin: 0; }
	#header-main.search-active #header-search-bar { max-width: 100vw; }
	body.scrolled #header-search-bar { background: var(--ych-blue); }
}

@media (max-width: 767px) {
	#header-main { top: 0 !important; }
}


/* footer */
/* #footer-main .footer-heading a { font-size: 1rem !important; font-weight: 700; margin-bottom: 8px; padding: 0; }
#footer-main .elementor-social-icon svg path { transition: fill 0.3s ease; }
#footer-main .elementor-social-icon:hover svg path { fill: var(--ych-orange); } */
#footer-main .ych-socials a {
    width: 46px; height: 46px;
    border-radius: 50%; border: 1px solid rgba(255, 255, 255, .28);
    color: #fff; background: rgba(255, 255, 255, .025);
    display: grid; place-items: center;
    transition: transform .2s ease, background .2s ease, border-color .2s ease, color .2s ease;
}
#footer-main .ych-socials a:hover { transform: translateY(-3px); background: var(--ych-orange); border-color: var(--ych-orange); color: var(--ych-blue); }
#footer-main .ych-socials svg { width: 18px; height: 18px; display: block; fill: currentColor; }
#footer-main .ych-footer-title h2 { margin: 0 !important; font-size: clamp(2rem, calc(-1.098rem + 6.466vw), 48px) !important; line-height: 1.4 !important; }
#footer-main .ych-footer-title h2 span { display: inline; color: var(--ych-orange); }
#footer-main .ych-footer-title p { max-width: 560px; line-height: 1.55 !important; }
.ych-footer-signature { position: relative; min-height: 330px; display: flex; align-items: center; justify-content: center; overflow: visible; }
.ych-footer-70 h2 { position: relative; z-index: 3; font-size: clamp(210px, 18vw, 300px) !important; display: flex; justify-content: flex-end;
    line-height: .72 !important; letter-spacing: -.04em !important; color: transparent !important; -webkit-text-stroke: 2px rgba(255, 255, 255, .20); user-select: none; }
.ych-footer-70 h2::after { content: "70"; position: absolute; display: flex; justify-content: flex-end; inset: 0; color: transparent !important; -webkit-text-stroke: 2px var(--ych-orange); clip-path: polygon(0 63%, 100% 35%, 100% 66%, 0 86%); opacity: .95; }
#footer-main { position: relative; overflow: hidden; }
#footer-main::before { content: ""; position: absolute; inset: 0; z-index: 2; pointer-events: none;
    background: radial-gradient(circle at 76% 34%, rgba(246, 168, 28, .13), transparent 23%), linear-gradient(180deg, rgba(255, 255, 255, .025), transparent 35%);
}
@media (max-width: 767px) {
	#policies-menu ul { flex-direction: column; }
	#policies-menu li a { margin: 0; padding: 4px 0; }	
	.ych-footer-signature { min-height: 0; }
	#footer-main::before { background: radial-gradient(circle at 76% 43%, rgba(246, 168, 28, .13), transparent 23%), linear-gradient(180deg, rgba(255, 255, 255, .025), transparent 35%); }
}
/* -- footer route animation */
.ych-footer-shell { position: relative; overflow: hidden; isolation: isolate; }
.ych-footer-route-widget { position: absolute; inset: 0; z-index: 0; pointer-events: none; }
.ych-footer-route-widget, .ych-footer-route-widget .elementor-widget-container { width: 100%; height: 100%; }
.ych-footer-route { display: block; width: 100%; height: 100%; opacity: 0.92; transform: translateY(-34px); }
.ych-footer-content { position: relative; z-index: 1; }
.ych-footer-route .route-base { fill: none; stroke: rgba(255, 255, 255, 0.10); stroke-width: 1.25; }
.ych-footer-route .route-live { fill: none; stroke: var(--ych-orange, #F6A81C); stroke-width: 2; stroke-linecap: round; stroke-dasharray: 10 18; animation: ychRouteMove 12s linear infinite; }
.ych-footer-route .route-ring { fill: none; stroke: rgba(246, 168, 28, 0.42); stroke-width: 1; }
.ych-footer-route .route-node { fill: var(--ych-orange, #F6A81C); }
@keyframes ychRouteMove { to { stroke-dashoffset: -280; } }

/* scrollbar styling */
div { scrollbar-width: thin; scrollbar-color: var(--ych-blue-dim) transparent; }
div::-webkit-scrollbar { width: 6px; height: 6px; }
div::-webkit-scrollbar-thumb { background: var(--ych-blue-dim); border-radius: 999px; }
div::-webkit-scrollbar-track { background: transparent; }

.dialog-message.dialog-lightbox-message { scrollbar-color: var(--ych-blue) transparent; }
.dialog-message.dialog-lightbox-message::-webkit-scrollbar-thumb { background: var(--ych-blue); }

/* overwrite basic config */
html { font-size: 16px; overflow-x: hidden; }
main#content { min-height: calc(100vh - 400px); }
p { margin-block-end: 0 !important; }
.elementor-heading-title { line-height: inherit; } .elementor-icon-wrapper { line-height: 0; } .elementor-widget-image img { display: block; }
.no-breadcrumbs .elementor-widget-breadcrumbs { display: none; }
.e-hosted-video.elementor-wrapper { --video-aspect-ratio: auto !important; }
.elementor-social-icon:hover { opacity: 1 !important; }
summary.e-n-accordion-item-title * { transition: color 0.3s ease; } summary.e-n-accordion-item-title:hover * { color: var(--ych-orange); }
.e-loop-nothing-found-message { padding: 0 !important; }
.elementor-widget-html svg { display: block; }
ul.elementor-nav-menu--dropdown a, ul.elementor-nav-menu--dropdown a:focus, ul.elementor-nav-menu--dropdown a:hover { border-inline: 8px solid transparent; }
@media screen and (max-width: 782px) { html #wpadminbar { display: none; } #header-main { top: 0 !important; } html { margin-top: 0 !important; } }
@media (min-width: 768px) { .e-loop-item { height: 100% !important; } }
@media (max-width: 767px) { .e-loop-item { height: fit-content !important; } #home-solutions .e-loop-item { height: 100% !important; } .elementor-loop-container.elementor-grid { grid-auto-rows: auto !important; } 
#our-solutions .e-loop-item { height: 100% !important; } }
.grid-white-bg > div { background-color: white; }
.elementor-headline.elementor-headline-letters { margin: 0; }

/* Lists - UL OL */
.overview-grid-list ul { list-style: none; padding-left: 0; }
.overview-grid-list li { position: relative; padding-left: 20px; margin-bottom: 1rem; }
.overview-grid-list li::before { content: "\25CF"; position: absolute; left: 0; }
.overview-grid-list li li::before {
    content: "\25CB";
}
.overview-grid-list ul ul { margin-top: 1rem; }
ol ol { list-style-type: lower-roman; }
.elementor-widget-text-editor ul { padding-inline-start: 20px; }

/* Layout A */
@media (max-width: 767px) {
	.layout-a .elementor-widget-heading { color: white; }
	.layout-a .pill a.elementor-button { border: 1px solid white !important; }
}

/* BEGIN YCH navigation v1.4.0 — append once at the END of base.css.
 * Stable classes are listed in README.md. Keep the existing Elementor CSS IDs.
 * :is(.ych-header, #header-main) preserves the specificity of existing theme rules.
 */
/* Desktop enhancement only. The existing menu stays visible until JS is ready. */
:is(.ych-header, #header-main) .ych-mega,
:is(.ych-header, #header-main) .ych-mega__panels { display: none; }
:is(.ych-header, #header-main) .ych-mega__panel[hidden] { display: none !important; }
.ych-header-search[data-ych-search-keyboard]:focus-visible {
  outline: 2px solid #f6a81c; outline-offset: 5px; border-radius: 3px;
}

@media (min-width: 1251px) {
  :is(.ych-header, #header-main).ych-mega-ready .ych-mobile-source { display: none !important; }
  :is(.ych-header, #header-main).ych-mega-ready {
    --ych-mega-blue: #1e4488;
    --ych-mega-gold: #f6a81c;
    --ych-mega-rule: rgba(255, 255, 255, .14);
    --ych-mega-shell-padding: clamp(22px, 4vw, 68px);
    padding-inline: var(--ych-mega-shell-padding); overflow: visible;
  }
  :is(.ych-header, #header-main).ych-mega-ready > .e-con-inner { width: 100%; max-width: 1180px; }
  :is(.ych-header, #header-main).ych-mega-ready .ych-header-row { width: 100%; min-width: 0; flex-wrap: nowrap; }
  :is(.ych-header, #header-main).ych-mega-ready .ych-desktop-source {
    flex: 1 1 0; width: auto; min-width: 0; padding-left: 32px; padding-right: 24px;
  }
  :is(.ych-header, #header-main).ych-mega-ready .ych-header-actions {
    flex: 0 0 auto; width: auto; padding-left: 24px; gap: 20px;
  }
  :is(.ych-header, #header-main).ych-mega-ready .ych-header-search { flex: 0 0 28px; }
  :is(.ych-header, #header-main).ych-mega-ready .ych-header-actions .ych-header-contact .elementor-heading-title {
    white-space: nowrap;
  }
  :is(.ych-header, #header-main).ych-mega-ready .ych-mega__source { display: none !important; }
  :is(.ych-header, #header-main).ych-mega-ready .ych-mega { display: block; width: 100%; }
  :is(.ych-header, #header-main).ych-mega-ready .ych-mega__panels { display: contents; }
  :is(.ych-header, #header-main).ych-mega-ready.ych-mega-open {
    background-color: var(--ych-mega-blue) !important;
  }
  :is(.ych-header, #header-main) :is(.ych-mega, .ych-mega__panels),
  :is(.ych-header, #header-main) :is(.ych-mega, .ych-mega__panels) * { box-sizing: border-box; }
  :is(.ych-header, #header-main) :is(.ych-mega, .ych-mega__panels) * {
    font-family: Inter, Arial, sans-serif !important;
  }
  :is(.ych-header, #header-main) :is(.ych-mega, .ych-mega__panels) :is(ul, li) {
    margin: 0; padding: 0; list-style: none;
  }
  :is(.ych-header, #header-main) .ych-mega__list {
    display: flex; align-items: center; justify-content: space-between;
    gap: 8px; width: 100%;
  }
  :is(.ych-header, #header-main) .ych-mega__item { flex: 0 0 auto; }
  :is(.ych-header, #header-main) .ych-mega__trigger { display: flex; align-items: center; }
  :is(.ych-header, #header-main) .ych-mega__top-link {
    display: inline-flex; position: relative; align-items: center;
    padding: 6px 0; color: #fff; font-size: 16px; font-weight: 400;
    line-height: 1.4; white-space: nowrap; text-decoration: none;
    margin: 0; border: 0; border-radius: 0; background: none; box-shadow: none; text-align: left;
    transition: color .18s ease;
  }
  :is(.ych-header, #header-main) .ych-mega__top-link::after {
    content: ""; position: absolute; left: 0; right: 0; bottom: 0;
    height: 2px; background: var(--ych-mega-gold);
    transform: scaleX(0); transform-origin: left;
    transition: transform .2s ease;
  }
  :is(.ych-header, #header-main) .ych-mega__trigger:has([aria-expanded="true"]) .ych-mega__top-link,
  :is(.ych-header, #header-main) .ych-mega__item.is-current .ych-mega__top-link,
  :is(.ych-header, #header-main) .ych-mega__top-link:is(:hover, :focus-visible, [aria-current]) {
    color: var(--ych-mega-gold);
  }
  :is(.ych-header, #header-main) .ych-mega__trigger:has([aria-expanded="true"]) .ych-mega__top-link::after,
  :is(.ych-header, #header-main) .ych-mega__item.is-current .ych-mega__top-link::after,
  :is(.ych-header, #header-main) .ych-mega__top-link:is(:hover, :focus-visible, [aria-current])::after {
    transform: scaleX(1);
  }
  :is(.ych-header, #header-main) .ych-mega__panel {
    position: absolute; top: 100%; left: 0; right: 0; z-index: 1;
    display: block; width: auto; max-height: var(--ych-mega-height, 70vh);
    margin: 0; padding: 0; overflow-x: hidden; overflow-y: auto;
    overscroll-behavior: contain; background: var(--ych-mega-blue);
    color: #fff; border: 0; border-top: 1px solid var(--ych-mega-rule);
    box-shadow: 0 26px 50px rgba(5, 17, 40, .28); text-align: left;
    scrollbar-width: thin; scrollbar-color: rgba(255, 255, 255, .45) transparent;
  }
  :is(.ych-header, #header-main) .ych-mega__inner {
    width: min(calc(100% - 2 * var(--ych-mega-shell-padding)), 1180px);
    margin: 0 auto; padding: 34px 0 38px;
  }
  :is(.ych-header, #header-main) .ych-mega__inner--shallow { padding-top: 28px; padding-bottom: 30px; }
  :is(.ych-header, #header-main) .ych-mega__heading {
    display: flex; align-items: center; justify-content: space-between;
    gap: 24px; margin-bottom: 26px; padding-bottom: 22px;
    border-bottom: 1px solid var(--ych-mega-rule);
  }
  :is(.ych-header, #header-main) .ych-mega__inner--shallow .ych-mega__heading { padding-bottom: 20px; }
  :is(.ych-header, #header-main) .ych-mega__panel .ych-mega__title {
    margin: 0; padding: 0; color: #fff;
    font-family: Montserrat, Inter, Arial, sans-serif !important;
    font-size: 20px !important; font-weight: 700; line-height: 1.25; letter-spacing: 0;
  }
  :is(.ych-header, #header-main) .ych-mega__columns {
    display: grid; grid-template-columns: repeat(var(--ych-mega-columns, 3), minmax(0, 1fr));
    align-items: stretch; gap: 0;
  }
  :is(.ych-header, #header-main) .ych-mega__columns--solutions { grid-template-columns: .8fr 1fr 1.35fr; }
  :is(.ych-header, #header-main) .ych-mega__columns--sustainability { grid-template-columns: .82fr 1fr 1fr; }
  :is(.ych-header, #header-main) .ych-mega__column {
    min-width: 0; padding: 0 clamp(24px, 3vw, 44px);
    border-left: 1px solid var(--ych-mega-rule);
  }
  :is(.ych-header, #header-main) .ych-mega__column:first-child { border-left: 0; padding-left: 0; }
  :is(.ych-header, #header-main) .ych-mega__column:last-child { padding-right: 0; }
  :is(.ych-header, #header-main) .ych-mega__group-title {
    display: block; margin: 0 0 15px; padding: 0;
    color: var(--ych-mega-gold); font-size: 16px; font-weight: 600;
    line-height: 1.4; letter-spacing: .02em; text-decoration: none;
    overflow-wrap: anywhere; transition: color .2s ease, transform .2s ease;
  }
  :is(.ych-header, #header-main) .ych-mega__description {
    max-width: 260px; margin: 0 0 18px !important; padding: 0;
    color: rgba(255, 255, 255, .62); font-size: 16px; line-height: 1.55;
  }
  :is(.ych-header, #header-main) .ych-mega__links { display: grid; gap: 2px; }
  :is(.ych-header, #header-main) .ych-mega__links .ych-mega__links {
    margin: 4px 0 8px 12px; padding-left: 12px;
    border-left: 1px solid var(--ych-mega-rule);
  }
  :is(.ych-header, #header-main) .ych-mega__link {
    display: flex; align-items: center; justify-content: space-between; gap: 16px;
    min-height: 38px; padding: 8px 0; color: rgba(255, 255, 255, .84);
    font-size: 16px; font-weight: 400; line-height: 1.35; text-decoration: none;
    white-space: normal; overflow-wrap: anywhere; transition: color .2s ease, transform .2s ease;
  }
  :is(.ych-header, #header-main) .ych-mega__link > span { min-width: 0; }
  :is(.ych-header, #header-main) .ych-mega__logo {
    display: block; flex: 0 0 auto; width: 92px; height: 36px;
    max-width: 34%; object-fit: contain; object-position: center right;
    border: 0; border-radius: 0;
  }
  :is(.ych-header, #header-main) .ych-mega__tile {
    min-height: 54px; padding: 8px clamp(24px, 3vw, 44px);
    border-left: 1px solid var(--ych-mega-rule); color: rgba(255, 255, 255, .86);
  }
  :is(.ych-header, #header-main) .ych-mega__tile:first-child { padding-left: 0; border-left: 0; }
  :is(.ych-header, #header-main) .ych-mega__tile:last-child { padding-right: 0; }
  :is(.ych-header, #header-main) .ych-mega__panel a:is(:hover, :focus-visible, [aria-current]) {
    color: var(--ych-mega-gold);
  }
  :is(.ych-header, #header-main) .ych-mega__panel a[aria-current] { text-decoration: underline; text-underline-offset: 4px; }
  :is(.ych-header, #header-main) a.ych-mega__link:not(.ych-mega__tile):is(:hover, :focus-visible),
  :is(.ych-header, #header-main) a.ych-mega__group-title:is(:hover, :focus-visible) { transform: translateX(4px); }
  :is(.ych-header, #header-main) .ych-mega__panel a.ych-mega__group-title:is(:hover, :focus-visible) { color: #fff; }
  :is(.ych-header, #header-main) :is(.ych-mega, .ych-mega__panels) :is(a, button):focus-visible {
    outline: 2px solid var(--ych-mega-gold); outline-offset: 4px;
  }
}
@media (prefers-reduced-motion: reduce) {
  :is(.ych-header, #header-main) .ych-mega__top-link,
  :is(.ych-header, #header-main) .ych-mega__top-link::after,
  :is(.ych-header, #header-main) .ych-mega__group-title,
  :is(.ych-header, #header-main) .ych-mega__link { transition: none; }
}

/* Independent mobile enhancement; the Elementor source remains the fallback. */
:is(.ych-header, #header-main) .ych-mobile,
:is(.ych-header, #header-main) .ych-mobile__burger { display: none; }
:is(.ych-header, #header-main) .ych-mobile[hidden],
:is(.ych-header, #header-main) .ych-mobile__panel[hidden] { display: none !important; }

@media (max-width: 1250px) {
  :is(.ych-header, #header-main).ych-mobile-ready .ych-desktop-source { display: none !important; }
  :is(.ych-header, #header-main).ych-mobile-ready {
    --ych-mobile-blue: #1e4488;
    --ych-mobile-gold: #f6a81c;
    --ych-mobile-shell-padding: clamp(22px, 4vw, 68px);
    padding: 0 var(--ych-mobile-shell-padding); overflow: visible;
  }
  :is(.ych-header, #header-main).ych-mobile-ready > .e-con-inner { width: 100%; max-width: 1180px; }
  :is(.ych-header, #header-main).ych-mobile-ready .ych-header-row {
    display: flex; align-items: center; justify-content: space-between;
    width: 100%; min-width: 0; height: 86px; min-height: 0;
    padding: 0; flex-wrap: nowrap; gap: 40px;
    transition: height .3s cubic-bezier(.2, .7, .2, 1);
  }
  body.scrolled :is(.ych-header, #header-main).ych-mobile-ready {
    border-bottom: 1px solid rgba(255, 255, 255, .18);
    backdrop-filter: none; -webkit-backdrop-filter: none;
  }
  body.scrolled :is(.ych-header, #header-main).ych-mobile-ready .ych-header-row { height: 70px; padding: 0; }
  body.scrolled :is(.ych-header, #header-main).ych-mobile-ready .ych-mobile { top: calc(100% + 1px); }
  :is(.ych-header, #header-main).ych-mobile-ready .ych-header-logo {
    flex: 0 0 auto; width: 120px; max-width: none; padding: 0;
  }
  :is(.ych-header, #header-main).ych-mobile-ready .ych-header-logo img { display: block; width: 100%; height: auto; }
  body.scrolled :is(.ych-header, #header-main).ych-mobile-ready .ych-header-logo { width: 92px; }
  :is(.ych-header, #header-main).ych-mobile-ready .ych-header-actions {
    display: flex; flex: 0 0 auto; align-items: center; justify-content: flex-end;
    width: auto; min-width: 0; padding: 0; gap: 20px; flex-wrap: nowrap;
  }
  :is(.ych-header, #header-main).ych-mobile-ready .ych-header-actions .ych-header-contact {
    display: none !important;
  }
  :is(.ych-header, #header-main).ych-mobile-ready .ych-header-search {
    display: grid; place-items: center; flex: 0 0 40px;
    width: 40px; height: 40px; margin: 0 -4px 0 0; padding: 0 0 0 8px;
    box-sizing: border-box;
  }
  :is(.ych-header, #header-main).ych-mobile-ready .ych-header-search .elementor-icon-wrapper,
  :is(.ych-header, #header-main).ych-mobile-ready .ych-header-search .elementor-icon { display: grid; place-items: center; }
  :is(.ych-header, #header-main).ych-mobile-ready .ych-header-search svg { width: 24px; height: auto; }
  :is(.ych-header, #header-main).ych-mobile-ready .ych-mobile-source {
    display: block !important; flex: 0 0 40px; width: 40px; min-width: 0;
    height: 40px; padding: 0; margin: 0;
  }
  :is(.ych-header, #header-main).ych-mobile-ready .ych-mobile-source .ych-mobile__source { display: none !important; }
  :is(.ych-header, #header-main).ych-mobile-ready.ych-mobile-open {
    background: var(--ych-mobile-blue) !important;
    backdrop-filter: none; -webkit-backdrop-filter: none; transition: none;
  }
  :is(.ych-header, #header-main) :is(.ych-mobile, .ych-mobile__burger),
  :is(.ych-header, #header-main) :is(.ych-mobile, .ych-mobile__burger) * { box-sizing: border-box; }
  :is(.ych-header, #header-main) :is(.ych-mobile, .ych-mobile__burger),
  :is(.ych-header, #header-main) :is(.ych-mobile, .ych-mobile__burger) * {
    font-family: Inter, Arial, sans-serif !important;
  }
  :is(.ych-header, #header-main).ych-mobile-ready .ych-mobile__burger {
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    width: 40px; height: 40px; min-height: 0; margin: 0; padding: 0; gap: 6px;
    border: 0; border-radius: 0; background: transparent; color: #fff;
    box-shadow: none; cursor: pointer; appearance: none; -webkit-tap-highlight-color: transparent;
  }
  :is(.ych-header, #header-main) .ych-mobile__burger > span {
    display: block; flex: 0 0 2px; width: 28px; height: 2px; margin: 0;
    background: #fff !important; opacity: 1;
    transition: transform .25s ease, opacity .25s ease;
  }
  :is(.ych-header, #header-main) .ych-mobile__burger[aria-expanded="true"] > span:first-child {
    transform: translateY(4px) rotate(45deg);
  }
  :is(.ych-header, #header-main) .ych-mobile__burger[aria-expanded="true"] > span:last-child {
    transform: translateY(-4px) rotate(-45deg);
  }
  :is(.ych-header, #header-main).ych-mobile-ready .ych-mobile {
    display: flex; flex-direction: column; position: absolute; left: 0; right: 0;
    top: 100%; z-index: 2; width: auto;
    min-height: var(--ych-mobile-height, calc(100svh - 86px));
    height: var(--ych-mobile-height, calc(100svh - 86px));
    max-height: var(--ych-mobile-height, calc(100svh - 86px));
    overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain;
    margin: 0; padding: 8px var(--site-padding-x);
    background: var(--ych-mobile-blue); color: #fff;
    border: 0; border-top: 1px solid rgba(255, 255, 255, .14);
    box-shadow: 0 24px 40px rgba(6, 16, 38, .28); text-align: left;
    scrollbar-width: none; -ms-overflow-style: none;
  }
  :is(.ych-header, #header-main) .ych-mobile::-webkit-scrollbar { width: 0; height: 0; }
  :is(.ych-header, #header-main) .ych-mobile > :is(.ych-mobile__group, .ych-mobile__direct) {
    flex: 0 0 auto; border-bottom: 1px solid rgba(255, 255, 255, .18);
  }
  :is(.ych-header, #header-main) .ych-mobile > :last-child { border-bottom: 0; }
  :is(.ych-header, #header-main) .ych-mobile :is(.ych-mobile__toggle, .ych-mobile__direct) {
    display: flex; align-items: center; justify-content: space-between;
    width: 100%; min-height: 64px; height: auto; gap: 20px; margin: 0; padding: 17px 0;
    border: 0; border-radius: 0; background: transparent; box-shadow: none; color: #fff;
    font-size: 16px; font-weight: 400; line-height: 1.35; letter-spacing: 0;
    text-align: left; text-decoration: none; text-transform: none;
    white-space: normal; cursor: pointer; appearance: none;
    -webkit-tap-highlight-color: transparent;
  }
  :is(.ych-header, #header-main) .ych-mobile > .ych-mobile__direct { border-bottom: 1px solid rgba(255, 255, 255, .18); }
  :is(.ych-header, #header-main) .ych-mobile > .ych-mobile__direct:last-child { border-bottom: 0; }
  :is(.ych-header, #header-main) .ych-mobile__chevron {
    display: inline-block; flex: 0 0 11px; width: 11px; height: 11px; margin-right: 15px;
    border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;
    color: #fff; transform: rotate(45deg) translateY(-2px); transform-origin: center;
    transition: transform .22s ease;
  }
  :is(.ych-header, #header-main) .ych-mobile__toggle[aria-expanded="true"] .ych-mobile__chevron {
    transform: rotate(225deg) translate(-2px, -2px);
  }
  :is(.ych-header, #header-main) .ych-mobile__panel { margin: 0; padding: 2px 0 22px; }
  :is(.ych-header, #header-main) .ych-mobile__link {
    display: block; min-height: 0; margin: 0; padding: 9px 0; border: 0;
    color: rgba(255, 255, 255, .84); background: transparent;
    font-size: 16px; font-weight: 400; line-height: 1.45; letter-spacing: 0;
    text-decoration: none; white-space: normal; overflow-wrap: anywhere;
  }
  :is(.ych-header, #header-main) .ych-mobile__section {
    display: block; margin: 12px 0 4px; padding: 0; border: 0;
    color: var(--ych-mobile-gold); background: transparent;
    font-size: 16px; font-weight: 600; line-height: 1.4; letter-spacing: 0;
    text-decoration: none; white-space: normal; overflow-wrap: anywhere;
  }
  :is(.ych-header, #header-main) .ych-mobile__nested { display: grid; margin: 0; padding: 0 0 8px; }
  :is(.ych-header, #header-main) .ych-mobile__nested .ych-mobile__link { min-height: 0; padding: 7px 0; font-size: 16px; }
  :is(.ych-header, #header-main) .ych-mobile__link:is(:hover, :focus-visible),
  :is(.ych-header, #header-main) .ych-mobile a[aria-current] { color: var(--ych-mobile-gold); }
  :is(.ych-header, #header-main) .ych-mobile a[aria-current] { text-decoration: underline; text-underline-offset: 4px; }
  :is(.ych-header, #header-main) :is(.ych-mobile a, .ych-mobile button, .ych-mobile__burger):focus-visible {
    outline: 2px solid var(--ych-mobile-gold); outline-offset: 3px;
  }
}
@media (max-width: 640px) {
  :is(.ych-header, #header-main).ych-mobile-ready .ych-header-row,
  body.scrolled :is(.ych-header, #header-main).ych-mobile-ready .ych-header-row { height: 72px; }
  :is(.ych-header, #header-main).ych-mobile-ready .ych-header-logo { width: 90px; }
  body.scrolled :is(.ych-header, #header-main).ych-mobile-ready .ych-header-logo { width: 74px; }
  :is(.ych-header, #header-main).ych-mobile-ready .ych-mobile {
    min-height: var(--ych-mobile-height, calc(100svh - 72px));
    height: var(--ych-mobile-height, calc(100svh - 72px));
    max-height: var(--ych-mobile-height, calc(100svh - 72px));
  }
}
@media (max-width: 1250px) and (prefers-reduced-motion: reduce) {
  :is(.ych-header, #header-main).ych-mobile-ready .ych-header-row,
  :is(.ych-header, #header-main).ych-mobile-ready .ych-header-logo,
  :is(.ych-header, #header-main) .ych-mobile__burger > span,
  :is(.ych-header, #header-main) .ych-mobile__chevron { transition: none; }
}
/* END YCH navigation v1.4.0 */
