/* PE-3b128d6d-eb71-4a67-ac72-4a099e50f9b4 | Core(root): CORE-EXECUTION-STANDARD.md | Manifest(root): docs/MD-FILE-MANIFEST.md */
/* Design sign-off: DA-9accaca8-574e-4393-8bd5-a996000b2368 | DR-DEAKIN-IDENTITY-20261030 | PENDING | MA-1c670ae7-6aaa-48fb-854a-e69b317b6bae */
/* DA-9accaca8-574e-4393-8bd5-a996000b2368 | MA-1c670ae7-6aaa-48fb-854a-e69b317b6bae | Review: design/applications/deakin-tf-upgrade/IDENTITY-TEXTURE-20261030.md */
html.lw-persistent-identity { scroll-padding-top: 116px; scroll-padding-bottom: 88px; }
.lw-persistent-header {
  --lw-paper: #fcfaee; --lw-ink: #191817;
  position: fixed; inset: 0 0 auto; z-index: 91;
  color: var(--lw-ink); background: var(--lw-paper); pointer-events: none;
  transition: height .4s ease-in-out, background-color .3s ease-out, color .3s ease-out;
}
.lw-persistent-header[data-compact] { height: 100px; }
.lw-persistent-header[data-over-film] { color: var(--lw-paper); background: transparent; }
.lw-persistent-header :is(button,summary) { pointer-events: auto; }
.lw-persistent-header:has(.lw-menu-trigger:hover),.lw-persistent-header:focus-within,.lw-persistent-header[data-drawer-open] { color: var(--lw-ink); background: var(--lw-paper); }
.lw-persistent-header .lw-header-mark { transform: translate(-50%,-50%) translateY(calc(-1 * var(--lw-header-mark-travel,0px))); }
.lw-persistent-header[data-mark-departed] .lw-header-mark { visibility: hidden; }
.lw-persistent-header :focus-visible,.lw-corner-mark:focus-visible { outline: 2px solid currentColor; outline-offset: 5px; }
.lw-persistent-header .lw-menu-trigger:focus-visible { outline: none; border-radius: 1px; box-shadow: 0 0 0 1px #040db1, 0 0 0 3px rgb(4 13 177 / .25); }
.lw-persistent-header[data-pointer] .lw-menu-trigger:focus-visible { box-shadow: none; }
.lw-persistent-identity .masthead .menu-toggle { display: none; }
.lw-corner-mark {
  position: fixed; left: calc(26px + env(safe-area-inset-left)); bottom: calc(26px + env(safe-area-inset-bottom)); z-index: 2;
  width: 64.86px; height: 60px; padding: 10px; box-sizing: border-box;
  color: #000; background: transparent; visibility: hidden; pointer-events: none;
  transition: visibility 200ms;
}
.lw-corner-mark span {
  display: block; width: 44.86px; height: 40px; background: currentColor;
  -webkit-mask: url('../assets/opening-film/logomark.svg') center/contain no-repeat;
  mask: url('../assets/opening-film/logomark.svg') center/contain no-repeat;
  opacity: 0; transition: opacity 200ms ease-out;
}
.lw-corner-mark[data-visible] { visibility: visible; pointer-events: auto; }
.lw-corner-mark[data-visible] span { opacity: 1; }
/* Films and the close field sit one layer above the mark, so their edges cut the glyph exactly as they pass.
   Once a surface covers it completely the mark leaves the tab order; no fade, because nothing is visible to fade. */
.lw-corner-mark[data-covered] { visibility: hidden; pointer-events: none; transition: none; }
.lw-persistent-identity :is(.tf-regional-screen,.tf-first-light .tf-documentary-frame,.tf-close-field) { position: relative; z-index: 3; }
.lw-persistent-identity .tf-regional-film .tf-regional-credit { z-index: 4; }
.lw-corner-mark[data-dark] { color: #fff; }
.lw-corner-mark:focus-visible { outline: 2px solid #fff; outline-offset: 3px; box-shadow: 0 0 0 3px #000; }
@supports ((backdrop-filter: invert(1)) or (-webkit-backdrop-filter: invert(1))) {
  /* Filter actual pixels through the original glyph; the transparent hit area never paints.
     Fade the glyph itself: ancestor opacity would isolate its backdrop during arrival. */
  .lw-corner-mark span {
    background: transparent;
    -webkit-backdrop-filter: grayscale(1) contrast(1000) invert(1);
    backdrop-filter: grayscale(1) contrast(1000) invert(1);
  }
}
@media (max-width: 1179px) {
  .lw-persistent-header,.lw-persistent-header[data-compact] { height: 80px; }
  html.lw-persistent-identity { scroll-padding-top: 96px; }
}
@media (max-width: 700px) {
  .lw-persistent-header { padding-inline: max(24px,env(safe-area-inset-left)); }
  .lw-corner-mark { display: none; }
  .lw-persistent-identity .tf-close-field { padding-bottom: 96px; }
}
@media (prefers-reduced-motion: reduce) { .lw-persistent-header,.lw-corner-mark,.lw-corner-mark span { transition: none; } }
@media print { .lw-persistent-header,.lw-corner-mark { display: none !important; } }
