/* ==========================================================================
   Tair Haim — "Nocturne" · Legal / Contact / Accessibility / Cookies layer
   Owner: legal agent. Self-contained. No external network calls.
   Covers: skip link, accessibility widget + panel, accessibility user-toggles
   (applied as classes on <html>), cookie banner + preferences, Contact page +
   Contact Form 7 skin, Hebrew legal pages (accessibility statement + privacy).
   ========================================================================== */

/* --------------------------------------------------------------------------
   Design-token fallback. The foundation defines these in main.css :root.
   We redefine identical values here (guarded by @supports for custom-property
   support) so this layer renders on-brand even if load order differs or
   main.css has not loaded yet. Values are intentionally identical to
   ARCHITECTURE.md so nothing drifts.
   -------------------------------------------------------------------------- */
@supports (--th: 0) {
  :root {
    --black: #05060a;
    --ink: #0d1424;
    --ink-2: #070b14;
    --gold: #c9a84c;
    --gold-soft: #d9bd6e;
    --jewel: #1f6f63;
    --ivory: #efe9dc;
    --ivory-dim: #b9b3a6;
    --th-ease: cubic-bezier(.22, 1, .36, 1);
  }
}

/* ==========================================================================
   1. SKIP-TO-CONTENT LINK
   Visually hidden until focused; jumps to the main content target.
   ========================================================================== */
.th-skip-link {
  position: fixed;
  top: -120px;
  left: 1rem;
  z-index: 100000;
  padding: .85rem 1.4rem;
  background: var(--gold, #c9a84c);
  color: var(--black, #05060a);
  font-family: "Archivo", Arial, sans-serif;
  font-size: .8rem;
  letter-spacing: .12em;
  text-decoration: none;
  border-radius: 2px;
  box-shadow: 0 8px 30px rgba(0, 0, 0, .6);
  transition: top .25s var(--th-ease, ease);
}
.th-skip-link:focus {
  top: 1rem;
  outline: 2px solid var(--ivory, #efe9dc);
  outline-offset: 2px;
}
/* Main-content target should not show a persistent outline when script-focused */
[id="th-main"]:focus { outline: none; }

/* ==========================================================================
   2. ACCESSIBILITY WIDGET (floating button + panel)
   ========================================================================== */
.th-a11y-fab {
  position: fixed;
  bottom: calc(var(--letterbox, 5.2vh) + 1rem);
  left: 1.1rem;
  z-index: 99990;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  border: 1px solid var(--gold, #c9a84c);
  background: rgba(5, 6, 10, .82);
  color: var(--gold, #c9a84c);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  backdrop-filter: blur(4px);
  box-shadow: 0 10px 34px rgba(0, 0, 0, .55);
  transition: transform .35s var(--th-ease, ease), background .35s, color .35s;
}
.th-a11y-fab:hover,
.th-a11y-fab:focus-visible {
  background: var(--gold, #c9a84c);
  color: var(--black, #05060a);
  transform: scale(1.06);
  outline: none;
}
.th-a11y-fab:focus-visible { box-shadow: 0 0 0 3px rgba(201, 168, 76, .5); }
.th-a11y-fab svg { width: 26px; height: 26px; display: block; }

.th-a11y-panel {
  position: fixed;
  bottom: calc(var(--letterbox, 5.2vh) + 4.4rem);
  left: 1.1rem;
  z-index: 99991;
  width: min(340px, calc(100vw - 2.2rem));
  max-height: min(74vh, 560px);
  overflow-y: auto;
  background: linear-gradient(180deg, #0b0f1a, var(--ink-2, #070b14));
  border: 1px solid rgba(201, 168, 76, .35);
  border-radius: 10px;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .7);
  padding: 1.1rem 1.15rem 1.3rem;
  direction: rtl;
  text-align: right;
  font-family: "Archivo", Arial, sans-serif;
  color: var(--ivory, #efe9dc);
  transform: translateY(14px);
  opacity: 0;
  visibility: hidden;
  transition: opacity .28s var(--th-ease, ease), transform .28s var(--th-ease, ease), visibility .28s;
}
.th-a11y-panel.th-open {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.th-a11y-panel h2 {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-weight: 500;
  font-size: 1.5rem;
  color: var(--gold, #c9a84c);
  margin: 0 0 .1rem;
}
.th-a11y-panel .th-a11y-sub {
  font-size: .68rem;
  letter-spacing: .04em;
  color: var(--ivory-dim, #b9b3a6);
  margin-bottom: .9rem;
}
.th-a11y-close {
  position: absolute;
  top: .55rem;
  left: .55rem;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 1px solid rgba(239, 233, 220, .28);
  background: transparent;
  color: var(--ivory-dim, #b9b3a6);
  font-size: 1.1rem;
  line-height: 1;
  cursor: pointer;
  transition: .3s;
}
.th-a11y-close:hover,
.th-a11y-close:focus-visible {
  color: var(--black, #05060a);
  background: var(--gold, #c9a84c);
  border-color: var(--gold, #c9a84c);
  outline: none;
}

.th-a11y-fontrow {
  display: flex;
  align-items: center;
  gap: .5rem;
  margin: 0 0 .8rem;
}
.th-a11y-fontrow .th-a11y-fontlabel {
  flex: 1;
  font-size: .78rem;
  color: var(--ivory, #efe9dc);
}
.th-a11y-fontrow button {
  min-width: 40px;
  height: 38px;
  border: 1px solid rgba(201, 168, 76, .4);
  background: transparent;
  color: var(--gold, #c9a84c);
  font-size: 1rem;
  cursor: pointer;
  border-radius: 4px;
  transition: .3s;
}
.th-a11y-fontrow button:hover,
.th-a11y-fontrow button:focus-visible {
  background: var(--gold, #c9a84c);
  color: var(--black, #05060a);
  outline: none;
}

.th-a11y-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .55rem;
}
.th-a11y-toggle {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  min-height: 74px;
  padding: .6rem .4rem;
  border: 1px solid rgba(239, 233, 220, .16);
  background: rgba(255, 255, 255, .015);
  color: var(--ivory, #efe9dc);
  border-radius: 6px;
  cursor: pointer;
  font-family: inherit;
  font-size: .68rem;
  line-height: 1.25;
  text-align: center;
  transition: border-color .3s, background .3s, color .3s;
}
.th-a11y-toggle .th-a11y-ico {
  font-size: 1.15rem;
  line-height: 1;
}
.th-a11y-toggle:hover,
.th-a11y-toggle:focus-visible {
  border-color: var(--gold, #c9a84c);
  color: var(--gold-soft, #d9bd6e);
  outline: none;
}
.th-a11y-toggle[aria-pressed="true"] {
  border-color: var(--gold, #c9a84c);
  background: rgba(201, 168, 76, .16);
  color: var(--gold, #c9a84c);
}
.th-a11y-reset {
  grid-column: 1 / -1;
  min-height: 44px;
  border: 1px solid rgba(239, 233, 220, .28);
  background: transparent;
  color: var(--ivory-dim, #b9b3a6);
  border-radius: 6px;
  cursor: pointer;
  font-family: inherit;
  font-size: .74rem;
  letter-spacing: .05em;
  transition: .3s;
}
.th-a11y-reset:hover,
.th-a11y-reset:focus-visible {
  border-color: var(--gold, #c9a84c);
  color: var(--gold, #c9a84c);
  outline: none;
}

/* ==========================================================================
   3. ACCESSIBILITY USER-TOGGLES  (classes set on <html> by a11y.js)
   These MUST work site-wide, overriding the cinematic theme.
   ========================================================================== */

/* Grayscale — applied to <html> */
html.th-a11y-grayscale { filter: grayscale(100%) !important; }

/* Negative / inverted contrast — applied to <body> so it can stack with the
   grayscale filter on <html>. Media is re-inverted to look correct. */
html.th-a11y-invert body { filter: invert(100%) hue-rotate(180deg) !important; }
html.th-a11y-invert body img,
html.th-a11y-invert body video,
html.th-a11y-invert body iframe,
html.th-a11y-invert body .frame-bg,
html.th-a11y-invert body .th-a11y-panel,
html.th-a11y-invert body .th-a11y-fab {
  filter: invert(100%) hue-rotate(180deg) !important;
}

/* High contrast — force strong bright-on-black */
html.th-a11y-contrast body,
html.th-a11y-contrast .chapter,
html.th-a11y-contrast .vignette,
html.th-a11y-contrast .frame-bg::after {
  background: #000 !important;
}
html.th-a11y-contrast .frame-bg { opacity: .18 !important; }
html.th-a11y-contrast,
html.th-a11y-contrast body,
html.th-a11y-contrast p,
html.th-a11y-contrast span,
html.th-a11y-contrast li,
html.th-a11y-contrast strong,
html.th-a11y-contrast small,
html.th-a11y-contrast h1,
html.th-a11y-contrast h2,
html.th-a11y-contrast h3 {
  color: #ffffff !important;
  text-shadow: none !important;
}
html.th-a11y-contrast a,
html.th-a11y-contrast .eyebrow,
html.th-a11y-contrast .cap { color: #ffe14d !important; }
html.th-a11y-contrast .btn,
html.th-a11y-contrast input,
html.th-a11y-contrast textarea {
  border-color: #ffffff !important;
  color: #ffffff !important;
}

/* Light background — recolour the whole palette via the theme's own tokens */
html.th-a11y-light {
  --black: #ffffff;
  --ink: #f2f0ea;
  --ink-2: #e9e6dd;
  --ivory: #14130f;
  --ivory-dim: #3a382f;
  --gold: #7a5f16;
  --gold-soft: #6a5213;
  --jewel: #0f4a41;
  --bar: #d8d4c8;
}
html.th-a11y-light body { background: #ffffff !important; color: #14130f !important; }
html.th-a11y-light .frame-bg { opacity: .35 !important; }
html.th-a11y-light .vignette { display: none !important; }

/* Highlight links — make every link unmistakable */
html.th-a11y-links a {
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  outline: 2px solid #ffd54a !important;
  outline-offset: 1px !important;
  background: rgba(255, 213, 74, .16) !important;
}

/* Readable font — swap display/serif for a plain, high-legibility sans */
html.th-a11y-readable,
html.th-a11y-readable body,
html.th-a11y-readable * {
  font-family: Arial, "Helvetica Neue", "Segoe UI", sans-serif !important;
  letter-spacing: normal !important;
  font-style: normal !important;
}
html.th-a11y-readable p,
html.th-a11y-readable li { line-height: 1.9 !important; }

/* Big cursor — large white arrow with black outline (self-contained SVG) */
html.th-a11y-cursor,
html.th-a11y-cursor * {
  cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24'%3E%3Cpath d='M4 1 L4 22 L9.2 16.8 L12.4 23.6 L15.2 22.2 L12 15.4 L20 15.4 Z' fill='white' stroke='black' stroke-width='1.2' stroke-linejoin='round'/%3E%3C/svg%3E") 4 1, auto !important;
}

/* Respect reduced-motion when any a11y state is on: kill grain/animation */
html[class*="th-a11y-"] .grain.anim { animation: none !important; }

/* ==========================================================================
   4. COOKIE BANNER + PREFERENCES
   ========================================================================== */
.th-cookie {
  position: fixed;
  bottom: calc(var(--letterbox, 5.2vh) + .8rem);
  right: 1.1rem;
  left: auto;
  z-index: 99980;
  width: min(420px, calc(100vw - 2.2rem));
  background: linear-gradient(180deg, #0b0f1a, var(--ink-2, #070b14));
  border: 1px solid rgba(201, 168, 76, .35);
  border-radius: 10px;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .7);
  padding: 1.15rem 1.2rem 1.2rem;
  direction: rtl;
  text-align: right;
  font-family: "Archivo", Arial, sans-serif;
  color: var(--ivory, #efe9dc);
  transform: translateY(18px);
  opacity: 0;
  visibility: hidden;
  transition: opacity .3s var(--th-ease, ease), transform .3s var(--th-ease, ease), visibility .3s;
}
.th-cookie.th-open { opacity: 1; visibility: visible; transform: translateY(0); }
.th-cookie h2 {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-weight: 500;
  font-size: 1.4rem;
  color: var(--gold, #c9a84c);
  margin: 0 0 .4rem;
}
.th-cookie p {
  font-size: .82rem;
  line-height: 1.7;
  color: var(--ivory-dim, #b9b3a6);
  margin: 0 0 .9rem;
}
.th-cookie p a { color: var(--gold, #c9a84c); text-decoration: underline; text-underline-offset: 2px; }
.th-cookie-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
}
.th-cookie-btn {
  flex: 1 1 auto;
  min-width: 96px;
  min-height: 42px;
  padding: .6rem 1rem;
  font-family: inherit;
  font-size: .72rem;
  letter-spacing: .06em;
  border-radius: 5px;
  cursor: pointer;
  transition: .3s var(--th-ease, ease);
  border: 1px solid var(--gold, #c9a84c);
  background: transparent;
  color: var(--gold, #c9a84c);
}
.th-cookie-btn:hover,
.th-cookie-btn:focus-visible { background: var(--gold, #c9a84c); color: var(--black, #05060a); outline: none; }
.th-cookie-btn.th-primary { background: var(--gold, #c9a84c); color: var(--black, #05060a); }
.th-cookie-btn.th-primary:hover,
.th-cookie-btn.th-primary:focus-visible { background: var(--gold-soft, #d9bd6e); }
.th-cookie-btn.th-ghost { border-color: rgba(239, 233, 220, .32); color: var(--ivory, #efe9dc); }
.th-cookie-btn.th-ghost:hover,
.th-cookie-btn.th-ghost:focus-visible { background: var(--ivory, #efe9dc); color: var(--black, #05060a); }

/* preferences (expanded) */
.th-cookie-prefs { display: none; margin: .2rem 0 1rem; }
.th-cookie.th-manage .th-cookie-prefs { display: block; }
/* the "save preferences" action only appears once preferences are open */
.th-cookie-btn[data-th-cookie="save"] { display: none; }
.th-cookie.th-manage .th-cookie-btn[data-th-cookie="save"] { display: inline-block; }
.th-cookie-cat {
  display: flex;
  align-items: flex-start;
  gap: .7rem;
  padding: .6rem 0;
  border-top: 1px solid rgba(239, 233, 220, .1);
}
.th-cookie-cat:last-child { border-bottom: 1px solid rgba(239, 233, 220, .1); }
.th-cookie-cat .th-cookie-cat-text { flex: 1; }
.th-cookie-cat strong { display: block; font-size: .8rem; color: var(--ivory, #efe9dc); font-weight: 500; margin-bottom: .15rem; }
.th-cookie-cat span { font-size: .7rem; line-height: 1.5; color: var(--ivory-dim, #b9b3a6); }
.th-cookie-cat input[type="checkbox"] { width: 18px; height: 18px; margin-top: .15rem; accent-color: var(--gold, #c9a84c); cursor: pointer; }
.th-cookie-cat input[type="checkbox"]:disabled { opacity: .55; cursor: not-allowed; }

/* ==========================================================================
   5. CONTACT PAGE  (English UI, Nocturne look) + Contact Form 7 skin
   ========================================================================== */
.th-page {
  position: relative;
  min-height: 100vh;
  padding: calc(var(--letterbox, 5.2vh) + 7rem) 6vw calc(var(--letterbox, 5.2vh) + 4rem);
  background: var(--black, #05060a);
  color: var(--ivory, #efe9dc);
}
.th-page .th-page-inner { max-width: 1080px; margin: 0 auto; width: 100%; }
.th-page .cap {
  font-size: .58rem;
  letter-spacing: .5em;
  text-transform: uppercase;
  color: var(--gold, #c9a84c);
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.3rem;
}
.th-page .cap::before { content: ""; width: 42px; height: 1px; background: var(--gold, #c9a84c); opacity: .7; display: inline-block; }
.th-page h1 {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-weight: 300;
  font-size: clamp(2.6rem, 6vw, 4.6rem);
  line-height: 1;
  margin: 0 0 1.1rem;
  color: var(--ivory, #efe9dc);
}
.th-page .th-lead {
  font-size: 1.02rem;
  line-height: 1.85;
  color: var(--ivory-dim, #b9b3a6);
  max-width: 52ch;
  margin-bottom: 2.6rem;
}

.th-contact-grid {
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: 4vw;
  align-items: start;
}
.th-contact-formwrap {
  border: 1px solid rgba(201, 168, 76, .2);
  background: rgba(255, 255, 255, .012);
  padding: 1.8rem 1.8rem 2rem;
  border-radius: 8px;
}
.th-contact-formwrap .th-form-note {
  font-size: .82rem;
  line-height: 1.7;
  color: var(--ivory-dim, #b9b3a6);
}

/* fallback / direct contact block (always visible) */
.th-contact-fallback h2 {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-weight: 400;
  font-size: 1.7rem;
  color: var(--ivory, #efe9dc);
  margin: 0 0 1.2rem;
}
.th-contact-item { margin-bottom: 1.3rem; }
.th-contact-item .th-label {
  display: block;
  font-size: .52rem;
  letter-spacing: .3em;
  text-transform: uppercase;
  color: var(--gold, #c9a84c);
  margin-bottom: .35rem;
}
.th-contact-item a,
.th-contact-item .th-val {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-weight: 400;
  font-size: 1.25rem;
  color: var(--ivory, #efe9dc);
  transition: color .3s;
}
.th-contact-item a:hover { color: var(--gold, #c9a84c); }
.th-contact-social { display: flex; flex-wrap: wrap; gap: 1.2rem; margin-top: 1.6rem; }
.th-contact-social a {
  font-size: .6rem;
  letter-spacing: .28em;
  text-transform: uppercase;
  color: var(--ivory-dim, #b9b3a6);
  transition: .3s;
}
.th-contact-social a:hover { color: var(--gold, #c9a84c); }

/* Contact Form 7 skin — match the cinematic inputs */
.th-contact-formwrap .wpcf7 { color: var(--ivory, #efe9dc); }
.th-contact-formwrap .wpcf7 label {
  display: block;
  font-size: .6rem;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--gold, #c9a84c);
  margin: 1rem 0 .4rem;
}
.th-contact-formwrap .wpcf7 input[type="text"],
.th-contact-formwrap .wpcf7 input[type="email"],
.th-contact-formwrap .wpcf7 input[type="tel"],
.th-contact-formwrap .wpcf7 input[type="url"],
.th-contact-formwrap .wpcf7 input[type="number"],
.th-contact-formwrap .wpcf7 input[type="date"],
.th-contact-formwrap .wpcf7 select,
.th-contact-formwrap .wpcf7 textarea {
  width: 100%;
  background: transparent;
  border: 1px solid rgba(201, 168, 76, .3);
  color: var(--ivory, #efe9dc);
  padding: .9rem 1rem;
  font-family: "Archivo", Arial, sans-serif;
  font-size: .85rem;
  letter-spacing: .03em;
  border-radius: 4px;
  transition: border-color .3s, box-shadow .3s;
}
.th-contact-formwrap .wpcf7 textarea { min-height: 140px; resize: vertical; }
.th-contact-formwrap .wpcf7 input:focus,
.th-contact-formwrap .wpcf7 select:focus,
.th-contact-formwrap .wpcf7 textarea:focus {
  outline: none;
  border-color: var(--gold, #c9a84c);
  box-shadow: 0 0 0 2px rgba(201, 168, 76, .18);
}
.th-contact-formwrap .wpcf7 input::placeholder,
.th-contact-formwrap .wpcf7 textarea::placeholder { color: var(--ivory-dim, #b9b3a6); }
.th-contact-formwrap .wpcf7 input[type="submit"],
.th-contact-formwrap .wpcf7 button[type="submit"] {
  margin-top: 1.6rem;
  font-family: "Archivo", Arial, sans-serif;
  font-size: .66rem;
  letter-spacing: .28em;
  text-transform: uppercase;
  padding: 1.05rem 2.3rem;
  border: 1px solid var(--gold, #c9a84c);
  color: var(--gold, #c9a84c);
  background: transparent;
  cursor: pointer;
  border-radius: 4px;
  transition: .4s var(--th-ease, ease);
}
.th-contact-formwrap .wpcf7 input[type="submit"]:hover,
.th-contact-formwrap .wpcf7 button[type="submit"]:hover {
  background: var(--gold, #c9a84c);
  color: var(--black, #05060a);
}
.th-contact-formwrap .wpcf7-not-valid-tip { color: #ff8f8f; font-size: .72rem; }
.th-contact-formwrap .wpcf7-response-output {
  margin: 1.2rem 0 0 !important;
  padding: .8rem 1rem !important;
  border: 1px solid rgba(201, 168, 76, .35) !important;
  border-radius: 4px;
  font-size: .8rem;
  color: var(--ivory, #efe9dc);
}
.th-contact-formwrap .wpcf7-spinner { filter: sepia(1) saturate(3) hue-rotate(5deg); }

/* ==========================================================================
   6. HEBREW LEGAL PAGES  (accessibility statement + privacy policy)
   RTL, readable, on-brand but calm.
   ========================================================================== */
.th-legal {
  direction: rtl;
  text-align: right;
}
.th-legal .th-page-inner { max-width: 820px; }
.th-legal h1 { text-align: right; }
.th-legal .cap { justify-content: flex-start; }
.th-legal .cap::before { order: 2; }
.th-legal h2 {
  font-family: "Cormorant Garamond", "David Libre", Georgia, serif;
  font-weight: 500;
  font-size: clamp(1.4rem, 3vw, 1.9rem);
  color: var(--gold, #c9a84c);
  margin: 2.4rem 0 .9rem;
  line-height: 1.3;
}
.th-legal h3 {
  font-size: 1.05rem;
  font-weight: 600;
  color: var(--ivory, #efe9dc);
  margin: 1.6rem 0 .6rem;
}
.th-legal p,
.th-legal li {
  font-size: 1.04rem;
  line-height: 1.95;
  color: var(--ivory, #efe9dc);
  max-width: 68ch;
}
.th-legal p { margin: 0 0 1rem; }
.th-legal ul,
.th-legal ol { margin: 0 1.3rem 1.2rem 0; padding: 0; }
.th-legal li { margin-bottom: .5rem; }
.th-legal a { color: var(--gold, #c9a84c); text-decoration: underline; text-underline-offset: 3px; }
.th-legal a:hover { color: var(--gold-soft, #d9bd6e); }
.th-legal strong { color: var(--gold-soft, #d9bd6e); font-weight: 600; }
.th-legal .th-updated {
  margin-top: 2.6rem;
  padding-top: 1.2rem;
  border-top: 1px solid rgba(201, 168, 76, .18);
  font-size: .82rem;
  color: var(--ivory-dim, #b9b3a6);
}
.th-legal .th-contact-box {
  margin-top: 1.4rem;
  padding: 1.2rem 1.4rem;
  border: 1px solid rgba(201, 168, 76, .22);
  border-radius: 8px;
  background: rgba(255, 255, 255, .012);
}
.th-legal .th-contact-box p:last-child { margin-bottom: 0; }

/* ==========================================================================
   7. RESPONSIVE
   ========================================================================== */
@media (max-width: 900px) {
  .th-contact-grid { grid-template-columns: 1fr; gap: 2.4rem; }
  .th-a11y-grid { grid-template-columns: 1fr 1fr; }
  .th-cookie { right: 50%; transform: translate(50%, 18px); }
  .th-cookie.th-open { transform: translate(50%, 0); }
}

/* ==========================================================================
   8. REDUCED MOTION
   ========================================================================== */
@media (prefers-reduced-motion: reduce) {
  .th-skip-link,
  .th-a11y-fab,
  .th-a11y-panel,
  .th-cookie,
  .th-cookie-btn { transition: none !important; }
}
