html.fx-text .v3-statement.reveal { opacity: 1 !important; transform: none !important; transition: none; }
.fx-ch { opacity: 0.22; transition: opacity 120ms linear; }
.fx-ch.is-lit { opacity: 1; }
.fx-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
html.fx-loader.hero-wait:not(.fx-veil-gone) { overflow: hidden; }
html.fx-loader.hero-wait:not(.fx-veil-gone) body::before { content: ""; position: fixed; inset: 0; z-index: 400; background: var(--v3-bg); }
html.fx-loader .v3-hero__wait { display: none; }
.fx-veil { position: fixed; inset: 0; z-index: 401; display: grid; place-items: center; background: var(--v3-bg); color: var(--v3-white); clip-path: inset(0 0 0 0); }
.fx-veil__mark { display: grid; justify-items: center; gap: 22px; }
.fx-veil__logo, .fx-veil__n { overflow: hidden; }
.fx-veil__logo img { display: block; width: 112px; height: auto; transform: translateY(110%); animation: fx-rise 1.1s cubic-bezier(0.16, 1, 0.3, 1) 0.2s forwards; }
.fx-veil__n span { display: block; min-width: 4ch; font-size: 15px; letter-spacing: 0.08em; text-align: center; font-feature-settings: "tnum"; transform: translateY(110%); animation: fx-rise 1.1s cubic-bezier(0.16, 1, 0.3, 1) 0.38s forwards; }
.fx-veil__bar { width: 112px; height: 1px; overflow: hidden; background: rgba(255, 255, 255, 0.2); }
.fx-veil__bar i { display: block; height: 100%; background: var(--v3-red); transform: scaleX(0); transform-origin: left; transition: transform 0.3s linear; }
.fx-veil.is-out .fx-veil__mark { opacity: 0; transform: translateY(-40px); transition: opacity 0.9s cubic-bezier(0.76, 0, 0.24, 1), transform 0.9s cubic-bezier(0.76, 0, 0.24, 1); }
.fx-veil.is-lift { clip-path: inset(0 0 100% 0); transition: clip-path 1.1s cubic-bezier(0.76, 0, 0.24, 1); }
@keyframes fx-rise { to { transform: translateY(0); } }
html.fx-list .v3-list-preview { display: none; }
.fx-preview { position: fixed; left: 0; top: 0; z-index: 70; width: clamp(180px, 24vw, 320px); aspect-ratio: 4 / 5; overflow: hidden; border-radius: 4px; background: var(--v3-media-bg); box-shadow: 0 18px 40px rgba(0, 0, 0, 0.45); pointer-events: none; opacity: 0; transition: opacity 0.3s var(--v3-ease); }
.fx-preview.is-on { opacity: 1; }
.fx-preview img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
@media (hover: hover) and (pointer: fine) {
  html.fx-list .w-list .w-row { transition: opacity 320ms ease; }
  html.fx-list .w-list .w-row__n, html.fx-list .w-list .w-row__title { transition: transform 320ms cubic-bezier(0.22, 1, 0.36, 1), color 320ms ease; }
  html.fx-list .w-list:hover .w-row { opacity: 0.45; }
  html.fx-list .w-list:hover .w-row:hover, html.fx-list .w-list .w-row:focus-visible { opacity: 1; }
  html.fx-list .w-list .w-row:hover .w-row__n, html.fx-list .w-list .w-row:hover .w-row__title { transform: translateX(12px); }
}
html.fx-wipe-in body::before { content: ""; position: fixed; inset: 0; z-index: 400; background: var(--v3-raised); }
.fx-panel { position: fixed; inset: 0; z-index: 401; display: grid; align-content: end; padding: clamp(24px, 6vw, 88px); background: var(--v3-raised); color: var(--v3-text); clip-path: inset(0 100% 0 0); pointer-events: none; }
.fx-panel.is-cover { clip-path: inset(0 0 0 0); pointer-events: auto; }
.fx-panel__title { margin: 0; max-width: 14ch; font-size: clamp(40px, 7vw, 104px); font-weight: 300; line-height: 1.02; letter-spacing: -0.035em; text-wrap: balance; }
html.fx-clip main .v3-kicker, html.fx-clip main .v3-kicker.reveal { width: fit-content; opacity: 1 !important; transform: none !important; clip-path: inset(0 100% 0 0); transition: clip-path 1.3s cubic-bezier(0.76, 0, 0.24, 1); }
html.fx-clip [data-v3-about] .v3-made.reveal { opacity: 1 !important; transform: none !important; transition: none; }
html.fx-clip [data-v3-about] .v3-made__media { clip-path: inset(0 100% 0 0); transition: clip-path 1.3s cubic-bezier(0.76, 0, 0.24, 1); }
html.fx-clip [data-v3-about] .v3-made--flip .v3-made__media { clip-path: inset(0 0 0 100%); }
html.fx-clip [data-v3-about] .v3-made__media img { transform: scale(1.25); transition: transform 1.9s cubic-bezier(0.16, 1, 0.3, 1); }
html.fx-clip [data-v3-about] .v3-made__copy > * { opacity: 0; transform: translateY(12px); transition: opacity 0.9s cubic-bezier(0.16, 1, 0.3, 1), transform 0.9s cubic-bezier(0.16, 1, 0.3, 1); }
html.fx-clip [data-v3-about] .v3-made__copy > :nth-child(1) { transition-delay: 0.5s; }
html.fx-clip [data-v3-about] .v3-made__copy > :nth-child(2) { transition-delay: 0.59s; }
html.fx-clip [data-v3-about] .v3-made__copy > :nth-child(3) { transition-delay: 0.68s; }
html.fx-clip main .v3-kicker.is-in, html.fx-clip [data-v3-about] .v3-made.is-in .v3-made__media { clip-path: inset(0 0 0 0); }
html.fx-clip [data-v3-about] .v3-made.is-in .v3-made__media img { transform: none; }
html.fx-clip [data-v3-about] .v3-made.is-in .v3-made__copy > * { opacity: 1; transform: none; }
@media (max-width: 899px) { html.fx-clip [data-v3-about] .v3-made--flip .v3-made__media { clip-path: inset(0 100% 0 0); } html.fx-clip [data-v3-about] .v3-made--flip.is-in .v3-made__media { clip-path: inset(0 0 0 0); } }
html.fx-swipe .v3-rail.fx-swipe-on { display: block; position: relative; overflow: hidden; padding-bottom: 0; scroll-snap-type: none; touch-action: pan-y; user-select: none; -webkit-user-select: none; cursor: grab; }
html.fx-swipe .v3-rail.fx-swipe-on.is-drag { cursor: grabbing; }
html.fx-swipe .fx-swipe-on .v3-sol { position: absolute; left: 0; top: 0; width: var(--fx-w); will-change: transform; }
html.fx-swipe .fx-swipe-on .v3-sol.is-centre .v3-sol__text { opacity: 1; transform: none; }
