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