@font-face{font-family:Clash Display;src:url(/fonts/clash-display-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Clash Display;src:url(/fonts/clash-display-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Switzer;src:url(/fonts/switzer-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Switzer;src:url(/fonts/switzer-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Switzer;src:url(/fonts/switzer-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}:root{color-scheme:light dark;--paper: #f1efe8;--card: #fbfaf6;--ink: #14161f;--ink-2: #444754;--muted: #767a8a;--line: #dcdad0;--line-soft: #e7e5dc;--accent: #4149b8;--accent-hover: #2f368f;--plate: #a8aeff;--plate-ink: #14161f;--band: #e9e7de;--ghost: rgba(20, 22, 31, .07);--edge: transparent;--shadow: 0 1px 2px rgba(20, 22, 31, .05), 0 14px 32px -20px rgba(20, 22, 31, .35);--shadow-up: 0 2px 4px rgba(20, 22, 31, .05), 0 22px 44px -22px rgba(20, 22, 31, .45);--display: "Clash Display", "Avenir Next", Futura, system-ui, sans-serif;--body: Switzer, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--ease: cubic-bezier(.23, 1, .32, 1);--spring: cubic-bezier(.3, 1.22, .5, 1);--lift: -3px;--press: .97}:root.mode-dark{--paper: #0a0d18;--card: #131627;--ink: #edeef6;--ink-2: #b4b7c6;--muted: #82869a;--line: #262a3d;--line-soft: #1c2033;--accent: #a8aeff;--accent-hover: #c6caff;--plate: #a8aeff;--plate-ink: #0a0d18;--band: #0e1122;--ghost: rgba(237, 238, 246, .06);--edge: var(--line);--shadow: none;--shadow-up: none}@media(prefers-color-scheme:dark){:root:not(.mode-light):not(.mode-dark){--paper: #0a0d18;--card: #131627;--ink: #edeef6;--ink-2: #b4b7c6;--muted: #82869a;--line: #262a3d;--line-soft: #1c2033;--accent: #a8aeff;--accent-hover: #c6caff;--plate: #a8aeff;--plate-ink: #0a0d18;--band: #0e1122;--ghost: rgba(237, 238, 246, .06);--edge: var(--line);--shadow: none;--shadow-up: none}}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-color:var(--line) transparent;-webkit-tap-highlight-color:transparent;accent-color:var(--accent);caret-color:var(--accent)}@media(prefers-reduced-motion:no-preference){@view-transition{navigation:auto}}::view-transition-old(root),::view-transition-new(root){animation-duration:.26s;animation-timing-function:var(--ease)}::view-transition-group(*){animation-duration:.42s;animation-timing-function:var(--ease)}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:1.02rem;line-height:1.62;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}p{text-wrap:pretty}a,button{touch-action:manipulation}button,.links a,.theme-btn,.meta li,.card-more,.work-nav a{user-select:none;-webkit-user-select:none}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--accent-hover)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}::selection{background:var(--plate);color:var(--plate-ink)}.skip{position:absolute;left:-9999px;top:0;background:var(--card);color:var(--ink);padding:.7rem 1rem;border:1px solid var(--line);border-radius:0 0 8px;z-index:10}.skip:focus{left:0}.page{max-width:70rem;margin:0 auto;padding:0 max(clamp(1.2rem,5vw,2.75rem),env(safe-area-inset-left),env(safe-area-inset-right))}.bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 0}.wordmark{font-family:var(--display);font-weight:600;font-size:1.05rem;letter-spacing:.01em;color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;gap:.5rem}.wordmark:hover{color:var(--ink)}.wordmark .dot{width:.55em;height:.55em;border-radius:50%;background:var(--plate)}.bar-links{display:flex;align-items:center;gap:1.3rem;list-style:none;margin:0;padding:0;font-family:var(--mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase}.bar-links a{color:var(--muted);text-decoration:none;transition:color .15s}@media(hover:hover)and (pointer:fine){.bar-links a:hover{color:var(--ink)}}@media(max-width:560px){.bar-links .hide-sm{display:none}}.theme-btn{appearance:none;border:1px solid var(--line);background:var(--card);color:var(--ink);width:2.1rem;height:2.1rem;border-radius:50%;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;transition:transform .16s var(--ease),border-color .15s}.theme-btn svg{width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}@media(hover:hover)and (pointer:fine){.theme-btn:hover{border-color:var(--accent);transform:scale(1.06)}}.theme-btn:active{transform:scale(var(--press))}.theme-btn .moon{display:none}.mode-dark .theme-btn .moon{display:block}.mode-dark .theme-btn .sun{display:none}@media(prefers-color-scheme:dark){:root:not(.mode-light):not(.mode-dark) .theme-btn .moon{display:block}:root:not(.mode-light):not(.mode-dark) .theme-btn .sun{display:none}}.intro{padding:clamp(3.2rem,9vw,6.5rem) 0 clamp(2.6rem,6vw,4rem);display:grid;gap:1.2rem 3rem}@media(min-width:880px){.intro.has-scene{grid-template-columns:minmax(0,7fr) minmax(0,4fr);align-items:center}.intro.has-scene .scene{grid-column:2;grid-row:1 / span 3}}.intro h1{font-family:var(--display);font-weight:600;font-size:clamp(2.6rem,6.6vw,5rem);line-height:1;letter-spacing:-.025em;text-wrap:balance;margin:0;max-width:15ch}.crumb{margin:0;font-family:var(--mono);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase}.crumb a{color:var(--muted);text-decoration:none;transition:color .15s}.crumb a span{display:inline-block;transition:transform .2s var(--ease)}@media(hover:hover)and (pointer:fine){.crumb a:hover{color:var(--ink)}.crumb a:hover span{transform:translate(-3px)}}.plate-word{display:inline-block;background:var(--plate);color:var(--plate-ink);padding:0 .18em .04em;border-radius:.14em;transform:rotate(-1.6deg);transition:transform .3s var(--spring)}@media(hover:hover)and (pointer:fine){.intro h1:hover .plate-word{transform:rotate(1.2deg) scale(1.03)}}.lede{margin:0;font-size:clamp(1.06rem,1.9vw,1.2rem);color:var(--ink-2);max-width:52ch}.links{display:flex;flex-wrap:wrap;gap:.6rem;list-style:none;margin:.6rem 0 0;padding:0}.links a{display:inline-flex;align-items:center;gap:.45em;font-family:var(--mono);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:var(--ink);border:1px solid var(--line);background:var(--card);border-radius:100px;padding:.6rem 1.1rem;transition:transform .18s var(--ease),border-color .15s,background-color .15s,color .15s}@media(hover:hover)and (pointer:fine){.links a:hover{transform:translateY(var(--lift));background:var(--plate);color:var(--plate-ink);border-color:var(--plate)}}.links a:active{transform:scale(var(--press))}.scene{max-width:340px;margin:0 auto;width:100%}.scene svg{width:100%;height:auto;display:block;overflow:visible}.scene [class^=s-],.scene [class*=" s-"]{transform-box:fill-box;transform-origin:center}.s-die-a{animation:bob 3.4s var(--ease) infinite}.s-die-b{animation:bob 3.4s var(--ease) 1.1s infinite}@keyframes bob{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-9px) rotate(-4deg)}}.s-tile-3{animation:shut 7s var(--ease) 2s infinite;transform-origin:bottom center}@keyframes shut{0%,55%,to{transform:none}62%,90%{transform:scaleY(.16)}}.s-note-a{animation:rise 4.2s linear infinite}.s-note-b{animation:rise 4.2s linear 2.1s infinite}@keyframes rise{0%{transform:translateY(0);opacity:0}18%{opacity:1}80%{opacity:1}to{transform:translateY(-46px);opacity:0}}.s-spark-a{animation:blink 2.8s steps(1) infinite}.s-spark-b{animation:blink 2.8s steps(1) 1.4s infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.s-cursor{animation:blink 1.1s steps(1) infinite}.ticker{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;white-space:nowrap;padding:.55rem 0;font-family:var(--mono);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.ticker span{display:inline-block;animation:slide 36s linear infinite}@keyframes slide{0%{transform:translate(0)}to{transform:translate(-50%)}}.band{margin-top:clamp(3rem,8vw,5.5rem);padding-top:clamp(1.6rem,3vw,2.2rem);border-top:1px solid var(--line)}.band-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.4rem 1.5rem;margin:0 0 .5rem}.band-title{font-family:var(--display);font-weight:600;font-size:clamp(1.7rem,3.4vw,2.4rem);line-height:1.1;letter-spacing:-.02em;color:var(--ink);margin:0}.band-count{font-family:var(--mono);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.band-note{margin:0 0 2rem;color:var(--ink-2);font-size:1rem;max-width:58ch}.daily{background:var(--band);border:1px solid var(--line-soft);border-radius:16px;padding:1.3rem clamp(1.2rem,3vw,1.7rem) 1.4rem;margin:0 0 1.8rem}.daily-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1rem}.daily-title{font-family:var(--display);font-weight:600;font-size:1.15rem;margin:0}.daily-date{font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.daily-grid{display:grid;gap:1rem}@media(min-width:700px){.daily-grid{grid-template-columns:1fr 1fr 1fr}}.daily-board h4{font-family:var(--mono);font-size:.7rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin:0 0 .45rem}.daily-entries{list-style:none;margin:0;padding:0;counter-reset:place}.daily-entries li{counter-increment:place;display:flex;align-items:baseline;gap:.55rem;padding:.32rem 0;border-top:1px solid var(--line-soft);font-size:.92rem}.daily-entries li:before{content:counter(place);font-family:var(--mono);font-size:.7rem;color:var(--muted);min-width:1em}.daily-entries .daily-empty{color:var(--muted);font-size:.88rem}.daily-entries .daily-empty:before{content:"–"}.daily-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.daily-score{margin-left:auto;font-family:var(--mono);font-size:.84rem;font-variant-numeric:tabular-nums;color:var(--ink)}.daily-shut{font-family:var(--mono);font-size:.62rem;letter-spacing:.06em;text-transform:uppercase;background:var(--plate);color:var(--plate-ink);border-radius:4px;padding:.08rem .35rem;transform:rotate(-2deg)}.daily-cta{margin:1.1rem 0 0;display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem 1rem;font-size:.92rem}.daily-note{color:var(--muted);font-size:.84rem}.cards{list-style:none;margin:0;padding:0;display:grid;gap:1.1rem}@media(min-width:760px){.cards{grid-template-columns:1fr 1fr}.cards .card:first-child{grid-column:1 / -1}}.card{--pad-x: clamp(1.3rem, 3vw, 1.8rem);position:relative;overflow:hidden;background:var(--card);border:1px solid var(--edge);border-radius:16px;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:transform .22s var(--ease),border-color .2s,box-shadow .22s var(--ease)}@media(hover:hover)and (pointer:fine){.card:hover{transform:translateY(var(--lift));box-shadow:var(--shadow-up)}.mode-dark .card:hover{border-color:var(--accent)}@media(prefers-color-scheme:dark){:root:not(.mode-light):not(.mode-dark) .card:hover{border-color:var(--accent)}}}.card-body{display:flex;flex-direction:column;gap:.85rem;padding:.9rem var(--pad-x) 1.5rem}.card-shot{display:block;position:relative;margin:0;aspect-ratio:16 / 10;overflow:hidden;background:var(--band);border-bottom:1px solid var(--line-soft)}.card-shot img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;transition:transform .4s var(--ease)}@media(hover:hover)and (pointer:fine){.card:hover .card-shot img{transform:scale(1.03)}}.card-tag{position:absolute;top:.8rem;left:.8rem;font-family:var(--mono);font-size:.68rem;letter-spacing:.06em;background:var(--plate);color:var(--plate-ink);border-radius:6px;padding:.22rem .6rem;transform:rotate(-2deg);transition:transform .2s var(--spring)}@media(hover:hover)and (pointer:fine){.card:hover .card-tag{transform:rotate(1.5deg) scale(1.04)}}@media(min-width:760px){.card.feature{display:grid;grid-template-columns:minmax(0,11fr) minmax(0,9fr)}.card.feature .card-shot{aspect-ratio:auto;height:100%;min-height:100%;border-bottom:0;border-right:1px solid var(--line-soft)}.card.feature .card-shot img{position:absolute;inset:0}.card.feature .card-body{justify-content:center;padding:clamp(1.6rem,3.5vw,2.6rem) clamp(1.6rem,3.5vw,2.6rem);gap:1rem}.card.feature h3{font-size:clamp(1.7rem,2.8vw,2.2rem)}.card.feature p{font-size:1.02rem}}.card-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.3rem .8rem}.card h3,.row h3{font-family:var(--display);font-weight:600;font-size:1.45rem;line-height:1.15;letter-spacing:-.01em;margin:0}.card h3 a,.row h3 a{color:var(--ink);text-decoration:none;background-image:linear-gradient(var(--plate),var(--plate));background-repeat:no-repeat;background-size:100% 2px;background-position:0 96%;transition:background-size .3s var(--ease),color .2s}@media(hover:hover)and (pointer:fine){.card h3 a:hover,.row h3 a:hover{color:var(--accent);background-size:100% .48em;background-position:0 88%}:root:not(.mode-dark) .card h3 a:hover,:root:not(.mode-dark) .row h3 a:hover{color:var(--ink)}}.card h3 a:after,.row h3 a:after{content:"↗";display:inline-block;font-size:.68em;margin-left:.35em;color:var(--accent);transition:transform .2s var(--ease)}@media(hover:hover)and (pointer:fine){.card:hover h3 a:after,.row:hover h3 a:after{transform:translate(3px,-3px)}}.card p,.row p{margin:0;color:var(--ink-2);font-size:.95rem;max-width:58ch}.meta{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;margin:.35rem 0 0;padding:0}.meta li{font-family:var(--mono);font-size:.66rem;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:100px;padding:.18rem .6rem;white-space:nowrap}.card-more{font-family:var(--mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;color:var(--muted);margin-top:.1rem}.card-more span{display:inline-block;transition:transform .2s var(--ease)}@media(hover:hover)and (pointer:fine){.card-more:hover{color:var(--accent)}.card-more:hover span{transform:translate(4px)}}.work-intro{padding-bottom:clamp(1.8rem,4vw,2.6rem)}.links a.go{background:var(--plate);color:var(--plate-ink);border-color:var(--plate)}@media(hover:hover)and (pointer:fine){.links a.go:hover{filter:brightness(1.06)}}.work-shot{margin:0;max-width:860px;border:1px solid var(--edge);border-radius:16px;overflow:hidden;box-shadow:var(--shadow);background:var(--band)}.work-shot img{width:100%;height:auto;display:block}.work-body{display:grid;gap:2rem 4rem;padding:clamp(2rem,5vw,3rem) 0 0}@media(min-width:860px){.work-body{grid-template-columns:minmax(0,7fr) minmax(0,3fr)}}.work-story p{margin:0 0 1.15rem;color:var(--ink-2);max-width:62ch}.work-story p:first-child{color:var(--ink);font-size:1.08rem}.work-facts h2{font-family:var(--mono);font-size:.74rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:1.7rem 0 .7rem}.work-facts h2:first-child{margin-top:.2rem}.work-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem;font-size:.95rem}.work-nav{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.6rem 1.5rem;margin-top:clamp(2.5rem,6vw,4rem);padding-top:1.4rem;border-top:1px solid var(--line);font-family:var(--mono);font-size:.76rem;letter-spacing:.07em;text-transform:uppercase}.work-nav a{text-decoration:none;color:var(--muted);transition:color .15s}.work-nav span{display:inline-block;transition:transform .2s var(--ease)}@media(hover:hover)and (pointer:fine){.work-nav a:hover{color:var(--accent)}.work-nav a:hover span:first-child{transform:translate(-4px)}.work-nav a:hover span:last-child{transform:translate(4px)}}.rows{list-style:none;margin:0;padding:0}.row{padding:1.5rem 0 1.5rem 3.2rem;position:relative;border-top:1px solid var(--line-soft);display:flex;flex-direction:column;gap:.5rem;transition:transform .22s var(--ease)}.row:first-child{border-top:1px solid var(--line)}@media(hover:hover)and (pointer:fine){.row:hover{transform:translate(6px)}}.row-icon{position:absolute;left:0;top:1.55rem;width:27px;height:27px;color:var(--muted);transition:color .15s,transform .25s var(--spring)}@media(hover:hover)and (pointer:fine){.row:hover .row-icon{color:var(--accent);transform:rotate(-5deg)}}.row-icon svg{width:100%;height:100%;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.row h3{font-size:1.15rem}@media(max-width:560px){.row{padding-left:0}.row-icon{position:static;margin-bottom:-.2rem}}.note-band .note-plate{background:var(--band);border:1px solid var(--line-soft);border-radius:16px;padding:clamp(1.8rem,5vw,3rem)}.note-band .prose{margin:0;color:var(--ink);max-width:30ch;font-family:var(--display);font-weight:500;font-size:clamp(1.35rem,3vw,2rem);line-height:1.28;letter-spacing:-.01em;text-wrap:balance}.note-band .prose-detail{margin:1.1rem 0 0;color:var(--ink-2);max-width:60ch;font-size:.97rem}footer{margin-top:clamp(3.5rem,9vw,6rem);padding:1.7rem 0 3.5rem;border-top:1px solid var(--line);font-size:.88rem;color:var(--muted);display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem}footer p{margin:0}.js .reveal{opacity:0;transform:translateY(14px);transition:opacity .55s var(--ease),transform .55s var(--ease);transition-delay:calc(var(--i, 0) * 60ms)}.js .reveal.in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.scene *,.ticker span{animation:none!important}html{scroll-behavior:auto}.js .reveal{opacity:1;transform:none;transition:none}:root{--lift: 0;--press: 1}.card,.card-shot img,.card-tag,.plate-word,.row,.row-icon,.theme-btn,.links a,.card-more span,.work-nav span,.crumb a span,.card h3 a:after,.row h3 a:after{transition-property:color,background-color,border-color,box-shadow}.card:hover,.card:hover .card-shot img,.card:hover .card-tag,.intro h1:hover .plate-word,.row:hover,.row:hover .row-icon,.theme-btn:hover,.theme-btn:active,.links a:active,.card-more:hover span,.work-nav a:hover span,.crumb a:hover span,.card:hover h3 a:after,.row:hover h3 a:after{transform:none}}
