/* source: denlyx-v1848-final.css */
/* DENLYX v1.8.48 — authoritative UI corrections loaded after the production bundle. */

/* 1. Header: no full-width rail, fill, line, flash, or inherited tone conflict. */
html body.denlyx-atmosphere-theme header.atmo-header,
html body.denlyx-atmosphere-theme header.atmo-header.scrolled,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  filter: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
html body.denlyx-atmosphere-theme header.atmo-header::before,
html body.denlyx-atmosphere-theme header.atmo-header::after,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner::before,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner::after {
  content: none !important;
  display: none !important;
}

/* Our v1847 tone attribute is the only visual color authority. */
html body header.atmo-header[data-dx-v1847-tone="dark"] {
  --dx1847-header-fg: #f7fbff;
  --dx1847-header-border: rgba(255,255,255,.48);
}
html body header.atmo-header[data-dx-v1847-tone="light"] {
  --dx1847-header-fg: #173b4b;
  --dx1847-header-border: rgba(23,59,75,.42);
}
html body header.atmo-header[data-dx-v1847-tone] .atmo-brand,
html body header.atmo-header[data-dx-v1847-tone] .atmo-brand span,
html body header.atmo-header[data-dx-v1847-tone] .atmo-nav > a,
html body header.atmo-header[data-dx-v1847-tone] .atmo-nav > .nav-item > a,
html body header.atmo-header[data-dx-v1847-tone] .dx-command-toggle,
html body header.atmo-header[data-dx-v1847-tone] .atmo-language-trigger,
html body header.atmo-header[data-dx-v1847-tone] .atmo-sound-toggle,
html body header.atmo-header[data-dx-v1847-tone] .atmo-sound-toggle .dx-sound-word,
html body header.atmo-header[data-dx-v1847-tone] .atmo-header-cta,
html body header.atmo-header[data-dx-v1847-tone] .menu-toggle {
  color: var(--dx1847-header-fg) !important;
  -webkit-text-fill-color: var(--dx1847-header-fg) !important;
  border-color: var(--dx1847-header-border) !important;
}
html body header.atmo-header[data-dx-v1847-tone="dark"] .atmo-language-chevron path { stroke:#f7fbff !important; }
html body header.atmo-header[data-dx-v1847-tone="light"] .atmo-language-chevron path { stroke:#173b4b !important; }
html body header.atmo-header .atmo-sound-toggle .dx-sound-on { color:#20d991 !important; -webkit-text-fill-color:#20d991 !important; }
html body header.atmo-header .atmo-sound-toggle .dx-sound-off { color:#ff7a76 !important; -webkit-text-fill-color:#ff7a76 !important; }

/* 2. Companies dropdown: clear glass, clean title, normal descriptions, reliable contrast. */
html body .atmo-dropdown,
html body .atmo-dropdown-title,
html body .atmo-dropdown > a {
  background-color: rgba(255,255,255,.012) !important;
  background-image: none !important;
  box-shadow: none !important;
}
html body .atmo-dropdown {
  border-color: rgba(255,255,255,.30) !important;
  -webkit-backdrop-filter: blur(20px) saturate(108%) !important;
  backdrop-filter: blur(20px) saturate(108%) !important;
}
html body .atmo-dropdown-title::before,
html body .atmo-dropdown-title::after,
html body .atmo-dropdown > a::before,
html body .atmo-dropdown > a::after { content:none !important; display:none !important; }
html body .atmo-dropdown-title {
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
  gap:4px !important;
}
html body .atmo-dropdown-title > span {
  display:block !important;
  white-space:nowrap !important;
  font-size:11px !important;
  line-height:1.15 !important;
  font-weight:650 !important;
  letter-spacing:.11em !important;
}
html body .atmo-dropdown-title > b {
  display:block !important;
  white-space:nowrap !important;
  font-size:13px !important;
  line-height:1.25 !important;
  font-weight:400 !important;
  letter-spacing:0 !important;
}
html body .atmo-dropdown > a strong { font-weight:650 !important; }
html body .atmo-dropdown > a small { font-weight:400 !important; }
html body .atmo-dropdown [data-dx-v1847-row-tone="dark"],
html body .atmo-dropdown [data-dx-v1847-row-tone="dark"] strong,
html body .atmo-dropdown [data-dx-v1847-row-tone="dark"] small {
  color:#f7fbff !important; -webkit-text-fill-color:#f7fbff !important;
}
html body .atmo-dropdown [data-dx-v1847-row-tone="dark"] small {
  color:rgba(247,251,255,.76) !important; -webkit-text-fill-color:rgba(247,251,255,.76) !important;
}
html body .atmo-dropdown [data-dx-v1847-row-tone="light"],
html body .atmo-dropdown [data-dx-v1847-row-tone="light"] strong,
html body .atmo-dropdown [data-dx-v1847-row-tone="light"] small {
  color:#173b4b !important; -webkit-text-fill-color:#173b4b !important;
}
html body .atmo-dropdown [data-dx-v1847-row-tone="light"] small {
  color:rgba(23,59,75,.74) !important; -webkit-text-fill-color:rgba(23,59,75,.74) !important;
}
/* The homepage hero is dark: all dropdown copy stays white there. */
html body.dx1847-home .atmo-dropdown .atmo-dropdown-title,
html body.dx1847-home .atmo-dropdown .atmo-dropdown-title > span,
html body.dx1847-home .atmo-dropdown .atmo-dropdown-title > b,
html body.dx1847-home .atmo-dropdown > a,
html body.dx1847-home .atmo-dropdown > a strong,
html body.dx1847-home .atmo-dropdown > a small {
  color:#f7fbff !important; -webkit-text-fill-color:#f7fbff !important;
}
html body.dx1847-home .atmo-dropdown > a small { color:rgba(247,251,255,.76) !important; -webkit-text-fill-color:rgba(247,251,255,.76) !important; }

/* 3. Glass CTAs are fully styled before reveal/content-visibility activates. */
html body .dx11-cta,
html body .atmo-final-cta,
html body .dx-capabilities-close { content-visibility:visible !important; contain:none !important; }
html body .dx11-button-ghost,
html body .dx11-cta-actions a,
html body .atmo-final-actions a,
html body .dx-capabilities-close .atmo-button,
html body .dx-about-cta .atmo-button {
  background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.012)) !important;
  background-color:rgba(8,29,39,.16) !important;
  border:1px solid rgba(255,255,255,.42) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10) !important;
  -webkit-backdrop-filter:blur(16px) saturate(108%) !important;
  backdrop-filter:blur(16px) saturate(108%) !important;
  transform:translateZ(0);
  isolation:isolate;
}
html body .atmo-reveal .dx11-button-ghost,
html body .atmo-reveal .atmo-button { -webkit-backdrop-filter:blur(16px) saturate(108%) !important; backdrop-filter:blur(16px) saturate(108%) !important; }

/* 4. Sound gate: real equalizer bars, no square. */
html body .atmo-sound-gate .atmo-sound-bars {
  display:flex !important; align-items:center !important; justify-content:center !important; gap:2px !important;
  width:16px !important; height:16px !important; padding:0 !important; margin:0 !important;
  background:transparent !important; background-color:transparent !important; border:0 !important; box-shadow:none !important;
}
html body .atmo-sound-gate .atmo-sound-bars i {
  display:block !important; width:2px !important; min-width:2px !important; border:0 !important;
  border-radius:999px !important; background:#fff !important; background-color:#fff !important; box-shadow:none !important;
}
html body .atmo-sound-gate .atmo-sound-bars i:nth-child(1){height:7px !important;}
html body .atmo-sound-gate .atmo-sound-bars i:nth-child(2){height:13px !important;}
html body .atmo-sound-gate .atmo-sound-bars i:nth-child(3){height:9px !important;}
html body .atmo-sound-gate:hover .atmo-sound-bars,
html body .atmo-sound-gate.dx-sound-gate-hold .atmo-sound-bars { background:transparent !important; background-color:transparent !important; }

/* 5. Canonical Back to Top. Old controls are hidden; the new control owns behavior. */
html body > button.back-to-top,
html body .dx1846-back-to-top { display:none !important; pointer-events:none !important; }
html body > button.dx1847-back-to-top {
  position:fixed !important;
  left:50% !important; right:auto !important; top:auto !important;
  bottom:max(86px,calc(env(safe-area-inset-bottom,0px) + 86px)) !important;
  width:58px !important; height:58px !important;
  display:grid !important; place-items:center !important;
  padding:0 !important; margin:0 !important;
  border:1px solid rgba(255,255,255,.34) !important;
  border-radius:50% !important;
  color:#f7fbff !important; -webkit-text-fill-color:#f7fbff !important;
  background:rgba(7,27,37,.10) !important;
  box-shadow:none !important;
  -webkit-backdrop-filter:blur(14px) saturate(108%) !important;
  backdrop-filter:blur(14px) saturate(108%) !important;
  transform:translate3d(-50%,28px,0) !important;
  opacity:0 !important; visibility:hidden !important; pointer-events:none !important;
  z-index:2147483645 !important;
  transition:opacity .32s ease,transform .42s cubic-bezier(.22,.8,.22,1),border-color .25s ease !important;
}
html body > button.dx1847-back-to-top.is-visible {
  opacity:1 !important; visibility:visible !important; pointer-events:auto !important;
  transform:translate3d(-50%,0,0) !important;
}
html body > button.dx1847-back-to-top.is-over-footer { bottom:max(116px,calc(env(safe-area-inset-bottom,0px) + 116px)) !important; }
html body > button.dx1847-back-to-top:hover { transform:translate3d(-50%,-3px,0) !important; background:rgba(7,27,37,.10) !important; box-shadow:none !important; }
html body > button.dx1847-back-to-top span { font-size:28px !important; line-height:1 !important; }

/* 6. Company card typography and actions. */
html body .dx11-company-body,
html body .dx-directory-card-copy { text-align:center !important; }
html body .dx11-company-relation,
html body .dx-directory-card-copy > span,
html body .dx11-company-body h3,
html body .dx-directory-card-copy h3 { display:block !important; width:100% !important; text-align:center !important; }
html body .dx11-company-body h3,
html body .dx-directory-card-copy h3 {
  white-space:nowrap !important;
  font-size:clamp(11px,.90vw,16px) !important;
  line-height:1.2 !important;
  letter-spacing:-.02em !important;
}
html body .dx11-company-body p,
html body .dx-directory-card-copy p {
  text-align:center !important;
  text-wrap:balance !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
  hyphens:none !important;
  line-height:1.48 !important;
}
html body .dx11-company-actions,
html body .dx-directory-actions { justify-content:center !important; align-items:center !important; text-align:center !important; }
html body .dx11-company-actions > a:only-child,
html body .dx-directory-actions > a:only-child { margin-inline:auto !important; }

/* Company Directory final CTA: opposite highlight, always white type on hover. */
html body .dx-company-directory-page .atmo-final-actions .atmo-button:hover {
  background:#173b4b !important; background-color:#173b4b !important;
  color:#fff !important; -webkit-text-fill-color:#fff !important;
  border-color:#173b4b !important;
}
/* About final CTA: requested white highlight with dark text. */
html body .dx-about-page .dx1847-about-primary {
  background:#f7fbff !important; background-color:#f7fbff !important;
  color:#173b4b !important; -webkit-text-fill-color:#173b4b !important;
  border-color:#f7fbff !important;
}

/* 7. 404 Return Home: outlined white by default; transparent hover with text-only light. */
html body .dx-simple-404-actions .atmo-button {
  background:transparent !important; background-color:transparent !important;
  color:#fff !important; -webkit-text-fill-color:#fff !important;
  border:1px solid rgba(255,255,255,.72) !important;
  box-shadow:none !important;
}
html body .dx-simple-404-actions .atmo-button:hover {
  background:transparent !important; background-color:transparent !important;
  color:#d9e8ee !important; -webkit-text-fill-color:#d9e8ee !important;
  border-color:rgba(255,255,255,.88) !important;
  text-shadow:0 0 8px rgba(255,255,255,.42),0 0 18px rgba(255,255,255,.18) !important;
  transform:translateY(-2px) !important;
}

/* 8. Header controls: transparent at hover, small consistent lift, text-only subtle pulse. */
html body header.atmo-header .atmo-language-trigger,
html body header.atmo-header .atmo-sound-toggle,
html body header.atmo-header .atmo-header-cta {
  transition:transform .28s ease,color .25s ease,border-color .25s ease,text-shadow .25s ease !important;
}
html body header.atmo-header .atmo-language-trigger:hover,
html body header.atmo-header .atmo-sound-toggle:hover,
html body header.atmo-header .atmo-header-cta:hover {
  transform:translateY(-2px) !important;
  background-color:transparent !important;
  box-shadow:none !important;
}
html body header.atmo-header .atmo-header-cta:hover {
  animation:dx1847HeaderTextGlow 3.2s ease-in-out infinite !important;
}
@keyframes dx1847HeaderTextGlow {
  0%,100%{text-shadow:0 0 0 currentColor;}
  50%{text-shadow:0 0 8px currentColor;}
}

/* 9. New Scroll to Explore loop: label -> rounded arrows -> label. */
html body .dx-scroll-invitation,
html body .dx-about-scroll-cue {
  min-width:210px !important;
  height:74px !important;
  padding:0 24px !important;
  display:grid !important;
  place-items:center !important;
  overflow:hidden !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  -webkit-backdrop-filter:none !important;
  backdrop-filter:none !important;
}
html body .dx1847-scroll-label,
html body .dx1847-scroll-arrows { grid-area:1 / 1 !important; }
html body .dx1847-scroll-label {
  display:block !important;
  white-space:nowrap !important;
  text-transform:uppercase !important;
  letter-spacing:.18em !important;
  font-weight:700 !important;
  font-size:11px !important;
  animation:dx1847ScrollLabel 6.4s ease-in-out infinite !important;
}
html body .dx1847-scroll-arrows {
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:1px !important;
  opacity:0;
  animation:dx1847ScrollArrows 6.4s ease-in-out infinite !important;
}
html body .dx1847-scroll-arrows i {
  width:17px !important;
  height:17px !important;
  display:block !important;
  border-right:2px solid currentColor !important;
  border-bottom:2px solid currentColor !important;
  border-radius:0 0 4px 0 !important;
  transform:rotate(45deg) !important;
  opacity:.25;
  animation:dx1847Chevron 1.15s ease-in-out infinite !important;
}
html body .dx1847-scroll-arrows i:nth-child(2){animation-delay:.16s !important;}
html body .dx1847-scroll-arrows i:nth-child(3){animation-delay:.32s !important;}
@keyframes dx1847ScrollLabel {
  0%,28%{opacity:1;transform:translateY(0);}
  38%,66%{opacity:0;transform:translateY(22px);}
  72%{opacity:0;transform:translateY(-22px);}
  84%,100%{opacity:1;transform:translateY(0);}
}
@keyframes dx1847ScrollArrows {
  0%,28%{opacity:0;transform:translateY(-10px);}
  40%,62%{opacity:1;transform:translateY(0);}
  70%,100%{opacity:0;transform:translateY(15px);}
}
@keyframes dx1847Chevron {
  0%,100%{opacity:.18;transform:translateY(-2px) rotate(45deg);}
  50%{opacity:1;transform:translateY(2px) rotate(45deg);}
}

/* Mobile containment. */
@media(max-width:980px){
  html body .atmo-dropdown-title > span{font-size:10px !important;}
  html body .atmo-dropdown-title > b{font-size:12px !important;}
  html body .dx11-company-body h3,
  html body .dx-directory-card-copy h3{font-size:clamp(12px,3.4vw,17px) !important;}
  html body > button.dx1847-back-to-top{width:54px !important;height:54px !important;bottom:max(92px,calc(env(safe-area-inset-bottom,0px) + 92px)) !important;}
  html body > button.dx1847-back-to-top.is-over-footer{bottom:max(126px,calc(env(safe-area-inset-bottom,0px) + 126px)) !important;}
}
@media(prefers-reduced-motion:reduce){
  html body .dx1847-scroll-label,
  html body .dx1847-scroll-arrows,
  html body .dx1847-scroll-arrows i,
  html body header.atmo-header .atmo-header-cta:hover{animation:none !important;}
  html body .dx1847-scroll-arrows{display:none !important;}
  html body .dx1847-scroll-label{opacity:1 !important;transform:none !important;}
}

/* Exact CTA selectors override legacy high-specificity reveal rules. Do not transition blur. */
html body.denlyx-atmosphere-theme .dx11-cta .dx11-cta-actions .dx11-button-ghost,
html body.denlyx-atmosphere-theme .dx11-intro .dx11-intro-actions .dx11-button-ghost,
html body.denlyx-atmosphere-theme .atmo-final-cta .atmo-final-actions .atmo-button,
html body.denlyx-atmosphere-theme .dx-capabilities-close .atmo-button {
  background-image:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.012)) !important;
  background-color:rgba(8,29,39,.16) !important;
  border-color:rgba(255,255,255,.42) !important;
  color:#f7fbff !important;
  -webkit-text-fill-color:#f7fbff !important;
  -webkit-backdrop-filter:blur(16px) saturate(108%) !important;
  backdrop-filter:blur(16px) saturate(108%) !important;
  transition:transform .28s ease,color .25s ease,border-color .25s ease,background-color .25s ease !important;
}
html body.denlyx-atmosphere-theme .dx11-cta .dx11-cta-actions .dx11-button-ghost,
html body.denlyx-atmosphere-theme .dx11-intro .dx11-intro-actions .dx11-button-ghost,
html body.denlyx-atmosphere-theme .atmo-final-cta .atmo-final-actions .atmo-button,
html body.denlyx-atmosphere-theme .dx-capabilities-close .atmo-button {
  border:1px solid rgba(255,255,255,.42) !important;
}

/* Page-specific CTA states must follow the requested light-surface treatment. */
html body.dx-company-directory-page .atmo-final-cta .atmo-final-actions .atmo-button {
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  color:#173b4b !important;
  -webkit-text-fill-color:#173b4b !important;
  border:1px solid rgba(23,59,75,.48) !important;
  -webkit-backdrop-filter:blur(16px) saturate(108%) !important;
  backdrop-filter:blur(16px) saturate(108%) !important;
}
html body.dx-company-directory-page .atmo-final-cta .atmo-final-actions .atmo-button:hover {
  background:#173b4b !important;
  background-color:#173b4b !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border-color:#173b4b !important;
}
html body.dx-about-page .atmo-final-cta .atmo-final-actions .dx1847-about-primary {
  background:#f7fbff !important;
  background-color:#f7fbff !important;
  background-image:none !important;
  color:#173b4b !important;
  -webkit-text-fill-color:#173b4b !important;
  border:1px solid #f7fbff !important;
}

/* ========================================================================
   DENLYX v1.8.48 — authoritative scroll cue, CTA and interaction repairs.
   Loaded after the production bundle. These rules intentionally avoid
   changing page copy, imagery, layout structure or desktop/mobile intent.
   ======================================================================== */

/* Homepage dropdowns must be correct on the first painted frame. */
html body.home .atmo-dropdown .atmo-dropdown-title,
html body.home .atmo-dropdown .atmo-dropdown-title > span,
html body.home .atmo-dropdown .atmo-dropdown-title > b,
html body.home .atmo-dropdown > a,
html body.home .atmo-dropdown > a strong,
html body.home .atmo-dropdown > a small,
html body.home .atmo-language-popup,
html body.home .atmo-language-popup button,
html body.home .atmo-language-popup button span,
html body.home .atmo-language-popup button small,
html body.page-template-front-page .atmo-dropdown .atmo-dropdown-title,
html body.page-template-front-page .atmo-dropdown .atmo-dropdown-title > span,
html body.page-template-front-page .atmo-dropdown .atmo-dropdown-title > b,
html body.page-template-front-page .atmo-dropdown > a,
html body.page-template-front-page .atmo-dropdown > a strong,
html body.page-template-front-page .atmo-dropdown > a small,
html body.page-template-front-page .atmo-language-popup,
html body.page-template-front-page .atmo-language-popup button,
html body.page-template-front-page .atmo-language-popup button span,
html body.page-template-front-page .atmo-language-popup button small {
  color:#f7fbff !important;
  -webkit-text-fill-color:#f7fbff !important;
}
html body.home .atmo-dropdown > a small,
html body.home .atmo-language-popup button small,
html body.page-template-front-page .atmo-dropdown > a small,
html body.page-template-front-page .atmo-language-popup button small {
  color:rgba(247,251,255,.76) !important;
  -webkit-text-fill-color:rgba(247,251,255,.76) !important;
}

/* DENLYX NETWORK must remain one unbroken first line. */
html body .atmo-dropdown-title > span {
  display:inline-flex !important;
  flex-wrap:nowrap !important;
  width:max-content !important;
  max-width:100% !important;
  white-space:nowrap !important;
  word-break:keep-all !important;
  overflow-wrap:normal !important;
  font-size:clamp(9px,.67vw,11px) !important;
  letter-spacing:.095em !important;
}
html body .atmo-dropdown-title > b {
  white-space:nowrap !important;
  font-size:clamp(11px,.80vw,13px) !important;
}
html body .atmo-dropdown > a small { font-weight:400 !important; }

/* Header controls: transparent glass at rest and on hover. Text never flips
   to a white-filled pill. Only a small lift and restrained text glow remain. */
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-cta,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-cta:hover,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-cta:focus-visible {
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  filter:none !important;
  -webkit-backdrop-filter:blur(12px) saturate(106%) !important;
  backdrop-filter:blur(12px) saturate(106%) !important;
  color:var(--dx1847-header-fg,currentColor) !important;
  -webkit-text-fill-color:var(--dx1847-header-fg,currentColor) !important;
}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-cta:hover,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-cta:focus-visible {
  transform:translateY(-2px) !important;
  animation:dx1848HeaderTextPulse 3.6s ease-in-out infinite !important;
}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger:hover,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle:hover {
  transform:translateY(-2px) !important;
}
@keyframes dx1848HeaderTextPulse {
  0%,100% { text-shadow:0 0 0 currentColor; }
  50% { text-shadow:0 0 7px currentColor; }
}

/* Discuss-a-project glass is present before any reveal class animates. */
html body.denlyx-atmosphere-theme .dx1848-discuss-cta,
html body.denlyx-atmosphere-theme .dx1848-discuss-cta.atmo-button,
html body.denlyx-atmosphere-theme .atmo-reveal .dx1848-discuss-cta {
  position:relative !important;
  isolation:isolate !important;
  color:#f7fbff !important;
  -webkit-text-fill-color:#f7fbff !important;
  background:rgba(7,27,37,.74) !important;
  background-color:rgba(7,27,37,.74) !important;
  background-image:linear-gradient(135deg,rgba(255,255,255,.09),rgba(255,255,255,.018)) !important;
  border:1px solid rgba(255,255,255,.50) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12) !important;
  -webkit-backdrop-filter:blur(18px) saturate(110%) !important;
  backdrop-filter:blur(18px) saturate(110%) !important;
  transition:transform .28s cubic-bezier(.2,.8,.2,1),border-color .25s ease,background-color .25s ease !important;
  will-change:transform !important;
}
html body.denlyx-atmosphere-theme .dx1848-discuss-cta:hover,
html body.denlyx-atmosphere-theme .dx1848-discuss-cta:focus-visible {
  color:#f7fbff !important;
  -webkit-text-fill-color:#f7fbff !important;
  background:rgba(7,27,37,.82) !important;
  background-color:rgba(7,27,37,.82) !important;
  background-image:linear-gradient(135deg,rgba(255,255,255,.11),rgba(255,255,255,.025)) !important;
  transform:translateY(-3px) scale(1.025) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14) !important;
}

/* ------------------------------------------------------------------------
   Scroll to Explore: transparent text -> soft float -> rounded double
   chevrons -> text. No frame, line, glow, background or decorative panel.
   ------------------------------------------------------------------------ */
html body .dx-scroll-invitation,
html body .dx-about-scroll-cue {
  --arrow-color:currentColor;
  position:absolute;
  min-width:220px !important;
  width:auto !important;
  height:82px !important;
  padding:0 20px !important;
  display:grid !important;
  place-items:center !important;
  overflow:visible !important;
  border:0 !important;
  outline:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  filter:none !important;
  -webkit-backdrop-filter:none !important;
  backdrop-filter:none !important;
  -webkit-tap-highlight-color:transparent !important;
  transition:opacity .72s ease,transform .72s cubic-bezier(.22,.8,.22,1),visibility .72s step-end !important;
}
html body .dx-scroll-invitation::before,
html body .dx-scroll-invitation::after,
html body .dx-about-scroll-cue::before,
html body .dx-about-scroll-cue::after {
  content:none !important;
  display:none !important;
  border:0 !important;
  width:0 !important;
  height:0 !important;
}
html body [data-header-tone="dark"] .dx-scroll-invitation,
html body [data-header-tone="dark"] .dx-about-scroll-cue,
html body .dx11-intro .dx-scroll-invitation {
  color:#f7fbff !important;
  --arrow-color:#f7fbff;
}
html body [data-header-tone="light"] .dx-scroll-invitation,
html body [data-header-tone="light"] .dx-about-scroll-cue {
  color:#173b4b !important;
  --arrow-color:#173b4b;
}
html body .dx1848-scroll-label,
html body .dx1848-scroll-chevrons {
  grid-area:1 / 1 !important;
  pointer-events:none !important;
}
html body .dx1848-scroll-label {
  display:block !important;
  white-space:nowrap !important;
  text-transform:uppercase !important;
  letter-spacing:.18em !important;
  font-weight:700 !important;
  font-size:11px !important;
  line-height:1 !important;
  animation:dx1848ScrollLabel 8s cubic-bezier(.45,0,.2,1) infinite !important;
  will-change:transform,opacity !important;
}
html body .dx1848-scroll-chevrons {
  width:54px !important;
  height:66px !important;
  display:grid !important;
  place-items:center !important;
  opacity:0;
  animation:dx1848ChevronStage 8s ease-in-out infinite !important;
  will-change:transform,opacity !important;
}
html body .dx1848-scroll-chevrons svg {
  width:54px !important;
  height:66px !important;
  display:block !important;
  overflow:visible !important;
}
html body .dx1848-scroll-chevrons path {
  fill:none !important;
  stroke:var(--arrow-color,currentColor) !important;
  stroke-width:5 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
  vector-effect:non-scaling-stroke !important;
  transform-box:fill-box !important;
  transform-origin:center !important;
  will-change:transform,opacity !important;
}
html body .dx1848-scroll-chevrons .dx1848-chevron-one {
  animation:dx1848ChevronOne 8s cubic-bezier(.45,0,.2,1) infinite !important;
}
html body .dx1848-scroll-chevrons .dx1848-chevron-two {
  animation:dx1848ChevronTwo 8s cubic-bezier(.45,0,.2,1) infinite !important;
}
@keyframes dx1848ScrollLabel {
  0%   {opacity:0;transform:translate3d(0,-14px,0);}
  8%   {opacity:1;transform:translate3d(0,0,0);}
  19%  {opacity:1;transform:translate3d(0,-2px,0);}
  30%  {opacity:1;transform:translate3d(0,2px,0);}
  41%  {opacity:1;transform:translate3d(0,-1px,0);}
  49%  {opacity:1;transform:translate3d(0,0,0);}
  58%  {opacity:0;transform:translate3d(0,18px,0);}
  88%  {opacity:0;transform:translate3d(0,-14px,0);}
  100% {opacity:0;transform:translate3d(0,-14px,0);}
}
@keyframes dx1848ChevronStage {
  0%,52% {opacity:0;transform:translate3d(0,-5px,0);}
  58%,84% {opacity:1;transform:translate3d(0,0,0);}
  92%,100% {opacity:0;transform:translate3d(0,10px,0);}
}
@keyframes dx1848ChevronOne {
  0%,52% {opacity:0;transform:translate3d(0,-10px,0);}
  61% {opacity:.92;transform:translate3d(0,0,0);}
  72% {opacity:1;transform:translate3d(0,6px,0);}
  82%,100% {opacity:0;transform:translate3d(0,20px,0);}
}
@keyframes dx1848ChevronTwo {
  0%,61% {opacity:0;transform:translate3d(0,-10px,0);}
  70% {opacity:.88;transform:translate3d(0,0,0);}
  81% {opacity:1;transform:translate3d(0,6px,0);}
  92%,100% {opacity:0;transform:translate3d(0,20px,0);}
}
html body .dx-scroll-invitation.is-hidden,
html body .dx-about-scroll-cue.is-hidden,
html body .dx-scroll-invitation.dx1848-cue-dismissed,
html body .dx-about-scroll-cue.dx1848-cue-dismissed {
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translate3d(0,16px,0) !important;
}
html body .dx-scroll-invitation.dx1848-cue-dismissed *,
html body .dx-about-scroll-cue.dx1848-cue-dismissed * {
  animation-play-state:paused !important;
}
html body .dx-scroll-invitation:focus,
html body .dx-scroll-invitation:focus-visible,
html body .dx-about-scroll-cue:focus,
html body .dx-about-scroll-cue:focus-visible {
  outline:0 !important;
  box-shadow:none !important;
}

/* Sound gate follows the section under it. Equalizer inherits the same text
   color. Hover adds only an opposite-color sweep; base text does not flip. */
html body .atmo-sound-gate[data-dx1848-tone="dark"] {
  --dx1848-gate-fg:#f7fbff;
  --dx1848-gate-sweep:#102e3c;
}
html body .atmo-sound-gate[data-dx1848-tone="light"] {
  --dx1848-gate-fg:#173b4b;
  --dx1848-gate-sweep:#ffffff;
}
html body .atmo-sound-gate,
html body .atmo-sound-gate button,
html body .atmo-sound-gate button b,
html body .atmo-sound-gate button small,
html body .atmo-sound-gate .atmo-sound-gate-close {
  color:var(--dx1848-gate-fg,#f7fbff) !important;
  -webkit-text-fill-color:var(--dx1848-gate-fg,#f7fbff) !important;
}
html body .atmo-sound-gate .atmo-sound-bars,
html body .atmo-sound-gate .atmo-sound-bars i,
html body .atmo-sound-gate:hover .atmo-sound-bars,
html body .atmo-sound-gate:hover .atmo-sound-bars i {
  color:var(--dx1848-gate-fg,#f7fbff) !important;
  background-color:var(--dx1848-gate-fg,#f7fbff) !important;
}
html body .atmo-sound-gate .atmo-sound-bars {
  background:transparent !important;
  background-color:transparent !important;
}
html body .atmo-sound-gate button[data-enable-sound] b {
  position:relative !important;
  display:inline-block !important;
  isolation:isolate !important;
}
html body .atmo-sound-gate button[data-enable-sound] b::after {
  content:attr(data-dx1848-label) !important;
  position:absolute !important;
  inset:0 !important;
  color:transparent !important;
  -webkit-text-fill-color:transparent !important;
  background:linear-gradient(135deg,transparent 28%,var(--dx1848-gate-sweep,#102e3c) 48%,transparent 68%) !important;
  background-size:240% 100% !important;
  background-position:140% 0 !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  opacity:0 !important;
  pointer-events:none !important;
}
html body .atmo-sound-gate:hover button[data-enable-sound] b::after,
html body .atmo-sound-gate.dx-sound-gate-hold button[data-enable-sound] b::after {
  opacity:.88 !important;
  animation:dx1848GateTextSweep 3s linear infinite !important;
}
@keyframes dx1848GateTextSweep {
  from {background-position:140% 0;}
  to {background-position:-140% 0;}
}

/* Back to Top is server-rendered and then owned by the v1.8.48 controller. */
html body > button.dx1847-back-to-top { display:none !important; pointer-events:none !important; }
html body > button.dx1848-back-to-top {
  position:fixed !important;
  left:50% !important;
  right:auto !important;
  top:auto !important;
  bottom:max(88px,calc(env(safe-area-inset-bottom,0px) + 88px)) !important;
  width:58px !important;
  height:58px !important;
  display:grid !important;
  place-items:center !important;
  padding:0 !important;
  margin:0 !important;
  border:1px solid rgba(255,255,255,.36) !important;
  border-radius:50% !important;
  color:#f7fbff !important;
  -webkit-text-fill-color:#f7fbff !important;
  background:rgba(7,27,37,.18) !important;
  box-shadow:none !important;
  -webkit-backdrop-filter:blur(14px) saturate(108%) !important;
  backdrop-filter:blur(14px) saturate(108%) !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translate3d(-50%,24px,0) !important;
  transition:opacity .3s ease,transform .4s cubic-bezier(.22,.8,.22,1),bottom .3s ease !important;
  z-index:2147483645 !important;
}
html body > button.dx1848-back-to-top.is-visible {
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translate3d(-50%,0,0) !important;
}
html body > button.dx1848-back-to-top.is-over-footer {
  bottom:max(132px,calc(env(safe-area-inset-bottom,0px) + 132px)) !important;
}
html body > button.dx1848-back-to-top:hover {
  transform:translate3d(-50%,-3px,0) !important;
  background:rgba(7,27,37,.18) !important;
  box-shadow:none !important;
}
html body > button.dx1848-back-to-top span { font-size:28px !important; line-height:1 !important; }

@media(max-width:980px) {
  html body .atmo-dropdown-title > span { font-size:9px !important; letter-spacing:.075em !important; }
  html body .atmo-dropdown-title > b { font-size:11px !important; }
  html body .dx-scroll-invitation,
  html body .dx-about-scroll-cue { min-width:196px !important; height:76px !important; }
  html body .dx1848-scroll-chevrons,
  html body .dx1848-scroll-chevrons svg { width:48px !important; height:60px !important; }
  html body > button.dx1848-back-to-top {
    width:54px !important;
    height:54px !important;
    bottom:max(94px,calc(env(safe-area-inset-bottom,0px) + 94px)) !important;
  }
  html body > button.dx1848-back-to-top.is-over-footer {
    bottom:max(138px,calc(env(safe-area-inset-bottom,0px) + 138px)) !important;
  }
}

@media(prefers-reduced-motion:reduce) {
  html body .dx1848-scroll-label,
  html body .dx1848-scroll-chevrons,
  html body .dx1848-scroll-chevrons path,
  html body .atmo-sound-gate button[data-enable-sound] b::after,
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-cta:hover {
    animation:none !important;
  }
  html body .dx1848-scroll-label { opacity:1 !important; transform:none !important; }
  html body .dx1848-scroll-chevrons { display:none !important; }
}

/* Preserve exact horizontal centering while legacy hover/hidden transforms are overridden. */
html body .dx-scroll-invitation,
html body .dx-about-scroll-cue,
html body .dx-scroll-invitation:hover,
html body .dx-scroll-invitation:focus-visible,
html body .dx-about-scroll-cue:hover,
html body .dx-about-scroll-cue:focus-visible {
  transform:translate3d(-50%,0,0) !important;
}
html body .dx-scroll-invitation.is-hidden,
html body .dx-about-scroll-cue.is-hidden,
html body .dx-scroll-invitation.dx1848-cue-dismissed,
html body .dx-about-scroll-cue.dx1848-cue-dismissed {
  transform:translate3d(-50%,16px,0) !important;
}

/* source: denlyx-v1849-final.css */
/* DENLYX v1.8.49 — verified repeated-fix layer.
   This file is loaded after all older production and correction bundles. */

/* -------------------------------------------------------------------------
   1. Header: permanently clean/transparent, no rail or transient line.
   ------------------------------------------------------------------------- */
html body.denlyx-atmosphere-theme header.atmo-header,
html body.denlyx-atmosphere-theme header.atmo-header.scrolled,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  border-top:0!important;
  border-bottom:0!important;
  outline:0!important;
  box-shadow:none!important;
  filter:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
html body.denlyx-atmosphere-theme header.atmo-header::before,
html body.denlyx-atmosphere-theme header.atmo-header::after,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner::before,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner::after{
  content:none!important;
  display:none!important;
  height:0!important;
  border:0!important;
  background:none!important;
  box-shadow:none!important;
}

/* Initial and dynamic header tones. */
html body header.atmo-header[data-dx-v1849-tone="dark"]{
  --dx1849-header-fg:#f7fbff;
  --dx1849-header-border:rgba(255,255,255,.52);
}
html body header.atmo-header[data-dx-v1849-tone="light"]{
  --dx1849-header-fg:#173b4b;
  --dx1849-header-border:rgba(23,59,75,.46);
}
html body header.atmo-header[data-dx-v1849-tone] .atmo-brand,
html body header.atmo-header[data-dx-v1849-tone] .atmo-brand span,
html body header.atmo-header[data-dx-v1849-tone] .atmo-nav .nav-link,
html body header.atmo-header[data-dx-v1849-tone] .dx-command-toggle,
html body header.atmo-header[data-dx-v1849-tone] .atmo-language-trigger,
html body header.atmo-header[data-dx-v1849-tone] .atmo-sound-toggle,
html body header.atmo-header[data-dx-v1849-tone] .atmo-sound-toggle .dx-sound-word,
html body header.atmo-header[data-dx-v1849-tone] .atmo-header-cta{
  color:var(--dx1849-header-fg)!important;
  -webkit-text-fill-color:var(--dx1849-header-fg)!important;
  border-color:var(--dx1849-header-border)!important;
}
html body header.atmo-header[data-dx-v1849-tone="dark"] .atmo-language-chevron path{stroke:#f7fbff!important}
html body header.atmo-header[data-dx-v1849-tone="light"] .atmo-language-chevron path{stroke:#173b4b!important}
html body header.atmo-header .atmo-sound-toggle .dx-sound-on{color:#20d991!important;-webkit-text-fill-color:#20d991!important}
html body header.atmo-header .atmo-sound-toggle .dx-sound-off{color:#ff7a76!important;-webkit-text-fill-color:#ff7a76!important}

/* Main-page first frame must already be white, including abbreviations. */
html body.home .atmo-dropdown,
html body.home .atmo-dropdown *,
html body.page-template-front-page .atmo-dropdown,
html body.page-template-front-page .atmo-dropdown *,
html body.home .atmo-language-popup,
html body.home .atmo-language-popup *,
html body.page-template-front-page .atmo-language-popup,
html body.page-template-front-page .atmo-language-popup *{
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
}
html body.home .atmo-dropdown small,
html body.home .atmo-language-popup small,
html body.page-template-front-page .atmo-dropdown small,
html body.page-template-front-page .atmo-language-popup small{
  color:rgba(247,251,255,.78)!important;
  -webkit-text-fill-color:rgba(247,251,255,.78)!important;
}
html body.home .atmo-language-trigger,
html body.page-template-front-page .atmo-language-trigger{
  border:1px solid rgba(255,255,255,.52)!important;
}

/* -------------------------------------------------------------------------
   2. Companies and language popups: first-frame and row-level contrast.
   ------------------------------------------------------------------------- */
html body .atmo-dropdown [data-dx-v1849-row-tone="dark"],
html body .atmo-dropdown [data-dx-v1849-row-tone="dark"] strong,
html body .atmo-dropdown [data-dx-v1849-row-tone="dark"] small,
html body .atmo-language-popup [data-dx-v1849-row-tone="dark"],
html body .atmo-language-popup [data-dx-v1849-row-tone="dark"] span,
html body .atmo-language-popup [data-dx-v1849-row-tone="dark"] small{
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
}
html body .atmo-dropdown [data-dx-v1849-row-tone="dark"] small,
html body .atmo-language-popup [data-dx-v1849-row-tone="dark"] small{
  color:rgba(247,251,255,.78)!important;
  -webkit-text-fill-color:rgba(247,251,255,.78)!important;
}
html body .atmo-dropdown [data-dx-v1849-row-tone="light"],
html body .atmo-dropdown [data-dx-v1849-row-tone="light"] strong,
html body .atmo-dropdown [data-dx-v1849-row-tone="light"] small,
html body .atmo-language-popup [data-dx-v1849-row-tone="light"],
html body .atmo-language-popup [data-dx-v1849-row-tone="light"] span,
html body .atmo-language-popup [data-dx-v1849-row-tone="light"] small{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
}
html body .atmo-dropdown [data-dx-v1849-row-tone="light"] small,
html body .atmo-language-popup [data-dx-v1849-row-tone="light"] small{
  color:rgba(23,59,75,.76)!important;
  -webkit-text-fill-color:rgba(23,59,75,.76)!important;
}

/* Exactly two lines: DENLYX NETWORK / explanation. */
html body .atmo-dropdown-title{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:4px!important;
}
html body .atmo-dropdown-title .dx-network-title{
  display:block!important;
  width:auto!important;
  max-width:100%!important;
  white-space:nowrap!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:650!important;
  letter-spacing:.09em!important;
  word-spacing:.18em!important;
}
html body .atmo-dropdown-title>b{
  display:block!important;
  white-space:nowrap!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:400!important;
  letter-spacing:0!important;
}

/* -------------------------------------------------------------------------
   3. Compact Menu/Sound controls: brighten only; never move vertically.
   ------------------------------------------------------------------------- */
html body .atmo-header.dx-compact .dx-command-toggle,
html body .atmo-header.dx-compact .atmo-sound-toggle{
  transform:none!important;
  translate:none!important;
  animation:none!important;
  transition:color .22s ease,border-color .22s ease,background-color .22s ease,filter .22s ease!important;
}
html body .atmo-header.dx-compact .dx-command-toggle:hover,
html body .atmo-header.dx-compact .dx-command-toggle:focus-visible,
html body .atmo-header.dx-compact .atmo-sound-toggle:hover,
html body .atmo-header.dx-compact .atmo-sound-toggle:focus-visible{
  transform:none!important;
  translate:none!important;
  animation:none!important;
  filter:brightness(1.16)!important;
}

/* -------------------------------------------------------------------------
   4. Discuss/Start project CTAs: glass on the very first frame; white hover.
   ------------------------------------------------------------------------- */
html body .dx1848-discuss-cta,
html body .dx1849-discuss-cta,
html body .atmo-reveal .dx1848-discuss-cta,
html body .atmo-reveal .dx1849-discuss-cta{
  content-visibility:visible!important;
  contain:none!important;
  opacity:1!important;
  isolation:isolate!important;
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
  background:linear-gradient(135deg,rgba(255,255,255,.10),rgba(255,255,255,.025)),rgba(7,27,37,.92)!important;
  background-color:rgba(7,27,37,.92)!important;
  border:1px solid rgba(255,255,255,.52)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14)!important;
  -webkit-backdrop-filter:blur(18px) saturate(110%)!important;
  backdrop-filter:blur(18px) saturate(110%)!important;
  transform:translate3d(0,0,0)!important;
  transition:transform .28s cubic-bezier(.2,.8,.2,1),background-color .24s ease,color .24s ease,border-color .24s ease!important;
}
html body .dx1848-discuss-cta:hover,
html body .dx1848-discuss-cta:focus-visible,
html body .dx1849-discuss-cta:hover,
html body .dx1849-discuss-cta:focus-visible{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  background:#f7fbff!important;
  background-color:#f7fbff!important;
  background-image:none!important;
  border-color:#f7fbff!important;
  transform:translate3d(0,-3px,0) scale(1.025)!important;
  box-shadow:none!important;
}

/* -------------------------------------------------------------------------
   5. Sound-entry banner: one adaptive color, real three-bar equalizer.
   ------------------------------------------------------------------------- */
html body .atmo-sound-gate[data-dx1849-tone="dark"]{
  --dx1849-gate-fg:#f7fbff;
  --dx1849-gate-sweep:#102e3c;
}
html body .atmo-sound-gate[data-dx1849-tone="light"]{
  --dx1849-gate-fg:#173b4b;
  --dx1849-gate-sweep:#ffffff;
}
html body .atmo-sound-gate,
html body .atmo-sound-gate button,
html body .atmo-sound-gate button b,
html body .atmo-sound-gate button small,
html body .atmo-sound-gate .atmo-sound-gate-close{
  color:var(--dx1849-gate-fg,#f7fbff)!important;
  -webkit-text-fill-color:var(--dx1849-gate-fg,#f7fbff)!important;
}
html body .atmo-sound-gate .atmo-sound-bars,
html body .atmo-sound-gate:hover .atmo-sound-bars,
html body .atmo-sound-gate.dx-sound-gate-hold .atmo-sound-bars{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:2px!important;
  width:16px!important;
  height:16px!important;
  padding:0!important;
  margin:0!important;
  background:none!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
html body .atmo-sound-gate .atmo-sound-bars i,
html body .atmo-sound-gate:hover .atmo-sound-bars i,
html body .atmo-sound-gate.dx-sound-gate-hold .atmo-sound-bars i{
  display:block!important;
  flex:0 0 2px!important;
  width:2px!important;
  min-width:2px!important;
  background:var(--dx1849-gate-fg,#f7fbff)!important;
  background-color:var(--dx1849-gate-fg,#f7fbff)!important;
  border:0!important;
  border-radius:999px!important;
  box-shadow:none!important;
}
html body .atmo-sound-gate .atmo-sound-bars i:nth-child(1){height:7px!important}
html body .atmo-sound-gate .atmo-sound-bars i:nth-child(2){height:13px!important}
html body .atmo-sound-gate .atmo-sound-bars i:nth-child(3){height:9px!important}
html body .atmo-sound-gate [data-enable-sound] b::after{
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  background:linear-gradient(135deg,transparent 28%,var(--dx1849-gate-sweep,#102e3c) 48%,transparent 68%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
}
html body .atmo-sound-gate:not(.is-pending):not(.is-hidden):not(.is-user-dismissed){
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}
html body .atmo-sound-gate.is-hidden,
html body .atmo-sound-gate.is-user-dismissed,
html body .atmo-sound-gate.is-pending{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* -------------------------------------------------------------------------
   6. Scroll-to-explore indicator: exact center on every page.
   ------------------------------------------------------------------------- */
html body .dx-scroll-invitation,
html body .dx-about-scroll-cue{
  left:50%!important;
  right:auto!important;
  margin-left:0!important;
  margin-right:0!important;
  transform:translate3d(-50%,0,0)!important;
  text-align:center!important;
}
html body .dx-scroll-invitation:hover,
html body .dx-scroll-invitation:focus-visible,
html body .dx-about-scroll-cue:hover,
html body .dx-about-scroll-cue:focus-visible{
  transform:translate3d(-50%,0,0)!important;
}
html body .dx-scroll-invitation.dx1848-cue-dismissed,
html body .dx-about-scroll-cue.dx1848-cue-dismissed,
html body .dx-scroll-invitation.is-hidden,
html body .dx-about-scroll-cue.is-hidden{
  transform:translate3d(-50%,16px,0)!important;
}
html body .dx1848-scroll-label,
html body .dx1848-scroll-chevrons{
  justify-self:center!important;
  align-self:center!important;
  margin-inline:auto!important;
}

/* -------------------------------------------------------------------------
   7. Canonical Back-to-Top: preserved by legacy cleanup and fully functional.
   ------------------------------------------------------------------------- */
html body>button.back-to-top.dx1849-back-to-top{
  position:fixed!important;
  left:50%!important;
  right:auto!important;
  top:auto!important;
  bottom:max(88px,calc(env(safe-area-inset-bottom,0px) + 88px))!important;
  width:58px!important;
  height:58px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  margin:0!important;
  border:1px solid rgba(255,255,255,.36)!important;
  border-radius:50%!important;
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
  background:rgba(7,27,37,.22)!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:blur(14px) saturate(108%)!important;
  backdrop-filter:blur(14px) saturate(108%)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translate3d(-50%,24px,0)!important;
  transition:opacity .3s ease,transform .4s cubic-bezier(.22,.8,.22,1),bottom .3s ease!important;
  z-index:2147483646!important;
}
html body>button.back-to-top.dx1849-back-to-top.is-visible{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translate3d(-50%,0,0)!important;
}
html body>button.back-to-top.dx1849-back-to-top.is-over-footer{
  bottom:max(132px,calc(env(safe-area-inset-bottom,0px) + 132px))!important;
}
html body>button.back-to-top.dx1849-back-to-top:hover{
  transform:translate3d(-50%,-3px,0)!important;
  background:rgba(7,27,37,.22)!important;
  box-shadow:none!important;
}
html body>button.back-to-top.dx1849-back-to-top span{font-size:28px!important;line-height:1!important}

/* -------------------------------------------------------------------------
   8. Requested page cleanup and alignment.
   ------------------------------------------------------------------------- */
html body .dx1849-denlyx-single-action,
html body .dx1849-404-single-action{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  width:100%!important;
  text-align:center!important;
}
html body .dx1849-denlyx-single-action>a,
html body .dx1849-404-single-action>a{margin-inline:auto!important}
html body .dx1849-404-single-action .atmo-button{
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
  background:transparent!important;
  border:1px solid rgba(255,255,255,.72)!important;
}
html body .dx1849-404-single-action .atmo-button:hover,
html body .dx1849-404-single-action .atmo-button:focus-visible{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  background:#f7fbff!important;
  border-color:#f7fbff!important;
}
html body .dx-contact-map-caption>span{
  font-size:14px!important;
  font-weight:800!important;
  letter-spacing:.16em!important;
}

/* Avoid old body-state rules re-showing the prompt after Sound is ON. */
html body.atmo-sound-on .atmo-sound-gate.is-hidden,
html body.atmo-sound-on .atmo-sound-gate.is-user-dismissed{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

@media(max-width:980px){
  html body .atmo-dropdown-title .dx-network-title{font-size:10px!important;letter-spacing:.075em!important}
  html body .atmo-dropdown-title>b{font-size:12px!important}
  html body>button.back-to-top.dx1849-back-to-top{
    width:54px!important;height:54px!important;
    bottom:max(94px,calc(env(safe-area-inset-bottom,0px) + 94px))!important;
  }
  html body>button.back-to-top.dx1849-back-to-top.is-over-footer{
    bottom:max(138px,calc(env(safe-area-inset-bottom,0px) + 138px))!important;
  }
}


/* ==========================================================================
   v1.8.49 acceptance-lock overrides
   These selectors intentionally outrank historical correction layers.
   ========================================================================== */

/* No header rail, panel, fill, or transient line in any tone/state. */
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-tone],
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-final-tone],
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1847-tone],
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1849-tone],
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-tone]:not(.dx-compact),
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-final-tone]:not(.dx-compact),
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1847-tone]:not(.dx-compact),
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1849-tone]:not(.dx-compact),
html body.denlyx-atmosphere-theme header.atmo-header.scrolled,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  border-top:0!important;
  border-bottom:0!important;
  outline:0!important;
  box-shadow:none!important;
  filter:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-tone]::before,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-tone]::after,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-final-tone]::before,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-final-tone]::after,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner::before,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner::after{
  content:none!important;
  display:none!important;
}

/* Main page popup copy and language codes are correct before any scroll event. */
html body.denlyx-atmosphere-theme.home .atmo-company-nav>.atmo-dropdown,
html body.denlyx-atmosphere-theme.home .atmo-company-nav>.atmo-dropdown *,
html body.denlyx-atmosphere-theme.page-template-front-page .atmo-company-nav>.atmo-dropdown,
html body.denlyx-atmosphere-theme.page-template-front-page .atmo-company-nav>.atmo-dropdown *,
html body.denlyx-atmosphere-theme.home [data-language-popup],
html body.denlyx-atmosphere-theme.home [data-language-popup] *,
html body.denlyx-atmosphere-theme.page-template-front-page [data-language-popup],
html body.denlyx-atmosphere-theme.page-template-front-page [data-language-popup] *{
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
}
html body.denlyx-atmosphere-theme.home .atmo-company-nav>.atmo-dropdown small,
html body.denlyx-atmosphere-theme.home [data-language-popup] small,
html body.denlyx-atmosphere-theme.page-template-front-page .atmo-company-nav>.atmo-dropdown small,
html body.denlyx-atmosphere-theme.page-template-front-page [data-language-popup] small{
  color:rgba(247,251,255,.80)!important;
  -webkit-text-fill-color:rgba(247,251,255,.80)!important;
}
html body.denlyx-atmosphere-theme.home .atmo-language-trigger,
html body.denlyx-atmosphere-theme.page-template-front-page .atmo-language-trigger{
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
  border:1px solid rgba(255,255,255,.62)!important;
  outline:0!important;
}

/* DENLYX NETWORK is exactly one visually consistent line. */
html body.denlyx-atmosphere-theme .atmo-dropdown-title>.dx-network-title{
  display:block!important;
  width:100%!important;
  white-space:nowrap!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  font-family:inherit!important;
  font-size:11px!important;
  font-weight:650!important;
  line-height:1.2!important;
  letter-spacing:.09em!important;
  word-spacing:.28em!important;
}
html body.denlyx-atmosphere-theme .atmo-dropdown-title>b{
  display:block!important;
  width:100%!important;
  white-space:nowrap!important;
  font-family:inherit!important;
  font-size:13px!important;
  font-weight:400!important;
  line-height:1.25!important;
}

/* Compact Menu/Sound controls stay physically fixed; hover only brightens. */
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions .dx-command-toggle,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions .atmo-sound-toggle,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions .dx-command-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions .dx-command-toggle:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions .atmo-sound-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions .atmo-sound-toggle:focus-visible{
  transform:none!important;
  translate:none!important;
  scale:none!important;
  rotate:none!important;
  animation:none!important;
  margin-top:0!important;
  margin-bottom:0!important;
  top:auto!important;
  filter:brightness(1.12)!important;
}
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions .dx-command-toggle,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions .atmo-sound-toggle{
  filter:none!important;
}

/* Discuss/Start project: fully painted dark glass before reveal code can run. */
html body.denlyx-atmosphere-theme a.dx1848-discuss-cta,
html body.denlyx-atmosphere-theme a.dx1849-discuss-cta,
html body.denlyx-atmosphere-theme .atmo-reveal a.dx1848-discuss-cta,
html body.denlyx-atmosphere-theme .atmo-reveal a.dx1849-discuss-cta,
html body.denlyx-atmosphere-theme .dx11-cta .dx11-cta-actions a.dx1848-discuss-cta,
html body.denlyx-atmosphere-theme .atmo-final-cta .atmo-final-actions a.dx1849-discuss-cta,
html body.denlyx-atmosphere-theme .dx-capabilities-close a.dx1849-discuss-cta{
  position:relative!important;
  isolation:isolate!important;
  content-visibility:visible!important;
  contain:none!important;
  opacity:1!important;
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
  background:linear-gradient(135deg,rgba(255,255,255,.10),rgba(255,255,255,.025)),rgba(7,27,37,.90)!important;
  background-color:rgba(7,27,37,.90)!important;
  background-image:linear-gradient(135deg,rgba(255,255,255,.10),rgba(255,255,255,.025))!important;
  border:1px solid rgba(255,255,255,.54)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.15)!important;
  -webkit-backdrop-filter:blur(18px) saturate(110%)!important;
  backdrop-filter:blur(18px) saturate(110%)!important;
  transform:translate3d(0,0,0)!important;
  transition:transform .28s cubic-bezier(.2,.8,.2,1),background-color .24s ease,color .24s ease,border-color .24s ease!important;
}
html body.denlyx-atmosphere-theme a.dx1848-discuss-cta::before,
html body.denlyx-atmosphere-theme a.dx1849-discuss-cta::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  border-radius:inherit!important;
  background:rgba(7,27,37,.34)!important;
  opacity:1!important;
  pointer-events:none!important;
}
html body.denlyx-atmosphere-theme a.dx1848-discuss-cta:hover,
html body.denlyx-atmosphere-theme a.dx1848-discuss-cta:focus-visible,
html body.denlyx-atmosphere-theme a.dx1849-discuss-cta:hover,
html body.denlyx-atmosphere-theme a.dx1849-discuss-cta:focus-visible{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  background:#f7fbff!important;
  background-color:#f7fbff!important;
  background-image:none!important;
  border-color:#f7fbff!important;
  transform:translate3d(0,-3px,0) scale(1.025)!important;
  box-shadow:none!important;
}
html body.denlyx-atmosphere-theme a.dx1848-discuss-cta:hover::before,
html body.denlyx-atmosphere-theme a.dx1849-discuss-cta:hover::before,
html body.denlyx-atmosphere-theme a.dx1848-discuss-cta:focus-visible::before,
html body.denlyx-atmosphere-theme a.dx1849-discuss-cta:focus-visible::before{
  opacity:0!important;
}

/* Music prompt: title, subtitle, close icon and equalizer share one tone. */
html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx1849-tone="dark"]{
  --dx1849-gate-fg:#f7fbff!important;
  --dx1849-gate-sweep:#102e3c!important;
}
html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx1849-tone="light"]{
  --dx1849-gate-fg:#173b4b!important;
  --dx1849-gate-sweep:#ffffff!important;
}
html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx1849-tone] [data-enable-sound],
html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx1849-tone] [data-enable-sound] b,
html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx1849-tone] [data-enable-sound] small,
html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx1849-tone] .atmo-sound-gate-close{
  color:var(--dx1849-gate-fg)!important;
  -webkit-text-fill-color:var(--dx1849-gate-fg)!important;
}
html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx1849-tone] .atmo-sound-bars,
html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx1849-tone]:hover .atmo-sound-bars,
html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx1849-tone].dx-sound-gate-hold .atmo-sound-bars{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:2px!important;
  flex:0 0 16px!important;
  width:16px!important;
  min-width:16px!important;
  max-width:16px!important;
  height:16px!important;
  min-height:16px!important;
  max-height:16px!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  box-shadow:none!important;
  filter:none!important;
  transform:none!important;
}
html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx1849-tone] .atmo-sound-bars>i,
html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx1849-tone]:hover .atmo-sound-bars>i,
html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx1849-tone].dx-sound-gate-hold .atmo-sound-bars>i{
  display:block!important;
  flex:0 0 2px!important;
  width:2px!important;
  min-width:2px!important;
  max-width:2px!important;
  padding:0!important;
  margin:0!important;
  background:var(--dx1849-gate-fg)!important;
  background-color:var(--dx1849-gate-fg)!important;
  background-image:none!important;
  border:0!important;
  border-radius:999px!important;
  outline:0!important;
  box-shadow:none!important;
  transform:none!important;
}
html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx1849-tone] .atmo-sound-bars>i:nth-child(1){height:7px!important}
html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx1849-tone] .atmo-sound-bars>i:nth-child(2){height:13px!important}
html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx1849-tone] .atmo-sound-bars>i:nth-child(3){height:9px!important}
html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx1849-tone] [data-enable-sound] b::after{
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  background:linear-gradient(135deg,transparent 28%,var(--dx1849-gate-sweep) 48%,transparent 68%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
}

/* Cue uses the whole first-section width so label and chevrons are truly centered. */
html body.denlyx-atmosphere-theme .dx-scroll-invitation,
html body.denlyx-atmosphere-theme .dx-about-scroll-cue{
  left:0!important;
  right:0!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding-inline:0!important;
  transform:none!important;
  display:grid!important;
  place-items:center!important;
  text-align:center!important;
}
html body.denlyx-atmosphere-theme .dx-scroll-invitation:hover,
html body.denlyx-atmosphere-theme .dx-scroll-invitation:focus-visible,
html body.denlyx-atmosphere-theme .dx-about-scroll-cue:hover,
html body.denlyx-atmosphere-theme .dx-about-scroll-cue:focus-visible{
  transform:none!important;
}
html body.denlyx-atmosphere-theme .dx-scroll-invitation.dx1848-cue-dismissed,
html body.denlyx-atmosphere-theme .dx-about-scroll-cue.dx1848-cue-dismissed,
html body.denlyx-atmosphere-theme .dx-scroll-invitation.is-hidden,
html body.denlyx-atmosphere-theme .dx-about-scroll-cue.is-hidden{
  transform:translate3d(0,16px,0)!important;
}
html body.denlyx-atmosphere-theme .dx1848-scroll-label,
html body.denlyx-atmosphere-theme .dx1848-scroll-chevrons{
  grid-area:1/1!important;
  justify-self:center!important;
  align-self:center!important;
  margin-inline:auto!important;
}

/* Canonical Back-to-Top remains visible and clickable above every footer. */
html body.denlyx-atmosphere-theme>button.back-to-top.dx1849-back-to-top,
html body.denlyx-atmosphere-theme>button[data-dx-canonical-top].dx1849-back-to-top{
  display:grid!important;
  position:fixed!important;
  left:50%!important;
  right:auto!important;
  top:auto!important;
  bottom:max(88px,calc(env(safe-area-inset-bottom,0px) + 88px))!important;
  width:58px!important;
  height:58px!important;
  min-width:58px!important;
  min-height:58px!important;
  place-items:center!important;
  z-index:2147483646!important;
}
html body.denlyx-atmosphere-theme>button.back-to-top.dx1849-back-to-top.is-visible,
html body.denlyx-atmosphere-theme>button[data-dx-canonical-top].dx1849-back-to-top.is-visible{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

@media(max-width:980px){
  html body.denlyx-atmosphere-theme .atmo-dropdown-title>.dx-network-title{font-size:10px!important;word-spacing:.22em!important}
  html body.denlyx-atmosphere-theme .atmo-dropdown-title>b{font-size:12px!important}
}

/* Final specificity lock for the exact CTA elements used in the templates. */
html body.denlyx-atmosphere-theme .atmo-reveal a.atmo-button.dx1848-discuss-cta,
html body.denlyx-atmosphere-theme .atmo-reveal a.atmo-button.dx1849-discuss-cta,
html body.denlyx-atmosphere-theme .dx11-intro .dx11-intro-actions a.dx11-button-ghost.dx1848-discuss-cta,
html body.denlyx-atmosphere-theme .dx11-cta .dx11-cta-actions a.dx11-button-ghost.dx1849-discuss-cta,
html body.denlyx-atmosphere-theme .atmo-final-cta .atmo-final-actions a.atmo-button.dx1849-discuss-cta,
html body.denlyx-atmosphere-theme .dx-capabilities-close a.atmo-button.dx1849-discuss-cta{
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
  background:linear-gradient(135deg,rgba(255,255,255,.10),rgba(255,255,255,.025)),rgba(7,27,37,.90)!important;
  background-color:rgba(7,27,37,.90)!important;
  background-image:linear-gradient(135deg,rgba(255,255,255,.10),rgba(255,255,255,.025))!important;
  border-color:rgba(255,255,255,.54)!important;
  -webkit-backdrop-filter:blur(18px) saturate(110%)!important;
  backdrop-filter:blur(18px) saturate(110%)!important;
  transform:translate3d(0,0,0)!important;
}
html body.denlyx-atmosphere-theme .atmo-reveal a.atmo-button.dx1848-discuss-cta:hover,
html body.denlyx-atmosphere-theme .atmo-reveal a.atmo-button.dx1848-discuss-cta:focus-visible,
html body.denlyx-atmosphere-theme .atmo-reveal a.atmo-button.dx1849-discuss-cta:hover,
html body.denlyx-atmosphere-theme .atmo-reveal a.atmo-button.dx1849-discuss-cta:focus-visible,
html body.denlyx-atmosphere-theme .atmo-final-cta .atmo-final-actions a.atmo-button.dx1849-discuss-cta:hover,
html body.denlyx-atmosphere-theme .dx-capabilities-close a.atmo-button.dx1849-discuss-cta:hover{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  background:#f7fbff!important;
  background-color:#f7fbff!important;
  background-image:none!important;
  border-color:#f7fbff!important;
  transform:translate3d(0,-3px,0) scale(1.025)!important;
}

/* source: denlyx-v1850-production.css */
/* DENLYX production v0.2.0 / visual source v1.8.50.
   Acceptance layer for 7272026 - 5. Loaded last. */

/* Top EN, Sound and Start Project: same clear glass, no outline at rest.
   Outline appears only on pointer/keyboard hover; no white fill flash. */
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-language-trigger,
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-sound-toggle,
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-header-cta{
  background:rgba(255,255,255,.045)!important;
  background-image:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.012))!important;
  border-color:transparent!important;
  outline:0!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
  -webkit-backdrop-filter:blur(14px) saturate(108%)!important;
  backdrop-filter:blur(14px) saturate(108%)!important;
  transform:none!important;
  filter:none!important;
  transition:border-color .22s ease,filter .22s ease,color .22s ease,background-color .22s ease!important;
}
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-language-trigger:hover,
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-language-trigger:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-sound-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-sound-toggle:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-header-cta:hover,
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-header-cta:focus-visible{
  background:rgba(255,255,255,.045)!important;
  background-image:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.012))!important;
  border-color:var(--dx1849-header-border,rgba(255,255,255,.52))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
  transform:none!important;
  filter:brightness(1.1)!important;
}
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-sound-toggle::before,
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-sound-toggle::after,
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-header-cta::before,
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-header-cta::after{
  opacity:0!important;background:none!important;box-shadow:none!important;
}

/* Compact header: two truly independent glass controls; remove outer capsule. */
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions{
  background:transparent!important;background-image:none!important;
  border:0!important;outline:0!important;box-shadow:none!important;
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
  padding:0!important;gap:8px!important;
}
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions::before,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions::after{
  content:none!important;display:none!important;
}
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle{
  background:rgba(255,255,255,.045)!important;
  background-image:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.012))!important;
  border:1px solid transparent!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
  -webkit-backdrop-filter:blur(14px) saturate(108%)!important;
  backdrop-filter:blur(14px) saturate(108%)!important;
  transform:none!important;animation:none!important;
}
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle:focus-visible{
  border-color:var(--dx1849-header-border,rgba(255,255,255,.52))!important;
  background:rgba(255,255,255,.045)!important;
  transform:none!important;filter:brightness(1.1)!important;
}

/* Homepage fourth-slide actions: both are glass from first paint, with equal lift.
   White fill is hover-only. */
html body.home .dx11-intro-actions .dx11-button,
html body.page-template-front-page .dx11-intro-actions .dx11-button,
html body.home .dx11-cta-actions .dx11-button,
html body.page-template-front-page .dx11-cta-actions .dx11-button{
  color:#f7fbff!important;-webkit-text-fill-color:#f7fbff!important;
  background:linear-gradient(135deg,rgba(255,255,255,.10),rgba(255,255,255,.025)),rgba(7,27,37,.90)!important;
  border:1px solid rgba(255,255,255,.52)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14)!important;
  -webkit-backdrop-filter:blur(18px) saturate(110%)!important;
  backdrop-filter:blur(18px) saturate(110%)!important;
  opacity:1!important;transform:translate3d(0,0,0)!important;
  transition:transform .28s cubic-bezier(.2,.8,.2,1),background-color .24s ease,color .24s ease!important;
}
html body.home .dx11-intro-actions .dx11-button:hover,
html body.home .dx11-intro-actions .dx11-button:focus-visible,
html body.page-template-front-page .dx11-intro-actions .dx11-button:hover,
html body.page-template-front-page .dx11-intro-actions .dx11-button:focus-visible,
html body.home .dx11-cta-actions .dx11-button:hover,
html body.home .dx11-cta-actions .dx11-button:focus-visible,
html body.page-template-front-page .dx11-cta-actions .dx11-button:hover,
html body.page-template-front-page .dx11-cta-actions .dx11-button:focus-visible{
  color:#173b4b!important;-webkit-text-fill-color:#173b4b!important;
  background:#f7fbff!important;background-image:none!important;
  border-color:#f7fbff!important;
  transform:translate3d(0,-3px,0) scale(1.025)!important;
}

/* Directory action links must settle back after click/focus. */
html body .dx-directory-actions a:active,
html body .dx-directory-actions a:focus:not(:focus-visible){
  transform:translate3d(0,0,0)!important;
}
html body .dx-directory-actions a:visited{top:auto!important;margin-top:0!important}

/* No Scroll to Explore cue on the 404 page. */
html body.error404 .dx-scroll-invitation,
html body.error404 .dx-about-scroll-cue{display:none!important}

/* Continuous chevrons, no pause/hold, maximum opacity 80%. */
html body .dx1848-scroll-chevrons{
  animation:dx1850ChevronStage 8s linear infinite!important;
}
html body .dx1848-scroll-chevrons .dx1848-chevron-one{
  animation:dx1850ChevronOne 8s cubic-bezier(.45,0,.2,1) infinite!important;
}
html body .dx1848-scroll-chevrons .dx1848-chevron-two{
  animation:dx1850ChevronTwo 8s cubic-bezier(.45,0,.2,1) infinite!important;
}
@keyframes dx1850ChevronStage{
  0%,51%{opacity:0;transform:translate3d(0,-5px,0)}
  56%{opacity:.8;transform:translate3d(0,0,0)}
  88%{opacity:.8;transform:translate3d(0,5px,0)}
  96%,100%{opacity:0;transform:translate3d(0,13px,0)}
}
@keyframes dx1850ChevronOne{
  0%,50%{opacity:0;transform:translate3d(0,-14px,0)}
  58%{opacity:.8;transform:translate3d(0,-4px,0)}
  69%{opacity:.8;transform:translate3d(0,6px,0)}
  81%{opacity:.34;transform:translate3d(0,17px,0)}
  88%,100%{opacity:0;transform:translate3d(0,25px,0)}
}
@keyframes dx1850ChevronTwo{
  0%,57%{opacity:0;transform:translate3d(0,-14px,0)}
  65%{opacity:.8;transform:translate3d(0,-4px,0)}
  77%{opacity:.8;transform:translate3d(0,7px,0)}
  89%{opacity:.32;transform:translate3d(0,18px,0)}
  96%,100%{opacity:0;transform:translate3d(0,25px,0)}
}

@media (hover:none){
  html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-language-trigger,
  html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-sound-toggle,
  html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-header-cta,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle{
    border-color:transparent!important;
  }
}


/* ========================================================================
   DENLYX production v0.2.1 — 7272026-6 + transient rectangle root correction.
   This remains the last stylesheet and deliberately overrides older visual
   experiments without removing approved content or behavior.
   ======================================================================== */

/* 1) Header transition root fix.
   The recorded flash was the old desktop header/header-actions glass surface
   being interpolated for one paint while dx-compact and dx-expanded swapped.
   All wrappers are permanently paint-free; only the individual controls paint. */
html body.denlyx-atmosphere-theme header.atmo-header,
html body.denlyx-atmosphere-theme header.atmo-header.scrolled,
html body.denlyx-atmosphere-theme header.atmo-header.dx-expanded,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact,
html body.denlyx-atmosphere-theme header.atmo-header[class*="header-on-"],
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border-color:transparent!important;
  outline:0!important;
  box-shadow:none!important;
  filter:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  mask:none!important;
  -webkit-mask:none!important;
}
html body.denlyx-atmosphere-theme header.atmo-header::before,
html body.denlyx-atmosphere-theme header.atmo-header::after,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner::before,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner::after,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions::before,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions::after{
  content:none!important;display:none!important;background:none!important;
  border:0!important;box-shadow:none!important;filter:none!important;
}
html body.denlyx-atmosphere-theme header.atmo-header,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner{
  transition-property:top,height,width,max-width,padding,gap,opacity,transform!important;
  will-change:auto!important;
}

/* 2) Language control. Idle and closed means no outline on every page/state.
   Hover, keyboard focus, or the actually open popup may show the outline. */
html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger,
html body.denlyx-atmosphere-theme header.atmo-header.scrolled .atmo-language-trigger,
html body.denlyx-atmosphere-theme header.atmo-header.dx-expanded .atmo-language-trigger,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-language-trigger{
  border:1px solid transparent!important;
  outline:0!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger:hover,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger[aria-expanded="true"]{
  border-color:var(--dx1849-header-border,rgba(255,255,255,.52))!important;
}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger[aria-expanded="false"]:not(:hover):not(:focus-visible){
  border-color:transparent!important;
}
/* Abbreviations always use exactly the same current foreground as the name. */
html body .atmo-language-popup button,
html body .atmo-language-popup button span,
html body .atmo-language-popup button small{
  color:inherit!important;
  -webkit-text-fill-color:currentColor!important;
  opacity:1!important;
}
html body.home .atmo-language-popup button small,
html body.page-template-front-page .atmo-language-popup button small{
  color:#f7fbff!important;-webkit-text-fill-color:#f7fbff!important;
}

/* 3) DENLYX NETWORK is guidance text, not a false button/card. */
html body .atmo-dropdown .atmo-dropdown-title{
  display:flex!important;flex-direction:column!important;align-items:center!important;
  justify-content:center!important;text-align:center!important;gap:5px!important;
  width:100%!important;min-height:0!important;margin:0 0 8px!important;
  padding:7px 10px 11px!important;background:transparent!important;
  background-image:none!important;border:0!important;border-radius:0!important;
  box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;
  pointer-events:none!important;cursor:default!important;
}
html body .atmo-dropdown .atmo-dropdown-title .dx-network-title,
html body .atmo-dropdown .atmo-dropdown-title>b{
  display:block!important;width:100%!important;text-align:center!important;margin:0!important;
}
html body .atmo-dropdown .atmo-dropdown-title .dx-network-title{
  white-space:nowrap!important;font-size:12px!important;line-height:1.2!important;
  font-weight:650!important;letter-spacing:.085em!important;word-spacing:.12em!important;
}
html body .atmo-dropdown .atmo-dropdown-title>b{
  white-space:normal!important;font-size:13px!important;line-height:1.28!important;font-weight:400!important;
}

/* 4) Compact controls are two independent glass pieces, never a third oval.
   No outline at rest or hover; hover only brightens and never moves. */
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions{
  border:0!important;border-radius:0!important;padding:0!important;gap:8px!important;
}
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle:focus-visible{
  border:0!important;outline:0!important;transform:none!important;translate:none!important;
  animation:none!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle:hover{
  filter:brightness(1.12)!important;
}

/* 5) Fourth-slide and standalone action pair: clear neutral glass from the first
   paint; both use the same hover/lift behavior. */
html body.home .dx11-intro-actions .dx11-button,
html body.page-template-front-page .dx11-intro-actions .dx11-button,
html body.home .dx11-cta-actions .dx11-button,
html body.page-template-front-page .dx11-cta-actions .dx11-button,
html body .dx1848-discuss-cta,
html body .dx1849-discuss-cta{
  content-visibility:visible!important;contain:none!important;opacity:1!important;
  color:#f7fbff!important;-webkit-text-fill-color:#f7fbff!important;
  background:linear-gradient(135deg,rgba(255,255,255,.085),rgba(255,255,255,.012))!important;
  background-color:rgba(255,255,255,.025)!important;
  border:1px solid rgba(255,255,255,.42)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10)!important;
  -webkit-backdrop-filter:blur(18px) saturate(108%)!important;
  backdrop-filter:blur(18px) saturate(108%)!important;
  transform:translate3d(0,0,0)!important;
  transition:transform .28s cubic-bezier(.2,.8,.2,1),background-color .22s ease,color .22s ease,border-color .22s ease,filter .22s ease!important;
}
html body.home .dx11-intro-actions .dx11-button:hover,
html body.page-template-front-page .dx11-intro-actions .dx11-button:hover,
html body.home .dx11-cta-actions .dx11-button:hover,
html body.page-template-front-page .dx11-cta-actions .dx11-button:hover,
html body .dx1848-discuss-cta:hover,
html body .dx1849-discuss-cta:hover,
html body.home .dx11-intro-actions .dx11-button:focus-visible,
html body.page-template-front-page .dx11-intro-actions .dx11-button:focus-visible,
html body.home .dx11-cta-actions .dx11-button:focus-visible,
html body.page-template-front-page .dx11-cta-actions .dx11-button:focus-visible,
html body .dx1848-discuss-cta:focus-visible,
html body .dx1849-discuss-cta:focus-visible{
  color:#173b4b!important;-webkit-text-fill-color:#173b4b!important;
  background:#f7fbff!important;background-image:none!important;border-color:#f7fbff!important;
  transform:translate3d(0,-3px,0) scale(1.025)!important;filter:none!important;
}

/* 6) Continuous chevrons with matching quick entrance and exit. */
html body .dx1848-scroll-chevrons{animation:dx1851ChevronStage 6.4s linear infinite!important;}
html body .dx1848-scroll-chevrons .dx1848-chevron-one{animation:dx1851ChevronOne 6.4s cubic-bezier(.45,0,.25,1) infinite!important;}
html body .dx1848-scroll-chevrons .dx1848-chevron-two{animation:dx1851ChevronTwo 6.4s cubic-bezier(.45,0,.25,1) infinite!important;}
@keyframes dx1851ChevronStage{
  0%,49%{opacity:0;transform:translate3d(0,-6px,0)}
  54%{opacity:.8;transform:translate3d(0,0,0)}
  76%{opacity:.8;transform:translate3d(0,5px,0)}
  81%,100%{opacity:0;transform:translate3d(0,12px,0)}
}
@keyframes dx1851ChevronOne{
  0%,48%{opacity:0;transform:translate3d(0,-13px,0)}
  54%{opacity:.8;transform:translate3d(0,-3px,0)}
  68%{opacity:.8;transform:translate3d(0,8px,0)}
  74%{opacity:0;transform:translate3d(0,19px,0)}
  75%,100%{opacity:0;transform:translate3d(0,22px,0)}
}
@keyframes dx1851ChevronTwo{
  0%,56%{opacity:0;transform:translate3d(0,-13px,0)}
  62%{opacity:.8;transform:translate3d(0,-3px,0)}
  76%{opacity:.8;transform:translate3d(0,8px,0)}
  82%{opacity:0;transform:translate3d(0,19px,0)}
  83%,100%{opacity:0;transform:translate3d(0,22px,0)}
}

/* 7) Company cards settle after activation even while the pointer remains over
   the action for a moment. */
html body .dx-directory-actions a.dx-click-settle,
html body .dx-directory-actions a.dx-click-settle:hover,
html body .dx-directory-actions a.dx-click-settle:focus,
html body .dx-directory-actions a:active,
html body .dx-directory-actions a:focus:not(:focus-visible){
  transform:translate3d(0,0,0)!important;translate:none!important;filter:none!important;
}

/* 8) Company Directory: remove the full-width cue hover rectangle and the
   scrolling fade/filter that washed out the opening copy. */
html body.dx-company-directory-page .dx-scroll-invitation,
html body.dx-company-directory-page .dx-about-scroll-cue,
html body.dx-company-directory-page .dx-scroll-invitation:hover,
html body.dx-company-directory-page .dx-about-scroll-cue:hover,
html body.dx-company-directory-page .dx-scroll-invitation:focus-visible,
html body.dx-company-directory-page .dx-about-scroll-cue:focus-visible{
  width:auto!important;min-width:196px!important;max-width:240px!important;
  background:transparent!important;background-image:none!important;border:0!important;
  outline:0!important;box-shadow:none!important;filter:none!important;
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
}
html body.dx-company-directory-page .dx-scroll-invitation::before,
html body.dx-company-directory-page .dx-scroll-invitation::after,
html body.dx-company-directory-page .dx-about-scroll-cue::before,
html body.dx-company-directory-page .dx-about-scroll-cue::after{content:none!important;display:none!important;}
html body.dx-company-directory-page .dx-directory .dx-directory-intro,
html body.dx-company-directory-page .dx-directory.cards-visible .dx-directory-intro{
  opacity:1!important;transform:none!important;filter:none!important;transition:none!important;
}

/* source: denlyx-v1851-production.css */
/* DENLYX production v0.2.3 / visual source v1.8.51.
   Acceptance layer for 7272026 - 7. Loaded after every older stylesheet. */

/* -------------------------------------------------------------------------
   1. Compact header: exactly two independent controls. The wrapper and every
      wrapper pseudo-element are permanently paint-free.
   ------------------------------------------------------------------------- */
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-inner,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  box-shadow:none!important;
  filter:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  padding-left:0!important;
  padding-right:0!important;
}
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-inner::before,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-inner::after,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions::before,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions::after{
  content:none!important;
  display:none!important;
}
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle{
  background:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.012)),rgba(8,29,39,.08)!important;
  border:1px solid transparent!important;
  border-radius:999px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10)!important;
  -webkit-backdrop-filter:blur(15px) saturate(108%)!important;
  backdrop-filter:blur(15px) saturate(108%)!important;
  transform:none!important;
  translate:none!important;
  animation:none!important;
}
/* Dark outline is used only while these two controls cross a light section. */
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact[data-dx-v1849-tone="light"] .dx-command-toggle,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact[data-dx-v1849-tone="light"] .atmo-sound-toggle,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact[data-dx-final-tone="light"] .dx-command-toggle,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact[data-dx-final-tone="light"] .atmo-sound-toggle{
  border-color:rgba(23,59,75,.40)!important;
}
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact[data-dx-v1849-tone="dark"] .dx-command-toggle,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact[data-dx-v1849-tone="dark"] .atmo-sound-toggle,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact[data-dx-final-tone="dark"] .dx-command-toggle,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact[data-dx-final-tone="dark"] .atmo-sound-toggle{
  border-color:transparent!important;
}
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle:focus-visible{
  transform:none!important;
  translate:none!important;
  filter:brightness(1.10)!important;
}

/* -------------------------------------------------------------------------
   2. Homepage fourth-slide buttons: Discuss a Project is an exact visual and
      interaction twin of Explore Companies, including first paint and lift.
   ------------------------------------------------------------------------- */
html body.home .dx11-intro-actions a.dx11-button,
html body.page-template-front-page .dx11-intro-actions a.dx11-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:48px!important;
  opacity:1!important;
  visibility:visible!important;
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
  background:linear-gradient(135deg,rgba(255,255,255,.09),rgba(255,255,255,.018)),rgba(7,27,37,.62)!important;
  border:1px solid rgba(255,255,255,.52)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12)!important;
  -webkit-backdrop-filter:blur(18px) saturate(110%)!important;
  backdrop-filter:blur(18px) saturate(110%)!important;
  transform:translate3d(0,0,0)!important;
  transition:transform .28s cubic-bezier(.2,.8,.2,1),background-color .22s ease,color .22s ease,border-color .22s ease!important;
}
html body.home .dx11-intro-actions a.dx11-button:hover,
html body.home .dx11-intro-actions a.dx11-button:focus-visible,
html body.page-template-front-page .dx11-intro-actions a.dx11-button:hover,
html body.page-template-front-page .dx11-intro-actions a.dx11-button:focus-visible{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  background:#f7fbff!important;
  background-image:none!important;
  border-color:#f7fbff!important;
  transform:translate3d(0,-3px,0) scale(1.025)!important;
}

/* -------------------------------------------------------------------------
   3. Faster smooth chevrons. There is no long hidden phase or process-like
      pause; the two strokes flow continuously with a short stagger.
   ------------------------------------------------------------------------- */
html body .dx1848-scroll-chevrons{
  opacity:.8!important;
  animation:none!important;
  transform:none!important;
}
html body .dx1848-scroll-chevrons .dx1848-chevron-one,
html body .dx1848-scroll-chevrons .dx1848-chevron-two{
  animation:dx1851ChevronFlow 1.65s cubic-bezier(.36,.05,.25,1) infinite!important;
  transform-origin:center!important;
}
html body .dx1848-scroll-chevrons .dx1848-chevron-two{
  animation-delay:.28s!important;
}
@keyframes dx1851ChevronFlow{
  0%{opacity:0;transform:translate3d(0,-7px,0)}
  18%{opacity:.8;transform:translate3d(0,-1px,0)}
  66%{opacity:.8;transform:translate3d(0,10px,0)}
  100%{opacity:0;transform:translate3d(0,22px,0)}
}

/* -------------------------------------------------------------------------
   4. Company Directory card activation. A clicked card returns to its resting
      position immediately and stays settled until the pointer leaves it.
   ------------------------------------------------------------------------- */
html body .dx-directory-card.dx-card-click-settle,
html body .dx-directory-card.dx-card-click-settle:hover,
html body .dx-directory-card.dx-card-click-settle:focus-within{
  z-index:1!important;
  transform:translate3d(0,0,0)!important;
  background:rgba(255,255,255,.42)!important;
  box-shadow:none!important;
}
html body .dx-directory-card.dx-card-click-settle .dx-directory-logo img,
html body .dx-directory-card.dx-card-click-settle:hover .dx-directory-logo img,
html body .dx-directory-card.dx-card-click-settle:focus-within .dx-directory-logo img{
  transform:none!important;
  filter:none!important;
}
html body .dx-directory-grid.dx-card-click-active .dx-directory-card:not(.dx-card-click-settle){
  opacity:1!important;
}

/* -------------------------------------------------------------------------
   5. Popup cleanup. DENLYX NETWORK has no decorative line above it; language
      rows have correct first-frame text/abbreviation color and no bottom line.
   ------------------------------------------------------------------------- */
html body .atmo-dropdown::before,
html body .atmo-dropdown::after,
html body .atmo-dropdown .atmo-dropdown-title::before,
html body .atmo-dropdown .atmo-dropdown-title::after{
  content:none!important;
  display:none!important;
  border:0!important;
  background:none!important;
  box-shadow:none!important;
}
html body .atmo-dropdown .atmo-dropdown-title{
  border-top:0!important;
  border-bottom:0!important;
  outline:0!important;
  box-shadow:none!important;
}
html body .atmo-language-popup button[data-language-option],
html body .atmo-language-popup button[data-language-option] span,
html body .atmo-language-popup button[data-language-option] small{
  -webkit-text-fill-color:currentColor!important;
  opacity:1!important;
}
html body .atmo-language-popup button[data-dx-v1851-row-tone="dark"],
html body .atmo-language-popup button[data-dx-v1851-row-tone="dark"] span,
html body .atmo-language-popup button[data-dx-v1851-row-tone="dark"] small{
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
}
html body .atmo-language-popup button[data-dx-v1851-row-tone="light"],
html body .atmo-language-popup button[data-dx-v1851-row-tone="light"] span,
html body .atmo-language-popup button[data-dx-v1851-row-tone="light"] small{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
}
html body .atmo-language-popup button[data-language-option]:last-child{
  border-bottom:0!important;
  box-shadow:none!important;
}
html body .atmo-language-popup button[data-language-option]:last-child::before,
html body .atmo-language-popup button[data-language-option]:last-child::after,
html body .atmo-language-popup::after{
  content:none!important;
  display:none!important;
}

/* Stale lock classes must never leave an invisible page-blocking layer. */
html:not(.dx-v1851-real-lock) body:not(.dx-project-modal-open) .dx-mobile-nav-backdrop:not(.is-open),
html:not(.dx-v1851-real-lock) body:not(.dx-project-modal-open) .dx-command-menu:not(.is-open){
  pointer-events:none!important;
}

@media (prefers-reduced-motion:reduce){
  html body .dx1848-scroll-chevrons .dx1848-chevron-one,
  html body .dx1848-scroll-chevrons .dx1848-chevron-two{animation:none!important;opacity:.8!important;transform:none!important}
}

/* source: denlyx-v1852-production.css */
/* DENLYX production v0.2.4 / visual source v1.8.52.
   Acceptance layer for 7272026 - 8(2). Loaded after every older stylesheet. */

/* -------------------------------------------------------------------------
   1. Compact header: no shared rectangle and no outlines around the two
      minimized controls. Menu and Sound remain separate glass buttons.
   ------------------------------------------------------------------------- */
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-inner,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  filter:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact::before,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact::after,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-inner::before,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-inner::after,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions::before,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions::after{
  content:none!important;
  display:none!important;
}
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle:focus-visible{
  border:0!important;
  outline:0!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
  transform:none!important;
  translate:none!important;
}

/* -------------------------------------------------------------------------
   2. Scroll invitation: one mutually exclusive timeline on every page.
      Text -> text gone -> chevrons -> chevrons gone -> text.
   ------------------------------------------------------------------------- */
html body .dx1848-scroll-label{
  animation:dx1852ScrollText 8s cubic-bezier(.42,0,.22,1) infinite!important;
  opacity:0!important;
  transform:translate3d(0,-8px,0)!important;
}
html body .dx1848-scroll-chevrons{
  animation:dx1852ChevronStage 8s ease-in-out infinite!important;
  opacity:0!important;
  transform:translate3d(0,-5px,0)!important;
}
html body .dx1848-scroll-chevrons .dx1848-chevron-one{
  animation:dx1852ChevronOne 8s cubic-bezier(.36,.05,.25,1) infinite!important;
}
html body .dx1848-scroll-chevrons .dx1848-chevron-two{
  animation:dx1852ChevronTwo 8s cubic-bezier(.36,.05,.25,1) infinite!important;
  animation-delay:0s!important;
}
@keyframes dx1852ScrollText{
  0%{opacity:0;transform:translate3d(0,-8px,0)}
  6%{opacity:1;transform:translate3d(0,0,0)}
  34%{opacity:1;transform:translate3d(0,0,0)}
  42%{opacity:0;transform:translate3d(0,12px,0)}
  100%{opacity:0;transform:translate3d(0,-8px,0)}
}
@keyframes dx1852ChevronStage{
  0%,49%{opacity:0;transform:translate3d(0,-5px,0)}
  55%{opacity:.8;transform:translate3d(0,0,0)}
  79%{opacity:.8;transform:translate3d(0,7px,0)}
  87%,100%{opacity:0;transform:translate3d(0,18px,0)}
}
@keyframes dx1852ChevronOne{
  0%,50%{opacity:0;transform:translate3d(0,-8px,0)}
  57%{opacity:.8;transform:translate3d(0,0,0)}
  71%{opacity:.8;transform:translate3d(0,10px,0)}
  81%,100%{opacity:0;transform:translate3d(0,24px,0)}
}
@keyframes dx1852ChevronTwo{
  0%,58%{opacity:0;transform:translate3d(0,-8px,0)}
  65%{opacity:.8;transform:translate3d(0,0,0)}
  77%{opacity:.8;transform:translate3d(0,10px,0)}
  87%,100%{opacity:0;transform:translate3d(0,24px,0)}
}

/* -------------------------------------------------------------------------
   3. Companies dropdown title: remove the remaining line above DENLYX NETWORK
      on Home, Company Directory and About Us.
   ------------------------------------------------------------------------- */
html body.home .atmo-company-nav>.atmo-dropdown,
html body.page-template-front-page .atmo-company-nav>.atmo-dropdown,
html body.dx-company-directory-page .atmo-company-nav>.atmo-dropdown,
html body.dx-about-page .atmo-company-nav>.atmo-dropdown{
  box-shadow:none!important;
}
html body.home .atmo-company-nav>.atmo-dropdown>.atmo-dropdown-title,
html body.page-template-front-page .atmo-company-nav>.atmo-dropdown>.atmo-dropdown-title,
html body.dx-company-directory-page .atmo-company-nav>.atmo-dropdown>.atmo-dropdown-title,
html body.dx-about-page .atmo-company-nav>.atmo-dropdown>.atmo-dropdown-title{
  border-top:0!important;
  border-bottom:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  background-image:none!important;
}
html body.home .atmo-company-nav>.atmo-dropdown>.atmo-dropdown-title::before,
html body.home .atmo-company-nav>.atmo-dropdown>.atmo-dropdown-title::after,
html body.page-template-front-page .atmo-company-nav>.atmo-dropdown>.atmo-dropdown-title::before,
html body.page-template-front-page .atmo-company-nav>.atmo-dropdown>.atmo-dropdown-title::after,
html body.dx-company-directory-page .atmo-company-nav>.atmo-dropdown>.atmo-dropdown-title::before,
html body.dx-company-directory-page .atmo-company-nav>.atmo-dropdown>.atmo-dropdown-title::after,
html body.dx-about-page .atmo-company-nav>.atmo-dropdown>.atmo-dropdown-title::before,
html body.dx-about-page .atmo-company-nav>.atmo-dropdown>.atmo-dropdown-title::after{
  content:none!important;
  display:none!important;
}

/* -------------------------------------------------------------------------
   4. Language popup: slightly more vertical room and a continuous bottom
      outline beneath the Chinese row on desktop and mobile.
   ------------------------------------------------------------------------- */
html body .atmo-language-control.is-enhanced .atmo-language-popup{
  padding:12px 12px 18px!important;
  min-height:518px!important;
  border-color:transparent!important;
  box-shadow:inset 0 0 0 1px var(--dx1852-language-outline,rgba(224,239,244,.30)),0 26px 72px rgba(3,19,28,.18)!important;
}
html body header.atmo-header[data-dx-v1852-tone="light"] .atmo-language-popup{
  --dx1852-language-outline:rgba(23,59,75,.40);
}
html body header.atmo-header[data-dx-v1852-tone="dark"] .atmo-language-popup{
  --dx1852-language-outline:rgba(247,251,255,.34);
}
html body .atmo-language-popup button[data-language-option]:last-child{
  margin-bottom:0!important;
  border-bottom:0!important;
}

/* -------------------------------------------------------------------------
   5. Homepage intro buttons: clear blur only, no color fill and no outline at
      rest. Both use the same hover fill, dark type and restrained lift.
   ------------------------------------------------------------------------- */
html body.home .dx11-intro-actions a.dx11-button,
html body.page-template-front-page .dx11-intro-actions a.dx11-button{
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:blur(18px) saturate(108%)!important;
  backdrop-filter:blur(18px) saturate(108%)!important;
  transform:translate3d(0,0,0)!important;
  transition:transform .28s cubic-bezier(.2,.8,.2,1),background-color .22s ease,color .22s ease!important;
}
html body.home .dx11-intro-actions a.dx11-button:hover,
html body.home .dx11-intro-actions a.dx11-button:focus-visible,
html body.page-template-front-page .dx11-intro-actions a.dx11-button:hover,
html body.page-template-front-page .dx11-intro-actions a.dx11-button:focus-visible{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  background:#f7fbff!important;
  background-color:#f7fbff!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  transform:translate3d(0,-3px,0) scale(1.025)!important;
}

/* -------------------------------------------------------------------------
   6. Company Directory card activation: keep the existing lift for two full
      seconds, then return to rest even if focus remains on the clicked link.
   ------------------------------------------------------------------------- */
html body .dx-directory-card.dx-v1852-card-latched,
html body .dx-directory-card.dx-v1852-card-latched:hover,
html body .dx-directory-card.dx-v1852-card-latched:focus-within{
  z-index:2!important;
  transform:translate3d(0,-10px,0)!important;
  background:#fff!important;
  box-shadow:0 30px 72px rgba(17,51,67,.15)!important;
}
html body .dx-directory-card.dx-v1852-card-latched .dx-directory-logo img{
  transform:scale(1.045)!important;
}
html body .dx-directory-card.dx-v1852-card-returned,
html body .dx-directory-card.dx-v1852-card-returned:hover,
html body .dx-directory-card.dx-v1852-card-returned:focus-within{
  z-index:1!important;
  transform:translate3d(0,0,0)!important;
  background:rgba(255,255,255,.42)!important;
  box-shadow:none!important;
}
html body .dx-directory-card.dx-v1852-card-returned .dx-directory-logo img,
html body .dx-directory-card.dx-v1852-card-returned:hover .dx-directory-logo img,
html body .dx-directory-card.dx-v1852-card-returned:focus-within .dx-directory-logo img{
  transform:none!important;
  filter:none!important;
}

/* -------------------------------------------------------------------------
   7. Expanded header controls: Language, Sound and Start a Project share one
      clear-glass treatment. On light pages all three receive the same dark
      surround; on dark pages all three remain outline-free.
   ------------------------------------------------------------------------- */
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-language-trigger,
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-sound-toggle,
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-header-cta,
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-language-trigger:hover,
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-sound-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-header-cta:hover,
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-language-trigger:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-sound-toggle:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-header-cta:focus-visible{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  filter:none!important;
  -webkit-backdrop-filter:blur(15px) saturate(106%)!important;
  backdrop-filter:blur(15px) saturate(106%)!important;
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1852-tone="light"]:not(.dx-compact) .atmo-language-trigger,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1852-tone="light"]:not(.dx-compact) .atmo-sound-toggle,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1852-tone="light"]:not(.dx-compact) .atmo-header-cta{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  border:1px solid rgba(23,59,75,.44)!important;
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1852-tone="dark"]:not(.dx-compact) .atmo-language-trigger,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1852-tone="dark"]:not(.dx-compact) .atmo-sound-toggle,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1852-tone="dark"]:not(.dx-compact) .atmo-header-cta{
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
  border:1px solid transparent!important;
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1852-tone] .atmo-language-chevron path{
  stroke:currentColor!important;
}

/* -------------------------------------------------------------------------
   8. About network center: DENLYX remains permanently visible below the core
      mark regardless of animation state.
   ------------------------------------------------------------------------- */
html body #dx-cinematic-network #dx-core .dx-core-title{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  fill:#f7fbff!important;
  stroke:rgba(3,19,28,.55)!important;
  stroke-width:1px!important;
  paint-order:stroke fill!important;
  filter:drop-shadow(0 0 6px rgba(52,168,255,.42))!important;
}

/* -------------------------------------------------------------------------
   9. Enter-with-audio prompt: never show the browser hand cursor over the
      custom cursor, and keep text/equalizer adaptive during hover.
   ------------------------------------------------------------------------- */
html body .atmo-sound-gate,
html body .atmo-sound-gate *,
html body .atmo-sound-gate button,
html body .atmo-sound-gate [data-enable-sound],
html body .atmo-sound-gate [data-dismiss-sound]{
  cursor:none!important;
}
html body .atmo-sound-gate[data-dx1852-tone="dark"]{
  --dx1852-gate-fg:#f7fbff;
  --dx1852-gate-outline:rgba(247,251,255,.34);
}
html body .atmo-sound-gate[data-dx1852-tone="light"]{
  --dx1852-gate-fg:#173b4b;
  --dx1852-gate-outline:rgba(23,59,75,.40);
}
html body .atmo-sound-gate[data-dx1852-tone],
html body .atmo-sound-gate[data-dx1852-tone]:hover,
html body .atmo-sound-gate[data-dx1852-tone].dx-sound-gate-hold{
  color:var(--dx1852-gate-fg)!important;
  -webkit-text-fill-color:var(--dx1852-gate-fg)!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border-color:var(--dx1852-gate-outline)!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:blur(18px) saturate(106%)!important;
  backdrop-filter:blur(18px) saturate(106%)!important;
}
html body .atmo-sound-gate[data-dx1852-tone] button,
html body .atmo-sound-gate[data-dx1852-tone] button:hover,
html body .atmo-sound-gate[data-dx1852-tone] button b,
html body .atmo-sound-gate[data-dx1852-tone] button small,
html body .atmo-sound-gate[data-dx1852-tone] .atmo-sound-gate-close{
  color:var(--dx1852-gate-fg)!important;
  -webkit-text-fill-color:var(--dx1852-gate-fg)!important;
  background:transparent!important;
  background-image:none!important;
}
html body .atmo-sound-gate[data-dx1852-tone] .atmo-sound-bars>i,
html body .atmo-sound-gate[data-dx1852-tone]:hover .atmo-sound-bars>i,
html body .atmo-sound-gate[data-dx1852-tone].dx-sound-gate-hold .atmo-sound-bars>i{
  background:var(--dx1852-gate-fg)!important;
  background-color:var(--dx1852-gate-fg)!important;
}
html body .atmo-sound-gate[data-dx1852-tone] [data-enable-sound] b::after,
html body .atmo-sound-gate[data-dx1852-tone]:hover [data-enable-sound] b::after,
html body .atmo-sound-gate[data-dx1852-tone].dx-sound-gate-hold [data-enable-sound] b::after{
  content:none!important;
  display:none!important;
  animation:none!important;
  background:none!important;
}

@media(max-width:980px){
  html body .atmo-language-control.is-enhanced .atmo-language-popup{
    min-height:0!important;
    max-height:calc(100dvh - 94px)!important;
    padding-bottom:20px!important;
  }
}
@media(prefers-reduced-motion:reduce){
  html body .dx1848-scroll-label{animation:none!important;opacity:1!important;transform:none!important}
  html body .dx1848-scroll-chevrons,
  html body .dx1848-scroll-chevrons path{animation:none!important;display:none!important}
}

/* source: denlyx-v1853-production.css */
/* DENLYX production v0.2.5 / visual source v1.8.53.
   Acceptance layer for 7272026 - 9.docx. Loaded after every older stylesheet. */

/* 1. Header wrappers never paint a shared rectangle. */
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-inner,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions{
  background:transparent!important;background-color:transparent!important;background-image:none!important;
  border:0!important;outline:0!important;box-shadow:none!important;filter:none!important;
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
}
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact::before,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact::after,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-inner::before,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-inner::after,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions::before,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions::after{content:none!important;display:none!important}

/* 2. Individual controls use one adaptive outline; compact Menu and Sound stay
      separate and never receive an outer shell. */
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1853-tone="dark"]{
  --dx1853-control-fg:#f7fbff;--dx1853-control-line:rgba(247,251,255,.40);--dx1853-control-fill:rgba(6,25,35,.08);
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1853-tone="light"]{
  --dx1853-control-fg:#173b4b;--dx1853-control-line:rgba(23,59,75,.44);--dx1853-control-fill:rgba(255,255,255,.08);
}
html body.denlyx-atmosphere-theme header.atmo-header .dx-command-toggle,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-cta{
  color:var(--dx1853-control-fg,#f7fbff)!important;-webkit-text-fill-color:var(--dx1853-control-fg,#f7fbff)!important;
  background:var(--dx1853-control-fill,transparent)!important;background-image:none!important;
  border:1px solid var(--dx1853-control-line,rgba(247,251,255,.40))!important;outline:0!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
  -webkit-backdrop-filter:blur(15px) saturate(106%)!important;backdrop-filter:blur(15px) saturate(106%)!important;
}
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle:focus-visible{
  border:1px solid var(--dx1853-control-line)!important;transform:none!important;translate:none!important;
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1853-tone] .atmo-language-chevron path{stroke:currentColor!important}

/* About and Company Directory: permanent dark outline is specifically for EN.
   SOUND and START A PROJECT retain clear glass without a permanent frame. */
html body.dx-about-page header.atmo-header:not(.dx-compact) .atmo-language-trigger,
html body.dx-company-directory-page header.atmo-header:not(.dx-compact) .atmo-language-trigger{
  color:#173b4b!important;-webkit-text-fill-color:#173b4b!important;border-color:rgba(23,59,75,.50)!important;
}
html body.dx-about-page header.atmo-header:not(.dx-compact) .atmo-sound-toggle,
html body.dx-about-page header.atmo-header:not(.dx-compact) .atmo-header-cta,
html body.dx-company-directory-page header.atmo-header:not(.dx-compact) .atmo-sound-toggle,
html body.dx-company-directory-page header.atmo-header:not(.dx-compact) .atmo-header-cta{border-color:transparent!important}

/* Legal pages: restore the visible old glass pills for all three controls.
   Their white outline appears on hover/focus. */
html body.dx-legal-suite-page header.atmo-header:not(.dx-compact) .atmo-language-trigger,
html body.dx-legal-suite-page header.atmo-header:not(.dx-compact) .atmo-sound-toggle,
html body.dx-legal-suite-page header.atmo-header:not(.dx-compact) .atmo-header-cta{
  color:#f7fbff!important;-webkit-text-fill-color:#f7fbff!important;
  background:linear-gradient(135deg,rgba(255,255,255,.10),rgba(255,255,255,.025)),rgba(7,27,37,.48)!important;
  border-color:transparent!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.14)!important;
}
html body.dx-legal-suite-page header.atmo-header:not(.dx-compact) .atmo-language-trigger:hover,
html body.dx-legal-suite-page header.atmo-header:not(.dx-compact) .atmo-language-trigger:focus-visible,
html body.dx-legal-suite-page header.atmo-header:not(.dx-compact) .atmo-language-trigger[aria-expanded="true"],
html body.dx-legal-suite-page header.atmo-header:not(.dx-compact) .atmo-sound-toggle:hover,
html body.dx-legal-suite-page header.atmo-header:not(.dx-compact) .atmo-sound-toggle:focus-visible,
html body.dx-legal-suite-page header.atmo-header:not(.dx-compact) .atmo-header-cta:hover,
html body.dx-legal-suite-page header.atmo-header:not(.dx-compact) .atmo-header-cta:focus-visible{border-color:rgba(247,251,255,.58)!important}

/* 3. Language list: names and abbreviations always share the same foreground.
      The popup has a real outer border, including a complete bottom floor. */
html body .atmo-language-control.is-enhanced .atmo-language-popup,
html body .atmo-language-popup{
  box-sizing:border-box!important;min-height:526px!important;padding:12px 12px 18px!important;
  border:1px solid var(--dx1853-language-line,rgba(247,251,255,.38))!important;
  border-radius:28px!important;overflow:hidden!important;
  box-shadow:0 26px 72px rgba(3,19,28,.18)!important;
}
html body header.atmo-header[data-dx-v1853-tone="dark"] .atmo-language-popup{--dx1853-language-line:rgba(247,251,255,.38)}
html body header.atmo-header[data-dx-v1853-tone="light"] .atmo-language-popup{--dx1853-language-line:rgba(23,59,75,.44)}
html body .atmo-language-popup button[data-language-option],
html body .atmo-language-popup button[data-language-option] span,
html body .atmo-language-popup button[data-language-option] small{
  color:inherit!important;-webkit-text-fill-color:currentColor!important;opacity:1!important;
}
html body .atmo-language-popup button[data-language-option] small{opacity:.82!important}
html body .atmo-language-popup button[data-dx-v1853-row-tone="dark"]{color:#f7fbff!important}
html body .atmo-language-popup button[data-dx-v1853-row-tone="light"]{color:#173b4b!important}
html body .atmo-language-popup button[data-language-option]:last-child{margin-bottom:0!important;border-bottom:0!important}
html body .atmo-language-popup::after{content:none!important;display:none!important}

/* 4. The two homepage hero buttons requested for removal cannot reappear from
      cached markup or translation wrappers. */
html body.home .dx11-intro-actions,
html body.page-template-front-page .dx11-intro-actions{display:none!important}

/* 5. Scroll invitation is guaranteed visible at the top on every long page.
      It still hides after the user leaves the opening section and reappears on
      return to the top. */
html body:not(.error404) .dx-scroll-invitation:not(.is-hidden):not(.dx1848-cue-dismissed),
html body:not(.error404) .dx-about-scroll-cue:not(.is-hidden):not(.dx1848-cue-dismissed){
  opacity:1!important;visibility:visible!important;pointer-events:auto!important;
}
html body .dx1848-scroll-label{animation:dx1853ScrollText 8s cubic-bezier(.42,0,.22,1) infinite!important}
html body .dx1848-scroll-chevrons{animation:dx1853ChevronStage 8s ease-in-out infinite!important}
html body .dx1848-scroll-chevrons .dx1848-chevron-one{animation:dx1853ChevronOne 8s cubic-bezier(.36,.05,.25,1) infinite!important}
html body .dx1848-scroll-chevrons .dx1848-chevron-two{animation:dx1853ChevronTwo 8s cubic-bezier(.36,.05,.25,1) infinite!important}
@keyframes dx1853ScrollText{0%{opacity:0;transform:translate3d(0,-8px,0)}6%{opacity:1;transform:none}34%{opacity:1;transform:none}42%,100%{opacity:0;transform:translate3d(0,12px,0)}}
@keyframes dx1853ChevronStage{0%,49%{opacity:0;transform:translate3d(0,-5px,0)}55%,79%{opacity:.8;transform:none}87%,100%{opacity:0;transform:translate3d(0,18px,0)}}
@keyframes dx1853ChevronOne{0%,50%{opacity:0;transform:translate3d(0,-8px,0)}57%,71%{opacity:.8;transform:none}81%,100%{opacity:0;transform:translate3d(0,24px,0)}}
@keyframes dx1853ChevronTwo{0%,58%{opacity:0;transform:translate3d(0,-8px,0)}65%,77%{opacity:.8;transform:none}87%,100%{opacity:0;transform:translate3d(0,24px,0)}}

/* 6. Homepage and directory cards return after exactly two seconds, even while
      the pointer or keyboard focus remains inside the card. */
html body .dx11-company-card.dx-v1853-card-returned,
html body .dx11-company-card.dx-v1853-card-returned:hover,
html body .dx11-company-card.dx-v1853-card-returned:focus-within,
html body .dx-directory-card.dx-v1853-card-returned,
html body .dx-directory-card.dx-v1853-card-returned:hover,
html body .dx-directory-card.dx-v1853-card-returned:focus-within{
  transform:translate3d(0,0,0)!important;translate:none!important;filter:none!important;
}
html body .dx11-company-card.dx-v1853-card-returned .dx11-company-logo img,
html body .dx-directory-card.dx-v1853-card-returned .dx-directory-logo img{transform:none!important;filter:none!important}
html body .dx11-company-card.dx-v1853-card-latched,
html body .dx-directory-card.dx-v1853-card-latched{will-change:transform!important}

/* 7. Enter with Audio keeps adaptive base text and restores the requested
      moving gradient on hover: light page = dark text/white sweep; dark page =
      white text/dark sweep. */
html body .atmo-sound-gate[data-dx1853-tone="dark"]{--dx1853-gate-fg:#f7fbff;--dx1853-gate-line:rgba(247,251,255,.38);--dx1853-gate-sweep:#102e3c}
html body .atmo-sound-gate[data-dx1853-tone="light"]{--dx1853-gate-fg:#173b4b;--dx1853-gate-line:rgba(23,59,75,.42);--dx1853-gate-sweep:#ffffff}
html body .atmo-sound-gate[data-dx1853-tone],
html body .atmo-sound-gate[data-dx1853-tone]:hover,
html body .atmo-sound-gate[data-dx1853-tone].dx-sound-gate-hold{
  color:var(--dx1853-gate-fg)!important;-webkit-text-fill-color:var(--dx1853-gate-fg)!important;
  background:transparent!important;background-image:none!important;border-color:var(--dx1853-gate-line)!important;
}
html body .atmo-sound-gate[data-dx1853-tone] button,
html body .atmo-sound-gate[data-dx1853-tone] button:hover,
html body .atmo-sound-gate[data-dx1853-tone] button small,
html body .atmo-sound-gate[data-dx1853-tone] .atmo-sound-gate-close{
  color:var(--dx1853-gate-fg)!important;-webkit-text-fill-color:var(--dx1853-gate-fg)!important;
}
html body .atmo-sound-gate[data-dx1853-tone] .atmo-sound-bars>i{background:var(--dx1853-gate-fg)!important}
html body .atmo-sound-gate[data-dx1853-tone] [data-enable-sound] b{
  position:relative!important;display:inline-block!important;color:var(--dx1853-gate-fg)!important;
  -webkit-text-fill-color:var(--dx1853-gate-fg)!important;background:none!important;
}
html body .atmo-sound-gate[data-dx1853-tone] [data-enable-sound] b::after{
  content:attr(data-dx1853-label)!important;display:block!important;position:absolute!important;inset:0!important;
  color:transparent!important;-webkit-text-fill-color:transparent!important;
  background:linear-gradient(110deg,transparent 24%,var(--dx1853-gate-sweep) 47%,transparent 70%)!important;
  background-size:240% 100%!important;background-position:140% 0!important;
  -webkit-background-clip:text!important;background-clip:text!important;opacity:0!important;pointer-events:none!important;
}
html body .atmo-sound-gate[data-dx1853-tone]:hover [data-enable-sound] b::after,
html body .atmo-sound-gate[data-dx1853-tone].dx-sound-gate-hold [data-enable-sound] b::after{
  opacity:.94!important;animation:dx1853GateSweep 2.8s linear infinite!important;
}
@keyframes dx1853GateSweep{from{background-position:140% 0}to{background-position:-140% 0}}
html body .atmo-sound-gate,html body .atmo-sound-gate *{cursor:none!important}

/* 8. Company Directory freeze guard: no intro filter transition and no class
      dependent geometry changes on the standalone page. */
html body.dx-company-directory-page .dx-directory,
html body.dx-company-directory-page .dx-directory.cards-visible{contain:layout!important}
html body.dx-company-directory-page .dx-directory .dx-directory-intro,
html body.dx-company-directory-page .dx-directory.cards-visible .dx-directory-intro{
  opacity:1!important;transform:none!important;filter:none!important;transition:none!important;
}

@media(max-width:980px){
  html body .atmo-language-control.is-enhanced .atmo-language-popup,
  html body .atmo-language-popup{min-height:0!important;max-height:calc(100dvh - 94px)!important;padding-bottom:18px!important}
}
@media(prefers-reduced-motion:reduce){
  html body .dx1848-scroll-label{animation:none!important;opacity:1!important;transform:none!important}
  html body .dx1848-scroll-chevrons,html body .dx1848-scroll-chevrons path{animation:none!important;display:none!important}
  html body .atmo-sound-gate [data-enable-sound] b::after{animation:none!important;opacity:0!important}
}

/* source: denlyx-v1854-production.css */
/* DENLYX production v0.2.6 / visual source v1.8.54.
   Acceptance and mobile-performance layer for 7282026 - 10.docx.
   Loaded after every earlier stylesheet. */

/* Header containers never become a shared painted rectangle. */
html body.denlyx-atmosphere-theme header.atmo-header,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions{
  background:transparent!important;background-color:transparent!important;background-image:none!important;
  border:0!important;outline:0!important;box-shadow:none!important;filter:none!important;
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
}
html body.denlyx-atmosphere-theme header.atmo-header::before,
html body.denlyx-atmosphere-theme header.atmo-header::after,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner::before,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner::after,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions::before,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions::after{content:none!important;display:none!important}

/* Every visible header control owns its own adaptive outline on every page. */
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1854-tone="dark"]{
  --dx1854-fg:#f7fbff;--dx1854-line:rgba(247,251,255,.62);--dx1854-soft-line:rgba(247,251,255,.40);
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1854-tone="light"]{
  --dx1854-fg:#173b4b;--dx1854-line:rgba(23,59,75,.62);--dx1854-soft-line:rgba(23,59,75,.44);
}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-cta,
html body.denlyx-atmosphere-theme header.atmo-header .dx-command-toggle{
  box-sizing:border-box!important;
  color:var(--dx1854-fg,#f7fbff)!important;-webkit-text-fill-color:var(--dx1854-fg,#f7fbff)!important;
  background:transparent!important;background-color:transparent!important;background-image:none!important;
  border:1px solid var(--dx1854-line,rgba(247,251,255,.62))!important;outline:0!important;
  box-shadow:none!important;filter:none!important;
  -webkit-backdrop-filter:blur(14px) saturate(104%)!important;backdrop-filter:blur(14px) saturate(104%)!important;
}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger:hover,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger[aria-expanded="true"],
html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-cta:hover,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-cta:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header .dx-command-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header .dx-command-toggle:focus-visible{
  color:var(--dx1854-fg)!important;-webkit-text-fill-color:var(--dx1854-fg)!important;
  background:transparent!important;background-image:none!important;
  border-color:var(--dx1854-line)!important;box-shadow:none!important;
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1854-tone] .atmo-language-chevron path{stroke:currentColor!important}
html body.home header.atmo-header,
html body.page-template-front-page header.atmo-header{
  --dx1854-fg:#f7fbff!important;--dx1854-line:rgba(247,251,255,.62)!important;--dx1854-soft-line:rgba(247,251,255,.40)!important;
}
html body.home header.atmo-header .atmo-language-trigger,
html body.home header.atmo-header .atmo-sound-toggle,
html body.home header.atmo-header .atmo-header-cta,
html body.page-template-front-page header.atmo-header .atmo-language-trigger,
html body.page-template-front-page header.atmo-header .atmo-sound-toggle,
html body.page-template-front-page header.atmo-header .atmo-header-cta{
  color:#f7fbff!important;-webkit-text-fill-color:#f7fbff!important;border-color:rgba(247,251,255,.62)!important;
}
html body.home header.atmo-header .atmo-language-chevron path,
html body.page-template-front-page header.atmo-header .atmo-language-chevron path{stroke:#f7fbff!important}

/* Compact mode: exactly two independent clean controls, never a group shell. */
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions{
  gap:10px!important;padding:0!important;margin:0!important;overflow:visible!important;
}
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle{
  background:transparent!important;background-color:transparent!important;background-image:none!important;
  box-shadow:none!important;transform:none!important;translate:none!important;
}

/* Language popup: names and abbreviations always match. The ZH row and the
   popup both retain a real bottom edge instead of ending on an open border. */
html body .atmo-language-popup{
  box-sizing:border-box!important;padding:12px 12px 20px!important;overflow:hidden!important;
  border:1px solid var(--dx1854-language-line,rgba(247,251,255,.48))!important;
  border-radius:28px!important;
  box-shadow:inset 0 -1px 0 var(--dx1854-language-line,rgba(247,251,255,.48)),0 26px 72px rgba(3,19,28,.18)!important;
}
html body header.atmo-header[data-dx-v1854-tone="dark"] .atmo-language-popup{--dx1854-language-line:rgba(247,251,255,.52)}
html body header.atmo-header[data-dx-v1854-tone="light"] .atmo-language-popup{--dx1854-language-line:rgba(23,59,75,.54)}
html body .atmo-language-popup button[data-language-option],
html body .atmo-language-popup button[data-language-option] span,
html body .atmo-language-popup button[data-language-option] small{
  color:inherit!important;-webkit-text-fill-color:currentColor!important;
}
html body .atmo-language-popup button[data-language-option] small{opacity:.86!important}
html body .atmo-language-popup button[data-dx-v1854-row-tone="dark"]{color:#f7fbff!important}
html body .atmo-language-popup button[data-dx-v1854-row-tone="light"]{color:#173b4b!important}
html body .atmo-language-popup button[data-language-option]:last-child{
  margin-bottom:0!important;border:1px solid var(--dx1854-language-line,rgba(247,251,255,.48))!important;
  border-radius:18px!important;
}
/* Explicit homepage request: language rows and abbreviations remain white. */
html body.home .atmo-language-popup,
html body.page-template-front-page .atmo-language-popup{--dx1854-language-line:rgba(247,251,255,.56)!important}
html body.home .atmo-language-popup button[data-language-option],
html body.home .atmo-language-popup button[data-language-option] span,
html body.home .atmo-language-popup button[data-language-option] small,
html body.page-template-front-page .atmo-language-popup button[data-language-option],
html body.page-template-front-page .atmo-language-popup button[data-language-option] span,
html body.page-template-front-page .atmo-language-popup button[data-language-option] small{
  color:#f7fbff!important;-webkit-text-fill-color:#f7fbff!important;
}

/* Company reveal overlay removed on Home and Company Directory. */
html body .dx11-company-card,
html body .dx11-company-card.atmo-reveal,
html body .dx-directory-card,
html body .dx-directory-card.atmo-reveal{
  opacity:1!important;visibility:visible!important;filter:none!important;clip-path:none!important;
  transition-property:transform,box-shadow,border-color!important;
}
html body .dx11-company-card.atmo-reveal:not(.is-visible),
html body .dx-directory-card.atmo-reveal:not(.is-visible){opacity:1!important;transform:none!important;filter:none!important}
html body .dx11-company-grid::before,
html body .dx11-company-grid::after,
html body .dx-directory-grid::before,
html body .dx-directory-grid::after{pointer-events:none!important;filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html body .dx-directory,
html body .dx-directory.cards-visible{contain:layout paint!important}
html body .dx-directory .dx-directory-intro,
html body .dx-directory.cards-visible .dx-directory-intro{opacity:1!important;transform:none!important;filter:none!important}

/* One canonical fixed Scroll to Explore control on every page, including the real 404. */
html body .dx-scroll-invitation[data-dx-v1854-cue="true"]{
  position:fixed!important;left:50%!important;right:auto!important;bottom:clamp(18px,4vh,42px)!important;top:auto!important;
  width:auto!important;min-width:150px!important;height:auto!important;z-index:999!important;
  display:grid!important;place-items:center!important;gap:2px!important;margin:0!important;padding:6px 18px 2px!important;
  transform:translate3d(-50%,0,0)!important;
  color:var(--dx1854-cue-fg,#f7fbff)!important;-webkit-text-fill-color:var(--dx1854-cue-fg,#f7fbff)!important;
  background:transparent!important;background-image:none!important;border:0!important;outline:0!important;box-shadow:none!important;
  opacity:1!important;visibility:visible!important;pointer-events:auto!important;
  display:grid!important;
}
html body .dx-scroll-invitation[data-dx-v1854-cue="true"].is-hidden{
  opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translate3d(-50%,16px,0)!important;
}
html body .dx-scroll-invitation[data-dx-v1854-cue="true"] .dx1854-scroll-label{
  display:block!important;font-size:11px!important;line-height:1!important;font-weight:650!important;letter-spacing:.16em!important;text-transform:uppercase!important;
  animation:dx1854CueText 8s cubic-bezier(.42,0,.22,1) infinite!important;
}
html body .dx-scroll-invitation[data-dx-v1854-cue="true"] .dx1854-scroll-chevrons{display:block!important;width:42px!important;height:38px!important;animation:dx1854CueStage 8s ease-in-out infinite!important}
html body .dx-scroll-invitation[data-dx-v1854-cue="true"] svg{display:block!important;width:100%!important;height:100%!important;overflow:visible!important}
html body .dx-scroll-invitation[data-dx-v1854-cue="true"] path{fill:none!important;stroke:currentColor!important;stroke-width:3!important;stroke-linecap:round!important;stroke-linejoin:round!important}
html body .dx-scroll-invitation[data-dx-v1854-cue="true"] .dx1854-chevron-one{animation:dx1854ChevronOne 8s ease-in-out infinite!important}
html body .dx-scroll-invitation[data-dx-v1854-cue="true"] .dx1854-chevron-two{animation:dx1854ChevronTwo 8s ease-in-out infinite!important}
@keyframes dx1854CueText{0%{opacity:0;transform:translateY(-7px)}7%,35%{opacity:1;transform:none}43%,100%{opacity:0;transform:translateY(9px)}}
@keyframes dx1854CueStage{0%,49%{opacity:0;transform:translateY(-5px)}56%,80%{opacity:.8;transform:none}88%,100%{opacity:0;transform:translateY(15px)}}
@keyframes dx1854ChevronOne{0%,52%{opacity:0;transform:translateY(-7px)}59%,73%{opacity:.8;transform:none}82%,100%{opacity:0;transform:translateY(17px)}}
@keyframes dx1854ChevronTwo{0%,60%{opacity:0;transform:translateY(-7px)}67%,79%{opacity:.8;transform:none}88%,100%{opacity:0;transform:translateY(17px)}}

/* Enter with Audio: base color follows the page; the moving highlight always
   uses the opposite contrast color requested in the notes. */
html body .atmo-sound-gate[data-dx-v1854-tone="dark"]{
  --dx1854-gate-fg:#f7fbff;--dx1854-gate-line:rgba(247,251,255,.54);--dx1854-gate-sweep:#102e3c;
}
html body .atmo-sound-gate[data-dx-v1854-tone="light"]{
  --dx1854-gate-fg:#173b4b;--dx1854-gate-line:rgba(23,59,75,.54);--dx1854-gate-sweep:#ffffff;
}
html body .atmo-sound-gate[data-dx-v1854-tone],
html body .atmo-sound-gate[data-dx-v1854-tone]:hover{
  color:var(--dx1854-gate-fg)!important;-webkit-text-fill-color:var(--dx1854-gate-fg)!important;
  background:transparent!important;background-image:none!important;border-color:var(--dx1854-gate-line)!important;
}
html body .atmo-sound-gate[data-dx-v1854-tone] *,
html body .atmo-sound-gate[data-dx-v1854-tone]:hover *{
  color:var(--dx1854-gate-fg)!important;-webkit-text-fill-color:var(--dx1854-gate-fg)!important;
}
html body .atmo-sound-gate[data-dx-v1854-tone] .atmo-sound-bars i{background:var(--dx1854-gate-fg)!important}
html body .atmo-sound-gate[data-dx-v1854-tone] [data-enable-sound] b{position:relative!important;display:inline-block!important;background:none!important}
html body .atmo-sound-gate[data-dx-v1854-tone] [data-enable-sound] b::after{
  content:attr(data-dx1854-label)!important;position:absolute!important;inset:0!important;display:block!important;
  color:transparent!important;-webkit-text-fill-color:transparent!important;
  background:linear-gradient(110deg,transparent 22%,var(--dx1854-gate-sweep) 48%,transparent 72%)!important;
  background-size:240% 100%!important;background-position:140% 0!important;
  -webkit-background-clip:text!important;background-clip:text!important;opacity:0!important;pointer-events:none!important;
}
html body .atmo-sound-gate[data-dx-v1854-tone]:hover [data-enable-sound] b::after{
  opacity:.96!important;animation:dx1854GateSweep 2.7s linear infinite!important;
}
@keyframes dx1854GateSweep{from{background-position:140% 0}to{background-position:-140% 0}}
html body .atmo-sound-gate,html body .atmo-sound-gate *{cursor:none!important}

@media(max-width:980px){
  /* The mobile menu is always a white surface, therefore its complete text tree
     is locked to dark contrast on every page. */
  html body.denlyx-atmosphere-theme .atmo-nav,
  html body.denlyx-atmosphere-theme .atmo-nav.open{
    color:#173b4b!important;-webkit-text-fill-color:#173b4b!important;
    background:#f7f9fa!important;background-image:none!important;
    border-color:rgba(23,59,75,.20)!important;box-shadow:0 18px 48px rgba(4,20,29,.14)!important;
    -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
  }
  html body.denlyx-atmosphere-theme .atmo-nav *,
  html body.denlyx-atmosphere-theme .atmo-nav.open *,
  html body.denlyx-atmosphere-theme .atmo-nav a,
  html body.denlyx-atmosphere-theme .atmo-nav button,
  html body.denlyx-atmosphere-theme .atmo-nav small,
  html body.denlyx-atmosphere-theme .atmo-nav b,
  html body.denlyx-atmosphere-theme .atmo-nav span{
    color:#173b4b!important;-webkit-text-fill-color:#173b4b!important;
  }
  html body.denlyx-atmosphere-theme .atmo-nav .atmo-dropdown{
    background:#fff!important;background-image:none!important;border-color:rgba(23,59,75,.18)!important;
    -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
  }
  html body .dx-mobile-nav-backdrop{
    background:transparent!important;background-image:none!important;
    -webkit-backdrop-filter:none!important;backdrop-filter:none!important;filter:none!important;
  }

  /* Mobile-lite rendering: content is immediately usable; costly reveal blur,
     fog transforms, card filters, and continuous parallax are disabled. */
  html body .dx11-company-card,
  html body .dx-directory-card,
  html body .dx11-company-card *,
  html body .dx-directory-card *{animation:none!important;filter:none!important}
  html body .dx11-company-card,
  html body .dx-directory-card{transition:transform .24s ease,border-color .24s ease!important;contain:layout paint!important}
  html body .atmo-reveal{transition-delay:0ms!important}
  html body .atmo-reveal:not(.is-visible){opacity:1!important;transform:none!important;filter:none!important}
  html body .atmo-cloud,
  html body .atmo-chapter-fog,
  html body [data-transition-fog],
  html body .dx11-intro-fog{animation:none!important;transform:none!important;filter:none!important}
  html body .atmo-language-popup{max-height:calc(100dvh - 86px)!important;padding-bottom:20px!important}
  html body .dx-scroll-invitation[data-dx-v1854-cue="true"]{bottom:18px!important;min-width:138px!important}
}

@media(prefers-reduced-motion:reduce){
  html body .dx-scroll-invitation[data-dx-v1854-cue="true"] .dx1854-scroll-label{animation:none!important;opacity:1!important;transform:none!important}
  html body .dx-scroll-invitation[data-dx-v1854-cue="true"] .dx1854-scroll-chevrons{display:none!important;animation:none!important}
  html body .atmo-sound-gate [data-enable-sound] b::after{animation:none!important;opacity:0!important}
}
html body .dx11-company-card.dx-v1854-card-returned,
html body .dx11-company-card.dx-v1854-card-returned:hover,
html body .dx11-company-card.dx-v1854-card-returned:focus-within,
html body .dx-directory-card.dx-v1854-card-returned,
html body .dx-directory-card.dx-v1854-card-returned:hover,
html body .dx-directory-card.dx-v1854-card-returned:focus-within{
  transform:translate3d(0,0,0)!important;translate:none!important;filter:none!important;
}

/* source: denlyx-v1855-production.css */
/* DENLYX production v0.2.7 / visual source v1.8.55.
   Final acceptance layer for 7282026 - 11.docx plus the attached mobile-menu
   and Enter-with-Audio screenshots. Loaded after every earlier stylesheet. */

/* -------------------------------------------------------------------------
   1. Header controls: separate adaptive outlines; never a shared rectangle.
   ------------------------------------------------------------------------- */
html body.denlyx-atmosphere-theme header.atmo-header,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  filter: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
html body.denlyx-atmosphere-theme header.atmo-header::before,
html body.denlyx-atmosphere-theme header.atmo-header::after,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner::before,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner::after,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions::before,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions::after {
  content: none !important;
  display: none !important;
}

html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1855-tone="dark"] {
  --dx1855-control-fg: #f7fbff;
  --dx1855-control-line: rgba(247, 251, 255, .72);
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1855-tone="light"] {
  --dx1855-control-fg: #173b4b;
  --dx1855-control-line: rgba(23, 59, 75, .72);
}

html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1855-tone] .atmo-language-trigger,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1855-tone] .atmo-sound-toggle,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1855-tone] .atmo-header-cta,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1855-tone] .dx-command-toggle {
  box-sizing: border-box !important;
  color: var(--dx1855-control-fg) !important;
  -webkit-text-fill-color: var(--dx1855-control-fg) !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 1px solid var(--dx1855-control-line) !important;
  outline: 0 !important;
  box-shadow: inset 0 0 0 .01px var(--dx1855-control-line) !important;
  filter: none !important;
  -webkit-backdrop-filter: blur(14px) saturate(104%) !important;
  backdrop-filter: blur(14px) saturate(104%) !important;
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1855-tone] .atmo-language-trigger:hover,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1855-tone] .atmo-language-trigger:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1855-tone] .atmo-language-trigger[aria-expanded="true"],
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1855-tone] .atmo-sound-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1855-tone] .atmo-sound-toggle:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1855-tone] .atmo-header-cta:hover,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1855-tone] .atmo-header-cta:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1855-tone] .dx-command-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1855-tone] .dx-command-toggle:focus-visible {
  color: var(--dx1855-control-fg) !important;
  -webkit-text-fill-color: var(--dx1855-control-fg) !important;
  background: transparent !important;
  background-image: none !important;
  border-color: var(--dx1855-control-line) !important;
  box-shadow: inset 0 0 0 .01px var(--dx1855-control-line) !important;
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1855-tone] .atmo-language-chevron path {
  stroke: currentColor !important;
}

/* Homepage is intentionally forced to white, independent of the live probe. */
html body.home header.atmo-header,
html body.page-template-front-page header.atmo-header {
  --dx1855-control-fg: #f7fbff !important;
  --dx1855-control-line: rgba(247, 251, 255, .76) !important;
}
html body.home header.atmo-header .atmo-language-trigger,
html body.home header.atmo-header .atmo-sound-toggle,
html body.home header.atmo-header .atmo-header-cta,
html body.home header.atmo-header .dx-command-toggle,
html body.page-template-front-page header.atmo-header .atmo-language-trigger,
html body.page-template-front-page header.atmo-header .atmo-sound-toggle,
html body.page-template-front-page header.atmo-header .atmo-header-cta,
html body.page-template-front-page header.atmo-header .dx-command-toggle {
  color: #f7fbff !important;
  -webkit-text-fill-color: #f7fbff !important;
  border-color: rgba(247, 251, 255, .76) !important;
}
html body.home header.atmo-header .atmo-language-chevron path,
html body.page-template-front-page header.atmo-header .atmo-language-chevron path {
  stroke: #f7fbff !important;
}

/* Compact header: exactly two independent buttons. Remove every possible shell
   and every inherited fill from the wrapper. */
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions {
  display: flex !important;
  gap: 10px !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 1px solid var(--dx1855-control-line) !important;
  box-shadow: inset 0 0 0 .01px var(--dx1855-control-line) !important;
  filter: none !important;
  transform: none !important;
  translate: none !important;
}

/* -------------------------------------------------------------------------
   2. Language popup: visible complete rows, correct abbreviations and floor.
   ------------------------------------------------------------------------- */
html body .atmo-language-popup {
  --dx1855-language-line: rgba(247, 251, 255, .62);
  box-sizing: border-box !important;
  padding: 12px 12px 22px !important;
  overflow: hidden !important;
  border: 1px solid var(--dx1855-language-line) !important;
  border-radius: 28px !important;
  box-shadow: inset 0 -1px 0 var(--dx1855-language-line), 0 26px 72px rgba(3, 19, 28, .18) !important;
}
html body header.atmo-header[data-dx-v1855-tone="dark"] .atmo-language-popup {
  --dx1855-language-line: rgba(247, 251, 255, .62);
}
html body header.atmo-header[data-dx-v1855-tone="light"] .atmo-language-popup {
  --dx1855-language-line: rgba(23, 59, 75, .62);
}
html body .atmo-language-popup button[data-language-option] {
  border: 1px solid var(--dx1855-language-line) !important;
  box-shadow: none !important;
}
html body .atmo-language-popup button[data-language-option],
html body .atmo-language-popup button[data-language-option] span,
html body .atmo-language-popup button[data-language-option] small {
  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;
}
html body .atmo-language-popup button[data-dx-v1855-row-tone="dark"] {
  color: #f7fbff !important;
  --dx1855-language-line: rgba(247, 251, 255, .62);
}
html body .atmo-language-popup button[data-dx-v1855-row-tone="light"] {
  color: #173b4b !important;
  --dx1855-language-line: rgba(23, 59, 75, .62);
}
html body .atmo-language-popup button[data-language-option]:last-child {
  margin-bottom: 0 !important;
  border-bottom: 1px solid var(--dx1855-language-line) !important;
  border-radius: 18px !important;
}
html body.home .atmo-language-popup,
html body.page-template-front-page .atmo-language-popup {
  --dx1855-language-line: rgba(247, 251, 255, .70) !important;
}
html body.home .atmo-language-popup button[data-language-option],
html body.home .atmo-language-popup button[data-language-option] span,
html body.home .atmo-language-popup button[data-language-option] small,
html body.page-template-front-page .atmo-language-popup button[data-language-option],
html body.page-template-front-page .atmo-language-popup button[data-language-option] span,
html body.page-template-front-page .atmo-language-popup button[data-language-option] small {
  color: #f7fbff !important;
  -webkit-text-fill-color: #f7fbff !important;
  border-color: rgba(247, 251, 255, .70) !important;
}

/* -------------------------------------------------------------------------
   3. Enter with Audio: whole box, text, icons and outline adapt. The title has
      an always-moving gradient opposite to the selected text color.
   ------------------------------------------------------------------------- */
html body .atmo-sound-gate[data-dx-v1855-tone="dark"] {
  --dx1855-gate-fg: #f7fbff;
  --dx1855-gate-line: rgba(247, 251, 255, .72);
  --dx1855-gate-sweep: #102e3c;
}
html body .atmo-sound-gate[data-dx-v1855-tone="light"] {
  --dx1855-gate-fg: #173b4b;
  --dx1855-gate-line: rgba(23, 59, 75, .72);
  --dx1855-gate-sweep: #ffffff;
}
html body .atmo-sound-gate[data-dx-v1855-tone],
html body .atmo-sound-gate[data-dx-v1855-tone]:hover,
html body .atmo-sound-gate[data-dx-v1855-tone]:focus-within {
  color: var(--dx1855-gate-fg) !important;
  -webkit-text-fill-color: var(--dx1855-gate-fg) !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 1px solid var(--dx1855-gate-line) !important;
  outline: 0 !important;
  box-shadow: inset 0 0 0 .01px var(--dx1855-gate-line), 0 12px 36px rgba(3, 19, 28, .16) !important;
  -webkit-backdrop-filter: blur(18px) saturate(106%) !important;
  backdrop-filter: blur(18px) saturate(106%) !important;
}
html body .atmo-sound-gate[data-dx-v1855-tone] *,
html body .atmo-sound-gate[data-dx-v1855-tone]:hover *,
html body .atmo-sound-gate[data-dx-v1855-tone]:focus-within * {
  color: var(--dx1855-gate-fg) !important;
  -webkit-text-fill-color: var(--dx1855-gate-fg) !important;
  border-color: var(--dx1855-gate-line) !important;
}
html body .atmo-sound-gate[data-dx-v1855-tone] .atmo-sound-bars i {
  background: var(--dx1855-gate-fg) !important;
}
html body .atmo-sound-gate[data-dx-v1855-tone] [data-enable-sound] b {
  position: relative !important;
  display: inline-block !important;
  color: var(--dx1855-gate-fg) !important;
  -webkit-text-fill-color: var(--dx1855-gate-fg) !important;
  background: none !important;
}
html body .atmo-sound-gate[data-dx-v1855-tone] [data-enable-sound] b::after {
  content: attr(data-dx1855-label) !important;
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
  background: linear-gradient(110deg, transparent 20%, var(--dx1855-gate-sweep) 48%, transparent 76%) !important;
  background-size: 260% 100% !important;
  background-position: 150% 0 !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  opacity: .72 !important;
  pointer-events: none !important;
  animation: dx1855GateSweep 3.1s linear infinite !important;
}
html body .atmo-sound-gate[data-dx-v1855-tone]:hover [data-enable-sound] b::after,
html body .atmo-sound-gate[data-dx-v1855-tone]:focus-within [data-enable-sound] b::after {
  opacity: .96 !important;
}
@keyframes dx1855GateSweep {
  from { background-position: 150% 0; }
  to { background-position: -150% 0; }
}
html body .atmo-sound-gate,
html body .atmo-sound-gate * {
  cursor: none !important;
}

/* -------------------------------------------------------------------------
   4. Back-to-top: the canonical button must remain clickable on every page.
   ------------------------------------------------------------------------- */
html body > button.back-to-top[data-dx-v1855-top="true"] {
  pointer-events: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}
html body > button.back-to-top[data-dx-v1855-top="true"].is-visible {
  pointer-events: auto !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* -------------------------------------------------------------------------
   5. Mobile command menu. This is the actual white full-screen menu shown in
      the supplied screenshots (not the older .atmo-nav drawer). Every piece of
      menu copy, including the lower companies/network area and pseudo-labels,
      is permanently dark on mobile.
   ------------------------------------------------------------------------- */
@media (max-width: 980px) {
  html body .dx-command-menu,
  html body .dx-command-menu.is-open,
  html body .dx-command-menu .dx-command-panel,
  html body .dx-command-menu.is-open .dx-command-panel {
    color: #173b4b !important;
    -webkit-text-fill-color: #173b4b !important;
  }
  html body .dx-command-menu .dx-command-panel,
  html body .dx-command-menu.is-open .dx-command-panel {
    background: #f7f9fa !important;
    background-color: #f7f9fa !important;
    background-image: none !important;
    border-color: rgba(23, 59, 75, .24) !important;
  }
  html body .dx-command-menu .dx-command-panel *,
  html body .dx-command-menu.is-open .dx-command-panel *,
  html body .dx-command-menu .dx-command-primary a,
  html body .dx-command-menu .dx-command-primary span,
  html body .dx-command-menu .dx-command-primary small,
  html body .dx-command-menu .dx-command-network,
  html body .dx-command-menu .dx-command-network > span,
  html body .dx-command-menu .dx-command-network a,
  html body .dx-command-menu .dx-command-network b,
  html body .dx-command-menu .dx-command-network small,
  html body .dx-command-menu .dx-command-foot,
  html body .dx-command-menu .dx-command-foot a,
  html body .dx-command-menu .dx-command-brand,
  html body .dx-command-menu .dx-command-close {
    color: #173b4b !important;
    -webkit-text-fill-color: #173b4b !important;
  }
  html body .dx-command-menu .dx-command-panel *::before,
  html body .dx-command-menu .dx-command-panel *::after {
    color: #173b4b !important;
    -webkit-text-fill-color: #173b4b !important;
    border-color: rgba(23, 59, 75, .34) !important;
  }
  html body .dx-command-menu .dx-command-primary a,
  html body .dx-command-menu .dx-command-head,
  html body .dx-command-menu .dx-command-foot,
  html body .dx-command-menu .dx-command-network,
  html body .dx-command-menu .dx-command-network a {
    border-color: rgba(23, 59, 75, .34) !important;
  }
  html body .dx-command-menu .dx-command-close {
    background: rgba(255, 255, 255, .64) !important;
    border-color: rgba(23, 59, 75, .34) !important;
  }
  html body .dx-command-menu .dx-command-close span {
    background: #173b4b !important;
  }

  /* Keep the legacy drawer dark too, in case a breakpoint exposes it. */
  html body.denlyx-atmosphere-theme .atmo-nav,
  html body.denlyx-atmosphere-theme .atmo-nav.open,
  html body.denlyx-atmosphere-theme .atmo-nav *,
  html body.denlyx-atmosphere-theme .atmo-nav.open * {
    color: #173b4b !important;
    -webkit-text-fill-color: #173b4b !important;
  }
  html body.denlyx-atmosphere-theme .atmo-nav,
  html body.denlyx-atmosphere-theme .atmo-nav.open,
  html body.denlyx-atmosphere-theme .atmo-nav .atmo-dropdown {
    background: #f7f9fa !important;
    background-image: none !important;
  }

  html body .atmo-language-popup {
    max-height: calc(100dvh - 86px) !important;
    padding-bottom: 22px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body .atmo-sound-gate [data-enable-sound] b::after {
    animation-duration: 6s !important;
  }
}

/* source: denlyx-v1856-production.css */
/* DENLYX production v0.2.8 / visual source v1.8.56.
   Final acceptance owner for the shared mobile menu, independent controls,
   adaptive audio prompt, and desktop-only footer-safe Back to Top repair. */

:root {
  --dx1856-dark: #173b4b;
  --dx1856-light: #f7fbff;
}

/* -------------------------------------------------------------------------
   1. Header wrappers never paint a shared capsule. Each requested control is
      individually outlined, with a more visible default line.
   ------------------------------------------------------------------------- */
html body.denlyx-atmosphere-theme header.atmo-header,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  filter: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions::before,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions::after {
  content: none !important;
  display: none !important;
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1856-tone="dark"] {
  --dx1856-control-fg: var(--dx1856-light);
  --dx1856-control-line: rgba(247, 251, 255, .88);
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1856-tone="light"] {
  --dx1856-control-fg: var(--dx1856-dark);
  --dx1856-control-line: rgba(23, 59, 75, .82);
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1856-tone] .atmo-language-trigger,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1856-tone] .atmo-sound-toggle,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1856-tone] .atmo-header-cta,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1856-tone] .dx-command-toggle {
  box-sizing: border-box !important;
  color: var(--dx1856-control-fg) !important;
  -webkit-text-fill-color: var(--dx1856-control-fg) !important;
  background: rgba(255,255,255,.015) !important;
  background-image: none !important;
  border: 1.35px solid var(--dx1856-control-line) !important;
  outline: 0 !important;
  box-shadow: inset 0 0 0 .01px var(--dx1856-control-line) !important;
  -webkit-backdrop-filter: blur(14px) saturate(104%) !important;
  backdrop-filter: blur(14px) saturate(104%) !important;
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1856-tone] .atmo-language-trigger:hover,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1856-tone] .atmo-language-trigger:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1856-tone] .atmo-language-trigger[aria-expanded="true"],
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1856-tone] .atmo-sound-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1856-tone] .atmo-sound-toggle:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1856-tone] .atmo-header-cta:hover,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1856-tone] .atmo-header-cta:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1856-tone] .dx-command-toggle:hover,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1856-tone] .dx-command-toggle:focus-visible {
  color: var(--dx1856-control-fg) !important;
  -webkit-text-fill-color: var(--dx1856-control-fg) !important;
  border-color: var(--dx1856-control-line) !important;
  background: rgba(255,255,255,.025) !important;
  background-image: none !important;
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1856-tone] .atmo-language-chevron path {
  stroke: currentColor !important;
}

/* -------------------------------------------------------------------------
   2. One canonical mobile menu from header.php. It is always white and every
      piece of menu text is locked dark, regardless of page/background tone.
      The separate command menu is desktop-only to avoid duplicate mobile UI.
   ------------------------------------------------------------------------- */
@media (max-width: 980px) {
  html body .dx-command-toggle,
  html body .dx-command-menu {
    display: none !important;
  }

  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav,
  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav.open,
  html body.denlyx-atmosphere-theme.menu-open header.atmo-header nav#denlyx-primary-navigation.atmo-nav,
  html body.denlyx-atmosphere-theme.menu-open header.atmo-header nav#denlyx-primary-navigation.atmo-nav.open {
    --dx1856-mobile-menu-fg: #173b4b !important;
    color: #173b4b !important;
    -webkit-text-fill-color: #173b4b !important;
    background: #f7f9fa !important;
    background-color: #f7f9fa !important;
    background-image: none !important;
  }

  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav .nav-link,
  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav .nav-link:hover,
  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav .nav-link:focus,
  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav .nav-link:active,
  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav .nav-link.active,
  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav .nav-caret,
  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav .nav-item,
  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav .atmo-dropdown,
  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav .atmo-dropdown-title,
  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav .atmo-dropdown-title *,
  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav .atmo-dropdown a,
  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav .atmo-dropdown strong,
  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav .atmo-dropdown small,
  html body.denlyx-atmosphere-theme.menu-open header.atmo-header nav#denlyx-primary-navigation.atmo-nav *,
  html body.denlyx-atmosphere-theme.menu-open header.atmo-header nav#denlyx-primary-navigation.atmo-nav.open * {
    color: #173b4b !important;
    -webkit-text-fill-color: #173b4b !important;
    text-shadow: none !important;
  }

  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav *::before,
  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav *::after,
  html body.denlyx-atmosphere-theme.menu-open header.atmo-header nav#denlyx-primary-navigation.atmo-nav *::before,
  html body.denlyx-atmosphere-theme.menu-open header.atmo-header nav#denlyx-primary-navigation.atmo-nav *::after {
    color: #173b4b !important;
    -webkit-text-fill-color: #173b4b !important;
    border-color: rgba(23, 59, 75, .42) !important;
  }

  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav .atmo-dropdown {
    background: #f7f9fa !important;
    background-color: #f7f9fa !important;
    background-image: none !important;
  }
}

/* -------------------------------------------------------------------------
   3. Adaptive Enter with Audio. The detector assigns dark/light from the
      actual surface under the fixed prompt. No vertical divider is allowed.
   ------------------------------------------------------------------------- */
html body .atmo-sound-gate[data-dx-v1856-tone="dark"] {
  --dx1856-gate-fg: #f7fbff;
  --dx1856-gate-line: rgba(247, 251, 255, .88);
  --dx1856-gate-sweep: #102e3c;
}
html body .atmo-sound-gate[data-dx-v1856-tone="light"] {
  --dx1856-gate-fg: #173b4b;
  --dx1856-gate-line: rgba(23, 59, 75, .82);
  --dx1856-gate-sweep: #ffffff;
}
html body .atmo-sound-gate[data-dx-v1856-tone],
html body .atmo-sound-gate[data-dx-v1856-tone]:hover,
html body .atmo-sound-gate[data-dx-v1856-tone]:focus-within {
  color: var(--dx1856-gate-fg) !important;
  -webkit-text-fill-color: var(--dx1856-gate-fg) !important;
  background: rgba(255,255,255,.012) !important;
  background-image: none !important;
  border: 1.35px solid var(--dx1856-gate-line) !important;
  outline: 0 !important;
  box-shadow: inset 0 0 0 .01px var(--dx1856-gate-line), 0 12px 36px rgba(3, 19, 28, .16) !important;
  -webkit-backdrop-filter: blur(18px) saturate(106%) !important;
  backdrop-filter: blur(18px) saturate(106%) !important;
}
html body .atmo-sound-gate[data-dx-v1856-tone] button,
html body .atmo-sound-gate[data-dx-v1856-tone] button:hover,
html body .atmo-sound-gate[data-dx-v1856-tone] button:focus,
html body .atmo-sound-gate[data-dx-v1856-tone] button span,
html body .atmo-sound-gate[data-dx-v1856-tone] button b,
html body .atmo-sound-gate[data-dx-v1856-tone] button small,
html body .atmo-sound-gate[data-dx-v1856-tone] .atmo-sound-gate-close {
  color: var(--dx1856-gate-fg) !important;
  -webkit-text-fill-color: var(--dx1856-gate-fg) !important;
  text-shadow: none !important;
}
html body .atmo-sound-gate[data-dx-v1856-tone] > button,
html body .atmo-sound-gate[data-dx-v1856-tone] > button:hover,
html body .atmo-sound-gate[data-dx-v1856-tone] > button:focus,
html body .atmo-sound-gate[data-dx-v1856-tone] .atmo-sound-gate-close,
html body .atmo-sound-gate[data-dx-v1856-tone] .atmo-sound-gate-close:hover,
html body .atmo-sound-gate[data-dx-v1856-tone] .atmo-sound-gate-close:focus {
  border: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  background-image: none !important;
}
html body .atmo-sound-gate[data-dx-v1856-tone] .atmo-sound-bars i {
  background: var(--dx1856-gate-fg) !important;
}
html body .atmo-sound-gate[data-dx-v1856-tone] [data-enable-sound] b {
  position: relative !important;
  display: inline-block !important;
  overflow: hidden !important;
  color: var(--dx1856-gate-fg) !important;
  -webkit-text-fill-color: var(--dx1856-gate-fg) !important;
  background: none !important;
  border: 0 !important;
}
html body .atmo-sound-gate[data-dx-v1856-tone] [data-enable-sound] b::before {
  content: attr(data-dx1856-label) !important;
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
  background: linear-gradient(110deg, transparent 22%, var(--dx1856-gate-sweep) 50%, transparent 78%) !important;
  background-size: 260% 100% !important;
  background-position: 150% 0 !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  opacity: .78 !important;
  pointer-events: none !important;
  animation: dx1856GateSweep 3.1s linear infinite !important;
}
html body .atmo-sound-gate[data-dx-v1856-tone] [data-enable-sound] b::after {
  content: none !important;
  display: none !important;
}
@keyframes dx1856GateSweep {
  from { background-position: 150% 0; }
  to { background-position: -150% 0; }
}
html body .atmo-sound-gate,
html body .atmo-sound-gate * {
  cursor: none !important;
}

/* -------------------------------------------------------------------------
   4. Desktop-only Back to Top repair. Mobile retains its existing accepted
      behavior unchanged. The desktop button stays above the footer overlay.
   ------------------------------------------------------------------------- */
@media (min-width: 981px) {
  html body > button.back-to-top[data-dx-canonical-top] {
    position: fixed !important;
    z-index: 2147483646 !important;
    pointer-events: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    touch-action: manipulation !important;
  }
  html body > button.back-to-top[data-dx-canonical-top].is-visible,
  html body > button.back-to-top[data-dx-canonical-top].visible {
    pointer-events: auto !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body .atmo-sound-gate [data-enable-sound] b::before {
    animation-duration: 6s !important;
  }
}

/* source: denlyx-v1857-production.css */
/* DENLYX production v0.2.9 / visual source v1.8.57.
   Desktop-only acceptance owner. Mobile v0.2.8 behavior is intentionally
   untouched. This layer owns: independent desktop header controls, removal of
   the compact wrapper rectangle, complete adaptive audio-prompt contrast, and
   footer-safe desktop Back to Top input. */

@media (min-width: 981px) {
  /* The parent is layout-only. It must never draw the outer rectangle shown in
     the screenshots, including compact mode and all pseudo-elements. */
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions,
  html body.denlyx-atmosphere-theme header.atmo-header.scrolled .atmo-header-actions,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-expanded .atmo-header-actions {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 0 !important;
    border-color: transparent !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    filter: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    clip-path: none !important;
    -webkit-mask: none !important;
    mask: none !important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions {
    padding: 0 !important;
    min-width: 0 !important;
    width: auto !important;
    overflow: visible !important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions::before,
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions::after,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions::before,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions::after {
    content: none !important;
    display: none !important;
    background: none !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
  }

  /* The language-control container is never the visible pill. The actual EN
     button gets the same independent outline as SOUND and START A PROJECT. */
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-control {
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    filter: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-control::before,
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-control::after {
    content: none !important;
    display: none !important;
  }

  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1857-tone="dark"] {
    --dx1857-control-fg: #f7fbff;
    --dx1857-control-line: rgba(247, 251, 255, .96);
    --dx1857-control-shadow: rgba(247, 251, 255, .18);
  }
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1857-tone="light"] {
    --dx1857-control-fg: #173b4b;
    --dx1857-control-line: rgba(23, 59, 75, .92);
    --dx1857-control-shadow: rgba(23, 59, 75, .13);
  }

  /* Every desktop route and every header state receives a visible default
     outline. No hover is required. */
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1857-tone] .atmo-language-trigger,
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1857-tone] .atmo-sound-toggle,
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1857-tone] .atmo-header-cta,
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1857-tone] .dx-command-toggle,
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1857-tone] .atmo-language-trigger:hover,
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1857-tone] .atmo-sound-toggle:hover,
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1857-tone] .atmo-header-cta:hover,
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1857-tone] .dx-command-toggle:hover,
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1857-tone] .atmo-language-trigger:focus-visible,
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1857-tone] .atmo-sound-toggle:focus-visible,
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1857-tone] .atmo-header-cta:focus-visible,
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1857-tone] .dx-command-toggle:focus-visible,
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1857-tone] .atmo-language-trigger[aria-expanded="true"] {
    box-sizing: border-box !important;
    color: var(--dx1857-control-fg) !important;
    -webkit-text-fill-color: var(--dx1857-control-fg) !important;
    opacity: 1 !important;
    background: rgba(255, 255, 255, .012) !important;
    background-color: rgba(255, 255, 255, .012) !important;
    background-image: none !important;
    border: 2px solid var(--dx1857-control-line) !important;
    border-color: var(--dx1857-control-line) !important;
    outline: 0 !important;
    box-shadow: 0 0 0 .35px var(--dx1857-control-shadow), inset 0 1px 0 rgba(255, 255, 255, .06) !important;
    filter: none !important;
    -webkit-backdrop-filter: blur(14px) saturate(104%) !important;
    backdrop-filter: blur(14px) saturate(104%) !important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1857-tone] .atmo-language-trigger *,
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1857-tone] .atmo-sound-toggle *,
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1857-tone] .atmo-header-cta * {
    color: inherit !important;
    -webkit-text-fill-color: currentColor !important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1857-tone] .atmo-language-chevron path {
    stroke: currentColor !important;
  }

  /* Old hover layers are not allowed to draw a divider or extra frame. */
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-cta::before,
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-cta::after,
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger::before,
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger::after,
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle::before,
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle::after,
  html body.denlyx-atmosphere-theme header.atmo-header .dx-command-toggle::before,
  html body.denlyx-atmosphere-theme header.atmo-header .dx-command-toggle::after {
    border-left: 0 !important;
    border-right: 0 !important;
  }

  /* Audio prompt: detector supplies the tone. Every visible descendant uses the
     same foreground; only the title sweep uses the opposite color. */
  html body .atmo-sound-gate[data-dx-v1857-tone="dark"] {
    --dx1857-gate-fg: #f7fbff;
    --dx1857-gate-line: rgba(247, 251, 255, .96);
    --dx1857-gate-sweep: #102e3c;
  }
  html body .atmo-sound-gate[data-dx-v1857-tone="light"] {
    --dx1857-gate-fg: #173b4b;
    --dx1857-gate-line: rgba(23, 59, 75, .92);
    --dx1857-gate-sweep: #ffffff;
  }
  html body .atmo-sound-gate[data-dx-v1857-tone],
  html body .atmo-sound-gate[data-dx-v1857-tone]:hover,
  html body .atmo-sound-gate[data-dx-v1857-tone]:focus-within {
    color: var(--dx1857-gate-fg) !important;
    -webkit-text-fill-color: var(--dx1857-gate-fg) !important;
    opacity: 1 !important;
    background: rgba(255, 255, 255, .012) !important;
    background-color: rgba(255, 255, 255, .012) !important;
    background-image: none !important;
    border: 2px solid var(--dx1857-gate-line) !important;
    border-color: var(--dx1857-gate-line) !important;
    outline: 0 !important;
    box-shadow: 0 12px 36px rgba(3, 19, 28, .16), 0 0 0 .35px var(--dx1857-gate-line) !important;
    filter: none !important;
    mix-blend-mode: normal !important;
    -webkit-backdrop-filter: blur(18px) saturate(106%) !important;
    backdrop-filter: blur(18px) saturate(106%) !important;
  }
  html body .atmo-sound-gate[data-dx-v1857-tone] [data-enable-sound],
  html body .atmo-sound-gate[data-dx-v1857-tone] [data-enable-sound]:hover,
  html body .atmo-sound-gate[data-dx-v1857-tone] [data-enable-sound]:focus,
  html body .atmo-sound-gate[data-dx-v1857-tone] [data-enable-sound] > span,
  html body .atmo-sound-gate[data-dx-v1857-tone] [data-enable-sound] b,
  html body .atmo-sound-gate[data-dx-v1857-tone] [data-enable-sound] small,
  html body .atmo-sound-gate[data-dx-v1857-tone] .atmo-sound-gate-close,
  html body .atmo-sound-gate[data-dx-v1857-tone] .atmo-sound-gate-close:hover,
  html body .atmo-sound-gate[data-dx-v1857-tone] .atmo-sound-gate-close:focus {
    color: var(--dx1857-gate-fg) !important;
    -webkit-text-fill-color: var(--dx1857-gate-fg) !important;
    text-shadow: none !important;
    filter: none !important;
    mix-blend-mode: normal !important;
  }
  html body .atmo-sound-gate[data-dx-v1857-tone] [data-enable-sound],
  html body .atmo-sound-gate[data-dx-v1857-tone] .atmo-sound-gate-close {
    border: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    background-image: none !important;
  }
  html body .atmo-sound-gate[data-dx-v1857-tone] [data-enable-sound]::before,
  html body .atmo-sound-gate[data-dx-v1857-tone] [data-enable-sound]::after,
  html body .atmo-sound-gate[data-dx-v1857-tone] .atmo-sound-gate-close::before,
  html body .atmo-sound-gate[data-dx-v1857-tone] .atmo-sound-gate-close::after {
    content: none !important;
    display: none !important;
    border: 0 !important;
    box-shadow: none !important;
  }
  html body .atmo-sound-gate[data-dx-v1857-tone] [data-enable-sound] b {
    position: relative !important;
    display: inline-block !important;
    overflow: hidden !important;
    opacity: 1 !important;
  }
  html body .atmo-sound-gate[data-dx-v1857-tone] [data-enable-sound] small {
    opacity: .86 !important;
  }
  html body .atmo-sound-gate[data-dx-v1857-tone] .atmo-sound-bars,
  html body .atmo-sound-gate[data-dx-v1857-tone] .atmo-sound-bars i {
    opacity: 1 !important;
  }
  html body .atmo-sound-gate[data-dx-v1857-tone] .atmo-sound-bars i {
    background: var(--dx1857-gate-fg) !important;
  }
  html body .atmo-sound-gate[data-dx-v1857-tone] [data-enable-sound] b::before {
    content: attr(data-dx1857-label) !important;
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    background: linear-gradient(110deg, transparent 22%, var(--dx1857-gate-sweep) 50%, transparent 78%) !important;
    background-size: 260% 100% !important;
    background-position: 150% 0 !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    opacity: .82 !important;
    pointer-events: none !important;
    animation: dx1857GateSweep 3.1s linear infinite !important;
  }
  html body .atmo-sound-gate[data-dx-v1857-tone] [data-enable-sound] b::after {
    content: none !important;
    display: none !important;
  }

  /* Desktop button remains a direct body child above every footer layer. */
  html body > button.back-to-top[data-dx-canonical-top][data-dx-v1857-top="true"] {
    position: fixed !important;
    z-index: 2147483647 !important;
    touch-action: manipulation !important;
    isolation: isolate !important;
  }
  html body > button.back-to-top[data-dx-canonical-top][data-dx-v1857-top="true"].is-visible,
  html body > button.back-to-top[data-dx-canonical-top][data-dx-v1857-top="true"].visible {
    pointer-events: auto !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
}

@keyframes dx1857GateSweep {
  from { background-position: 150% 0; }
  to { background-position: -150% 0; }
}

@media (min-width: 981px) and (prefers-reduced-motion: reduce) {
  html body .atmo-sound-gate [data-enable-sound] b::before {
    animation-duration: 6s !important;
  }
}

/* source: denlyx-v1858-production.css */
/* DENLYX production v0.3.0 / visual source v1.8.58.
   Final structural owner for desktop compact controls and the audio-entry prompt.
   The compact controls are new body-level controls; the legacy compact header is
   fully removed from paint, so no inherited rail, rectangle, capsule, or pseudo
   element can reappear. */

/* -------------------------------------------------------------------------
   1. Desktop compact controls: two independent buttons, no shared surface.
   ------------------------------------------------------------------------- */
.dx-v1858-compact-controls {
  display: none;
}

@media (min-width: 981px) {
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact + .dx-v1858-compact-controls,
  html body.denlyx-atmosphere-theme .dx-v1858-compact-controls.is-visible {
    position: fixed !important;
    top: max(22px, calc(env(safe-area-inset-top, 0px) + 14px)) !important;
    right: max(26px, calc(env(safe-area-inset-right, 0px) + 18px)) !important;
    z-index: 2147483500 !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    isolation: isolate !important;
    color: var(--dx1858-compact-fg, #f7fbff) !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    filter: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    clip-path: none !important;
    -webkit-mask: none !important;
    mask: none !important;
    transition: none !important;
  }

  html body.admin-bar .dx-v1858-compact-controls {
    top: 54px !important;
  }

  html body .dx-v1858-compact-controls::before,
  html body .dx-v1858-compact-controls::after {
    content: none !important;
    display: none !important;
  }

  html body .dx-v1858-compact-controls[data-dx-v1858-tone="dark"] {
    --dx1858-compact-fg: #f7fbff;
    --dx1858-compact-line: rgba(247, 251, 255, .94);
    --dx1858-compact-hover: rgba(247, 251, 255, .10);
    --dx1858-compact-shadow: rgba(247, 251, 255, .15);
  }
  html body .dx-v1858-compact-controls[data-dx-v1858-tone="light"] {
    --dx1858-compact-fg: #173b4b;
    --dx1858-compact-line: rgba(23, 59, 75, .88);
    --dx1858-compact-hover: rgba(23, 59, 75, .075);
    --dx1858-compact-shadow: rgba(23, 59, 75, .12);
  }

  html body .dx-v1858-compact-button,
  html body .dx-v1858-compact-button:hover,
  html body .dx-v1858-compact-button:focus-visible,
  html body .dx-v1858-compact-button:active {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 0 26px !important;
    border: 1.6px solid var(--dx1858-compact-line) !important;
    border-radius: 999px !important;
    outline: 0 !important;
    color: var(--dx1858-compact-fg) !important;
    -webkit-text-fill-color: var(--dx1858-compact-fg) !important;
    background: rgba(255, 255, 255, .018) !important;
    background-color: rgba(255, 255, 255, .018) !important;
    background-image: none !important;
    box-shadow: 0 0 0 .35px var(--dx1858-compact-shadow), inset 0 1px 0 rgba(255, 255, 255, .08) !important;
    -webkit-backdrop-filter: blur(16px) saturate(108%) !important;
    backdrop-filter: blur(16px) saturate(108%) !important;
    font: inherit !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: .12em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    cursor: pointer !important;
    opacity: 1 !important;
    filter: none !important;
    transform: translate3d(0, 0, 0) !important;
    transition: transform .28s cubic-bezier(.22,.8,.22,1), background-color .24s ease, border-color .24s ease, box-shadow .24s ease !important;
  }

  html body .dx-v1858-compact-menu {
    min-width: 126px !important;
  }
  html body .dx-v1858-compact-sound {
    min-width: 158px !important;
  }

  html body .dx-v1858-compact-button:hover,
  html body .dx-v1858-compact-button:focus-visible {
    background: var(--dx1858-compact-hover) !important;
    background-color: var(--dx1858-compact-hover) !important;
    transform: translate3d(0, -2px, 0) !important;
    box-shadow: 0 8px 22px rgba(4, 18, 25, .12), 0 0 0 .45px var(--dx1858-compact-shadow), inset 0 1px 0 rgba(255,255,255,.10) !important;
  }
  html body .dx-v1858-compact-button:active {
    transform: translate3d(0, 0, 0) scale(.985) !important;
  }

  html body .dx-v1858-compact-button::before,
  html body .dx-v1858-compact-button::after {
    content: none !important;
    display: none !important;
    border: 0 !important;
  }

  html body .dx-v1858-menu-icon {
    display: inline-flex !important;
    flex-direction: column !important;
    gap: 3px !important;
    width: 10px !important;
  }
  html body .dx-v1858-menu-icon i {
    display: block !important;
    width: 10px !important;
    height: 1.5px !important;
    border-radius: 999px !important;
    background: currentColor !important;
  }

  html body .dx-v1858-sound-bars {
    display: inline-flex !important;
    align-items: center !important;
    gap: 2px !important;
    width: 15px !important;
    height: 16px !important;
  }
  html body .dx-v1858-sound-bars i {
    display: block !important;
    width: 2px !important;
    border-radius: 999px !important;
    background: currentColor !important;
    animation: dx1858SoundBars 1.25s ease-in-out infinite alternate !important;
  }
  html body .dx-v1858-sound-bars i:nth-child(1) { height: 7px !important; animation-delay: -.24s !important; }
  html body .dx-v1858-sound-bars i:nth-child(2) { height: 14px !important; animation-delay: -.08s !important; }
  html body .dx-v1858-sound-bars i:nth-child(3) { height: 10px !important; animation-delay: -.16s !important; }
  html body .dx-v1858-compact-sound.is-off .dx-v1858-sound-bars i {
    animation: none !important;
    height: 3px !important;
  }
  html body .dx-v1858-compact-state {
    color: #42e1af !important;
    -webkit-text-fill-color: #42e1af !important;
  }
  html body .dx-v1858-compact-sound.is-off .dx-v1858-compact-state {
    color: #ff676f !important;
    -webkit-text-fill-color: #ff676f !important;
  }
}

@keyframes dx1858SoundBars {
  from { transform: scaleY(.62); opacity: .72; }
  to { transform: scaleY(1); opacity: 1; }
}

/* -------------------------------------------------------------------------
   2. Audio-entry prompt: visible on mobile until accepted/dismissed, adaptive
      text/icons/outline on every page, and no hover divider.
   ------------------------------------------------------------------------- */
html body .atmo-sound-gate[data-dx-v1858-tone="dark"] {
  --dx1858-gate-fg: #f7fbff;
  --dx1858-gate-subtle: rgba(247, 251, 255, .78);
  --dx1858-gate-line: rgba(247, 251, 255, .78);
  --dx1858-gate-sweep: rgba(5, 22, 31, .96);
  --dx1858-gate-glass: rgba(5, 22, 31, .16);
}
html body .atmo-sound-gate[data-dx-v1858-tone="light"] {
  --dx1858-gate-fg: #173b4b;
  --dx1858-gate-subtle: rgba(23, 59, 75, .74);
  --dx1858-gate-line: rgba(23, 59, 75, .76);
  --dx1858-gate-sweep: rgba(255, 255, 255, .98);
  --dx1858-gate-glass: rgba(255, 255, 255, .13);
}

html body .atmo-sound-gate[data-dx-v1858-tone],
html body .atmo-sound-gate[data-dx-v1858-tone]:hover,
html body .atmo-sound-gate[data-dx-v1858-tone]:focus-within {
  box-sizing: border-box !important;
  color: var(--dx1858-gate-fg) !important;
  -webkit-text-fill-color: var(--dx1858-gate-fg) !important;
  background: var(--dx1858-gate-glass) !important;
  background-color: var(--dx1858-gate-glass) !important;
  background-image: none !important;
  border: 1.5px solid var(--dx1858-gate-line) !important;
  border-color: var(--dx1858-gate-line) !important;
  outline: 0 !important;
  box-shadow: 0 10px 34px rgba(4,18,25,.10), inset 0 1px 0 rgba(255,255,255,.08) !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  -webkit-backdrop-filter: blur(18px) saturate(108%) !important;
  backdrop-filter: blur(18px) saturate(108%) !important;
}

html body .atmo-sound-gate[data-dx-v1858-tone] [data-enable-sound],
html body .atmo-sound-gate[data-dx-v1858-tone] [data-enable-sound]:hover,
html body .atmo-sound-gate[data-dx-v1858-tone] [data-enable-sound]:focus,
html body .atmo-sound-gate[data-dx-v1858-tone] [data-enable-sound] > span,
html body .atmo-sound-gate[data-dx-v1858-tone] [data-enable-sound] b,
html body .atmo-sound-gate[data-dx-v1858-tone] .atmo-sound-gate-close,
html body .atmo-sound-gate[data-dx-v1858-tone] .atmo-sound-gate-close:hover,
html body .atmo-sound-gate[data-dx-v1858-tone] .atmo-sound-gate-close:focus {
  color: var(--dx1858-gate-fg) !important;
  -webkit-text-fill-color: var(--dx1858-gate-fg) !important;
  text-shadow: none !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
}
html body .atmo-sound-gate[data-dx-v1858-tone] [data-enable-sound] small {
  color: var(--dx1858-gate-subtle) !important;
  -webkit-text-fill-color: var(--dx1858-gate-subtle) !important;
  opacity: 1 !important;
}
html body .atmo-sound-gate[data-dx-v1858-tone] .atmo-sound-bars i {
  background: var(--dx1858-gate-fg) !important;
  background-color: var(--dx1858-gate-fg) !important;
  opacity: 1 !important;
}

/* Remove the vertical line and every legacy button overlay. */
html body .atmo-sound-gate[data-dx-v1858-tone] [data-enable-sound],
html body .atmo-sound-gate[data-dx-v1858-tone] .atmo-sound-gate-close {
  border: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}
html body .atmo-sound-gate[data-dx-v1858-tone] [data-enable-sound]::before,
html body .atmo-sound-gate[data-dx-v1858-tone] [data-enable-sound]::after,
html body .atmo-sound-gate[data-dx-v1858-tone] .atmo-sound-gate-close::before,
html body .atmo-sound-gate[data-dx-v1858-tone] .atmo-sound-gate-close::after {
  content: none !important;
  display: none !important;
  border: 0 !important;
  background: none !important;
}

html body .atmo-sound-gate[data-dx-v1858-tone] [data-enable-sound] b {
  position: relative !important;
  display: inline-block !important;
  overflow: hidden !important;
  isolation: isolate !important;
}
html body .atmo-sound-gate[data-dx-v1858-tone] [data-enable-sound] b::before {
  content: attr(data-dx-v1858-label) !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
  background: linear-gradient(110deg, transparent 25%, var(--dx1858-gate-sweep) 46%, var(--dx1858-gate-sweep) 54%, transparent 75%) !important;
  background-size: 240% 100% !important;
  background-position: 140% 0 !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  pointer-events: none !important;
  animation: dx1858AudioSweep 2.8s linear infinite !important;
}
html body .atmo-sound-gate[data-dx-v1858-tone] [data-enable-sound] b::after {
  content: none !important;
  display: none !important;
}

@keyframes dx1858AudioSweep {
  0% { background-position: 145% 0; }
  100% { background-position: -55% 0; }
}

@media (max-width: 980px) {
  html body .atmo-sound-gate[data-dx-v1858-mobile="true"] {
    position: fixed !important;
    left: max(14px, env(safe-area-inset-left, 0px)) !important;
    right: max(14px, env(safe-area-inset-right, 0px)) !important;
    bottom: max(108px, calc(env(safe-area-inset-bottom, 0px) + 94px)) !important;
    width: auto !important;
    max-width: 430px !important;
    min-height: 58px !important;
    margin-inline: auto !important;
    z-index: 2147483400 !important;
    transform-origin: center bottom !important;
  }
  html body .atmo-sound-gate[data-dx-v1858-mobile="true"] [data-enable-sound] {
    min-width: 0 !important;
    padding-left: 16px !important;
    padding-right: 8px !important;
  }
  html body .atmo-sound-gate[data-dx-v1858-mobile="true"] [data-enable-sound] b {
    font-size: 11px !important;
    letter-spacing: .10em !important;
  }
  html body .atmo-sound-gate[data-dx-v1858-mobile="true"] [data-enable-sound] small {
    font-size: 9px !important;
    white-space: nowrap !important;
  }
  html body .atmo-sound-gate[data-dx-v1858-mobile="true"] .atmo-sound-gate-close {
    width: 44px !important;
    min-width: 44px !important;
  }
  html body .atmo-sound-gate[data-dx-v1858-mobile="true"][data-dx-v1858-visible="true"],
  html body.atmo-sound-on .atmo-sound-gate[data-dx-v1858-mobile="true"][data-dx-v1858-visible="true"],
  html body .atmo-sound-gate[data-dx-v1858-mobile="true"][data-dx-v1858-visible="true"].is-hidden,
  html body .atmo-sound-gate[data-dx-v1858-mobile="true"][data-dx-v1858-visible="true"].is-pending,
  html body .atmo-sound-gate[data-dx-v1858-mobile="true"][data-dx-v1858-visible="true"].is-auto-fading {
    display: flex !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: none !important;
    animation: none !important;
  }
  html body .atmo-sound-gate[data-dx-v1858-mobile="true"][data-dx-v1858-visible="false"] {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body .atmo-sound-gate [data-enable-sound] b::before,
  html body .dx-v1858-sound-bars i {
    animation: none !important;
  }
}

/* source: denlyx-v1859-production.css */
/* DENLYX production v0.3.1 / visual source v1.8.59.
   Acceptance layer for requests #1-#9. Desktop presentation changes are
   isolated from the approved mobile menu and mobile Back-to-Top behavior. */

/* -------------------------------------------------------------------------
   #9 — Paint the saved audio state before deferred JavaScript runs.
   ------------------------------------------------------------------------- */
html[data-dx-audio-state="off"] body .atmo-sound-toggle .dx-sound-on {
  opacity: 0 !important;
  visibility: hidden !important;
}
html[data-dx-audio-state="off"] body .atmo-sound-toggle .dx-sound-off {
  opacity: 1 !important;
  visibility: visible !important;
}
html[data-dx-audio-state="on"] body .atmo-sound-toggle .dx-sound-on {
  opacity: 1 !important;
  visibility: visible !important;
}
html[data-dx-audio-state="on"] body .atmo-sound-toggle .dx-sound-off {
  opacity: 0 !important;
  visibility: hidden !important;
}
html[data-dx-audio-state="off"] body .atmo-sound-toggle .atmo-sound-bars i,
html[data-dx-audio-state="off"] body .dx-v1858-sound-bars i {
  animation: none !important;
  height: 3px !important;
}
html body [data-dx-v1858-sound-state] {
  position: relative !important;
  min-width: 24px !important;
  font-size: 0 !important;
}
html body [data-dx-v1858-sound-state]::after {
  display: inline-block !important;
  font-size: 11px !important;
  line-height: 1 !important;
  letter-spacing: .12em !important;
  content: "ON" !important;
  color: #42e1af !important;
  -webkit-text-fill-color: #42e1af !important;
}
html[data-dx-audio-state="off"] body [data-dx-v1858-sound-state]::after {
  content: "OFF" !important;
  color: #ff676f !important;
  -webkit-text-fill-color: #ff676f !important;
}

/* -------------------------------------------------------------------------
   #1 — Three independent expanded-header controls, adaptive and animated.
   ------------------------------------------------------------------------- */
@media (min-width: 981px) {
  html body header.atmo-header[data-dx-v1859-tone="dark"] {
    --dx1859-head-fg: #f7fbff;
    --dx1859-head-line: rgba(247,251,255,.92);
    --dx1859-head-hover: rgba(247,251,255,.12);
    --dx1859-head-shadow: rgba(247,251,255,.14);
  }
  html body header.atmo-header[data-dx-v1859-tone="light"] {
    --dx1859-head-fg: #173b4b;
    --dx1859-head-line: rgba(23,59,75,.84);
    --dx1859-head-hover: rgba(255,255,255,.34);
    --dx1859-head-shadow: rgba(23,59,75,.12);
  }
  html body header.atmo-header:not(.dx-compact) .atmo-language-trigger,
  html body header.atmo-header:not(.dx-compact) .atmo-sound-toggle,
  html body header.atmo-header:not(.dx-compact) .atmo-header-cta {
    color: var(--dx1859-head-fg) !important;
    -webkit-text-fill-color: var(--dx1859-head-fg) !important;
    border: 2px solid var(--dx1859-head-line) !important;
    border-color: var(--dx1859-head-line) !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.018) !important;
    background-color: rgba(255,255,255,.018) !important;
    background-image: none !important;
    box-shadow: 0 0 0 .35px var(--dx1859-head-shadow), inset 0 1px 0 rgba(255,255,255,.08) !important;
    -webkit-backdrop-filter: blur(15px) saturate(108%) !important;
    backdrop-filter: blur(15px) saturate(108%) !important;
    transform: translate3d(0,0,0) scale(1) !important;
    transition: transform .30s cubic-bezier(.22,.8,.22,1), background-color .24s ease, border-color .24s ease, box-shadow .24s ease !important;
    will-change: transform !important;
  }
  html body header.atmo-header:not(.dx-compact) .atmo-language-trigger:hover,
  html body header.atmo-header:not(.dx-compact) .atmo-language-trigger:focus-visible,
  html body header.atmo-header:not(.dx-compact) .atmo-sound-toggle:hover,
  html body header.atmo-header:not(.dx-compact) .atmo-sound-toggle:focus-visible,
  html body header.atmo-header:not(.dx-compact) .atmo-header-cta:hover,
  html body header.atmo-header:not(.dx-compact) .atmo-header-cta:focus-visible {
    color: var(--dx1859-head-fg) !important;
    -webkit-text-fill-color: var(--dx1859-head-fg) !important;
    background: var(--dx1859-head-hover) !important;
    background-color: var(--dx1859-head-hover) !important;
    border-color: var(--dx1859-head-fg) !important;
    transform: translate3d(0,-3px,0) scale(1.018) !important;
    box-shadow: 0 10px 26px rgba(4,18,25,.13), 0 0 0 .5px var(--dx1859-head-shadow), inset 0 1px 0 rgba(255,255,255,.14) !important;
  }
  html body header.atmo-header:not(.dx-compact) .atmo-language-trigger:active,
  html body header.atmo-header:not(.dx-compact) .atmo-sound-toggle:active,
  html body header.atmo-header:not(.dx-compact) .atmo-header-cta:active {
    transform: translate3d(0,-1px,0) scale(.992) !important;
  }

  /* #5 — The full header remains paintable long enough to contract smoothly.
     Its shell is transparent; only its content fades and compresses. */
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: none !important;
    background: transparent !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
  }
  html body header.atmo-header .atmo-brand,
  html body header.atmo-header .atmo-nav,
  html body header.atmo-header .atmo-header-actions {
    transition: opacity .34s ease, transform .52s cubic-bezier(.22,.8,.22,1), filter .42s ease !important;
    transform-origin: center top !important;
  }
  html body header.atmo-header.dx-compact .atmo-brand {
    opacity: 0 !important;
    filter: blur(2px) !important;
    transform: translate3d(38px,-8px,0) scale(.88) !important;
  }
  html body header.atmo-header.dx-compact .atmo-nav {
    opacity: 0 !important;
    filter: blur(3px) !important;
    transform: translate3d(150px,-7px,0) scale(.62,.86) !important;
  }
  html body header.atmo-header.dx-compact .atmo-header-actions {
    opacity: 0 !important;
    filter: blur(2px) !important;
    transform: translate3d(36px,-5px,0) scale(.86) !important;
  }
  html body .dx-v1858-compact-controls[data-dx-v1859-exiting="true"] {
    position: fixed !important;
    top: max(22px, calc(env(safe-area-inset-top, 0px) + 14px)) !important;
    right: max(26px, calc(env(safe-area-inset-right, 0px) + 18px)) !important;
    z-index: 2147483500 !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    width: auto !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    pointer-events: none !important;
  }
}

/* -------------------------------------------------------------------------
   #2 and #7 — Stable scroll cue; legal-suite placement stays in blue hero.
   ------------------------------------------------------------------------- */
html body .dx-scroll-invitation[data-dx-v1854-cue="true"]:not(.is-hidden),
html body .dx-scroll-invitation[data-dx-v1854-cue="true"]:not(.is-hidden):hover,
html body .dx-scroll-invitation[data-dx-v1854-cue="true"]:not(.is-hidden):focus-visible,
html body .dx-scroll-invitation[data-dx-v1854-cue="true"]:not(.is-hidden):active {
  left: 50% !important;
  right: auto !important;
  margin: 0 !important;
  transform: translate3d(-50%,0,0) !important;
  translate: none !important;
  scale: 1 !important;
}
html body .dx-scroll-invitation[data-dx-v1854-cue="true"]:hover .dx1854-scroll-label,
html body .dx-scroll-invitation[data-dx-v1854-cue="true"]:focus-visible .dx1854-scroll-label {
  margin: 0 !important;
  letter-spacing: .16em !important;
}
@media (min-width: 981px) {
  html body.dx-legal-suite-page .dx-scroll-invitation[data-dx-v1854-cue="true"] {
    bottom: clamp(70px, 12vh, 118px) !important;
  }
}

/* -------------------------------------------------------------------------
   #4 — Companies: no mask/curtain; natural light blur resolves to clarity.
   ------------------------------------------------------------------------- */
@media (min-width: 981px) {
  html body.home .dx11-companies,
  html body.dx-home-page .dx11-companies {
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
    transition: none !important;
    background-color: #edf2f2 !important;
    overflow: clip !important;
  }
  html body.home .dx11-companies::before,
  html body.home .dx11-companies::after,
  html body.dx-home-page .dx11-companies::before,
  html body.dx-home-page .dx11-companies::after {
    content: none !important;
    display: none !important;
    opacity: 0 !important;
    background: none !important;
    border: 0 !important;
  }
  html body.home .dx11-companies > .dx11-container,
  html body.dx-home-page .dx11-companies > .dx11-container {
    opacity: .48 !important;
    filter: blur(6px) !important;
    transform: translate3d(0,14px,0) !important;
    transition: opacity 1.05s cubic-bezier(.22,.8,.22,1), filter 1.15s cubic-bezier(.22,.8,.22,1), transform 1.05s cubic-bezier(.22,.8,.22,1) !important;
    will-change: opacity,filter,transform !important;
  }
  html body.home .dx11-companies.dx-v1859-clear > .dx11-container,
  html body.dx-home-page .dx11-companies.dx-v1859-clear > .dx11-container {
    opacity: 1 !important;
    filter: blur(0) !important;
    transform: translate3d(0,0,0) !important;
  }
}

/* -------------------------------------------------------------------------
   #6 — Contact map caption. Map/card dimensions remain fixed.
   ------------------------------------------------------------------------- */
@media (min-width: 981px) {
  html body.dx-contact-page .dx-contact-map {
    height: 310px !important;
    min-height: 310px !important;
    max-height: 310px !important;
  }
  html body.dx-contact-page .dx-contact-map-caption {
    box-sizing: border-box !important;
    height: 92px !important;
    min-height: 92px !important;
    max-height: 92px !important;
    padding: 11px 15px !important;
    gap: 4px 14px !important;
    overflow: visible !important;
    color: #173b4b !important;
    -webkit-text-fill-color: #173b4b !important;
    background: rgba(247,249,250,.92) !important;
    border: 1.5px solid rgba(23,59,75,.82) !important;
    box-shadow: 0 10px 26px rgba(16,48,62,.10), inset 0 1px 0 rgba(255,255,255,.72) !important;
  }
  html body.dx-contact-page .dx-contact-map-caption > span {
    font-size: 25px !important;
    line-height: 1 !important;
    font-weight: 820 !important;
    letter-spacing: .16em !important;
  }
  html body.dx-contact-page .dx-contact-map-address,
  html body.dx-contact-page .dx-contact-map-address *,
  html body.dx-contact-page .dx-contact-map-caption .dx-contact-address-line {
    font-size: 10.5px !important;
    line-height: 1.25 !important;
    letter-spacing: .11em !important;
  }
  html body.dx-contact-page .dx-contact-map-caption > a {
    align-self: center !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 32px !important;
    padding: 0 12px !important;
    border: 1.3px solid rgba(23,59,75,.78) !important;
    border-radius: 999px !important;
    font-size: 10.5px !important;
    line-height: 1 !important;
    letter-spacing: .12em !important;
    background: rgba(255,255,255,.22) !important;
    animation: dx1859DirectionsFloat 2.4s ease-in-out infinite !important;
    transform: translate3d(0,0,0) !important;
    will-change: transform !important;
  }
  html body.dx-contact-page .dx-contact-map-caption > a:hover,
  html body.dx-contact-page .dx-contact-map-caption > a:focus-visible {
    background: rgba(23,59,75,.09) !important;
    border-color: #173b4b !important;
  }
}
@keyframes dx1859DirectionsFloat {
  0%,100% { transform: translate3d(0,0,0); }
  50% { transform: translate3d(0,-4px,0); }
}

/* -------------------------------------------------------------------------
   #8 — Main-page START THE CONVERSATION appearance sequence.
   ------------------------------------------------------------------------- */
@media (min-width: 981px) {
  html body.home .dx11-cta.dx-v1859-cta-ready .dx11-cta-inner > *,
  html body.dx-home-page .dx11-cta.dx-v1859-cta-ready .dx11-cta-inner > * {
    opacity: 0 !important;
    filter: blur(7px) !important;
    transform: translate3d(0,24px,0) !important;
    transition: opacity .72s ease, filter .82s ease, transform .82s cubic-bezier(.22,.8,.22,1) !important;
  }
  html body.home .dx11-cta.dx-v1859-cta-ready.dx-v1859-cta-visible .dx11-cta-inner > *,
  html body.dx-home-page .dx11-cta.dx-v1859-cta-ready.dx-v1859-cta-visible .dx11-cta-inner > * {
    opacity: 1 !important;
    filter: blur(0) !important;
    transform: translate3d(0,0,0) !important;
  }
  html body .dx11-cta.dx-v1859-cta-visible .dx11-cta-inner > :nth-child(1) { transition-delay: 0ms !important; }
  html body .dx11-cta.dx-v1859-cta-visible .dx11-cta-inner > :nth-child(2) { transition-delay: 110ms !important; }
  html body .dx11-cta.dx-v1859-cta-visible .dx11-cta-inner > :nth-child(3) { transition-delay: 210ms !important; }
  html body .dx11-cta.dx-v1859-cta-visible .dx11-cta-inner > :nth-child(4) { transition-delay: 310ms !important; }
}

@media (prefers-reduced-motion: reduce) {
  html body .dx11-companies > .dx11-container,
  html body .dx11-cta .dx11-cta-inner > *,
  html body .dx-contact-map-caption > a {
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
  }
}

/* =========================================================================
   v1.8.59 final acceptance guardrails. These selectors intentionally load
   last and defeat older production layers without changing the mobile menu.
   ========================================================================= */
@media (min-width: 981px) {
  /* #1: all three expanded controls use the same adaptive glass response. */
  html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-language-control,
  html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-header-actions,
  html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-header-inner {
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-language-trigger *,
  html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-sound-toggle *,
  html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-header-cta * {
    color: inherit !important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-language-chevron path {
    stroke: currentColor !important;
  }

  /* #5: no visual wrapper at any point in the compact transition. */
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-inner,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions,
  html body.denlyx-atmosphere-theme .dx-v1858-compact-controls,
  html body.denlyx-atmosphere-theme .dx-v1858-compact-controls.is-visible,
  html body.denlyx-atmosphere-theme .dx-v1858-compact-controls[data-dx-v1859-exiting="true"] {
    border: 0 !important;
    outline: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    filter: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }
  html body.denlyx-atmosphere-theme .dx-v1858-compact-controls::before,
  html body.denlyx-atmosphere-theme .dx-v1858-compact-controls::after,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact::before,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact::after,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-inner::before,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-inner::after {
    content: none !important;
    display: none !important;
  }
  html body.denlyx-atmosphere-theme .dx-v1858-compact-button:hover,
  html body.denlyx-atmosphere-theme .dx-v1858-compact-button:focus-visible {
    border-color: var(--dx1858-compact-fg) !important;
    background: var(--dx1858-compact-hover) !important;
    transform: translate3d(0,-3px,0) scale(1.015) !important;
  }

  /* #6: the map and caption retain a fixed footprint while type grows. */
  html body.dx-contact-page .dx-contact-map {
    position: relative !important;
    overflow: hidden !important;
  }
  html body.dx-contact-page .dx-contact-map-caption {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) auto !important;
    grid-template-rows: auto 1fr !important;
    align-items: center !important;
    border-radius: 0 0 18px 18px !important;
    overflow: hidden !important;
  }
  html body.dx-contact-page .dx-contact-map-caption > span {
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-self: end !important;
  }
  html body.dx-contact-page .dx-contact-map-address {
    grid-column: 1 !important;
    grid-row: 2 !important;
    min-width: 0 !important;
  }
  html body.dx-contact-page .dx-contact-map-caption > a {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    white-space: nowrap !important;
  }
}

/* #2: neither the cue nor its hit area can gain horizontal motion on hover. */
html body .dx-scroll-invitation[data-dx-v1854-cue="true"],
html body .dx-scroll-invitation[data-dx-v1854-cue="true"]:hover,
html body .dx-scroll-invitation[data-dx-v1854-cue="true"]:focus,
html body .dx-scroll-invitation[data-dx-v1854-cue="true"]:focus-visible,
html body .dx-scroll-invitation[data-dx-v1854-cue="true"]:active {
  inset-inline-start: 50% !important;
  inset-inline-end: auto !important;
  translate: none !important;
  rotate: none !important;
  scale: 1 !important;
  transform: translate3d(-50%,0,0) !important;
  transition-property: opacity, visibility, color !important;
}
html body .dx-scroll-invitation[data-dx-v1854-cue="true"] > * {
  margin-inline: 0 !important;
}

/* #4: remove any inherited child curtain/mask that can expose a hard edge. */
@media (min-width: 981px) {
  html body.home .dx11-companies [class*="mask"],
  html body.home .dx11-companies [class*="overlay"],
  html body.dx-home-page .dx11-companies [class*="mask"],
  html body.dx-home-page .dx11-companies [class*="overlay"] {
    display: none !important;
    opacity: 0 !important;
    background: none !important;
    border: 0 !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body header.atmo-header .atmo-language-trigger,
  html body header.atmo-header .atmo-sound-toggle,
  html body header.atmo-header .atmo-header-cta,
  html body .dx-v1858-compact-button,
  html body .dx-scroll-invitation[data-dx-v1854-cue="true"] {
    transition: none !important;
  }
  html body header.atmo-header .atmo-language-trigger:hover,
  html body header.atmo-header .atmo-sound-toggle:hover,
  html body header.atmo-header .atmo-header-cta:hover,
  html body .dx-v1858-compact-button:hover {
    transform: none !important;
  }
}

/* source: denlyx-v1865-production.css */
/* DENLYX production v0.3.7 / visual source v1.8.65.
   Consolidated final owner. v1.8.60 and v1.8.61 are intentionally not enqueued. */

/* Retire every legacy progress rail and compact-control renderer. */
html body.denlyx-atmosphere-theme .dx-scroll-progress,
html body.denlyx-atmosphere-theme [data-dx-v1858-compact]{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}

/* Header wrappers never paint a shared box, line, or transition shell. */
html body.denlyx-atmosphere-theme header.atmo-header,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-control{
  background:transparent!important;background-image:none!important;
  border:0!important;outline:0!important;box-shadow:none!important;filter:none!important;
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important
}
html body.denlyx-atmosphere-theme header.atmo-header::before,
html body.denlyx-atmosphere-theme header.atmo-header::after,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner::before,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner::after,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions::before,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions::after{content:none!important;display:none!important}

/* Homepage language rows: selection remains semantic only. Every row has the same visual. */
html body.dx-home-page .atmo-language-popup button[data-language-option],
html body.home .atmo-language-popup button[data-language-option],
html body.page-template-front-page .atmo-language-popup button[data-language-option],
html body.dx-home-page .atmo-language-popup button[data-language-option][aria-selected="true"],
html body.home .atmo-language-popup button[data-language-option][aria-selected="true"],
html body.page-template-front-page .atmo-language-popup button[data-language-option][aria-selected="true"],
html body.dx-home-page .atmo-language-popup button[data-language-option]:hover,
html body.home .atmo-language-popup button[data-language-option]:hover,
html body.page-template-front-page .atmo-language-popup button[data-language-option]:hover,
html body.dx-home-page .atmo-language-popup button[data-language-option]:focus,
html body.home .atmo-language-popup button[data-language-option]:focus,
html body.page-template-front-page .atmo-language-popup button[data-language-option]:focus,
html body.dx-home-page .atmo-language-popup button[data-language-option]:active,
html body.home .atmo-language-popup button[data-language-option]:active,
html body.page-template-front-page .atmo-language-popup button[data-language-option]:active{
  box-sizing:border-box!important;border:1px solid rgba(247,251,255,.78)!important;border-radius:999px!important;
  color:#f7fbff!important;-webkit-text-fill-color:#f7fbff!important;
  background:rgba(255,255,255,.025)!important;background-image:none!important;
  box-shadow:none!important;filter:none!important;opacity:1!important
}
html body.dx-home-page .atmo-language-popup button[data-language-option] small,
html body.home .atmo-language-popup button[data-language-option] small,
html body.page-template-front-page .atmo-language-popup button[data-language-option] small{
  color:rgba(247,251,255,.82)!important;-webkit-text-fill-color:rgba(247,251,255,.82)!important
}
html body.dx-home-page .atmo-language-popup button[data-language-option]::before,
html body.dx-home-page .atmo-language-popup button[data-language-option]::after,
html body.home .atmo-language-popup button[data-language-option]::before,
html body.home .atmo-language-popup button[data-language-option]::after,
html body.page-template-front-page .atmo-language-popup button[data-language-option]::before,
html body.page-template-front-page .atmo-language-popup button[data-language-option]::after{content:none!important;display:none!important}

/* Contact map banner: fixed footprint, bold 4–5x wordmark, rounded on all sides. */
html body.dx-contact-page .dx-contact-map-caption{
  box-sizing:border-box!important;display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto 1fr!important;
  column-gap:12px!important;row-gap:2px!important;align-items:center!important;
  left:12px!important;right:12px!important;bottom:12px!important;width:auto!important;
  height:94px!important;min-height:94px!important;max-height:94px!important;
  padding:10px 14px!important;overflow:hidden!important;
  border:1.6px solid rgba(23,59,75,.86)!important;border-radius:22px!important;
  background:rgba(247,250,251,.92)!important;background-image:none!important;
  box-shadow:0 12px 32px rgba(5,24,33,.12),inset 0 1px 0 rgba(255,255,255,.72)!important
}
html body.dx-contact-page .dx-contact-map-caption>span{
  grid-column:1!important;grid-row:1!important;align-self:end!important;
  min-width:0!important;margin:0!important;white-space:nowrap!important;
  color:#173b4b!important;-webkit-text-fill-color:#173b4b!important;
  font-size:clamp(36px,7vw,58px)!important;font-weight:900!important;line-height:.82!important;
  letter-spacing:.10em!important;transform-origin:left center!important;
  animation:dx1864MapBrand 3.1s cubic-bezier(.22,.8,.22,1) infinite!important
}
html body.dx-contact-page .dx-contact-map-address{
  grid-column:1!important;grid-row:2!important;align-self:start!important;min-width:0!important;margin:0!important
}
html body.dx-contact-page .dx-contact-map-address,
html body.dx-contact-page .dx-contact-map-address *{
  color:#173b4b!important;-webkit-text-fill-color:#173b4b!important;
  font-size:clamp(9px,1.35vw,12px)!important;font-weight:650!important;line-height:1.25!important
}
html body.dx-contact-page .dx-contact-map-caption>a{
  grid-column:2!important;grid-row:1/3!important;align-self:center!important;justify-self:end!important;
  margin:0!important;white-space:nowrap!important;border:1.5px solid rgba(23,59,75,.88)!important;border-radius:999px!important
}
@keyframes dx1864MapBrand{
  0%,100%{opacity:.90;transform:translate3d(0,0,0) scale(1);letter-spacing:.10em}
  50%{opacity:1;transform:translate3d(0,-2px,0) scale(1.025);letter-spacing:.125em}
}

/* Only the Start a Request text changes dark on hover. */
html body.dx-contact-page .dx-contact-hero [data-scroll-to-form]:hover,
html body.dx-contact-page .dx-contact-hero [data-scroll-to-form]:focus-visible,
html body.dx-contact-page .dx-contact-hero [data-scroll-to-form]:hover *,
html body.dx-contact-page .dx-contact-hero [data-scroll-to-form]:focus-visible *{
  color:#173b4b!important;-webkit-text-fill-color:#173b4b!important
}

@media (min-width:981px){
  /* Compact desktop controls: positioning-only wrapper and two independent pills. */
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-hidden="true"]{
    opacity:0!important;visibility:visible!important;pointer-events:none!important
  }
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls{
    position:fixed!important;top:max(18px,calc(env(safe-area-inset-top,0px) + 12px))!important;
    right:max(24px,calc(env(safe-area-inset-right,0px) + 18px))!important;z-index:2147483500!important;
    display:none!important;align-items:center!important;gap:12px!important;
    width:auto!important;height:auto!important;min-width:0!important;margin:0!important;padding:0!important;overflow:visible!important;
    background:transparent!important;background-image:none!important;border:0!important;outline:0!important;border-radius:0!important;
    box-shadow:none!important;filter:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;
    visibility:hidden!important;opacity:0!important;pointer-events:none!important;transition:opacity .28s ease!important
  }
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls.is-mounted{display:flex!important}
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls.is-ready{
    visibility:visible!important;opacity:1!important;pointer-events:auto!important
  }
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls.is-overlay-hidden,
  html body.denlyx-atmosphere-theme[data-dx-v1865-overlay-open="true"] .dx-v1865-compact-controls{
    opacity:0!important;visibility:visible!important;pointer-events:none!important
  }
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls::before,
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls::after{content:none!important;display:none!important}
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls[data-tone="dark"]{
    --dx1865-fg:#f7fbff;--dx1865-line:rgba(247,251,255,.96);--dx1865-hover:rgba(247,251,255,.105)
  }
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls[data-tone="light"]{
    --dx1865-fg:#173b4b;--dx1865-line:rgba(23,59,75,.92);--dx1865-hover:rgba(23,59,75,.08)
  }
  html body.denlyx-atmosphere-theme .dx-v1865-compact-button{
    box-sizing:border-box!important;position:relative!important;
    display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;
    min-height:54px!important;margin:0!important;padding:0 25px!important;
    border:2px solid var(--dx1865-line)!important;border-radius:999px!important;outline:0!important;
    color:var(--dx1865-fg)!important;-webkit-text-fill-color:var(--dx1865-fg)!important;
    background:rgba(255,255,255,.018)!important;background-image:none!important;background-clip:padding-box!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.10)!important;
    -webkit-backdrop-filter:blur(16px) saturate(108%)!important;backdrop-filter:blur(16px) saturate(108%)!important;
    font:inherit!important;font-size:11px!important;font-weight:700!important;letter-spacing:.12em!important;line-height:1!important;text-transform:uppercase!important;
    white-space:nowrap!important;cursor:pointer!important;transform:translate3d(0,0,0)!important;filter:none!important;
    transition:transform .28s cubic-bezier(.22,.8,.22,1),background-color .24s ease,border-color .24s ease,box-shadow .24s ease,opacity .22s ease,filter .22s ease!important
  }
  html body.denlyx-atmosphere-theme .dx-v1865-compact-menu{min-width:126px!important;padding-left:25px!important;padding-right:25px!important;text-align:center!important}
  html body.denlyx-atmosphere-theme .dx-v1865-compact-menu>span{display:block!important;width:100%!important;text-align:center!important}
  html body.denlyx-atmosphere-theme .dx-v1865-compact-sound{min-width:158px!important}
  html body.denlyx-atmosphere-theme .dx-v1865-compact-button:hover,
  html body.denlyx-atmosphere-theme .dx-v1865-compact-button:focus-visible{
    background:var(--dx1865-hover)!important;transform:translate3d(0,-3px,0)!important;
    box-shadow:0 9px 24px rgba(4,18,25,.14),inset 0 1px 0 rgba(255,255,255,.17)!important
  }
  html body.denlyx-atmosphere-theme .dx-v1865-compact-button:focus:not(:focus-visible),
  html body.denlyx-atmosphere-theme .dx-v1865-compact-button.is-reset{
    transform:translate3d(0,0,0)!important;background:rgba(255,255,255,.018)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.10)!important
  }
  html body.denlyx-atmosphere-theme .dx-v1865-compact-button::before,
  html body.denlyx-atmosphere-theme .dx-v1865-compact-button::after{content:none!important;display:none!important}
  .dx-v1865-sound-bars{display:inline-flex;align-items:center;justify-content:center;gap:2px}
  .dx-v1865-sound-bars i{display:block;width:2px;height:10px;border-radius:99px;background:currentColor}
  .dx-v1865-compact-sound.is-off .dx-v1865-sound-bars i{height:3px!important;animation:none!important}
  .dx-v1865-state{font-size:10px;font-weight:750}
  .dx-v1865-compact-sound.is-off .dx-v1865-state{color:#ff7479!important;-webkit-text-fill-color:#ff7479!important}
  .dx-v1865-compact-sound:not(.is-off) .dx-v1865-state{color:#42e1af!important;-webkit-text-fill-color:#42e1af!important}

  /* Expanded controls do not retain click-focus lift. */
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger:focus:not(:focus-visible),
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle:focus:not(:focus-visible),
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-cta:focus:not(:focus-visible),
  html body.denlyx-atmosphere-theme header.atmo-header .is-reset{
    transform:translate3d(0,0,0) scale(1)!important
  }

  /* Desktop homepage scroll-linked WHY -> START crossfade. */
  html body.dx-home-page .dx11-value{position:relative!important;z-index:2!important}
  html body.dx-home-page .dx11-cta{position:relative!important;z-index:3!important;margin-top:-18vh!important;padding-top:18vh!important;--dx1865-cross:0}
  html body.dx-home-page .dx11-value .dx11-value-sticky{
    opacity:calc(1 - (var(--dx1865-cross,0) * .92))!important;
    filter:blur(calc(var(--dx1865-cross,0) * 9px))!important;
    transform:translate3d(0,calc(var(--dx1865-cross,0) * -28px),0)!important;
    transition:none!important;will-change:opacity,filter,transform!important
  }
  html body.dx-home-page .dx11-cta .dx11-cta-media{
    opacity:var(--dx1865-cross,0)!important;filter:blur(calc((1 - var(--dx1865-cross,0)) * 10px))!important;
    transition:none!important;will-change:opacity,filter!important
  }
  html body.dx-home-page .dx11-cta .dx11-cta-inner{
    opacity:var(--dx1865-cross,0)!important;filter:blur(calc((1 - var(--dx1865-cross,0)) * 9px))!important;
    transform:translate3d(0,calc((1 - var(--dx1865-cross,0)) * 38px),0)!important;
    transition:none!important;will-change:opacity,filter,transform!important
  }
  html body.dx-home-page .dx11-cta .dx11-cta-inner>*{visibility:visible!important}
}

@media (max-width:980px){
  /* Site-wide adaptive outlines for BOTH EN and SOUND, in every state. */
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger,
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle{
    box-sizing:border-box!important;border-style:solid!important;border-width:1.7px!important;border-radius:999px!important;outline:0!important;
    background:rgba(255,255,255,.018)!important;background-image:none!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important
  }
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-tone="dark"] .atmo-language-trigger,
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-tone="dark"] .atmo-sound-toggle,
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-tone="dark"] .atmo-language-trigger[aria-expanded="true"]{
    color:#f7fbff!important;-webkit-text-fill-color:#f7fbff!important;border-color:rgba(247,251,255,.94)!important
  }
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-tone="light"] .atmo-language-trigger,
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-tone="light"] .atmo-sound-toggle,
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-tone="light"] .atmo-language-trigger[aria-expanded="true"]{
    color:#173b4b!important;-webkit-text-fill-color:#173b4b!important;border-color:rgba(23,59,75,.90)!important
  }

  /* Companies dropdown scrollbar. */
  html body.denlyx-atmosphere-theme .atmo-company-nav>.atmo-dropdown{scrollbar-color:#173b4b rgba(23,59,75,.10)!important;scrollbar-width:thin!important}
  html body.denlyx-atmosphere-theme .atmo-company-nav>.atmo-dropdown::-webkit-scrollbar{width:4px!important}
  html body.denlyx-atmosphere-theme .atmo-company-nav>.atmo-dropdown::-webkit-scrollbar-track{background:rgba(23,59,75,.10)!important;border-radius:999px!important}
  html body.denlyx-atmosphere-theme .atmo-company-nav>.atmo-dropdown::-webkit-scrollbar-thumb{background:#173b4b!important;border-radius:999px!important}

  /* Structural permanent CTAs on About and Capabilities. */
  html body.dx-about-page .dx-about-cta,
  html body.dx-about-page .dx-about-permanent-actions,
  html body.dx-about-page .dx-about-permanent-cta,
  html body.dx-capabilities-page .dx-capabilities-close,
  html body.dx-capabilities-page .dx-capabilities-permanent-actions,
  html body.dx-capabilities-page .dx-capabilities-permanent-cta{
    opacity:1!important;visibility:visible!important;filter:none!important;transform:none!important;translate:none!important;
    content-visibility:visible!important;contain:none!important;pointer-events:auto!important
  }
  html body.dx-about-page .dx-about-permanent-actions,
  html body.dx-capabilities-page .dx-capabilities-permanent-actions{display:flex!important;align-items:center!important}
  html body.dx-about-page .dx-about-permanent-cta,
  html body.dx-capabilities-page .dx-capabilities-permanent-cta{display:inline-flex!important}

  /* Legal mobile pages: Scroll to Explore is intentionally removed completely. */
  html body.dx-legal-suite-page .dx-scroll-invitation,
  html body.dx-legal-suite-page [data-dx-v1854-cue],
  html body.dx-legal-suite-page .dx-v1865-legal-cue{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}
  html body.dx-legal-suite-page .legal-hero{min-height:auto!important;height:auto!important;padding-bottom:72px!important;overflow:hidden!important}

  /* Mobile WHY benefit-row reveal. */
  html body.dx-home-page .dx11-value.dx-v1865-mobile-values .dx11-value-item{
    opacity:0!important;filter:blur(8px)!important;transform:translate3d(0,28px,0)!important;visibility:visible!important;
    transition:opacity .58s ease,filter .72s cubic-bezier(.22,.8,.22,1),transform .72s cubic-bezier(.22,.8,.22,1)!important
  }
  html body.dx-home-page .dx11-value.dx-v1865-mobile-values .dx11-value-item.dx-v1865-row-visible{
    opacity:1!important;filter:blur(0)!important;transform:translate3d(0,0,0)!important
  }

  /* Mobile WHY -> START crossfade. */
  html body.dx-home-page .dx11-value{--dx1865-mobile-cross:0}
  html body.dx-home-page .dx11-cta{
    --dx1865-mobile-cross:0;position:relative!important;z-index:3!important;margin-top:-10vh!important;padding-top:10vh!important
  }
  html body.dx-home-page .dx11-value .dx11-value-sticky{
    opacity:calc(1 - (var(--dx1865-mobile-cross,0) * .88))!important;
    filter:blur(calc(var(--dx1865-mobile-cross,0) * 7px))!important;
    transform:translate3d(0,calc(var(--dx1865-mobile-cross,0) * -20px),0)!important;
    transition:none!important;will-change:opacity,filter,transform!important
  }
  html body.dx-home-page .dx11-cta .dx11-cta-media{
    opacity:var(--dx1865-mobile-cross,0)!important;filter:blur(calc((1 - var(--dx1865-mobile-cross,0)) * 8px))!important;
    transition:none!important;will-change:opacity,filter!important
  }
  html body.dx-home-page .dx11-cta .dx11-cta-inner{
    opacity:var(--dx1865-mobile-cross,0)!important;filter:blur(calc((1 - var(--dx1865-mobile-cross,0)) * 7px))!important;
    transform:translate3d(0,calc((1 - var(--dx1865-mobile-cross,0)) * 30px),0)!important;
    transition:none!important;will-change:opacity,filter,transform!important
  }
  html body.dx-home-page .dx11-cta .dx11-cta-inner>*{visibility:visible!important}

  /* Mobile sound gate: adaptive and separated from Back to Top. */
  html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx-v1865-mobile="true"]{
    position:fixed!important;left:24px!important;right:24px!important;top:auto!important;
    bottom:var(--dx1865-gate-bottom,max(88px,calc(env(safe-area-inset-bottom,0px) + 72px)))!important;
    width:auto!important;max-width:none!important;margin:0!important;z-index:2147483400!important;
    border:1.6px solid var(--dx1865-gate-line)!important;border-radius:28px!important;
    color:var(--dx1865-gate-fg)!important;-webkit-text-fill-color:var(--dx1865-gate-fg)!important;
    background:var(--dx1865-gate-bg)!important;background-image:none!important;
    box-shadow:0 12px 34px rgba(4,18,25,.16),inset 0 1px 0 rgba(255,255,255,.13)!important;
    -webkit-backdrop-filter:blur(18px) saturate(108%)!important;backdrop-filter:blur(18px) saturate(108%)!important
  }
  html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx-v1865-tone="dark"]{
    --dx1865-gate-fg:#f7fbff;--dx1865-gate-line:rgba(247,251,255,.92);--dx1865-gate-bg:rgba(7,27,37,.76);--dx1865-gate-sweep:#071b25
  }
  html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx-v1865-tone="light"],
  html body.denlyx-atmosphere-theme.menu-open .atmo-sound-gate[data-dx-v1865-mobile="true"],
  html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx-v1865-menu-open="true"]{
    --dx1865-gate-fg:#173b4b;--dx1865-gate-line:rgba(23,59,75,.88);--dx1865-gate-bg:rgba(247,250,251,.88);--dx1865-gate-sweep:#fff
  }
  html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx-v1865-mobile="true"],
  html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx-v1865-mobile="true"] *,
  html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx-v1865-mobile="true"]:hover *{
    color:var(--dx1865-gate-fg)!important;-webkit-text-fill-color:var(--dx1865-gate-fg)!important
  }
  html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx-v1865-mobile="true"] .atmo-sound-bars i{background:var(--dx1865-gate-fg)!important}
  html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx-v1865-mobile="true"] [data-enable-sound] b{
    position:relative!important;display:inline-block!important;background:none!important
  }
  html body.denlyx-atmosphere-theme .atmo-sound-gate[data-dx-v1865-mobile="true"] [data-enable-sound] b::after{
    content:attr(data-dx1864-label)!important;position:absolute!important;inset:0!important;
    color:transparent!important;-webkit-text-fill-color:transparent!important;
    background:linear-gradient(110deg,transparent 18%,var(--dx1865-gate-sweep) 48%,transparent 78%)!important;
    background-size:230% 100%!important;-webkit-background-clip:text!important;background-clip:text!important;
    animation:dx1864GateSweep 2.8s linear infinite!important;pointer-events:none!important
  }
  @keyframes dx1864GateSweep{from{background-position:140% 0}to{background-position:-140% 0}}
}

@media (prefers-reduced-motion:reduce){
  html body .dx-v1865-compact-button,
  html body.dx-home-page .dx11-value .dx11-value-sticky,
  html body.dx-home-page .dx11-cta .dx11-cta-media,
  html body.dx-home-page .dx11-cta .dx11-cta-inner,
  html body.dx-home-page .dx11-value-item{transition:none!important;animation:none!important;filter:none!important}
  html body.dx-contact-page .dx-contact-map-caption>span,
  html body .atmo-sound-gate [data-enable-sound] b::after{animation:none!important}
}


/* ======================================================================
   v1.8.65 FINAL STRUCTURAL AUTHORITY
   These rules intentionally supersede every earlier corrective layer.
   ====================================================================== */

/* The original expanded header is never allowed to paint its compact shell.
   This is static CSS, so the legacy rectangle cannot appear for even one frame. */
@media (min-width:981px){
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-inner,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions{
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;
    background:transparent!important;background-image:none!important;
    border:0!important;outline:0!important;box-shadow:none!important;
    -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
    transition:none!important
  }
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact::before,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact::after,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-inner::before,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-inner::after,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions::before,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions::after{
    content:none!important;display:none!important
  }
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls{
    contain:layout style!important;background:transparent!important;background-image:none!important;
    border:0!important;outline:0!important;box-shadow:none!important;
    -webkit-backdrop-filter:none!important;backdrop-filter:none!important
  }
}

/* Contact map wordmark: exact element, truly large, bold and gradient-only.
   No transform/bounce animation is permitted. */
html body.dx-contact-page .dx-contact-map-caption .dx-contact-map-brand.dx-v1865-map-brand{
  display:block!important;min-width:0!important;max-width:100%!important;
  font-family:inherit!important;font-size:clamp(38px,5.2vw,52px)!important;
  font-weight:900!important;line-height:.82!important;letter-spacing:.11em!important;
  white-space:nowrap!important;overflow:visible!important;
  color:transparent!important;-webkit-text-fill-color:transparent!important;
  background:linear-gradient(105deg,#173b4b 0%,#173b4b 30%,#8fb8ca 46%,#edf7fb 51%,#8fb8ca 56%,#173b4b 72%,#173b4b 100%)!important;
  background-size:260% 100%!important;background-position:140% 0!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  transform:none!important;filter:none!important;
  animation:dxV1865HeaderGradient 3.2s linear infinite!important
}
@keyframes dxV1865HeaderGradient{from{background-position:150% 0}to{background-position:-150% 0}}

/* Shared audio-entry banner. Unique classes isolate it from all old gate rules. */
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate{
  --dx1865-audio-fg:#f7fbff;--dx1865-audio-line:rgba(247,251,255,.92);
  --dx1865-audio-bg:rgba(7,27,37,.78);--dx1865-audio-sweep:#071b25;
  box-sizing:border-box!important;position:fixed!important;z-index:2147483400!important;
  display:grid!important;grid-template-columns:minmax(0,1fr) 44px!important;align-items:stretch!important;
  width:min(410px,calc(100vw - 48px))!important;min-height:66px!important;margin:0!important;padding:0!important;
  border:1.6px solid var(--dx1865-audio-line)!important;border-radius:999px!important;
  color:var(--dx1865-audio-fg)!important;-webkit-text-fill-color:var(--dx1865-audio-fg)!important;
  background:var(--dx1865-audio-bg)!important;background-image:none!important;
  box-shadow:0 14px 38px rgba(3,16,23,.18),inset 0 1px 0 rgba(255,255,255,.13)!important;
  -webkit-backdrop-filter:blur(18px) saturate(110%)!important;backdrop-filter:blur(18px) saturate(110%)!important;
  opacity:0!important;visibility:hidden!important;pointer-events:none!important;
  transform:translate3d(0,8px,0)!important;
  transition:opacity .34s ease,transform .42s cubic-bezier(.22,.8,.22,1),visibility 0s linear .42s!important
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-visible{
  opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translate3d(0,0,0)!important;
  transition:opacity .34s ease,transform .42s cubic-bezier(.22,.8,.22,1),visibility 0s!important
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-tone="light"]{
  --dx1865-audio-fg:#173b4b;--dx1865-audio-line:rgba(23,59,75,.90);
  --dx1865-audio-bg:rgba(247,250,251,.90);--dx1865-audio-sweep:#ffffff
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-tone="dark"]{
  --dx1865-audio-fg:#f7fbff;--dx1865-audio-line:rgba(247,251,255,.92);
  --dx1865-audio-bg:rgba(7,27,37,.78);--dx1865-audio-sweep:#071b25
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-enable,
html body.denlyx-atmosphere-theme .dx-v1865-audio-close{
  appearance:none!important;-webkit-appearance:none!important;border:0!important;outline:0!important;
  color:var(--dx1865-audio-fg)!important;-webkit-text-fill-color:var(--dx1865-audio-fg)!important;
  background:transparent!important;background-image:none!important;box-shadow:none!important
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-enable{
  display:grid!important;grid-template-columns:28px minmax(0,1fr)!important;gap:14px!important;align-items:center!important;
  min-width:0!important;padding:11px 8px 11px 22px!important;text-align:left!important;cursor:pointer!important
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-copy{display:grid!important;gap:3px!important;min-width:0!important}
html body.denlyx-atmosphere-theme .dx-v1865-audio-copy b{
  position:relative!important;display:inline-block!important;width:max-content!important;max-width:100%!important;
  color:var(--dx1865-audio-fg)!important;-webkit-text-fill-color:var(--dx1865-audio-fg)!important;
  font-size:11px!important;font-weight:750!important;line-height:1.1!important;letter-spacing:.12em!important;text-transform:uppercase!important
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-copy b::after{
  content:attr(data-dx-v1865-audio-title)!important;position:absolute!important;inset:0!important;
  color:transparent!important;-webkit-text-fill-color:transparent!important;
  background:linear-gradient(105deg,transparent 12%,var(--dx1865-audio-sweep) 46%,transparent 80%)!important;
  background-size:240% 100%!important;background-position:140% 0!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  animation:dxV1865AudioSweep 2.9s linear infinite!important;pointer-events:none!important
}
@keyframes dxV1865AudioSweep{from{background-position:150% 0}to{background-position:-150% 0}}
html body.denlyx-atmosphere-theme .dx-v1865-audio-copy small{
  color:var(--dx1865-audio-fg)!important;-webkit-text-fill-color:var(--dx1865-audio-fg)!important;
  opacity:.72!important;font-size:10px!important;line-height:1.25!important;white-space:normal!important
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-bars{display:flex!important;align-items:center!important;justify-content:center!important;gap:3px!important;width:24px!important;height:22px!important}
html body.denlyx-atmosphere-theme .dx-v1865-audio-bars i{display:block!important;width:2px!important;border-radius:999px!important;background:var(--dx1865-audio-fg)!important}
html body.denlyx-atmosphere-theme .dx-v1865-audio-bars i:nth-child(1){height:8px!important}
html body.denlyx-atmosphere-theme .dx-v1865-audio-bars i:nth-child(2){height:15px!important}
html body.denlyx-atmosphere-theme .dx-v1865-audio-bars i:nth-child(3){height:10px!important}
html body.denlyx-atmosphere-theme .dx-v1865-audio-close{
  display:grid!important;place-items:center!important;width:44px!important;height:100%!important;min-height:64px!important;
  padding:0!important;border-left:0!important;border-radius:0 999px 999px 0!important;
  font-size:20px!important;line-height:1!important;cursor:pointer!important;opacity:.82!important
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-close:hover{opacity:1!important}
@media (min-width:981px){
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate{
    left:max(24px,calc(env(safe-area-inset-left,0px) + 18px))!important;
    bottom:max(24px,calc(env(safe-area-inset-bottom,0px) + 18px))!important;top:auto!important;right:auto!important
  }
}
@media (max-width:980px){
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate{
    left:24px!important;right:24px!important;top:auto!important;width:auto!important;
    bottom:var(--dx1865-audio-bottom,max(92px,calc(env(safe-area-inset-bottom,0px) + 78px)))!important
  }
  html body.denlyx-atmosphere-theme[data-dx-v1865-mobile-menu="true"] .dx-v1865-audio-gate,
  html body.denlyx-atmosphere-theme.menu-open .dx-v1865-audio-gate{
    --dx1865-audio-fg:#173b4b;--dx1865-audio-line:rgba(23,59,75,.90);
    --dx1865-audio-bg:rgba(247,250,251,.94);--dx1865-audio-sweep:#ffffff
  }
}

/* Mobile EN and SOUND outlines are explicit child overlays, not fragile borders
   on controls that older page-specific rules can overwrite. */
@media (max-width:980px){
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger,
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle{
    position:relative!important;isolation:isolate!important;border-color:transparent!important;outline:0!important;
    overflow:visible!important
  }
  html body.denlyx-atmosphere-theme header.atmo-header .dx-v1865-mobile-outline{
    box-sizing:border-box!important;display:block!important;position:absolute!important;inset:0!important;z-index:40!important;
    border:1.8px solid rgba(247,251,255,.96)!important;border-radius:inherit!important;
    background:transparent!important;box-shadow:none!important;pointer-events:none!important;opacity:1!important;visibility:visible!important
  }
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-tone="light"] .dx-v1865-mobile-outline{
    border-color:rgba(23,59,75,.92)!important
  }
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-tone="dark"] .dx-v1865-mobile-outline{
    border-color:rgba(247,251,255,.96)!important
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger>span:not(.dx-v1865-mobile-outline),
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger>svg,
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle>span:not(.dx-v1865-mobile-outline){position:relative!important;z-index:41!important}

  /* One permanent mobile About CTA; the duplicate desktop action is hidden. */
  html body.dx-about-page .dx-about-mobile-permanent-cta{
    display:inline-flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;
    width:min(100%,620px)!important;min-height:58px!important;margin:34px 0 0!important;padding:0 24px!important;
    opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important;filter:none!important;
    content-visibility:visible!important;contain:none!important;position:relative!important;z-index:8!important
  }
  html body.dx-about-page .dx-about-permanent-actions{display:none!important}
}

/* Globe -> WHY transition. The sections retain their dimensions; only their
   paint properties respond to scroll progress. */
html body.dx-home-page .dx11-globe-wrap{
  --dx1865-globe-cross:0;
  opacity:calc(1 - (var(--dx1865-globe-cross) * .92))!important;
  filter:blur(calc(var(--dx1865-globe-cross) * 8px))!important;
  transform:translate3d(0,calc(var(--dx1865-globe-cross) * -24px),0)!important;
  will-change:opacity,filter,transform!important;transition:none!important
}
html body.dx-home-page #why-denlyx{
  --dx1865-globe-cross:0;
}
html body.dx-home-page #why-denlyx .dx11-value-media,
html body.dx-home-page #why-denlyx .dx11-value-sticky{
  opacity:calc(.22 + (var(--dx1865-globe-cross) * .78))!important;
  filter:blur(calc((1 - var(--dx1865-globe-cross)) * 8px))!important;
  transform:translate3d(0,calc((1 - var(--dx1865-globe-cross)) * 30px),0)!important;
  will-change:opacity,filter,transform!important;transition:none!important
}

@media (prefers-reduced-motion:reduce){
  html body.dx-contact-page .dx-contact-map-caption .dx-contact-map-brand.dx-v1865-map-brand,
  html body.denlyx-atmosphere-theme .dx-v1865-audio-copy b::after{animation:none!important}
}

/* ========================================================================== 
   DENLYX v0.3.7 FINAL ACCEPTANCE OWNER
   These rules replace the unstable visual/state paths from prior layers.
   ========================================================================== */

/* Desktop compact controls: on upward scroll, fade in place without remounting. */
@media (min-width:981px){
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls.is-exiting{
    opacity:0!important;visibility:visible!important;pointer-events:none!important;
    transition:opacity .26s ease!important
  }
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls.is-exiting .dx-v1865-compact-button{
    transform:translate3d(0,0,0) scale(1)!important;filter:none!important
  }
}

/* Language options: one site-wide hover/touch treatment on every page. */
html body.denlyx-atmosphere-theme .atmo-language-popup button[data-language-option]{
  transition:transform .26s cubic-bezier(.22,.8,.22,1),background-color .24s ease,border-color .24s ease,box-shadow .24s ease,color .24s ease!important;
  transform:translate3d(0,0,0)!important;will-change:transform!important
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-tone="dark"] .atmo-language-popup button[data-language-option]:hover,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-tone="dark"] .atmo-language-popup button[data-language-option]:focus-visible{
  transform:translate3d(0,-3px,0)!important;background:rgba(255,255,255,.12)!important;
  border-color:rgba(247,251,255,.98)!important;box-shadow:0 10px 24px rgba(2,16,24,.18),inset 0 1px 0 rgba(255,255,255,.20)!important
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-tone="light"] .atmo-language-popup button[data-language-option]:hover,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-tone="light"] .atmo-language-popup button[data-language-option]:focus-visible{
  transform:translate3d(0,-3px,0)!important;background:rgba(23,59,75,.10)!important;
  border-color:rgba(23,59,75,.98)!important;box-shadow:0 10px 24px rgba(23,59,75,.14),inset 0 1px 0 rgba(255,255,255,.32)!important
}
html body.denlyx-atmosphere-theme .atmo-language-popup button[data-language-option]:active{
  transform:translate3d(0,-1px,0) scale(.985)!important;transition-duration:.10s!important
}
html body.denlyx-atmosphere-theme .atmo-language-popup button[data-language-option]:focus:not(:focus-visible){
  transform:translate3d(0,0,0)!important;box-shadow:none!important
}

/* Global, truthful SOUND state for expanded and compact controls. */
@keyframes dxV1865EqOne{0%,100%{height:5px}45%{height:16px}75%{height:9px}}
@keyframes dxV1865EqTwo{0%,100%{height:14px}42%{height:6px}78%{height:17px}}
@keyframes dxV1865EqThree{0%,100%{height:8px}35%{height:17px}72%{height:5px}}
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .atmo-sound-toggle .atmo-sound-bars i,
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound .dx-v1865-sound-bars i{
  background:#42e1af!important;color:#42e1af!important;transform-origin:center!important
}
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .atmo-sound-toggle .atmo-sound-bars i:nth-child(1),
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound .dx-v1865-sound-bars i:nth-child(1){animation:dxV1865EqOne .78s ease-in-out infinite!important}
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .atmo-sound-toggle .atmo-sound-bars i:nth-child(2),
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound .dx-v1865-sound-bars i:nth-child(2){animation:dxV1865EqTwo .66s ease-in-out -.18s infinite!important}
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .atmo-sound-toggle .atmo-sound-bars i:nth-child(3),
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound .dx-v1865-sound-bars i:nth-child(3){animation:dxV1865EqThree .86s ease-in-out -.31s infinite!important}
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .atmo-sound-toggle .dx-sound-on,
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound .dx-v1865-state{
  color:#42e1af!important;-webkit-text-fill-color:#42e1af!important
}
html[data-dx-audio-state="off"] body.denlyx-atmosphere-theme .atmo-sound-toggle .atmo-sound-bars i,
html[data-dx-audio-state="off"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound .dx-v1865-sound-bars i{
  height:3px!important;background:#ff7479!important;color:#ff7479!important;animation:none!important
}
html[data-dx-audio-state="off"] body.denlyx-atmosphere-theme .atmo-sound-toggle .dx-sound-off,
html[data-dx-audio-state="off"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound .dx-v1865-state{
  color:#ff7479!important;-webkit-text-fill-color:#ff7479!important
}

/* Atomic audio entry banner: centered transparent glass, all-or-nothing content. */
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate{
  --dx1865-audio-bg:rgba(7,27,37,.34)!important;
  left:50%!important;right:auto!important;top:auto!important;
  background:var(--dx1865-audio-bg)!important;background-image:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.015))!important;
  -webkit-backdrop-filter:blur(22px) saturate(125%)!important;backdrop-filter:blur(22px) saturate(125%)!important;
  transform:translate3d(-50%,8px,0)!important;overflow:hidden!important
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-tone="light"]{
  --dx1865-audio-bg:rgba(247,250,251,.38)!important
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-visible{
  transform:translate3d(-50%,0,0)!important
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-closing{
  opacity:0!important;visibility:visible!important;pointer-events:none!important;transform:translate3d(-50%,8px,0)!important
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[hidden],
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-state="hidden"]{
  display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-visible .dx-v1865-audio-enable,
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-visible .dx-v1865-audio-close,
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-visible .dx-v1865-audio-copy,
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-visible .dx-v1865-audio-copy b,
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-visible .dx-v1865-audio-copy small,
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-visible .dx-v1865-audio-bars{
  display:grid!important;visibility:visible!important;opacity:1!important;filter:none!important
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-visible .dx-v1865-audio-enable{display:grid!important}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-visible .dx-v1865-audio-bars{display:flex!important}
@media (min-width:981px){
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate{
    bottom:max(24px,calc(env(safe-area-inset-bottom,0px) + 18px))!important
  }
}
@media (max-width:980px){
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate{
    left:24px!important;right:24px!important;width:auto!important;
    transform:translate3d(0,8px,0)!important
  }
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-visible{transform:translate3d(0,0,0)!important}
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-closing{transform:translate3d(0,8px,0)!important}
}

/* Stable About and Capabilities CTAs: template-owned and never reveal-controlled. */
html body.denlyx-atmosphere-theme .dx-v1865-stable-cta-copy,
html body.denlyx-atmosphere-theme .dx-v1865-capabilities-actions,
html body.denlyx-atmosphere-theme .dx-v1865-stable-cta{
  opacity:1!important;visibility:visible!important;filter:none!important;clip:auto!important;clip-path:none!important;
  content-visibility:visible!important;contain:none!important;pointer-events:auto!important
}
html body.denlyx-atmosphere-theme .dx-v1865-stable-cta{
  display:inline-flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;
  min-height:58px!important;transform:translate3d(0,0,0)!important;position:relative!important;z-index:8!important
}
html body.dx-about-page .dx-v1865-about-final-grid{grid-template-columns:1fr!important}
html body.dx-about-page .dx-v1865-stable-cta-copy{display:block!important;max-width:1120px!important}
html body.dx-about-page .dx-v1865-about-cta{width:min(100%,310px)!important;margin-top:28px!important}
html body.dx-capabilities-page .dx-v1865-capabilities-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important}
@media (max-width:980px){
  html body.dx-about-page .dx-v1865-about-cta,
  html body.dx-capabilities-page .dx-v1865-capabilities-cta{
    display:flex!important;width:100%!important;max-width:none!important;margin:32px 0 0!important;padding:0 24px!important
  }
  html body.dx-capabilities-page .dx-v1865-capabilities-grid{display:block!important}
  html body.dx-capabilities-page .dx-v1865-capabilities-actions{display:flex!important;justify-content:stretch!important}
}

/* Contact map banner: isolated large animated white/silver wordmark. */
html body.dx-contact-page .dx-contact-map-caption.dx-v1865-map-caption{
  grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto 1fr!important;
  height:100px!important;min-height:100px!important;max-height:100px!important;padding:9px 14px!important
}
html body.dx-contact-page .dx-v1865-map-brand{
  grid-column:1!important;grid-row:1!important;align-self:end!important;display:block!important;min-width:0!important;overflow:visible!important
}
html body.dx-contact-page .dx-v1865-map-brand>.dx-v1865-map-brand-text{
  display:block!important;width:max-content!important;max-width:100%!important;white-space:nowrap!important;
  font-family:inherit!important;font-size:clamp(34px,5vw,52px)!important;font-weight:900!important;line-height:.86!important;letter-spacing:.105em!important;
  color:transparent!important;-webkit-text-fill-color:transparent!important;
  background:linear-gradient(105deg,#d8e4e9 0%,#f7fbff 27%,#ffffff 47%,#c4d6de 53%,#ffffff 66%,#d8e4e9 100%)!important;
  background-size:280% 100%!important;-webkit-background-clip:text!important;background-clip:text!important;
  filter:drop-shadow(0 1px 1px rgba(8,36,48,.58))!important;transform:none!important;
  animation:dxV1865MapWhiteGradient 3.1s linear infinite!important
}
@keyframes dxV1865MapWhiteGradient{from{background-position:155% 0}to{background-position:-155% 0}}
html body.dx-contact-page #quote-form{scroll-margin-top:120px!important}

/* Companies -> Globe is light-to-dark. Globe -> WHY is transparent dark-to-dark. */
html body.dx-home-page .dx11-globe-wrap{
  --dx1865-globe-entry:0;isolation:isolate!important;border-bottom:0!important;background-color:#071d29!important
}
html body.dx-home-page .dx11-globe-wrap::before{
  display:block!important;content:""!important;top:0!important;height:32vh!important;min-height:180px!important;
  background:linear-gradient(180deg,rgba(241,245,245,calc(1 - var(--dx1865-globe-entry))) 0%,rgba(230,238,239,calc((1 - var(--dx1865-globe-entry)) * .72)) 28%,transparent 100%)!important;
  opacity:1!important;filter:none!important;pointer-events:none!important;z-index:8!important
}
html body.dx-home-page .dx11-globe-wrap::after{content:none!important;display:none!important}
html body.dx-home-page #why-denlyx,
html body.dx-home-page #why-denlyx .dx11-value-media,
html body.dx-home-page #why-denlyx .dx11-value-sticky{
  background-color:transparent!important
}
@media (min-width:981px){
  html body.dx-home-page .dx11-globe-wrap{
    min-height:158svh!important;padding:0!important;display:block!important
  }
  html body.dx-home-page .dx11-globe-wrap>.dx11-container.dx-globe-grid{
    position:sticky!important;top:0!important;min-height:100svh!important;padding-top:105px!important;padding-bottom:90px!important;align-items:center!important
  }
}

@media (prefers-reduced-motion:reduce){
  html body.denlyx-atmosphere-theme .atmo-language-popup button[data-language-option],
  html body.dx-contact-page .dx-v1865-map-brand>.dx-v1865-map-brand-text{transition:none!important;animation:none!important}
  html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .atmo-sound-bars i,
  html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-sound-bars i{animation:none!important;height:10px!important}
}

/* ========================================================================== 
   DENLYX v1.8.65 — FINAL STRUCTURAL CORRECTIONS
   One owner for the post-v0.3.7 acceptance issues.
   ========================================================================== */

/* 1) Compact desktop header: only the real two pills may paint. */
@media (min-width:981px){
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls,
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls *{
    backface-visibility:hidden!important;-webkit-backface-visibility:hidden!important
  }
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls.is-exiting{
    opacity:0!important;visibility:visible!important;pointer-events:none!important;
    transition:opacity .18s linear!important
  }
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls:not(.is-ready){
    pointer-events:none!important
  }
}

/* 2) Companies panel: same premium hover language as the language rows. */
html body.denlyx-atmosphere-theme .atmo-company-nav>.atmo-dropdown>a.dx-v1865-company-menu-card,
html body.denlyx-atmosphere-theme .dx-command-network>a.dx-v1865-company-menu-card{
  transform:translate3d(0,0,0)!important;
  transition:transform .26s cubic-bezier(.22,.8,.22,1),background-color .24s ease,border-color .24s ease,box-shadow .24s ease,color .24s ease!important;
  will-change:transform!important
}
html body.denlyx-atmosphere-theme .atmo-company-nav>.atmo-dropdown>a.dx-v1865-company-menu-card:hover,
html body.denlyx-atmosphere-theme .atmo-company-nav>.atmo-dropdown>a.dx-v1865-company-menu-card:focus-visible,
html body.denlyx-atmosphere-theme .dx-command-network>a.dx-v1865-company-menu-card:hover,
html body.denlyx-atmosphere-theme .dx-command-network>a.dx-v1865-company-menu-card:focus-visible{
  transform:translate3d(0,-3px,0)!important;
  background:rgba(255,255,255,.12)!important;
  border-color:rgba(247,251,255,.98)!important;
  box-shadow:0 10px 26px rgba(2,16,24,.18),inset 0 1px 0 rgba(255,255,255,.22)!important
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-tone="light"] .atmo-company-nav>.atmo-dropdown>a.dx-v1865-company-menu-card:hover,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-tone="light"] .atmo-company-nav>.atmo-dropdown>a.dx-v1865-company-menu-card:focus-visible{
  background:rgba(23,59,75,.09)!important;border-color:rgba(23,59,75,.96)!important;
  box-shadow:0 10px 25px rgba(23,59,75,.14),inset 0 1px 0 rgba(255,255,255,.38)!important
}
html body.denlyx-atmosphere-theme .atmo-company-nav>.atmo-dropdown>a.dx-v1865-company-menu-card:active,
html body.denlyx-atmosphere-theme .dx-command-network>a.dx-v1865-company-menu-card:active{
  transform:translate3d(0,-1px,0) scale(.986)!important;transition-duration:.10s!important
}
html body.denlyx-atmosphere-theme .atmo-company-nav>.atmo-dropdown>a.dx-v1865-company-menu-card:focus:not(:focus-visible),
html body.denlyx-atmosphere-theme .dx-command-network>a.dx-v1865-company-menu-card:focus:not(:focus-visible){
  transform:translate3d(0,0,0)!important
}

/* 3) About and Capabilities CTAs: ordinary document-flow links, never reveal-controlled. */
html body.dx-about-page .dx-v1865-static-cta-section,
html body.dx-capabilities-page .dx-v1865-static-cta-section,
html body.dx-about-page .dx-v1865-static-cta-grid,
html body.dx-capabilities-page .dx-v1865-static-cta-grid,
html body.dx-about-page .dx-v1865-static-cta-copy,
html body.dx-capabilities-page .dx-v1865-static-cta-actions{
  content-visibility:visible!important;contain:none!important;opacity:1!important;visibility:visible!important;
  filter:none!important;clip:auto!important;clip-path:none!important;overflow:visible!important
}
html body.dx-about-page .dx-v1865-static-cta-grid{display:block!important}
html body.dx-capabilities-page .dx-v1865-static-cta-grid{display:grid!important}
html body.dx-capabilities-page .dx-v1865-static-cta-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important}
html body.denlyx-atmosphere-theme a.dx-v1865-permanent-cta{
  box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:space-between!important;gap:22px!important;
  width:min(100%,310px)!important;min-height:66px!important;margin:28px 0 0!important;padding:0 24px!important;
  position:relative!important;z-index:20!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;
  clip:auto!important;clip-path:none!important;filter:none!important;translate:none!important;
  color:#f7fbff!important;-webkit-text-fill-color:#f7fbff!important;text-decoration:none!important;
  border:1.3px solid rgba(247,251,255,.62)!important;border-radius:0!important;
  background:rgba(255,255,255,.018)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.07)!important;
  -webkit-backdrop-filter:blur(14px) saturate(108%)!important;backdrop-filter:blur(14px) saturate(108%)!important;
  transform:translate3d(0,0,0)!important;
  transition:transform .28s cubic-bezier(.22,.8,.22,1),background-color .24s ease,border-color .24s ease,box-shadow .24s ease!important
}
html body.denlyx-atmosphere-theme a.dx-v1865-permanent-cta>span{
  display:inline-block!important;transform:translate3d(0,0,0)!important;transition:transform .26s cubic-bezier(.22,.8,.22,1)!important
}
html body.denlyx-atmosphere-theme a.dx-v1865-permanent-cta:hover,
html body.denlyx-atmosphere-theme a.dx-v1865-permanent-cta:focus-visible{
  transform:translate3d(0,-4px,0)!important;background:rgba(255,255,255,.10)!important;
  border-color:rgba(247,251,255,.96)!important;box-shadow:0 12px 30px rgba(2,16,24,.20),inset 0 1px 0 rgba(255,255,255,.18)!important
}
html body.denlyx-atmosphere-theme a.dx-v1865-permanent-cta:hover>span,
html body.denlyx-atmosphere-theme a.dx-v1865-permanent-cta:focus-visible>span{transform:translate3d(5px,0,0)!important}
html body.denlyx-atmosphere-theme a.dx-v1865-permanent-cta:active{transform:translate3d(0,-1px,0) scale(.99)!important;transition-duration:.10s!important}
html body.denlyx-atmosphere-theme a.dx-v1865-permanent-cta:focus:not(:focus-visible){transform:translate3d(0,0,0)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.07)!important}
@media (max-width:980px){
  html body.dx-about-page .dx-v1865-static-cta-section,
  html body.dx-capabilities-page .dx-v1865-static-cta-section{display:block!important;min-height:auto!important;height:auto!important;padding-bottom:88px!important}
  html body.dx-about-page .dx-v1865-static-cta-grid,
  html body.dx-capabilities-page .dx-v1865-static-cta-grid{display:block!important}
  html body.dx-capabilities-page .dx-v1865-static-cta-actions{display:block!important}
  html body.denlyx-atmosphere-theme a.dx-v1865-permanent-cta{display:flex!important;width:100%!important;max-width:none!important;margin-top:32px!important}
}

/* 4) Contact map brand: measured 32px mobile / 40px desktop and exact header-logo shine. */
html body.dx-contact-page .dx-contact-map-caption.dx-v1865-map-caption{
  height:104px!important;min-height:104px!important;max-height:104px!important;padding:9px 14px!important
}
html body.dx-contact-page .dx-v1865-map-brand>.dx-v1865-map-brand-text{
  position:relative!important;display:block!important;width:max-content!important;max-width:100%!important;white-space:nowrap!important;
  font-family:inherit!important;font-size:32px!important;font-weight:900!important;line-height:.90!important;letter-spacing:.10em!important;
  color:#173b4b!important;-webkit-text-fill-color:#173b4b!important;background:none!important;animation:none!important;filter:none!important
}
html body.dx-contact-page .dx-v1865-map-brand>.dx-v1865-map-brand-text::after{
  content:"DENLYX"!important;position:absolute!important;inset:0!important;z-index:1!important;pointer-events:none!important;
  font:inherit!important;font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important;letter-spacing:inherit!important;white-space:nowrap!important;
  color:transparent!important;-webkit-text-fill-color:transparent!important;
  background:linear-gradient(45deg,transparent 34%,rgba(255,255,255,.18) 41%,rgba(255,255,255,.98) 49%,rgba(94,221,255,.92) 52%,rgba(255,255,255,.22) 59%,transparent 66%)!important;
  background-size:260% 100%!important;background-position:160% 50%!important;
  -webkit-background-clip:text!important;background-clip:text!important;opacity:0;
  animation:dx-wordmark-shine 20s linear infinite!important;will-change:background-position,opacity!important
}
@media (min-width:981px){html body.dx-contact-page .dx-v1865-map-brand>.dx-v1865-map-brand-text{font-size:40px!important}}

/* 5) Audio prompt: transparent, atomic, reusable after reload, and anchored below header controls on desktop. */
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate{
  --dx1865-audio-bg:rgba(7,27,37,.28)!important;
  background:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.012)),var(--dx1865-audio-bg)!important;
  -webkit-backdrop-filter:blur(22px) saturate(128%)!important;backdrop-filter:blur(22px) saturate(128%)!important;
  overflow:hidden!important
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-tone="light"]{--dx1865-audio-bg:rgba(247,250,251,.33)!important}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-visible .dx-v1865-audio-enable,
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-visible .dx-v1865-audio-close,
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-visible .dx-v1865-audio-copy,
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-visible .dx-v1865-audio-copy b,
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-visible .dx-v1865-audio-copy small,
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-visible .dx-v1865-audio-bars{
  visibility:visible!important;opacity:1!important;filter:none!important
}
@media (min-width:981px){
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate{
    left:var(--dx1865-audio-left,75%)!important;right:auto!important;top:auto!important;
    bottom:clamp(120px,18vh,210px)!important;transform:translate3d(-50%,8px,0)!important
  }
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-visible{transform:translate3d(-50%,0,0)!important}
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-closing{transform:translate3d(-50%,8px,0)!important}
}

/* 6) Globe -> WHY: never fade the dark section surface itself. Fade only contents. */
html body.dx-home-page .dx11-reach{background:#071d29!important}
html body.dx-home-page .dx11-globe-wrap{
  opacity:1!important;filter:none!important;transform:none!important;background:#071d29!important;background-color:#071d29!important;
  border-bottom:0!important;isolation:isolate!important
}
html body.dx-home-page .dx11-globe-wrap>.dx-globe-atmosphere,
html body.dx-home-page .dx11-globe-wrap>.dx11-container.dx-globe-grid{
  opacity:calc(1 - (var(--dx1865-globe-cross,0) * .92))!important;
  filter:blur(calc(var(--dx1865-globe-cross,0) * 8px))!important;
  transform:translate3d(0,calc(var(--dx1865-globe-cross,0) * -24px),0)!important;
  will-change:opacity,filter,transform!important;transition:none!important
}
html body.dx-home-page .dx11-globe-wrap::after{content:none!important;display:none!important}
html body.dx-home-page #why-denlyx{background:#071d29!important;background-color:#071d29!important}
html body.dx-home-page #why-denlyx .dx11-value-media,
html body.dx-home-page #why-denlyx .dx11-value-sticky{
  opacity:calc(.18 + (var(--dx1865-globe-cross,0) * .82))!important;
  filter:blur(calc((1 - var(--dx1865-globe-cross,0)) * 8px))!important;
  transform:translate3d(0,calc((1 - var(--dx1865-globe-cross,0)) * 30px),0)!important;
  will-change:opacity,filter,transform!important;transition:none!important
}
@media (min-width:981px){
  html body.dx-home-page .dx11-globe-wrap{min-height:180svh!important}
}

@media (prefers-reduced-motion:reduce){
  html body.denlyx-atmosphere-theme .dx-v1865-company-menu-card,
  html body.denlyx-atmosphere-theme a.dx-v1865-permanent-cta,
  html body.dx-contact-page .dx-v1865-map-brand>.dx-v1865-map-brand-text::after{transition:none!important;animation:none!important}
}

/* ========================================================================== 
   DENLYX v1.8.65 — SHIPPING HARDENING
   Scoped defenses for the remaining live-device failure modes.
   ========================================================================== */

/* Keep the original header completely non-painting for the whole compact state,
   including the exact frame in which the legacy controller removes the class. */
@media (min-width:981px){
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact,
  html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-hidden="true"]{
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:none!important
  }
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls.is-exiting,
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls.is-exiting.is-ready{
    opacity:0!important;visibility:visible!important;pointer-events:none!important;transition:opacity .18s linear!important
  }
}

/* Permanent CTA containment: no lazy-rendering or ancestor animation may remove
   the two required links from the mobile or desktop document flow. */
html body.dx-about-page .dx-v1865-static-cta-section,
html body.dx-capabilities-page .dx-v1865-static-cta-section,
html body.dx-about-page .dx-v1865-static-cta-grid,
html body.dx-capabilities-page .dx-v1865-static-cta-grid,
html body.dx-about-page .dx-v1865-static-cta-copy,
html body.dx-capabilities-page .dx-v1865-capabilities-copy,
html body.dx-capabilities-page .dx-v1865-static-cta-actions{
  content-visibility:visible!important;contain:none!important;opacity:1!important;visibility:visible!important;
  transform:none!important;translate:none!important;filter:none!important;clip:auto!important;clip-path:none!important
}
html body.denlyx-atmosphere-theme a.dx-v1865-permanent-cta{
  content-visibility:visible!important;contain:none!important;opacity:1!important;visibility:visible!important;
  pointer-events:auto!important;clip:auto!important;clip-path:none!important
}

/* The map wordmark reuses the exact header timing and shine, with a measured
   4x+ type size relative to the original 8–10px label. */
html body.dx-contact-page .dx-v1865-map-brand{
  color:inherit!important;-webkit-text-fill-color:inherit!important;background:none!important;animation:none!important
}
html body.dx-contact-page .dx-v1865-map-brand>.dx-v1865-map-brand-text{
  font-size:40px!important;font-weight:900!important;line-height:.84!important;letter-spacing:.09em!important;
  text-shadow:0 0 0 rgba(87,220,255,0),0 0 0 rgba(255,255,255,0)!important;
  animation:dx-wordmark-glow 20s ease-in-out infinite!important;will-change:text-shadow!important
}
@media (min-width:981px){
  html body.dx-contact-page .dx-v1865-map-brand>.dx-v1865-map-brand-text{font-size:44px!important}
}

/* Audio prompt is aligned to the live header-action group and held noticeably
   above the page bottom. Its surface remains truly translucent. */
@media (min-width:981px){
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate{
    left:var(--dx1865-audio-left,75%)!important;right:auto!important;
    bottom:clamp(142px,21vh,240px)!important;
    background:linear-gradient(135deg,rgba(255,255,255,.07),rgba(255,255,255,.01)),rgba(7,27,37,.24)!important
  }
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-tone="light"]{
    background:linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,.025)),rgba(247,250,251,.26)!important
  }
}

/* The globe surface never changes to white. Only the globe content fades over
   the existing dark surface; WHY uses the same dark transition surface. */
html body.dx-home-page .dx11-reach,
html body.dx-home-page .dx11-globe-wrap,
html body.dx-home-page #why-denlyx{
  background:#071d29!important;background-color:#071d29!important;background-image:none!important
}
html body.dx-home-page .dx11-globe-wrap{opacity:1!important}
html body.dx-home-page .dx11-globe-wrap::before,
html body.dx-home-page .dx11-globe-wrap::after{background:transparent!important;background-image:none!important}

/* High-specificity state colors beat legacy adaptive text rules without
   changing the SOUND label or the adaptive outer outline. */
html[data-dx-audio-state="off"] body.denlyx-atmosphere-theme header.atmo-header button.atmo-sound-toggle span.dx-sound-state.dx-sound-off,
html[data-dx-audio-state="off"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound span.dx-v1865-state{
  color:#ff7479!important;-webkit-text-fill-color:#ff7479!important
}
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme header.atmo-header button.atmo-sound-toggle span.dx-sound-state.dx-sound-on,
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound span.dx-v1865-state{
  color:#42e1af!important;-webkit-text-fill-color:#42e1af!important
}

@media (max-width:980px){
  html body.denlyx-atmosphere-theme header.atmo-header button.atmo-language-trigger,
  html body.denlyx-atmosphere-theme header.atmo-header button.atmo-sound-toggle{
    border-width:2px!important;border-style:solid!important
  }
  html body.denlyx-atmosphere-theme header.atmo-header button.atmo-language-trigger .dx-v1865-mobile-outline,
  html body.denlyx-atmosphere-theme header.atmo-header button.atmo-sound-toggle .dx-v1865-mobile-outline{
    border-width:2px!important
  }
}

/* source: denlyx-v1866-production.css */
/* ========================================================================== 
   DENLYX v1.8.66 — FINAL CONSISTENCY + HOMEPAGE LINE SYSTEM
   One scoped owner for the final requested visual consistency pass.
   ========================================================================== */

:root{
  --dx1866-radius:24px;
  --dx1866-line-light:rgba(23,59,75,.24);
  --dx1866-line-dark:rgba(247,251,255,.24);
  --dx1866-lift-shadow:0 18px 42px rgba(5,28,40,.13),inset 0 1px 0 rgba(255,255,255,.45);
}

/* --------------------------------------------------------------------------
   1) HOMEPAGE: use the Company Directory card language for every real block.
   Thin architectural outlines + deliberate internal rules, without boxing the
   photographic hero or section backgrounds themselves.
   -------------------------------------------------------------------------- */
html body.dx-home-page .dx11-company-card,
html body.dx-home-page .dx11-metric,
html body.dx-home-page .dx11-facility-summary,
html body.dx-home-page .dx-globe-detail,
html body.dx-home-page .dx11-value-item{
  border:1px solid var(--dx1866-line-light)!important;
  border-radius:var(--dx1866-radius)!important;
  overflow:hidden!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.32)!important;
}

/* Company cards: image / identity / description-action zones are visibly ruled. */
html body.dx-home-page .dx11-company-card{
  background:rgba(246,249,250,.42)!important;
  transition:transform .28s cubic-bezier(.22,.8,.22,1),border-color .24s ease,background-color .24s ease,box-shadow .24s ease!important;
}
html body.dx-home-page .dx11-company-card .dx11-company-logo{
  border-bottom:1px solid var(--dx1866-line-light)!important;
}
html body.dx-home-page .dx11-company-card .dx11-company-body{
  display:flex!important;flex-direction:column!important;padding:0!important;
}
html body.dx-home-page .dx11-company-card .dx11-company-relation,
html body.dx-home-page .dx11-company-card .dx11-company-body h3,
html body.dx-home-page .dx11-company-card .dx11-company-body>p{
  margin-left:28px!important;margin-right:28px!important;
}
html body.dx-home-page .dx11-company-card .dx11-company-relation{margin-top:28px!important}
html body.dx-home-page .dx11-company-card .dx11-company-body>p{
  flex:1 1 auto!important;margin-bottom:26px!important;
}
html body.dx-home-page .dx11-company-card .dx11-company-actions{
  min-height:70px!important;margin:0!important;padding:0 28px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  border-top:1px solid var(--dx1866-line-light)!important;
}
html body.dx-home-page .dx11-company-card:hover,
html body.dx-home-page .dx11-company-card:focus-within{
  transform:translate3d(0,-5px,0)!important;
  border-color:rgba(23,59,75,.55)!important;
  background:rgba(248,251,252,.68)!important;
  box-shadow:var(--dx1866-lift-shadow)!important;
}

/* Metric blocks: number and descriptor become two clean card bands. */
html body.dx-home-page .dx11-metric{
  padding:0!important;background:rgba(246,249,250,.38)!important;
  transition:transform .25s cubic-bezier(.22,.8,.22,1),border-color .22s ease,box-shadow .22s ease!important;
}
html body.dx-home-page .dx11-metric>strong{
  display:flex!important;align-items:center!important;justify-content:center!important;
  min-height:112px!important;padding:24px 18px!important;margin:0!important;
}
html body.dx-home-page .dx11-metric>span{
  display:flex!important;align-items:center!important;justify-content:center!important;
  min-height:78px!important;margin:0!important;padding:18px 20px!important;
  border-top:1px solid var(--dx1866-line-light)!important;
}
html body.dx-home-page .dx11-metric:hover{
  transform:translate3d(0,-4px,0)!important;border-color:rgba(23,59,75,.52)!important;box-shadow:var(--dx1866-lift-shadow)!important;
}

/* Facility summary: one rounded master card with a ruled title row and entries. */
html body.dx-home-page .dx11-facility-summary{
  padding:0!important;background:rgba(246,249,250,.36)!important;
}
html body.dx-home-page .dx11-facility-summary>*{
  margin:0!important;padding:18px 24px!important;
}
html body.dx-home-page .dx11-facility-summary>*+*{
  border-top:1px solid var(--dx1866-line-light)!important;
}

/* Globe detail uses the same card anatomy on the dark surface. */
html body.dx-home-page .dx-globe-detail{
  border-color:var(--dx1866-line-dark)!important;background:rgba(255,255,255,.025)!important;padding:0!important;
}
html body.dx-home-page .dx-globe-detail>small{
  display:block!important;margin:0!important;padding:15px 22px!important;border-bottom:1px solid var(--dx1866-line-dark)!important;
}
html body.dx-home-page .dx-globe-detail>b{
  display:block!important;margin:0!important;padding:18px 22px 5px!important;
}
html body.dx-home-page .dx-globe-detail>p{
  margin:0!important;padding:0 22px 20px!important;
}

/* WHY rows become individual rounded ruled blocks; number column is separated. */
html body.dx-home-page .dx11-value-list{gap:12px!important}
html body.dx-home-page .dx11-value-item{
  border-color:var(--dx1866-line-dark)!important;background:rgba(5,24,34,.24)!important;
  padding:0!important;min-height:118px!important;
  transition:transform .25s cubic-bezier(.22,.8,.22,1),background-color .22s ease,border-color .22s ease,box-shadow .22s ease!important;
}
html body.dx-home-page .dx11-value-item>span{
  align-self:stretch!important;display:flex!important;align-items:center!important;justify-content:center!important;
  min-width:76px!important;margin:0!important;border-right:1px solid var(--dx1866-line-dark)!important;
}
html body.dx-home-page .dx11-value-item>div{padding:22px 24px!important}
html body.dx-home-page .dx11-value-item:hover{
  transform:translate3d(0,-3px,0)!important;background:rgba(255,255,255,.055)!important;
  border-color:rgba(247,251,255,.52)!important;box-shadow:0 16px 36px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.10)!important;
}

/* Preserve compact mobile rhythm while keeping the same card system. */
@media (max-width:980px){
  html body.dx-home-page .dx11-company-card .dx11-company-relation,
  html body.dx-home-page .dx11-company-card .dx11-company-body h3,
  html body.dx-home-page .dx11-company-card .dx11-company-body>p{margin-left:22px!important;margin-right:22px!important}
  html body.dx-home-page .dx11-company-card .dx11-company-actions{padding:0 22px!important}
  html body.dx-home-page .dx11-metric>strong{min-height:92px!important}
  html body.dx-home-page .dx11-metric>span{min-height:68px!important}
  html body.dx-home-page .dx11-value-item>span{min-width:56px!important}
  html body.dx-home-page .dx11-value-item>div{padding:18px!important}
}

/* --------------------------------------------------------------------------
   2) FINAL CTA CONSISTENCY: every named square/rectangular action becomes a
   rounded control with centered content and the approved hover language.
   -------------------------------------------------------------------------- */
html body.denlyx-atmosphere-theme .atmo-final-actions .atmo-button,
html body.denlyx-atmosphere-theme a.dx-v1865-permanent-cta,
html body.denlyx-atmosphere-theme .atmo-contact-hero .atmo-button,
html body.denlyx-atmosphere-theme #quote-form .atmo-submit,
html body.denlyx-atmosphere-theme .dx-project-modal-form .atmo-submit{
  border-radius:999px!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  transform:translate3d(0,0,0)!important;
  transition:transform .27s cubic-bezier(.22,.8,.22,1),background-color .23s ease,border-color .23s ease,box-shadow .23s ease!important;
}
html body.denlyx-atmosphere-theme .atmo-final-actions .atmo-button>span,
html body.denlyx-atmosphere-theme a.dx-v1865-permanent-cta>span,
html body.denlyx-atmosphere-theme .atmo-contact-hero .atmo-button>span,
html body.denlyx-atmosphere-theme #quote-form .atmo-submit>span,
html body.denlyx-atmosphere-theme .dx-project-modal-form .atmo-submit>span{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;align-self:center!important;
  line-height:1!important;margin-block:auto!important;transform:translate3d(0,0,0)!important;
  transition:transform .24s cubic-bezier(.22,.8,.22,1)!important;
}
html body.denlyx-atmosphere-theme .atmo-final-actions .atmo-button:hover,
html body.denlyx-atmosphere-theme .atmo-final-actions .atmo-button:focus-visible,
html body.denlyx-atmosphere-theme a.dx-v1865-permanent-cta:hover,
html body.denlyx-atmosphere-theme a.dx-v1865-permanent-cta:focus-visible,
html body.denlyx-atmosphere-theme .atmo-contact-hero .atmo-button:hover,
html body.denlyx-atmosphere-theme .atmo-contact-hero .atmo-button:focus-visible,
html body.denlyx-atmosphere-theme #quote-form .atmo-submit:hover,
html body.denlyx-atmosphere-theme #quote-form .atmo-submit:focus-visible,
html body.denlyx-atmosphere-theme .dx-project-modal-form .atmo-submit:hover,
html body.denlyx-atmosphere-theme .dx-project-modal-form .atmo-submit:focus-visible{
  transform:translate3d(0,-4px,0)!important;
  box-shadow:0 12px 30px rgba(4,27,39,.16),inset 0 1px 0 rgba(255,255,255,.20)!important;
}
html body.denlyx-atmosphere-theme .atmo-final-actions .atmo-button:hover>span,
html body.denlyx-atmosphere-theme a.dx-v1865-permanent-cta:hover>span,
html body.denlyx-atmosphere-theme .atmo-contact-hero .atmo-button:hover>span,
html body.denlyx-atmosphere-theme #quote-form .atmo-submit:hover>span,
html body.denlyx-atmosphere-theme .dx-project-modal-form .atmo-submit:hover>span{transform:translate3d(5px,0,0)!important}

/* Smaller, centered Submit Request controls in both the page form and popup. */
html body.denlyx-atmosphere-theme #quote-form .atmo-submit,
html body.denlyx-atmosphere-theme .dx-project-modal-form .atmo-submit{
  width:min(100%,330px)!important;min-width:240px!important;min-height:54px!important;
  margin:26px auto 0!important;padding:0 24px!important;
}
html body.denlyx-atmosphere-theme .dx-project-modal-form .atmo-submit{grid-column:1/-1!important}

/* --------------------------------------------------------------------------
   3) Popup Operating Network: rounded master panel, internal lines preserved.
   -------------------------------------------------------------------------- */
html body.denlyx-atmosphere-theme .dx-command-network{
  border:1px solid rgba(23,59,75,.22)!important;border-radius:24px!important;overflow:hidden!important;
  background:rgba(244,248,249,.54)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.42)!important;
}
html body.denlyx-atmosphere-theme .dx-command-network>span{
  display:block!important;padding:18px 22px!important;margin:0!important;border-bottom:1px solid rgba(23,59,75,.20)!important;
}
html body.denlyx-atmosphere-theme .dx-command-network>a{
  border-radius:0!important;border-width:0 0 1px!important;margin:0!important;
}
html body.denlyx-atmosphere-theme .dx-command-network>a:last-child{border-bottom:0!important}

/* --------------------------------------------------------------------------
   4) Globe -> WHY timing: short and responsive, like the first homepage stages.
   -------------------------------------------------------------------------- */
@media (min-width:981px){
  html body.dx-home-page .dx11-globe-wrap{min-height:124svh!important}
}

@media (prefers-reduced-motion:reduce){
  html body.dx-home-page .dx11-company-card,
  html body.dx-home-page .dx11-metric,
  html body.dx-home-page .dx11-value-item,
  html body.denlyx-atmosphere-theme .atmo-final-actions .atmo-button,
  html body.denlyx-atmosphere-theme a.dx-v1865-permanent-cta,
  html body.denlyx-atmosphere-theme .atmo-contact-hero .atmo-button,
  html body.denlyx-atmosphere-theme #quote-form .atmo-submit,
  html body.denlyx-atmosphere-theme .dx-project-modal-form .atmo-submit{transition:none!important;transform:none!important}
}

/* source: denlyx-v1901-production.css */
/* ========================================================================== 
   DENLYX PLATFORM PRODUCTION v1.0.2 — FINAL RELEASE OWNER
   Final homepage navigation, contact CTA sizing, form-button alignment,
   audio-prompt/header coordination, and WHY-card cleanup.
   ========================================================================== */

/* 1) WHY DENLYX: the rounded first card owns its own top edge. Remove the
      obsolete list-wide rule that appeared above it. */
html body.dx-home-page .dx11-value-list{
  border-top:0!important;
}
html body.dx-home-page .dx11-value-list::before,
html body.dx-home-page .dx11-value-list::after{
  content:none!important;
  display:none!important;
}

/* 2) One nine-stop navigation rail for the complete homepage. Retire every
      older five-stop rail/progress copy so no duplicate lines remain. */
html body.dx-home-page .dx11-intro-progress,
html body.dx-home-page .dx-home-chapter-rail{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
html body.dx-home-page .dx-v1901-home-rail{
  --dx1901-rail-color:rgba(247,251,255,.50);
  --dx1901-rail-active:#f7fbff;
  --dx1901-rail-glow:rgba(247,251,255,.58);
  position:fixed!important;
  z-index:2147481200!important;
  left:max(10px,calc(env(safe-area-inset-left,0px) + 10px))!important;
  top:50%!important;
  display:grid!important;
  gap:14px!important;
  width:58px!important;
  padding:10px 0!important;
  margin:0!important;
  transform:translate3d(0,-50%,0)!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transition:opacity .25s ease,visibility .25s ease!important;
}
html body.dx-home-page .dx-v1901-home-rail[data-tone="light"]{
  --dx1901-rail-color:rgba(23,59,75,.46);
  --dx1901-rail-active:#173b4b;
  --dx1901-rail-glow:rgba(23,59,75,.42);
}
html body.dx-home-page .dx-v1901-home-rail button{
  appearance:none!important;
  display:block!important;
  width:34px!important;
  height:4px!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:999px!important;
  background:var(--dx1901-rail-color)!important;
  box-shadow:none!important;
  opacity:.82!important;
  cursor:pointer!important;
  transform:translate3d(0,0,0)!important;
  transition:width .28s cubic-bezier(.22,.8,.22,1),background-color .24s ease,box-shadow .24s ease,opacity .24s ease,transform .24s ease!important;
}
html body.dx-home-page .dx-v1901-home-rail button:hover,
html body.dx-home-page .dx-v1901-home-rail button:focus-visible{
  width:43px!important;
  opacity:1!important;
  outline:none!important;
}
html body.dx-home-page .dx-v1901-home-rail button.is-active{
  width:54px!important;
  background:var(--dx1901-rail-active)!important;
  opacity:1!important;
  box-shadow:0 0 13px var(--dx1901-rail-glow)!important;
}
html body.dx-home-page .dx-v1901-home-rail.is-hidden{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
@media (max-width:980px){
  html body.dx-home-page .dx-v1901-home-rail{display:none!important}
}

/* 3) Contact hero CTA: smaller, truly centered, and gently floating. */
html body.dx-contact-page .atmo-contact-hero .dx-contact-hero-copy{
  width:100%!important;
}
html body.dx-contact-page .atmo-contact-hero .dx-contact-hero-copy>.atmo-button{
  position:relative!important;
  width:min(320px,calc(100vw - 48px))!important;
  min-width:0!important;
  min-height:58px!important;
  margin:38px auto 0!important;
  padding:0 58px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  border-radius:999px!important;
  animation:dx1901ContactFloat 3.6s ease-in-out infinite!important;
}
html body.dx-contact-page .atmo-contact-hero .dx-contact-hero-copy>.atmo-button>span{
  position:absolute!important;
  right:24px!important;
  top:50%!important;
  margin:0!important;
  transform:translate3d(0,-50%,0)!important;
  line-height:1!important;
}
html body.dx-contact-page .atmo-contact-hero .dx-contact-hero-copy>.atmo-button:hover,
html body.dx-contact-page .atmo-contact-hero .dx-contact-hero-copy>.atmo-button:focus-visible{
  animation-play-state:paused!important;
  transform:translate3d(0,-4px,0)!important;
}
html body.dx-contact-page .atmo-contact-hero .dx-contact-hero-copy>.atmo-button:hover>span{
  transform:translate3d(5px,-50%,0)!important;
}
@keyframes dx1901ContactFloat{
  0%,100%{translate:0 0}
  50%{translate:0 -7px}
}

/* 4) Page and popup Submit Request controls: smaller and centered. The text
      remains at the geometric center while the arrow has its own right anchor. */
html body.denlyx-atmosphere-theme #quote-form .atmo-submit,
html body.denlyx-atmosphere-theme .dx-project-modal-form .atmo-submit{
  position:relative!important;
  width:min(280px,calc(100% - 32px))!important;
  min-width:0!important;
  min-height:50px!important;
  margin:24px auto 0!important;
  padding:0 52px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  border-radius:999px!important;
  white-space:nowrap!important;
}
html body.denlyx-atmosphere-theme #quote-form .atmo-submit>span,
html body.denlyx-atmosphere-theme .dx-project-modal-form .atmo-submit>span{
  position:absolute!important;
  right:20px!important;
  top:50%!important;
  margin:0!important;
  transform:translate3d(0,-50%,0)!important;
  line-height:1!important;
}
html body.denlyx-atmosphere-theme #quote-form .atmo-submit:hover>span,
html body.denlyx-atmosphere-theme .dx-project-modal-form .atmo-submit:hover>span{
  transform:translate3d(5px,-50%,0)!important;
}

/* 5) Desktop audio prompt follows the header transition. JavaScript writes the
      exact center so its right edge finishes flush with compact SOUND. */
@media (min-width:981px){
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate{
    left:var(--dx1901-audio-left,var(--dx1865-audio-left,75%))!important;
    will-change:left,transform,opacity!important;
  }
}

@media (prefers-reduced-motion:reduce){
  html body.dx-contact-page .atmo-contact-hero .dx-contact-hero-copy>.atmo-button{
    animation:none!important;
    translate:none!important;
  }
  html body.dx-home-page .dx-v1901-home-rail button{
    transition:none!important;
  }
}


/* ========================================================================== 
   DENLYX PLATFORM PRODUCTION v1.0.2 — ACCEPTANCE CORRECTIONS
   ========================================================================== */

/* Contact hero CTA: double the invitation label size while preserving the
   centered pill and independently anchored arrow. */
html body.dx-contact-page .atmo-contact-hero .dx-contact-hero-copy>.atmo-button{
  width:min(360px,calc(100vw - 48px))!important;
  min-height:68px!important;
  font-size:20px!important;
  font-weight:750!important;
  line-height:1!important;
  letter-spacing:.025em!important;
}
html body.dx-contact-page .atmo-contact-hero .dx-contact-hero-copy>.atmo-button>span{
  font-size:20px!important;
}

/* Company Directory final CTA: narrower button with geometrically centered
   label; arrow is removed from text flow so it cannot push the label. */
html body.page-template-page-company-directory .atmo-final-actions{
  display:flex!important;justify-content:center!important;align-items:center!important;
}
html body.page-template-page-company-directory .atmo-final-actions>.atmo-button,
html body.dx-directory-page .atmo-final-actions>.atmo-button{
  position:relative!important;
  width:min(290px,calc(100vw - 48px))!important;
  min-width:0!important;
  min-height:56px!important;
  padding:0 54px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  text-align:center!important;border-radius:999px!important;
}
html body.page-template-page-company-directory .atmo-final-actions>.atmo-button>span,
html body.dx-directory-page .atmo-final-actions>.atmo-button>span{
  position:absolute!important;right:22px!important;top:50%!important;margin:0!important;
  transform:translate3d(0,-50%,0)!important;line-height:1!important;
}
html body.page-template-page-company-directory .atmo-final-actions>.atmo-button:hover>span,
html body.dx-directory-page .atmo-final-actions>.atmo-button:hover>span{
  transform:translate3d(5px,-50%,0)!important;
}

/* Homepage rail: explicitly use dark marks on both light sections. */
html body.dx-home-page .dx-v1901-home-rail[data-tone="light"]{
  --dx1901-rail-color:rgba(13,45,59,.66)!important;
  --dx1901-rail-active:#082f40!important;
  --dx1901-rail-glow:rgba(8,47,64,.34)!important;
}

/* Audio prompt uses the exact JS-computed center. */
@media (min-width:981px){
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate{
    left:var(--dx1901-audio-left,var(--dx1865-audio-left,75%))!important;
    transition:left .46s cubic-bezier(.22,.8,.22,1),opacity .28s ease,transform .32s ease!important;
  }
}

/* source: denlyx-v1902-production.css */
/* ========================================================================== 
   DENLYX PLATFORM PRODUCTION v1.0.3 — FINAL POSITIONING & CTA PASS
   Shared desktop audio-banner alignment plus the final requested CTA widths.
   Mobile layouts remain unchanged.
   ========================================================================== */

/* 1) Keep the desktop audio banner hidden only until its exact first-frame
      horizontal coordinate is measured. This prevents a visible 75% fallback
      jump on Company Directory, Capabilities, and other interior pages. */
@media (min-width:981px){
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate:not([data-dx-v1902-positioned="true"]){
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:none!important;
  }
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate{
    left:var(--dx1902-audio-left,var(--dx1901-audio-left,var(--dx1865-audio-left,75%)))!important;
    will-change:left,transform,opacity!important;
    transition:left .30s cubic-bezier(.22,.8,.22,1),opacity .28s ease,transform .32s ease!important;
  }
}

/* 2) Company Directory: compact centered pill. The arrow is removed from the
      text flow so the label remains geometrically centered. */
@media (min-width:981px){
  html body.dx-company-directory-page .atmo-final-actions{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  html body.dx-company-directory-page .atmo-final-actions>.atmo-button{
    position:relative!important;
    width:220px!important;
    min-width:220px!important;
    max-width:220px!important;
    min-height:56px!important;
    padding:0 48px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    border-radius:999px!important;
    white-space:nowrap!important;
  }
  html body.dx-company-directory-page .atmo-final-actions>.atmo-button>span{
    position:absolute!important;
    right:20px!important;
    top:50%!important;
    margin:0!important;
    line-height:1!important;
    transform:translate3d(0,-50%,0)!important;
  }
  html body.dx-company-directory-page .atmo-final-actions>.atmo-button:hover>span,
  html body.dx-company-directory-page .atmo-final-actions>.atmo-button:focus-visible>span{
    transform:translate3d(5px,-50%,0)!important;
  }
}

/* 3) About: use the same two-column CTA placement language as Capabilities.
      Keep the heading at left and move a narrower button to the right. */
@media (min-width:981px){
  html body.dx-about-page .dx-v1865-about-final-grid{
    display:block!important;
  }
  html body.dx-about-page .dx-about-final-copy{
    width:100%!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 250px!important;
    column-gap:clamp(56px,8vw,150px)!important;
    align-items:end!important;
  }
  html body.dx-about-page .dx-v1865-final-text{
    grid-column:1!important;
    min-width:0!important;
  }
  html body.dx-about-page .dx-v1865-about-cta{
    grid-column:2!important;
    justify-self:end!important;
    align-self:end!important;
    position:relative!important;
    width:250px!important;
    min-width:250px!important;
    max-width:250px!important;
    min-height:62px!important;
    margin:0 0 4px!important;
    padding:0 48px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    border-radius:999px!important;
    white-space:nowrap!important;
  }
  html body.dx-about-page .dx-v1865-about-cta>span{
    position:absolute!important;
    right:20px!important;
    top:50%!important;
    margin:0!important;
    line-height:1!important;
    transform:translate3d(0,-50%,0)!important;
  }
  html body.dx-about-page .dx-v1865-about-cta:hover>span,
  html body.dx-about-page .dx-v1865-about-cta:focus-visible>span{
    transform:translate3d(5px,-50%,0)!important;
  }
}

/* 4) Contact page form only: narrower centered Submit Request button. The
      popup form retains its previously approved width. */
html body.dx-contact-page #quote-form .atmo-submit{
  position:relative!important;
  width:min(220px,calc(100% - 32px))!important;
  min-width:0!important;
  min-height:50px!important;
  margin:24px auto 0!important;
  padding:0 48px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  border-radius:999px!important;
  white-space:nowrap!important;
}
html body.dx-contact-page #quote-form .atmo-submit>span{
  position:absolute!important;
  right:18px!important;
  top:50%!important;
  margin:0!important;
  line-height:1!important;
  transform:translate3d(0,-50%,0)!important;
}
html body.dx-contact-page #quote-form .atmo-submit:hover>span,
html body.dx-contact-page #quote-form .atmo-submit:focus-visible>span{
  transform:translate3d(5px,-50%,0)!important;
}

/* source: denlyx-v1903-production.css */
/* ========================================================================== 
   DENLYX PLATFORM PRODUCTION v1.0.4 — GLOBAL CTA & AUDIO POSITION OWNER
   One consistent text-button system, the one approved two-arrow Contact CTA,
   and deterministic two-state desktop audio-banner positioning.
   ========================================================================== */

/* 1) Desktop audio banner: exactly two measured positions.
      Expanded = centered below EN / SOUND / START A PROJECT.
      Scrolled = right edge flush with compact SOUND after the first scroll. */
@media (min-width:981px){
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate:not([data-dx-v1903-positioned="true"]){
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:none!important;
  }
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate{
    left:var(--dx1903-audio-left,var(--dx1902-audio-left,var(--dx1901-audio-left,var(--dx1865-audio-left,75%))))!important;
    right:auto!important;
    will-change:left,transform,opacity!important;
    transition:left .28s cubic-bezier(.22,.8,.22,1),opacity .28s ease,transform .32s ease!important;
  }
}

/* 2) Shared text-button typography and geometric centering.
      Functional controls (MENU, SOUND, EN, close controls, selects, rail,
      Back to Top) are intentionally outside this selector set. */
:root{--dx1903-cta-font-size:14px}
html body.denlyx-atmosphere-theme :is(
  a.atmo-button,
  button.atmo-button,
  .dx11-button,
  .dx-v1865-permanent-cta,
  .atmo-header-cta,
  .dx11-company-actions>a,
  .dx-directory-actions>a,
  .atmo-final-actions>a.atmo-button,
  .atmo-actions>a.atmo-button,
  .dx-command-foot>a[data-project-modal-open],
  .dx-footer-contact>a[data-project-modal-open],
  .dx-contact-map-caption>a,
  #quote-form .atmo-submit,
  .dx-project-modal-form .atmo-submit
){
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  text-align:center!important;
  font-family:inherit!important;
  font-size:var(--dx1903-cta-font-size)!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:.02em!important;
}

/* Remove old arrow nodes and any space that earlier releases reserved for them. */
html body.denlyx-atmosphere-theme :is(
  a.atmo-button,
  button.atmo-button,
  .dx11-button,
  .dx-v1865-permanent-cta,
  .atmo-header-cta,
  #quote-form .atmo-submit,
  .dx-project-modal-form .atmo-submit
)>span:not(.dx-v1903-contact-label):not(.dx-v1903-contact-arrow){
  display:none!important;
  width:0!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
}

html body.denlyx-atmosphere-theme :is(
  .dx11-button,
  .dx-v1865-permanent-cta,
  .atmo-header-cta,
  .atmo-final-actions>a.atmo-button,
  #quote-form .atmo-submit,
  .dx-project-modal-form .atmo-submit
){
  padding-left:24px!important;
  padding-right:24px!important;
}

/* Explicitly clear old arrow-placement rules on the buttons changed in v1.0.4. */
html body.dx-company-directory-page .atmo-final-actions>.atmo-button>span,
html body.dx-about-page .dx-v1865-about-cta>span,
html body.dx-capabilities-page .dx-v1865-capabilities-cta>span,
html body.dx-contact-page #quote-form .atmo-submit>span,
html body .dx-project-modal-form .atmo-submit>span,
html body.dx-home-page .dx1849-discuss-cta>span{
  display:none!important;
}

/* Preserve each approved width/placement while removing arrow compensation. */
html body.dx-company-directory-page .atmo-final-actions>.atmo-button{
  padding-inline:24px!important;
  text-align:center!important;
}
html body.dx-about-page .dx-v1865-about-cta,
html body.dx-capabilities-page .dx-v1865-capabilities-cta{
  padding-inline:24px!important;
  text-align:center!important;
}
html body.dx-contact-page #quote-form .atmo-submit,
html body .dx-project-modal-form .atmo-submit{
  padding-inline:24px!important;
  text-align:center!important;
}

/* 3) The sole approved arrow exception: Contact hero has matching down arrows
      at both sides with the label mathematically centered between them. */
html body.dx-contact-page .dx-v1903-contact-start{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding-left:64px!important;
  padding-right:64px!important;
  text-align:center!important;
}
html body.dx-contact-page .dx-v1903-contact-start .dx-v1903-contact-label{
  display:block!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  text-align:center!important;
  line-height:1!important;
}
html body.dx-contact-page .dx-v1903-contact-start .dx-v1903-contact-arrow{
  position:absolute!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  top:50%!important;
  width:20px!important;
  height:20px!important;
  margin:0!important;
  padding:0!important;
  font-size:18px!important;
  font-weight:500!important;
  line-height:1!important;
  transform:translate3d(0,-50%,0)!important;
  pointer-events:none!important;
}
html body.dx-contact-page .dx-v1903-contact-start .dx-v1903-contact-arrow-left{left:28px!important}
html body.dx-contact-page .dx-v1903-contact-start .dx-v1903-contact-arrow-right{right:28px!important}

@media (max-width:980px){
  :root{--dx1903-cta-font-size:14px}
  html body.dx-contact-page .dx-v1903-contact-start{
    padding-left:52px!important;
    padding-right:52px!important;
  }
  html body.dx-contact-page .dx-v1903-contact-start .dx-v1903-contact-arrow-left{left:20px!important}
  html body.dx-contact-page .dx-v1903-contact-start .dx-v1903-contact-arrow-right{right:20px!important}
}

/* source: denlyx-v1904-production.css */
/* ========================================================================== 
   DENLYX PLATFORM PRODUCTION v1.0.5 — FINAL CONTACT LABEL + AUDIO ANCHOR OWNER
   ========================================================================== */

/* 1) ENTER WITH AUDIO uses this single final left coordinate. Older production
      layers may still calculate their legacy variables, but they cannot move the
      banner after this owner loads. */
@media (min-width:981px){
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate:not([data-dx-v1904-positioned="true"]){
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:none!important;
  }
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate{
    left:var(--dx1904-audio-left,75%)!important;
    right:auto!important;
    will-change:left,transform,opacity!important;
    transition:left .20s cubic-bezier(.22,.8,.22,1),opacity .26s ease,transform .30s ease!important;
  }
}

/* 2) Contact hero: the two arrows remain symmetrical while the label is pinned
      to the mathematical center of the complete pill, independent of the arrows. */
html body.dx-contact-page .dx-v1903-contact-start{
  position:relative!important;
  display:block!important;
  text-align:center!important;
}
html body.dx-contact-page .dx-v1903-contact-start .dx-v1903-contact-label{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:max-content!important;
  max-width:calc(100% - 128px)!important;
  margin:0!important;
  padding:0!important;
  text-align:center!important;
  white-space:nowrap!important;
  line-height:1!important;
  transform:translate3d(-50%,-50%,0)!important;
  pointer-events:none!important;
}
html body.dx-contact-page .dx-v1903-contact-start .dx-v1903-contact-arrow{
  top:50%!important;
  transform:translate3d(0,-50%,0)!important;
}
@media (max-width:980px){
  html body.dx-contact-page .dx-v1903-contact-start .dx-v1903-contact-label{
    max-width:calc(100% - 104px)!important;
  }
}

/* source: denlyx-v1905-production.css */
/* ========================================================================== 
   DENLYX PLATFORM PRODUCTION v1.0.6 — FINAL ACCEPTANCE REGRESSION OWNER
   ========================================================================== */

/* 1) Desktop ENTER WITH AUDIO: preserve the accepted anchors, but visibly glide
      between them. The final owner animates the independent `translate` longhand,
      so legacy transform effects cannot make the banner disappear/reappear. */
@media (min-width:981px){
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate{
    left:var(--dx1905-audio-left,var(--dx1904-audio-left,75%))!important;
    right:auto!important;
    translate:0 0!important;
    will-change:left,transform,opacity!important;
    transition:left .48s cubic-bezier(.22,.80,.22,1),opacity .26s ease,transform .30s ease!important;
  }
}
@media (prefers-reduced-motion:reduce) and (min-width:981px){
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate{transition:opacity .18s ease!important}
}

/* 2) Shared About / Directory / Capabilities CTA. One physical pill, one label,
      one destination (the Project Request modal), and no decorative arrows. */
html body.denlyx-atmosphere-theme .dx-v1905-project-cta{
  box-sizing:border-box!important;
  width:300px!important;
  min-width:300px!important;
  max-width:100%!important;
  min-height:58px!important;
  padding:0 28px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  border:1px solid rgba(247,251,255,.72)!important;
  border-radius:999px!important;
  background:rgba(11,43,57,.94)!important;
  background-image:none!important;
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 10px 28px rgba(3,19,28,.12)!important;
  font-family:inherit!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:.075em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  transform:translate3d(0,0,0)!important;
  transition:transform .26s cubic-bezier(.22,.8,.22,1),background-color .24s ease,border-color .24s ease,box-shadow .24s ease!important;
}
html body.denlyx-atmosphere-theme .dx-v1905-project-cta::before,
html body.denlyx-atmosphere-theme .dx-v1905-project-cta::after{content:none!important;display:none!important}
html body.denlyx-atmosphere-theme .dx-v1905-project-cta:hover,
html body.denlyx-atmosphere-theme .dx-v1905-project-cta:focus-visible{
  background:rgba(18,61,79,.98)!important;
  border-color:#f7fbff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 14px 32px rgba(3,19,28,.18)!important;
  color:#fff!important;-webkit-text-fill-color:#fff!important;
  transform:translate3d(0,-3px,0)!important;
}
html body.denlyx-atmosphere-theme .dx-v1905-project-cta:active{transform:translate3d(0,-1px,0) scale(.99)!important}
@media(max-width:980px){
  html body.denlyx-atmosphere-theme .dx-v1905-project-cta{width:100%!important;min-width:0!important}
}

/* 3) Fullscreen command menu: convert the bottom-right text link into the same
      physical project button without changing its action or footer placement. */
html body.denlyx-atmosphere-theme .dx-command-foot>a.dx-v1905-command-project{
  box-sizing:border-box!important;
  width:220px!important;min-width:220px!important;min-height:48px!important;
  padding:0 22px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  border:1px solid rgba(23,59,75,.58)!important;border-radius:999px!important;
  background:rgba(23,59,75,.94)!important;background-image:none!important;
  color:#f7fbff!important;-webkit-text-fill-color:#f7fbff!important;
  font-size:12px!important;font-weight:700!important;line-height:1!important;letter-spacing:.07em!important;text-transform:uppercase!important;
  text-decoration:none!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.12)!important;
  transform:translate3d(0,0,0)!important;
  transition:transform .24s cubic-bezier(.22,.8,.22,1),background-color .22s ease,border-color .22s ease,box-shadow .22s ease!important;
}
html body.denlyx-atmosphere-theme .dx-command-foot>a.dx-v1905-command-project::before,
html body.denlyx-atmosphere-theme .dx-command-foot>a.dx-v1905-command-project::after{content:none!important;display:none!important}
html body.denlyx-atmosphere-theme .dx-command-foot>a.dx-v1905-command-project:hover,
html body.denlyx-atmosphere-theme .dx-command-foot>a.dx-v1905-command-project:focus-visible{
  background:#214f63!important;border-color:#173b4b!important;box-shadow:0 10px 24px rgba(23,59,75,.16)!important;
  color:#fff!important;-webkit-text-fill-color:#fff!important;transform:translate3d(0,-3px,0)!important;
}
@media(max-width:980px){html body.denlyx-atmosphere-theme .dx-command-foot>a.dx-v1905-command-project{width:100%!important;min-width:0!important}}

/* 4) Project Request modal submit action: center the complete button in the
      right-side form grid, not merely inside the first grid track. */
html body.denlyx-atmosphere-theme .dx-project-modal-form>.atmo-submit{
  grid-column:1/-1!important;
  justify-self:center!important;
  align-self:start!important;
  margin:24px 0 0!important;
  width:min(280px,calc(100% - 32px))!important;
  min-width:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}

/* 5) Contact hero: sole approved arrow exception. The uppercase label is fixed
      to the mathematical center while both arrows occupy independent anchors. */
html body.dx-contact-page a.dx-v1903-contact-start,
html body.dx-contact-page a.dx-v1903-contact-start:hover,
html body.dx-contact-page a.dx-v1903-contact-start:focus,
html body.dx-contact-page a.dx-v1903-contact-start:focus-visible,
html body.dx-contact-page a.dx-v1903-contact-start:active{
  position:relative!important;display:block!important;text-align:center!important;padding-left:64px!important;padding-right:64px!important;
}
html body.dx-contact-page a.dx-v1903-contact-start .dx-v1903-contact-label,
html body.dx-contact-page a.dx-v1903-contact-start:hover .dx-v1903-contact-label,
html body.dx-contact-page a.dx-v1903-contact-start:focus .dx-v1903-contact-label,
html body.dx-contact-page a.dx-v1903-contact-start:focus-visible .dx-v1903-contact-label,
html body.dx-contact-page a.dx-v1903-contact-start:active .dx-v1903-contact-label{
  display:block!important;position:absolute!important;left:50%!important;right:auto!important;top:50%!important;
  width:max-content!important;max-width:calc(100% - 128px)!important;margin:0!important;padding:0!important;
  color:inherit!important;-webkit-text-fill-color:currentColor!important;text-align:center!important;white-space:nowrap!important;
  line-height:1!important;translate:none!important;transform:translate3d(-50%,-50%,0)!important;pointer-events:none!important;
}
html body.dx-contact-page a.dx-v1903-contact-start .dx-v1903-contact-arrow,
html body.dx-contact-page a.dx-v1903-contact-start:hover .dx-v1903-contact-arrow,
html body.dx-contact-page a.dx-v1903-contact-start:focus .dx-v1903-contact-arrow,
html body.dx-contact-page a.dx-v1903-contact-start:focus-visible .dx-v1903-contact-arrow,
html body.dx-contact-page a.dx-v1903-contact-start:active .dx-v1903-contact-arrow{
  display:block!important;position:absolute!important;top:50%!important;margin:0!important;line-height:1!important;
  translate:none!important;transform:translate3d(0,-50%,0)!important;pointer-events:none!important;
}
html body.dx-contact-page a.dx-v1903-contact-start .dx-v1903-contact-arrow-left{left:32px!important;right:auto!important}
html body.dx-contact-page a.dx-v1903-contact-start .dx-v1903-contact-arrow-right{right:32px!important;left:auto!important}
@media(max-width:980px){
  html body.dx-contact-page a.dx-v1903-contact-start .dx-v1903-contact-label{max-width:calc(100% - 104px)!important}
  html body.dx-contact-page a.dx-v1903-contact-start .dx-v1903-contact-arrow-left{left:24px!important}
  html body.dx-contact-page a.dx-v1903-contact-start .dx-v1903-contact-arrow-right{right:24px!important}
}

/* 6) Legal-suite language list. The shell no longer paints a pale rectangle
      across the section boundary; each existing row independently follows the
      actual dark/light surface behind it. Typography and row geometry stay intact. */
html body.dx-legal-suite-page .atmo-language-control.is-enhanced .atmo-language-popup,
html body.dx-legal-suite-page .atmo-language-popup{
  background:transparent!important;background-color:transparent!important;background-image:none!important;
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
  border-color:transparent!important;box-shadow:none!important;
}
html body.dx-legal-suite-page .atmo-language-popup::before,
html body.dx-legal-suite-page .atmo-language-popup::after{content:none!important;display:none!important}
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option]{
  transition:transform .26s cubic-bezier(.22,.8,.22,1),box-shadow .24s ease,border-color .24s ease!important;
}
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="dark"]{
  color:#f7fbff!important;-webkit-text-fill-color:#f7fbff!important;
  background:rgba(8,35,48,.43)!important;background-image:none!important;
  border-color:rgba(247,251,255,.62)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="dark"] span,
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="dark"] small{
  color:inherit!important;-webkit-text-fill-color:currentColor!important;
}
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="light"]{
  color:#173b4b!important;-webkit-text-fill-color:#173b4b!important;
  background:rgba(247,251,252,.36)!important;background-image:none!important;
  border-color:rgba(23,59,75,.52)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.48)!important;
}
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="light"] span,
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="light"] small{
  color:inherit!important;-webkit-text-fill-color:currentColor!important;
}
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="dark"]:hover,
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="dark"]:focus-visible{
  background:rgba(255,255,255,.12)!important;border-color:rgba(247,251,255,.98)!important;
  color:#fff!important;-webkit-text-fill-color:#fff!important;transform:translate3d(0,-3px,0)!important;
}
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="light"]:hover,
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="light"]:focus-visible{
  background:rgba(23,59,75,.10)!important;border-color:rgba(23,59,75,.98)!important;
  color:#173b4b!important;-webkit-text-fill-color:#173b4b!important;transform:translate3d(0,-3px,0)!important;
}

/* source: denlyx-v1906-production.css */
/* ========================================================================== 
   DENLYX PLATFORM PRODUCTION v1.0.7 — LIVE REGRESSION CORRECTION OWNER
   ========================================================================== */

/* 1) ENTER WITH AUDIO — restore the shared banner without changing the
      accepted v1.0.6 anchors or smooth horizontal movement. Earlier production
      layers hid the banner until their own legacy data attributes existed. */
@media (min-width:981px){
  html body.denlyx-atmosphere-theme :is(#dx-v1906-audio-gate,.dx-v1865-audio-gate).dx-v1865-audio-gate,
  html body.denlyx-atmosphere-theme :is(#dx-v1906-audio-gate,.dx-v1865-audio-gate).dx-v1865-audio-gate.is-visible{
    translate:0 0!important;
    will-change:left,transform,opacity!important;
    transition:left .48s cubic-bezier(.22,.80,.22,1),opacity .26s ease,transform .30s ease,visibility 0s!important;
  }
  html body.denlyx-atmosphere-theme :is(#dx-v1906-audio-gate,.dx-v1865-audio-gate).dx-v1865-audio-gate.is-visible{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.is-closing{
    visibility:visible!important;
    pointer-events:none!important;
  }
}

@media (prefers-reduced-motion:reduce) and (min-width:981px){
  html body.denlyx-atmosphere-theme :is(#dx-v1906-audio-gate,.dx-v1865-audio-gate).dx-v1865-audio-gate,
  html body.denlyx-atmosphere-theme :is(#dx-v1906-audio-gate,.dx-v1865-audio-gate).dx-v1865-audio-gate.is-visible{
    transition:opacity .18s ease,visibility 0s!important;
  }
}

/* 2) Project Request modal — center the physical submit button in the complete
      right-side form column. A block-level flex button plus auto inline margins
      works regardless of whether the form itself is grid, block, or flex. */
html body.denlyx-atmosphere-theme :is(#dx-v1906-project-modal-form,.dx-project-modal-form).dx-project-modal-form>.atmo-submit.atmo-submit{
  display:flex!important;
  width:min(280px,calc(100% - 32px))!important;
  min-width:0!important;
  margin:24px auto 0!important;
  align-self:auto!important;
  justify-self:auto!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}

/* 3) Every START A PROJECT label uses one uniform tracking system. */
html body.denlyx-atmosphere-theme .dx-v1906-project-label{
  font-kerning:none!important;
  font-variant-ligatures:none!important;
  font-feature-settings:"kern" 0,"liga" 0!important;
  letter-spacing:.075em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  text-align:center!important;
}

/* 4) Contact hero — the entire ↓ START A REQUEST ↓ group is centered as one
      ordinary inline-flex group. Arrows stay beside the words, not at the
      physical edges of the pill. */
html body.dx-contact-page :is(#dx-v1906-contact-start,a.dx-v1903-contact-start).dx-v1903-contact-start,
html body.dx-contact-page :is(#dx-v1906-contact-start,a.dx-v1903-contact-start).dx-v1903-contact-start:hover,
html body.dx-contact-page :is(#dx-v1906-contact-start,a.dx-v1903-contact-start).dx-v1903-contact-start:focus,
html body.dx-contact-page :is(#dx-v1906-contact-start,a.dx-v1903-contact-start).dx-v1903-contact-start:focus-visible,
html body.dx-contact-page :is(#dx-v1906-contact-start,a.dx-v1903-contact-start).dx-v1903-contact-start:active{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:22px!important;
  padding-left:28px!important;
  padding-right:28px!important;
  text-align:center!important;
}
html body.dx-contact-page :is(#dx-v1906-contact-start,a.dx-v1903-contact-start).dx-v1903-contact-start .dx-v1903-contact-label,
html body.dx-contact-page :is(#dx-v1906-contact-start,a.dx-v1903-contact-start).dx-v1903-contact-start:hover .dx-v1903-contact-label,
html body.dx-contact-page :is(#dx-v1906-contact-start,a.dx-v1903-contact-start).dx-v1903-contact-start:focus .dx-v1903-contact-label,
html body.dx-contact-page :is(#dx-v1906-contact-start,a.dx-v1903-contact-start).dx-v1903-contact-start:focus-visible .dx-v1903-contact-label,
html body.dx-contact-page :is(#dx-v1906-contact-start,a.dx-v1903-contact-start).dx-v1903-contact-start:active .dx-v1903-contact-label,
html body.dx-contact-page :is(#dx-v1906-contact-start,a.dx-v1903-contact-start).dx-v1903-contact-start .dx-v1903-contact-arrow,
html body.dx-contact-page :is(#dx-v1906-contact-start,a.dx-v1903-contact-start).dx-v1903-contact-start:hover .dx-v1903-contact-arrow,
html body.dx-contact-page :is(#dx-v1906-contact-start,a.dx-v1903-contact-start).dx-v1903-contact-start:focus .dx-v1903-contact-arrow,
html body.dx-contact-page :is(#dx-v1906-contact-start,a.dx-v1903-contact-start).dx-v1903-contact-start:focus-visible .dx-v1903-contact-arrow,
html body.dx-contact-page :is(#dx-v1906-contact-start,a.dx-v1903-contact-start).dx-v1903-contact-start:active .dx-v1903-contact-arrow{
  position:static!important;
  inset:auto!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  display:inline-flex!important;
  width:auto!important;
  max-width:none!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
  translate:none!important;
  transform:none!important;
  pointer-events:none!important;
}
html body.dx-contact-page :is(#dx-v1906-contact-start,a.dx-v1903-contact-start).dx-v1903-contact-start .dx-v1903-contact-label{
  font-kerning:normal!important;
  font-variant-ligatures:normal!important;
  font-feature-settings:normal!important;
  letter-spacing:.02em!important;
  white-space:nowrap!important;
}
html body.dx-contact-page :is(#dx-v1906-contact-start,a.dx-v1903-contact-start).dx-v1903-contact-start .dx-v1903-contact-arrow{
  flex:0 0 auto!important;
  font-size:18px!important;
  font-weight:500!important;
}
@media(max-width:560px){
  html body.dx-contact-page :is(#dx-v1906-contact-start,a.dx-v1903-contact-start).dx-v1903-contact-start{gap:16px!important;padding-inline:20px!important}
}

/* 5) Legal-suite language list — final user preference: the lower row must look
      exactly like the rows above, even where the popup crosses onto the light
      content section. The transparent outer shell remains unchanged. */
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option],
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="dark"],
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="light"]{
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
  background:rgba(8,35,48,.43)!important;
  background-image:none!important;
  border-color:rgba(247,251,255,.62)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option] span,
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option] small{
  color:inherit!important;
  -webkit-text-fill-color:currentColor!important;
}
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option]:hover,
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option]:focus-visible{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:rgba(255,255,255,.12)!important;
  border-color:rgba(247,251,255,.98)!important;
  transform:translate3d(0,-3px,0)!important;
}

/* 6) Contact map card DENLYX — four-times-size wordmark with the exact header
      sweep timing and gradient. The card footprint, address, and directions
      control remain unchanged. */
html body.dx-contact-page .dx-v1865-map-brand{
  grid-column:1!important;
  grid-row:1!important;
  min-width:0!important;
  align-self:end!important;
  overflow:visible!important;
}
html body.dx-contact-page .dx-v1865-map-brand>.dx-v1865-map-brand-text{
  position:relative!important;
  display:inline-block!important;
  isolation:isolate!important;
  overflow:visible!important;
  margin:0!important;
  padding:0!important;
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  font-family:inherit!important;
  font-size:32px!important;
  font-weight:900!important;
  line-height:.90!important;
  letter-spacing:.10em!important;
  white-space:nowrap!important;
  text-shadow:0 0 0 rgba(87,220,255,0),0 0 0 rgba(255,255,255,0)!important;
  animation:dx-wordmark-glow 20s ease-in-out infinite!important;
  will-change:text-shadow!important;
}
html body.dx-contact-page .dx-v1865-map-brand>.dx-v1865-map-brand-text::after{
  content:"DENLYX"!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  font:inherit!important;
  font-size:inherit!important;
  font-weight:inherit!important;
  line-height:inherit!important;
  letter-spacing:inherit!important;
  white-space:nowrap!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  background:linear-gradient(45deg,transparent 34%,rgba(255,255,255,.18) 41%,rgba(255,255,255,.98) 49%,rgba(94,221,255,.92) 52%,rgba(255,255,255,.22) 59%,transparent 66%)!important;
  background-size:260% 100%!important;
  background-position:160% 50%!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  opacity:0;
  animation:dx-wordmark-shine 20s linear infinite!important;
  will-change:background-position,opacity!important;
}
@media(max-width:560px){
  html body.dx-contact-page .dx-v1865-map-brand>.dx-v1865-map-brand-text{font-size:28px!important}
}
@media(prefers-reduced-motion:reduce){
  html body.dx-contact-page .dx-v1865-map-brand>.dx-v1865-map-brand-text,
  html body.dx-contact-page .dx-v1865-map-brand>.dx-v1865-map-brand-text::after{animation:none!important}
  html body.dx-contact-page .dx-v1865-map-brand>.dx-v1865-map-brand-text::after{display:none!important}
}

/* source: denlyx-v1907-production.css */
/* ========================================================================== 
   DENLYX PLATFORM PRODUCTION v1.0.8 — LIVE ACCEPTANCE CORRECTION OWNER
   ========================================================================== */

/* 1) ENTER WITH AUDIO — the accepted expanded/compact anchors remain owned by
      v1905. This layer only guarantees a visible, interruption-safe horizontal
      glide between them. Same-state scroll events no longer disable motion. */
@media (min-width:981px){
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate],
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate].is-visible{
    right:auto!important;
    translate:0 0!important;
    transition:left .56s cubic-bezier(.22,.78,.22,1),opacity .26s ease,transform .30s ease,visibility 0s!important;
    will-change:left,transform,opacity!important;
  }
}
@media (prefers-reduced-motion:reduce) and (min-width:981px){
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate],
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate].is-visible{
    transition:opacity .18s ease,visibility 0s!important;
  }
}

/* 2) Homepage closing CTA — desktop placement matches the right-side action
      position used on the other pages. Text remains untouched. */
@media (min-width:981px){
  html body.dx-home-page .dx11-cta .dx11-cta-inner{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 300px!important;
    grid-template-areas:
      "eyebrow empty"
      "heading action"
      "copy action"!important;
    column-gap:clamp(48px,7vw,120px)!important;
    align-items:center!important;
  }
  html body.dx-home-page .dx11-cta .dx11-cta-inner>.dx11-eyebrow{
    grid-area:eyebrow!important;
  }
  html body.dx-home-page .dx11-cta .dx11-cta-inner>h2{
    grid-area:heading!important;
    min-width:0!important;
  }
  html body.dx-home-page .dx11-cta .dx11-cta-inner>p:not(.dx11-eyebrow){
    grid-area:copy!important;
    min-width:0!important;
  }
  html body.dx-home-page .dx11-cta .dx11-cta-actions{
    grid-area:action!important;
    width:300px!important;
    max-width:300px!important;
    margin:0!important;
    align-self:center!important;
    justify-self:end!important;
  }
  html body.dx-home-page .dx11-cta .dx11-cta-actions>.dx-v1905-project-cta{
    width:300px!important;
    min-width:300px!important;
  }
}

/* 3) Language popup — one design family with the Companies cards. The rows
      remain compact, but use the same glass, outline, lift, and adaptive tone.
      JA and ZH receive no exceptional styling. */
html body.denlyx-atmosphere-theme .atmo-language-control.is-enhanced .atmo-language-popup,
html body.denlyx-atmosphere-theme .atmo-language-popup{
  background:rgba(255,255,255,.012)!important;
  background-color:rgba(255,255,255,.012)!important;
  background-image:none!important;
  border:1px solid rgba(247,251,255,.28)!important;
  border-radius:24px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 18px 52px rgba(0,0,0,.16)!important;
  -webkit-backdrop-filter:blur(20px) saturate(108%)!important;
  backdrop-filter:blur(20px) saturate(108%)!important;
  isolation:isolate!important;
}
html body.denlyx-atmosphere-theme .atmo-language-popup::before,
html body.denlyx-atmosphere-theme .atmo-language-popup::after{
  content:none!important;
  display:none!important;
}
html body.denlyx-atmosphere-theme .atmo-language-popup button[data-language-option],
html body.denlyx-atmosphere-theme .atmo-language-popup button[data-language-option][aria-selected="true"]{
  box-sizing:border-box!important;
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
  background:rgba(255,255,255,.014)!important;
  background-color:rgba(255,255,255,.014)!important;
  background-image:none!important;
  border:1px solid rgba(247,251,255,.42)!important;
  border-radius:18px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07)!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  transform:translate3d(0,0,0)!important;
  transition:transform .26s cubic-bezier(.22,.8,.22,1),background-color .24s ease,border-color .24s ease,box-shadow .24s ease,color .24s ease!important;
}
html body.denlyx-atmosphere-theme .atmo-language-popup button[data-language-option] span,
html body.denlyx-atmosphere-theme .atmo-language-popup button[data-language-option] small{
  color:inherit!important;
  -webkit-text-fill-color:currentColor!important;
}
html body.denlyx-atmosphere-theme .atmo-language-popup button[data-language-option]:hover,
html body.denlyx-atmosphere-theme .atmo-language-popup button[data-language-option]:focus-visible{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:rgba(255,255,255,.12)!important;
  border-color:rgba(247,251,255,.98)!important;
  box-shadow:0 10px 26px rgba(2,16,24,.18),inset 0 1px 0 rgba(255,255,255,.22)!important;
  transform:translate3d(0,-3px,0)!important;
}
html body.denlyx-atmosphere-theme .atmo-language-popup button[data-language-option]:active{
  transform:translate3d(0,-1px,0) scale(.986)!important;
  transition-duration:.10s!important;
}

/* Light-surface rows on legal pages use the same adaptive treatment as the
   Companies cards where they cross into the pale content area. */
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="light"],
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-tone="light"] .atmo-language-popup button[data-language-option],
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-tone="light"] .atmo-language-popup button[data-language-option][aria-selected="true"]{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  background:rgba(247,251,252,.22)!important;
  border-color:rgba(23,59,75,.48)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.44)!important;
}
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="light"]:hover,
html body.dx-legal-suite-page .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="light"]:focus-visible,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-tone="light"] .atmo-language-popup button[data-language-option]:hover,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-tone="light"] .atmo-language-popup button[data-language-option]:focus-visible{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  background:rgba(23,59,75,.09)!important;
  border-color:rgba(23,59,75,.96)!important;
  box-shadow:0 10px 25px rgba(23,59,75,.14),inset 0 1px 0 rgba(255,255,255,.38)!important;
}

/* Legal-suite specificity lock: earlier production owners style dark and
   light rows through per-row tone attributes. Repeat the compact card system at
   that exact specificity so no legacy solid-gray state can win for JA or ZH. */
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-language-control.is-enhanced .atmo-language-popup,
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-language-popup{
  background:rgba(255,255,255,.012)!important;
  background-color:rgba(255,255,255,.012)!important;
  background-image:none!important;
  border:1px solid rgba(247,251,255,.28)!important;
  border-radius:24px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 18px 52px rgba(0,0,0,.16)!important;
  -webkit-backdrop-filter:blur(20px) saturate(108%)!important;
  backdrop-filter:blur(20px) saturate(108%)!important;
}
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="dark"],
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="dark"][aria-selected="true"]{
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
  background:rgba(255,255,255,.014)!important;
  background-color:rgba(255,255,255,.014)!important;
  background-image:none!important;
  border:1px solid rgba(247,251,255,.42)!important;
  border-radius:18px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07)!important;
}
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="light"],
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="light"][aria-selected="true"]{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  background:rgba(247,251,252,.22)!important;
  background-color:rgba(247,251,252,.22)!important;
  background-image:none!important;
  border:1px solid rgba(23,59,75,.48)!important;
  border-radius:18px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.44)!important;
}
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="dark"]:hover,
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="dark"]:focus-visible{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:rgba(255,255,255,.12)!important;
  border-color:rgba(247,251,255,.98)!important;
  box-shadow:0 10px 26px rgba(2,16,24,.18),inset 0 1px 0 rgba(255,255,255,.22)!important;
}
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="light"]:hover,
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="light"]:focus-visible{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  background:rgba(23,59,75,.09)!important;
  border-color:rgba(23,59,75,.96)!important;
  box-shadow:0 10px 25px rgba(23,59,75,.14),inset 0 1px 0 rgba(255,255,255,.38)!important;
}

/* 4) Contact map card — rebuild the exact wordmark node. It is intentionally a
      unique <strong>, so the ancient generic `.dx-contact-map-caption span`
      rule can no longer reduce it to 8px. No animation. */
html body.dx-contact-page #dx-contact-map-wordmark.dx-map-wordmark-v1907{
  position:relative!important;
  display:block!important;
  width:max-content!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  background:none!important;
  background-image:none!important;
  font-family:inherit!important;
  font-size:32px!important;
  font-weight:900!important;
  font-style:normal!important;
  line-height:.92!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  text-shadow:none!important;
  filter:none!important;
  transform:none!important;
  animation:none!important;
}
html body.dx-contact-page #dx-contact-map-wordmark.dx-map-wordmark-v1907::before,
html body.dx-contact-page #dx-contact-map-wordmark.dx-map-wordmark-v1907::after{
  content:none!important;
  display:none!important;
}

/* 5) Mobile header — remove the redundant project CTA and preserve a clean
      three-part header: logo, available controls, hamburger. */
@media (max-width:980px){
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner .atmo-header-actions>#dx-mobile-header-project-cta.atmo-header-cta,
  html body.denlyx-atmosphere-theme.dx-home-page header.atmo-header .atmo-header-inner .atmo-header-actions>#dx-mobile-header-project-cta.atmo-header-cta.dx-v1906-project-label,
  html body.denlyx-atmosphere-theme header.atmo-header:not(.dx-compact) .atmo-header-inner .atmo-header-actions>#dx-mobile-header-project-cta.atmo-header-cta{
    display:none!important;
    width:0!important;
    min-width:0!important;
    max-width:0!important;
    margin:0!important;
    padding:0!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    overflow:hidden!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto auto!important;
    align-items:center!important;
    column-gap:10px!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-brand{
    grid-column:1!important;
    grid-row:1!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    justify-self:start!important;
    z-index:3!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions{
    grid-column:2!important;
    grid-row:1!important;
    position:static!important;
    width:auto!important;
    min-width:0!important;
    max-width:calc(100vw - 150px)!important;
    margin:0!important;
    padding:0!important;
    justify-self:end!important;
    align-items:center!important;
    z-index:4!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-menu-toggle{
    grid-column:3!important;
    grid-row:1!important;
    position:relative!important;
    margin:0!important;
    justify-self:end!important;
    z-index:5!important;
  }
}

@media (prefers-reduced-motion:reduce){
  html body.denlyx-atmosphere-theme .atmo-language-popup button[data-language-option]{
    transition:none!important;
  }
}

/* source: denlyx-v1908-production.css */
/* ==========================================================================
   DENLYX PLATFORM PRODUCTION v1.0.9 — MOBILE / ADAPTIVE QA OWNER
   ========================================================================== */

/* 1) Mobile Globe section: keep the content readable for most of the section.
      JS owns the late crossfade. These rules prevent city controls from being
      left in a stale reveal/blur state. */
@media (max-width:980px){
  html body.dx-home-page .dx11-globe-wrap{
    --dx1908-mobile-globe-hold:1;
  }
  html body.dx-home-page .dx11-globe-wrap .dx-globe-city-list,
  html body.dx-home-page .dx11-globe-wrap .dx-globe-city-list .dx-globe-region,
  html body.dx-home-page .dx11-globe-wrap .dx-globe-city-list .dx-globe-country,
  html body.dx-home-page .dx11-globe-wrap .dx-globe-city-list button,
  html body.dx-home-page .dx11-globe-wrap .dx-globe-city-list button>b,
  html body.dx-home-page .dx11-globe-wrap .dx-globe-city-list button>span{
    visibility:visible!important;
  }
  html body.dx-home-page .dx11-globe-wrap .dx-globe-city-list{
    opacity:1!important;
    filter:none!important;
    transform:none!important;
    margin-bottom:clamp(70px,16vw,120px)!important;
  }
  html body.dx-home-page .dx11-globe-wrap .dx-globe-city-list button{
    opacity:1!important;
    filter:none!important;
    transform:translate3d(0,0,0)!important;
    color:#f7fbff!important;
    -webkit-text-fill-color:#f7fbff!important;
    border-color:rgba(247,251,255,.46)!important;
    background:rgba(255,255,255,.035)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.10)!important;
  }
  html body.dx-home-page .dx11-globe-wrap .dx-globe-city-list button.active,
  html body.dx-home-page .dx11-globe-wrap .dx-globe-city-list button:focus-visible{
    background:rgba(255,255,255,.12)!important;
    border-color:rgba(247,251,255,.90)!important;
  }
}

/* 2) Project Request popup — mobile-only compact information header. */
@media (max-width:980px){
  html body.denlyx-atmosphere-theme .dx-project-modal-panel{
    grid-template-columns:minmax(0,1fr)!important;
    width:calc(100vw - 16px)!important;
    max-height:calc(100dvh - 16px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
  }
  html body.denlyx-atmosphere-theme .dx-project-modal-intro{
    padding:26px 20px 20px!important;
  }
  html body.denlyx-atmosphere-theme .dx-project-modal-kicker{
    box-sizing:border-box!important;
    display:block!important;
    width:100%!important;
    margin:0 0 16px!important;
    padding:0 58px!important;
    text-align:center!important;
    white-space:nowrap!important;
    font-size:12px!important;
    line-height:1.2!important;
    letter-spacing:.18em!important;
  }
  html body.denlyx-atmosphere-theme .dx-project-modal-intro #dx-project-modal-title{
    display:block!important;
    width:100%!important;
    margin:0 0 13px!important;
    padding:0!important;
    text-align:center!important;
    white-space:nowrap!important;
    font-size:clamp(20px,5.5vw,24px)!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
  }
  html body.denlyx-atmosphere-theme .dx-project-modal-intro>p{
    width:100%!important;
    max-width:none!important;
    margin:0 auto!important;
    text-align:center!important;
    font-size:clamp(13px,3.55vw,14.5px)!important;
    line-height:1.45!important;
    text-wrap:pretty!important;
  }
  html body.denlyx-atmosphere-theme .dx-project-modal-contact{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:12px 14px!important;
    margin-top:20px!important;
  }
  html body.denlyx-atmosphere-theme .dx-project-modal-contact>div{
    min-width:0!important;
    gap:3px!important;
  }
  html body.denlyx-atmosphere-theme .dx-project-modal-contact>div:nth-child(3){
    grid-column:1/-1!important;
  }
  html body.denlyx-atmosphere-theme .dx-project-modal-contact b{
    font-size:8px!important;
    letter-spacing:.13em!important;
  }
  html body.denlyx-atmosphere-theme .dx-project-modal-contact a,
  html body.denlyx-atmosphere-theme .dx-project-modal-contact .dx-contact-address,
  html body.denlyx-atmosphere-theme .dx-project-modal-contact .dx-contact-address *{
    min-width:0!important;
    font-size:clamp(12px,3.35vw,14px)!important;
    line-height:1.35!important;
    overflow-wrap:anywhere!important;
  }
  html body.denlyx-atmosphere-theme .dx-project-modal-form{
    padding:22px 20px 28px!important;
  }
}

/* 3) Canonical SCROLL TO EXPLORE cue. The data tone describes the surface
      behind the cue, not the foreground color. */
html body.denlyx-atmosphere-theme .dx-scroll-invitation[data-dx-v1908-cue-tone="dark"],
html body.denlyx-atmosphere-theme .dx-about-scroll-cue[data-dx-v1908-cue-tone="dark"]{
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
  border-color:rgba(247,251,255,.56)!important;
  background:rgba(255,255,255,.025)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10)!important;
}
html body.denlyx-atmosphere-theme .dx-scroll-invitation[data-dx-v1908-cue-tone="dark"]::before,
html body.denlyx-atmosphere-theme .dx-about-scroll-cue[data-dx-v1908-cue-tone="dark"]::before{
  background:linear-gradient(180deg,rgba(247,251,255,.94),rgba(247,251,255,.08))!important;
}
html body.denlyx-atmosphere-theme .dx-scroll-invitation[data-dx-v1908-cue-tone="dark"]::after,
html body.denlyx-atmosphere-theme .dx-scroll-invitation[data-dx-v1908-cue-tone="dark"] span,
html body.denlyx-atmosphere-theme .dx-about-scroll-cue[data-dx-v1908-cue-tone="dark"]::after,
html body.denlyx-atmosphere-theme .dx-about-scroll-cue[data-dx-v1908-cue-tone="dark"] span{
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
}
html body.denlyx-atmosphere-theme .dx-scroll-invitation[data-dx-v1908-cue-tone="light"],
html body.denlyx-atmosphere-theme .dx-about-scroll-cue[data-dx-v1908-cue-tone="light"]{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  border-color:rgba(23,59,75,.58)!important;
  background:rgba(247,251,252,.20)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.42)!important;
}
html body.denlyx-atmosphere-theme .dx-scroll-invitation[data-dx-v1908-cue-tone="light"]::before,
html body.denlyx-atmosphere-theme .dx-about-scroll-cue[data-dx-v1908-cue-tone="light"]::before{
  background:linear-gradient(180deg,rgba(23,59,75,.90),rgba(23,59,75,.08))!important;
}
html body.denlyx-atmosphere-theme .dx-scroll-invitation[data-dx-v1908-cue-tone="light"]::after,
html body.denlyx-atmosphere-theme .dx-scroll-invitation[data-dx-v1908-cue-tone="light"] span,
html body.denlyx-atmosphere-theme .dx-about-scroll-cue[data-dx-v1908-cue-tone="light"]::after,
html body.denlyx-atmosphere-theme .dx-about-scroll-cue[data-dx-v1908-cue-tone="light"] span{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
}

/* 4) Contact map wordmark: smaller, aligned to the street-line width, then a
      slow white letter sheen followed by a restrained brand-color glow. */
html body.dx-contact-page #dx-contact-map-wordmark.dx-map-wordmark-v1908{
  position:relative!important;
  display:block!important;
  width:max-content!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  background:none!important;
  font-family:inherit!important;
  font-size:24px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:.105em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  transform-origin:left center!important;
  animation:dx1908MapGlow 7.5s ease-in-out infinite!important;
}
html body.dx-contact-page #dx-contact-map-wordmark.dx-map-wordmark-v1908::before{
  content:attr(data-text)!important;
  position:absolute!important;
  inset:0 auto auto 0!important;
  display:block!important;
  width:100%!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  background:linear-gradient(105deg,transparent 22%,rgba(255,255,255,.96) 47%,rgba(255,255,255,.55) 53%,transparent 78%) 160% 0/55% 100% no-repeat!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  pointer-events:none!important;
  animation:dx1908MapSheen 7.5s linear infinite!important;
}
html body.dx-contact-page #dx-contact-map-wordmark.dx-map-wordmark-v1908::after{content:none!important;display:none!important}
@keyframes dx1908MapSheen{
  0%{opacity:0;background-position:160% 0}
  4%{opacity:1}
  46.666%{opacity:1;background-position:-60% 0}
  48%,100%{opacity:0;background-position:-60% 0}
}
@keyframes dx1908MapGlow{
  0%,46.666%,86.666%,100%{text-shadow:0 0 0 rgba(23,59,75,0);filter:none}
  66.666%{text-shadow:0 0 10px rgba(23,59,75,.62),0 0 22px rgba(23,59,75,.28);filter:brightness(1.18)}
}

@media (max-width:560px){
  html body.dx-contact-page #dx-contact-map-wordmark.dx-map-wordmark-v1908{font-size:21px!important}
}
@media (prefers-reduced-motion:reduce){
  html body.dx-contact-page #dx-contact-map-wordmark.dx-map-wordmark-v1908,
  html body.dx-contact-page #dx-contact-map-wordmark.dx-map-wordmark-v1908::before{animation:none!important}
  html body.dx-contact-page #dx-contact-map-wordmark.dx-map-wordmark-v1908::before{display:none!important}
}

/* 5) MOTION PREVIEW ONLY — About Us / Our Purpose scroll expansion. */
@media (min-width:1280px) and (prefers-reduced-motion:no-preference){
  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"]{
    position:relative!important;
    min-height:220vh!important;
    padding:0!important;
    overflow:clip!important;
  }
  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"]>.dx-about-purpose-grid{
    position:sticky!important;
    top:0!important;
    display:grid!important;
    grid-template-columns:minmax(430px,.82fr) minmax(620px,1.18fr)!important;
    align-items:center!important;
    width:min(1640px,calc(100% - 60px))!important;
    max-width:none!important;
    min-height:100vh!important;
    margin:0 auto!important;
    padding:clamp(40px,5vh,76px) 0!important;
    overflow:visible!important;
  }
  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] .dx-about-purpose-copy{
    width:min(40vw,620px)!important;
    max-width:620px!important;
    transform:translate3d(calc(var(--dx1908-purpose-progress,0) * -55px),0,0)!important;
    transform-origin:left center!important;
    will-change:transform!important;
  }
  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] .dx-about-network{
    width:min(44vw,720px)!important;
    max-width:720px!important;
    justify-self:end!important;
    transform:translate3d(calc(var(--dx1908-purpose-progress,0) * 80px),0,0) scale(calc(1 + var(--dx1908-purpose-progress,0) * .70))!important;
    transform-origin:center center!important;
    will-change:transform!important;
    z-index:2!important;
  }
}

/* source: denlyx-v1910-production.css */
/* ========================================================================== 
   DENLYX PLATFORM PRODUCTION v1.0.11 — LIVE ACCEPTANCE OWNER
   ========================================================================== */

/* 1) SCROLL TO EXPLORE: one transparent button, text and chevrons only. */
html body button.dx-scroll-invitation[data-dx-v1854-cue="true"],
html body.denlyx-atmosphere-theme button.dx-scroll-invitation[data-dx-v1854-cue="true"]{
  -webkit-appearance:none!important;appearance:none!important;
  box-sizing:content-box!important;width:max-content!important;min-width:0!important;max-width:none!important;
  height:auto!important;min-height:0!important;max-height:none!important;
  margin:0!important;padding:0!important;
  background:transparent!important;background-color:transparent!important;background-image:none!important;
  border:0!important;border-width:0!important;border-radius:0!important;outline:0!important;
  box-shadow:none!important;text-shadow:none!important;filter:none!important;
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
  clip-path:none!important;-webkit-mask:none!important;mask:none!important;isolation:auto!important;overflow:visible!important;
}
html body button.dx-scroll-invitation[data-dx-v1854-cue="true"]::before,
html body button.dx-scroll-invitation[data-dx-v1854-cue="true"]::after,
html body button.dx-scroll-invitation[data-dx-v1854-cue="true"]>span::before,
html body button.dx-scroll-invitation[data-dx-v1854-cue="true"]>span::after{
  content:none!important;display:none!important;background:none!important;border:0!important;box-shadow:none!important;
}
html body button.dx-scroll-invitation[data-dx-v1854-cue="true"]>span,
html body button.dx-scroll-invitation[data-dx-v1854-cue="true"]>span>svg{
  background:transparent!important;background-image:none!important;border:0!important;border-radius:0!important;
  outline:0!important;box-shadow:none!important;filter:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;
  clip-path:none!important;-webkit-mask:none!important;mask:none!important;
}
@media(max-width:980px){
  html body button.dx-scroll-invitation[data-dx-v1854-cue="true"]{
    bottom:22px!important;gap:3px!important;transform:translate3d(-50%,0,0)!important;
  }
  html body button.dx-scroll-invitation[data-dx-v1854-cue="true"] .dx1854-scroll-label{
    font-size:10px!important;line-height:1!important;letter-spacing:.15em!important;
  }
  html body button.dx-scroll-invitation[data-dx-v1854-cue="true"] .dx1854-scroll-chevrons{
    display:block!important;width:34px!important;height:29px!important;
  }
}

/* 2) Legal-suite controls: white outlines remain constant; only text adapts. */
html body.dx-legal-suite-page header.atmo-header .atmo-language-trigger,
html body.dx-legal-suite-page header.atmo-header .atmo-language-popup,
html body.dx-legal-suite-page header.atmo-header .atmo-language-popup button[data-language-option],
html body.dx-legal-suite-page header.atmo-header .atmo-company-nav>.atmo-dropdown,
html body.dx-legal-suite-page header.atmo-header .atmo-company-nav>.atmo-dropdown>a.dx-v1865-company-menu-card{
  border-color:rgba(247,251,255,.82)!important;
}
html body.dx-legal-suite-page header.atmo-header .atmo-language-trigger{
  box-shadow:inset 0 0 0 1px rgba(247,251,255,.16)!important;
}
html body.dx-legal-suite-page header.atmo-header .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="dark"],
html body.dx-legal-suite-page header.atmo-header .atmo-company-nav>.atmo-dropdown>a[data-dx-v1854-row-tone="dark"]{
  color:#f7fbff!important;-webkit-text-fill-color:#f7fbff!important;
}
html body.dx-legal-suite-page header.atmo-header .atmo-language-popup button[data-language-option][data-dx-v1905-row-tone="light"],
html body.dx-legal-suite-page header.atmo-header .atmo-company-nav>.atmo-dropdown>a[data-dx-v1854-row-tone="light"]{
  color:#173b4b!important;-webkit-text-fill-color:#173b4b!important;
}
html body.dx-legal-suite-page header.atmo-header .atmo-language-popup button[data-language-option],
html body.dx-legal-suite-page header.atmo-header .atmo-company-nav>.atmo-dropdown>a.dx-v1865-company-menu-card{
  background-color:rgba(255,255,255,.018)!important;background-image:none!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09)!important;
}

/* 3) About Us operating-network diagram: remove the upper rectangular panel. */
html body.dx-about-page .dx-about-network,
html body.dx-about-page #dx-cinematic-network,
html body.dx-about-page #dx-cinematic-network .dx-wrap{
  background:transparent!important;background-color:transparent!important;background-image:none!important;
  border-color:transparent!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;
}
html body.dx-about-page #dx-cinematic-network .dx-wrap::before{
  opacity:.28!important;mask-image:radial-gradient(circle at center,black 0 48%,transparent 84%)!important;
}

/* 4) Contact map card: static single-layer wordmark and compact mobile layout. */
html body.dx-contact-page #dx-contact-map-wordmark.dx-map-wordmark-v1910{
  position:static!important;display:block!important;width:max-content!important;max-width:100%!important;
  margin:0!important;padding:0!important;transform:none!important;translate:none!important;scale:none!important;
  font-family:inherit!important;font-size:24px!important;font-weight:900!important;line-height:1!important;
  letter-spacing:.105em!important;white-space:nowrap!important;text-transform:uppercase!important;
  color:#173b4b!important;-webkit-text-fill-color:#173b4b!important;background:none!important;background-image:none!important;
  animation:none!important;filter:none!important;text-shadow:none!important;box-shadow:none!important;
}
html body.dx-contact-page #dx-contact-map-wordmark.dx-map-wordmark-v1910::before,
html body.dx-contact-page #dx-contact-map-wordmark.dx-map-wordmark-v1910::after{content:none!important;display:none!important}
@media(max-width:980px){
  html body.dx-contact-page main.site-main{padding-top:clamp(88px,15vw,116px)!important}
  html body.dx-contact-page .dx-contact-map-caption.dx-v1865-map-caption{
    left:10px!important;right:10px!important;bottom:10px!important;
    display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;
    column-gap:10px!important;row-gap:4px!important;align-items:center!important;
    width:auto!important;height:auto!important;min-height:0!important;max-height:none!important;
    padding:12px 13px!important;border-radius:20px!important;overflow:hidden!important;
  }
  html body.dx-contact-page .dx-contact-map-caption .dx-v1865-map-brand{
    grid-column:1!important;grid-row:1!important;align-self:end!important;width:auto!important;min-width:0!important;
  }
  html body.dx-contact-page #dx-contact-map-wordmark.dx-map-wordmark-v1910{
    font-size:clamp(19px,5.6vw,24px)!important;letter-spacing:.09em!important;
  }
  html body.dx-contact-page .dx-contact-map-caption .dx-contact-map-address{
    grid-column:1!important;grid-row:2!important;align-self:start!important;margin:0!important;
  }
  html body.dx-contact-page .dx-contact-map-caption .dx-contact-map-address,
  html body.dx-contact-page .dx-contact-map-caption .dx-contact-map-address *{
    font-size:clamp(8px,2.4vw,10px)!important;line-height:1.28!important;letter-spacing:.07em!important;
  }
  html body.dx-contact-page .dx-contact-map-caption>a{
    grid-column:2!important;grid-row:1/3!important;align-self:center!important;justify-self:end!important;
    width:auto!important;min-width:0!important;max-width:42vw!important;height:auto!important;min-height:36px!important;
    padding:8px 11px!important;font-size:clamp(9px,2.7vw,12px)!important;line-height:1!important;
    letter-spacing:.05em!important;text-shadow:none!important;box-shadow:none!important;
  }
  html body.dx-contact-page .dx-contact-map-caption>a::before,
  html body.dx-contact-page .dx-contact-map-caption>a::after{content:none!important;display:none!important}
}
@media(max-width:390px){
  html body.dx-contact-page .dx-contact-map-caption.dx-v1865-map-caption{
    grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto auto!important;
  }
  html body.dx-contact-page .dx-contact-map-caption>a{
    grid-column:1!important;grid-row:3!important;justify-self:start!important;max-width:100%!important;margin-top:4px!important;
  }
}

/* 5) Connected Markets: longer readable hold, late short blur. */
@media(min-width:981px){
  html body.dx-home-page .dx11-globe-wrap{min-height:220svh!important}
}

/* source: denlyx-v1911-production.css */
/* ========================================================================== 
   DENLYX PLATFORM PRODUCTION v1.0.12 — FINAL CONSISTENCY OWNER
   ========================================================================== */

/* 1) Shared operating-scale presentation on Home and About.
      Static cards only: no click, hover, counter animation, or decorative lines. */
html body .dx-unified-metrics,
html body .dx-unified-facilities,
html body .dx-unified-facility-grid{
  position:relative!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
html body .dx-unified-metrics::before,
html body .dx-unified-metrics::after,
html body .dx-unified-facilities::before,
html body .dx-unified-facilities::after,
html body .dx-unified-facility-grid::before,
html body .dx-unified-facility-grid::after{
  content:none!important;
  display:none!important;
}
html body .dx-unified-metrics{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
  margin:36px 0 0!important;
  padding:0!important;
}
html body .dx-unified-metrics>article{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:17px!important;
  min-height:174px!important;
  margin:0!important;
  padding:24px 18px!important;
  color:#173b4b!important;
  background:rgba(247,250,251,.22)!important;
  background-image:none!important;
  border:1px solid rgba(23,59,75,.22)!important;
  border-radius:22px!important;
  box-shadow:none!important;
  filter:none!important;
  transform:none!important;
  transition:none!important;
  cursor:default!important;
  pointer-events:none!important;
}
html body .dx-unified-metrics>article::before,
html body .dx-unified-metrics>article::after{
  content:none!important;
  display:none!important;
}
html body .dx-unified-metrics>article>strong{
  display:block!important;
  margin:0!important;
  padding:0!important;
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  font:400 clamp(48px,5vw,72px)/.95 Arial,Helvetica,sans-serif!important;
  letter-spacing:-.055em!important;
  text-align:center!important;
  white-space:nowrap!important;
}
html body .dx-unified-metrics>article>span{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  margin:0!important;
  color:#5e7c8d!important;
  -webkit-text-fill-color:#5e7c8d!important;
  font-size:12px!important;
  font-weight:650!important;
  line-height:1.25!important;
  letter-spacing:0!important;
  text-align:center!important;
}
html body .dx-unified-metrics>article>span small{
  color:#7893a2!important;
  -webkit-text-fill-color:#7893a2!important;
  font-size:11px!important;font-weight:650!important;line-height:1.2!important;
  letter-spacing:.08em!important;
}
html body .dx-unified-facilities{
  margin:28px 0 0!important;
  padding:0!important;
}
html body .dx-unified-facility-title{
  display:block!important;
  width:100%!important;
  margin:0 0 20px!important;
  padding:0!important;
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  font-size:13px!important;
  font-weight:750!important;
  line-height:1.25!important;
  letter-spacing:.13em!important;
  text-align:center!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
html body .dx-unified-facility-grid{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:12px!important;
  margin:0!important;
  padding:0!important;
}
html body .dx-unified-facility-grid>article{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:132px!important;
  margin:0!important;
  padding:18px 14px!important;
  color:#173b4b!important;
  background:rgba(247,250,251,.18)!important;
  background-image:none!important;
  border:1px solid rgba(23,59,75,.20)!important;
  border-radius:20px!important;
  box-shadow:none!important;
  filter:none!important;
  transform:none!important;
  transition:none!important;
  cursor:default!important;
  pointer-events:none!important;
  text-align:center!important;
}
html body .dx-unified-facility-grid>article::before,
html body .dx-unified-facility-grid>article::after{
  content:none!important;
  display:none!important;
}
html body .dx-unified-facility-grid>article>span{
  margin:0 0 9px!important;
  color:#698696!important;
  -webkit-text-fill-color:#698696!important;
  font-size:9px!important;
  font-weight:750!important;
  line-height:1!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
html body .dx-unified-facility-grid>article>h3{
  margin:0 0 8px!important;
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  font:400 20px/1.1 Arial,Helvetica,sans-serif!important;
  letter-spacing:-.02em!important;
}
html body .dx-unified-facility-grid>article>p{
  margin:0!important;
  color:#5e7c8d!important;
  -webkit-text-fill-color:#5e7c8d!important;
  font-size:12px!important;
  line-height:1.35!important;
}
@media(max-width:980px){
  html body .dx-unified-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  html body .dx-unified-metrics>article{min-height:142px!important;padding:20px 12px!important}
  html body .dx-unified-metrics>article>strong{font-size:clamp(39px,12vw,58px)!important}
  html body .dx-unified-facility-title{white-space:normal!important;font-size:11px!important;line-height:1.45!important;padding:0 10px!important}
  html body .dx-unified-facility-grid{grid-template-columns:1fr!important;gap:10px!important}
  html body .dx-unified-facility-grid>article{min-height:108px!important}
}

/* 2) Legal-suite popup rows: every outline remains white. Only row text adapts. */
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-language-trigger,
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-language-popup,
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-language-popup button[data-language-option],
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-language-popup button[data-language-option][aria-selected="true"],
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-company-nav>.atmo-dropdown,
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-company-nav>.atmo-dropdown>a.dx-v1865-company-menu-card{
  border-color:rgba(247,251,255,.96)!important;
}
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-language-popup button[data-language-option][data-dx-v1911-row-tone="light"],
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-language-popup button[data-language-option][data-dx-v1911-row-tone="light"][aria-selected="true"]{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  border-color:rgba(247,251,255,.96)!important;
}
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-language-popup button[data-language-option][data-dx-v1911-row-tone="dark"],
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-language-popup button[data-language-option][data-dx-v1911-row-tone="dark"][aria-selected="true"]{
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
  border-color:rgba(247,251,255,.96)!important;
}
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-language-popup button[data-language-option] span,
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-language-popup button[data-language-option] small{
  color:inherit!important;
  -webkit-text-fill-color:currentColor!important;
}
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-company-nav>.atmo-dropdown>a[data-dx-v1854-row-tone="light"],
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-company-nav>.atmo-dropdown>a[data-dx-v1854-row-tone="light"] *{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
}
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-company-nav>.atmo-dropdown>a[data-dx-v1854-row-tone="dark"],
html body.denlyx-atmosphere-theme.dx-legal-suite-page header.atmo-header .atmo-company-nav>.atmo-dropdown>a[data-dx-v1854-row-tone="dark"] *{
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
}

/* 3) Operating-network direction nodes: icon + main title only. */
html body #dx-cinematic-network .dx-main-sub{display:none!important}
html body #dx-cinematic-network .dx-main-title{
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.035em!important;
}

/* 4) Connected Markets: a short readable dwell followed by a compact crossfade.
      No full-screen empty interval. */
@media(min-width:981px){
  html body.dx-home-page .dx11-globe-wrap{
    min-height:150svh!important;
  }
}

/* 5) ENTER WITH AUDIO: shorter desktop capsule with one centered content group.
      Existing measured expanded/compact anchors remain authoritative. */
@media(min-width:981px){
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-dx-v1865-audio-gate]{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:12px!important;
    width:350px!important;
    min-width:350px!important;
    max-width:350px!important;
    min-height:64px!important;
    padding:0 14px!important;
    grid-template-columns:none!important;
  }
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate .dx-v1865-audio-enable{
    display:flex!important;
    flex:0 1 auto!important;
    align-items:center!important;
    justify-content:center!important;
    gap:11px!important;
    min-width:0!important;
    width:auto!important;
    padding:9px 0!important;
    grid-template-columns:none!important;
  }
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate .dx-v1865-audio-bars{
    flex:0 0 24px!important;
    width:24px!important;
    min-width:24px!important;
  }
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate .dx-v1865-audio-copy{
    flex:0 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:226px!important;
  }
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate .dx-v1865-audio-copy b,
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate .dx-v1865-audio-copy small{
    white-space:nowrap!important;
  }
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate .dx-v1865-audio-close{
    flex:0 0 32px!important;
    width:32px!important;
    min-width:32px!important;
    height:32px!important;
    margin:0!important;
    padding:0!important;
  }
}

/* source: denlyx-v1912-production.css */
/* ========================================================================== 
   DENLYX PLATFORM PRODUCTION v1.0.13 — FINAL POLISH OWNER
   ========================================================================== */

/* 1) ENTER WITH AUDIO: center icon + copy + close as one physical row.
      The authoritative v1905 controller still owns both desktop anchors. */
@media(min-width:981px){
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate],
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate].is-visible{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:center!important;
    gap:20px!important;
    width:350px!important;
    min-width:350px!important;
    max-width:350px!important;
    min-height:64px!important;
    padding:0 22px!important;
    grid-template:none!important;
    grid-template-columns:none!important;
    grid-template-rows:none!important;
  }
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate] .dx-v1865-audio-enable,
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate].is-visible .dx-v1865-audio-enable{
    position:static!important;
    inset:auto!important;
    display:inline-flex!important;
    flex:0 1 auto!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:center!important;
    gap:12px!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    grid-template:none!important;
    grid-template-columns:none!important;
    grid-template-rows:none!important;
    text-align:left!important;
  }
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate] .dx-v1865-audio-bars{
    position:static!important;
    inset:auto!important;
    flex:0 0 24px!important;
    width:24px!important;
    min-width:24px!important;
    height:22px!important;
    margin:0!important;
    transform:none!important;
  }
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate] .dx-v1865-audio-copy,
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate].is-visible .dx-v1865-audio-copy{
    position:static!important;
    inset:auto!important;
    display:flex!important;
    flex:0 1 auto!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:center!important;
    gap:3px!important;
    width:auto!important;
    min-width:0!important;
    max-width:226px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
  }
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate] .dx-v1865-audio-close,
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate].is-visible .dx-v1865-audio-close{
    position:static!important;
    inset:auto!important;
    display:grid!important;
    place-items:center!important;
    flex:0 0 32px!important;
    width:32px!important;
    min-width:32px!important;
    max-width:32px!important;
    height:32px!important;
    min-height:32px!important;
    max-height:32px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:999px!important;
    transform:none!important;
  }
}

/* 2) Center DENLYX node: the subtitles are physically removed in PHP. */
html body #dx-cinematic-network #dx-core .dx-core-title{
  font-size:19px!important;
  font-weight:600!important;
  letter-spacing:.14em!important;
}

/* 3) Map caption: balanced top/bottom breathing room and a clearer
      DENLYX-to-address gap. */
html body.dx-contact-page .dx-contact-map-caption.dx-v1865-map-caption{
  align-content:center!important;
  row-gap:7px!important;
}
html body.dx-contact-page .dx-contact-map-caption .dx-v1865-map-brand{
  align-self:auto!important;
  margin:0!important;
}
html body.dx-contact-page .dx-contact-map-caption .dx-contact-map-address{
  align-self:auto!important;
  margin:0!important;
}
@media(min-width:981px){
  html body.dx-contact-page .dx-contact-map-caption.dx-v1865-map-caption{
    grid-template-rows:max-content max-content!important;
    height:92px!important;
    min-height:92px!important;
    max-height:92px!important;
    padding:14px 15px!important;
  }
}
@media(max-width:980px){
  html body.dx-contact-page .dx-contact-map-caption.dx-v1865-map-caption{
    grid-template-rows:max-content max-content!important;
    row-gap:7px!important;
    padding:13px 14px!important;
  }
  /* Mobile only: reduce the complete OPEN DIRECTIONS control about 25% so the
     street line, including AVE, remains unobstructed. */
  html body.dx-contact-page .dx-contact-map-caption>a{
    max-width:35vw!important;
    min-height:27px!important;
    padding:6px 8px!important;
    font-size:clamp(7.5px,2.15vw,9px)!important;
    line-height:1!important;
    letter-spacing:.04em!important;
  }
}
@media(max-width:390px){
  html body.dx-contact-page .dx-contact-map-caption>a{
    max-width:100%!important;
  }
}

/* source: denlyx-v1913-production.css */
/* ========================================================================== 
   DENLYX PLATFORM PRODUCTION v1.0.16 — RESPONSIVE / MULTILINGUAL / GLOBE ADMIN OWNER
   ========================================================================== */

/* Company cards: one centered, resilient template on every page and language. */
html body .dx11-company-card,
html body .dx-directory-card{
  min-width:0!important;
  overflow:hidden!important;
}
html body .dx11-company-body,
html body .dx-directory-card-copy{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  text-align:center!important;
}
html body .dx11-company-body>*,
html body .dx-directory-card-copy>*{
  max-width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}
html body .dx11-company-body h3,
html body .dx-directory-card-copy h3{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  text-wrap:balance!important;
}
html body .dx11-company-body p,
html body .dx-directory-card-copy p{
  width:100%!important;
  max-width:30ch!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  hyphens:auto!important;
  text-wrap:pretty!important;
}
html body .dx11-company-actions,
html body .dx-directory-actions{
  width:100%!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
}
html body .dx11-company-logo,
html body .dx-directory-logo{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
html body .dx11-company-logo .dx-logo-picture,
html body .dx-directory-logo .dx-logo-picture{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:100%!important;
}
html body .dx11-company-logo img,
html body .dx-directory-logo img{
  display:block!important;
  width:auto!important;
  max-width:88%!important;
  height:auto!important;
  max-height:78%!important;
  margin:auto!important;
  object-fit:contain!important;
}
html body .dx11-company-logo-iron img,
html body .dx-directory-logo-iron img{
  max-width:94%!important;
  max-height:88%!important;
}

/* Metrics and every translated box stay inside their own containers. */
html body .dx-unified-metrics article,
html body .dx-unified-facility-grid article,
html body .dx11-company-card,
html body .dx-directory-card,
html body .dx-globe-country button,
html body .atmo-language-popup button,
html body .atmo-dropdown a,
html body .atmo-button,
html body button,
html body a{
  min-width:0;
}
html body .dx-unified-metrics article>*{
  max-width:100%!important;
  text-align:center!important;
}
html body .dx-unified-metrics article strong{
  display:block!important;
  width:100%!important;
  padding-inline:8px!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  line-height:.96!important;
  text-wrap:balance!important;
}
html body .dx-unified-metrics article:last-child strong{
  font-size:clamp(25px,4.15vw,60px)!important;
  letter-spacing:-.045em!important;
}
html body .dx-unified-metrics article span,
html body .dx-unified-metrics article small,
html body .dx-unified-facility-title,
html body .dx-unified-facility-grid article p,
html body .dx-globe-country button b,
html body .dx-globe-country button span{
  max-width:100%!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  hyphens:auto!important;
  text-wrap:balance!important;
}

/* Language menu: stable white outlines on every page; only text adapts. */
html body header.atmo-header .atmo-language-trigger,
html body header.atmo-header .atmo-language-popup,
html body header.atmo-header .atmo-language-popup button[data-language-option],
html body header.atmo-header .atmo-company-nav>.atmo-dropdown,
html body header.atmo-header .atmo-company-nav>.atmo-dropdown>a{
  border-color:rgba(247,251,255,.84)!important;
}
html body header.atmo-header .atmo-language-popup button[data-language-option],
html body header.atmo-header .atmo-company-nav>.atmo-dropdown>a{
  max-width:100%!important;
  overflow:hidden!important;
}
html body header.atmo-header .atmo-language-popup button[data-language-option] span,
html body header.atmo-header .atmo-language-popup button[data-language-option] small,
html body header.atmo-header .atmo-company-nav>.atmo-dropdown>a strong,
html body header.atmo-header .atmo-company-nav>.atmo-dropdown>a small{
  min-width:0!important;
  max-width:100%!important;
  overflow-wrap:anywhere!important;
}
html body header.atmo-header [data-dx-v1905-row-tone="light"],
html body header.atmo-header [data-dx-v1854-row-tone="light"],
html body header.atmo-header [data-dx-row-tone="light"]{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
}
html body header.atmo-header [data-dx-v1905-row-tone="dark"],
html body header.atmo-header [data-dx-v1854-row-tone="dark"],
html body header.atmo-header [data-dx-row-tone="dark"]{
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
}

/* Globe city buttons are generated by Denlyx Core and remain a predictable grid. */
html body .dx-globe-country{
  min-width:0!important;
}
html body .dx-globe-country button{
  box-sizing:border-box!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-align:center!important;
}
html body .dx-globe-country button b,
html body .dx-globe-country button span{
  display:block!important;
  width:100%!important;
  text-align:center!important;
}

/* About Us network: viewport-aware scale. Preserve motion but prevent laptop clipping. */
@media (min-width:1280px) and (prefers-reduced-motion:no-preference){
  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"]>.dx-about-purpose-grid{
    grid-template-columns:minmax(360px,.86fr) minmax(0,1.14fr)!important;
    width:min(1640px,calc(100% - clamp(32px,4vw,72px)))!important;
    min-height:100svh!important;
    padding:clamp(70px,9vh,118px) 0 clamp(24px,4vh,58px)!important;
    overflow:clip!important;
  }
  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] .dx-about-purpose-copy{
    width:min(38vw,610px)!important;
    min-width:0!important;
  }
  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] .dx-about-network{
    width:min(44vw,calc((100svh - 132px) * .92),720px)!important;
    max-width:min(44vw,calc((100svh - 132px) * .92),720px)!important;
    transform:translate3d(calc(var(--dx1908-purpose-progress,0) * clamp(24px,4vw,70px)),0,0)
      scale(calc(1 + var(--dx1908-purpose-progress,0) * .52))!important;
    transform-origin:center center!important;
  }
  html body.dx-about-page #dx-cinematic-network svg{
    max-height:calc(100svh - 210px)!important;
  }
}
@media (min-width:1280px) and (max-height:820px){
  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"]{
    min-height:185vh!important;
  }
  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] .dx-about-network{
    width:min(42vw,590px)!important;
    max-width:min(42vw,590px)!important;
    transform:translate3d(calc(var(--dx1908-purpose-progress,0) * 28px),0,0)
      scale(calc(1 + var(--dx1908-purpose-progress,0) * .28))!important;
  }
  html body.dx-about-page #dx-cinematic-network .dx-info{
    min-height:96px!important;
    margin-top:-10px!important;
  }
}

/* Full mobile / multilingual containment audit. */
@media(max-width:980px){
  html,body{max-width:100%!important;overflow-x:hidden!important}
  html body main,
  html body .site-main,
  html body .dx11-home,
  html body section,
  html body .container,
  html body .dx11-container{
    min-width:0!important;
    max-width:100%!important;
  }
  html body .dx-unified-metrics article:last-child strong{
    font-size:clamp(22px,6.4vw,38px)!important;
    letter-spacing:-.045em!important;
  }
  html body .dx-unified-metrics article span{
    padding-inline:8px!important;
    font-size:clamp(11px,3.2vw,16px)!important;
  }
  html body .dx11-company-body h3,
  html body .dx-directory-card-copy h3{
    font-size:clamp(14px,4vw,18px)!important;
  }
  html body .dx11-company-body p,
  html body .dx-directory-card-copy p{
    max-width:34ch!important;
    font-size:clamp(13px,3.6vw,16px)!important;
  }
  html body .dx-globe-country{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
  html body .dx-globe-country h4{
    grid-column:1/-1!important;
  }
  html body .dx-globe-country button{
    width:100%!important;
    min-height:54px!important;
    padding:10px 7px!important;
  }
}
@media(max-width:430px){
  html body .dx-unified-metrics{
    gap:10px!important;
  }
  html body .dx-unified-metrics article{
    padding-inline:8px!important;
  }
  html body .dx-unified-metrics article:last-child strong{
    font-size:clamp(21px,5.9vw,28px)!important;
  }
  html body .dx-unified-facility-title{
    font-size:clamp(11px,3.2vw,15px)!important;
    line-height:1.45!important;
    padding-inline:8px!important;
  }
}

/* source: denlyx-v1920-production.css */
/*
 * DENLYX PLATFORM PRODUCTION v1.0.20
 * Single owner for the About Us / Our Purpose tree motion.
 * The SVG receives a guaranteed visible zoom where the live viewport permits;
 * the composition remains vertically anchored and shifts horizontally only as
 * required to keep the enlarged tree inside the viewport.
 */

@media (min-width:1280px) and (prefers-reduced-motion:no-preference){
  html body.dx-about-page{
    overflow-x:clip!important;
  }

  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"]{
    overflow:visible!important;
  }

  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"]>.dx-about-purpose-grid{
    overflow:visible!important;
    transform:none!important;
    translate:none!important;
    scale:none!important;
  }

  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] .dx-about-purpose-copy{
    transform:translate3d(var(--dx1920-purpose-copy-x,0px),0,0)!important;
    transform-origin:left center!important;
    translate:none!important;
    scale:none!important;
    will-change:transform!important;
  }

  /* Neutralize all earlier outer-container motion. The information panel stays
     fixed while only the actual operating-tree SVG enlarges. */
  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] .dx-about-network,
  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] #dx-cinematic-network,
  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] #dx-cinematic-network .dx-wrap{
    transform:none!important;
    translate:none!important;
    scale:none!important;
    overflow:visible!important;
  }

  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] #dx-cinematic-network svg{
    transform:
      translate3d(var(--dx1920-purpose-map-x,0px),0,0)
      scale(var(--dx1920-purpose-map-scale,1))!important;
    transform-origin:center center!important;
    transform-box:border-box!important;
    translate:none!important;
    scale:none!important;
    will-change:transform!important;
  }

  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] #dx-cinematic-network .dx-info{
    transform:none!important;
    translate:none!important;
    scale:none!important;
  }
}

@media (min-width:1280px) and (max-height:820px) and (prefers-reduced-motion:no-preference){
  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"]>.dx-about-purpose-grid{
    padding-top:clamp(62px,8vh,78px)!important;
    padding-bottom:18px!important;
  }
}

@media (prefers-reduced-motion:reduce), (max-width:1279px){
  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] .dx-about-purpose-copy,
  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] .dx-about-network,
  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] #dx-cinematic-network svg{
    transform:none!important;
    translate:none!important;
    scale:none!important;
  }
}

/* source: denlyx-v1921-production.css */
/*
 * DENLYX PLATFORM PRODUCTION v1.0.21
 * Responsive header/menu ownership, homepage rail clearance, and calibrated
 * mobile company-logo containment.
 */

/* Desktop Companies dropdown: one explicit state owner. CSS hover/focus rules
   from older layers cannot leave a retained-focus rectangle on remote browsers. */
@media (min-width:981px){
  html body header.atmo-header .atmo-company-nav > .atmo-dropdown{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate3d(0,12px,0)!important;
    transition:opacity .16s ease,transform .2s ease,visibility 0s linear 0s!important;
  }
  html body header.atmo-header .atmo-company-nav.dx1921-company-open > .atmo-dropdown{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate3d(0,0,0)!important;
    transition-delay:0s!important;
  }
}

/* Compact small-desktop header. The full navigation is replaced by the command
   menu before controls begin colliding or leaving the viewport. */
@media (min-width:981px) and (max-width:1366px){
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner{
    box-sizing:border-box!important;
    width:calc(100% - 32px)!important;
    max-width:none!important;
    min-width:0!important;
    margin-inline:auto!important;
    padding-inline:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    overflow:visible!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-brand{
    flex:0 1 auto!important;
    min-width:0!important;
    margin:0!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-brand span{
    font-size:clamp(25px,2.7vw,38px)!important;
    letter-spacing:clamp(.18em,.5vw,.28em)!important;
    white-space:nowrap!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header nav.atmo-nav,
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-menu-toggle{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:calc(100% - 190px)!important;
    margin:0 0 0 auto!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    flex-wrap:nowrap!important;
    gap:8px!important;
    overflow:visible!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .dx-command-toggle{
    display:inline-flex!important;
    visibility:visible!important;
    pointer-events:auto!important;
    flex:0 0 auto!important;
    width:82px!important;
    min-width:82px!important;
    max-width:82px!important;
    height:46px!important;
    padding:0 13px!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    white-space:nowrap!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-control{
    display:block!important;
    visibility:visible!important;
    flex:0 0 64px!important;
    width:64px!important;
    min-width:64px!important;
    max-width:64px!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger{
    display:inline-flex!important;
    visibility:visible!important;
    pointer-events:auto!important;
    align-items:center!important;
    justify-content:center!important;
    width:64px!important;
    min-width:64px!important;
    max-width:64px!important;
    height:46px!important;
    padding:0 12px!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle]{
    flex:0 0 132px!important;
    width:132px!important;
    min-width:132px!important;
    max-width:132px!important;
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-motion-toggle{
    display:none!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-cta{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:152px!important;
    max-width:178px!important;
    height:46px!important;
    min-height:46px!important;
    padding:0 14px!important;
    font-size:10px!important;
    letter-spacing:.08em!important;
    line-height:1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:clip!important;
  }
}

@media (min-width:981px) and (max-width:1100px){
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner{
    width:calc(100% - 24px)!important;
    gap:8px!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-brand span{
    font-size:25px!important;
    letter-spacing:.18em!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions{
    gap:6px!important;
    max-width:calc(100% - 168px)!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .dx-command-toggle{
    width:76px!important;
    min-width:76px!important;
    max-width:76px!important;
    padding-inline:10px!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle]{
    width:124px!important;
    min-width:124px!important;
    max-width:124px!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-cta{
    min-width:142px!important;
    max-width:154px!important;
    padding-inline:10px!important;
    font-size:9px!important;
  }
}

/* Homepage chapter rail owns a separate gutter on smaller desktop layouts. */
@media (min-width:901px) and (max-width:1366px){
  html body .dx-home-chapter-rail{
    left:16px!important;
    max-width:54px!important;
  }
  html body .dx11-intro-copy{
    padding-left:86px!important;
  }
  html body .dx11-intro-message{
    left:86px!important;
    right:0!important;
    width:calc(100% - 86px)!important;
  }
  html body .dx11-intro-disclaimer{
    left:86px!important;
    max-width:calc(100% - 180px)!important;
  }
  html body .dx11-intro-message h1,
  html body .dx11-intro-message h2{
    max-width:min(980px,calc(100vw - 190px))!important;
  }
}

/* Company logo panels: every source uses contain, but each identity receives a
   calibrated visual envelope. Mobile focus/hover cannot enlarge a logo into the
   divider. */
@media (max-width:980px){
  html body .dx11-company-logo,
  html body .dx-directory-logo{
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
    padding:18px 22px!important;
  }
  html body .dx11-company-logo .dx-logo-picture,
  html body .dx-directory-logo .dx-logo-picture{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
  }
  html body .dx11-company-logo img,
  html body .dx-directory-logo img,
  html body .dx11-company-card:hover .dx11-company-logo img,
  html body .dx11-company-card:focus-within .dx11-company-logo img,
  html body .dx-directory-card:hover .dx-directory-logo img,
  html body .dx-directory-card:focus-within .dx-directory-logo img{
    display:block!important;
    width:auto!important;
    height:auto!important;
    max-width:88%!important;
    max-height:78%!important;
    object-fit:contain!important;
    object-position:center!important;
    margin:auto!important;
    transform:none!important;
  }
  html body .dx11-company-logo-denlyx img,
  html body .dx-directory-logo-denlyx img{
    max-width:72%!important;
    max-height:84%!important;
  }
  html body .dx11-company-logo-iron img,
  html body .dx-directory-logo-iron img{
    max-width:98%!important;
    max-height:84%!important;
  }
}

@media (max-width:680px){
  html body .dx11-company-logo,
  html body .dx-directory-logo{
    height:210px!important;
    min-height:210px!important;
    max-height:210px!important;
    padding:16px 18px!important;
  }
  html body .dx11-company-logo-denlyx img,
  html body .dx-directory-logo-denlyx img{
    max-width:74%!important;
    max-height:86%!important;
  }
  html body .dx11-company-logo-iron img,
  html body .dx-directory-logo-iron img{
    max-width:100%!important;
    max-height:88%!important;
  }
}

/* source: denlyx-v1922-production.css */
/*
 * DENLYX PLATFORM PRODUCTION v1.0.22 CLEAN
 * Final Companies-menu geometry owner. The dropdown is positioned before it
 * becomes visible, preventing the first-hover side jump seen at desktop widths.
 */
@media (min-width:981px){
  html body header.atmo-header .atmo-company-nav > .atmo-dropdown{
    position:fixed!important;
    inset:auto!important;
    top:var(--dx1922-company-top,84px)!important;
    left:var(--dx1922-company-left,16px)!important;
    right:auto!important;
    bottom:auto!important;
    box-sizing:border-box!important;
    width:min(440px,calc(100vw - 24px))!important;
    max-width:calc(100vw - 24px)!important;
    max-height:var(--dx1922-company-max-height,calc(100vh - 100px))!important;
    overflow:auto!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate3d(0,10px,0)!important;
    transform-origin:top center!important;
    transition:opacity .15s ease,transform .18s ease,visibility 0s linear .18s!important;
    z-index:10050!important;
  }
  html body header.atmo-header .atmo-company-nav.dx1922-company-open > .atmo-dropdown{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate3d(0,0,0)!important;
    transition-delay:0s!important;
  }
  /* Older hover/focus owners are deliberately non-authoritative. */
  html body header.atmo-header .atmo-company-nav.dropdown-open:not(.dx1922-company-open) > .atmo-dropdown,
  html body header.atmo-header .atmo-company-nav.is-hover-open:not(.dx1922-company-open) > .atmo-dropdown,
  html body header.atmo-header .atmo-company-nav.dx1921-company-open:not(.dx1922-company-open) > .atmo-dropdown{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
}

/* source: denlyx-v1923-production.css */
/*
 * DENLYX PLATFORM PRODUCTION v1.0.23 CLEAN
 * Final regression owner for Companies dropdown anchoring, animated DENLYX
 * wordmark, footer cleanup spacing, and multilingual typography containment.
 */

/* --------------------------------------------------------------------------
   1) Companies dropdown: always attach to the Companies trigger itself.
   The previous fixed-viewport geometry is deliberately superseded so there is
   no first-frame jump to the right side of the header.
   -------------------------------------------------------------------------- */
@media (min-width:1367px){
  html body header.atmo-header .atmo-company-nav{
    position:relative!important;
    overflow:visible!important;
  }
  html body header.atmo-header .atmo-company-nav > .atmo-dropdown{
    position:absolute!important;
    inset:auto!important;
    top:calc(100% + 14px)!important;
    left:50%!important;
    right:auto!important;
    bottom:auto!important;
    width:min(440px,calc(100vw - 32px))!important;
    max-width:calc(100vw - 32px)!important;
    max-height:calc(100vh - 100px)!important;
    box-sizing:border-box!important;
    overflow:auto!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate3d(-50%,10px,0)!important;
    transform-origin:top center!important;
    transition:opacity .15s ease,transform .18s ease,visibility 0s linear .18s!important;
    z-index:10050!important;
  }
  html body header.atmo-header .atmo-company-nav.dx1923-company-open > .atmo-dropdown{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate3d(-50%,0,0)!important;
    transition-delay:0s!important;
  }
  html body header.atmo-header .atmo-company-nav:not(.dx1923-company-open) > .atmo-dropdown{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
}

/* --------------------------------------------------------------------------
   2) Animated DENLYX wordmark on every production page.
   Tone-aware gradients preserve contrast over light and dark sections.
   -------------------------------------------------------------------------- */
@keyframes dx1923DenlyxWordmarkSweep{
  0%{background-position:180% 50%}
  100%{background-position:-80% 50%}
}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-brand>span,
html body.denlyx-atmosphere-theme .dx-command-brand{
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  background-image:linear-gradient(105deg,#dce9ef 0%,#f9fdff 30%,#62c9e6 45%,#ffffff 51%,#63d9ca 57%,#f8fcff 70%,#dce9ef 100%)!important;
  background-size:260% 100%!important;
  background-repeat:no-repeat!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  animation:dx1923DenlyxWordmarkSweep 5.4s linear infinite!important;
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-tone="light"] .atmo-brand>span,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-final-tone="light"] .atmo-brand>span,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1865-tone="light"] .atmo-brand>span{
  background-image:linear-gradient(105deg,#173b4b 0%,#173b4b 27%,#6fa6bc 42%,#d8f3fb 50%,#75b9cd 57%,#173b4b 72%,#173b4b 100%)!important;
}
@media (prefers-reduced-motion:reduce){
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-brand>span,
  html body.denlyx-atmosphere-theme .dx-command-brand{
    animation:none!important;
    background-position:50% 50%!important;
  }
}

/* --------------------------------------------------------------------------
   3) Footer contact column after removing its duplicate START A PROJECT link.
   -------------------------------------------------------------------------- */
html body .atmo-footer .dx-footer-contact{
  align-content:start!important;
}
html body .atmo-footer .dx-footer-contact>:last-child{
  margin-bottom:0!important;
}

/* --------------------------------------------------------------------------
   4) Multilingual typography.
   Latin/Cyrillic languages must NEVER split ordinary words by individual
   letters. CJK retains its native line-breaking behavior.
   -------------------------------------------------------------------------- */
html:not([lang^="ja"]):not([lang^="zh"]) body.dx-i18n-expanded,
html:not([lang^="ja"]):not([lang^="zh"]) body[data-dx-language]:not([data-dx-language="en"]){
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  -webkit-hyphens:none!important;
}
html:not([lang^="ja"]):not([lang^="zh"]) body.dx-i18n-expanded :where(h1,h2,h3,h4,h5,h6,p,li,label,a,button,span,strong,small,div),
html:not([lang^="ja"]):not([lang^="zh"]) body[data-dx-language]:not([data-dx-language="en"]) :where(h1,h2,h3,h4,h5,h6,p,li,label,a,button,span,strong,small,div){
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  -webkit-hyphens:none!important;
}


/* Baseline protection applies to English too: no Latin/Cyrillic page may
   inherit a historical break-all/anywhere rule. */
html:not([lang^="ja"]):not([lang^="zh"]) body.denlyx-atmosphere-theme *{
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  -webkit-hyphens:none!important;
}

/* Google Translate injects FONT wrappers into text nodes. Do not allow those
   wrappers to reintroduce break-all/anywhere behavior. */
html:not([lang^="ja"]):not([lang^="zh"]) body font{
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  -webkit-hyphens:none!important;
}

/* Metric values are especially vulnerable because translations can turn one
   short English word into a much longer Polish/German/French/Turkish word. */
html:not([lang^="ja"]):not([lang^="zh"]) body .dx-about-metrics article strong,
html:not([lang^="ja"]):not([lang^="zh"]) body .dx11-metric strong{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  max-width:100%!important;
}
html:not([lang^="ja"]):not([lang^="zh"]) body .dx-about-metrics article.dx1827-long-metric strong,
html:not([lang^="ja"]):not([lang^="zh"]) body .dx11-metric.dx1827-long-metric strong,
html:not([lang^="ja"]):not([lang^="zh"]) body .dx-about-metrics article.dx1923-long-token strong,
html:not([lang^="ja"]):not([lang^="zh"]) body .dx11-metric.dx1923-long-token strong{
  font-size:clamp(32px,3.45vw,50px)!important;
  letter-spacing:-.045em!important;
  line-height:1.02!important;
  white-space:nowrap!important;
}

/* Generic translated long-token fallback. JS only adds this class after it
   confirms that a single token physically exceeds its container. */
html:not([lang^="ja"]):not([lang^="zh"]) body .dx1923-fit-long-word{
  max-width:100%!important;
  overflow:visible!important;
  text-overflow:clip!important;
}

/* Headings and card copy keep normal word wrapping and flexible heights. */
body.dx-i18n-expanded .site-main h1,
body.dx-i18n-expanded .site-main h2,
body.dx-i18n-expanded .site-main h3,
body.dx-i18n-expanded .site-main h4,
body.dx-i18n-expanded .dx-capability-card,
body.dx-i18n-expanded .dx-directory-card-copy,
body.dx-i18n-expanded .dx11-company-body,
body.dx-i18n-expanded .dx-about-metrics article,
body.dx-i18n-expanded .dx11-metric{
  min-height:0!important;
  height:auto!important;
}

/* CJK: explicitly preserve native browser line-breaking. */
html[lang^="ja"] body,
html[lang^="zh"] body{
  word-break:normal!important;
  overflow-wrap:break-word!important;
  line-break:auto!important;
  hyphens:none!important;
}

@media (max-width:980px){
  body.dx-i18n-expanded .site-main h1,
  body.dx-i18n-expanded .site-main h2{
    max-width:100%!important;
  }
  html:not([lang^="ja"]):not([lang^="zh"]) body .dx-about-metrics article.dx1827-long-metric strong,
  html:not([lang^="ja"]):not([lang^="zh"]) body .dx11-metric.dx1827-long-metric strong,
  html:not([lang^="ja"]):not([lang^="zh"]) body .dx-about-metrics article.dx1923-long-token strong,
  html:not([lang^="ja"]):not([lang^="zh"]) body .dx11-metric.dx1923-long-token strong{
    font-size:clamp(30px,10vw,44px)!important;
  }
}
/* Direct CJK descendant override wins over historical child-level !important
   wrapping rules that may still be present in earlier production layers. */
html[lang^="ja"] body.dx-i18n-expanded *,
html[lang^="zh"] body.dx-i18n-expanded *,
html[lang^="ja"] body[data-dx-language="ja"] *,
html[lang^="zh"] body[data-dx-language^="zh"] *{
  word-break:normal!important;
  overflow-wrap:break-word!important;
  line-break:auto!important;
  hyphens:none!important;
  -webkit-hyphens:none!important;
}

/* source: denlyx-v1924-production.css */
/*
 * DENLYX PLATFORM PRODUCTION v1.0.24 CLEAN
 * Final correction layer for footer-brand stability, operations-network spacing,
 * translated box containment, viewport-adaptive command menu, and modal glass blur.
 */

/* 1) Footer DENLYX is intentionally STATIC. The animated brand sweep belongs to
      header/command branding only and must never fade into the dark footer. */
html body.denlyx-atmosphere-theme .atmo-footer .atmo-footer-brand .atmo-brand>span{
  animation:none!important;
  background:none!important;
  background-image:none!important;
  background-clip:border-box!important;
  -webkit-background-clip:border-box!important;
  color:#f4f8fa!important;
  -webkit-text-fill-color:#f4f8fa!important;
  opacity:1!important;
  filter:none!important;
  text-shadow:none!important;
}

/* 2) Operations network info card is a separate block BELOW the SVG. Never let
      the connected-operation panel overlap nodes, routes, labels, or satellites. */
html body #dx-cinematic-network .dx-wrap{overflow:visible!important;}
html body #dx-cinematic-network #dx-map{
  display:block!important;
  margin:0!important;
  overflow:visible!important;
}
html body #dx-cinematic-network .dx-info{
  position:relative!important;
  inset:auto!important;
  margin:clamp(20px,2.4vw,34px) 18px 18px!important;
  transform:translateY(10px)!important;
  clear:both!important;
}
html body #dx-cinematic-network .dx-info.is-visible{transform:translateY(0)!important;}
@media(max-width:760px){
  html body #dx-cinematic-network .dx-info{margin:18px 12px 12px!important;}
}
@media(max-width:520px){
  html body #dx-cinematic-network .dx-info{margin:16px 10px 10px!important;}
}

/* 3) Every translated metric/facility box must contain its content. Words in
      Latin/Cyrillic stay intact; JS may reduce font size when a token is wider
      than the usable card width. Cards may grow vertically rather than clip. */
html body .dx-unified-metrics>article,
html body .dx-unified-facility-grid>article,
html body .dx11-metric,
html body .dx-about-metrics>article{
  min-width:0!important;
  height:auto!important;
  overflow:hidden!important;
}
html body .dx-unified-metrics>article>strong,
html body .dx-unified-metrics>article>span,
html body .dx-unified-metrics>article>span>small,
html body .dx-unified-facility-grid>article>span,
html body .dx-unified-facility-grid>article>h3,
html body .dx-unified-facility-grid>article>p,
html body .dx-unified-facility-title{
  box-sizing:border-box!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
html:not([lang^="ja"]):not([lang^="zh"]) body .dx-unified-metrics>article>strong,
html:not([lang^="ja"]):not([lang^="zh"]) body .dx-unified-metrics>article>span,
html:not([lang^="ja"]):not([lang^="zh"]) body .dx-unified-metrics>article>span>small,
html:not([lang^="ja"]):not([lang^="zh"]) body .dx-unified-facility-grid>article>span,
html:not([lang^="ja"]):not([lang^="zh"]) body .dx-unified-facility-grid>article>h3,
html:not([lang^="ja"]):not([lang^="zh"]) body .dx-unified-facility-grid>article>p,
html:not([lang^="ja"]):not([lang^="zh"]) body .dx-unified-facility-title{
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  -webkit-hyphens:none!important;
}
html:not([lang^="ja"]):not([lang^="zh"]) body .dx-unified-metrics>article>strong{
  white-space:nowrap!important;
  padding-inline:clamp(6px,1vw,14px)!important;
}
html body .dx1924-auto-fit{
  font-size:var(--dx1924-fit-size)!important;
  letter-spacing:var(--dx1924-fit-spacing,inherit)!important;
}

/* 4) Command menu: responsive modal-sized surface instead of a nearly full
      viewport sheet. This removes excessive dead space on large displays while
      keeping the complete menu usable on short laptops/tablets. */
html body .dx-command-menu .dx-command-backdrop,
html body .dx-project-modal .dx-project-modal-backdrop{
  background:rgba(7,24,34,.42)!important;
  -webkit-backdrop-filter:blur(22px) saturate(112%)!important;
  backdrop-filter:blur(22px) saturate(112%)!important;
}
html body .dx-command-menu .dx-command-panel{
  inset:auto!important;
  top:50%!important;
  left:50%!important;
  right:auto!important;
  bottom:auto!important;
  width:min(1120px,calc(100vw - 48px))!important;
  height:auto!important;
  max-height:calc(100dvh - 48px)!important;
  min-height:min(620px,calc(100dvh - 48px))!important;
  padding:clamp(22px,3.2vh,34px) clamp(26px,4.8vw,68px)!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  transform:translate3d(-50%,calc(-50% + 14px),0) scale(.985)!important;
  overflow:auto!important;
}
html body .dx-command-menu.is-open .dx-command-panel{
  transform:translate3d(-50%,-50%,0) scale(1)!important;
}
html body .dx-command-menu .dx-command-head{
  min-height:58px!important;
  padding-bottom:clamp(14px,2vh,22px)!important;
}
html body .dx-command-menu .dx-command-grid{
  min-height:0!important;
  align-items:center!important;
  gap:clamp(28px,5vw,72px)!important;
  padding:clamp(20px,3.2vh,34px) 0!important;
}
html body .dx-command-menu .dx-command-primary a{
  padding:clamp(8px,1.25vh,12px) 0!important;
}
html body .dx-command-menu .dx-command-primary span{
  font-size:clamp(28px,3.4vw,52px)!important;
}
html body .dx-command-menu .dx-command-network a{
  padding:clamp(12px,1.7vh,18px) 20px!important;
}
html body .dx-command-menu .dx-command-foot{
  box-sizing:border-box!important;
  min-height:70px!important;
  padding:0!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  line-height:1.25!important;
}
html body .dx-command-menu .dx-command-foot>*{
  margin-top:0!important;
  margin-bottom:0!important;
  align-self:center!important;
}

/* Quote panel retains its own layout, but now has the same glass separation
   from the page behind it. */
html body .dx-project-modal .dx-project-modal-panel{
  width:min(1080px,calc(100vw - 40px))!important;
  max-height:calc(100dvh - 40px)!important;
}

/* Short desktop/laptop: compress the command menu vertically before scrolling. */
@media(min-width:981px) and (max-height:780px){
  html body .dx-command-menu .dx-command-panel{
    width:min(1080px,calc(100vw - 34px))!important;
    min-height:0!important;
    max-height:calc(100dvh - 28px)!important;
    padding:18px clamp(24px,4vw,54px)!important;
  }
  html body .dx-command-menu .dx-command-head{min-height:50px!important;padding-bottom:12px!important;}
  html body .dx-command-menu .dx-command-grid{padding:14px 0!important;gap:clamp(24px,4vw,54px)!important;}
  html body .dx-command-menu .dx-command-primary a{padding:7px 0!important;}
  html body .dx-command-menu .dx-command-primary span{font-size:clamp(26px,3vw,44px)!important;}
  html body .dx-command-menu .dx-command-network>span{padding:12px 16px!important;}
  html body .dx-command-menu .dx-command-network a{padding:10px 16px!important;}
  html body .dx-command-menu .dx-command-foot{min-height:54px!important;}
}

/* Tablet/mobile: use safe viewport margins and let content scroll internally. */
@media(max-width:980px){
  html body .dx-command-menu .dx-command-panel{
    width:calc(100vw - 24px)!important;
    max-height:calc(100dvh - 24px)!important;
    min-height:0!important;
    padding:18px!important;
    border-radius:20px!important;
  }
  html body .dx-command-menu .dx-command-grid{
    grid-template-columns:1fr!important;
    align-items:start!important;
    gap:20px!important;
    padding:18px 0!important;
  }
  html body .dx-command-menu .dx-command-primary span{font-size:clamp(28px,9vw,46px)!important;}
  html body .dx-command-menu .dx-command-foot{
    min-height:74px!important;
    gap:14px!important;
    flex-wrap:wrap!important;
  }
}
@media(max-width:560px){
  html body .dx-command-menu .dx-command-panel{
    width:calc(100vw - 14px)!important;
    max-height:calc(100dvh - 14px)!important;
    padding:14px!important;
    border-radius:18px!important;
  }
  html body .dx-command-menu .dx-command-head{min-height:52px!important;padding-bottom:12px!important;}
  html body .dx-command-menu .dx-command-grid{padding:12px 0 16px!important;gap:16px!important;}
  html body .dx-command-menu .dx-command-primary a{grid-template-columns:32px 1fr!important;gap:10px!important;}
  html body .dx-command-menu .dx-command-primary span{font-size:clamp(27px,10vw,40px)!important;}
  html body .dx-command-menu .dx-command-network a{padding:11px 13px!important;}
  html body .dx-command-menu .dx-command-foot{min-height:68px!important;padding-top:10px!important;}
  html body .dx-project-modal{padding:7px!important;}
  html body .dx-project-modal .dx-project-modal-panel{width:calc(100vw - 14px)!important;max-height:calc(100dvh - 14px)!important;}
}

@media(prefers-reduced-motion:reduce){
  html body .dx-command-menu .dx-command-panel{transition:none!important;}
}

/* source: denlyx-v1925-production.css */
/*
 * DENLYX PLATFORM PRODUCTION v1.0.25 CLEAN
 * Final owner: centered adaptive modals, non-overlapping operations detail,
 * stable globe-city hover, and multilingual typography safety.
 */

/* 1) Command/quote overlays are true viewport-centered modal layers. */
html body .dx-command-menu,
html body .dx-project-modal{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100dvh!important;
  margin:0!important;
  padding:clamp(12px,2vw,28px)!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
html body .dx-command-menu .dx-command-panel{
  position:relative!important;
  inset:auto!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  margin:0!important;
  width:min(1120px,100%)!important;
  height:auto!important;
  max-width:100%!important;
  max-height:calc(100dvh - clamp(24px,4vw,56px))!important;
  min-height:0!important;
  transform:scale(.985)!important;
  transform-origin:50% 50%!important;
  overflow:auto!important;
}
html body .dx-command-menu.is-open .dx-command-panel{transform:scale(1)!important;}
html body .dx-project-modal .dx-project-modal-panel{
  position:relative!important;
  inset:auto!important;
  margin:0!important;
  max-width:100%!important;
  max-height:calc(100dvh - clamp(24px,4vw,56px))!important;
}
html body .dx-command-menu .dx-command-backdrop,
html body .dx-project-modal .dx-project-modal-backdrop{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  background:rgba(5,20,29,.47)!important;
  -webkit-backdrop-filter:blur(24px) saturate(118%)!important;
  backdrop-filter:blur(24px) saturate(118%)!important;
}
html body.dx-modal-open,
html body.dx-command-open,
html body:has(.dx-command-menu.is-open),
html body:has(.dx-project-modal.is-open){overflow:hidden!important;}

/* Keep the command menu proportional on wide/short screens. */
@media(min-width:981px) and (max-height:840px){
  html body .dx-command-menu .dx-command-panel{
    width:min(1040px,100%)!important;
    max-height:calc(100dvh - 24px)!important;
    padding:clamp(16px,2.2vh,24px) clamp(24px,4vw,52px)!important;
  }
  html body .dx-command-menu .dx-command-grid{padding:12px 0!important;gap:clamp(22px,3.5vw,48px)!important;}
  html body .dx-command-menu .dx-command-primary a{padding:6px 0!important;}
  html body .dx-command-menu .dx-command-primary span{font-size:clamp(25px,3vw,42px)!important;}
  html body .dx-command-menu .dx-command-network a{padding:9px 14px!important;}
  html body .dx-command-menu .dx-command-foot{min-height:52px!important;}
}
@media(max-width:980px){
  html body .dx-command-menu,
  html body .dx-project-modal{padding:10px!important;}
  html body .dx-command-menu .dx-command-panel,
  html body .dx-project-modal .dx-project-modal-panel{
    width:100%!important;
    max-height:calc(100dvh - 20px)!important;
  }
}

/* 2) Operations network: reserve physical flow space for the transformed SVG.
   JS owns --dx1925-info-clearance and recalculates it throughout the zoom. */
html body #dx-cinematic-network .dx-wrap{
  display:flex!important;
  flex-direction:column!important;
  overflow:visible!important;
}
html body #dx-cinematic-network #dx-map{
  flex:0 0 auto!important;
  position:relative!important;
  margin:0!important;
}
html body #dx-cinematic-network .dx-info{
  flex:0 0 auto!important;
  position:relative!important;
  inset:auto!important;
  margin:calc(clamp(24px,2.8vw,42px) + var(--dx1925-info-clearance,0px)) 18px 18px!important;
  transform:translateY(8px)!important;
  z-index:7!important;
}
html body #dx-cinematic-network .dx-info.is-visible{transform:translateY(0)!important;}
@media(max-width:760px){
  html body #dx-cinematic-network .dx-info{margin-left:12px!important;margin-right:12px!important;}
}

/* 3) Globe city controls: hover is paint-only. Never alter geometry. */
html body .dx-globe-country button,
html body .dx-globe-country button:hover,
html body .dx-globe-country button:focus,
html body .dx-globe-country button:focus-visible,
html body .dx-globe-country button.active,
html body .dx-globe-country button:active{
  transform:none!important;
  translate:none!important;
  scale:1!important;
  padding-left:var(--dx1925-city-pad-left,14px)!important;
  padding-right:var(--dx1925-city-pad-right,14px)!important;
  margin-left:0!important;
  margin-right:0!important;
  width:100%!important;
  box-sizing:border-box!important;
}
html body .dx-globe-country button{
  transition:background-color .22s ease,border-color .22s ease,box-shadow .22s ease,color .22s ease,opacity .22s ease!important;
  will-change:auto!important;
}
html body .dx-globe-country button b,
html body .dx-globe-country button span{transform:none!important;translate:none!important;}

/* 4) Multilingual typography: Latin/Cyrillic words stay intact. Large titles
   balance lines; measured runtime fitting reduces type before overflow. */
html:not([lang^="ja"]):not([lang^="zh"]) body .site-main h1,
html:not([lang^="ja"]):not([lang^="zh"]) body .site-main h2,
html:not([lang^="ja"]):not([lang^="zh"]) body .site-main h3,
html:not([lang^="ja"]):not([lang^="zh"]) body .site-main h4,
html:not([lang^="ja"]):not([lang^="zh"]) body .site-main p,
html:not([lang^="ja"]):not([lang^="zh"]) body .site-main li,
html:not([lang^="ja"]):not([lang^="zh"]) body .dx-command-panel,
html:not([lang^="ja"]):not([lang^="zh"]) body .atmo-footer{
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  -webkit-hyphens:none!important;
}
html body .platform-hero h1,
html body .dx11-hero h1,
html body .dx-about-section-head h2,
html body .dx11-section-head h2,
html body .dx-capabilities-hero h1,
html body .dx-directory-hero h1,
html body .dx-contact-hero h1{
  text-wrap:balance!important;
  max-width:100%!important;
}
html body[data-dx-language]:not([data-dx-language="en"]) .platform-hero h1,
html body[data-dx-language]:not([data-dx-language="en"]) .dx11-hero h1{
  font-size:clamp(38px,5.05vw,72px)!important;
  line-height:1.04!important;
}
html body .dx1925-text-fit{
  font-size:var(--dx1925-fit-size)!important;
  letter-spacing:var(--dx1925-fit-letter,inherit)!important;
}
html body .dx1925-heading-fit{
  font-size:var(--dx1925-heading-size)!important;
  letter-spacing:var(--dx1925-heading-letter,inherit)!important;
}
html body .dx-unified-metrics>article,
html body .dx-unified-facility-grid>article,
html body .dx11-metric,
html body .dx-about-metrics>article{
  min-width:0!important;
  overflow:hidden!important;
}
html body .dx-unified-metrics>article>* ,
html body .dx-unified-facility-grid>article>* ,
html body .dx11-metric>* ,
html body .dx-about-metrics>article>*{
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}

/* Footer wordmark is always static and visible. */
html body .atmo-footer .atmo-footer-brand .atmo-brand>span{
  animation:none!important;background:none!important;background-image:none!important;
  color:#f4f8fa!important;-webkit-text-fill-color:#f4f8fa!important;opacity:1!important;
}

@media(prefers-reduced-motion:reduce){
  html body .dx-command-menu .dx-command-panel{transition:none!important;}
}

/* source: denlyx-v1926-production.css */
/*
 * DENLYX PLATFORM PRODUCTION v1.0.26 CLEAN
 * Final owner for: About tree zoom + panel flow, sound-state consistency,
 * audio-gate containment, legal contact flow, multilingual box fitting.
 */

/* --------------------------------------------------------------------------
   1) SOUND: identical geometry before/after scroll. ON/OFF are neutral tokens.
   -------------------------------------------------------------------------- */
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions button.atmo-sound-toggle[data-sound-toggle],
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions button.atmo-sound-toggle[data-sound-toggle]{
  box-sizing:border-box!important;
  position:relative!important;
  display:block!important;
  width:142px!important;min-width:142px!important;max-width:142px!important;
  height:46px!important;min-height:46px!important;max-height:46px!important;
  padding:0!important;overflow:hidden!important;
  grid-template:none!important;column-gap:0!important;row-gap:0!important;
  transition:border-color .24s ease,background-color .24s ease,box-shadow .24s ease,color .24s ease!important;
}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions button.atmo-sound-toggle[data-sound-toggle]>.atmo-sound-bars,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions button.atmo-sound-toggle[data-sound-toggle]>.atmo-sound-bars{
  position:absolute!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:2px!important;
  inset:50% auto auto 17px!important;width:16px!important;height:16px!important;margin:0!important;padding:0!important;
  transform:translate3d(0,-50%,0)!important;pointer-events:none!important;z-index:2!important;
}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions button.atmo-sound-toggle[data-sound-toggle]>.atmo-sound-bars>i,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions button.atmo-sound-toggle[data-sound-toggle]>.atmo-sound-bars>i{
  display:block!important;flex:0 0 2px!important;width:2px!important;margin:0!important;transform:none!important;
}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions button.atmo-sound-toggle[data-sound-toggle]>.dx-sound-word,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions button.atmo-sound-toggle[data-sound-toggle]>.dx-sound-state,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions button.atmo-sound-toggle[data-sound-toggle]>.dx-sound-word,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-header-actions button.atmo-sound-toggle[data-sound-toggle]>.dx-sound-state{
  position:absolute!important;display:flex!important;align-items:center!important;justify-content:center!important;
  top:50%!important;right:auto!important;bottom:auto!important;width:auto!important;min-width:0!important;height:auto!important;
  margin:0!important;padding:0!important;line-height:1!important;text-align:center!important;white-space:nowrap!important;
  transform:translate3d(-50%,-50%,0)!important;pointer-events:none!important;z-index:3!important;
  transition:left .42s cubic-bezier(.22,.8,.22,1),opacity .24s ease,color .24s ease!important;
}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle][aria-pressed="true"]>.dx-sound-word,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle[data-sound-toggle][aria-pressed="true"]>.dx-sound-word{left:72px!important;opacity:1!important}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle][aria-pressed="true"]>.dx-sound-on,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle[data-sound-toggle][aria-pressed="true"]>.dx-sound-on{left:123px!important;opacity:1!important}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle][aria-pressed="true"]>.dx-sound-off,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle[data-sound-toggle][aria-pressed="true"]>.dx-sound-off{left:48px!important;opacity:0!important}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle][aria-pressed="false"]>.dx-sound-off,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle[data-sound-toggle][aria-pressed="false"]>.dx-sound-off{left:50px!important;opacity:1!important}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle][aria-pressed="false"]>.dx-sound-word,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle[data-sound-toggle][aria-pressed="false"]>.dx-sound-word{left:101px!important;opacity:1!important}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle][aria-pressed="false"]>.dx-sound-on,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle[data-sound-toggle][aria-pressed="false"]>.dx-sound-on{left:123px!important;opacity:0!important}

/* --------------------------------------------------------------------------
   2) ENTER WITH AUDIO: icon | flexible copy | close. No text may leave pill.
   -------------------------------------------------------------------------- */
html body .dx-v1865-audio-gate{
  box-sizing:border-box!important;
  width:min(470px,calc(100vw - 28px))!important;
  max-width:calc(100vw - 28px)!important;
  min-width:0!important;
  height:auto!important;min-height:60px!important;
  display:grid!important;grid-template-columns:minmax(0,1fr) 34px!important;align-items:center!important;
  gap:6px!important;padding:8px 10px 8px 14px!important;overflow:hidden!important;
}
html body .dx-v1865-audio-enable{
  min-width:0!important;width:100%!important;max-width:100%!important;
  display:grid!important;grid-template-columns:22px minmax(0,1fr)!important;align-items:center!important;
  column-gap:10px!important;padding:0!important;margin:0!important;overflow:hidden!important;text-align:left!important;
}
html body .dx-v1865-audio-bars{width:18px!important;min-width:18px!important;max-width:18px!important}
html body .dx-v1865-audio-copy{display:grid!important;min-width:0!important;max-width:100%!important;gap:2px!important;overflow:hidden!important}
html body .dx-v1865-audio-copy>b,
html body .dx-v1865-audio-copy>small{
  display:block!important;max-width:100%!important;min-width:0!important;margin:0!important;
  white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;
}
html body .dx-v1865-audio-copy>b{font-size:clamp(11px,1.05vw,13px)!important;line-height:1.15!important}
html body .dx-v1865-audio-copy>small{font-size:clamp(8.5px,.8vw,10.5px)!important;line-height:1.18!important}
html body .dx-v1865-audio-close{position:static!important;justify-self:center!important;align-self:center!important;width:30px!important;height:30px!important;min-width:30px!important;margin:0!important;padding:0!important}
@media(max-width:560px){
  html body .dx-v1865-audio-gate{width:min(390px,calc(100vw - 20px))!important;max-width:calc(100vw - 20px)!important;padding-left:12px!important}
  html body .dx-v1865-audio-copy>b{font-size:11px!important}
  html body .dx-v1865-audio-copy>small{font-size:8.5px!important}
}

/* --------------------------------------------------------------------------
   3) ABOUT TREE: scroll-driven scale belongs to the SVG; panel is flow content
      directly below the rendered bottom of the expanded tree.
   -------------------------------------------------------------------------- */
html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"],
html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"]>.dx-about-purpose-grid,
html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] .dx-about-network,
html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] #dx-cinematic-network,
html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] #dx-cinematic-network .dx-wrap{
  overflow:visible!important;
}
html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] #dx-cinematic-network .dx-wrap{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;
}
html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] #dx-cinematic-network #dx-map{
  position:relative!important;display:block!important;flex:0 0 auto!important;
  margin:0 0 var(--dx1926-tree-flow-extra,0px)!important;
  transform:translate3d(var(--dx1926-tree-x,0px),0,0) scale(var(--dx1926-tree-scale,1))!important;
  transform-origin:50% 50%!important;transform-box:border-box!important;
  will-change:transform!important;translate:none!important;scale:none!important;
}
html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] #dx-cinematic-network .dx-info{
  position:relative!important;inset:auto!important;flex:0 0 auto!important;
  margin:clamp(18px,2.2vw,32px) 18px 18px!important;
  transform:translateY(6px)!important;z-index:7!important;
}
html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] #dx-cinematic-network .dx-info.is-visible{transform:translateY(0)!important}
@media(max-width:1279px){
  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] #dx-cinematic-network #dx-map{
    transform:translate3d(var(--dx1926-tree-x,0px),0,0) scale(var(--dx1926-tree-scale,1))!important;
  }
}
@media(max-width:760px){
  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] #dx-cinematic-network .dx-info{margin-left:10px!important;margin-right:10px!important}
}
@media(prefers-reduced-motion:reduce){
  html body.dx-about-page .dx-about-purpose[data-dx-purpose-motion="true"] #dx-cinematic-network #dx-map{transform:none!important;margin-bottom:0!important}
}

/* --------------------------------------------------------------------------
   4) Translated stat/facility/info cards: fit within border, never clip.
   -------------------------------------------------------------------------- */
html body .dx-unified-metrics>article,
html body .dx-about-metrics>article,
html body .dx11-metric,
html body .dx-unified-facility-grid>article{
  box-sizing:border-box!important;min-width:0!important;overflow:hidden!important;padding-left:clamp(14px,2vw,28px)!important;padding-right:clamp(14px,2vw,28px)!important;
}
html body .dx-unified-metrics>article>strong,
html body .dx-about-metrics>article>strong,
html body .dx11-metric>strong{
  display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;
  white-space:normal!important;text-align:center!important;line-height:1.02!important;
  font-size:var(--dx1926-fit-size,inherit)!important;letter-spacing:var(--dx1926-fit-letter,inherit)!important;
  overflow:visible!important;text-overflow:clip!important;
}
html body .dx-unified-metrics>article>span,
html body .dx-about-metrics>article>span,
html body .dx11-metric>span,
html body .dx-unified-facility-grid>article>*{
  max-width:100%!important;min-width:0!important;white-space:normal!important;
  font-size:var(--dx1926-fit-size,inherit)!important;letter-spacing:var(--dx1926-fit-letter,inherit)!important;
  overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;
}
html body .dx1926-auto-fit{font-size:var(--dx1926-fit-size)!important;letter-spacing:var(--dx1926-fit-letter,inherit)!important}

/* --------------------------------------------------------------------------
   5) Legal suite: contact/address content is vertical flow, never overlays.
   -------------------------------------------------------------------------- */
html body.dx-legal-suite-page .dx-legal-copy,
html body.dx-legal-suite-page .dx-legal-prose{min-width:0!important;height:auto!important;overflow:visible!important}
html body.dx-legal-suite-page .dx-legal-copy>p{position:static!important;height:auto!important;min-height:0!important;margin:0 0 16px!important;line-height:1.65!important}
html body.dx-legal-suite-page .dx-legal-mail-block{
  position:static!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;
  align-items:start!important;justify-items:start!important;gap:6px!important;
  width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;
  margin:8px 0 18px!important;padding:0!important;overflow:visible!important;
}
html body.dx-legal-suite-page .dx-legal-mail-block .dx-legal-contact-label,
html body.dx-legal-suite-page .dx-legal-mail-block address,
html body.dx-legal-suite-page .dx-legal-mail-block .dx-contact-address--legal{
  position:static!important;display:block!important;width:auto!important;max-width:100%!important;margin:0!important;transform:none!important;line-height:1.55!important;
}
html body.dx-legal-suite-page .dx-legal-contact-list{display:grid!important;gap:10px!important}
html body.dx-legal-suite-page .dx-legal-contact-row{position:static!important;display:grid!important;grid-template-columns:minmax(110px,auto) minmax(0,1fr)!important;gap:12px!important;align-items:start!important;height:auto!important;min-height:0!important}
@media(max-width:620px){
  html body.dx-legal-suite-page .dx-legal-contact-row{grid-template-columns:1fr!important;gap:3px!important}
}

/* --------------------------------------------------------------------------
   6) Globe city hover remains paint-only.
   -------------------------------------------------------------------------- */
html body .dx-globe-country button,
html body .dx-globe-country button:hover,
html body .dx-globe-country button:focus,
html body .dx-globe-country button:focus-visible,
html body .dx-globe-country button.active,
html body .dx-globe-country button:active{
  transform:none!important;translate:none!important;scale:1!important;
  padding-left:14px!important;padding-right:14px!important;margin:0!important;width:100%!important;
}
html body .dx-globe-country button{transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease,color .2s ease,opacity .2s ease!important}

@media(prefers-reduced-motion:reduce){
  html body .atmo-sound-toggle[data-sound-toggle]>*{transition:none!important}
}

/* v1.0.26 final specificity guard: old translated-token nowrap rules must not win. */
html:not([lang^="ja"]):not([lang^="zh"]) body.denlyx-atmosphere-theme .dx-about-metrics>article>strong,
html:not([lang^="ja"]):not([lang^="zh"]) body.denlyx-atmosphere-theme .dx-unified-metrics>article>strong,
html:not([lang^="ja"]):not([lang^="zh"]) body.denlyx-atmosphere-theme .dx11-metric>strong,
html:not([lang^="ja"]):not([lang^="zh"]) body.denlyx-atmosphere-theme .dx-about-metrics article [data-dx-long-token],
html:not([lang^="ja"]):not([lang^="zh"]) body.denlyx-atmosphere-theme .dx-unified-metrics article [data-dx-long-token]{
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  max-width:100%!important;
}

/* source: denlyx-v1927-production.css */
/*
 * DENLYX PLATFORM PRODUCTION v1.0.27 CLEAN
 * Metric hierarchy regression fix: numeric operating-scale values remain large;
 * only genuinely long translated word-values are permitted to auto-fit.
 */

/* Numeric metrics are the visual anchor of each card. Historical runtime-fit
   classes/variables must never reduce them. */
html body.denlyx-atmosphere-theme .dx-unified-metrics>article>strong.dx-metric-value--number,
html body.denlyx-atmosphere-theme .dx-about-metrics>article>strong.dx-metric-value--number,
html body.denlyx-atmosphere-theme .dx11-metric>strong.dx-metric-value--number,
html body.denlyx-atmosphere-theme .dx-unified-metrics>article>strong.dx1927-metric-number,
html body.denlyx-atmosphere-theme .dx-about-metrics>article>strong.dx1927-metric-number,
html body.denlyx-atmosphere-theme .dx11-metric>strong.dx1927-metric-number{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:clamp(48px,5vw,72px)!important;
  font-weight:400!important;
  line-height:.95!important;
  letter-spacing:-.055em!important;
  white-space:nowrap!important;
  text-align:center!important;
  overflow:visible!important;
  --dx1924-fit-size:initial!important;
  --dx1925-fit-size:initial!important;
  --dx1926-fit-size:initial!important;
}

/* The single text-based metric (Nationwide and localized equivalents) keeps the
   same visual hierarchy but may shrink just enough to remain inside the card. */
html body.denlyx-atmosphere-theme .dx-unified-metrics>article>strong.dx-metric-value--word,
html body.denlyx-atmosphere-theme .dx-about-metrics>article>strong.dx-metric-value--word,
html body.denlyx-atmosphere-theme .dx11-metric>strong.dx-metric-value--word,
html body.denlyx-atmosphere-theme .dx-unified-metrics>article>strong.dx1927-metric-word,
html body.denlyx-atmosphere-theme .dx-about-metrics>article>strong.dx1927-metric-word,
html body.denlyx-atmosphere-theme .dx11-metric>strong.dx1927-metric-word{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding-inline:4px!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:var(--dx1927-metric-word-size,clamp(38px,4.5vw,64px))!important;
  font-weight:400!important;
  line-height:.98!important;
  letter-spacing:var(--dx1927-metric-word-letter,-.045em)!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  text-align:center!important;
}

/* Supporting labels retain their designed readable hierarchy and are never
   allowed to inherit the huge numeric treatment. */
html body.denlyx-atmosphere-theme .dx-unified-metrics>article>span,
html body.denlyx-atmosphere-theme .dx-about-metrics>article>span,
html body.denlyx-atmosphere-theme .dx11-metric>span{
  font-size:max(11px,var(--dx1926-fit-size,12px))!important;
  line-height:1.28!important;
}

@media(max-width:760px){
  html body.denlyx-atmosphere-theme .dx-unified-metrics>article>strong.dx-metric-value--number,
  html body.denlyx-atmosphere-theme .dx-about-metrics>article>strong.dx-metric-value--number,
  html body.denlyx-atmosphere-theme .dx11-metric>strong.dx-metric-value--number,
  html body.denlyx-atmosphere-theme .dx-unified-metrics>article>strong.dx1927-metric-number,
  html body.denlyx-atmosphere-theme .dx-about-metrics>article>strong.dx1927-metric-number,
  html body.denlyx-atmosphere-theme .dx11-metric>strong.dx1927-metric-number{
    font-size:clamp(42px,12vw,60px)!important;
  }
  html body.denlyx-atmosphere-theme .dx-unified-metrics>article>strong.dx-metric-value--word,
  html body.denlyx-atmosphere-theme .dx-about-metrics>article>strong.dx-metric-value--word,
  html body.denlyx-atmosphere-theme .dx11-metric>strong.dx-metric-value--word,
  html body.denlyx-atmosphere-theme .dx-unified-metrics>article>strong.dx1927-metric-word,
  html body.denlyx-atmosphere-theme .dx-about-metrics>article>strong.dx1927-metric-word,
  html body.denlyx-atmosphere-theme .dx11-metric>strong.dx1927-metric-word{
    font-size:var(--dx1927-metric-word-size,clamp(32px,9.2vw,50px))!important;
  }
}

@media(max-width:430px){
  html body.denlyx-atmosphere-theme .dx-unified-metrics>article>strong.dx-metric-value--number,
  html body.denlyx-atmosphere-theme .dx-about-metrics>article>strong.dx-metric-value--number,
  html body.denlyx-atmosphere-theme .dx11-metric>strong.dx-metric-value--number,
  html body.denlyx-atmosphere-theme .dx-unified-metrics>article>strong.dx1927-metric-number,
  html body.denlyx-atmosphere-theme .dx-about-metrics>article>strong.dx1927-metric-number,
  html body.denlyx-atmosphere-theme .dx11-metric>strong.dx1927-metric-number{
    font-size:clamp(38px,13vw,54px)!important;
  }
}

/* source: denlyx-v1928-production.css */
/*
 * DENLYX PLATFORM PRODUCTION v1.0.28 CLEAN
 * SOUND UX owner: first-entry centered audio prompt, smooth dock-on-scroll,
 * and one canonical SOUND equalizer/state animation shared by expanded and
 * compact header controls.
 */

/* One animation vocabulary everywhere. The expanded header SOUND control is
   the visual source of truth; compact/docked controls inherit its timing. */
@keyframes dxV1928EqOne{0%,100%{height:5px}45%{height:16px}75%{height:9px}}
@keyframes dxV1928EqTwo{0%,100%{height:14px}42%{height:6px}78%{height:17px}}
@keyframes dxV1928EqThree{0%,100%{height:8px}35%{height:17px}72%{height:5px}}

html body.denlyx-atmosphere-theme .atmo-sound-toggle .atmo-sound-bars,
html body.denlyx-atmosphere-theme .dx-v1865-compact-sound .dx-v1865-sound-bars{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  gap:3px!important;width:18px!important;height:18px!important;flex:0 0 18px!important;
}
html body.denlyx-atmosphere-theme .atmo-sound-toggle .atmo-sound-bars i,
html body.denlyx-atmosphere-theme .dx-v1865-compact-sound .dx-v1865-sound-bars i{
  display:block!important;width:2px!important;min-width:2px!important;max-width:2px!important;
  border-radius:999px!important;transition:height .18s ease,background-color .22s ease,color .22s ease!important;
  transform:none!important;scale:1!important;translate:0 0!important;
}
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .atmo-sound-toggle .atmo-sound-bars i,
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound .dx-v1865-sound-bars i{
  background:#42e1af!important;color:#42e1af!important;
}
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .atmo-sound-toggle .atmo-sound-bars i:nth-child(1),
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound .dx-v1865-sound-bars i:nth-child(1){animation:dxV1928EqOne .78s ease-in-out infinite!important}
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .atmo-sound-toggle .atmo-sound-bars i:nth-child(2),
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound .dx-v1865-sound-bars i:nth-child(2){animation:dxV1928EqTwo .66s ease-in-out -.18s infinite!important}
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .atmo-sound-toggle .atmo-sound-bars i:nth-child(3),
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound .dx-v1865-sound-bars i:nth-child(3){animation:dxV1928EqThree .86s ease-in-out -.31s infinite!important}
html[data-dx-audio-state="off"] body.denlyx-atmosphere-theme .atmo-sound-toggle .atmo-sound-bars i,
html[data-dx-audio-state="off"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound .dx-v1865-sound-bars i{
  height:3px!important;background:#ff7479!important;color:#ff7479!important;animation:none!important;
}

/* ON/OFF are invariant UI tokens. Never translate or visually substitute them. */
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound .dx-v1865-state::after{content:"ON"!important}
html[data-dx-audio-state="off"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound .dx-v1865-state::after{content:"OFF"!important}
html body.denlyx-atmosphere-theme .dx-v1865-compact-sound .dx-v1865-state{
  font-size:0!important;min-width:26px!important;white-space:nowrap!important
}
html body.denlyx-atmosphere-theme .dx-v1865-compact-sound .dx-v1865-state::after{
  display:inline-block!important;font-size:10px!important;line-height:1!important;font-weight:800!important;letter-spacing:.10em!important
}

/* Final audio-prompt geometry owner. JS supplies viewport coordinates in px so
   the intro can move from exact screen center to the accepted dock position
   without a top/auto/bottom jump. */
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-dx-v1928-owned="true"]{
  position:fixed!important;
  left:var(--dx1928-audio-x,50vw)!important;
  top:var(--dx1928-audio-y,50vh)!important;
  right:auto!important;bottom:auto!important;
  translate:0 0!important;scale:1!important;
  transform:translate3d(-50%,var(--dx1928-audio-y-shift,-50%),0)!important;
  transition:left .66s cubic-bezier(.22,.80,.22,1),top .66s cubic-bezier(.22,.80,.22,1),transform .66s cubic-bezier(.22,.80,.22,1),opacity .26s ease,background-color .3s ease,border-color .3s ease!important;
  will-change:left,top,transform,opacity!important;
  z-index:10040!important;
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-dx-v1928-mode="intro"]{
  --dx1928-audio-y-shift:-50%!important;
  width:min(520px,calc(100vw - 40px))!important;
  max-width:calc(100vw - 40px)!important;
  box-shadow:0 22px 70px rgba(0,16,26,.20),inset 0 1px 0 rgba(255,255,255,.12)!important;
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-dx-v1928-mode="docked"]{
  --dx1928-audio-y-shift:0%!important;
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-dx-v1928-owned="true"].is-visible{
  opacity:1!important;
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-dx-v1928-owned="true"].is-closing{
  opacity:0!important;transform:translate3d(-50%,calc(var(--dx1928-audio-y-shift,0%) + 8px),0)!important;
}

@media(max-width:980px){
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-dx-v1928-mode="intro"]{
    width:min(460px,calc(100vw - 28px))!important;max-width:calc(100vw - 28px)!important;
  }
}
@media(prefers-reduced-motion:reduce){
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-dx-v1928-owned="true"]{
    transition:opacity .18s ease!important;
  }
  html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .atmo-sound-toggle .atmo-sound-bars i,
  html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound .dx-v1865-sound-bars i{
    animation:none!important;height:10px!important;
  }
}

/* source: denlyx-v1929-production.css */
/*
 * DENLYX PLATFORM PRODUCTION v1.0.29 CLEAN
 * Final SOUND trajectory + canonical expanded/compact SOUND choreography.
 */

/* Audio prompt: all modes use center-point geometry. This removes the previous
   top-left / center transform mismatch that caused the sideways jump. */
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-dx-v1929-owned="true"]{
  position:fixed!important;
  left:var(--dx1929-audio-x,50vw)!important;
  top:var(--dx1929-audio-y,50vh)!important;
  right:auto!important;bottom:auto!important;
  transform:translate3d(-50%,-50%,0)!important;
  translate:none!important;scale:1!important;
  transition:left .68s cubic-bezier(.22,.80,.22,1),top .68s cubic-bezier(.22,.80,.22,1),transform .68s cubic-bezier(.22,.80,.22,1),opacity .24s ease!important;
  will-change:left,top,transform,opacity!important;
  z-index:10040!important;
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-dx-v1929-owned="true"][data-dx-v1929-no-motion="true"]{
  transition:none!important;
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-dx-v1929-owned="true"].is-closing{
  opacity:0!important;
  transform:translate3d(-50%,calc(-50% + 8px),0)!important;
}

/* Canonical SOUND choreography. Both expanded header and compact/scrolled
   control use the same positions, same label travel, same timing, same bars. */
html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle],
html body.denlyx-atmosphere-theme .dx-v1865-compact-sound[data-dx-v1929-canonical="true"]{
  box-sizing:border-box!important;
  position:relative!important;
  display:block!important;
  width:142px!important;min-width:142px!important;max-width:142px!important;
  height:46px!important;min-height:46px!important;max-height:46px!important;
  padding:0!important;overflow:hidden!important;
}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle] .atmo-sound-bars,
html body.denlyx-atmosphere-theme .dx-v1865-compact-sound[data-dx-v1929-canonical="true"] .dx-v1929-bars{
  box-sizing:border-box!important;position:absolute!important;display:flex!important;
  align-items:center!important;justify-content:center!important;gap:3px!important;
  left:17px!important;top:50%!important;width:18px!important;height:18px!important;
  margin:0!important;padding:0!important;transform:translate3d(0,-50%,0)!important;
  color:inherit!important;pointer-events:none!important;
}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle] .atmo-sound-bars i,
html body.denlyx-atmosphere-theme .dx-v1865-compact-sound[data-dx-v1929-canonical="true"] .dx-v1929-bars i{
  display:block!important;flex:0 0 2px!important;width:2px!important;min-width:2px!important;max-width:2px!important;
  border-radius:999px!important;margin:0!important;transform:none!important;
  transition:height .18s ease,background-color .22s ease,color .22s ease!important;
}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle] .dx-sound-word,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle] .dx-sound-state,
html body.denlyx-atmosphere-theme .dx-v1865-compact-sound[data-dx-v1929-canonical="true"] .dx-v1929-word,
html body.denlyx-atmosphere-theme .dx-v1865-compact-sound[data-dx-v1929-canonical="true"] .dx-v1929-state{
  box-sizing:border-box!important;position:absolute!important;display:flex!important;align-items:center!important;justify-content:center!important;
  top:50%!important;right:auto!important;bottom:auto!important;width:auto!important;min-width:0!important;height:auto!important;
  margin:0!important;padding:0!important;line-height:1!important;white-space:nowrap!important;text-align:center!important;
  transform:translate3d(-50%,-50%,0)!important;pointer-events:none!important;
  transition:left .42s cubic-bezier(.22,.80,.22,1),opacity .24s ease,color .24s ease!important;
  will-change:left,opacity!important;
}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle] .dx-sound-word,
html body.denlyx-atmosphere-theme .dx-v1865-compact-sound[data-dx-v1929-canonical="true"] .dx-v1929-word{
  font-size:10px!important;font-weight:750!important;letter-spacing:.10em!important;text-transform:uppercase!important;
}
html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle] .dx-sound-state,
html body.denlyx-atmosphere-theme .dx-v1865-compact-sound[data-dx-v1929-canonical="true"] .dx-v1929-state{
  font-size:10px!important;font-weight:800!important;letter-spacing:.10em!important;text-transform:uppercase!important;
}

/* ON state: SOUND then ON. */
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle] .dx-sound-word,
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound[data-dx-v1929-canonical="true"] .dx-v1929-word{left:72px!important;opacity:1!important}
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle] .dx-sound-on,
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound[data-dx-v1929-canonical="true"] .dx-v1929-on{left:123px!important;opacity:1!important;visibility:visible!important;color:#42e1af!important;-webkit-text-fill-color:#42e1af!important}
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle] .dx-sound-off,
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound[data-dx-v1929-canonical="true"] .dx-v1929-off{left:48px!important;opacity:0!important;visibility:visible!important}

/* OFF state: OFF then SOUND. This exactly mirrors the accepted main-header
   choreography and is now also used by the compact/scrolled control. */
html[data-dx-audio-state="off"] body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle] .dx-sound-off,
html[data-dx-audio-state="off"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound[data-dx-v1929-canonical="true"] .dx-v1929-off{left:50px!important;opacity:1!important;visibility:visible!important;color:#ff7479!important;-webkit-text-fill-color:#ff7479!important}
html[data-dx-audio-state="off"] body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle] .dx-sound-word,
html[data-dx-audio-state="off"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound[data-dx-v1929-canonical="true"] .dx-v1929-word{left:101px!important;opacity:1!important}
html[data-dx-audio-state="off"] body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle] .dx-sound-on,
html[data-dx-audio-state="off"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound[data-dx-v1929-canonical="true"] .dx-v1929-on{left:123px!important;opacity:0!important;visibility:visible!important}

/* One equalizer vocabulary for source + compact. */
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle] .atmo-sound-bars i,
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound[data-dx-v1929-canonical="true"] .dx-v1929-bars i{
  background:#42e1af!important;color:#42e1af!important;
}
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle] .atmo-sound-bars i:nth-child(1),
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound[data-dx-v1929-canonical="true"] .dx-v1929-bars i:nth-child(1){animation:dxV1928EqOne .78s ease-in-out infinite!important}
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle] .atmo-sound-bars i:nth-child(2),
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound[data-dx-v1929-canonical="true"] .dx-v1929-bars i:nth-child(2){animation:dxV1928EqTwo .66s ease-in-out -.18s infinite!important}
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle] .atmo-sound-bars i:nth-child(3),
html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound[data-dx-v1929-canonical="true"] .dx-v1929-bars i:nth-child(3){animation:dxV1928EqThree .86s ease-in-out -.31s infinite!important}
html[data-dx-audio-state="off"] body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle] .atmo-sound-bars i,
html[data-dx-audio-state="off"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound[data-dx-v1929-canonical="true"] .dx-v1929-bars i{
  height:3px!important;background:#ff7479!important;color:#ff7479!important;animation:none!important;
}

/* Old compact state placeholder is not part of the v1929 canonical renderer. */
html body.denlyx-atmosphere-theme .dx-v1865-compact-sound[data-dx-v1929-canonical="true"] .dx-v1865-state{display:none!important}

@media(prefers-reduced-motion:reduce){
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-dx-v1929-owned="true"]{transition:opacity .18s ease!important}
  html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle] .atmo-sound-bars i,
  html[data-dx-audio-state="on"] body.denlyx-atmosphere-theme .dx-v1865-compact-sound[data-dx-v1929-canonical="true"] .dx-v1929-bars i{animation:none!important;height:10px!important}
}

/* source: denlyx-v1930-production.css */
/*
 * DENLYX PLATFORM PRODUCTION v1.0.30 CLEAN
 * First-frame audio-prompt readiness + equal compact MENU/SOUND geometry.
 */

/* Prevent the audio gate from painting in an inherited/legacy location before
   the v1.0.29 trajectory owner has calculated its first real position. */
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate:not([data-dx-v1930-ready="true"]){
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-dx-v1930-ready="true"]{
  visibility:visible!important;
}

/* Small-desktop and scrolled/compact header: MENU and SOUND are one control
   family. They must have identical outer geometry. */
@media (min-width:981px){
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle[data-sound-toggle],
  html body.denlyx-atmosphere-theme header.atmo-header .dx-command-toggle,
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle]{
    box-sizing:border-box!important;
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
    border-radius:999px!important;
  }
}

/* The command-menu button only replaces full navigation in this range, so
   match it exactly to the canonical 142px SOUND capsule here. */
@media (min-width:981px) and (max-width:1366px){
  html body.denlyx-atmosphere-theme header.atmo-header .dx-command-toggle,
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-sound-toggle[data-sound-toggle]{
    flex:0 0 142px!important;
    width:142px!important;
    min-width:142px!important;
    max-width:142px!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .dx-command-toggle{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0 16px!important;
  }
}

/* If the desktop header has entered its compact state outside the small-desktop
   breakpoint, preserve the same 142x46 pair rather than allowing old widths to
   reappear. */
@media (min-width:1367px){
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .dx-command-toggle,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-compact .atmo-sound-toggle[data-sound-toggle]{
    flex:0 0 142px!important;
    width:142px!important;
    min-width:142px!important;
    max-width:142px!important;
  }
}

/* source: denlyx-v1931-production.css */
/*
 * DENLYX PLATFORM PRODUCTION v1.0.31 CLEAN
 * Final audio-prompt first position + real compact MENU/SOUND geometry owner.
 */

/* Keep the audio prompt hidden until the v1.0.31 owner has replaced the legacy
   center-screen intro coordinates with the accepted lower-center home point. */
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate:not([data-dx-v1931-ready="true"]){
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-dx-v1931-ready="true"]{
  visibility:visible!important;
}

/* The compact controls are rendered directly under body, not inside the header.
   These are the actual live DOM buttons and therefore own final geometry. */
@media (min-width:981px){
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls .dx-v1865-compact-menu,
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls .dx-v1865-compact-sound{
    box-sizing:border-box!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 142px!important;
    width:142px!important;
    min-width:142px!important;
    max-width:142px!important;
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
    margin:0!important;
    border-width:2px!important;
    border-radius:999px!important;
    vertical-align:middle!important;
  }
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls .dx-v1865-compact-menu{
    padding:0 16px!important;
  }
  html body.denlyx-atmosphere-theme .dx-v1865-compact-controls .dx-v1865-compact-sound[data-dx-v1929-canonical="true"]{
    padding:0!important;
  }
}

/* source: denlyx-v1932-production.css */
/*
 * DENLYX PLATFORM PRODUCTION v1.0.32 CLEAN
 * Semantic heading wrapping: keep sentence-level ideas together, then fit the
 * heading to the available viewport instead of creating awkward orphaned words.
 */

html body [data-dx-semantic-heading-source]{
  max-width:100%!important;
  min-width:0!important;
  overflow:visible!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  text-wrap:initial!important;
}

html body [data-dx-semantic-heading-source] .dx-semantic-line{
  display:block!important;
  width:max-content;
  max-width:100%;
  white-space:nowrap;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}

/* CJK text can wrap naturally inside one semantic phrase when the phrase is
   wider than the viewport. Other languages remain sentence-safe by default. */
html body[data-dx-language="ja"] [data-dx-semantic-heading-source] .dx-semantic-line,
html body[data-dx-language="zh-CN"] [data-dx-semantic-heading-source] .dx-semantic-line{
  width:auto;
  white-space:normal;
  line-break:strict;
  word-break:normal!important;
  overflow-wrap:normal!important;
}

/* If a very narrow viewport cannot fit a whole semantic phrase even at the
   safe minimum font size, allow normal word wrapping inside that phrase rather
   than clipping or forcing horizontal overflow. */
html body [data-dx-semantic-heading-source].dx-semantic-can-wrap .dx-semantic-line{
  width:auto;
  white-space:normal;
  text-wrap:balance;
}

/* Preserve deliberate phrase spacing without introducing visible blank rows. */
html body [data-dx-semantic-heading-source] .dx-semantic-line + .dx-semantic-line{
  margin-top:0;
}

/* Homepage chapter headings get a slightly wider working envelope on desktop,
   which prevents sentence fragments from being pushed onto unnecessary lines. */
@media (min-width:981px){
  html body .dx11-intro-message [data-dx-semantic-heading-source]{
    max-width:min(1180px,calc(100vw - 220px))!important;
  }
  html body .dx-capabilities-hero [data-dx-semantic-heading-source],
  html body .dx-contact-hero [data-dx-semantic-heading-source]{
    max-width:min(1240px,calc(100vw - 120px))!important;
  }
}

@media (max-width:980px){
  html body [data-dx-semantic-heading-source]{
    max-width:100%!important;
  }
}

/* source: denlyx-v1934-production.css */
/*
 * DENLYX PLATFORM PRODUCTION v1.0.34 CLEAN
 * Homepage-only audio prompt retirement + operating-network header anchoring.
 */

/* ENTER WITH AUDIO keeps the accepted home position until the first scroll,
   then dissolves instead of docking or returning. */
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-dx-v1934-home="true"]{
  transition:opacity .38s ease,transform .38s cubic-bezier(.22,.8,.22,1)!important;
}
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-dx-v1934-retired="true"],
html body.denlyx-atmosphere-theme .dx-v1865-audio-gate.dx1934-fading{
  opacity:0!important;
  visibility:visible!important;
  pointer-events:none!important;
  transform:translate3d(-50%,calc(-50% + 10px),0)!important;
}

/* v1.0.48: retired v1.0.34 absolute network-header anchoring; v1.0.38 real-flow header lane is authoritative. */
@media(prefers-reduced-motion:reduce){
  html body.denlyx-atmosphere-theme .dx-v1865-audio-gate[data-dx-v1934-home="true"]{transition:opacity .18s ease!important}
}

\n/* v1.0.35 — operating network gets a real header lane above the zooming map. */
html body.dx-about-page #dx-cinematic-network .dx-wrap{
  padding-top:84px!important;
  overflow:visible!important;
}
html body.dx-about-page #dx-cinematic-network .dx-header{
  position:absolute!important;
  top:16px!important;
  left:24px!important;
  right:24px!important;
  width:auto!important;
  max-width:none!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:24px!important;
  transform:none!important;
  z-index:20!important;
  pointer-events:none!important;
}
html body.dx-about-page #dx-cinematic-network .dx-phase{
  position:absolute!important;
  top:40px!important;
  left:24px!important;
  right:auto!important;
  width:min(58%,720px)!important;
  max-width:calc(100% - 48px)!important;
  transform:none!important;
  z-index:20!important;
}
html body.dx-about-page #dx-cinematic-network .dx-kicker,
html body.dx-about-page #dx-cinematic-network .dx-status,
html body.dx-about-page #dx-cinematic-network .dx-phase{
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
html body.dx-about-page #dx-cinematic-network .dx-status{
  display:flex!important;
  justify-content:flex-end!important;
  text-align:right!important;
  max-width:44%!important;
}
html body.dx-about-page #dx-cinematic-network #dx-map{
  transform-origin:50% 0!important;
}
@media(max-width:760px){
  html body.dx-about-page #dx-cinematic-network .dx-wrap{padding-top:104px!important}
  html body.dx-about-page #dx-cinematic-network .dx-header{
    top:14px!important;left:14px!important;right:14px!important;
    display:grid!important;grid-template-columns:1fr!important;gap:5px!important;
  }
  html body.dx-about-page #dx-cinematic-network .dx-status{
    display:flex!important;justify-content:flex-start!important;text-align:left!important;max-width:100%!important;
    font-size:clamp(7px,2.1vw,9px)!important;
  }
  html body.dx-about-page #dx-cinematic-network .dx-kicker{font-size:clamp(7px,2.1vw,9px)!important}
  html body.dx-about-page #dx-cinematic-network .dx-phase{
    top:67px!important;left:14px!important;width:calc(100% - 28px)!important;max-width:none!important;
    font-size:clamp(7px,2.1vw,9px)!important;
  }
}


/* v1.0.36 — structural operating-network header lane + non-disappearing command wordmark. */
html body.dx-about-page #dx-cinematic-network .dx-wrap[data-dx-network-structure="flow"]{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;
  padding-top:0!important;overflow:visible!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-header-lane{
  position:relative!important;z-index:30!important;flex:0 0 auto!important;
  width:100%!important;padding:clamp(12px,1.4vw,20px) clamp(14px,2vw,28px) clamp(16px,2vw,28px)!important;
  pointer-events:none!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-header{
  position:relative!important;inset:auto!important;top:auto!important;left:auto!important;right:auto!important;
  width:100%!important;max-width:none!important;display:flex!important;align-items:flex-start!important;
  justify-content:space-between!important;gap:clamp(18px,3vw,52px)!important;transform:none!important;z-index:auto!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-header-copy{
  min-width:0!important;max-width:62%!important;display:grid!important;gap:5px!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-kicker,
html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-status,
html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-phase{
  position:relative!important;inset:auto!important;top:auto!important;left:auto!important;right:auto!important;
  width:auto!important;max-width:100%!important;margin:0!important;transform:none!important;
  white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;line-height:1.3!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-phase{color:var(--viz-accent)!important}
html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-status{
  flex:0 1 42%!important;justify-content:flex-end!important;text-align:right!important;align-items:center!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-map-stage{
  position:relative!important;z-index:2!important;flex:0 0 auto!important;width:100%!important;overflow:visible!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-map-stage #dx-map{
  display:block!important;margin-top:0!important;
}
html body.dx-about-page #dx-cinematic-network .dx-info{
  position:relative!important;inset:auto!important;z-index:7!important;flex:0 0 auto!important;
}
@media(max-width:760px){
  html body.dx-about-page #dx-cinematic-network .dx-network-header-lane{padding:12px 14px 18px!important}
  html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-header{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}
  html body.dx-about-page #dx-cinematic-network .dx-network-header-copy{max-width:100%!important}
  html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-status{max-width:100%!important;justify-content:flex-start!important;text-align:left!important;font-size:clamp(7px,2.1vw,9px)!important}
  html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-kicker,
  html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-phase{font-size:clamp(7px,2.1vw,9px)!important}
}

@keyframes dx1936CommandBrandSweep{
  0%{background-position:0% 50%}
  100%{background-position:200% 50%}
}
html body.denlyx-atmosphere-theme .dx-command-menu .dx-command-brand,
html body.denlyx-atmosphere-theme .dx-command-menu.is-open .dx-command-brand{
  color:transparent!important;-webkit-text-fill-color:transparent!important;
  background-image:linear-gradient(90deg,#188fda 0%,#188fda 30%,#62c9e6 43%,#ffffff 50%,#62c9e6 57%,#188fda 70%,#188fda 100%)!important;
  background-size:200% 100%!important;background-repeat:repeat-x!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  -webkit-text-stroke:.28px color-mix(in srgb,#173b4b 58%,transparent)!important;
  text-shadow:0 0 1px color-mix(in srgb,#173b4b 24%,transparent)!important;
  opacity:1!important;visibility:visible!important;filter:none!important;
  animation:dx1936CommandBrandSweep 5.6s linear infinite!important;
}
@media(prefers-reduced-motion:reduce){
  html body.denlyx-atmosphere-theme .dx-command-menu .dx-command-brand,
  html body.denlyx-atmosphere-theme .dx-command-menu.is-open .dx-command-brand{animation:none!important;background-position:38% 50%!important}
}

/* ==========================================================================
   v1.0.37 — FINAL MIDNIGHT NETWORK FLOW + COMMAND BRAND HIGHLIGHT
   The map zoom must consume real layout height. Its top edge never moves into
   the network header; all expansion is reserved downward in the map stage.
   ========================================================================== */
html body.dx-about-page #dx-cinematic-network .dx-wrap[data-dx-network-structure="flow"]{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  overflow:visible!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-header-lane{
  position:relative!important;
  z-index:30!important;
  flex:0 0 auto!important;
  width:100%!important;
  padding:clamp(14px,1.45vw,22px) clamp(14px,2vw,28px) 0!important;
  margin:0!important;
  pointer-events:none!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-header{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:clamp(18px,3vw,52px)!important;
  transform:none!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-header-copy{
  min-width:0!important;
  max-width:62%!important;
  display:grid!important;
  gap:5px!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-kicker,
html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-phase,
html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-status{
  position:relative!important;
  inset:auto!important;
  width:auto!important;
  max-width:100%!important;
  margin:0!important;
  transform:none!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  line-height:1.3!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-phase{
  color:var(--viz-accent)!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-status{
  flex:0 1 42%!important;
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  text-align:right!important;
}
/* The safe gap is deliberately independent of SVG content/zoom. */
html body.dx-about-page #dx-cinematic-network .dx-network-map-stage{
  position:relative!important;
  z-index:2!important;
  flex:0 0 auto!important;
  width:100%!important;
  height:var(--dx1937-tree-stage-height,auto)!important;
  min-height:var(--dx1937-tree-base-height,0px)!important;
  margin-top:clamp(44px,3vw,60px)!important;
  overflow:visible!important;
  transition:height .10s linear!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-map-stage #dx-map{
  position:relative!important;
  display:block!important;
  width:100%!important;
  margin:0!important;
  transform:translate3d(var(--dx1926-tree-x,0px),0,0) scale(var(--dx1926-tree-scale,1))!important;
  transform-origin:50% 0!important;
  transform-box:border-box!important;
  will-change:transform!important;
}
html body.dx-about-page #dx-cinematic-network .dx-info{
  position:relative!important;
  inset:auto!important;
  z-index:7!important;
  flex:0 0 auto!important;
  margin:clamp(26px,2.3vw,38px) 18px 18px!important;
  clear:both!important;
}
@media(max-width:760px){
  html body.dx-about-page #dx-cinematic-network .dx-network-header-lane{
    padding:12px 14px 0!important;
  }
  html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-header{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
  }
  html body.dx-about-page #dx-cinematic-network .dx-network-header-copy{max-width:100%!important;}
  html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-status{
    max-width:100%!important;
    justify-content:flex-start!important;
    text-align:left!important;
  }
  html body.dx-about-page #dx-cinematic-network .dx-network-map-stage{
    margin-top:44px!important;
  }
  html body.dx-about-page #dx-cinematic-network .dx-info{
    margin:24px 10px 10px!important;
  }
}
@media(prefers-reduced-motion:reduce){
  html body.dx-about-page #dx-cinematic-network .dx-network-map-stage{transition:none!important;}
}

/* MENU wordmark: permanent blue text is the base layer. A separate pseudo
   layer carries only the white highlight, so DENLYX can never disappear. */
@keyframes dx1937CommandBrandHighlight{
  0%{background-position:-180% 50%}
  100%{background-position:180% 50%}
}
html body.denlyx-atmosphere-theme .dx-command-menu .dx-command-brand,
html body.denlyx-atmosphere-theme .dx-command-menu.is-open .dx-command-brand{
  position:relative!important;
  display:inline-block!important;
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  background:none!important;
  background-image:none!important;
  -webkit-background-clip:border-box!important;
  background-clip:border-box!important;
  -webkit-text-stroke:0!important;
  text-shadow:none!important;
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
  animation:none!important;
}
html body.denlyx-atmosphere-theme .dx-command-menu .dx-command-brand::after,
html body.denlyx-atmosphere-theme .dx-command-menu.is-open .dx-command-brand::after{
  content:"DENLYX"!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  background:linear-gradient(90deg,transparent 0%,transparent 43%,rgba(255,255,255,.26) 47%,#fff 50%,rgba(255,255,255,.38) 53%,transparent 57%,transparent 100%) no-repeat!important;
  background-size:300% 100%!important;
  background-position:-180% 50%;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  opacity:1!important;
  animation:dx1937CommandBrandHighlight 5.4s linear infinite!important;
}
@media(prefers-reduced-motion:reduce){
  html body.denlyx-atmosphere-theme .dx-command-menu .dx-command-brand::after,
  html body.denlyx-atmosphere-theme .dx-command-menu.is-open .dx-command-brand::after{
    display:none!important;
    animation:none!important;
  }
}


/* ==========================================================================\n   v1.0.38 — REAL-FLOW OPERATIONS TREE + FIRST-PAINT MENU GUARD\n   The SVG now zooms by changing its real rendered width, not by CSS transform.\n   Its height therefore participates in normal document flow and the detail card\n   can never occupy the same vertical space as the tree.\n   ========================================================================== */
html body.dx-about-page #dx-cinematic-network .dx-wrap[data-dx-network-structure="flow"]{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  overflow:visible!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-header-lane{
  position:relative!important;
  z-index:20!important;
  flex:0 0 auto!important;
  width:100%!important;
  margin:0!important;
  padding:clamp(14px,1.45vw,22px) clamp(14px,2vw,28px) clamp(24px,2.5vw,38px)!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-header{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:clamp(20px,3vw,54px)!important;
  margin:0!important;
  transform:none!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-header-copy{
  min-width:0!important;
  max-width:62%!important;
  display:grid!important;
  gap:5px!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-kicker,
html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-phase,
html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-status{
  position:relative!important;
  inset:auto!important;
  width:auto!important;
  max-width:100%!important;
  margin:0!important;
  transform:none!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  line-height:1.3!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-status{
  flex:0 1 42%!important;
  justify-content:flex-end!important;
  text-align:right!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-map-stage{
  position:relative!important;
  z-index:2!important;
  display:block!important;
  flex:0 0 auto!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin-top:clamp(72px,5vw,104px)!important;
  overflow:visible!important;
  transition:none!important;
}
html body.dx-about-page #dx-cinematic-network .dx-network-map-stage #dx-map{
  position:relative!important;
  display:block!important;
  box-sizing:border-box!important;
  width:var(--dx1938-tree-width,100%)!important;
  max-width:none!important;
  height:auto!important;
  min-height:0!important;
  margin:0 0 0 var(--dx1938-tree-left,0px)!important;
  transform:none!important;
  translate:none!important;
  scale:none!important;
  transform-origin:50% 0!important;
  will-change:width,margin-left!important;
}
html body.dx-about-page #dx-cinematic-network .dx-info,
html body.dx-about-page #dx-cinematic-network .dx-info.is-visible{
  position:relative!important;
  inset:auto!important;
  z-index:7!important;
  display:block!important;
  flex:0 0 auto!important;
  clear:both!important;
  margin:clamp(32px,2.7vw,46px) 18px 18px!important;
  transform:none!important;
}
@media(max-width:900px){
  html body.dx-about-page #dx-cinematic-network .dx-network-map-stage{margin-top:44px!important;}
  html body.dx-about-page #dx-cinematic-network .dx-network-map-stage #dx-map{
    width:100%!important;margin-left:0!important;will-change:auto!important;
  }
}
@media(max-width:760px){
  html body.dx-about-page #dx-cinematic-network .dx-network-header-lane{padding:12px 14px 0!important;}
  html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-header{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;}
  html body.dx-about-page #dx-cinematic-network .dx-network-header-copy{max-width:100%!important;}
  html body.dx-about-page #dx-cinematic-network .dx-network-header-lane .dx-status{max-width:100%!important;justify-content:flex-start!important;text-align:left!important;}
  html body.dx-about-page #dx-cinematic-network .dx-info,
  html body.dx-about-page #dx-cinematic-network .dx-info.is-visible{margin:28px 10px 10px!important;}
}

/* Closed command menu must never paint during first-load stylesheet/JS handoff. */
html body .dx-command-menu:not(.is-open),
html body .dx-command-menu[aria-hidden="true"]:not(.is-open){
  display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;
}
html body .dx-command-menu.is-open[aria-hidden="false"]{
  display:grid!important;visibility:visible!important;opacity:1!important;
}

/* ==========================================================================
   v1.0.44 — RESET FROM v1.0.38 MIDNIGHT
   Confirmed recovery-only presentation rules. No post-.38 runtime imported.
   ========================================================================== */

/* Home: the fixed nine-stop rail owns its own physical lane. The copy is
   explicitly placed in grid column 2 and centered inside the remaining stage. */
@media (min-width:981px){
  html body.dx-home-page .dx11-intro-layout{
    --dx1048-rail-lane:clamp(118px,8vw,156px);
    grid-template-columns:var(--dx1048-rail-lane) minmax(0,1fr)!important;
  }
  html body.dx-home-page .dx11-intro-copy{
    grid-column:2!important;
    min-width:0!important;
    width:100%!important;
    max-width:none!important;
    padding-left:clamp(26px,2.8vw,52px)!important;
    padding-right:clamp(42px,4.5vw,82px)!important;
    justify-content:center!important;
  }
  html body.dx-home-page .dx11-intro-message{
    left:0!important;
    right:0!important;
    width:min(100%,1040px)!important;
    max-width:1040px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  html body.dx-home-page .dx11-intro-message h1,
  html body.dx-home-page .dx11-intro-message h2{
    width:100%!important;
    max-width:100%!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
    text-wrap:balance!important;
  }
  html body.dx-home-page .dx11-intro-message h1{font-size:clamp(44px,4.7vw,88px)!important;line-height:.98!important;letter-spacing:-.052em!important;}
  html body.dx-home-page .dx11-intro-message h2{font-size:clamp(42px,4.45vw,82px)!important;line-height:.99!important;letter-spacing:-.048em!important;}
  html body.dx-home-page .dx11-intro-disclaimer{
    left:calc(var(--dx1048-rail-lane) + clamp(26px,2.8vw,52px))!important;
    max-width:calc(100% - var(--dx1048-rail-lane) - 120px)!important;
  }
}
@media (min-width:981px) and (max-width:1366px){
  html body.dx-home-page .dx11-intro-copy{padding-left:30px!important;padding-right:48px!important;}
  html body.dx-home-page .dx11-intro-message{width:min(100%,930px)!important;max-width:930px!important;}
  html body.dx-home-page .dx11-intro-message h1{font-size:clamp(48px,4.55vw,64px)!important;}
  html body.dx-home-page .dx11-intro-message h2{font-size:clamp(45px,4.25vw,60px)!important;}
}

/* Home cinematic chapter handoff: real images only; no fog layer or text blur. */
html body.dx-home-page .dx11-intro-fog{display:none!important;}
html body.dx-home-page .dx11-intro-message,
html body.dx-home-page .dx11-intro-message.is-active{filter:none!important;}

/* Canonical mobile menu: one bottom Contact Form entry, routed to the existing modal. */
html body .dx-v1044-mobile-contact-form{display:none!important;}
@media (max-width:980px){
  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav .dx-v1044-mobile-contact-form,
  html body.denlyx-atmosphere-theme.menu-open header.atmo-header nav#denlyx-primary-navigation.atmo-nav.open .dx-v1044-mobile-contact-form{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 auto!important;
    width:100%!important;
    min-height:54px!important;
    margin:14px 0 4px!important;
    padding:0 18px!important;
    border:1px solid #173b4b!important;
    border-radius:999px!important;
    background:#173b4b!important;
    background-image:none!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    font-size:11px!important;
    font-weight:800!important;
    line-height:1.1!important;
    letter-spacing:.13em!important;
    text-align:center!important;
    text-indent:0!important;
    text-transform:uppercase!important;
    text-shadow:none!important;
    opacity:1!important;
    visibility:visible!important;
    white-space:normal!important;
    overflow:visible!important;
    word-break:normal!important;
    text-decoration:none!important;
    box-shadow:none!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav .dx-v1044-mobile-contact-form:hover,
  html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav .dx-v1044-mobile-contact-form:focus-visible{
    background:#204f63!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    outline:2px solid rgba(23,59,75,.24)!important;
    outline-offset:2px!important;
  }
}

/* v1.0.49 — Capabilities: safe sticky top. No viewport-center transform.
   The copy stays below the header while the card stack scrolls and releases
   naturally at the end of its grid column. */
@media (min-width:1181px){
  html body.dx-capabilities-page .dx-capabilities-layout{
    grid-template-columns:minmax(455px,.92fr) minmax(0,1.08fr)!important;
    gap:clamp(52px,4.6vw,78px)!important;
    align-items:start!important;
  }
  html body.dx-capabilities-page .dx-capabilities-head{
    position:sticky!important;
    top:clamp(118px,10vh,148px)!important;
    transform:none!important;
    translate:none!important;
    align-self:start!important;
    width:100%!important;
    max-width:610px!important;
    overflow:visible!important;
  }
  html body.dx-capabilities-page .dx-capabilities-head h2{
    font-size:clamp(44px,3.7vw,62px)!important;
    line-height:1.01!important;
    letter-spacing:-.043em!important;
    text-wrap:normal!important;
    max-width:610px!important;
  }
  html body.dx-capabilities-page .dx-capabilities-head h2>span{
    display:block!important;
    white-space:nowrap!important;
  }
  html body.dx-capabilities-page .dx-capabilities-head p{
    max-width:570px!important;
  }
}
@media (min-width:1181px) and (max-height:720px){
  html body.dx-capabilities-page .dx-capabilities-head{top:104px!important;}
}
@media (max-width:1180px){
  html body.dx-capabilities-page .dx-capabilities-head{position:relative!important;top:auto!important;transform:none!important;translate:none!important;}
  html body.dx-capabilities-page .dx-capabilities-head h2>span{white-space:normal!important;}
}


/* ==========================================================================
   v1.0.50 — MOBILE QUICK REQUEST + CONTACT SCROLL-CUE CLEANUP
   ========================================================================== */

/* Contact page mobile already has START A REQUEST, which scrolls to #quote-form.
   Remove the redundant generic scroll cue only on this route so it cannot
   overlap the form CTA. Desktop and every other route keep their scroll cue. */
@media (max-width:980px){
  html body.dx-contact-page .dx-scroll-invitation,
  html body.dx-contact-page .atmo-scroll-cue{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }
}


/* ========================================================================== 
   v1.0.51 — MOBILE ENTER WITH AUDIO WIDTH OWNER
   High-specificity final mobile geometry only. Desktop remains untouched.
   ========================================================================== */
@media (max-width:980px){
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate],
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate].is-visible{
    box-sizing:border-box!important;
    display:block!important;
    width:calc(100vw - 16px)!important;
    max-width:430px!important;
    min-width:0!important;
    min-height:76px!important;
    height:auto!important;
    padding:0!important;
    overflow:hidden!important;
    border-radius:999px!important;
  }
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate] .dx-v1865-audio-enable,
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate].is-visible .dx-v1865-audio-enable{
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:24px minmax(0,1fr)!important;
    align-items:center!important;
    column-gap:12px!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    min-height:76px!important;
    margin:0!important;
    padding:12px 52px 12px 18px!important;
    overflow:visible!important;
  }
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate] .dx-v1865-audio-bars{
    width:24px!important;
    min-width:24px!important;
    max-width:24px!important;
    justify-self:start!important;
  }
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate] .dx-v1865-audio-copy,
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate].is-visible .dx-v1865-audio-copy{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:4px!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    overflow:visible!important;
  }
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate] .dx-v1865-audio-copy>b,
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate].is-visible .dx-v1865-audio-copy>b{
    display:block!important;
    width:auto!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    overflow:visible!important;
    white-space:nowrap!important;
    text-overflow:clip!important;
    font-size:11px!important;
    line-height:1.12!important;
    letter-spacing:.11em!important;
  }
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate] .dx-v1865-audio-copy>small,
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate].is-visible .dx-v1865-audio-copy>small{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    overflow:visible!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    font-size:9.5px!important;
    line-height:1.28!important;
  }
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate] .dx-v1865-audio-close,
  html body.denlyx-atmosphere-theme div.dx-v1865-audio-gate[data-dx-v1865-audio-gate].is-visible .dx-v1865-audio-close{
    position:absolute!important;
    right:10px!important;
    top:50%!important;
    left:auto!important;
    bottom:auto!important;
    width:36px!important;
    min-width:36px!important;
    height:36px!important;
    min-height:36px!important;
    margin:0!important;
    padding:0!important;
    transform:translateY(-50%)!important;
    border:0!important;
    border-left:0!important;
    border-radius:50%!important;
    z-index:5!important;
  }
}

/* ========================================================================== 
   DENLYX PLATFORM v1.0.68 — RESPONSIVE / SCROLL POLISH FINAL OWNER
   ========================================================================== */

/* 1) Small-desktop/iPad MENU: text only, perfectly centered. Retire every
      decorative bar/icon from the command button while keeping its accepted
      capsule geometry and menu behavior. */
@media (min-width:981px){
  html body.denlyx-atmosphere-theme header.atmo-header .dx-command-toggle{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:0!important;
    text-align:center!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .dx-command-toggle>i,
  html body.denlyx-atmosphere-theme header.atmo-header .dx-command-toggle .dx-v1858-menu-icon,
  html body.denlyx-atmosphere-theme header.atmo-header .dx-command-toggle .dx-v1858-menu-icon i{
    display:none!important;
    width:0!important;
    min-width:0!important;
    height:0!important;
    margin:0!important;
    padding:0!important;
    opacity:0!important;
    visibility:hidden!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .dx-command-toggle>span{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    text-align:center!important;
    transform:none!important;
  }
}

/* 2) Company grids: incomplete last rows are centered automatically. This is
      content-count agnostic: adding or removing companies does not require a
      nth-child rule. */
html body .dx-directory-grid,
html body .dx11-company-grid{
  --dx1068-company-gap:clamp(16px,1.55vw,26px);
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  align-items:stretch!important;
  gap:var(--dx1068-company-gap)!important;
  grid-template-columns:none!important;
}
html body .dx-directory-grid>.dx-directory-card,
html body .dx11-company-grid>.dx11-company-card{
  box-sizing:border-box!important;
  flex:0 1 calc(20% - clamp(12.8px,1.24vw,20.8px))!important;
  width:auto!important;
  min-width:0!important;
}
@media (max-width:1320px){
  html body .dx-directory-grid>.dx-directory-card,
  html body .dx11-company-grid>.dx11-company-card{
    flex-basis:calc(33.333333% - clamp(10.67px,1.033vw,17.33px))!important;
  }
}
@media (max-width:900px){
  html body .dx-directory-grid>.dx-directory-card,
  html body .dx11-company-grid>.dx11-company-card{
    flex-basis:calc(50% - clamp(8px,.775vw,13px))!important;
  }
}
@media (max-width:680px){
  html body .dx-directory-grid,
  html body .dx11-company-grid{gap:14px!important;}
  html body .dx-directory-grid>.dx-directory-card,
  html body .dx11-company-grid>.dx11-company-card{
    flex:0 0 100%!important;
    width:100%!important;
  }
}

/* 3) Language control: never collapses into a circle or disappears when the
      responsive header crosses the mobile/tablet breakpoint. Keep a compact
      capsule with a stable flex basis, including the scrolled mobile state. */
@media (max-width:980px){
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-control,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-mobile-scrolled .atmo-language-control{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    flex:0 0 60px!important;
    width:60px!important;
    min-width:60px!important;
    max-width:60px!important;
    height:44px!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-mobile-scrolled .atmo-language-trigger{
    box-sizing:border-box!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    width:60px!important;
    min-width:60px!important;
    max-width:60px!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    padding:0 9px!important;
    border-radius:999px!important;
    opacity:1!important;
    visibility:visible!important;
    overflow:hidden!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header.dx-mobile-scrolled .atmo-language-popup{
    display:grid!important;
  }
}
@media (max-width:430px){
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-control,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-mobile-scrolled .atmo-language-control,
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-mobile-scrolled .atmo-language-trigger{
    flex-basis:56px!important;
    width:56px!important;
    min-width:56px!important;
    max-width:56px!important;
  }
}

/* 4) Retire the legacy one-shot Companies blur owner. It could initialize at
      mobile width, then become active after zoom/rotation without ever getting
      its IntersectionObserver clear class. The section is always crisp now. */
html body.home .dx11-companies>.dx11-container,
html body.dx-home-page .dx11-companies>.dx11-container,
html body.home .dx11-companies.dx-v1859-clear>.dx11-container,
html body.dx-home-page .dx11-companies.dx-v1859-clear>.dx11-container{
  opacity:1!important;
  filter:none!important;
  transform:none!important;
  transition:none!important;
  will-change:auto!important;
}

/* 5) WHY -> final CTA handoff. The incoming section is an opaque scene above
      the outgoing sticky scene; the outgoing scene blurs/fades while the new
      scene sharpens. This prevents cards/text from visually bleeding into the
      next chapter during the sticky release. */
html body.dx-home-page #why-denlyx{
  position:relative!important;
  z-index:4!important;
  isolation:isolate!important;
}
html body.dx-home-page #why-denlyx .dx11-value-sticky{
  opacity:var(--dx1068-value-opacity,1)!important;
  filter:blur(var(--dx1068-value-blur,0px))!important;
  transform:translate3d(0,var(--dx1068-value-shift,0px),0)!important;
  transition:filter .08s linear,opacity .08s linear,transform .08s linear!important;
  will-change:filter,opacity,transform!important;
}
html body.dx-home-page .dx11-cta{
  position:relative!important;
  z-index:7!important;
  isolation:isolate!important;
  overflow:hidden!important;
  background:#071d29!important;
}
html body.dx-home-page .dx11-cta .dx11-cta-media,
html body.dx-home-page .dx11-cta .dx11-cta-inner{
  opacity:var(--dx1068-cta-opacity,1)!important;
  filter:blur(var(--dx1068-cta-blur,0px))!important;
  transition:filter .08s linear,opacity .08s linear!important;
  will-change:filter,opacity!important;
}
html body.dx-home-page .dx11-cta[data-dx1068-in-view="false"] .dx11-cta-media,
html body.dx-home-page .dx11-cta[data-dx1068-in-view="false"] .dx11-cta-inner{
  opacity:1!important;
  filter:none!important;
}
@media (prefers-reduced-motion:reduce){
  html body.dx-home-page #why-denlyx .dx11-value-sticky,
  html body.dx-home-page .dx11-cta .dx11-cta-media,
  html body.dx-home-page .dx11-cta .dx11-cta-inner{
    opacity:1!important;
    filter:none!important;
    transform:none!important;
    transition:none!important;
  }
}

/* v1.0.68 small-desktop language visibility lock. */
@media (min-width:981px) and (max-width:1366px){
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-control{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    flex:0 0 64px!important;
    width:64px!important;
    min-width:64px!important;
    max-width:64px!important;
    overflow:visible!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger{
    display:inline-flex!important;
    visibility:visible!important;
    opacity:1!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 64px!important;
    width:64px!important;
    min-width:64px!important;
    max-width:64px!important;
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
    padding:0 10px!important;
    border-radius:999px!important;
  }
}


/* ==========================================================================
   DENLYX PLATFORM v1.0.69 — ADAPTIVE HEADER FINAL OWNER
   ========================================================================== */

/* Header chrome is always surface-less. Individual controls keep their own
   outlines; no white/opaque rectangle may appear after scroll, zoom or tone
   changes. Mobile navigation keeps its panel only while it is actually open. */
html body.denlyx-atmosphere-theme header.atmo-header,
html body.denlyx-atmosphere-theme header.atmo-header.scrolled,
html body.denlyx-atmosphere-theme header.atmo-header.dx-compact,
html body.denlyx-atmosphere-theme header.atmo-header.dx-expanded,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border-color:transparent!important;
  box-shadow:none!important;
  filter:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
html body.denlyx-atmosphere-theme header.atmo-header::before,
html body.denlyx-atmosphere-theme header.atmo-header::after,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner::before,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-inner::after,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions::before,
html body.denlyx-atmosphere-theme header.atmo-header .atmo-header-actions::after{
  content:none!important;
  display:none!important;
}

/* If the complete top navigation is physically visible, the separate MENU
   command button is redundant. The runtime class is based on the rendered nav,
   so browser zoom/iPad viewport changes cannot show both at once. */
html body.denlyx-atmosphere-theme header.atmo-header.dx-v1069-full-nav .dx-command-toggle{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
  width:0!important;
  min-width:0!important;
  max-width:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
}
html body.denlyx-atmosphere-theme header.atmo-header.dx-v1069-full-nav nav#denlyx-primary-navigation.atmo-nav:not(.open){
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  filter:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}

/* One stable language-button geometry before and after scroll. This removes the
   circular first-paint state seen on iPad/phone and during browser zoom. */
@media (max-width:980px){
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-control,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-mobile-scrolled .atmo-language-control{
    box-sizing:border-box!important;
    display:block!important;
    flex:0 0 60px!important;
    width:60px!important;
    min-width:60px!important;
    max-width:60px!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    margin:0!important;
    padding:0!important;
    aspect-ratio:auto!important;
    overflow:visible!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-mobile-scrolled .atmo-language-trigger{
    box-sizing:border-box!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    flex:0 0 60px!important;
    width:60px!important;
    min-width:60px!important;
    max-width:60px!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    margin:0!important;
    padding:0 9px!important;
    aspect-ratio:auto!important;
    border-radius:999px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
  }
}
@media (max-width:430px){
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-control,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-mobile-scrolled .atmo-language-control,
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger,
  html body.denlyx-atmosphere-theme header.atmo-header.dx-mobile-scrolled .atmo-language-trigger{
    flex-basis:56px!important;
    width:56px!important;
    min-width:56px!important;
    max-width:56px!important;
  }
}
@media (min-width:981px) and (max-width:1366px){
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-control{
    box-sizing:border-box!important;
    flex:0 0 64px!important;
    width:64px!important;
    min-width:64px!important;
    max-width:64px!important;
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
    margin:0!important;
    padding:0!important;
    aspect-ratio:auto!important;
  }
  html body.denlyx-atmosphere-theme header.atmo-header .atmo-language-trigger{
    box-sizing:border-box!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    flex:0 0 64px!important;
    width:64px!important;
    min-width:64px!important;
    max-width:64px!important;
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
    padding:0 10px!important;
    aspect-ratio:auto!important;
    border-radius:999px!important;
    white-space:nowrap!important;
  }
}

/* Final runtime tone wins over historical tone attributes. */
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1069-tone="dark"] .atmo-brand,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1069-tone="dark"] .atmo-brand>span,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1069-tone="dark"] nav.atmo-nav .nav-link,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1069-tone="dark"] .dx-command-toggle,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1069-tone="dark"] .atmo-language-trigger,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1069-tone="dark"] .atmo-language-trigger [data-language-current],
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1069-tone="dark"] .atmo-sound-toggle .dx-sound-word,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1069-tone="dark"] .atmo-header-cta{
  color:#f7fbff!important;
  -webkit-text-fill-color:#f7fbff!important;
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1069-tone="light"] .atmo-brand,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1069-tone="light"] .atmo-brand>span,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1069-tone="light"] nav.atmo-nav .nav-link,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1069-tone="light"] .dx-command-toggle,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1069-tone="light"] .atmo-language-trigger,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1069-tone="light"] .atmo-language-trigger [data-language-current],
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1069-tone="light"] .atmo-sound-toggle .dx-sound-word,
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1069-tone="light"] .atmo-header-cta{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1069-tone="dark"] .atmo-language-chevron path{stroke:#f7fbff!important;}
html body.denlyx-atmosphere-theme header.atmo-header[data-dx-v1069-tone="light"] .atmo-language-chevron path{stroke:#173b4b!important;}

/* ==========================================================================
   DENLYX PLATFORM v1.0.72 — CANONICAL MENU CONTRAST LOCK
   The opened canonical navigation is always a light panel. Its text must never
   inherit live header tone samples or transition between white/dark while open.
   ========================================================================== */
html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav.open,
html body.denlyx-atmosphere-theme.menu-open header.atmo-header nav#denlyx-primary-navigation.atmo-nav.open{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  background:#f7f9fa!important;
  background-color:#f7f9fa!important;
  background-image:none!important;
  text-shadow:none!important;
}
html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav.open .nav-link,
html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav.open .nav-caret,
html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav.open .nav-item,
html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav.open .atmo-dropdown,
html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav.open .atmo-dropdown-title,
html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav.open .atmo-dropdown-title *,
html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav.open .atmo-dropdown a,
html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav.open .atmo-dropdown strong,
html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav.open .atmo-dropdown small{
  color:#173b4b!important;
  -webkit-text-fill-color:#173b4b!important;
  text-shadow:none!important;
  filter:none!important;
}
html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav.open .nav-link,
html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav.open .nav-link span,
html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav.open .nav-link small{
  transition-property:background,border-color,transform,padding!important;
}
html body.denlyx-atmosphere-theme header.atmo-header nav#denlyx-primary-navigation.atmo-nav.open .dx-v1044-mobile-contact-form,
html body.denlyx-atmosphere-theme.menu-open header.atmo-header nav#denlyx-primary-navigation.atmo-nav.open .dx-v1044-mobile-contact-form{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:none!important;
}
