/* Local behaviour layered over the owner's original responsive design. */
:root { --header-height: 122px; }
#page > article > .region > .page-section:first-child { padding-top: var(--header-height); }
#page > article > .region > .page-section:first-child .section-background { top: var(--header-height); }
.hero-video { width: 100%; height: 100%; object-fit: cover; position: absolute; inset: 0; }
.sqs-video-background-native.is-playing .sqs-video-background-native__fallback-image { opacity: 0; }
.header-menu-nav-folder { transform: translateX(0); }
.header-menu { padding-top: var(--header-height); }
.header-menu[aria-hidden="true"] { pointer-events: none; }
.local-reveal { opacity: 0; transform: translateY(30%); transition: transform .8s ease, opacity .8s ease; }
.local-reveal.is-visible { opacity: 1; transform: translateY(0); }
.local-reveal.local-fade { transform: none; }
.image-lightbox { border: 0; padding: 0; background: transparent; max-width: 95vw; max-height: 95vh; overflow: visible; }
.image-lightbox::backdrop { background: rgba(0,0,0,.95); }
.image-lightbox img { display: block; max-width: 90vw; max-height: 90vh; object-fit: contain; }
.lightbox-close { position: fixed; top: 12px; right: 24px; background: none; border: 0; color: white; font: 300 40px/1 sans-serif; cursor: pointer; padding: 8px; }
:focus-visible { outline: 2px solid currentColor; outline-offset: 5px; }
/* The original heading breaks inside “independence” on small phones. */
@media (max-width: 440px) {
  #block-9bf020d7840a286177e0 h1 { font-size: 10vw; overflow-wrap: normal; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  .local-reveal { opacity: 1; transform: none; transition: none; }
  .hero-video { display: none; }
}
.accordion-item__dropdown { overflow: hidden; transition: height .3s ease; }
.user-items-list-carousel__media { width:100%; height:100%; object-fit:cover; }
.local-form-status { margin-top: 24px; }
@media (prefers-reduced-motion: reduce) { .accordion-item__dropdown { transition:none; } }

/* Subtle, synchronized top-of-page fade. Content is never held at zero opacity. */
@keyframes page-entrance { from { opacity: .35; } to { opacity: 1; } }
.page-entrance { animation: page-entrance 220ms ease-out both; }
@media (prefers-reduced-motion: reduce) { .page-entrance { animation:none; } }

/* NDIS has a blue header: recolour both logo variants to warm off-white. */
.collection-66c96dc9cbb5bc5c7c598015 #header .header-title img {
  filter: brightness(0) invert(1) sepia(.12) brightness(.97);
}
