.passport-tilt{perspective:1600px;--foil-cool:color-mix(in srgb, var(--brand-cobalt) 22%, var(--brand-paper));--foil-warm:#ffd7eb}.passport-lean{transform-style:preserve-3d;transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));will-change:transform;transition:transform .6s cubic-bezier(.16,1,.3,1);position:relative}.passport-tilt[data-hover] .passport-lean{transition:transform 90ms linear}.passport-foil,.passport-glare,.passport-glint{z-index:10;pointer-events:none;position:absolute;inset:0}.passport-foil{opacity:0;mix-blend-mode:soft-light;background:linear-gradient(105deg, transparent 34%, color-mix(in srgb, var(--foil-cool) 35%, transparent) 44%, color-mix(in srgb, var(--brand-paper) 90%, transparent) 50%, color-mix(in srgb, var(--foil-warm) 35%, transparent) 56%, transparent 66%);background-size:260% 100%;background-position:calc(100% - var(--mx,50) * 1%) 0;transition:opacity .35s}.passport-glare{opacity:0;mix-blend-mode:overlay;background:radial-gradient(circle at calc(var(--mx,50) * 1%) calc(var(--my,50) * 1%), color-mix(in srgb, var(--brand-paper) 40%, transparent), transparent 55%);transition:opacity .35s}.passport-tilt[data-hover] .passport-foil,.passport-tilt[data-hover] .passport-glare{opacity:1}.passport-glint{mix-blend-mode:overlay;background:linear-gradient(105deg, transparent 40%, color-mix(in srgb, var(--brand-paper) 35%, transparent) 50%, transparent 60%);background-position:150% 0;background-size:300% 100%;animation:7s ease-in-out 2s infinite passport-glint}.passport-tilt[data-playing=false] .passport-glint{animation-play-state:paused}@keyframes passport-glint{0%,55%{background-position:150% 0}to{background-position:-50% 0}}.passport-row{animation:.7s cubic-bezier(.16,1,.3,1) both passport-settle}@keyframes passport-settle{0%{opacity:0;transform:translate(1rem)}to{opacity:1;transform:none}}.landing-world{--frame:70rem;--landing-print:color-mix(in srgb, var(--brand-ink) 72%, var(--brand-cobalt));--gutter:1rem;--band-pad:4rem;background:var(--background);min-height:100dvh;color:var(--foreground);font-family:var(--brand-font);font-feature-settings:"rlig" 1, "calt" 1;overflow-x:clip}@media (width>=640px){.landing-world{--gutter:1.5rem}}@media (width>=1024px){.landing-world{--gutter:2.5rem;--band-pad:clamp(2.5rem, 7svh, 5rem)}}.landing-world ::selection{background-color:var(--brand-cobalt);color:var(--brand-paper)}.landing-world [data-band=cobalt] ::selection{background-color:var(--brand-paper);color:var(--brand-ink)}.theme-gallery{max-width:76rem}@media (width>=64rem){.theme-gallery{max-width:min(76rem, max(24rem, calc(( 100svh - 4rem - 2 * var(--band-pad) - 2 * .92 * clamp(2rem, min(3.4vw, 5svh), 3.25rem) - 17.5rem - 76px ) / (.86 * 9 / 16))))}.landing-band{min-height:calc(100svh - 4rem);padding-block:var(--band-pad);align-content:center}}.landing-hit:after{content:"";width:max(100%,2.75rem);height:max(100%,2.75rem);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.landing-frame{width:100%;max-width:calc(var(--frame) + 2 * var(--gutter));padding-inline:var(--gutter);margin-inline:auto}.dex-sprite{background-image:url(/landing/dex-landing.webp)}@supports (background-image:image-set(url("/landing/dex-landing.avif") type("image/avif"))){.dex-sprite{background-image:image-set("/landing/dex-landing.avif" 1x type("image/avif"),"/landing/dex-landing.webp" 1x type("image/webp"))}}.piano-band{--piano-key:64px}@media (width>=64rem){.piano-band{--piano-key:clamp(44px, calc((100svh - 8.5rem - 2 * var(--band-pad) - 24px) / 9), 72px)}.piano-figure{max-width:max(18rem, calc(( 100svh - 4rem - 2 * var(--band-pad) - 4 * .92 * clamp(2rem, min(3.4vw, 5svh), 3.25rem) - 15rem ) * 480 / 280))}}.piano-hand{animation:1.1s ease-in-out infinite piano-hand}@keyframes piano-hand{50%{translate:.35em}}.faq-answer{transition:grid-template-rows .52s cubic-bezier(.65,0,.35,1),opacity .4s ease-in-out}.theme-rail{scrollbar-width:none}.theme-rail::-webkit-scrollbar{display:none}.theme-time{animation:linear both theme-time}@keyframes theme-time{0%{width:0}to{width:100%}}.landing-heading{text-transform:uppercase;text-wrap:balance;font-size:clamp(2.5rem,6vw,4.75rem);font-weight:900;font-stretch:75%;line-height:.88}.landing-caption{animation:.5s ease-out both landing-fade}.landing-blueprint{--grid-fine:color-mix(in srgb, var(--brand-cobalt) 4.5%, transparent);--grid-bold:color-mix(in srgb, var(--brand-cobalt) 10%, transparent);background-color:var(--background);background-image:linear-gradient(var(--grid-bold) 1px, transparent 1px), linear-gradient(90deg, var(--grid-bold) 1px, transparent 1px), linear-gradient(var(--grid-fine) 1px, transparent 1px), linear-gradient(90deg, var(--grid-fine) 1px, transparent 1px);background-position:top;background-size:120px 120px,120px 120px,24px 24px,24px 24px}.landing-settle{animation:.6s cubic-bezier(.16,1,.3,1) both landing-settle}@keyframes landing-settle{0%{opacity:0;transform:translate(1.5rem)}to{opacity:1;transform:none}}.landing-grow{transform-origin:bottom;animation:.7s cubic-bezier(.16,1,.3,1) both landing-grow}@keyframes landing-grow{0%{transform:scaleY(0)}}.studio-scene{transition:opacity .45s ease-out;animation:.7s cubic-bezier(.16,1,.3,1) backwards landing-settle}.studio-scene-leaving{opacity:0}.blog-prose{max-width:42rem;font-size:1.125rem;line-height:1.75}.blog-prose>p,.blog-prose>ul,.blog-prose>ol{margin-block:1.25em}.blog-prose>h2{text-transform:uppercase;text-wrap:balance;margin-top:2.6em;margin-bottom:.6em;font-size:clamp(1.875rem,3vw,2.5rem);font-weight:900;font-stretch:75%;line-height:.95}.blog-prose>h3{margin-top:2em;margin-bottom:.4em;font-size:1.375rem;font-weight:700;line-height:1.3}.blog-prose :is(p,.blog-list>li,td)>a{text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1.5px;-webkit-text-decoration-color:var(--brand-cobalt);text-decoration-color:var(--brand-cobalt)}.blog-prose :is(p,.blog-list>li,td)>strong{font-weight:700}.blog-prose .blog-list>li{margin-block:.45em;padding-left:1.6em;position:relative}.blog-prose ul.blog-list>li:before{content:"";background:currentColor;width:.42em;height:.42em;position:absolute;top:.68em;left:.2em}.blog-prose ol.blog-list{counter-reset:blog-step}.blog-prose ol.blog-list>li{counter-increment:blog-step}.blog-prose ol.blog-list>li:before{content:counter(blog-step) ".";font-weight:700;position:absolute;left:0}.blog-prose>blockquote{text-wrap:balance;margin-block:2em;font-size:clamp(1.375rem,2.2vw,1.75rem);font-weight:600;line-height:1.35}.blog-prose>blockquote p{margin:0}.blog-prose>pre{background:var(--brand-ink);color:var(--brand-paper);margin-block:2em;padding:1.25rem 1.5rem;font-size:.875rem;line-height:1.6;overflow-x:auto}.blog-prose>pre>code{font-size:inherit;background:0 0;padding:0}.blog-prose :is(p,.blog-list>li,td,h2,h3)>code{background:var(--accent);padding:.1em .35em;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.86em}.blog-prose>hr{border:0;border-top:1.5px solid var(--foreground);margin-block:3em}.blog-prose>.blog-table{margin-block:2em;overflow-x:auto}.blog-prose>.blog-table table{border-collapse:collapse;width:100%;min-width:34rem;font-size:1rem}.blog-prose>.blog-table :is(th,td){border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:.65em .75em .65em 0}.blog-prose>.blog-table th{border-bottom:1.5px solid var(--foreground);font-weight:700}.blog-prose .blog-checklist .blog-list{margin:0}.blog-prose .blog-checklist .blog-list>li{padding-left:2em}.blog-prose .blog-checklist .blog-list>li:before{background:var(--foreground);width:1.15em;height:1.15em;top:.32em;left:0}.blog-prose .blog-checklist .blog-list>li:after{content:"";border-right:.16em solid var(--background);border-bottom:.16em solid var(--background);width:.38em;height:.62em;position:absolute;top:.5em;left:.38em;transform:rotate(45deg)}.blog-prose .blog-steps .blog-list>li{margin-block:1.5em;padding-left:3.4rem}.blog-prose .blog-steps .blog-list>li:before{content:counter(blog-step);width:2.4rem;font-size:2.6rem;font-weight:900;font-stretch:75%;line-height:1;top:-.1em}.landing-arrive{animation:.45s ease-out both landing-fade}.landing-rise{transform-origin:bottom;animation:.7s cubic-bezier(.16,1,.3,1) both landing-rise}@keyframes landing-rise{0%{transform:scaleY(0)}to{transform:none}}@keyframes landing-fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.landing-caption,.landing-settle,.landing-grow,.studio-scene,.piano-hand,.landing-arrive,.landing-rise{animation:none}.faq-answer{transition:none}}
