/* =========================================================
   VISIBILITY FINAL 20260728btnfix — absolute EOF / last sheet
   Order: light ink → photo heroes → dark btns → cream CTAs → header
   Beats see / seeall / heroink / nuclear .btn white / layoutok
   ========================================================= */

/* A. Light page — dark ink */
body,
.section:not(.section--dark):not(.cta-band):not(.section--stats),
main p,
main h2,
main h3,
.section h2,
.section h3,
.lead,
.muted,
.block-head,
.home-section-head h2,
.pcat-head h2,
.pcat-head p {
  color: #1A1510 !important;
  -webkit-text-fill-color: #1A1510 !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.accent-glow,
.hero-line__glow {
  color: #1A1510 !important;
  -webkit-text-fill-color: #1A1510 !important;
  background-image: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  text-shadow: none !important;
}

/* B. Photo heroes — cream + veil + content above veil */
.home-hero__veil,
.page-hero__veil,
.craft-hero__veil,
.about-hero__veil,
.pcat-hero__veil,
.product-hero__veil,
.news-hero__veil,
.faq-hero__veil,
.dl-hero__veil,
.contact-hero__veil,
.pdet-hero__veil,
.hero__veil {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  pointer-events: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  background:
    linear-gradient(105deg, rgba(12, 10, 8, 0.58) 0%, rgba(12, 10, 8, 0.22) 42%, rgba(12, 10, 8, 0.12) 68%, rgba(12, 10, 8, 0.4) 100%),
    linear-gradient(180deg, rgba(12, 10, 8, 0.28) 0%, transparent 36%, rgba(12, 10, 8, 0.55) 100%) !important;
}
.home-hero,
.page-hero,
.craft-hero,
.about-hero,
.pcat-hero,
.product-hero,
.news-hero,
.faq-hero,
.dl-hero,
.contact-hero,
.pdet-hero,
.hero {
  position: relative !important;
}
.home-hero__layout,
.home-hero__copy,
.home-hero__content,
.craft-hero__content,
.about-hero__content,
.page-hero__content,
.pcat-hero__content,
.product-hero__content,
.news-hero__content,
.faq-hero__content,
.dl-hero__content,
.contact-hero__content,
.pdet-hero__content,
[class*="-hero"] .hero-content,
[class*="-hero__content"] {
  position: relative !important;
  z-index: 3 !important;
}
.page-hero::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background:
    linear-gradient(105deg, rgba(12, 10, 8, 0.55) 0%, rgba(12, 10, 8, 0.2) 45%, rgba(12, 10, 8, 0.35) 100%),
    linear-gradient(180deg, rgba(12, 10, 8, 0.25) 0%, transparent 40%, rgba(12, 10, 8, 0.5) 100%) !important;
}
.page-hero > * { position: relative !important; z-index: 1 !important; }

.hero,
.home-hero,
.page-hero,
.craft-hero,
.about-hero,
.pcat-hero,
.product-hero,
.news-hero,
.faq-hero,
.dl-hero,
.contact-hero,
.pdet-hero,
.hero-kicker,
.hero-brand,
.hero-line,
.hero-line__glow,
.hero-tagline,
.hero__eyebrow,
.hero__title,
.hero__lead,
.hero__content,
.home-hero__copy,
.home-hero__content,
.home-hero h1,
.home-hero p,
.home-hero a:not(.btn):not(.hero-cta),
.page-hero__eyebrow,
.page-hero__label,
.page-hero__title,
.page-hero__lead,
.craft-hero__eyebrow,
.craft-hero__label,
.craft-hero__title,
.craft-hero__lead,
.craft-hero__content,
.about-hero__eyebrow,
.about-hero__label,
.about-hero__title,
.about-hero__lead,
.about-hero__content,
.pcat-hero__eyebrow,
.pcat-hero__label,
.pcat-hero__title,
.pcat-hero__lead,
.product-hero__eyebrow,
.product-hero__label,
.product-hero__title,
.product-hero__lead,
.news-hero__eyebrow,
.news-hero__label,
.news-hero__title,
.news-hero__lead,
.faq-hero__eyebrow,
.faq-hero__label,
.faq-hero__title,
.faq-hero__lead,
.dl-hero__eyebrow,
.dl-hero__label,
.dl-hero__title,
.dl-hero__lead,
.contact-hero__eyebrow,
.contact-hero__label,
.contact-hero__title,
.contact-hero__lead {
  color: #F5EFE4 !important;
  -webkit-text-fill-color: #F5EFE4 !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.hero .accent-glow,
.home-hero .accent-glow,
.home-hero .hero-line__glow,
.page-hero .accent-glow,
.craft-hero .accent-glow,
.about-hero .accent-glow {
  color: #F5EFE4 !important;
  -webkit-text-fill-color: #F5EFE4 !important;
  background-image: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  text-shadow: none !important;
}

/* C. Dark chocolate buttons — white text only (NOT all .btn) */
.btn--dark,
a.btn--dark,
button.btn--dark,
a.btn.btn--dark,
.dl-feat-card__btn,
a.dl-feat-card__btn,
.page-download .dl-feat-card__btn,
.page-download a.btn.btn--dark,
.page-download a[download].btn--dark,
.contact-form__submit,
.home-cta__btn,
.site-cta__btn,
.site-footer .btn--dark,
.site-footer .btn,
.site-footer .btn *,
.cta-band .btn--dark,
.cta-band .btn--dark *,
.btn--dark span,
.btn--dark *,
a.btn--dark span,
a.btn--dark *,
.dl-feat-card__btn span,
.dl-feat-card__btn *,
.hero-cta.btn--dark,
.hero-cta.btn--dark * {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.btn--dark,
a.btn--dark,
button.btn--dark,
.dl-feat-card__btn,
a.btn.btn--dark.dl-feat-card__btn {
  background-color: #1A1510 !important;
  background-image: none !important;
  border-color: #1A1510 !important;
}
.btn--dark:hover,
a.btn--dark:hover,
.dl-feat-card__btn:hover,
.btn--dark:hover span,
.btn--dark:hover *,
.dl-feat-card__btn:hover span,
.dl-feat-card__btn:hover * {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}

/* C2. Light / cream filled CTAs — dark ink (beats nuclear white + hero cream) */
.btn--light,
a.btn--light,
button.btn--light,
.btn--light span,
.btn--light *,
.btn--ghost,
a.btn--ghost,
.btn--outline,
a.btn--outline,
.btn--ghost *,
.btn--outline *,
.dl-cta__btn,
a.dl-cta__btn,
.dl-cta__btn *,
.dl-table__dl,
a.dl-table__dl,
.dl-table__dl *,
.hero-cta,
a.hero-cta,
.hero-cta span,
.hero-cta *,
.hero-cta__arrow,
.page-home .hero-cta,
.page-home .hero-cta span,
.page-home .hero-cta *,
.page-home .hero-cta__arrow,
.home-hero .hero-cta,
.home-hero .hero-cta span,
.home-hero .hero-cta *,
.home-hero a.hero-cta,
.btn--line:not(.btn--dark),
a.btn--line:not(.btn--dark),
button.btn--line:not(.btn--dark),
.btn--line:not(.btn--dark) span,
.btn--line:not(.btn--dark) * {
  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;
  border-color: #F5EFE4 !important;
}
.hero-cta:hover,
a.hero-cta:hover,
.page-home .hero-cta:hover,
.home-hero .hero-cta:hover,
.btn--light:hover,
a.btn--light:hover,
.hero-cta:hover span,
.hero-cta:hover *,
.btn--light:hover span,
.btn--light:hover * {
  color: #1A1510 !important;
  -webkit-text-fill-color: #1A1510 !important;
  background-color: #FFFFFF !important;
}

/* Photo-hero CTAs: solid cream plate + dark ink (never transparent outline on photo) */
.home-hero .btn--line,
.page-hero .btn--line,
.craft-hero .btn--line,
.about-hero .btn--line,
.pcat-hero .btn--line,
.product-hero .btn--line,
.news-hero .btn--line,
.news-hero__cta,
a.news-hero__cta,
.faq-hero .btn--line,
.dl-hero .btn--line,
.contact-hero .btn--line,
.pdet-hero .btn--line,
.home-hero .btn--line *,
.page-hero .btn--line *,
.craft-hero .btn--line *,
.about-hero .btn--line *,
.news-hero .btn--line *,
.news-hero__cta span,
.news-hero__cta * {
  color: #1A1510 !important;
  -webkit-text-fill-color: #1A1510 !important;
  background-color: #F5EFE4 !important;
  border-color: #F5EFE4 !important;
  text-shadow: none !important;
}

/* D. Header — home idle cream; else / hover / scrolled = ink */
.site-header .logo,
.site-header .logo__mark,
.site-header .header-cats a,
.site-header .nav a,
.site-header .header-link,
.site-header .nav-toggle,
.site-header .search-btn {
  color: #1A1510 !important;
  -webkit-text-fill-color: #1A1510 !important;
}
.site-header .nav-toggle span { background: #1A1510 !important; }
.site-header .search-btn::before,
.site-header .search-btn::after {
  background: #1A1510 !important;
  border-color: #1A1510 !important;
}

/* Idle cream type ONLY when body not scrolled (never use .site-chrome:not(.is-scrolled) — chrome never gets that class) */
body:not(.is-scrolled) .site-chrome:not(:hover):not(:focus-within) .site-header .logo,
body:not(.is-scrolled) .site-chrome:not(:hover):not(:focus-within) .site-header .logo__mark,
body:not(.is-scrolled) .site-chrome:not(:hover):not(:focus-within) .site-header .header-cats a,
body:not(.is-scrolled) .site-chrome:not(:hover):not(:focus-within) .site-header .nav a,
body:not(.is-scrolled) .site-chrome:not(:hover):not(:focus-within) .site-header .header-link,
body:not(.is-scrolled) .site-chrome:not(:hover):not(:focus-within) .site-header .nav-toggle,
body:not(.is-scrolled) .site-chrome:not(:hover):not(:focus-within) .site-header .search-btn {
  color: #1A1510 !important;
  -webkit-text-fill-color: #1A1510 !important;
}
body:not(.is-scrolled) .site-chrome:not(:hover):not(:focus-within) .site-header .nav-toggle span {
  background: #1A1510 !important;
}
body:not(.is-scrolled) .site-chrome:not(:hover):not(:focus-within) .site-header .search-btn::before,
body:not(.is-scrolled) .site-chrome:not(:hover):not(:focus-within) .site-header .search-btn::after {
  background: #1A1510 !important;
  border-color: #1A1510 !important;
}

.page-home:not(.is-scrolled) .site-chrome:not(:hover):not(:focus-within) .logo,
.page-home:not(.is-scrolled) .site-chrome:not(:hover):not(:focus-within) .logo__mark,
.page-home:not(.is-scrolled) .site-chrome:not(:hover):not(:focus-within) .header-cats a,
.page-home:not(.is-scrolled) .site-chrome:not(:hover):not(:focus-within) .header-link,
.page-home:not(.is-scrolled) .site-chrome:not(:hover):not(:focus-within) .nav-toggle,
.page-home:not(.is-scrolled) .site-chrome:not(:hover):not(:focus-within) .search-btn {
  color: #F5EFE4 !important;
  -webkit-text-fill-color: #F5EFE4 !important;
}
.page-home:not(.is-scrolled) .site-chrome:not(:hover):not(:focus-within) .nav-toggle span {
  background: #F5EFE4 !important;
}
.page-home:not(.is-scrolled) .site-chrome:not(:hover):not(:focus-within) .search-btn::before,
.page-home:not(.is-scrolled) .site-chrome:not(:hover):not(:focus-within) .search-btn::after {
  background: #F5EFE4 !important;
  border-color: #F5EFE4 !important;
}

.site-chrome:hover .logo,
.site-chrome:hover .logo__mark,
.site-chrome:hover .nav a,
.site-chrome:hover .header-cats a,
.site-chrome:hover .header-link,
.site-chrome:hover .nav-toggle,
.site-chrome:hover .search-btn,
.site-chrome.is-scrolled .logo,
.site-chrome.is-scrolled .logo__mark,
.site-chrome.is-scrolled .nav a,
.site-chrome.is-scrolled .header-cats a,
.site-chrome:focus-within .logo,
.site-chrome:focus-within .logo__mark,
.site-chrome:focus-within .header-cats a,
.site-chrome:focus-within .nav-toggle,
.site-chrome:focus-within .search-btn,
body.is-scrolled .site-header .logo,
body.is-scrolled .site-header .logo__mark,
body.is-scrolled .site-header .header-cats a,
body.is-scrolled .site-header .nav-toggle,
body.is-scrolled .site-header .search-btn,
.site-header.is-scrolled .logo__mark,
.site-header.is-scrolled .header-cats a {
  color: #1A1510 !important;
  -webkit-text-fill-color: #1A1510 !important;
}
.site-chrome:hover .nav-toggle span,
.site-chrome:focus-within .nav-toggle span,
.site-chrome.is-scrolled .nav-toggle span,
body.is-scrolled .site-header .nav-toggle span {
  background: #1A1510 !important;
}
.site-chrome:hover .search-btn::before,
.site-chrome:hover .search-btn::after,
.site-chrome:focus-within .search-btn::before,
.site-chrome:focus-within .search-btn::after,
body.is-scrolled .site-header .search-btn::before,
body.is-scrolled .site-header .search-btn::after {
  background: #1A1510 !important;
  border-color: #1A1510 !important;
}

/* E. Lang bar — cream on dark plate (beats ink locks) */
.lang-bar,
.lang-bar__globe,
.lang-bar__link {
  color: rgba(245, 239, 228, 0.72) !important;
  -webkit-text-fill-color: rgba(245, 239, 228, 0.72) !important;
}
.lang-bar__link.is-active,
.lang-bar__link:hover {
  color: #F5EFE4 !important;
  -webkit-text-fill-color: #F5EFE4 !important;
}
/* end VISIBILITY FINAL 20260728btnfix */

/* =========================================================
   LANGVIS 20260728langvis — cream/white on dark strip
   Beats SEEALL / ink locks that set #1A1510 + -webkit-text-fill
   on .lang-bar / a / .lang-bar__link (color alone was not enough).
   ========================================================= */
.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 */
