@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-vietnamese-wght-normal.CnvboYUG.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-latin-ext-wght-normal.Ca2vKHc0.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-latin-wght-normal.ukD16Tqj.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-vietnamese-opsz-normal.Czevyj-6.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-latin-ext-opsz-normal.CJcjJNj7.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/fraunces-latin-opsz-normal.DihXLNYH.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-400-normal.CDDApCn2.woff2) format("woff2"),url(/_astro/ibm-plex-sans-latin-400-normal.CYLoc0-x.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-latin-500-normal.6ng42L7E.woff2) format("woff2"),url(/_astro/ibm-plex-sans-latin-500-normal.BgVn5rGT.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-latin-600-normal.CuJfVYMP.woff2) format("woff2"),url(/_astro/ibm-plex-sans-latin-600-normal.Cu4Hd6ag.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2) format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2) format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff) format("woff")}:root{color-scheme:light dark;--ground: #f5efe3;--surface: #eee6d4;--ink: #241c12;--ink-soft: #5a4f3c;--ink-faint: #8c7b60;--rule: #ddd1b7;--lattice: rgba(120, 98, 64, .11);--gold: #8c6210;--pill-ink: #241c12;--pill-on: #f5efe3;--shadow: 0 1px 2px rgba(60, 45, 20, .06), 0 14px 34px -14px rgba(60, 45, 20, .22);--font-display: "Fraunces Variable", Fraunces, Georgia, "Times New Roman", serif;--font-body: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--measure: 64rem}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--ground: #1c1712;--surface: #150f09;--ink: #f1e7d3;--ink-soft: #c3b49b;--ink-faint: #7c6c53;--rule: #362b1d;--lattice: rgba(231, 184, 75, .085);--gold: #e7b84b;--pill-ink: #f1e7d3;--pill-on: #1c1712;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 18px 38px -16px rgba(0, 0, 0, .62)}}:root[data-theme=dark]{--ground: #1c1712;--surface: #150f09;--ink: #f1e7d3;--ink-soft: #c3b49b;--ink-faint: #7c6c53;--rule: #362b1d;--lattice: rgba(231, 184, 75, .085);--gold: #e7b84b;--pill-ink: #f1e7d3;--pill-on: #1c1712;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 18px 38px -16px rgba(0, 0, 0, .62)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--font-body);font-size:17px;font-weight:400;line-height:1.62;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{max-width:100%;height:auto}a{color:inherit}:where(a,button):focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:3px}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:repeating-linear-gradient(60deg,var(--lattice) 0 1px,transparent 1px 30px),repeating-linear-gradient(120deg,var(--lattice) 0 1px,transparent 1px 30px),repeating-linear-gradient(0deg,var(--lattice) 0 1px,transparent 1px 26px);-webkit-mask-image:radial-gradient(125% 92% at 50% 10%,transparent 32%,#000 80%);mask-image:radial-gradient(125% 92% at 50% 10%,transparent 32%,#000 80%)}.skip-link{position:absolute;left:-9999px;top:0;z-index:10;background:var(--ink);color:var(--ground);padding:.6rem 1rem;font-family:var(--font-mono);font-size:.8rem;border-radius:0 0 8px}.skip-link:focus{left:0}.wrap{position:relative;z-index:1;max-width:var(--measure);margin:0 auto;min-height:100dvh;display:flex;flex-direction:column;padding:clamp(1rem,3vw,1.85rem) clamp(1.25rem,5vw,3.5rem) clamp(1.25rem,3vw,2rem);overflow-x:clip}.masthead{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:.85rem;border-bottom:1px solid var(--rule)}.wordmark{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;color:var(--ink)}.wordmark svg{width:1.55rem;height:1.55rem;flex:none;color:var(--ink)}.wordmark .name{font-family:var(--font-display);font-optical-sizing:auto;font-weight:560;font-size:1.5rem;letter-spacing:-.015em}.wordmark .dot{color:var(--gold)}.theme-btn{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);background:transparent;border:1px solid var(--rule);border-radius:999px;padding:.4rem .7rem;cursor:pointer;display:inline-flex;align-items:center;gap:.45rem;transition:color .15s ease,border-color .15s ease}.theme-btn:hover{color:var(--ink);border-color:var(--ink-faint)}.theme-btn svg{width:.85rem;height:.85rem}.work{flex:1;display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(.85rem,2vw,1.25rem);align-content:start;padding:clamp(1.1rem,3vw,1.9rem) 0}@media(min-width:560px){.work{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:880px){.work{grid-template-columns:repeat(3,minmax(0,1fr))}}.card{--a: var(--card-accent, var(--gold));min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:.7rem;padding:clamp(1rem,2vw,1.3rem);background:var(--surface);border:1px solid var(--rule);border-radius:16px;box-shadow:var(--shadow)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .card{--a: var(--card-accent-dark, var(--gold))}}:root[data-theme=dark] .card{--a: var(--card-accent-dark, var(--gold))}.card .art{width:clamp(52px,16vw,64px);aspect-ratio:1;border-radius:23%;overflow:hidden;background:var(--ground);border:1px solid var(--rule);box-shadow:0 0 0 4px color-mix(in srgb,var(--a) 24%,transparent)}.card .art img{display:block;width:100%;height:100%;object-fit:cover}.card .art .ic-dark{display:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .card .art .ic-dark{display:block}:root:not([data-theme=light]) .card .art .ic-light{display:none}}:root[data-theme=dark] .card .art .ic-dark{display:block}:root[data-theme=dark] .card .art .ic-light{display:none}.card .body{display:flex;flex-direction:column;align-items:flex-start;gap:.55rem;flex:1;width:100%;min-width:0}.card h2{font-family:var(--font-display);font-optical-sizing:auto;font-weight:520;font-size:clamp(1.2rem,2.6vw,1.4rem);line-height:1.12;letter-spacing:-.015em;margin:.1rem 0 0;color:var(--ink)}.card .desc{margin:0;color:var(--ink-soft);font-size:.95rem;line-height:1.5}.card .shot{display:block;width:100%;max-width:100%;min-width:0;height:clamp(170px,29vh,340px);object-fit:cover;object-position:top center;border-radius:12px;border:1px solid color-mix(in srgb,var(--a) 30%,var(--rule));background:var(--ground)}.card .shot.shot-center{object-position:center}@media(max-width:559px){.card .shot{height:clamp(210px,46vh,420px)}}.stores{display:flex;flex-direction:column;align-items:stretch;gap:.5rem;width:100%;margin-top:auto;padding-top:.5rem}.pill{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.02em;padding:.6rem .8rem;border-radius:10px;text-decoration:none;border:1px solid transparent;transition:transform .15s ease,box-shadow .15s ease}.pill svg{width:.95rem;height:.95rem;flex:none}.pill--ios{background:var(--pill-ink);color:var(--pill-on)}.pill--ios:hover{transform:translateY(-1px);box-shadow:0 0 0 2px color-mix(in srgb,var(--a) 60%,transparent),var(--shadow)}.pill--ios:focus-visible{outline:2px solid var(--a);outline-offset:2px}.pill--soon{background:transparent;color:var(--ink-faint);border:1px dashed var(--rule);cursor:not-allowed}.avail{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.06em;color:var(--ink-faint);margin:.55rem 0 0}.avail:before{content:"";display:inline-block;width:.44rem;height:.44rem;border-radius:50%;background:var(--a);margin-right:.5rem;vertical-align:.02em}.foot{margin-top:1.75rem;padding-top:1.4rem;border-top:1px solid var(--rule);display:flex;justify-content:space-between;flex-wrap:wrap;gap:.6rem 1.5rem;font-family:var(--font-mono);font-size:.71rem;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-faint)}.foot a{color:inherit;text-decoration:none;border-bottom:1px solid var(--rule);padding-bottom:1px}.foot a:hover{color:var(--ink);border-color:var(--ink-faint)}.foot nav{display:flex;gap:1.25rem;flex-wrap:wrap}.prose{flex:1;padding:clamp(1.75rem,5vw,3rem) 0;max-width:46rem}.prose .eyebrow{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:0 0 1rem}.prose h1{font-family:var(--font-display);font-optical-sizing:auto;font-weight:430;font-size:clamp(2rem,5vw,2.9rem);line-height:1.05;letter-spacing:-.02em;text-wrap:balance;margin:0 0 1rem}.prose h2{font-family:var(--font-display);font-weight:500;font-size:1.3rem;letter-spacing:-.01em;margin:2.25rem 0 .5rem}.prose h3{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);margin:1.75rem 0 .4rem}.prose p,.prose li{color:var(--ink-soft)}.prose a{color:var(--gold);text-underline-offset:2px}.prose ul{padding-left:1.1rem}.prose hr{border:none;border-top:1px solid var(--rule);margin:2.5rem 0}.prose .muted{font-size:.9rem;color:var(--ink-faint)}.prose .back{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);text-decoration:none;display:inline-block;margin-bottom:2rem}.prose .back:hover{color:var(--ink)}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
