.hero{text-align:center}.hero .wrap{flex-direction:column;align-items:center;min-height:100svh;padding-top:10.5rem;padding-bottom:2.6rem;display:flex}.hero h1{letter-spacing:-.025em;font-variation-settings:"wdth" 112;margin:auto 0 2.6rem;font-size:clamp(2.6rem,4.6vw,5rem);line-height:1.04}.hero .lede{margin:0 auto 3.2rem}.hero .cta{justify-content:center;margin-bottom:4.5rem}.meta{border-top:1px solid var(--hair);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);grid-template-columns:repeat(4,1fr);align-self:stretch;gap:2rem;margin-top:auto;padding-top:2rem;font-size:.74rem;display:grid}.meta b{font-family:var(--font-seg);color:var(--seg);letter-spacing:.02em;margin-bottom:.6rem;font-size:1.7rem;font-weight:700;line-height:1;display:block}section.block{padding:var(--sec) 0;content-visibility:auto;contain-intrinsic-size:900px}.head{margin-bottom:var(--head)}.head .lede{margin:1.4rem 0 0}.js .rv{opacity:0;transform:translateY(18px)}.js .rv.in{opacity:1;transition:opacity 1s var(--ease),transform 1s var(--ease);transform:none}.js .rv.still{opacity:1;transition:none;transform:none}.js .meta b[data-n]{opacity:0}.js .meta.in b[data-n]{opacity:1}.folio{grid-template-columns:1fr 1fr;gap:2.5rem;display:grid}.folio>.work{min-width:0}.work .plate{aspect-ratio:16/10;border-radius:var(--r-m);background:radial-gradient(120% 100% at 50% 0,#1e2126bf,#090a0b8c 70%);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.work .plate img{width:auto;height:78%;transition:transform 1.1s var(--ease);border-radius:50%}.work:hover .plate img{transform:scale(1.045)}.work .line{justify-content:space-between;align-items:baseline;gap:1.5rem;margin-top:1.4rem;display:flex}.work .line h3{margin-bottom:.25rem;font-size:1.5rem}.work .line p{color:var(--ink);margin:0;font-size:.95rem}.work .tag{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap;font-size:.72rem;font-weight:500}.work .tag.live{color:var(--mint)}.work .row{font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-3);flex-wrap:wrap;gap:1.6rem;margin-top:1rem;font-size:.78rem;display:flex}.work .row b{font-family:var(--font-seg);color:var(--seg);font-size:.95rem;font-weight:700}.work .row a{color:var(--ink);border-bottom:1px solid var(--hair)}.work .row a:hover{border-color:var(--mint)}.work .plate.code{background:#050505}.plate.code canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.plate.code .soon{font-family:var(--font-mono);letter-spacing:.26em;text-transform:uppercase;color:var(--mint);font-size:1rem;font-weight:500;position:relative}.showcase{margin-bottom:var(--blk);grid-template-columns:repeat(4,1fr);gap:2.2rem;display:grid}.showcase figure{margin:0}.showcase .disc{aspect-ratio:1;background:#000;border-radius:50%;overflow:hidden}.showcase img{width:100%;height:100%;display:block}.showcase figcaption{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin-top:1rem;font-size:.78rem}.showcase figcaption span{color:var(--ink-3)}.specs{grid-template-columns:repeat(3,1fr);gap:1.25rem;display:grid}.spec{border-radius:var(--r-l);background:radial-gradient(120% 100% at 50% 0,#1e212699,#090a0b73 70%);padding:2rem 1.8rem}.spec h3{min-height:2.6em;margin-bottom:.7rem;font-size:1.12rem}.spec p{color:var(--ink);margin:0;font-size:.95rem}.cta-row{margin-top:var(--blk);flex-wrap:wrap;justify-content:center;align-items:center;gap:.9rem;display:flex}.about{gap:var(--gut);grid-template-columns:1fr 1fr;display:grid}.about p{color:var(--ink)}.about p:last-of-type{margin-bottom:0}.contact{margin-top:2.5rem}.contact a{font-family:var(--font-mono);color:var(--mint);border-bottom:1px solid rgba(var(--mint-rgb),.5);font-size:1rem}@media (width<=1000px){.folio,.about{grid-template-columns:1fr}.specs,.showcase{grid-template-columns:1fr 1fr}.spec h3{min-height:0}}@media (width<=760px){.hero h1{font-size:clamp(2.2rem,9vw,3.2rem)}.meta{grid-template-columns:repeat(2,1fr);gap:1.6rem 1rem}.hero .cta{margin-bottom:3rem}.specs{grid-template-columns:1fr}.showcase{gap:1rem}.showcase figcaption{letter-spacing:.05em;font-size:.66rem}.work .line{flex-direction:column;gap:.5rem}}@media (width<=400px){.cta a,.cta-row a{justify-content:center;width:100%}.showcase{grid-template-columns:1fr}}
