/**
 * WA Cushion — page-loader hide lock (20260728loadgrain)
 * Must load AFTER styles.css. Earlier SEEALL / ink locks force
 * `.page-loader { opacity:1; visibility:visible }` which sticks the
 * overlay on first paint. Gate visibility on `.is-active` only.
 * Also locks visible paper/film grain on `.page-loader__noise`.
 */
.page-loader {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  background: #E5E2D9 !important;
  background-color: #E5E2D9 !important;
  background-image: linear-gradient(165deg, #E5E2D9 0%, #E0DBD1 42%, #D8D2C6 100%) !important;
  color: #1A1510 !important;
  -webkit-text-fill-color: #1A1510 !important;
}

.page-loader:not(.is-active),
.page-loader:not(.is-active) * {
  visibility: hidden !important;
  pointer-events: none !important;
}

.page-loader.is-active {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

.page-loader.is-active .page-loader__bg,
.page-loader.is-active .page-loader__wash,
.page-loader.is-active .page-loader__noise,
.page-loader.is-active .page-loader__stage,
.page-loader.is-active .page-loader__eyebrow,
.page-loader.is-active .page-loader__brand,
.page-loader.is-active .page-loader__rule,
.page-loader.is-active .page-loader__rule-track,
.page-loader.is-active .page-loader__rule-fill,
.page-loader.is-active .page-loader__tagline {
  visibility: visible !important;
  color: #1A1510 !important;
  -webkit-text-fill-color: #1A1510 !important;
}

.page-loader__bg,
.page-loader__wash,
.page-loader__field,
.page-loader__paper,
.page-loader__space {
  background: #E5E2D9 !important;
  background-color: #E5E2D9 !important;
}

.page-loader__wash {
  background-image:
    radial-gradient(ellipse 70% 55% at 50% 40%, rgba(245, 239, 228, 0.55) 0%, transparent 72%),
    linear-gradient(165deg, #E5E2D9 0%, #E0DBD1 42%, #D8D2C6 100%) !important;
}

.page-loader.is-active .page-loader__eyebrow,
.page-loader.is-active .page-loader__brand {
  opacity: 1 !important;
}

.page-loader.is-active .page-loader__tagline {
  opacity: 0.72 !important;
}

.page-loader__rule-track {
  background: rgba(26, 21, 16, 0.14) !important;
}

.page-loader__rule-fill {
  background: #1A1510 !important;
}

/* Loader paper/film grain — restored 20260729tex */
.page-loader__noise,
.page-loader.is-active .page-loader__noise {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  opacity: 0.18 !important;
  visibility: visible !important;
  pointer-events: none !important;
  background-color: transparent !important;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E") !important;
  background-size: 160px 160px !important;
  background-repeat: repeat !important;
  mix-blend-mode: multiply !important;
}

.page-loader__wash {
  background: #E5E2D9 !important;
  background-color: #E5E2D9 !important;
  background-image:
    radial-gradient(ellipse 70% 55% at 50% 40%, rgba(245, 239, 228, 0.55) 0%, transparent 72%),
    linear-gradient(165deg, #E5E2D9 0%, #E0DBD1 42%, #D8D2C6 100%) !important;
}

body.loading {
  overflow: hidden;
}

body:not(.loading) {
  overflow: visible;
}

/* =========================================================
   LANGVIS 20260728langvis — absolute last sheet override
   Cream/white on dark lang strip; beats #1A1510 ink + fill locks.
   ========================================================= */
.lang-bar,
.lang-bar a,
.lang-bar__link,
.lang-bar__link span,
.lang-bar__globe,
.lang-bar__globe svg {
  color: #F5EFE4 !important;
  -webkit-text-fill-color: #F5EFE4 !important;
  opacity: 1 !important;
  visibility: visible !important;
  text-shadow: none !important;
  filter: none !important;
}

.lang-bar__link {
  color: #F5EFE4 !important;
  -webkit-text-fill-color: #F5EFE4 !important;
  opacity: 1 !important;
}

.lang-bar__link.is-active,
.lang-bar__link.is-active span,
.lang-bar__link:hover,
.lang-bar__link:hover span,
.lang-bar__link:focus-visible,
.lang-bar__link:focus-visible span {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  opacity: 1 !important;
}

.lang-bar__link::after {
  background: #FFFFFF !important;
}

.lang-bar__link.is-active::after,
.lang-bar__link:hover::after,
.lang-bar__link:focus-visible::after {
  width: calc(100% - 1.1rem) !important;
  background: #FFFFFF !important;
  opacity: 1 !important;
}
/* end LANGVIS 20260728langvis */

/* =========================================================
   BTNFIX 20260728btnfix — cream CTAs dark ink (absolute last)
   Beats nuclear white on .btn / .hero-cta / [class*="__cta"]
   ========================================================= */
.btn--light,
a.btn--light,
button.btn--light,
.btn--light *,
.btn--ghost:not(.btn--dark),
.btn--outline:not(.btn--dark),
.dl-cta__btn,
.dl-table__dl,
.hero-cta,
a.hero-cta,
.hero-cta span,
.hero-cta *,
.hero-cta__arrow,
.page-home .hero-cta,
.page-home .hero-cta *,
.page-home a.hero-cta,
.home-hero .hero-cta,
.home-hero .hero-cta *,
.home-hero a.hero-cta {
  color: #1A1510 !important;
  -webkit-text-fill-color: #1A1510 !important;
  opacity: 1 !important;
  visibility: visible !important;
  text-shadow: none !important;
}
.hero-cta,
a.hero-cta,
.page-home .hero-cta,
.home-hero .hero-cta,
.btn--light,
a.btn--light {
  background-color: #F5EFE4 !important;
  background-image: none !important;
}
.btn--dark,
a.btn--dark,
.dl-feat-card__btn,
.home-cta__btn,
.site-cta__btn,
.contact-form__submit,
.site-footer .btn,
.site-footer .btn *,
.cta-band .btn--dark,
.hero-cta.btn--dark,
.hero-cta.btn--dark * {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}
/* end BTNFIX 20260728btnfix */
