@font-face{font-family: 'Anybody';src: url('/fonts/anybody-var.woff2') format('woff2');font-weight: 100 900;font-stretch: 50% 150%;font-display: swap}@font-face{font-family: 'Newsreader';src: url('/fonts/newsreader-var.woff2') format('woff2');font-weight: 200 800;font-style: normal;font-display: swap}@font-face{font-family: 'Newsreader';src: url('/fonts/newsreader-italic-var.woff2') format('woff2');font-weight: 200 800;font-style: italic;font-display: swap}:root{color-scheme: dark;--vac: #060616;--vac-2: #0b0b22;--vac-3: #13132f;--ink: #eceaff;--ink-2: #aeacd6;--ink-3: #7c7aa8;--line: rgba(170, 160, 255, 0.14);--line-2: rgba(170, 160, 255, 0.3);--v405: #a07cff;--c488: #2ee6ff;--g532: #6bff5e;--a594: #ffb13d;--r633: #ff4f64;--magenta: #ff5ce1;--accent: var(--c488);--f-display: 'Anybody', 'Arial Narrow', system-ui, sans-serif;--f-text: 'Newsreader', 'Iowan Old Style', Georgia, serif;--gutter: clamp(16px, 4vw, 56px);--max: 1440px;--read: 68ch;--header-h: 72px;--ease: cubic-bezier(0.2, 0.7, 0.1, 1);--ease-io: cubic-bezier(0.7, 0, 0.2, 1);--t-xs: 0.8125rem;--t-s: 0.9375rem;--t-m: 1.0625rem;--t-read: clamp(1.125rem, 0.4vw + 1rem, 1.3125rem);--t-l: clamp(1.375rem, 1vw + 1rem, 1.75rem);--t-xl: clamp(1.75rem, 2.2vw + 1rem, 2.75rem);--t-2xl: clamp(2.5rem, 5vw + 1rem, 5rem);--t-3xl: clamp(3.25rem, 11vw, 11.5rem)}[data-c='v405']{--accent: var(--v405)}[data-c='c488']{--accent: var(--c488)}[data-c='g532']{--accent: var(--g532)}[data-c='a594']{--accent: var(--a594)}[data-c='r633']{--accent: var(--r633)}[data-c='magenta']{--accent: var(--magenta)}*, *::before, *::after{box-sizing: border-box}html{-webkit-text-size-adjust: 100%;text-size-adjust: 100%;scroll-padding-top: calc(var(--header-h) + 24px);background: var(--vac)}@media (prefers-reduced-motion: no-preference){html{scroll-behavior: smooth}}body{margin: 0;min-height: 100vh;background: var(--vac);color: var(--ink);font-family: var(--f-display);font-size: var(--t-m);line-height: 1.5;font-kerning: normal;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;overflow-x: clip}img, svg, video, canvas{display: block;max-width: 100%}img{height: auto}a{color: inherit;text-decoration-thickness: 1px;text-underline-offset: 0.2em}button, input, textarea, select{font: inherit;color: inherit}button{cursor: pointer;background: none;border: 0;padding: 0}h1, h2, h3, h4, h5, h6{margin: 0;font-weight: 700;line-height: 1.05;text-wrap: balance}p{margin: 0;text-wrap: pretty}ul, ol{margin: 0;padding: 0}figure{margin: 0}::selection{background: var(--accent);color: var(--vac)}:focus{outline: none}:focus-visible{outline: 2px solid var(--accent);outline-offset: 3px;border-radius: 2px;box-shadow: 0 0 0 6px color-mix(in srgb, var(--accent) 25%, transparent)}.skip-link{position: fixed;left: 12px;top: 12px;z-index: 1000;padding: 10px 16px;background: var(--ink);color: var(--vac);font-weight: 600;text-decoration: none;transform: translateY(-160%);transition: transform 0.2s var(--ease)}.skip-link:focus{transform: none}.sr-only{position: absolute !important;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0 0 0 0);white-space: nowrap;border: 0}.wrap{width: 100%;max-width: var(--max);margin-inline: auto;padding-inline: var(--gutter)}body::after{content: '';position: fixed;inset: 0;z-index: 900;pointer-events: none;background:
repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.018) 0 1px, transparent 1px 3px);mix-blend-mode: overlay}.display{font-family: var(--f-display);font-weight: 800;font-stretch: 72%;letter-spacing: -0.01em;line-height: 0.92}.h2{font-size: var(--t-2xl);font-weight: 760;font-stretch: 78%;letter-spacing: -0.005em;line-height: 0.95}.h3{font-size: var(--t-l);font-weight: 650;font-stretch: 92%;line-height: 1.15}.lede{font-family: var(--f-text);font-size: var(--t-l);line-height: 1.45;color: var(--ink-2);font-weight: 380;max-width: 46ch}.prose-text{font-family: var(--f-text);font-size: var(--t-read);line-height: 1.65;color: var(--ink);font-weight: 380}.muted{color: var(--ink-2)}.nm{display: inline-flex;align-items: center;gap: 0.55em;font-size: var(--t-xs);font-weight: 560;font-stretch: 100%;color: var(--accent);white-space: nowrap;letter-spacing: 0.01em;text-decoration: none}.nm::before{content: '';width: 18px;height: 2px;border-radius: 2px;flex: none;background: var(--accent);box-shadow: 0 0 6px var(--accent), 0 0 14px var(--accent)}.nm b{font-weight: 560;color: var(--ink-2)}.btn{--b: var(--accent);position: relative;display: inline-flex;align-items: center;gap: 0.6em;min-height: 48px;padding: 0 22px;font-size: var(--t-s);font-weight: 620;font-stretch: 110%;letter-spacing: 0.01em;color: var(--ink);text-decoration: none;border: 1px solid color-mix(in srgb, var(--b) 60%, transparent);background: color-mix(in srgb, var(--b) 8%, transparent);border-radius: 2px;isolation: isolate;overflow: hidden;transition: color 0.3s var(--ease), border-color 0.3s var(--ease), box-shadow 0.3s var(--ease)}.btn::before{content: '';position: absolute;inset: 0;z-index: -1;background: var(--b);transform: scaleX(0);transform-origin: left;transition: transform 0.45s var(--ease)}.btn:hover{color: var(--vac);border-color: var(--b);box-shadow: 0 0 24px color-mix(in srgb, var(--b) 45%, transparent)}.btn:hover::before{transform: scaleX(1)}.btn--ghost{--b: var(--ink);background: transparent;border-color: var(--line-2)}.btn svg{width: 16px;height: 16px}.textlink{display: inline-flex;align-items: center;gap: 0.5em;font-weight: 600;font-stretch: 105%;color: var(--ink);text-decoration: none;background: linear-gradient(var(--accent), var(--accent)) 0 100% / 100% 1px no-repeat;padding-bottom: 4px;transition: background-size 0.4s var(--ease), color 0.3s}.textlink:hover{color: var(--accent);background-size: 0 1px;background-position: 100% 100%}.section{position: relative;padding-block: clamp(80px, 12vw, 180px)}.section-head{display: grid;gap: 20px;margin-bottom: clamp(40px, 6vw, 80px);max-width: 980px}.section-head .lede{max-width: 52ch}@media (prefers-reduced-motion: no-preference){.js [data-reveal]{opacity: 0;transform: translateY(24px);transition: opacity 0.9s var(--ease), transform 0.9s var(--ease)}.js [data-reveal].in{opacity: 1;transform: none}}@font-face{font-family: 'Vazirmatn';src: url('/fonts/vazirmatn-var.woff2') format('woff2');font-weight: 100 900;font-display: swap}.textlink svg, .btn svg, .crumbs svg{width: 1em;height: 1em;flex: none}.site-header{position: fixed;inset: 0 0 auto 0;z-index: 400;height: var(--header-h);display: flex;align-items: center;transition: transform 0.5s var(--ease), background-color 0.4s, backdrop-filter 0.4s}.site-header.is-scrolled{background: color-mix(in srgb, var(--vac) 72%, transparent);backdrop-filter: blur(14px) saturate(140%);-webkit-backdrop-filter: blur(14px) saturate(140%);box-shadow: 0 1px 0 var(--line)}.site-header.is-hidden{transform: translateY(-100%)}.site-header .wrap{display: flex;align-items: center;justify-content: space-between;gap: 16px}.brand{display: inline-flex;align-items: center;gap: 12px;text-decoration: none;font-weight: 760;font-stretch: 120%;font-size: 1.05rem;letter-spacing: 0.02em}.brand-name{transition: font-stretch 0.5s var(--ease)}.brand:hover .brand-name{font-stretch: 150%}.header-actions{display: flex;align-items: center;gap: 8px}.header-link{display: none;padding: 10px 14px;text-decoration: none;font-size: var(--t-s);font-weight: 560;color: var(--ink-2);transition: color 0.2s}.header-link:hover, .header-link[aria-current='page']{color: var(--ink)}.header-link[aria-current='page']{text-decoration: underline;text-decoration-color: var(--accent);text-underline-offset: 8px}@media (min-width: 900px){.header-link{display: inline-block}}.search-trigger{display: inline-flex;align-items: center;gap: 10px;height: 44px;padding: 0 12px 0 14px;border: 1px solid var(--line);border-radius: 2px;color: var(--ink-2);font-size: var(--t-s);transition: border-color 0.2s, color 0.2s}.search-trigger:hover{border-color: var(--line-2);color: var(--ink)}.search-trigger svg{width: 16px;height: 16px}.search-trigger kbd{font: inherit;font-size: 0.75rem;padding: 2px 6px;border: 1px solid var(--line);border-radius: 2px;color: var(--ink-3)}.search-trigger .label{display: none}@media (min-width: 640px){.search-trigger .label{display: inline}}@media (hover: none), (max-width: 639px){.search-trigger kbd{display: none}}.menu-trigger{position: relative;display: inline-flex;align-items: center;gap: 12px;height: 44px;padding: 0 6px 0 14px;font-size: var(--t-s);font-weight: 650;font-stretch: 115%}.menu-trigger .bars{position: relative;width: 30px;height: 14px}.menu-trigger .bars i{position: absolute;left: 0;height: 2px;width: 100%;border-radius: 2px;background: var(--ink);transition: transform 0.45s var(--ease), width 0.45s var(--ease), background 0.3s, box-shadow 0.3s}.menu-trigger .bars i:nth-child(1){top: 0}.menu-trigger .bars i:nth-child(2){top: 6px;width: 70%;left: 30%}.menu-trigger .bars i:nth-child(3){top: 12px;width: 45%;left: 55%}.menu-trigger:hover .bars i{background: var(--c488);box-shadow: 0 0 8px var(--c488);width: 100%;left: 0}.menu{position: fixed;inset: 0;z-index: 600;display: grid;grid-template-rows: auto 1fr auto;background: radial-gradient(120% 90% at 85% 10%, #15123a 0%, var(--vac) 55%);visibility: hidden;clip-path: inset(0 0 100% 0)}.menu.is-open{visibility: visible;clip-path: inset(0 0 0 0)}.menu.is-animating{transition: clip-path 0.85s var(--ease-io), visibility 0s}.menu:not(.is-open).is-animating{transition: clip-path 0.6s var(--ease-io), visibility 0s 0.6s}.menu-scan{position: absolute;left: 0;right: 0;height: 2px;top: 0;z-index: 3;pointer-events: none;background: linear-gradient(90deg, transparent, var(--c488) 20%, #fff 50%, var(--magenta) 80%, transparent);box-shadow: 0 0 12px var(--c488), 0 0 40px var(--magenta);opacity: 0}.menu.is-animating .menu-scan{animation: scan 0.85s var(--ease-io) forwards}.menu:not(.is-open).is-animating .menu-scan{animation: scan-up 0.6s var(--ease-io) forwards}@keyframes scan{0%{top: 0;opacity: 1}92%{opacity: 1}100%{top: 100%;opacity: 0}}@keyframes scan-up{0%{top: 100%;opacity: 1}100%{top: 0;opacity: 0}}.menu-canvas{position: absolute;inset: 0;width: 100%;height: 100%;z-index: 0;pointer-events: none}.menu-top, .menu-body, .menu-foot{position: relative;z-index: 2}.menu-top{height: var(--header-h);display: flex;align-items: center}.menu-top .wrap{display: flex;justify-content: space-between;align-items: center}.menu-close{display: inline-flex;align-items: center;gap: 12px;height: 44px;padding: 0 6px 0 14px;font-size: var(--t-s);font-weight: 650;font-stretch: 115%}.menu-close .x{position: relative;width: 26px;height: 26px}.menu-close .x::before, .menu-close .x::after{content: '';position: absolute;left: 0;top: 12px;width: 100%;height: 2px;background: var(--ink);transition: background 0.3s, box-shadow 0.3s, transform 0.4s var(--ease)}.menu-close .x::before{transform: rotate(45deg)}.menu-close .x::after{transform: rotate(-45deg)}.menu-close:hover .x::before, .menu-close:hover .x::after{background: var(--r633);box-shadow: 0 0 10px var(--r633)}.menu-close:hover .x::before{transform: rotate(135deg)}.menu-close:hover .x::after{transform: rotate(45deg)}.menu-body{overflow-y: auto;overscroll-behavior: contain}.menu-body .wrap{display: grid;gap: 48px;padding-block: 3vh 40px;grid-template-columns: 1fr}@media (min-width: 1000px){.menu-body .wrap{grid-template-columns: minmax(0, 1.7fr) minmax(280px, 1fr);align-items: start}}.menu-nav ul{list-style: none}.menu-nav li{overflow: hidden}.menu-nav a{--i: 0;display: inline-flex;align-items: baseline;gap: 0;font-size: clamp(2.3rem, min(8.6vh, 12vw), 6.6rem);line-height: 0.98;font-weight: 800;font-stretch: 62%;text-decoration: none;color: transparent;-webkit-text-stroke: 1px color-mix(in srgb, var(--ink) 70%, transparent);transition: color 0.35s var(--ease), -webkit-text-stroke-color 0.35s, text-shadow 0.35s;transform: translateY(105%)}.menu.is-open .menu-nav a{transform: none;transition: transform 0.9s var(--ease) calc(0.25s + var(--i) * 0.06s), color 0.35s, text-shadow 0.35s, -webkit-text-stroke-color 0.35s}.menu-nav a .ch{display: inline-block;font-stretch: inherit}.menu-nav a:hover, .menu-nav a:focus-visible, .menu-nav a[aria-current='page']{color: var(--ink);-webkit-text-stroke-color: transparent;text-shadow: 0 0 18px color-mix(in srgb, var(--hover, var(--c488)) 70%, transparent), 0 0 42px color-mix(in srgb, var(--hover, var(--c488)) 40%, transparent)}.menu-nav a[aria-current='page']::after{content: '';align-self: center;width: 10px;height: 10px;border-radius: 50%;margin-left: 0.3em;background: var(--c488);box-shadow: 0 0 12px var(--c488)}@media (prefers-reduced-motion: no-preference){.menu-nav a.gw .ch{animation: gw 0.9s var(--ease) calc(var(--k) * 32ms) both}}@keyframes gw{0%{font-stretch: 62%}40%{font-stretch: 150%}100%{font-stretch: 100%}}.menu-nav a:hover .ch, .menu-nav a:focus-visible .ch{font-stretch: 100%}.menu-preview{position: fixed;z-index: 1;left: 0;top: 0;width: min(30vw, 380px);aspect-ratio: 4 / 3;pointer-events: none;opacity: 0;transform: translate3d(-50%, -50%, 0) scale(0.9);transition: opacity 0.35s var(--ease), transform 0.5s var(--ease)}.menu-preview.on{opacity: 1}.menu-preview img{width: 100%;height: 100%;object-fit: cover;filter: saturate(1.3) contrast(1.1)
drop-shadow(-5px 0 0 rgba(255, 79, 100, 0.55)) drop-shadow(5px 0 0 rgba(46, 230, 255, 0.55))}@media (hover: none), (max-width: 999px){.menu-preview{display: none}}.menu-aside{display: grid;gap: 36px;align-content: start;opacity: 0;transform: translateY(16px)}.menu.is-open .menu-aside{opacity: 1;transform: none;transition: opacity 0.8s var(--ease) 0.55s, transform 0.8s var(--ease) 0.55s}.menu-aside h2{font-size: var(--t-s);font-weight: 600;color: var(--ink-2);font-stretch: 110%;margin-bottom: 14px}.menu-latest{list-style: none;display: grid;gap: 14px}.menu-latest a{display: grid;grid-template-columns: 64px 1fr;gap: 14px;align-items: center;text-decoration: none}.menu-latest img{width: 64px;height: 64px;object-fit: cover;border-radius: 2px}.menu-latest .t{font-size: var(--t-s);font-weight: 560;line-height: 1.3;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden}.menu-latest a:hover .t{color: var(--accent)}.menu-latest .nm{margin-top: 4px}.menu-socials{list-style: none;display: flex;flex-wrap: wrap;gap: 8px 18px}.menu-socials a{font-size: var(--t-s);color: var(--ink-2);text-decoration: none}.menu-socials a:hover{color: var(--ink);text-decoration: underline;text-decoration-color: var(--c488)}.menu-mail{font-size: var(--t-m);font-weight: 600;text-decoration: none}.menu-mail:hover{color: var(--c488)}.menu-foot{border-top: 1px solid var(--line)}.menu-foot .wrap{display: flex;gap: 10px 28px;flex-wrap: wrap;padding-block: 18px;align-items: center}.menu-foot .lbl{color: var(--ink-2);font-size: var(--t-xs);margin-right: 4px}.palette{position: fixed;inset: 0;z-index: 700;display: none;align-items: flex-start;justify-content: center;padding: 12vh 16px 16px;background: color-mix(in srgb, var(--vac) 70%, transparent);backdrop-filter: blur(10px);-webkit-backdrop-filter: blur(10px)}.palette.is-open{display: flex;animation: fade 0.2s var(--ease)}@keyframes fade{from{opacity: 0}}.palette-box{width: min(720px, 100%);max-height: 70vh;display: grid;grid-template-rows: auto 1fr auto;background: linear-gradient(180deg, #11112b, #0a0a1f);border: 1px solid var(--line-2);border-radius: 4px;box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(46, 230, 255, 0.08), 0 0 60px rgba(160, 124, 255, 0.12);overflow: hidden}.palette-input{display: flex;align-items: center;gap: 12px;padding: 0 18px;border-bottom: 1px solid var(--line)}.palette-input svg{width: 20px;height: 20px;color: var(--c488);flex: none}.palette-input input{flex: 1;height: 64px;background: none;border: 0;outline: none;font-size: 1.15rem;font-weight: 500}.palette-input input:focus-visible{outline: none;box-shadow: none}.palette-input:focus-within{box-shadow: inset 0 -1px 0 var(--c488)}.palette-input input::placeholder{color: var(--ink-3)}.palette-results{overflow-y: auto;padding: 8px;list-style: none}.palette-results .grp{padding: 12px 12px 6px;font-size: var(--t-xs);color: var(--ink-2);font-weight: 600}.palette-results [role='option']{display: grid;grid-template-columns: 44px 1fr auto;gap: 14px;align-items: center;padding: 8px 12px;border-radius: 2px;text-decoration: none;cursor: pointer}.palette-results [role='option'] img, .palette-results [role='option'] .ico{width: 44px;height: 44px;object-fit: cover;border-radius: 2px;background: var(--vac-3)}.palette-results .ico{display: grid;place-items: center;color: var(--ink-2)}.palette-results .ico svg{width: 18px;height: 18px}.palette-results .t{font-size: var(--t-s);font-weight: 560;line-height: 1.3}.palette-results .t mark{background: none;color: var(--accent);text-shadow: 0 0 10px color-mix(in srgb, var(--accent) 60%, transparent)}.palette-results [aria-selected='true']{background: color-mix(in srgb, var(--accent) 12%, transparent);box-shadow: inset 2px 0 0 var(--accent)}.palette-results .empty{padding: 28px 16px;color: var(--ink-2)}.palette-foot{display: flex;gap: 18px;padding: 10px 18px;border-top: 1px solid var(--line);font-size: var(--t-xs);color: var(--ink-3)}.palette-foot kbd{font: inherit;padding: 1px 6px;border: 1px solid var(--line);border-radius: 2px;margin-right: 4px;color: var(--ink-2)}@media (hover: hover) and (pointer: fine){html{cursor: url('/media/cursor/star.svg') 14 14, auto}a, button, summary, label, [role='option'], [data-lightbox], [data-yt], [data-yt-pick]{cursor: url('/media/cursor/star-link.svg') 18 18, pointer}input, textarea, [contenteditable]{cursor: text}}.site-footer{position: relative;border-top: 1px solid var(--line);padding-block: 72px 32px;overflow: hidden}.footer-grid{display: grid;gap: 40px 18px;grid-template-columns: repeat(3, minmax(0, 1fr))}.footer-grid .footer-intro{grid-column: 1 / -1}@media (max-width: 799px){.footer-grid a{font-size: 0.8rem}.footer-grid ul{gap: 10px}.footer-grid h2{font-size: 0.78rem}}@media (min-width: 800px){.footer-grid{grid-template-columns: 1.4fr 1fr 1fr 1fr;gap: 40px}.footer-grid .footer-intro{grid-column: auto}}.footer-grid h2{font-size: var(--t-s);color: var(--ink-2);font-weight: 600;margin-bottom: 14px;font-stretch: 110%}.footer-grid ul{list-style: none;display: grid;gap: 8px}.footer-grid a{text-decoration: none;color: var(--ink);font-size: var(--t-s)}.footer-grid a:hover{color: var(--c488)}.footer-socials a{display: inline-flex;align-items: center;gap: 8px}.footer-socials .si{width: 18px;height: 18px;flex: none;color: var(--ink-2);transition: color 0.25s, filter 0.25s}.footer-socials a:hover .si{color: var(--c488);filter: drop-shadow(0 0 6px var(--c488))}.footer-intro p{color: var(--ink-2);max-width: 36ch;font-size: var(--t-s);margin-top: 14px}.footer-word{margin-top: 64px;font-size: clamp(4.5rem, 23vw, 22rem);line-height: 0.8;font-weight: 900;font-stretch: 50%;color: transparent;-webkit-text-stroke: 1px var(--line-2);letter-spacing: -0.01em;user-select: none;white-space: nowrap;text-align: center;background: linear-gradient(90deg, var(--v405), var(--c488), var(--g532), var(--a594), var(--r633), var(--magenta));-webkit-background-clip: text;background-clip: text;background-size: 0% 100%;background-repeat: no-repeat;transition: background-size 1.6s var(--ease)}.footer-word.in, .footer-word:hover{background-size: 100% 100%;-webkit-text-stroke-color: transparent}.footer-bottom{display: flex;flex-wrap: wrap;justify-content: center;text-align: center;gap: 12px;margin-top: 28px;color: var(--ink-3);font-size: var(--t-xs)}.footer-bottom a{color: var(--ink-2)}.lightbox{position: fixed;inset: 0;z-index: 650;display: none;place-items: center;padding: 24px;background: rgba(4, 4, 14, 0.92);backdrop-filter: blur(8px)}.lightbox.is-open{display: grid;animation: fade 0.25s var(--ease)}.lightbox figure{display: grid;gap: 14px;max-width: min(1000px, 92vw)}.lightbox img{max-height: 78vh;width: auto;margin-inline: auto;box-shadow: 0 0 0 1px var(--line-2), 0 0 80px rgba(255, 92, 225, 0.18)}.lightbox figcaption{display: flex;justify-content: space-between;align-items: center;gap: 16px;flex-wrap: wrap}.lightbox figcaption strong{font-size: var(--t-l);font-stretch: 90%}.lightbox-close{position: absolute;top: 16px;right: 16px;width: 48px;height: 48px;display: grid;place-items: center}.lightbox-close::before, .lightbox-close::after{content: '';position: absolute;width: 24px;height: 2px;background: var(--ink)}.lightbox-close::before{transform: rotate(45deg)}.lightbox-close::after{transform: rotate(-45deg)}@view-transition{navigation: auto}@media (prefers-reduced-motion: no-preference){::view-transition-old(root){animation: vt-out 0.5s var(--ease-io) both}::view-transition-new(root){animation: vt-in 0.6s var(--ease-io) both}}@media (prefers-reduced-motion: reduce){::view-transition-group(*), ::view-transition-old(*), ::view-transition-new(*){animation: none !important}}@keyframes vt-out{to{opacity: 0;transform: scale(0.985);filter: blur(4px) hue-rotate(40deg)}}@keyframes vt-in{from{clip-path: inset(0 0 100% 0)}to{clip-path: inset(0 0 0 0)}}.site-header{view-transition-name: header}.hero{position: relative;min-height: 100svh;display: grid;grid-template-rows: 1fr auto;grid-template-columns: minmax(0, 1fr);overflow: hidden;isolation: isolate}.hero-canvas{position: absolute;inset: 0;z-index: -1;width: 100%;height: 100%}.hero-fallback{position: absolute;inset: 0;z-index: -2;background:
radial-gradient(40% 50% at 68% 42%, rgba(160, 124, 255, 0.28), transparent 70%), radial-gradient(30% 40% at 72% 40%, rgba(46, 230, 255, 0.22), transparent 70%), radial-gradient(80% 60% at 50% 110%, rgba(255, 92, 225, 0.14), transparent 70%), var(--vac)}.hero-fallback svg{position: absolute;right: 6vw;top: 50%;width: min(56vw, 640px);transform: translateY(-50%);opacity: 0.85}.hero.webgl-on .hero-fallback svg{opacity: 0;transition: opacity 1.2s}.hero-vignette{position: absolute;inset: 0;z-index: -1;pointer-events: none;background:
linear-gradient(90deg, rgba(6, 6, 22, 0.88) 0%, rgba(6, 6, 22, 0.35) 46%, transparent 70%), linear-gradient(0deg, var(--vac) 0%, transparent 28%)}.hero-inner{align-self: end;display: grid;gap: clamp(20px, 3vw, 32px);padding-top: calc(var(--header-h) + 8vh);padding-bottom: clamp(32px, 6vh, 72px)}.hero-name{font-size: clamp(3.25rem, 14vw, 11.5rem);font-weight: 820;line-height: 0.84;letter-spacing: -0.012em;font-stretch: 70%}.hero-name .line{display: block;white-space: nowrap}.hero-name .ch{display: inline-block;font-stretch: var(--w, 70%);transition: font-stretch 0.25s linear;will-change: font-stretch}.hero-name .line:last-child{color: transparent;-webkit-text-stroke: 1.5px var(--ink)}@media (prefers-reduced-motion: no-preference){.js .hero-name .ch{animation: name-in 1.4s var(--ease) both;animation-delay: calc(0.5s + var(--k) * 45ms)}}@keyframes name-in{0%{font-stretch: 50%;opacity: 0;filter: blur(10px);text-shadow: 0 0 30px var(--c488)}60%{opacity: 1;filter: blur(0)}100%{font-stretch: var(--w, 70%);opacity: 1}}.hero-role{display: flex;flex-wrap: wrap;align-items: baseline;gap: 8px 14px;max-width: 760px;font-family: var(--f-text);font-size: var(--t-l);line-height: 1.35;color: var(--ink-2);font-weight: 380}.hero-role .cycle{font-family: var(--f-display);font-weight: 650;font-stretch: 105%;color: var(--ink);min-width: 14ch;white-space: nowrap}.hero-role .cycle span{color: var(--c488)}.hero-ctas{display: flex;flex-wrap: wrap;gap: 12px}.spectrum{min-width: 0;position: relative;border-top: 1px solid var(--line);background: color-mix(in srgb, var(--vac) 50%, transparent);backdrop-filter: blur(6px)}.spectrum ul{list-style: none;display: grid;grid-auto-flow: column;grid-auto-columns: minmax(170px, 1fr);overflow-x: auto;scrollbar-width: none}.spectrum ul::-webkit-scrollbar{display: none}.spectrum a{position: relative;display: grid;gap: 6px;padding: 18px 20px 20px;text-decoration: none;border-right: 1px solid var(--line);transition: background 0.3s}.spectrum li:first-child a{border-left: 1px solid var(--line)}.spectrum a::before{content: '';position: absolute;left: 0;right: 0;top: -1px;height: 2px;background: var(--accent);box-shadow: 0 0 10px var(--accent), 0 0 30px var(--accent);transform: scaleX(0.18);transform-origin: left;transition: transform 0.6s var(--ease)}.spectrum a:hover::before, .spectrum a:focus-visible::before{transform: scaleX(1)}.spectrum a:hover{background: color-mix(in srgb, var(--accent) 7%, transparent)}.spectrum .wl{font-size: var(--t-xs);color: var(--accent);font-weight: 600;font-variant-numeric: tabular-nums}.spectrum .name{font-size: var(--t-s);font-weight: 600;font-stretch: 100%}.spectrum .count{font-size: var(--t-xs);color: var(--ink-2)}.about-grid{display: grid;gap: clamp(40px, 6vw, 96px);align-items: center}@media (min-width: 960px){.about-grid{grid-template-columns: minmax(0, 5fr) minmax(0, 7fr)}}.portrait{position: relative;aspect-ratio: 4 / 5;overflow: hidden;border-radius: 2px;box-shadow: 0 0 0 1px var(--line), 0 40px 120px rgba(46, 230, 255, 0.12)}.portrait img{width: 100%;height: 100%;object-fit: cover;object-position: 72% 30%;transform: scale(1.02)}.portrait::after{content: '';position: absolute;left: 0;right: 0;top: -10%;height: 10%;background: linear-gradient(180deg, transparent, rgba(46, 230, 255, 0.35), transparent);mix-blend-mode: screen;opacity: 0}@media (prefers-reduced-motion: no-preference){.portrait.in::after{animation: portrait-scan 2.4s var(--ease) 0.2s both}}@keyframes portrait-scan{0%{top: -10%;opacity: 1}100%{top: 110%;opacity: 0.4}}.portrait figcaption{position: absolute;left: 16px;bottom: 14px;font-size: var(--t-xs);color: var(--ink-2)}.about-copy{display: grid;gap: 28px}.about-copy .prose-text p + p{margin-top: 1em}.disciplines{list-style: none;display: grid;gap: 22px;margin-top: 8px}.disciplines li{display: grid;gap: 8px}.disciplines .row{display: flex;justify-content: space-between;gap: 12px;font-size: var(--t-s)}.disciplines .row b{font-weight: 600}.disciplines .row span{color: var(--ink-2);font-variant-numeric: tabular-nums}.disciplines .beam{position: relative;height: 2px;background: var(--line)}.disciplines .beam i{position: absolute;left: 0;top: 0;bottom: 0;width: calc(var(--p) * 100%);background: var(--accent);box-shadow: 0 0 8px var(--accent), 0 0 22px var(--accent);transform-origin: left}.disciplines .beam i::after{content: '';position: absolute;right: -3px;top: -3px;width: 8px;height: 8px;border-radius: 50%;background: #fff;box-shadow: 0 0 10px var(--accent), 0 0 20px var(--accent)}@media (prefers-reduced-motion: no-preference){.js .disciplines .beam i{transform: scaleX(0);transition: transform 1.6s var(--ease)}.js .disciplines.in .beam i{transform: scaleX(1)}.js .disciplines.in li:nth-child(2) .beam i{transition-delay: 0.15s}.js .disciplines.in li:nth-child(3) .beam i{transition-delay: 0.3s}}.research-head{display: flex;flex-wrap: wrap;justify-content: space-between;align-items: end;gap: 24px;margin-bottom: clamp(40px, 6vw, 72px)}.research-head .section-head{margin: 0}.feature{position: relative;display: grid;gap: 28px;text-decoration: none;margin-bottom: 24px;padding: clamp(16px, 2vw, 24px);border: 1px solid var(--line);border-radius: 2px;background: linear-gradient(120deg, color-mix(in srgb, var(--accent) 7%, transparent), transparent 55%);transition: border-color 0.4s, box-shadow 0.4s}@media (min-width: 900px){.feature{grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);align-items: center;gap: clamp(28px, 4vw, 64px)}}.feature:hover{border-color: color-mix(in srgb, var(--accent) 60%, transparent);box-shadow: 0 0 60px color-mix(in srgb, var(--accent) 14%, transparent)}.feature .img{position: relative;aspect-ratio: 1;overflow: hidden;border-radius: 2px}.feature .img img{width: 100%;height: 100%;object-fit: cover;transition: transform 1.2s var(--ease)}.feature:hover .img img{transform: scale(1.04)}.feature .txt{display: grid;gap: 18px;align-content: center}.feature h3{font-size: var(--t-xl);font-weight: 760;font-stretch: 80%;line-height: 1}.feature p{font-family: var(--f-text);color: var(--ink-2);font-size: var(--t-m);line-height: 1.55;max-width: 52ch}.feature .go{font-weight: 600;font-size: var(--t-s);color: var(--accent)}.badge-new{position: absolute;top: clamp(24px, 3vw, 36px);left: clamp(24px, 3vw, 36px);z-index: 2;padding: 6px 10px;font-size: var(--t-xs);font-weight: 650;background: var(--accent);color: var(--vac);border-radius: 2px}.rows{list-style: none;border-top: 1px solid var(--line)}.rows>li{border-bottom: 1px solid var(--line)}.row-link{position: relative;display: grid;grid-template-columns: 1fr;gap: 10px;align-items: center;padding: 22px 4px;text-decoration: none;isolation: isolate}@media (min-width: 800px){.row-link{grid-template-columns: 190px minmax(0, 1fr) auto;gap: 28px;padding: 26px 8px}}.row-link::before{content: '';position: absolute;inset: 0;z-index: -1;background: linear-gradient(90deg, color-mix(in srgb, var(--accent) 12%, transparent), transparent 70%);transform: scaleX(0);transform-origin: left;transition: transform 0.6s var(--ease)}.row-link:hover::before, .row-link:focus-visible::before{transform: scaleX(1)}.row-link .t{font-size: clamp(1.15rem, 1.2vw + 0.8rem, 1.6rem);font-weight: 640;font-stretch: 86%;line-height: 1.12;transition: font-stretch 0.5s var(--ease), color 0.3s}.row-link:hover .t{font-stretch: 96%}.row-link .meta{font-size: var(--t-xs);color: var(--ink-2);white-space: nowrap;font-variant-numeric: tabular-nums}.row-preview{position: fixed;left: 0;top: 0;z-index: 50;width: 260px;aspect-ratio: 1;pointer-events: none;opacity: 0;transform: translate3d(-50%, -50%, 0) rotate(-3deg) scale(0.85);transition: opacity 0.3s, transform 0.4s var(--ease);box-shadow: 0 0 0 1px var(--line-2), 0 20px 60px rgba(0, 0, 0, 0.5)}.row-preview.on{opacity: 1}.row-preview img{width: 100%;height: 100%;object-fit: cover}@media (hover: none), (max-width: 799px){.row-preview{display: none}}.research-more{margin-top: 40px;display: flex;flex-wrap: wrap;gap: 16px;align-items: center;justify-content: space-between}.work-list{list-style: none;display: grid;gap: clamp(56px, 8vw, 110px)}.work-item{display: grid;gap: 28px;align-items: center}@media (min-width: 900px){.work-item{grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);gap: clamp(32px, 5vw, 80px)}.work-item:nth-child(even) .work-media{order: 2}}.work-media{perspective: 1200px}.work-media a{display: block;transform-style: preserve-3d;transition: transform 0.6s var(--ease)}.work-media img{width: 100%;aspect-ratio: 16 / 10;object-fit: cover;border-radius: 2px;box-shadow: 0 0 0 1px var(--line), 0 30px 90px rgba(0, 0, 0, 0.55)}.work-copy{display: grid;gap: 16px;align-content: center}.work-copy .kind{color: var(--ink-2);font-size: var(--t-s)}.work-copy h3{font-size: var(--t-2xl);font-weight: 800;font-stretch: 64%;line-height: 0.92;transition: font-stretch 0.6s var(--ease)}.work-item:hover .work-copy h3{font-stretch: 84%}.work-copy p{font-family: var(--f-text);font-size: var(--t-m);color: var(--ink-2);max-width: 40ch}.music{background: linear-gradient(180deg, transparent, rgba(255, 92, 225, 0.05) 30%, transparent)}.video{position: relative;display: block;width: 100%;aspect-ratio: 16 / 9;overflow: hidden;border-radius: 2px;background: #000;box-shadow: 0 0 0 1px var(--line), 0 40px 120px rgba(255, 92, 225, 0.12)}.video img{position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover;opacity: 0.78;transition: opacity 0.5s, transform 1.4s var(--ease)}.video:hover img{opacity: 0.95;transform: scale(1.03)}.video iframe{position: absolute;inset: 0;width: 100%;height: 100%;border: 0}.video .play{position: absolute;left: 50%;top: 50%;width: clamp(76px, 9vw, 120px);aspect-ratio: 1;transform: translate(-50%, -50%);border-radius: 50%;display: grid;place-items: center;border: 1px solid rgba(255, 255, 255, 0.6);background: rgba(6, 6, 22, 0.35);backdrop-filter: blur(4px);box-shadow: 0 0 0 0 rgba(255, 92, 225, 0.5);transition: box-shadow 0.5s, border-color 0.4s}.video .play::before{content: '';width: 0;height: 0;border-left: 22px solid #fff;border-top: 13px solid transparent;border-bottom: 13px solid transparent;margin-left: 6px}.video:hover .play{border-color: var(--magenta);box-shadow: 0 0 0 14px rgba(255, 92, 225, 0.12), 0 0 50px rgba(255, 92, 225, 0.5)}.video .cap{position: absolute;left: 0;right: 0;bottom: 0;padding: clamp(18px, 3vw, 36px);background: linear-gradient(0deg, rgba(6, 6, 22, 0.92), transparent);font-size: var(--t-l);font-weight: 650;font-stretch: 90%;line-height: 1.15;max-width: 30ch}@media (max-width: 700px){.video .play{width: 64px}.video .play::before{border-left-width: 16px;border-top-width: 10px;border-bottom-width: 10px;margin-left: 4px}.video .cap{font-size: 0.86rem;padding: 34px 14px 12px;max-width: none}ul.gallery{grid-auto-columns: 72vw}}.performances{list-style: none;display: grid;gap: 20px;margin-top: 40px}@media (min-width: 760px){.performances{grid-template-columns: repeat(3, 1fr)}}.performances a{display: grid;grid-template-columns: 112px 1fr;gap: 16px;align-items: center;text-decoration: none;padding: 12px;border: 1px solid var(--line);border-radius: 2px;transition: border-color 0.3s, background 0.3s}.performances a:hover{border-color: color-mix(in srgb, var(--magenta) 60%, transparent);background: rgba(255, 92, 225, 0.05)}.performances .pf-th{--fw: 10px;width: 112px}.performances .pf-th .tframe-in{aspect-ratio: 1}.performances img{width: 100%;height: 100%;object-fit: cover}.performances a>span{display: grid;gap: 4px}.performances .t{display: block;font-weight: 650;font-size: var(--t-m);line-height: 1.2}.performances .s{display: block;color: var(--ink-2);font-size: var(--t-xs)}.music-links{display: flex;flex-wrap: wrap;gap: 12px;margin-top: 32px}.gallery{display: grid;grid-auto-flow: column;grid-auto-columns: clamp(220px, 28vw, 380px);gap: clamp(16px, 2vw, 28px);overflow-x: auto;padding: 30px var(--gutter) 40px;margin-inline: calc(var(--gutter) * -1);scroll-snap-type: x mandatory;scrollbar-width: thin;scrollbar-color: var(--magenta) transparent;perspective: 1400px}.gallery::-webkit-scrollbar{height: 4px}.gallery::-webkit-scrollbar-thumb{background: var(--magenta)}.gallery li{list-style: none;scroll-snap-align: center}.gallery a{display: block;width: 100%;text-align: left;transform: rotateY(var(--ry, 0deg)) scale(var(--sc, 1));transition: transform 0.2s linear;transform-style: preserve-3d}.gallery .tframe{--fw: clamp(16px, 1.6vw, 24px)}.gallery .tframe-in{aspect-ratio: 4 / 5}.gallery img{width: 100%;height: 100%;object-fit: cover}.gallery .t{display: block;margin-top: 12px;font-weight: 650;font-stretch: 95%}.gallery-hint{color: var(--ink-2);font-size: var(--t-xs)}.quotes{display: grid;gap: 32px}@media (min-width: 960px){.quotes{grid-template-columns: minmax(0, 4fr) minmax(0, 8fr);gap: 80px;align-items: center}}.quote-stage{position: relative;min-height: 320px}.quote{position: absolute;inset: 0;display: grid;gap: 28px;align-content: center;opacity: 0;visibility: hidden;transition: opacity 0.6s var(--ease), visibility 0s 0.6s}.quote.on{position: relative;opacity: 1;visibility: visible;transition: opacity 0.8s var(--ease)}.quote blockquote{margin: 0;font-family: var(--f-text);font-style: italic;font-weight: 340;font-size: clamp(1.6rem, 2.4vw + 1rem, 3rem);line-height: 1.2;text-wrap: balance}.quote figcaption{display: flex;align-items: center;gap: 16px}.quote figcaption img{width: 56px;height: 56px;border-radius: 50%;object-fit: cover;filter: grayscale(1) contrast(1.1);box-shadow: 0 0 0 1px var(--line-2)}.quote figcaption b{display: block;font-weight: 650}.quote figcaption span{font-size: var(--t-xs);color: var(--ink-2)}.quote-controls{display: flex;gap: 8px;margin-top: 32px}.quote-controls button{width: 48px;height: 48px;display: grid;place-items: center;border: 1px solid var(--line-2);border-radius: 2px;transition: border-color 0.3s, color 0.3s}.quote-controls button:hover{border-color: var(--a594);color: var(--a594)}.quote-controls svg{width: 18px;height: 18px}.contact-title{font-size: clamp(3rem, 8vw, 8rem);font-weight: 840;font-stretch: 58%;line-height: 0.86}.contact-direct{display: grid;gap: 18px;margin-top: 36px}.contact-direct a{font-size: var(--t-l);font-weight: 650;font-stretch: 95%;text-decoration: none;width: fit-content;display: grid}.contact-direct .lbl{display: block;font-size: var(--t-xs);color: var(--ink-2);font-weight: 500;margin-bottom: 2px}.socials-inline{list-style: none;display: flex;flex-wrap: wrap;gap: 10px;margin-top: 8px}.socials-inline a{display: inline-flex;align-items: center;height: 40px;padding: 0 14px;border: 1px solid var(--line);border-radius: 2px;text-decoration: none;font-size: var(--t-s);transition: border-color 0.3s, color 0.3s}.socials-inline a:hover{border-color: var(--c488);color: var(--c488)}.page-hero{padding-top: calc(var(--header-h) + clamp(40px, 8vw, 120px));padding-bottom: clamp(32px, 5vw, 64px)}.page-hero h1{font-size: var(--t-3xl);font-weight: 830;font-stretch: 60%;line-height: 0.84}.hero-split{display: grid;gap: 24px;align-items: end}@media (min-width: 1000px){.hero-split{grid-template-columns: auto minmax(0, 46ch);justify-content: space-between}.hero-split .lede{margin-top: 0}}.page-hero .lede{margin-top: 24px}.crumbs{display: flex;flex-wrap: wrap;gap: 8px;list-style: none;font-size: var(--t-xs);color: var(--ink-2);margin-bottom: 24px}.crumbs a{color: var(--ink-2);text-decoration: none}.crumbs a:hover{color: var(--ink);text-decoration: underline}.crumbs li + li::before{content: '/';margin-right: 8px;color: var(--ink-3)}.constellation{position: relative;height: clamp(420px, 72vh, 820px);margin-top: 12px;border-block: 1px solid var(--line);overflow: hidden;background: radial-gradient(60% 70% at 50% 50%, rgba(160, 124, 255, 0.08), transparent 70%)}.constellation canvas{width: 100%;height: 100%;touch-action: pan-y}.constellation .label{position: absolute;left: 0;top: 0;z-index: 3;pointer-events: none;width: 280px;padding: 12px;background: rgba(6, 6, 22, 0.88);border: 1px solid var(--accent);border-radius: 2px;box-shadow: 0 0 30px color-mix(in srgb, var(--accent) 30%, transparent);opacity: 0;transform: translate(16px, 16px);transition: opacity 0.2s}.constellation .label.on{opacity: 1}.constellation .label img{width: 100%;aspect-ratio: 2 / 1;object-fit: cover;margin-bottom: 10px}.constellation .label .t{font-size: var(--t-s);font-weight: 620;line-height: 1.25}.constellation .label .nm{margin-top: 8px}.constellation-hint{position: absolute;left: var(--gutter);bottom: 16px;z-index: 2;font-size: var(--t-xs);color: var(--ink-2);display: flex;gap: 16px;flex-wrap: wrap;pointer-events: none}.constellation-noscript{display: grid;place-items: center;height: 100%;color: var(--ink-2)}.constellation.no-webgl{display: none}.library-tools{position: sticky;top: var(--header-h);z-index: 30;background: color-mix(in srgb, var(--vac) 86%, transparent);backdrop-filter: blur(12px);-webkit-backdrop-filter: blur(12px);border-bottom: 1px solid var(--line)}.library-tools .wrap{display: flex;flex-wrap: wrap;gap: 12px 20px;align-items: center;padding-block: 14px}.filters{display: flex;gap: 8px;overflow-x: auto;scrollbar-width: none;flex: 1 1 520px}@media (min-width: 1000px){.filters{flex-wrap: wrap;overflow: visible}}.filters::-webkit-scrollbar{display: none}.chip{display: inline-flex;align-items: center;gap: 8px;height: 38px;padding: 0 14px;white-space: nowrap;border: 1px solid var(--line);border-radius: 2px;font-size: var(--t-s);font-weight: 560;color: var(--ink-2);transition: border-color 0.25s, color 0.25s, background 0.25s, box-shadow 0.25s}.chip i{width: 8px;height: 8px;border-radius: 50%;background: var(--accent);box-shadow: 0 0 8px var(--accent)}.chip .n{font-size: var(--t-xs);color: var(--ink-3);font-variant-numeric: tabular-nums}.chip:hover{color: var(--ink);border-color: var(--line-2)}.chip[aria-pressed='true']{color: var(--ink);border-color: var(--accent);background: color-mix(in srgb, var(--accent) 12%, transparent);box-shadow: 0 0 20px color-mix(in srgb, var(--accent) 22%, transparent)}.chip[aria-pressed='true'] .n{color: var(--ink-2)}.lib-search{position: relative;flex: 0 1 300px;min-width: 200px}.lib-search input{width: 100%;height: 38px;padding: 0 12px 0 36px;background: transparent;border: 1px solid var(--line);border-radius: 2px;font-size: var(--t-s)}.lib-search input:focus{outline: none;border-color: var(--c488)}.lib-search svg{position: absolute;left: 11px;top: 11px;width: 16px;height: 16px;color: var(--ink-3)}.lib-count{font-size: var(--t-xs);color: var(--ink-2);font-variant-numeric: tabular-nums}.lib-grid{list-style: none;display: grid;gap: clamp(16px, 2vw, 28px);grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr));padding-block: 48px 24px}.lib-grid li[hidden]{display: none}.tile{position: relative;display: grid;grid-template-rows: auto 1fr;height: 100%;text-decoration: none;isolation: isolate}.tile .body{display: grid;gap: 10px;padding: 16px 2px 8px;align-content: start}.tile h2, .tile h3{font-size: var(--t-m);font-weight: 650;font-stretch: 92%;line-height: 1.22;transition: color 0.3s}.tile:hover h2, .tile:hover h3{color: var(--accent)}.tile .meta{display: flex;flex-wrap: wrap;gap: 6px 14px;align-items: center;font-size: var(--t-xs);color: var(--ink-2)}.lib-empty{padding: 40px 0;color: var(--ink-2)}.lib-empty button{color: var(--c488);text-decoration: underline}.fields-explainer{display: grid;gap: 14px;grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr));list-style: none;padding-block: 24px 80px}.fields-explainer li{padding: 18px;border: 1px solid var(--line);border-radius: 2px;display: grid;gap: 8px}.fields-explainer p{font-size: var(--t-s);color: var(--ink-2);font-family: var(--f-text)}.fields-explainer .why{font-size: var(--t-xs);color: var(--ink-3)}.progress{position: fixed;left: 0;top: 0;z-index: 500;height: 2px;width: 100%;transform-origin: left;transform: scaleX(0);background: var(--accent);box-shadow: 0 0 10px var(--accent), 0 0 24px var(--accent)}.art-hero{padding-top: calc(var(--header-h) + clamp(32px, 6vw, 88px))}.art-hero-grid{display: grid;gap: clamp(32px, 4vw, 64px);align-items: end}@media (min-width: 1000px){.art-hero-grid{grid-template-columns: minmax(0, 7fr) minmax(0, 5fr)}}.art-title{font-weight: 800;font-stretch: 74%;line-height: 0.94;letter-spacing: -0.005em;font-size: clamp(2.4rem, 5.4vw, 5.4rem)}.art-title.len-m{font-size: clamp(2.1rem, 4.4vw, 4.4rem);font-stretch: 78%}.art-title.len-l{font-size: clamp(1.9rem, 3.4vw, 3.5rem);font-stretch: 82%;line-height: 0.98}.art-title.len-xl{font-size: clamp(1.7rem, 2.7vw, 2.8rem);font-stretch: 86%;line-height: 1.02}.art-meta{display: flex;flex-wrap: wrap;gap: 10px 22px;align-items: center;margin-top: 28px;font-size: var(--t-s);color: var(--ink-2)}.art-meta a{color: var(--ink-2)}.art-meta a:hover{color: var(--ink)}.art-cover{position: relative;max-width: 520px;width: 100%;justify-self: end}.art-layout{display: grid;gap: 48px;padding-block: clamp(48px, 7vw, 100px)}@media (min-width: 1100px){.art-layout{grid-template-columns: 260px minmax(0, var(--read)) 1fr;gap: 64px}}.toc{align-self: start;font-size: var(--t-s)}@media (min-width: 1100px){.toc{position: sticky;top: calc(var(--header-h) + 32px);max-height: calc(100vh - var(--header-h) - 64px);overflow-y: auto}}.toc details{border: 1px solid var(--line);border-radius: 2px;padding: 14px 16px}@media (min-width: 1100px){.toc details{border: 0;padding: 0}.toc summary{pointer-events: none}.toc summary::marker, .toc summary::-webkit-details-marker{display: none;content: ''}}.toc summary{font-weight: 650;color: var(--ink-2);cursor: pointer;list-style-position: inside}.toc ol{list-style: none;display: grid;gap: 2px;margin-top: 14px;border-left: 1px solid var(--line)}.toc a{display: block;padding: 6px 0 6px 16px;margin-left: -1px;border-left: 1px solid transparent;text-decoration: none;color: var(--ink-2);line-height: 1.3;transition: color 0.2s, border-color 0.2s}.toc a.sub{padding-left: 30px;font-size: var(--t-xs)}.toc a:hover{color: var(--ink)}.toc a.on{color: var(--ink);border-color: var(--accent);background: linear-gradient(90deg, color-mix(in srgb, var(--accent) 12%, transparent), transparent 80%)}.toc[dir='rtl'] a.on{background: linear-gradient(270deg, color-mix(in srgb, var(--accent) 12%, transparent), transparent 80%)}.prose{font-family: var(--f-text);font-size: var(--t-read);line-height: 1.68;font-weight: 380;color: #e2e0f8;min-width: 0}.source-note{font-family: var(--f-display)}.prose>* + *{margin-top: 1.1em}.prose h2, .prose h3, .prose h4, .prose h5, .prose h6{font-family: var(--f-display);color: var(--ink);scroll-margin-top: calc(var(--header-h) + 24px)}.prose h2{font-size: var(--t-xl);font-weight: 760;font-stretch: 80%;line-height: 1.02;margin-top: 2.2em}.prose h2::before{content: '';display: block;width: 40px;height: 2px;margin-bottom: 18px;background: var(--accent);box-shadow: 0 0 10px var(--accent)}.prose h3{font-size: var(--t-l);font-weight: 680;font-stretch: 90%;line-height: 1.15;margin-top: 1.8em}.prose h4, .prose h5, .prose h6{font-size: var(--t-m);font-weight: 680;margin-top: 1.6em}.prose h2 + *, .prose h3 + *, .prose h4 + *{margin-top: 0.6em}.prose a{color: var(--ink);text-decoration-color: color-mix(in srgb, var(--accent) 70%, transparent);text-decoration-thickness: 1px;transition: color 0.2s;overflow-wrap: anywhere}.prose a:hover{color: var(--accent)}.prose strong{font-weight: 640;color: var(--ink)}.prose .lede{font-size: var(--t-l);max-width: none;color: var(--ink-2)}.prose ul, .prose ol{padding-left: 1.3em}.prose li + li{margin-top: 0.4em}.prose li>ul, .prose li>ol{margin-top: 0.4em}.prose ul li::marker{color: var(--accent)}.prose ol li::marker{color: var(--accent);font-family: var(--f-display);font-weight: 650;font-size: 0.9em}.prose blockquote{margin: 1.6em 0;padding-left: 1.2em;border-left: 2px solid var(--accent);font-style: italic;color: var(--ink-2)}.prose figure{margin: 2.2em auto;width: fit-content;max-width: 100%;text-align: center}.prose figure img{display: block;margin-inline: auto;width: auto;max-width: 100%;height: auto;box-sizing: border-box;border: clamp(12px, 1.6vw, 18px) solid transparent;border-image: url('/media/tiles/frame-tazhib.svg') 60 round;background: #fff;border-radius: 0;box-shadow: 0 0 0 1px color-mix(in srgb, var(--accent, var(--c488)) 60%, transparent), 0 0 24px color-mix(in srgb, var(--accent, var(--c488)) 28%, transparent), 0 18px 50px rgba(0, 0, 0, 0.5)}.prose figure figcaption{margin-top: 12px;text-align: center}.prose figcaption{margin-top: 10px;font-size: var(--t-s);color: var(--ink-2);font-family: var(--f-display)}.prose figcaption em{font-style: normal}.prose hr{border: 0;height: 1px;margin-block: 2.4em;background: linear-gradient(90deg, transparent, var(--accent), transparent)}.prose code{font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;font-size: 0.86em;padding: 0.1em 0.35em;background: var(--vac-3);border-radius: 2px}.prose sup{line-height: 0}.prose .fn-ref{text-decoration: none;color: var(--accent);font-family: var(--f-display);font-size: 0.8em;font-weight: 650;padding: 0 1px}.table-wrap{overflow-x: auto;border: 1px solid var(--line);border-radius: 2px;margin-block: 1.6em}.prose table{width: 100%;border-collapse: collapse;font-family: var(--f-display);font-size: var(--t-s);line-height: 1.4}.prose th, .prose td{padding: 12px 14px;text-align: left;vertical-align: top;border-bottom: 1px solid var(--line)}.prose th{font-weight: 650;color: var(--ink);background: color-mix(in srgb, var(--accent) 9%, transparent)}.prose tr:last-child td{border-bottom: 0}.footnotes{margin-top: 3em;padding-top: 1em;font-size: var(--t-s);line-height: 1.55;color: var(--ink-2)}.footnotes h2{font-size: var(--t-l);margin-top: 0}.footnote{scroll-margin-top: calc(var(--header-h) + 24px)}.footnote:target{color: var(--ink);background: color-mix(in srgb, var(--accent) 8%, transparent);box-shadow: -10px 0 0 color-mix(in srgb, var(--accent) 8%, transparent)}.footnote + .footnote{margin-top: 0.7em}.fn-back{font-family: var(--f-display);font-weight: 650;color: var(--accent) !important;text-decoration: none !important}.art-aside{display: none}@media (min-width: 1100px){.art-aside{display: block;align-self: start;position: sticky;top: calc(var(--header-h) + 32px)}}.share{display: grid;gap: 10px}.share h2{font-size: var(--t-s);color: var(--ink-2);font-weight: 600}.share ul{list-style: none;display: flex;flex-wrap: wrap;gap: 8px}.share a, .share button{display: inline-flex;align-items: center;height: 36px;padding: 0 12px;border: 1px solid var(--line);border-radius: 2px;font-size: var(--t-xs);text-decoration: none;color: var(--ink-2);transition: border-color 0.2s, color 0.2s}.share a:hover, .share button:hover{border-color: var(--accent);color: var(--ink)}.source-note{margin-top: 3em;padding: 18px 20px;border: 1px solid var(--line);border-radius: 2px;font-family: var(--f-display);font-size: var(--t-s);color: var(--ink-2);display: flex;flex-wrap: wrap;gap: 8px 16px;justify-content: space-between;align-items: center}.source-note a{color: var(--ink)}.pending-doc{display: grid;gap: 20px}.pending-doc p{font-family: var(--f-display);font-size: var(--t-m);color: var(--ink-2)}.pending-doc iframe{width: 100%;height: 80vh;border: 1px solid var(--line);border-radius: 2px;background: #fff}.next-up{border-top: 1px solid var(--line);padding-block: clamp(56px, 8vw, 110px)}.next-up h2{font-size: var(--t-xl);font-stretch: 80%;font-weight: 760;margin-bottom: 32px}.related{list-style: none;display: grid;gap: clamp(16px, 2vw, 28px);grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr))}.prevnext{display: grid;gap: 16px;margin-top: 56px}@media (min-width: 800px){.prevnext{grid-template-columns: 1fr 1fr}}.prevnext a{display: grid;gap: 8px;padding: 20px;border: 1px solid var(--line);border-radius: 2px;text-decoration: none;transition: border-color 0.3s, background 0.3s}.prevnext a:hover{border-color: var(--accent);background: color-mix(in srgb, var(--accent) 6%, transparent)}.prevnext .dir{font-size: var(--t-xs);color: var(--ink-2)}.prevnext .t{font-weight: 650;font-stretch: 92%;line-height: 1.25}.prevnext .next{text-align: right}.about-hero{display: grid;gap: 40px;align-items: end}@media (min-width: 960px){.about-hero{grid-template-columns: minmax(0, 7fr) minmax(0, 4fr)}}.headshot{position: relative;max-width: 420px;justify-self: end}.headshot img{border-radius: 2px;filter: saturate(0.9) contrast(1.05);box-shadow: 0 0 0 1px var(--line)}.headshot::after{content: '';position: absolute;inset: 0;background: linear-gradient(200deg, rgba(46, 230, 255, 0.18), transparent 40%, rgba(255, 92, 225, 0.2));mix-blend-mode: screen;pointer-events: none}.timeline{list-style: none;display: grid;border-left: 1px solid var(--line);margin-left: 6px}.timeline li{position: relative;padding: 0 0 36px 32px;display: grid;gap: 6px}.timeline li::before{content: '';position: absolute;left: -5px;top: 6px;width: 9px;height: 9px;border-radius: 50%;background: var(--accent);box-shadow: 0 0 10px var(--accent)}.timeline .when{font-size: var(--t-xs);color: var(--accent);font-weight: 650;font-variant-numeric: tabular-nums}.timeline .what{font-size: var(--t-l);font-weight: 650;font-stretch: 92%;line-height: 1.15}.timeline .detail{font-family: var(--f-text);color: var(--ink-2);max-width: 56ch}.two-col{display: grid;gap: clamp(40px, 6vw, 96px)}@media (min-width: 960px){.two-col{grid-template-columns: minmax(0, 5fr) minmax(0, 7fr)}}.lost{min-height: 100svh;display: grid;place-items: center;text-align: center;position: relative;overflow: hidden;padding: var(--header-h) var(--gutter) 40px}.lost-tunnel{position: absolute;inset: -20%;z-index: -1;perspective: 400px}.lost-tunnel i{position: absolute;left: 50%;top: 50%;width: 60vmin;height: 60vmin;margin: -30vmin;border: 1px solid var(--c488);border-radius: 50%;box-shadow: 0 0 20px var(--c488), inset 0 0 20px var(--c488);opacity: 0}@media (prefers-reduced-motion: no-preference){.lost-tunnel i{animation: tunnel 4s linear infinite;animation-delay: calc(var(--k) * -0.8s)}}@keyframes tunnel{0%{transform: translateZ(-800px);opacity: 0}30%{opacity: 0.6}100%{transform: translateZ(380px);opacity: 0}}.lost h1{font-size: clamp(5rem, 22vw, 16rem);font-weight: 900;font-stretch: 50%;line-height: 0.8;color: transparent;-webkit-text-stroke: 1.5px var(--ink);text-shadow: 0 0 40px rgba(46, 230, 255, 0.35)}.lost p{margin: 24px auto 32px;max-width: 46ch;font-family: var(--f-text);font-size: var(--t-l);color: var(--ink-2)}.lost .acts{display: flex;flex-wrap: wrap;gap: 12px;justify-content: center}@media (min-width: 1100px){.share-mobile{display: none}}.prose-col{min-width: 0}.callout{margin-block: 1.8em;padding: 18px 22px;border: 1px solid color-mix(in srgb, var(--accent) 45%, transparent);background: color-mix(in srgb, var(--accent) 6%, transparent);border-radius: 2px;font-family: var(--f-display);font-size: var(--t-s);line-height: 1.55;color: var(--ink)}.callout p + p{margin-top: 0.7em}.callout ul, .callout ol{margin-top: 0.6em;padding-left: 1.2em}.callout-title{font-weight: 700;font-stretch: 95%}.callout--notice{border-color: color-mix(in srgb, var(--r633) 60%, transparent);background: color-mix(in srgb, var(--r633) 7%, transparent)}.callout--notice p:first-child{font-weight: 700;letter-spacing: 0.02em;color: var(--r633)}.prose-col>.callout:first-child{margin-top: 0}.lang-note a{color: var(--ink)}.prose sup .cite, .prose .cites .cite{text-decoration: none;color: var(--accent);font-family: var(--f-display);font-weight: 650;padding: 0 1px}.prose sup{font-size: 0.68em;line-height: 0;vertical-align: super}.prose .cite:hover{text-decoration: underline}.prose .cites{font-family: var(--f-display);font-size: 0.82em;color: var(--ink-2);white-space: nowrap}.prose .refs{font-family: var(--f-display);font-size: var(--t-s);line-height: 1.5;color: var(--ink-2);padding-left: 2.6em;display: grid;gap: 0.55em}.prose .refs li{scroll-margin-top: calc(var(--header-h) + 24px);overflow-wrap: anywhere;padding-left: 0.3em}.prose .refs li + li{margin-top: 0}.prose .refs li::marker{color: var(--accent);font-weight: 650}.prose .refs li:target{color: var(--ink);background: color-mix(in srgb, var(--accent) 10%, transparent);box-shadow: -8px 0 0 color-mix(in srgb, var(--accent) 10%, transparent)}.prose .refs a{color: var(--ink-2)}.prose #references{margin-top: 2.6em}.prose h4.label{font-size: var(--t-m);font-stretch: 96%;color: var(--ink)}.prose .caption{font-family: var(--f-display);font-size: var(--t-s);font-weight: 650;color: var(--ink-2);margin-bottom: -0.4em}.prose table caption{caption-side: top;text-align: left;padding: 12px 14px;font-weight: 650;color: var(--ink);border-bottom: 1px solid var(--line);background: color-mix(in srgb, var(--accent) 5%, transparent)}.prose td{color: var(--ink-2)}.prose td strong{color: var(--ink)}.math-block{overflow-x: auto;margin-block: 1.4em;padding: 14px 8px;text-align: center;border-block: 1px solid var(--line)}.prose math{font-size: 1.08em}.prose .lede + *{margin-top: 1.4em}.listen{display: grid;grid-template-columns: auto 1fr;gap: 18px;align-items: center;margin-bottom: 2.2em;padding: 16px 18px;border: 1px solid color-mix(in srgb, var(--accent) 40%, transparent);border-radius: 2px;background: linear-gradient(110deg, color-mix(in srgb, var(--accent) 10%, transparent), transparent 70%)}.listen audio{grid-column: 1 / -1;width: 100%}.listen.enhanced audio{display: none}.listen:not(.enhanced) .listen-btn, .listen:not(.enhanced) .listen-bar{display: none}.listen-btn{position: relative;width: 56px;height: 56px;border-radius: 50%;display: grid;place-items: center;border: 1px solid var(--accent);box-shadow: 0 0 18px color-mix(in srgb, var(--accent) 40%, transparent);transition: box-shadow 0.3s, background 0.3s}.listen-btn:hover{background: color-mix(in srgb, var(--accent) 16%, transparent);box-shadow: 0 0 0 8px color-mix(in srgb, var(--accent) 12%, transparent), 0 0 30px color-mix(in srgb, var(--accent) 50%, transparent)}.listen-btn .ico{width: 0;height: 0;border-left: 14px solid var(--ink);border-top: 9px solid transparent;border-bottom: 9px solid transparent;margin-left: 4px}.listen.playing .listen-btn .ico{width: 14px;height: 16px;border: 0;margin: 0;background: linear-gradient(90deg, var(--ink) 0 35%, transparent 35% 65%, var(--ink) 65%)}.listen.playing .listen-btn{animation: pulse-ring 2s var(--ease) infinite}@keyframes pulse-ring{50%{box-shadow: 0 0 0 10px color-mix(in srgb, var(--accent) 10%, transparent), 0 0 34px color-mix(in srgb, var(--accent) 55%, transparent)}}@media (prefers-reduced-motion: reduce){.listen.playing .listen-btn{animation: none}}.listen-label{font-size: var(--t-xs);color: var(--accent);font-weight: 650}.listen-title{font-size: var(--t-s);font-weight: 620;line-height: 1.3;margin-top: 2px}.listen-bar{display: flex;align-items: center;gap: 12px;margin-top: 10px}.listen-bar input{flex: 1;accent-color: var(--accent);height: 4px}.listen-time{font-size: var(--t-xs);color: var(--ink-2);font-variant-numeric: tabular-nums;white-space: nowrap}.art-title-fa{margin-top: 14px;font-family: 'Vazirmatn', var(--f-text);font-size: var(--t-xl);font-weight: 700;color: var(--ink-2)}.prose[dir='rtl'], .toc[dir='rtl']{font-family: 'Vazirmatn', var(--f-text)}.prose[dir='rtl']{font-size: calc(var(--t-read) * 0.98);line-height: 2.05;font-weight: 400;text-align: right}.prose[dir='rtl'] h2, .prose[dir='rtl'] h3, .prose[dir='rtl'] h4{font-family: 'Vazirmatn', var(--f-display);font-stretch: normal;letter-spacing: 0;line-height: 1.5}.prose[dir='rtl'] h2{font-size: var(--t-l);font-weight: 800}.prose[dir='rtl'] h3{font-size: var(--t-m);font-weight: 750}.prose[dir='rtl'] h2::before{margin-left: auto;margin-right: 0}.prose[dir='rtl'] ul, .prose[dir='rtl'] ol{padding-left: 0;padding-right: 1.4em}.prose[dir='rtl'] .refs{padding-left: 0;padding-right: 2.2em;font-family: 'Vazirmatn', var(--f-display)}.prose[dir='rtl'] blockquote{border-left: 0;border-right: 2px solid var(--accent);padding-left: 0;padding-right: 1.2em;font-style: normal}.prose[dir='rtl'] table, .prose[dir='rtl'] figcaption, .prose[dir='rtl'] .callout{font-family: 'Vazirmatn', var(--f-display)}.prose[dir='rtl'] th, .prose[dir='rtl'] td{text-align: right}.prose[dir='rtl'] figure img{background: #fff}.prose[dir='rtl'] .invocation{text-align: center;color: var(--ink-2);font-weight: 600}.prose[dir='rtl'] .note{color: var(--ink-2);font-size: 0.9em;margin-top: 0.3em}.prose[dir='rtl'] sup .cite{font-family: 'Vazirmatn', var(--f-display)}.prose .sources{display: grid;gap: 0.4em}.toc[dir='rtl'] ol{border-left: 0;border-right: 1px solid var(--line)}.toc[dir='rtl'] a{padding: 6px 16px 6px 0;margin-left: 0;margin-right: -1px;border-left: 0;border-right: 1px solid transparent}.toc[dir='rtl'] a.on{border-right-color: var(--accent)}.prose[dir='rtl'] ol{list-style-type: persian}.prose[dir='rtl'] ol li::marker{font-family: 'Vazirmatn', var(--f-display)}.prose table{font-size: 0.875rem}.prose th, .prose td{padding: 10px 12px}.table-wrap{background: linear-gradient(90deg, transparent calc(100% - 24px), rgba(6, 6, 22, 0.6))}:root{--lapis: #1b3a92;--turq: #2bb4c3;--saffron: #f0b62f;--gold: #d9b064}@property --mx{syntax: '<length-percentage>';inherits: true;initial-value: 72%}@property --my{syntax: '<length-percentage>';inherits: true;initial-value: 34%}@property --spin{syntax: '<angle>';inherits: false;initial-value: 0deg}body{background: transparent}.depth{position: fixed;inset: 0;z-index: -1;pointer-events: none;overflow: hidden}.depth i{position: absolute;inset: -30% -10%;will-change: transform}.depth .d1{background: url('/media/tiles/girih-lines.svg') 0 0 / 150px;opacity: 0.035}.depth canvas{position: absolute;inset: 0;width: 100%;height: 100%;opacity: 0;transition: opacity 1.4s ease}.bg-on .depth canvas{opacity: 1}.bg-on .depth .d1, .bg-on .depth .d3{display: none}.depth .d3{inset: 0;background:
radial-gradient(38% 32% at 12% 22%, rgba(46, 230, 255, 0.07), transparent 70%), radial-gradient(34% 30% at 88% 68%, rgba(255, 92, 225, 0.06), transparent 70%), radial-gradient(30% 26% at 60% 110%, rgba(217, 176, 100, 0.06), transparent 70%)}h1, .h2, .contact-title{text-shadow: 0 0 34px color-mix(in srgb, var(--accent) 20%, transparent), 0 2px 0 rgba(0, 0, 0, 0.35)}.brand-mark{position: relative;display: block;width: 34px;height: 34px;flex: none}.bm-star{width: 100%;height: 100%;overflow: visible;transition: transform 1.4s cubic-bezier(0.2, 0.8, 0.2, 1), filter 0.4s}.bm-star .bm-base{vector-effect: non-scaling-stroke}.bm-core{fill: transparent;stroke: var(--ink);stroke-width: 1.4;vector-effect: non-scaling-stroke;transition: fill 0.3s, stroke 0.3s}.bm-glint{fill: none;stroke: #fff;stroke-width: 2.6;stroke-linecap: round;stroke-dasharray: 9 91;stroke-dashoffset: 100;opacity: 0;vector-effect: non-scaling-stroke}.bm-rays{position: absolute;left: 50%;top: 50%;width: 200%;height: 200%;max-width: none;transform: translate(-50%, -50%);overflow: visible;pointer-events: none;filter: drop-shadow(0 0 2px rgba(255, 255, 255, 0.8))}.bm-rays line{stroke-width: 1.8;stroke-linecap: round;stroke-dasharray: 4 10;stroke-dashoffset: 4;opacity: 0}.bm-flare{opacity: 0;transform-box: fill-box;transform-origin: center}.brand:hover .bm-star, .brand:focus-visible .bm-star{filter: drop-shadow(0 0 5px var(--c488)) drop-shadow(0 0 12px var(--magenta))}.brand:hover .bm-core, .brand:focus-visible .bm-core{fill: #fff;stroke: #fff}@media (prefers-reduced-motion: no-preference){.brand:hover .bm-star, .brand:focus-visible .bm-star{transform: rotate(252deg)}.brand:hover .bm-glint, .brand:focus-visible .bm-glint{animation: bm-glint 1.2s var(--ease) 0.15s both}.brand:hover .bm-rays line, .brand:focus-visible .bm-rays line{animation: bm-ray 0.9s var(--ease) calc(0.3s + var(--i) * 40ms) both}.brand:hover .bm-flare, .brand:focus-visible .bm-flare{animation: bm-flare 1.1s var(--ease) 0.25s both}}@keyframes bm-glint{0%{stroke-dashoffset: 100;opacity: 0}12%, 85%{opacity: 1}100%{stroke-dashoffset: 0;opacity: 0}}@keyframes bm-ray{0%{stroke-dashoffset: 4;opacity: 0}15%{opacity: 1}100%{stroke-dashoffset: -10;opacity: 0}}@keyframes bm-flare{0%{opacity: 0;transform: scale(0.3)}30%{opacity: 1}100%{opacity: 0;transform: scale(1.7)}}.tframe{--fw: clamp(22px, 2.4vw, 32px);--neon: var(--accent);position: relative;display: block;isolation: isolate;border: var(--fw) solid transparent;border-image: var(--fimg) 60 round;background: #05050f;box-shadow:
0 0 0 1px color-mix(in srgb, var(--neon) 60%, transparent), 0 0 28px color-mix(in srgb, var(--neon) 32%, transparent), 0 26px 70px rgba(0, 0, 0, 0.6);transition: box-shadow 0.45s var(--ease), transform 0.5s var(--ease)}.tframe--xl{--fw: clamp(26px, 3.2vw, 44px)}.tframe--banai{--fimg: url('/media/tiles/frame-banai.svg')}.tframe--coaster{--fimg: url('/media/tiles/frame-coaster.svg')}.tframe--tazhib{--fimg: url('/media/tiles/frame-tazhib.svg')}.tframe--carpet{--fimg: url('/media/tiles/frame-carpet.svg')}.tframe--zellige{--fimg: url('/media/tiles/frame-zellige.svg')}.tframe-in{position: relative;display: block;overflow: hidden;height: 100%}.tframe-in>img, .tframe-in>picture>img{display: block;width: 100%;height: 100%;object-fit: cover}.tframe::before{content: '';position: absolute;z-index: 3;pointer-events: none;inset: calc(var(--fw) * -1 - 3px);padding: 3px;border-radius: 2px;background: conic-gradient(from var(--spin), transparent 0turn 0.6turn, var(--neon) 0.78turn, #fff 0.84turn, var(--neon) 0.9turn, transparent 1turn);-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);-webkit-mask-composite: xor;mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);mask-composite: exclude;filter: drop-shadow(0 0 5px var(--neon)) drop-shadow(0 0 12px var(--neon));opacity: 0.85}.tframe::after{content: '';position: absolute;z-index: 2;pointer-events: none;inset: calc(var(--fw) * -1);background: linear-gradient(115deg, transparent 40%, rgba(255, 250, 235, 0.22) 48%, rgba(255, 255, 255, 0.05) 53%, transparent 60%) 120% 0 / 300% 100% no-repeat}@media (prefers-reduced-motion: no-preference){.tframe::before{animation: tf-spin 8s linear infinite}.tframe:hover::after, a:hover>.tframe::after, a:focus-visible>.tframe::after, [data-tilt]:hover .tframe::after{animation: tf-glint 1.2s var(--ease) both}}@keyframes tf-spin{to{--spin: 1turn}}@keyframes tf-glint{from{background-position: 120% 0}to{background-position: -20% 0}}.tframe:hover, a:hover>.tframe, [data-tilt]:hover .tframe{box-shadow:
0 0 0 1px var(--neon), 0 0 46px color-mix(in srgb, var(--neon) 55%, transparent), 0 0 110px color-mix(in srgb, var(--neon) 22%, transparent), 0 36px 90px rgba(0, 0, 0, 0.65)}.tile{perspective: 900px}.tile .img{aspect-ratio: 1;overflow: visible;border-radius: 0;transform: rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg))}.tile .img::after{width: auto;box-shadow: none;left: auto;right: auto;top: auto;bottom: auto;inset: calc(var(--fw) * -1)}.tile .tframe-in img, .feature .tframe-in img, .work-media .tframe-in img, .art-cover .tframe-in img{transition: transform 1.1s var(--ease), filter 0.6s;filter: saturate(0.92) brightness(0.9)}.tile:hover .tframe-in img, .feature:hover .tframe-in img, .work-media a:hover .tframe-in img{transform: scale(1.07);filter: saturate(1.18) brightness(1.06)}.tile .tframe-in::after, .feature .tframe-in::after, .work-media .tframe-in::after{content: '';position: absolute;inset: 0;pointer-events: none;background: url('/media/tiles/girih-lines.svg') 0 0 / 64px;mix-blend-mode: overlay;opacity: 0;-webkit-mask: radial-gradient(circle at var(--gx, 50%) var(--gy, 50%), #000, transparent 62%);mask: radial-gradient(circle at var(--gx, 50%) var(--gy, 50%), #000, transparent 62%);transition: opacity 0.45s}.tile:hover .tframe-in::after, .feature:hover .tframe-in::after, .work-media a:hover .tframe-in::after{opacity: 1}.tile .body{padding-top: 22px}.feature .img{aspect-ratio: 1;overflow: visible;border-radius: 0}.feature{overflow: visible}.work-media a{transform: rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg))}.work-media img{aspect-ratio: 16 / 10;box-shadow: none;border-radius: 0}.related .tile .img, .lib-grid .tile .img{--fw: clamp(18px, 2vw, 26px)}@property --p{syntax: '<number>';inherits: false;initial-value: 0}.lt-title, .menu-nav a{--tt-img: url('/media/tiles/girih.svg');--tt-size: 170px}.lt-title .w{white-space: nowrap}.lt{--fill: var(--ink);--fc: color-mix(in srgb, var(--fill) calc(100% - var(--p) * 100%), transparent);background-image: linear-gradient(var(--fc), var(--fc)), var(--tt-img);background-size: 100% 100%, max(var(--tt-size), 1.7em);background-position: 0 0, var(--bx, 0px) calc((1 - var(--p)) * 1.6em - 0.25em);background-repeat: no-repeat, repeat-x;-webkit-background-clip: text;background-clip: text;-webkit-text-fill-color: transparent;text-shadow: none;transition: --p 1.1s ease-out, -webkit-text-stroke-color 0.6s}.lt:hover{--p: 1;transition-duration: 0.12s;-webkit-text-stroke: 1px color-mix(in srgb, var(--accent, var(--c488)) 80%, #fff)}.lt:hover + .lt, .lt:has(+ .lt:hover){--p: 0.35;transition-duration: 0.25s}.lt-title{filter: drop-shadow(0 0 22px color-mix(in srgb, var(--accent, var(--c488)) 22%, transparent))}.tt{--sweep: var(--accent, var(--c488))}.tt:hover, a:hover .tt, a:focus-visible .tt{background: linear-gradient(100deg, var(--ink) 0 38%, #fff 45%, var(--sweep) 50%, #fff 55%, var(--ink) 62% 100%) 100% 0 / 280% 100% no-repeat;-webkit-background-clip: text;background-clip: text;-webkit-text-fill-color: transparent;text-shadow: none;filter: drop-shadow(0 0 6px color-mix(in srgb, var(--sweep) 75%, transparent)) drop-shadow(0 0 20px color-mix(in srgb, var(--sweep) 40%, transparent))}@media (prefers-reduced-motion: no-preference){.tt:hover, a:hover .tt, a:focus-visible .tt{animation: neon-sweep 1.5s var(--ease) infinite}}@keyframes neon-sweep{from{background-position: 100% 0}to{background-position: 0 0}}.tile-rule{--rope: url('/media/tiles/band-rope.svg');position: relative;height: 104px;overflow: hidden;perspective: 900px;perspective-origin: 50% 0%;-webkit-mask: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);mask: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent)}.tr-stage{position: absolute;inset: 0;transform-style: preserve-3d}.tr-stage i{position: absolute;left: 0;right: 0;display: block}.tr-back{top: 6px;height: 40px;left: -30% !important;right: -30% !important;background: var(--rope) 0 0 / 32px 12px repeat-x, url('/media/tiles/girih-lines.svg') 0 12px / 28px 28px repeat-x, var(--rope) 0 40px / 32px 12px repeat-x;transform: translateZ(-260px) translateY(-18px) rotateX(48deg);transform-origin: 50% 100%;opacity: 0.75;filter: drop-shadow(0 0 6px rgba(160, 124, 255, 0.9)) saturate(1.2)}.tr-band{top: 26px;height: 56px;background:
var(--rope) 0 0 / 32px 12px repeat-x, url('/media/tiles/band-banai.svg') 0 13px / 30px 30px repeat-x, var(--rope) 0 44px / 32px 12px repeat-x;transform: rotateX(24deg);transform-origin: 50% 100%;box-shadow: 0 -1px 0 rgba(46, 230, 255, 0.85), 0 1px 0 rgba(255, 92, 225, 0.85), 0 0 26px rgba(46, 230, 255, 0.28), 0 14px 30px rgba(0, 0, 0, 0.6)}.tr-band::before{content: '';position: absolute;inset: 0;pointer-events: none;background:
linear-gradient(180deg, rgba(255, 255, 255, 0.28) 0, transparent 12px, transparent 13px, rgba(255, 255, 255, 0.22) 13px, transparent 22px, transparent 34px, rgba(0, 0, 0, 0.45) 43px, transparent 44px, rgba(0, 0, 0, 0.5) 56px), linear-gradient(90deg, rgba(6, 6, 22, 0.55), transparent 22%, transparent 78%, rgba(6, 6, 22, 0.55))}.tr-band::after{content: '';position: absolute;inset: 0;background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.75), transparent) -40% 0 / 26% 100% no-repeat;mix-blend-mode: overlay}.tr-refl{top: 84px;height: 18px;background: url('/media/tiles/band-banai.svg') 0 0 / 30px 30px repeat-x;transform: scaleY(-1);opacity: 0.32;filter: blur(0.8px);-webkit-mask: linear-gradient(0deg, #000, transparent);mask: linear-gradient(0deg, #000, transparent)}@media (max-width: 700px){.tile-rule{height: 92px}.tr-back{top: 2px}.tr-band{top: 20px}.tr-refl{top: 78px}}@media (prefers-reduced-motion: no-preference){.tr-band::after{animation: rule-glint 6s linear infinite}.tr-band{animation: band-run3 16s linear infinite}.tr-back{animation: band-run-back 40s linear infinite}.tr-refl{animation: band-run-refl 16s linear infinite}.tile-rule:nth-child(even of .tile-rule) :is(.tr-band, .tr-back, .tr-refl){animation-direction: reverse}.talk::before{animation: band-run 14s linear infinite}.site-footer::before{animation: band-run-s 14s linear infinite reverse}}@keyframes rule-glint{to{background-position: 140% 0}}@keyframes band-run{to{background-position-x: 300px}}@keyframes band-run-s{to{background-position-x: 180px}}@keyframes band-run3{to{background-position: 192px 0, -480px 13px, 192px 44px}}@keyframes band-run-back{to{background-position: -192px 0, 224px 12px, -192px 40px}}@keyframes band-run-refl{to{background-position: -480px 0}}.site-footer::before{content: '';position: absolute;left: 0;right: 0;top: 0;height: 18px;background: url('/media/tiles/band-banai.svg') 0 0 / 18px 18px repeat-x;opacity: 0.9}[data-tilelight]{position: relative;isolation: isolate}[data-tilelight]::before{content: '';position: absolute;inset: 0;z-index: -1;pointer-events: none;background:
radial-gradient(circle 300px at var(--mx) var(--my), color-mix(in srgb, var(--accent, var(--c488)) 16%, transparent), transparent 70%), radial-gradient(circle 120px at var(--mx) var(--my), color-mix(in srgb, var(--accent, var(--c488)) 10%, transparent), transparent 70%)}@media (hover: none) and (prefers-reduced-motion: no-preference){[data-tilelight]{animation: light-drift 16s ease-in-out infinite alternate}}@keyframes light-drift{0%{--mx: 20%;--my: 25%}50%{--mx: 80%;--my: 55%}100%{--mx: 45%;--my: 80%}}.menu-preview{width: min(20vw, 270px);aspect-ratio: auto}.menu-preview .tframe{--neon: var(--hover, var(--c488));--fw: 26px}.menu-preview .tframe-in{aspect-ratio: 4 / 5}.menu-preview .tframe-in img{filter: saturate(1.1) contrast(1.04)}.row-preview{width: 220px;aspect-ratio: auto;box-shadow: none}.row-preview .tframe{--fw: 22px}.row-preview .tframe-in{aspect-ratio: 1}.menu-canvas{opacity: 1}@media (max-width: 999px){.menu-canvas{opacity: 0.38}}.portrait{aspect-ratio: auto;overflow: visible;box-shadow: none;border-radius: 0;max-width: 540px;justify-self: center;width: 100%}.portrait .tframe-in{aspect-ratio: 4 / 5}.portrait .tframe-in img{object-position: 50% 50%}.portrait::after{content: none}.headshot{max-width: 320px;width: 100%}.headshot::after{display: none}.headshot img{box-shadow: none;border-radius: 0}.art-cover{aspect-ratio: auto}.art-cover::before, .art-cover::after{content: none}.art-cover .tframe-in{aspect-ratio: 1}.talk{position: relative;isolation: isolate;overflow: hidden;min-height: clamp(560px, 84vh, 860px);display: grid;align-items: end}.talk.talk--page::before{content: none}.talk::before{content: '';position: absolute;left: 0;right: 0;top: 0;height: 30px;z-index: 2;background: url('/media/tiles/band-banai.svg') 0 0 / 30px 30px repeat-x;box-shadow: 0 0 30px rgba(240, 183, 5, 0.25)}.talk-photo{position: absolute;inset: 0;z-index: -2}.talk-photo img{width: 100%;height: 100%;object-fit: cover;object-position: 26% 74%;filter: saturate(1.08) contrast(1.04)}@media (prefers-reduced-motion: no-preference){.talk-photo img{animation: slow-zoom 30s ease-in-out infinite alternate}}@keyframes slow-zoom{from{transform: scale(1.02)}to{transform: scale(1.12) translate(-1.5%, -1%)}}.talk-photo::after{content: '';position: absolute;inset: 0;background:
linear-gradient(90deg, rgba(6, 6, 22, 0.15) 18%, rgba(6, 6, 22, 0.86) 58%, rgba(6, 6, 22, 0.95) 100%), linear-gradient(0deg, rgba(6, 6, 22, 0.75), transparent 45%), radial-gradient(40% 50% at 78% 60%, rgba(46, 230, 255, 0.12), transparent 70%)}.talk-inner{position: relative;display: grid;grid-template-columns: minmax(0, 1fr) minmax(0, 620px);padding-block: 110px 90px}.talk-inner>*{grid-column: 2}.talk .contact-title{font-size: clamp(3rem, 7.4vw, 7.4rem)}.talk-lede{margin-top: 20px;font-family: var(--f-text);font-size: var(--t-l);color: var(--ink-2);max-width: 40ch;text-shadow: 0 1px 14px rgba(6, 6, 22, 0.95)}.talk .contact-direct{margin-top: 30px;grid-template-columns: auto auto;align-items: end;justify-content: start;gap: 18px 22px}.talk .contact-direct .cd-mail, .talk .contact-direct .cd-phone, .talk .contact-direct p, .talk .contact-direct ul{grid-column: 1 / -1}.talk .contact-direct .cd-mail{grid-column: 1}.talk .contact-direct .cd-copy{grid-column: 2}.contact-direct a .v{text-shadow: 0 0 18px rgba(46, 230, 255, 0.35)}.contact-direct a:hover .v{color: var(--c488);text-shadow: 0 0 22px rgba(46, 230, 255, 0.8)}@media (max-width: 560px){.talk .contact-direct{grid-template-columns: 1fr}.talk .contact-direct .cd-copy{grid-column: 1;justify-self: start;margin-top: -8px}.talk .contact-direct .cd-mail{font-size: clamp(1.05rem, 5.4vw, 1.4rem)}}.cd-copy{white-space: nowrap;height: 40px;padding: 0 14px;border: 1px solid var(--line-2);border-radius: 2px;font-size: var(--t-xs);font-weight: 600;color: var(--ink-2);background: rgba(6, 6, 22, 0.7);transition: border-color 0.25s, color 0.25s}.cd-copy:hover{border-color: var(--c488);color: var(--ink)}.talk .socials-inline a{background: rgba(6, 6, 22, 0.72)}.talk--page{min-height: 100svh}.talk--page .talk-inner{padding-top: calc(var(--header-h) + 80px)}@media (max-width: 860px){.talk-inner{grid-template-columns: minmax(0, 1fr);padding-top: 46vh}.talk-inner>*{grid-column: 1}.talk-photo::after{background: linear-gradient(0deg, rgba(6, 6, 22, 0.97) 38%, rgba(6, 6, 22, 0.2) 75%), linear-gradient(90deg, transparent, rgba(6, 6, 22, 0.3))}.talk--page .talk-inner{padding-top: max(46vh, calc(var(--header-h) + 260px))}}@media (max-width: 700px){.talk, .talk--page{display: block;min-height: 0}.talk-photo{position: relative;inset: auto;z-index: 0;aspect-ratio: 4 / 5}.talk-photo img{animation: none;object-position: 50% 50%}.talk-photo::after{background: linear-gradient(0deg, rgb(6, 6, 22) 0%, rgba(6, 6, 22, 0.6) 22%, transparent 48%)}.talk-inner, .talk--page .talk-inner{position: relative;z-index: 1;margin-top: -26vw;padding-top: 0;padding-bottom: 72px}}.gallery-jump{display: flex;flex-wrap: wrap;gap: 12px;margin-top: 28px}.gal-head{display: flex;flex-wrap: wrap;justify-content: space-between;align-items: end;gap: 16px;margin-bottom: clamp(28px, 4vw, 48px)}.stage-frame .video{border-radius: 0;box-shadow: none}.yt-list{list-style: none;display: grid;gap: 30px 24px;grid-template-columns: repeat(auto-fill, minmax(min(100%, 230px), 1fr));margin-top: 30px}.yt-list a{display: grid;gap: 8px;align-content: start;text-decoration: none}.yt-list .th{--fw: clamp(14px, 1.4vw, 20px)}.yt-list .th .tframe-in{aspect-ratio: 16 / 9;background: #0b0b1c}.yt-list a[aria-current='true'] .th{--neon: var(--magenta);box-shadow: 0 0 0 2px var(--magenta), 0 0 40px rgba(255, 92, 225, 0.45), 0 26px 70px rgba(0, 0, 0, 0.6)}.yt-list .th img{width: 100%;height: 100%;object-fit: cover;transition: transform 0.9s var(--ease)}.yt-list a:hover .th img{transform: scale(1.06)}.yt-list .pl{position: absolute;left: 50%;top: 50%;width: 44px;height: 44px;margin: -22px;border-radius: 50%;border: 1px solid rgba(255, 255, 255, 0.7);background: rgba(6, 6, 22, 0.45)}.yt-list .pl::before{content: '';position: absolute;left: 17px;top: 13px;border-left: 13px solid #fff;border-top: 9px solid transparent;border-bottom: 9px solid transparent}.yt-list .t{font-weight: 650;line-height: 1.25}.yt-list .s{font-size: var(--t-xs);color: var(--ink-2)}.yt-all .all{position: absolute;inset: 0;display: grid;place-content: center;gap: 6px;background: linear-gradient(rgba(6, 6, 22, 0.55), rgba(6, 6, 22, 0.55)), url('/media/tiles/girih.svg') center / 72px}.yt-all .all i{display: block;width: 54px;height: 3px;border-radius: 2px;background: #fff;box-shadow: 0 0 10px var(--magenta)}.yt-all .all i:nth-child(2){width: 40px}.yt-all .all i:nth-child(3){width: 26px}.ig-grid{list-style: none;display: grid;gap: clamp(18px, 2.2vw, 30px);grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr))}.ig-grid a{display: block;text-decoration: none;perspective: 900px}.ig-grid .tframe{--fw: clamp(18px, 1.9vw, 26px);transform: rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg))}.ig-grid .tframe-in{aspect-ratio: 1}.ig-grid .tframe-in::before{content: '';position: absolute;inset: 0;z-index: 1;background: linear-gradient(0deg, rgba(6, 6, 22, 0.85), transparent 45%);pointer-events: none}.ig-grid .t{position: absolute;z-index: 2;left: 16px;bottom: 14px;font-weight: 700;font-stretch: 92%;font-size: var(--t-m)}.ig-grid img{width: 100%;height: 100%;object-fit: cover;transition: transform 1.1s var(--ease), filter 0.5s}.ig-grid a:hover img{transform: scale(1.06);filter: saturate(1.15)}.mind{position: relative;margin: 0 0 64px;height: clamp(420px, 50vw, 640px);overflow: hidden;background: radial-gradient(55% 65% at 50% 55%, rgba(160, 124, 255, 0.09), transparent 70%)}.mind canvas{position: absolute;inset: 0;width: 100%;height: 100%;touch-action: pan-y;cursor: grab;-webkit-mask-image: linear-gradient(90deg, transparent, #000 9%, #000 91%, transparent), linear-gradient(0deg, transparent, #000 14%, #000 86%, transparent);-webkit-mask-composite: source-in;mask-image: linear-gradient(90deg, transparent, #000 9%, #000 91%, transparent), linear-gradient(0deg, transparent, #000 14%, #000 86%, transparent);mask-composite: intersect}.mind canvas:active{cursor: grabbing}.mind-labels{list-style: none;position: absolute;inset: 0;z-index: 3;pointer-events: none}.mind-labels a{position: absolute;left: 0;top: 0;margin: -13px 0 0 -5px;display: flex;align-items: center;gap: 8px;pointer-events: auto;text-decoration: none;white-space: nowrap;font-size: var(--t-xs);font-weight: 650;color: var(--ink);transition: opacity 0.35s}.mind-labels a.left{flex-direction: row-reverse;translate: calc(-100% + 10px) 0}.mind-labels a i{width: 10px;height: 10px;flex: none;border-radius: 50%;background: var(--accent);box-shadow: 0 0 8px var(--accent), 0 0 18px var(--accent)}.mind-labels a span{padding: 5px 10px;border: 1px solid color-mix(in srgb, var(--accent) 55%, transparent);border-radius: 2px;background: rgba(6, 6, 22, 0.72);backdrop-filter: blur(4px);transition: background 0.25s, color 0.25s}.mind-labels a:hover span, .mind-labels a:focus-visible span{background: var(--accent);color: var(--vac)}.mind-labels a.back{opacity: 0.22}@media (max-width: 700px){.mind-labels a{font-size: 0.75rem}.mind-labels a span{padding: 4px 8px}}.mind.focus .mind-labels a:not(:hover):not(:focus-visible){opacity: 0.3}.mind:not(.mind-on){height: auto}.mind:not(.mind-on) .mind-labels{position: static;display: flex;flex-wrap: wrap;gap: 10px;padding-block: 20px 32px}.mind:not(.mind-on) .mind-labels a{position: static;margin: 0}.mind:not(.mind-on) canvas{display: none}img.pos-top{object-position: 50% 0 !important}.about-hero{align-items: center}@media (min-width: 960px){.about-hero{grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);column-gap: clamp(40px, 5vw, 96px)}.about-hero .headshot{justify-self: center;max-width: none;width: clamp(280px, 21vw, 400px)}.about-hero h1{font-size: clamp(3rem, 6.3vw, 7.6rem)}}@media (max-width: 959px){.about-hero .headshot, .headshot{justify-self: center;margin-inline: auto}}.hero-name{--tt-size: 200px}.hero-name .ch.lt{--fill: color-mix(in srgb, var(--c488) calc(var(--g, 0) * 55%), var(--ink));transition: font-stretch 0.25s linear, --p 1.1s ease-out}.hero-name .ch.lt:hover{transition-duration: 0.25s, 0.12s}@property --g{syntax: '<number>';inherits: false;initial-value: 0}.hero-name.lt-title{filter: none}.hero-name .ch{will-change: transform;transform-origin: 50% 85%}@media (prefers-reduced-motion: no-preference){.js .hero-name .ch{animation: name-in 1.4s var(--ease) both, name-wave 4.8s cubic-bezier(0.45, 0, 0.55, 1) infinite;animation-delay: calc(0.5s + var(--k) * 45ms), calc(2.1s + var(--k) * 0.12s)}}@keyframes name-wave{0%, 55%, 100%{transform: translateY(0) scale(1);--g: 0}22%{transform: translateY(-0.055em) scale(1.045);--g: 1}}.hero-name .line:last-child .ch.lt{--fill: transparent;-webkit-text-stroke-color: color-mix(in srgb, color-mix(in srgb, var(--c488) calc(var(--g, 0) * 90%), var(--ink)) calc(100% - var(--p) * 100%), var(--c488))}.menu-nav a{--tt-size: 150px}.menu-nav a .ch{display: inline}.menu-nav a .lt{--fill: transparent;transition: --p 1.1s ease-out, -webkit-text-stroke-color 0.35s}.menu-nav a:hover .lt, .menu-nav a:focus-visible .lt, .menu-nav a[aria-current='page'] .lt{--fill: var(--ink)}.menu-nav a .lt:hover{-webkit-text-stroke: 1px color-mix(in srgb, var(--hover, var(--c488)) 80%, #fff)}.menu-nav a:hover, .menu-nav a:focus-visible{filter: none;text-shadow: none}.menu-nav li:has(>a:hover), .menu-nav li:has(>a:focus-visible){filter: drop-shadow(0 0 12px var(--hover, var(--c488))) drop-shadow(0 0 30px color-mix(in srgb, var(--hover, var(--c488)) 45%, transparent))}.menu-preview.is-contact{width: min(26vw, 340px)}.menu-preview.is-contact .tframe-in{aspect-ratio: 5 / 4}.mp-contact{display: none}.menu-preview.is-contact img{display: none}.menu-preview.is-contact .mp-contact{position: absolute;inset: 0;display: grid;align-content: center;gap: 4px;padding: 18px;background: radial-gradient(120% 90% at 50% 0%, color-mix(in srgb, var(--hover, var(--c488)) 22%, transparent), transparent 70%), #07071a}.mp-k{font-size: 0.7rem;color: var(--ink-3);letter-spacing: 0.04em;margin-top: 10px}.mp-k:first-child{margin-top: 0}.mp-v{font-size: 0.86rem;font-weight: 650;color: var(--ink);overflow-wrap: anywhere;text-shadow: 0 0 14px color-mix(in srgb, var(--hover, var(--c488)) 70%, transparent)}.brand-sig{display: block;line-height: 0}.brand-sig .sig{display: block;height: 44px;width: auto;aspect-ratio: 302 / 122;overflow: visible;margin-top: 2px;transition: filter 0.45s var(--ease), transform 0.6s var(--ease)}.sig-spark{fill: none;stroke: #fff;stroke-width: 2.4;stroke-linecap: round;stroke-dasharray: 0 100;opacity: 0}.brand:hover .sig, .brand:focus-visible .sig{filter: drop-shadow(0 0 3px rgba(255, 236, 190, 0.95)) drop-shadow(0 0 10px rgba(247, 199, 110, 0.85)) drop-shadow(0 0 26px rgba(255, 92, 225, 0.45));transform: translateY(-1px)}@media (prefers-reduced-motion: no-preference){.brand:hover .sig-spark, .brand:focus-visible .sig-spark{opacity: 1;animation: sig-spark 1.1s var(--ease) both}}@keyframes sig-spark{0%{stroke-dasharray: 0 100;stroke-dashoffset: 0}60%{stroke-dasharray: 14 100}100%{stroke-dasharray: 0 100;stroke-dashoffset: -100}}@media (max-width: 560px){.brand-sig .sig{height: 38px}}@font-face{font-family: 'Cormorant Garamond';src: url('/fonts/cormorant-garamond-var.woff2') format('woff2');font-weight: 400 600;font-style: normal;font-display: swap;size-adjust: 110%}@font-face{font-family: 'Cormorant Garamond';src: url('/fonts/cormorant-garamond-italic-var.woff2') format('woff2');font-weight: 400 600;font-style: italic;font-display: swap;size-adjust: 110%}:is(.bg-home, .bg-about, .bg-gallery, .bg-contact, .bg-plain){--f-text: 'Cormorant Garamond', 'Newsreader', Georgia, serif}:is(.bg-home, .bg-about, .bg-gallery, .bg-contact, .bg-plain) :is(.lede, .prose-text, .hero-role, .feature p, .work-copy p, .talk-lede, .lost p, .quote blockquote, .performances p){font-weight: 500;letter-spacing: 0.005em}
/* ==== v5.1 fixes ==== */
/* 1. Research pictures stay fully inside their frames (iPhone Safari let them spill out).
      The square shape now lives on the inner picture box instead of the bordered frame,
      and the picture is pinned to that box, so nothing depends on how Safari sizes borders. */
.tframe.img{aspect-ratio:auto;height:auto}
.tframe.img>.tframe-in{aspect-ratio:1/1;height:auto}
.tframe.img>.tframe-in>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.tile{grid-template-columns:minmax(0,1fr)}
@media (max-width:899.98px){.feature{grid-template-columns:minmax(0,1fr)}}
/* the whole picture is always visible: no zoom-in on hover/tap */
.tile:hover .tframe-in img,.feature:hover .tframe-in img,.feature:hover .img img{transform:none}

/* 2. No hairline lines across the tiled frames: tiles are drawn from bitmaps, and the colour
      behind each frame matches the colour where its tiles meet. */
.tframe{background:linear-gradient(#05050f,#05050f) padding-box,var(--fseam,#05050f) border-box;border-image-slice:180}
.tframe--zellige{--fimg:url('/media/tiles/frame-zellige.webp');--fseam:#1f3f9e}
.tframe--banai{--fimg:url('/media/tiles/frame-banai.webp');--fseam:#3c3631}
.tframe--carpet{--fimg:url('/media/tiles/frame-carpet.webp');--fseam:#7c1519}
.tframe--coaster{--fimg:url('/media/tiles/frame-coaster.webp');--fseam:#25306b}
.tframe--tazhib{--fimg:url('/media/tiles/frame-tazhib.webp');--fseam:#120a0e}
.prose figure img{border-image-source:url('/media/tiles/frame-tazhib.webp');border-image-slice:180;background-clip:padding-box}

/* 3. Video list: the video already on the big player isn't repeated in the list below it.
      Picking another video brings this one back into the list. */
.yt-list li:has(>a[aria-current='true']){display:none}

/* ==== v5.2 ==== */
/* Work: related research under a project */
.work-rel{display:grid;gap:10px;margin-top:10px}
.work-rel ul{list-style:none;border-top:1px solid var(--line)}
.work-rel li{border-bottom:1px solid var(--line)}
.work-rel a{display:grid;gap:6px;padding:14px 2px;text-decoration:none}
.work-rel .t{font-weight:640;font-stretch:90%;line-height:1.22;color:var(--ink);transition:color .3s}
.work-rel a:hover .t,.work-rel a:focus-visible .t{color:var(--accent)}
/* Article: link out to a live app */
.prose .app-callout{margin:2em 0;padding:16px 20px;border:1px solid color-mix(in srgb,var(--accent,var(--c488)) 50%,transparent);background:color-mix(in srgb,var(--accent,var(--c488)) 8%,transparent);border-radius:2px}
.nowrap{white-space:nowrap}
/* alternate Work items: picture keeps the wide column when it sits on the right */
@media (min-width:900px){.work-item:nth-child(even){grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}
