@font-face{font-family:GT Walsheim;src:url(/fonts/GT-Walsheim-Ultra-Light-Trial.otf) format("opentype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:GT Walsheim;src:url(/fonts/GT-Walsheim-Thin-Trial.otf) format("opentype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:GT Walsheim;src:url(/fonts/GT-Walsheim-Light-Trial.otf) format("opentype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:GT Walsheim;src:url(/fonts/GT-Walsheim-Regular-Trial.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:GT Walsheim;src:url(/fonts/GT-Walsheim-Medium-Trial.otf) format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:GT Walsheim;src:url(/fonts/GT-Walsheim-Bold-Trial.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:GT Walsheim;src:url(/fonts/GT-Walsheim-Ultra-Bold-Trial.otf) format("opentype");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:GT Walsheim;src:url(/fonts/GT-Walsheim-Black-Trial.otf) format("opentype");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:P22 Underground;src:url(/fonts/P22UndergroundCYProThin.ttf) format("truetype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:P22 Underground;src:url(/fonts/P22UndergroundCYProLight.ttf) format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:P22 Underground;src:url(/fonts/P22UndergroundCYProBook.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:P22 Underground;src:url(/fonts/P22UndergroundCYProMedium.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:P22 Underground;src:url(/fonts/P22UndergroundCYProDemi.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:P22 Underground;src:url(/fonts/P22UndergroundCYProHeavy.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Graphik;src:url(/fonts/Graphik-Thin-iF66fbb18097323.ttf) format("truetype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:Graphik;src:url(/fonts/Graphik-ExtraLight-iF66fbb1800c0f5.ttf) format("truetype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:Graphik;src:url(/fonts/Graphik-Light-iF66fbb18020f79.ttf) format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Graphik;src:url(/fonts/Graphik-Regular-iF66fbb18055a6c.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Graphik;src:url(/fonts/Graphik-Medium-iF66fbb1803a497.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Graphik;src:url(/fonts/Graphik-SemiBold-iF66fbb1806e188.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Graphik;src:url(/fonts/Graphik-Bold-iF66fbb17feb40c.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Graphik;src:url(/fonts/Graphik-Black-iF66fbb17fd5407.ttf) format("truetype");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:ABC Diatype;src:url(/fonts/abc-diatype-thin.otf) format("opentype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:ABC Diatype;src:url(/fonts/abc-diatype-light.otf) format("opentype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:ABC Diatype;src:url(/fonts/abc-diatype-regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:ABC Diatype;src:url(/fonts/abc-diatype-medium.otf) format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:ABC Diatype;src:url(/fonts/abc-diatype-bold.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:ABC Diatype;src:url(/fonts/abc-diatype-black.otf) format("opentype");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:ABC Diatype Mono;src:url("/fonts/ABC Diatype Mono.otf") format("opentype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:ABC Diatype Mono;src:url("/fonts/ABC Diatype Mono.otf") format("opentype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:ABC Diatype Mono;src:url("/fonts/ABC Diatype Mono.otf") format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:ABC Diatype Mono;src:url("/fonts/ABC Diatype Mono.otf") format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:ABC Diatype Mono;src:url("/fonts/ABC Diatype Mono.otf") format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:ABC Diatype Mono;src:url("/fonts/ABC Diatype Mono.otf") format("opentype");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Apercu;src:url(/fonts/ApercuPro.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Apercu;src:url(/fonts/ApercuPro-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Apercu;src:url(/fonts/ApercuPro-Medium.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Apercu Mono;src:url(/fonts/ApercuPro-Mono.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Tiempos;src:url(/fonts/TIEMPO.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Founders Grotesk;src:url(/fonts/FoundersGrotesk-Light.otf) format("opentype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Founders Grotesk;src:url(/fonts/FoundersGrotesk-Regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Founders Grotesk;src:url(/fonts/FoundersGrotesk-Medium.otf) format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Founders Grotesk;src:url(/fonts/FoundersGrotesk-Semibold.otf) format("opentype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Founders Grotesk;src:url(/fonts/FoundersGrotesk-Bold.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Eurostile LT Pro;src:url(/fonts/EurostileLT/EurostileLTProUnicode.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Eurostile LT Pro;src:url(/fonts/EurostileLT/EurostileLTProUnicode-Oblique.otf) format("opentype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Eurostile LT Pro;src:url(/fonts/EurostileLT/EurostileLTProUnicode-Demi.otf) format("opentype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Eurostile LT Pro;src:url(/fonts/EurostileLT/EurostileLTProUnicode-DemiOblique.otf) format("opentype");font-weight:600;font-style:italic;font-display:swap}@font-face{font-family:Eurostile LT Pro;src:url(/fonts/EurostileLT/EurostileLTProUnicode-Bold.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Eurostile LT Pro;src:url(/fonts/EurostileLT/EurostileLTProUnicode-BoldOblique.otf) format("opentype");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Helvetica Neue LT;src:url("/fonts/Helvetica Neue LT W1G/HelveticaNeueLTW1G-UltLt.otf") format("opentype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue LT;src:url("/fonts/Helvetica Neue LT W1G/HelveticaNeueLTW1G-Th.otf") format("opentype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue LT;src:url("/fonts/Helvetica Neue LT W1G/HelveticaNeueLTW1G-Lt.otf") format("opentype");font-weight:350;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue LT;src:url("/fonts/Helvetica Neue LT W1G/HelveticaNeueLTW1G-Roman.otf") format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue LT;src:url("/fonts/Helvetica Neue LT W1G/HelveticaNeueLTW1G-Md.otf") format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue LT;src:url("/fonts/Helvetica Neue LT W1G/HelveticaNeueLTW1G-Hv.otf") format("opentype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue LT;src:url("/fonts/Helvetica Neue LT W1G/HelveticaNeueLTW1G-Bd.otf") format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Helvetica Neue LT;src:url("/fonts/Helvetica Neue LT W1G/HelveticaNeueLTW1G-Blk.otf") format("opentype");font-weight:900;font-style:normal;font-display:swap}*{font-family:ABC Diatype,Helvetica,Arial,sans-serif}.text-4xl,.text-5xl,.text-6xl,.text-7xl,h1{font-family:ABC Diatype,sans-serif;font-weight:500;letter-spacing:-.02em;line-height:1.1}.text-3xl,h2{font-family:ABC Diatype,sans-serif;font-weight:500;letter-spacing:-.01em;line-height:1.2}.text-2xl,h3{letter-spacing:-.005em;line-height:1.3}.text-2xl,.text-xl,h3,h4{font-family:ABC Diatype,sans-serif;font-weight:400}.text-xl,h4{line-height:1.4}.text-lg,h5,h6{line-height:1.5}.text-base,.text-lg,.text-sm,h5,h6,p{font-family:ABC Diatype,sans-serif;font-weight:400}.text-base,.text-sm,p{line-height:1.6;letter-spacing:.01em}.text-xs{font-weight:300;line-height:1.5;letter-spacing:.02em}.font-bold,.text-xs,b,strong{font-family:ABC Diatype,sans-serif}.font-bold,b,strong{font-weight:700}.font-medium{font-weight:500}.font-light,.font-medium{font-family:ABC Diatype,sans-serif}.font-light{font-weight:300}.font-mono,.text-mono,code,pre{font-family:ABC Diatype Mono,JetBrains Mono,Courier New,monospace!important;font-weight:400;letter-spacing:0;line-height:1.5}pre code{font-weight:400}code,pre code{font-family:ABC Diatype Mono,monospace}code{font-weight:500;font-size:.9em}.nav,nav{font-weight:400;letter-spacing:.01em}.btn,.nav,button,nav{font-family:ABC Diatype,sans-serif}.btn,button{font-weight:500;letter-spacing:.005em}.badge,.pill,.tag,input,select,textarea{font-family:ABC Diatype,sans-serif;font-weight:400}.badge,.pill,.tag{font-size:.875rem;letter-spacing:.01em}.hero-title{letter-spacing:-.025em;line-height:1.05}.hero-subtitle,.hero-title{font-family:ABC Diatype,sans-serif}.hero-subtitle{font-weight:400;letter-spacing:.01em;line-height:1.4}.project-title{font-family:ABC Diatype,sans-serif;font-weight:500}.project-description{font-family:ABC Diatype,sans-serif;letter-spacing:.01em}.tech-stack{font-family:ABC Diatype Mono,monospace;font-weight:400;font-size:.875rem;letter-spacing:.005em}.resume-section-title{letter-spacing:-.01em;line-height:1.2}.resume-job-title,.resume-section-title{font-family:ABC Diatype,sans-serif;font-weight:500}.resume-job-title{line-height:1.3}.resume-company{line-height:1.3}.resume-body,.resume-company{font-family:ABC Diatype,sans-serif;font-weight:400}.resume-body{line-height:1.6}.prose,.resume-body{letter-spacing:.01em}.prose{font-family:ABC Diatype,sans-serif;font-weight:400;line-height:1.7}.prose h1,.prose h2,.prose h3{font-weight:500;letter-spacing:-.01em}.prose code{font-family:ABC Diatype Mono,monospace;font-weight:500;background-color:rgba(255,255,255,.1);padding:.125rem .25rem;border-radius:.25rem;font-size:.9em}.fg-hero{font-family:Founders Grotesk,sans-serif;font-weight:700;font-size:clamp(2.5rem,8vw,4rem);line-height:1.1;letter-spacing:-.02em}.fg-display{font-size:clamp(1.75rem,4vw,2.5rem);line-height:1.2;letter-spacing:-.01em}.fg-display,.fg-section-header{font-family:Founders Grotesk,sans-serif;font-weight:600}.fg-section-header{font-size:clamp(1.5rem,3vw,2rem);line-height:1.3;letter-spacing:-.005em}.fg-section-title{font-size:clamp(1.25rem,2.5vw,1.5rem);line-height:1.4}.fg-emphasis,.fg-section-title{font-family:Founders Grotesk,sans-serif;font-weight:500}.fg-emphasis{font-size:clamp(1rem,2vw,1.125rem);line-height:1.5;letter-spacing:.005em}.fg-subtitle{font-size:clamp(1.125rem,2.5vw,1.25rem);line-height:1.5}.fg-body,.fg-subtitle{font-family:Founders Grotesk,sans-serif;font-weight:400;letter-spacing:.01em}.fg-body{font-size:clamp(1rem,2vw,1.125rem);line-height:1.6}.fg-body-large{font-weight:400;font-size:clamp(1.125rem,2.5vw,1.25rem);line-height:1.6}.fg-body-large,.fg-nav{font-family:Founders Grotesk,sans-serif;letter-spacing:.005em}.fg-nav{font-weight:500;font-size:1rem;line-height:1.4}.fg-button{font-family:Founders Grotesk,sans-serif;font-weight:600;font-size:1rem;line-height:1.2;letter-spacing:.01em}.fg-small{font-weight:400;font-size:clamp(.875rem,1.5vw,1rem);letter-spacing:.015em}.fg-caption,.fg-small{font-family:Founders Grotesk,sans-serif;line-height:1.5}.fg-caption{font-weight:300;font-size:.875rem;letter-spacing:.02em}.mono-code{font-family:ABC Diatype Mono,JetBrains Mono,Courier New,monospace;line-height:1.5;letter-spacing:0}.mono-code,.mono-tech-stack{font-weight:400;font-size:.875rem}.mono-tech-stack{letter-spacing:.05em;text-transform:uppercase}.mono-emphasis,.mono-tech-stack{font-family:ABC Diatype Mono,monospace;line-height:1.4}.mono-emphasis{font-weight:500;font-size:.875rem}.hero-name{font-family:Founders Grotesk,sans-serif;font-weight:700;font-size:clamp(3rem,8vw,5rem);line-height:1.05;letter-spacing:-.025em}.hero-title{font-weight:500;font-size:clamp(1.125rem,2.5vw,1.5rem);line-height:1.4}.hero-description,.hero-title{font-family:Founders Grotesk,sans-serif;letter-spacing:.01em}.hero-description{font-weight:400;font-size:clamp(1rem,2vw,1.125rem);line-height:1.6;max-width:60ch}.project-title{font-weight:600;font-size:1.5rem;line-height:1.2;letter-spacing:-.01em}.project-subtitle,.project-title{font-family:Founders Grotesk,sans-serif}.project-subtitle{font-weight:500;font-size:1.125rem;line-height:1.3}.project-description{font-family:Founders Grotesk,sans-serif;font-weight:400;font-size:1rem;line-height:1.6;max-width:55ch}.project-tech{font-family:ABC Diatype Mono,monospace;font-weight:400;font-size:.875rem;letter-spacing:.05em}.case-hero{font-weight:700;font-size:clamp(2.5rem,6vw,4rem);line-height:1.1;letter-spacing:-.02em}.case-hero,.case-intro{font-family:Founders Grotesk,sans-serif}.case-intro{font-weight:400;font-size:clamp(1.125rem,2.5vw,1.25rem);line-height:1.6;max-width:65ch}@media (max-width:768px){.case-hero,.fg-hero,.hero-name{font-weight:700}.fg-body,.hero-description,.project-description{font-weight:400;font-size:1rem}.fg-caption,.fg-small{font-weight:400}}@media (prefers-color-scheme:dark){.fg-body,.hero-description,.project-description{letter-spacing:.015em}.fg-caption{font-weight:400}}@media (-webkit-min-device-pixel-ratio:2){.fg-hero,.hero-name{font-weight:600}}.font-founders{font-family:Founders Grotesk,sans-serif}.font-mono{font-family:ABC Diatype Mono,monospace}.fg-light{font-weight:300}.fg-regular{font-weight:400}.fg-medium{font-weight:500}.fg-semibold{font-weight:600}.fg-bold{font-weight:700}.optimal-reading{max-width:65ch}.tight-reading{max-width:55ch}.wide-reading{max-width:75ch}.shiki-code-container pre{background-color:transparent;overflow-x:visible!important;margin:0;padding:0}.shiki-code-container code,.shiki-code-container pre{font-family:JetBrains Mono,Consolas,Monaco,Courier New,monospace!important;white-space:pre-wrap!important;word-break:break-word!important;overflow-wrap:break-word!important}.shiki-code-container code{font-size:.875rem;line-height:1.25rem;line-height:1.625}.shiki-code-container .shiki{background-color:transparent!important}.shiki-code-container .line{min-height:1.25rem}.shiki-code-container .token.comment{--tw-text-opacity:1;color:rgb(115 115 115/var(--tw-text-opacity,1))}.shiki-code-container .token.string{--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity,1))}.shiki-code-container .token.function{--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.shiki-code-container .token.keyword{color:hsl(var(--purple-400))}.shiki-code-container .token.number{--tw-text-opacity:1;color:rgb(251 146 60/var(--tw-text-opacity,1))}.shiki-code-container .token.operator{--tw-text-opacity:1;color:rgb(212 212 212/var(--tw-text-opacity,1))}.shiki-code-container{scrollbar-width:thin;scrollbar-color:rgb(75,85,99) rgb(23,23,23);scroll-behavior:smooth}.shiki-code-container::-webkit-scrollbar{width:8px}.shiki-code-container::-webkit-scrollbar-track{--tw-bg-opacity:1;background-color:rgb(23 23 23/var(--tw-bg-opacity,1))}.shiki-code-container::-webkit-scrollbar-thumb{border-radius:9999px;--tw-bg-opacity:1;background-color:rgb(82 82 82/var(--tw-bg-opacity,1))}.shiki-code-container::-webkit-scrollbar-thumb:hover{--tw-bg-opacity:1;background-color:rgb(115 115 115/var(--tw-bg-opacity,1))}.wavhaven-typography{font-family:GT Walsheim,sans-serif}.wavhaven-typography .text-5xl,.wavhaven-typography .text-6xl,.wavhaven-typography .text-8xl,.wavhaven-typography h1,.wavhaven-typography h2,.wavhaven-typography h3{font-family:GT Walsheim,sans-serif;font-weight:500}.wavhaven-typography h4,.wavhaven-typography h5,.wavhaven-typography h6{font-family:GT Walsheim,sans-serif;font-weight:400}.wavhaven-typography .text-sm,.wavhaven-typography .text-xs,.wavhaven-typography p{font-family:GT Walsheim,sans-serif;font-weight:300}.wavhaven-typography .form-field,.wavhaven-typography .search-input,.wavhaven-typography input{font-family:GT Walsheim,sans-serif;font-weight:400}.wavhaven-typography [style*="Founders Grotesk"]{font-family:GT Walsheim,sans-serif!important}.wavhaven-typography .font-light{font-weight:300}.wavhaven-typography .font-normal{font-weight:400}.wavhaven-typography .font-medium{font-weight:500}.wavhaven-typography .font-semibold{font-weight:600}.wavhaven-typography .font-bold{font-weight:700}.wavhaven-typography .brand-text,.wavhaven-typography .brand-text-extended{font-family:GT Walsheim,sans-serif;font-weight:500}.wavhaven-typography .brand-text-extended{letter-spacing:.02em;transform:none}.wavhaven-typography .font-mono,.wavhaven-typography [style*=monospace],.wavhaven-typography code{font-family:JetBrains Mono,monospace!important}.wavhaven-typography .demo-header{font-family:GT Walsheim,sans-serif;font-weight:500}.wavhaven-typography .tag,.wavhaven-typography .tech-pill{font-family:GT Walsheim,sans-serif;font-weight:400}.wavhaven-typography .body-text,.wavhaven-typography .content-text,.wavhaven-typography .description-text,.wavhaven-typography .nav-text,.wavhaven-typography .text-base,.wavhaven-typography .text-lg,.wavhaven-typography .text-xl,.wavhaven-typography li{font-family:GT Walsheim,sans-serif;font-weight:300}.omnidex-typography{font-family:ABC Diatype,sans-serif}.omnidex-typography .text-5xl,.omnidex-typography .text-6xl,.omnidex-typography .text-8xl,.omnidex-typography h1,.omnidex-typography h2{font-family:ABC Diatype Mono,monospace;font-weight:500}.omnidex-typography h3{font-family:ABC Diatype Mono,monospace;font-weight:400}.omnidex-typography h4{font-family:ABC Diatype,sans-serif;font-weight:500}.omnidex-typography h5,.omnidex-typography h6{font-family:ABC Diatype,sans-serif;font-weight:400}.omnidex-typography .text-sm,.omnidex-typography .text-xs,.omnidex-typography p{font-family:ABC Diatype,sans-serif;font-weight:300}.omnidex-typography .form-field,.omnidex-typography .search-input,.omnidex-typography input{font-family:ABC Diatype,sans-serif;font-weight:400}.omnidex-typography .font-light{font-weight:300}.omnidex-typography .font-normal{font-weight:400}.omnidex-typography .font-medium{font-weight:500}.omnidex-typography .font-semibold{font-weight:600}.omnidex-typography .font-bold{font-weight:700}.omnidex-typography .brand-text,.omnidex-typography .brand-text-extended{font-family:ABC Diatype Mono,monospace;font-weight:500}.omnidex-typography .brand-text-extended{letter-spacing:.02em}.omnidex-typography .font-mono,.omnidex-typography .technical-text,.omnidex-typography code{font-family:ABC Diatype Mono,monospace!important;font-weight:400}.omnidex-typography .demo-header{font-family:ABC Diatype Mono,monospace;font-weight:500}.omnidex-typography .tag,.omnidex-typography .tech-pill{font-family:ABC Diatype,sans-serif;font-weight:400}.omnidex-typography .body-text,.omnidex-typography .content-text,.omnidex-typography .description-text,.omnidex-typography .nav-text,.omnidex-typography .text-base,.omnidex-typography .text-lg,.omnidex-typography .text-xl,.omnidex-typography li{font-family:ABC Diatype,sans-serif;font-weight:300}.omnidex-typography .data-table,.omnidex-typography table{font-family:ABC Diatype,sans-serif}.omnidex-typography th{font-family:ABC Diatype Mono,monospace;font-weight:500}.omnidex-typography td{font-family:ABC Diatype,sans-serif;font-weight:400}.omnidex-typography .asset-name,.omnidex-typography .file-path,.omnidex-typography .technical-data{font-family:ABC Diatype Mono,monospace;font-weight:400}.omnidex-typography .btn,.omnidex-typography button{font-family:ABC Diatype,sans-serif;font-weight:500}.omnidex-typography .filter-interface,.omnidex-typography .search-interface{font-family:ABC Diatype,sans-serif}.omnidex-typography .search-interface input{font-family:ABC Diatype Mono,monospace;font-weight:400}.omnidex-typography .metric,.omnidex-typography .stat{font-family:ABC Diatype Mono,monospace;font-weight:500}.omnidex-typography .metadata,.omnidex-typography .specs{font-family:ABC Diatype Mono,monospace;font-weight:400;font-size:.875rem}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}.timeline-container::-webkit-scrollbar{height:8px}.timeline-container::-webkit-scrollbar-track{background:rgba(30,30,30,.8);border-radius:4px}.timeline-container::-webkit-scrollbar-thumb{background:linear-gradient(90deg,#8b5cf6,#a855f7);border-radius:4px;box-shadow:0 0 4px rgba(139,92,246,.3)}.timeline-container::-webkit-scrollbar-thumb:hover{background:linear-gradient(90deg,#7c3aed,#9333ea);box-shadow:0 0 8px rgba(139,92,246,.5)}.writing-mode-vertical{writing-mode:vertical-rl;text-orientation:mixed}.timeline-layout{background:#000!important;overflow:hidden;position:relative}.timeline-layout *{box-sizing:border-box}.wavhaven-no-scrollbar,body.wavhaven-page{-ms-overflow-style:none;scrollbar-width:none}body.wavhaven-page{overflow:auto}body.wavhaven-page::-webkit-scrollbar{display:none;width:0;height:0}body.wavhaven-page *{-ms-overflow-style:none;scrollbar-width:none}.wavhaven-no-scrollbar::-webkit-scrollbar,body.wavhaven-page ::-webkit-scrollbar{display:none;width:0;height:0}body.wavhaven-page{scroll-behavior:smooth}html.wavhaven-page,html.wavhaven-page body{-ms-overflow-style:none;scrollbar-width:none;overflow-x:hidden}html.wavhaven-page body::-webkit-scrollbar,html.wavhaven-page::-webkit-scrollbar{display:none;width:0;height:0}.timeline-container{scroll-snap-type:none;scroll-behavior:auto;overflow-x:auto!important;overflow-y:hidden;-webkit-overflow-scrolling:touch;width:100%;height:100%}.timeline-section{flex-shrink:0;min-width:100vw;width:100vw}.daw-interface{background:linear-gradient(180deg,#1a1a1a,#0a0a0a);border-bottom:1px solid #333}.track-channel{background:linear-gradient(90deg,#1a1a1a,#2a2a2a);border-right:1px solid #333}.waveform-bar{background:linear-gradient(180deg,currentColor,transparent 50%,currentColor);transition:all .1s ease-out}.frequency-bar{background:linear-gradient(180deg,transparent,currentColor 60%,currentColor);transition:height .1s ease-out}@keyframes vinylSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.vinyl-record{animation:vinylSpin 20s linear infinite}@keyframes cdSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.cd-spin{animation:cdSpin 10s linear infinite}.audio-meter-led{box-shadow:0 0 4px currentColor;transition:all .1s ease}.audio-meter-led.active{box-shadow:0 0 8px currentColor,inset 0 0 4px currentColor}.eq-band{background:linear-gradient(180deg,#4ade80,#22c55e 20%,#eab308 40%,#f97316 60%,#ef4444 80%,#dc2626)}.transport-button{background:linear-gradient(135deg,#2a2a2a,#1a1a1a);border:1px solid #404040;transition:all .2s ease}.transport-button:hover{background:linear-gradient(135deg,#3a3a3a,#2a2a2a);border-color:#606060}.transport-button:active{background:linear-gradient(135deg,#1a1a1a,#0a0a0a);transform:translateY(1px)}.timeline-scrubber{background:linear-gradient(90deg,#404040,#2a2a2a);border-radius:4px;position:relative;overflow:hidden}.timeline-scrubber:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1) 50%,transparent);transform:translateX(-100%);animation:scrubberGlow 2s infinite}@keyframes scrubberGlow{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.playhead{background:#ffffff;border:2px solid #1a1a1a;box-shadow:0 0 8px rgba(255,255,255,.5);transition:all .2s ease}.playhead:hover{box-shadow:0 0 12px rgba(255,255,255,.8);transform:scale(1.1)}@keyframes recordingPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}.recording-indicator{animation:recordingPulse 1s infinite}.studio-monitor{background:linear-gradient(135deg,#2a2a2a,#1a1a1a 50%,#0a0a0a);border:1px solid #404040;box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}.speaker-cone{background:radial-gradient(circle,#1a1a1a 30%,#2a2a2a 70%,#404040 100%);border:2px solid #333}.midi-key-white{background:linear-gradient(180deg,#ffffff,#f0f0f0 50%,#e0e0e0);border-right:1px solid #ccc;transition:all .1s ease}.midi-key-white.active,.midi-key-white:hover{background:linear-gradient(180deg,#f0f0f0,#e0e0e0 50%,#d0d0d0);transform:translateY(1px)}.midi-key-black{background:linear-gradient(180deg,#2a2a2a,#1a1a1a 50%,#0a0a0a);border:1px solid #000;transition:all .1s ease}.midi-key-black.active,.midi-key-black:hover{background:linear-gradient(180deg,#1a1a1a,#0a0a0a 50%,#000000);transform:translateY(1px)}.oscilloscope{background:#000;border:1px solid #333;font-family:Courier New,monospace}.oscilloscope-grid{stroke:#333;stroke-width:.5;opacity:.3}.oscilloscope-trace{stroke:currentColor;stroke-width:1.5;fill:none;filter:drop-shadow(0 0 2px currentColor)}.pattern-waveform{background-image:repeating-linear-gradient(90deg,transparent,transparent 8px,currentColor 0,currentColor 10px);opacity:.05}.pattern-frequency{background-image:repeating-linear-gradient(0deg,transparent,transparent 4px,currentColor 0,currentColor 6px);opacity:.05}@media (max-width:768px){.timeline-section{scroll-snap-align:center}.daw-interface{padding:.5rem}.track-channel{width:40px}.timeline-scrubber{width:100px}}@media (hover:none) and (pointer:coarse){.timeline-container{-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory}.transport-button{min-height:44px;min-width:44px}}.cursor-theme-clovercrest *,.cursor-theme-default *,.cursor-theme-omnidex *,.cursor-theme-wavhaven *{cursor:none!important}.cursor-theme-clovercrest input[type=email],.cursor-theme-clovercrest input[type=password],.cursor-theme-clovercrest input[type=text],.cursor-theme-clovercrest textarea,.cursor-theme-default input[type=email],.cursor-theme-default input[type=password],.cursor-theme-default input[type=text],.cursor-theme-default textarea,.cursor-theme-omnidex input[type=email],.cursor-theme-omnidex input[type=password],.cursor-theme-omnidex input[type=text],.cursor-theme-omnidex textarea,.cursor-theme-wavhaven input[type=email],.cursor-theme-wavhaven input[type=password],.cursor-theme-wavhaven input[type=text],.cursor-theme-wavhaven textarea{cursor:text!important}.cursor-hovering{transform:scale(1.02);transition:transform .2s cubic-bezier(.4,0,.2,1)}.cursor-theme-wavhaven .cursor-hovering{filter:drop-shadow(0 0 8px rgba(96,165,250,.3))}.cursor-theme-omnidex .cursor-hovering{filter:drop-shadow(0 0 8px rgba(168,85,247,.3))}.cursor-theme-clovercrest .cursor-hovering{filter:drop-shadow(0 0 8px rgba(16,185,129,.3))}.magnetic-target,[data-magnetic=true],[data-magnetic]{position:relative}.magnetic-target:before,[data-magnetic=true]:before,[data-magnetic]:before{content:"";position:absolute;inset:-2px;border-radius:inherit;background:radial-gradient(circle at center,transparent 60%,var(--cursor-primary-color,#60A5FA) 100%);opacity:0;transition:opacity .3s ease;pointer-events:none;z-index:-1}.cursor-hovering.magnetic-target:before,.cursor-hovering[data-magnetic=true]:before,.cursor-hovering[data-magnetic]:before{opacity:.1}[data-cursor=grab]{position:relative}[data-cursor=grab]:hover{transform:scale(1.05)}[data-cursor=zoom]{position:relative;overflow:hidden}[data-cursor=zoom]:hover{transform:scale(1.02)}@media (prefers-reduced-motion:reduce){.cursor-hovering{transform:none;transition:none}.magnetic-target:before,[data-magnetic=true]:before,[data-magnetic]:before{display:none}[data-cursor=grab]:hover,[data-cursor=zoom]:hover{transform:none}}canvas[class*=cursor-trail]{will-change:contents;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}:root{--cursor-primary-color:#F9FAFB;--cursor-secondary-color:#E5E7EB;--cursor-accent-color:#9CA3AF}.cursor-theme-wavhaven{--cursor-primary-color:#60A5FA;--cursor-secondary-color:#3B82F6;--cursor-accent-color:#1E40AF}.cursor-theme-omnidex{--cursor-primary-color:#A855F7;--cursor-secondary-color:#9333EA;--cursor-accent-color:#7E22CE}.cursor-theme-clovercrest{--cursor-primary-color:#10B981;--cursor-secondary-color:#059669;--cursor-accent-color:#047857}.cursor-loading{animation:cursor-pulse 1.5s ease-in-out infinite}@keyframes cursor-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}@media (prefers-contrast:high){.cursor-theme-wavhaven .cursor-hovering{filter:drop-shadow(0 0 12px rgba(96,165,250,.8))}.cursor-theme-omnidex .cursor-hovering{filter:drop-shadow(0 0 12px rgba(168,85,247,.8))}.cursor-theme-clovercrest .cursor-hovering{filter:drop-shadow(0 0 12px rgba(16,185,129,.8))}}@media (prefers-color-scheme:dark){:root{--cursor-primary-color:#F9FAFB;--cursor-secondary-color:#D1D5DB;--cursor-accent-color:#9CA3AF}}@supports (-webkit-appearance:none){body,html{cursor:none}.custom-cursor{visibility:visible!important;opacity:1!important}}@supports (-moz-appearance:none){body,html{cursor:none}}@supports (-webkit-touch-callout:none){body,html{cursor:none}}@media (pointer:coarse){*,body,html{cursor:auto!important}}@media (prefers-contrast:high){.custom-cursor{background-color:white!important;border:2px solid black!important;mix-blend-mode:normal!important}}.custom-cursor{z-index:2147483647!important}